首页 > 编程知识 正文

建立TCP连接,tcp怎样建立连接

时间:2023-05-06 16:06:08 阅读:251270 作者:3240

详见:
TCP-连接管理过程详解
TCP-可靠传输机制详解

【例】若主机甲主动发起一个与主机乙的TCP连接,甲、乙选择的初始序列号分别为2018和2046,则第三次握手TCP段的确认序列号是__2047_。

STEP 1:
客户端发送连接请求报文段,无应用层数据
(同步位SYN)SYN=1,seq=x(题目中甲选择的初始序列号为2018,因此选择序号seq=2018
STEP 2:
服务器端为该TCP连接分配缓存和变量,并向客户端返回确认报文段,允许连接,无应用层数据
SYN=1,ACK=1,seq=y(题目中乙选择的初始序列号为2046,因此选择序号seq=2046),ack=x+1
服务端通过SYN=1知道这是一个建立连接的请求。
服务端发回确认报文段, 此 时 a c k = 2018 + 1 = 2019 {color{Red} 此时ack=2018+1=2019} 此时ack=2018+1=2019
STEP 3:
客户端收到报文段,为该TCP连接分配缓存和变量,向服务端给出确认(SYN=0,ACK=1,seq=x+1,ack=y+1 此 时 a c k = 2046 + 1 = 2047 {color{Red} 此时ack=2046+1=2047} 此时ack=2046+1=2047),客户端的TCP通知上层应用进程,连接已经建立。服务端的TCP收到客户端的确认后,也通知其上层应用进程,此时TCP连接已经建立,ACK报文可以携带数据。

Docker发布镜像到DockerHub

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。