TCP三次握手是建立可靠网络连接的关键过程,TCP三次握手用于确保通信双方能够正常发送和接收数据,并提供可靠的数据传输机制。三次握手的主要目标包括:
Ø 同步双方的序列号。
Ø 确认双方的接收和发送能力
Ø 防止因为过期报文导致的误连接
Ÿ 客户端发送一个SYN(同步)请求报文,表示希望建立连接,并附带初始序列号(Sequence Number)。
Ÿ 客户端进入SYN_SENT 状态,等待服务器的响应。
Ÿ 服务器收到请求后,回复一个SYN+ACK(同步+确认)报文。
Ÿ ACK字段确认客户端的序列号,同时服务器生成自己的初始序列号。
Ÿ 服务器进入SYN_RCVD 状态,等待客户端的确认。
Ÿ 客户端收到服务器的确认后,再发送一个ACK(确认)报文,确认服务器的响应。
Ÿ 客户端进入ESTABLISHED 状态,服务器也进入 ESTABLISHED 状态,连接正式建立。
下面是tcp头部的一个简单介绍
上述流程中提到。
定义:序列号标识数据流中每个字节的唯一编号,用于确保数据的有序传输。
初始值:在连接建立时,序列号由发送方随机生成。
变化规则:每发送一个数据段,序列号会增加该数据段的字节数。例如,发送100字节的数据后,序列号会增加100。
作用:解决网络中数据包乱序问题,确保接收方能够按照正确顺序重组数据。
定义:确认号表示接收方期望收到的下一个数据包的序列号。
变化规则:确认号等于接收到的序列号加上数据段的长度。如果接收到的是SYN或FIN报文,则确认号加1。
作用:通知发送方哪些数据已经被成功接收,解决丢包问题。
确认号和序列号机制是确保tcp数据传输数据可靠性的关键机制。
简单来讲,三次握手是保证通信稳定正确的最小开销。
可以有一个很简单的对话例子
Ø A - B:你听的到我吗?
Ø B – A:我听得到,你听的到我吗?
Ø A – B:我也听的到,我们可以开始正式交流了
所以总的来说,三次握手通过同步序列号,确认机制等等,确保了tcp连接的稳定性和可靠性
今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多以太网模组产品和无线通信技术资料,感兴趣的小伙伴可以登录我们的亿佰特官网和企业公众号(微信号:cdebyte)进行了解,也可以直接拨打400电话咨询技术专员!
相关阅读:
7 X 24 销售服务热线
4000-330-990深圳办事处柯经理:18218726658 无锡办事处刘经理:13558641933
成都总部销售经理:
秦 科(无线模块):18884314654 冯子恒(无线模块):18828049434
蔡友银(无线模块):13882211021 葛宇龙(通信设备):19138800613
胡兵(外贸销售经理):18584911141、 sales06@ebyte.com
业务邮箱:support@cdebyte.com 全国销售投诉电话:19934352316
地址:四川省成都市高新西区西区大道199号B5栋(前台座机:028-61543675)
©© 成都亿佰特电子科技有限公司【版权所有】 蜀ICP备13019384号