请描述一下“AIMD”好吗?

网络工程 tcp
2022-02-08 03:12:13

你好我真的不知道TCP AIMD

我尝试了许多谷歌搜索结果,它们都是技术语言,对我来说很难作为新手

所以有人可以TCP AIMD简单的语言解释一下吗???

1个回答

AIMD 代表加性增加和乘性减少。

Now Increase and Decrease of what?... Ans: Congestion Window size (CWND)

让我退后一步,阐明一些先决条件。

无论何时,发送者必须通过网络发送一些流量而不会造成拥塞并且不必担心重新传输,它应该看到两件事:

1. Client Receive Window size (RWS)
2. Congestion Window Size (CWND)

为了更快的传输,发送方通常不发送单个数据包并等待客户端确认它然后发送下一个数据包(停止并等待)。

为了计算在不等待确认的情况下可以突发发送多少数据包,发送方使用Receive window Size (RWS)接收方在 tcp-handshake 中通告的信息。另一方面,Sender 通过重传次数来检测网络中的拥塞,并减少这个次数,我们称之为 CWND,即Congestion windows size

当发送方检测到拥塞时,它肯定需要放慢速度,从而减小其 CWND 的大小。网络中的拥塞是不可预测的,因此在减少 CWND 之后,网络中的拥塞很有可能会减少并且发送方可以增加 CWND。

由于这些原因,发送方以较低的 CWND 值开始,并且每次成功传输时都使用additively increasesCWND,例如 1,2,3,4...希望不会发生拥塞。当数据包开始被丢弃时,它reduces CWND multiplicatively. 这确保了对于下一次传输,拥塞的可能性非常小,并且网络中的整体拥塞是可持续的。