TCP通信握手&挥手

                                                                      TCP通信握手&挥手

参考博文:https://www.cnblogs.com/bj-mr-li/p/11106390.html

一、TCP报文结构

报文解析

1、序列号(4个字节)也就是大家经常看到的seq

2、确认号(4个字节)也就是大家经常看到的小写的ack

3、TCP首部固定20个字节 + TCP数据部分

4、标记位: 

   (A)URG:紧急指针(urgent pointer)有效。
   (B)ACK:确认序号有效。
   (C)PSH:接收方应该尽快将这个报文交给应用层。
   (D)RST:重置连接。
   (E)SYN:发起一个新连接。
   (F)FIN:释放一个连接。

 

二、三次握手报文交互

1、客户端发起TCP连接(第一次握手),TCP报文SYN=1

2、服务端收到TCP报文(第二次握手),返回ACK=1,SYN=1

3、客户端发起确认报文(第三次握手),通信连接建立

三、四次挥手

1、客户端发起连接终止(第一次挥手),客户端进入终止等待1状态

2、服务端接收到终止报文,服务端通知应用进程,回包确认接收到终止报文(第二次挥手),服务端状态进入关闭等待状态

3、客户端接收到报文,客户端进入终止等待2状态

4、此时服务端如果仍然有数据需要传输,此时并未中断连接,仍然可以做数据传输

5、服务端发送终止报文(三次挥手),服务端进入最后确认状态

6、客户端端接收到第报文,发送确认报文(第四次挥手),状态变更为等待关闭状态,在2MSL时间后关闭

7、服务端接收到确认报文关闭连接状态

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值