TCP 服务器与客户端
更好地理解下述过程,对 TCP 协议头的关键区段做以下几点说明:
连接创建 所谓的「三次握手」,即 TCP 服务器与客户端成功建立通信连接必经的三个步骤,共需通过三个报文完成。 一般而言,首先发送 SYN 报文的一方是客户端,服务器则是监听来自客户端的建立连接请求。 Handshake Step 1 客户端向服务器发送 SYN 报文(SYN=1)请求建立连接。 此时报文的初始序列号为 seq = x ,确认号为ack = 0,发送完毕后,客户端进入 SYN_SENT 状态。 Handshake Step 2 服务器接收到客户端的 SYN 报文后,发送 ACK + SYN 报文(ACK=1,SYN=1)确认客户端的建立连接请求,并也向其发起建立连接请求。 此时报文的序列号为 seq = y,确认号为 ack = x+1,发送完毕后,服务器进入 SYN_RCVD状态。 Handshake Step 3 客户端接收到服务器的 SYN 报文后,发送 ACK 报文(ACK=1)确认服务器的建立连接请求。 此时报文的序列号为 seq=x+1,确认号为 ack=y+1。发送完毕后,客户端进入 ESTABLISHED 状态;当服务器接收该报文后,也进入了 ESTABLISHED 状态。
至此,「三次握手」过程全部结束,TCP 通信连接成功建立。 (编辑:宣城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |