了解Tcp/ip三次握手四次挥手

本文详细解析了三次握手的TCP连接建立机制,包括客户端与服务端交互的报文结构、目的及重试策略,以及四次挥手的必要性。

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

三次握手

客户端向服务器发送请求 之前需要建立三次握手 这个握手是怎样建立的呢?

次数客户端服务端报文重点具体报文
第一次客户端发出一个小的包 要求建立连接 你能收到我的信息吗接收数据SYN包里是SYN=1 seq=x 包中不含数据
第二次接收数据服务端礼貌返回一个数据包 收到包确认信息 我能收到信息 你试试能不能收到我的信息SYN+ACK包里是SYN=1 ACK=1 seq=y ack=x+1 包中不含数据
第三次客户端发送我收到确认的信息 我能收到你发送的信息服务端接收数据ACKACK=1 seq=x+1 ack =y+1 包中不含数据

第三次主要是为了让服务端确认 服务端发送的信息客户端是可以接收的
只有经过三次握手之后才能确认:服务端发送和接收数据都没问题 ,客户端发送接收数据都没问题
注意:三次发送都是不含请求数据的小包 若发送没回复 会进行重试

三次握手之后发生

双方开辟资源 各有一个发送队列和接收队列

四次挥手

次数客户端服务端报文重点具体报文
第一次客户端发出一个小的包 我要跟你分手接收数据FINFIN=1 seq=u
第二次接收数据服务端返回一个数据包 收到包确认信息 哼 我知道了 我还不确认要不要分手FIN+ACKACK=1 seq=v ack=u+1
第三次接收数据服务端再发送一个数据包 确认自己也要断开连接 我也要分手 离就离呗FINFIN=1 ACK=1 seq=w ack=u+1
第四次发送数据 代表接收到断开的请求 好嘞 等的就是你这句话接收数据FINACK=1 seq = u+1 ack =w+1

为什么要建立四次?
因为双方建立连接时开辟了资源
如果不确认对方要断开连接就释放资源 但是当对方不想断连接时 连接已经不复存在了

建立连接网络断开会发生什么

双方建立连接后 是无感知的 会有一个确认心跳机制 发送报文 若确认没有心跳了 连接就会断开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值