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

先说结论:

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

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

具体分析:

乘法减小(Multiplicative Decrease)

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

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

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

加法增大(Additive Increase)

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

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

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

相关推荐
PythonFun13 分钟前
自建RustDesk服务器:详细步骤与操作指南
运维·服务器
Android技术栈15 分钟前
鸿蒙开发(NEXT/API 12)【管理应用与Wear Engine服务的连接状态】手机侧应用开发
服务器·harmonyos·鸿蒙·鸿蒙系统·openharmony
笑的像个child17 分钟前
使用树莓派搭建音乐服务器
服务器·树莓派·navidrome
facaixxx202419 分钟前
京东云主机怎么用?使用京东云服务器建网站(图文教程)
运维·服务器·京东云
jyan_敬言19 分钟前
【Linux】Linux命令与操作详解(一)文件管理(文件命令)、用户与用户组管理(创建、删除用户/组)
linux·运维·服务器·c语言·开发语言·汇编·c++
速盾cdn23 分钟前
速盾:网页游戏部署高防服务器有什么优势?
服务器·前端·web安全
车载诊断技术1 小时前
什么是汽车中的SDK?
网络·架构·汽车·soa·电子电器架构
一颗星星辰1 小时前
Python | 第九章 | 排序和查找
服务器·网络·python
ZachOn1y1 小时前
计算机网络:计算机网络概述:网络、互联网与因特网的区别
网络·计算机网络·知识点汇总·考研必备
GOTXX2 小时前
应用层协议HTTP
linux·网络·网络协议·计算机网络·http·fiddler