TCP的连接三次握手与断开的四次握手

本文详细解析了TCP协议中的连接建立(三次握手)及断开过程(四次挥手)。介绍如何通过Wireshark工具捕获并分析这些关键数据包,包括SYN、ACK和FIN标志位的作用,以及RST包在异常断开中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对照wireshark,可以看到TCP的连接三次握手与断开的四次握手

在wireshark工具中可以当看到SYN标志,可以进去,看一下是否被置成1,如果为1,说明,客户要求与服务器建立连接

服务器会回复一个ACK置1,SYNC置1的应答给客户端

然后客户端再恢复一个ACK确认包


之后开始数据交互,每一包会把PSH位置1,同时携带ACK,携带ACK是为了确认是在一次连接中的数据传输


关闭由于TCP连接是双向连接,因此关闭连接需要在两个方向上做,ACK/FIN包(ACK和FIN标记设为1)通常被认为是FIN包,然后由于连接还没有关闭,FIN包总是打上ACK标记,没有ACK标记而仅有FIN标记的包是不合法的,并且通常被认为是恶意的

过程就是服务器/客户端向另一端发送FIN带ACK的包

然后另一端收到了之后回复一个应答

另一端在回复完应答之后再发送一个FIN包

服务器/客户端收到后,回复一个应答


四次握手不是关闭TCP连接的唯一方法,有时候,如果主机需要尽快关闭连接(或者连接超时,端口或主机不可达),RST包将会被发送,由于RST包不是TCP连接中必须的部分,所以可以只发RST包.但是正常的TCP连接中RST可以带ACK


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值