CSMA/CD 的后退算法


后退算法是一种用于解决冲突的算法。它的工作方式如下,

当发生这种冲突时,两台设备均会等待随机一段时间然后再重新传输信号,它们会一直尝试直到数据成功传输为止。这称为后退,因为节点在尝试再次重新访问之前会“后退”一段时间。这段随机时间与设备已尝试传输信号的次数成正比。

算法

下面是一个简单的流程图来简要解释 Back Off 算法。

可以看出,每次迭代 N 的值都会增加,[0,2 ^ n-1] 的范围也会增加,这样一来,发生冲突的可能性就会降低!

此外,在某些情况下它可能是一个缺点,因为持续不断地后退会导致一些节点丢弃数据包。毕竟,已经达到最大的尝试次数限制。

因此,在发生冲突后,每个节点都必须等待一段时间,该时间由以下公式给出:

Waiting time = K * Tslot

Tslot是离散时间槽,其长度等于 2t,其中 t 是网络中的最大传播延迟。

K = [0, 2n -1]。n 是冲突次数。

更新于: 2020-08-06

已查看 5,000 多次

开启您的 职业生涯

通过完成课程获得认证

开始
广告