计算机网络面经-拥塞控制的乘法减小和加法增大

先说结论:

  • "乘法减小":无论是在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞,就把慢开始门限ssthresh设置为出现拥塞时的发送窗口大小的一半,并执行慢开始算法

  • "加法增大"是指执行拥塞避免算法后,使拥塞窗口缓慢增大,以防止过早出现拥塞

具体分析:

乘法减小(Multiplicative Decrease)

"乘法减小"原则是在网络出现拥塞时,发送方将慢开始门限(ssthresh)设置为当前拥塞时发送窗口大小的一半,并执行慢开始算法。这样做的目的是迅速减少发送方注入到网络中的数据量,以缓解网络拥塞。

慢开始算法是TCP拥塞控制中用于在连接建立初期或拥塞发生后控制发送速率的机制。在慢开始阶段,发送方每次只发送一个报文段(即窗口大小为1),然后等待确认。每收到一个确认,就使发送窗口加倍,直到达到慢开始门限(ssthresh)的值。此后,发送方进入拥塞避免阶段,使用拥塞避免算法来逐步增加窗口大小。

当网络出现拥塞时,乘法减小原则通过降低ssthresh的值来迅速减少发送窗口的大小,从而降低发送速率。这有助于快速缓解网络拥塞,防止拥塞进一步恶化。

加法增大(Additive Increase)

"加法增大"原则是在执行拥塞避免算法后,拥塞窗口(cwnd)以线性方式缓慢增大,以防止过早出现拥塞。这是TCP拥塞控制中用于在网络状况良好时逐步增加发送速率的机制。

在拥塞避免阶段,发送方会根据一定的规则(如AI算法)逐渐增加拥塞窗口的大小。每次收到一个确认报文段,拥塞窗口就增加一个固定的值(通常是1个MSS,即最大报文段大小)。这样,发送方可以逐步增加发送速率,同时保持对网络状况的敏感。

加法增大原则确保了发送方在网络状况良好时能够逐步提高发送速率,从而充分利用网络带宽。同时,由于增长是线性的,因此发送速率的提升相对平缓,有助于避免过早出现拥塞。

相关推荐
什么半岛铁盒1 小时前
Linux进程异常退出排查指南
linux·运维·服务器
wu~9701 小时前
计算机网络自定向下:第二章复习
服务器·网络·架构
Mylvzi1 小时前
Linux 性能利器:详解 `top` 命令的使用与输出信息解析
linux·服务器·网络
lyh13442 小时前
【Ubuntu崩溃修复】
linux·运维·服务器
Dream Algorithm3 小时前
中国移动6周年!
网络·架构·信息与通信
小疆智控3 小时前
农田水利如何「聪明」起来?Modbus转Ethernet IP破解设备互联
网络·网络协议·tcp/ip
cleble3 小时前
(转)什么是DockerCompose?它有什么作用?
计算机网络
木mu升3 小时前
java 局域网 rtsp 取流 WebSocket 推送到前端显示 低延迟
网络·websocket·网络协议
_可乐无糖4 小时前
EC2安装WebRTC sdk-c环境、构建、编译
服务器·webrtc·aws