序列号: 在TCP连接中传送的字节流中的每一个字节都按顺序编号。该字段表明发送数据的第一个字节的序号
确认号:希望收到对方下一个报文的第一个字节的序号
窗口:用于通知发送端,接收端可以接收的空间大小
TCP的流量控制是使用滑动窗口机制,具体是报文的窗口字段。接收方会根据自己的接收数据的能力动态的调整窗口的大小
MSS是运输层报文的最大长度
MTU 是网络层面上的数据包大小限制
TCP 拥塞控制是一种机制,用于在网络拥塞时减少数据包的发送速率,从而避免网络拥塞的恶性循环。TCP 拥塞控制的主要目标是:避免网络拥塞,最大化网络的吞吐量,同时确保公平性和稳定性。
TCP 拥塞控制的主要算法包括慢启动、拥塞避免、快重传和快恢复。其中,慢启动和拥塞避免是 TCP 拥塞控制的核心算法。
拥塞窗口cwdn,以指数级增加该拥塞窗口的大小。直到网络拥堵或者超过阈值时。
慢启动算法是在 TCP 连接开始时使用的。它通过逐渐增加发送窗口的大小来达到最大化网络吞吐量的目的。具体来说,慢启动算法将初始发送窗口设置为一个较小的值,然后每经过一个往返时间(RTT),发送窗口就会翻倍,直到达到一个阈值。
拥塞避免算法是在慢启动阶段结束后使用的。它通过逐渐增加发送窗口的大小来达到最大化网络吞吐量的目的,但是发送窗口的增加速度要比慢启动算法慢。具体来说,拥塞避免算法将初始发送窗口设置为一个较小的值,然后每经过一个往返时间(RTT),发送窗口就会增加一个 MSS(最大报文段长度)的大小,直到达到一个阈值。
快重传算法和快恢复算法是用于在网络拥塞时快速恢复丢失的数据包的。当 TCP 接收方收到一个失序的数据包时,它会发送一个重复确认(ACK),告诉发送方它已经接收到了之前的数据包。如果发送方收到了三个重复确认,它就会认为该数据包已经丢失,并立即重传该数据包。快恢复算法是在重传前,将发送窗口减半,以避免网络拥塞的恶性循环。