计算机网络 (39)TCP的运输连接管理

前言

TCP(传输控制协议)是一种面向连接的、可靠的传输协议,它在计算机网络中扮演着至关重要的角色。TCP的运输连接管理涉及连接建立、数据传送和连接释放三个阶段。

一、TCP的连接建立

TCP的连接建立采用三次握手机制,其过程如下:

  1. SYN报文发送:客户端向服务器发送一个SYN(同步)报文段,并随机生成一个初始序列号seq=x,标志位SYN=1。这个报文段表示客户端希望建立连接。
  2. SYN+ACK报文回复:服务器接收到SYN报文后,回复一个SYN+ACK报文段,确认号ack=x+1(表示收到了客户端的SYN报文),同时也生成一个随机序列号seq=y,标志位SYN=1,ACK=1。这个报文段表示服务器同意建立连接。
  3. ACK确认报文:客户端收到服务器的SYN+ACK报文后,回复一个ACK确认报文段,确认号ack=y+1(表示收到了服务器的SYN报文),序列号seq=x+1(此时客户端的序列号需要加1,因为已经发送过一个SYN报文),标志位ACK=1。这个报文段表示客户端确认建立连接。

三次握手完成后,TCP连接就成功建立了。此时,双方都会创建一个传输控制块TCB,用于存储连接的相关信息,如TCP连接表、指向发送/接收缓存的指针、指向重传队列的指针等。

二、TCP的数据传送

TCP连接建立后,双方就可以开始传输数据了。TCP利用序列号、确认应答、重传、流量控制、拥塞控制等机制,实现可靠的数据传输。

  1. 序列号:发送方给每个传输的字节分配一个序列号seq,接收方根据序列号来确认数据的顺序和完整性。
  2. 确认应答:接收方收到数据后,会发送一个ACK确认报文段,确认号ack=seq+len(len表示接收到的数据长度),表示已经收到了序列号seq到seq+len-1的数据。
  3. 重传机制:如果发送方在一定时间内没有收到接收方的ACK确认报文段,就会认为数据丢失了,然后重新发送该数据段。
  4. 流量控制:通过接收方的窗口大小来控制发送方的发送速率,避免发送方发送过多数据导致接收方处理不过来。
  5. 拥塞控制:通过动态调整发送速率来避免网络拥塞,提高网络的传输效率。

三、TCP的连接释放

TCP的连接释放采用四次挥手机制,其过程如下:

  1. FIN报文发送:主动关闭方(可以是客户端或服务器)发送一个FIN(结束)报文段,seq=m(m表示当前发送方的序列号),标志位FIN=1,表示数据发送完毕,请求关闭连接。
  2. ACK确认报文:被动关闭方收到FIN报文后,回复一个ACK确认报文段,ack=m+1(表示收到了主动关闭方的FIN报文),此时主动关闭方到被动关闭方的单向连接就释放了,TCP连接进入半关闭状态。被动关闭方仍可以继续发送数据。
  3. FIN报文再次发送:被动关闭方数据发送完毕后,也发送一个FIN报文段,seq=n(n表示此时被动关闭方的序列号),标志位FIN=1,表示数据也发送完毕,请求关闭连接。
  4. ACK确认并等待:主动关闭方收到被动关闭方的FIN报文后,回复一个ACK确认报文段,ack=n+1(表示收到了被动关闭方的FIN报文)。然后主动关闭方等待2MSL(最大报文段生存时间)时间,确保所有迟到的数据包都已经消失,最后再完全关闭TCP连接。被动关闭方收到ACK确认报文后,就直接关闭连接。

四次挥手完成后,TCP连接就完全释放了。此时,双方都会删除之前创建的传输控制块TCB。

总结

综上所述,TCP的运输连接管理通过三次握手建立连接、可靠的数据传送机制和四次挥手释放连接,确保了数据在不可靠的网络环境下能够按照正确的顺序到达目的地,并且保证了数据的完整性和可靠性。

结语

你终将发现,真正的力量

在于怯魅后的自我觉醒

!!!

相关推荐
小李独爱秋1 分钟前
计算机网络经典问题透视:什么是服务质量QoS?为什么说“互联网根本没有服务质量可言?”
网络·计算机网络·安全·qos·服务质量
猫头虎6 分钟前
如何把家里 NAS 挂载到公司电脑当“本地盘”用?(Windows & Mac 通过SMB协议挂载NAS硬盘教程,节点小宝异地组网版)
windows·网络协议·计算机网络·macos·缓存·人机交互·信息与通信
CS创新实验室13 分钟前
《计算机网络》深入学:虚拟局域网(VLAN)技术与应用
开发语言·计算机网络·php·vlan·虚拟局域网
CS创新实验室19 小时前
《计算机网络》深入学:轮询和令牌传递协议
开发语言·计算机网络·考研·php·408
CS创新实验室20 小时前
《计算机网络》深入学:局域网与接入网技术
网络·计算机网络·考研·408·局域网
小李独爱秋20 小时前
计算机网络经典问题透视:试比较先进先出排队(FIFO)、公平排队(FQ)和加权公平排队(WFQ)的优缺点
服务器·计算机网络·算法·web安全·信息与通信·队列
白狐_79821 小时前
【计网全栈通关】第 2 篇:物理层——信号、编码与信道容量
计算机网络·网络技术
小李独爱秋21 小时前
计算机网络经典问题透视:RTP首部三剑客——序号、时间戳与标记的使命
服务器·计算机网络·web安全·信息与通信·rtsp
小李独爱秋21 小时前
计算机网络经典问题透视:RTP协议能否提供应用分组的可靠传输?
服务器·计算机网络·web安全·信息与通信·rtsp
小李独爱秋1 天前
计算机网络经典问题透视:漏桶管制器的工作原理是怎么样的?
数据结构·计算机网络·算法·信息与通信·流量控制·漏桶管制器