TCP连接的建立和中止

本文详细介绍了TCP连接的建立和终止过程,包括TCP的三次握手和四次挥手。在连接建立中,通过SYN和ACK分组完成双方的序列号同步;连接终止时,需要经过FIN和ACK的交互以确保数据传输完毕。TIME_WAIT状态是为了确保所有分组在网络中消失,避免旧连接的重复分组干扰新连接。
摘要由CSDN通过智能技术生成

TCP连接的建立和中止

理解TCP连接的建立和中止,有助于我们理解connectacceptclose这3个函数。

TCP连接的建立

  1. 服务器准备好接受外来的连接。这通常通过调用socketbindlisten这3个函数来完成,我们称之为被动打开(passive open)
  2. 客户通过connect发起主动打开(active open)。这导致TCP客户发送一个SYN分节,它告诉服务器客户将在(待建立)的连接中发送的数据的初始序列号。通常SYN不携带数据,其所在IP数据包只有一个IP首部、一个TCP首部及可能有的TCP选项。
  3. 服务器必须确认(ACK)客户的SYN,同时自己也得发送一个SYN分节,它含有服务器将在同一连接中发送的数据的初始序列号。服务器在单个分节中发送SYN和对客户SYN的ACK(确认)
  4. 客服必须确认服务器的SYN

这种交换至少需要3个分组,因此成为TCP的三路握手(three-way handshake)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值