什么是TCP连接?到底什么才是连接?
到底什么是TCP连接呀?在计算机网络里面这个“连接”到底是一个什么概念呀?这个名词术语似乎与我们生活当中的“连接”截然不同,生活当中的“连接”比如用一根绳子把两个东西连接起来通常我们是用一个实实在在的媒介物体(绳子)把他们连接起来的,TCP既然是只有在源和目的主机端才有的“东西”,那么他们俩建立连接是不是在物理网络上独占了信道,这个信道就相当于那根“绳子”,但是网络层只有IP,它是一个不可靠的数据报服务,走的路由根本就不相同哪里来的独占一个信道之说呢,既然没有了“绳子”这个连接媒体他们之间又哪来的连接呢?请高手们仔细的给小弟讲一下“连接”这个概念,先谢谢了!
------解决方案--------------------建议去读读计算机网络原理
------解决方案--------------------在现实生活中,“要想富,先修路”;同时人总要“居有定所”,于是盖起了N多的房子。但是当你和同事商量好去做客的时候却发现,兜了半天就是找不到他家的房子。原因是路上没有指示牌,且所有的房子都没有门牌号码。所以你一怒之下,将有关部门举报了。几天过后门牌号码都钉在了房子的显著位置上。于是你再次和同事约定,按照朋友给的地址,顺利找到他家。可是,当你到了他家门口又遇到问题了:他家的房子非常的大,所以四处都装了门,有N个,你不知敲哪个门。
上面的比喻里:道路就不要说了,都是指网络中的硬件,光线、海底电缆...,路由器做指示牌,地址有现实中的xx省xx市xx路xxx号xx楼统一变为xxx.xxx.xxx.xxx的IP地址了;而那房子就是计算机/服务器,房子的N个门就是计算机的65535个端口。
说到你问的TCP,你不能单纯的去用TCP连接理解网络实际工作过程。在我上面的例子中,代表“TCP连接”的是"你和朋友面对面接触并商量好"这个过程而已。如果你换个方式:你没见到他本人,只是给他留个便条,说你要去做客,然后你就去了,那这个过程就是一个UDP的过程,因为你到了他的办公桌前,留下了纸条,就视作建立了“UDP连接”。
TCP是可靠的连接,因为你和他当面锣对面鼓的商定了那件事情;而UDP是不可靠连接,因为你只是留了个便条给他,你不知道他是否收到了你的便条,天知道纸条是否被风扇吹到垃圾篓去了:))。但是显而易见的是,UDP更便当而TCP很麻烦。
说到这些就不能不提到SOCKET这个重要的概念。一个著名的比喻是:你要打电话,首先必须要先把电话线接到电话插槽。然后你拿起电话给朋友打电话,电话通了,你问:“你是赵二吗?”,对方回答“是”,这样你们就建立了一次可靠连接;然后你说:“周六我去你家做客,准备好酒菜”;赵二回答:“好的”,这样你们就建立了二次可靠的连接---事情敲定!这就是TCP连接(两次握手)。然而当你拿起电话给朋友打电话,电话通了但一直没人接,几声之后转到录音电话上,你只好留言说我要去做客了云云,然后就挂断电话了。你也并不知道赵二是否听到了你的录音留言,这就是UDP的不可靠连接。
所以你用是“绳子”来理解网络连接本身是不太好理解的。上面朋友也建议了,去看看有关计算机网络的形成历史和原理的书吧。
当然,我的这些比喻都是不很确切的,权当一笑吧,呵呵。
------解决方案--------------------楼上的比喻不错啊,不过tcp是三次握手,呵呵
------解决方案--------------------