CSMA/CD 的後退演算法
後退演算法是一種用於解決衝突的演算法。它的工作方式如下,
當發生這種衝突時,兩臺裝置均會等待隨機一段時間然後再重新傳輸訊號,它們會一直嘗試直到資料成功傳輸為止。這稱為後退,因為節點在嘗試再次重新訪問之前會“後退”一段時間。這段隨機時間與裝置已嘗試傳輸訊號的次數成正比。
演算法
下面是一個簡單的流程圖來簡要解釋 Back Off 演算法。

可以看出,每次迭代 N 的值都會增加,[0,2 ^ n-1] 的範圍也會增加,這樣一來,發生衝突的可能性就會降低!
此外,在某些情況下它可能是一個缺點,因為持續不斷地後退會導致一些節點丟棄資料包。畢竟,已經達到最大的嘗試次數限制。
因此,在發生衝突後,每個節點都必須等待一段時間,該時間由以下公式給出:
Waiting time = K * Tslot
Tslot是離散時間槽,其長度等於 2t,其中 t 是網路中的最大傳播延遲。
K = [0, 2n -1]。n 是衝突次數。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP