天天看点

大话http三次握手http三次握手目的是建立网络通信

关键名称解释:SYN同步位,ACK确认位,   ack确认号(期望得到的seq), seq数据传输序号  

http三次握手目的是建立网络通信

  1.握手图        client                                                                        server   (1)           SYN=1(第一次请求创建连接同部位),ACK=0(因为没有人给他发信息,所以不需要什么确认),seq=x(随机产生一个数据序号)               -------------------------------------------> (2)           SYN=1(第一次请求创建连接同部位) ,ACK=1(确认收到seq=x) ,ack=x+1(期望得到的seq=x+1 ) , seq=y(好吧我也发给你一个数据y,试试你是否能收到)               <------------------------------------------- (3)           SYN=1(第一次请求创建连接同部位) ,ACK=1(确认收到seq=y) ,ack=y+1(期望得到的seq=y+1 ) , seq=x+1(好吧我又也发给你一个数据x+1 )               ------------------------------------------->   2.其实tcp三次握手不太好理解   我们可以称它为2次发送2次确认   3.具体直白语言描述    client 发信息:server我发给你信息请求链接,收到我了回复    server确认并发信息:client我收到你信息了。我发信息给你了,收到请回复我    client 确认:server我收到你信息了。        好结束对话,建立通信连接渠道   4.为什么不是2次,或者多次握手那?      先说多次握手,3次就够用了,多说是废话了    2次为什么不行?    首先看对话    client 发信息:server我发给你信息请求链接,收到我了回复    server确认收到信息:client我收到你信息了。      好结束对话,建立通信连接渠道       场景一:server说糟糕了,我client发完就挂了,我还傻乎乎的建立连接渠道了。     场景二:server说糟糕了,收到了好多client发过来的创建连接渠道         第一种场景解释:可能client发完请求链接消息时,自己挂掉了     第二种场景解释:由于网络延时,client发了好多消息给server,这时server创建了很多链接

继续阅读