[软件资料] TCP三次握手

[复制链接]
 楼主| forgot 发表于 2024-10-21 13:26 | 显示全部楼层 |阅读模式
(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。
(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。
(3)第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。

tpgf 发表于 2024-11-5 13:20 | 显示全部楼层
tcp是三次握手,那么udp是不是比这个要简化一些呢
小小蚂蚁举千斤 发表于 2024-11-6 13:59 来自手机 | 显示全部楼层
其它TCP通讯方式是优化了嘛?
木木guainv 发表于 2024-11-7 08:13 | 显示全部楼层
客户端发送一个SYN(同步序列编号)报文给服务器,表示希望与服务器建立连接
磨砂 发表于 2024-11-7 11:43 | 显示全部楼层
服务器收到SYN报文后,必须确认接收到的序列号,并返回一个SYN+ACK报文
晓伍 发表于 2024-11-7 15:31 | 显示全部楼层
客户端收到服务器的SYN+ACK报文后,向服务器发送一个确认报文(ACK),表示已经成功接收到服务器的响应
八层楼 发表于 2024-11-7 18:29 | 显示全部楼层
客户端和服务器都进入ESTABLISHED状态,完成三次握手,开始数据传输
观海 发表于 2024-11-7 20:11 | 显示全部楼层
通过三次握手,TCP能够确保客户端和服务器之间的通信可靠性,避免了数据丢失和重复的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2064

主题

14488

帖子

59

粉丝
快速回复 在线客服 返回列表 返回顶部