1 / 3
文档名称:

tcp协议3次连接握手和4次结束握手.docx

格式:docx   大小:68KB   页数:3页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

tcp协议3次连接握手和4次结束握手.docx

上传人:春天的故事 2022/3/14 文件大小:68 KB

下载得到文件列表

tcp协议3次连接握手和4次结束握手.docx

相关文档

文档介绍

文档介绍:tcp 协议 3 次连接握手和 4 次结束握手
做 WEB 开发这么长时间,一直关注于应用层,对 WEB 开发的基础 -TCP 协议没有深入了解过。
虽然不了解这些东西也一样可以开发, 但我觉得要做到知其
tcp 协议 3 次连接握手和 4 次结束握手
做 WEB 开发这么长时间,一直关注于应用层,对 WEB 开发的基础 -TCP 协议没有深入了解过。
虽然不了解这些东西也一样可以开发, 但我觉得要做到知其然而知其所以然, 才能更上一层楼吧。
今天忽然想到了 TCP 连接建立的过程,以前只是知道是通过三次握手来建立的,至于是如何建
立的还没有仔细看过,立即上网查询,摘抄如下。
TCP 握手协议
在 TCP/IP 协议中, TCP 协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送 syn 包 (syn=j) 到服务器,并进入 SYN_SEND 状
态,等待服务器确认;
SYN : 同步序列编号 (Synchronize Sequence Numbers)
第二次握手:服务器收到 syn 包,必须确认客户的 SYN ( ack=j+1 ),同时自己也发送一
个 SYN 包( syn=k ),即 SYN+ACK 包,此时服务器进入 SYN_RECV 状态;
第三次握手: 客户端收到服务器的 SYN + ACK 包,向服务器发送确认包 ACK(ack=k+1) ,
此包发送完毕,客户端和服务器进入 ESTABLISHED 状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:
未连接队列: 在三次握手协议中, 服务器维护一个未连接队列, 该队列为每个客户端的 SYN
包( syn=j )开设一个条目,该条目表明服务器已收到 SYN 包,并向客户发出确认,正在等待
客户的确认包。这些条目所标识的连接在服务器处于 Syn_RECV 状态,当服务器收到客户的确
认包时,删除该条目, 服务器进入 ESTABLISHED 状态。
Backlog 参数:表示未连接队列的最大容纳数目。
可编辑修改,如有帮助,请下载,多谢!
SYN-ACK 重传次数 服务器发送完 SYN - ACK 包,如果未收到客户确认包,服务器进行
首次重传, 等待一段时间仍未收到客户确认包, 进行第二次重传, 如果重传次数超过系统规定 的
最大重传次数, 系统将该连接信息从半连接队列中删除。 注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到 SYN 包到确认
这个报文无效的最长时间, 该时间值是所有重传请求包的最长等待时间总和。 有时我们也称半连
接存活时间为 Timeout 时间、 SYN_RECV 存