企业百度网站怎么做,怎么建立一个简易的网站,网站建设需要多少钱文档,情人做网站原文地址:http://www.cnblogs.com/yuilin/archive/2012/11/05/2755298.html#comment_tip 首先简单介绍一下TCP三次握手 在TCP/IP协议中#xff0c;TCP协议提供可靠的连接服务#xff0c;采用三次握手建立一个连接。 第一次握手#xff1a;建立连接时#xff0c;客户端发送s… 原文地址:http://www.cnblogs.com/yuilin/archive/2012/11/05/2755298.html#comment_tip 首先简单介绍一下TCP三次握手 在TCP/IP协议中TCP协议提供可靠的连接服务采用三次握手建立一个连接。 第一次握手建立连接时客户端发送syn包(synj)到服务器并进入SYN_SEND状态等待服务器确认 第二次握手服务器收到syn包必须确认客户的SYNackj1同时自己也发送一个SYN包synk即SYNACK包此时服务器 进入SYN_RECV状态 第三次握手客户端收到服务器的SYNACK包向服务器发送确认包ACK(ackk1)此包发送完毕客户端和服务器进入 ESTABLISHED状态完成三次握手。 通过这样的三次握手客户端与服务端建立起可靠的双工的连接开始传送数据。 三次握手的最主要目的是保证连接是双工的可靠更多的是通过重传机制来保证的。 但是为什么一定要进行三次握手来保证连接是双工的呢一次不行么两次不行么我们举一个现实生活中两个人进行语言沟通的例子来模拟三次握手。 第一次对话 老婆让甲出去打酱油半路碰到一个朋友乙甲问了一句哥们你吃饭了么 结果乙带着耳机听歌呢根本没听到没反应。甲心里想跟你说话也没个音不跟你说了沟通失败。说明乙接受不到甲传过来的信息的情况下沟通肯定是失败的。 如果乙听到了甲说的话那么第一次对话成功接下来进行第二次对话。 第二次对话 乙听到了甲说的话但是他是老外中文不好不知道甲说的啥意思也不知道怎样回答于是随便回答了一句学过的中文 我去厕所了。甲一听立刻笑喷了“去厕所吃饭”?道不同不相为谋离你远点吧沟通失败。说明乙无法做出正确应答的情况下沟通失败。 如果乙听到了甲的话做出了正确的应答并且还进行了反问我吃饭了你呢那么第二次握手成功。 通过前两次对话证明了乙能够听懂甲说的话并且能做出正确的应答。接下来进行第三次对话。 第三次对话 甲刚和乙打了个招呼突然老婆喊他“你个死鬼打个酱油咋这么半天看我回家咋收拾你”甲是个妻管严听完吓得二话不说就跑回家了把乙自己晾那了。乙心想这什么人啊得我也回家吧沟通失败。说明甲无法做出应答的情况下沟通失败。 如果甲也做出了正确的应答我也吃了。那么第三次对话成功两人已经建立起了顺畅的沟通渠道接下来开始持续的聊天。 通过第二次和第三次的对话证明了甲能够听懂乙说的话并且能做出正确的应答。 可见两个人进行有效的语言沟通这三次对话的过程是必须的。 同理对于TCP为什么需要进行三次握手我们可以一样的理解 为了保证服务端能收接受到客户端的信息并能做出正确的应答而进行前两次(第一次和第二次)握手为了保证客户端能够接收到服务端的信息并能做出正确的应答而进行后两次(第二次和第三次)握手。 以上是转载的全文。原文作者的总结很精彩。我的理解是:为了保证双工必需保证服务器端和客户端都能够发送和接收信息。 转载于:https://www.cnblogs.com/NeilHappy/archive/2012/11/06/2756756.html