各自隨機退避一段時間再發送數據
發布時間:2014/9/28 17:48:11 訪問次數:1576
圖9-7表示當A正在發送數據時,B,C和D都有數據要發送(用向上的箭頭表示)。由FDC6561AN于這三個站都檢測到信道忙,因此都要執行退避算法,各自隨機退避一段時間再發送數據。8⒆.11標準規定,退避時間必須是整數倍的時隙時間。前面已經講過,第氵次退避是在時隙(0,1,¨”'+氵~1)中隨機地選擇一個。這樣做是為了使不同站點選擇相同退避時間的概率減少。因此,第1次退避(莎=D要推遲發送的時間是在時隙(0,1,¨”7)中(共8個時隙)隨機選擇一個,而第2次退避是在時隙(0,1,¨”15)中(共16個時隙)隨機選擇一個。當時隙編號達到255時(這對應于第6次退避)就不再增加了。這里決定退避時間的變量F稱為退避變量。退避時間選定后,就相當于設置了一個退避計時器(baGkoff timer)。站點每經歷一個時隙的時間就檢測一次信道。這可能發生兩種情況:若檢測到信道空閑,退避計時器就繼續倒 時;若檢測到信道忙,就凍結退避計時器的剩余時間,重新等待信道變為空閑并再經過時間DIFS后,從剩余時間開始繼續倒計時。如果退避計時器的時間減小到零時,就開始發送整個數據幀。
從圖9ˉ7可以看出,C的退避計時器最先減到零,于是C立即把整個數據幀發送出去。請注意,A發送完數據后信道就變為空閑。C的退避計時器一直在倒計時。當C在發送數據的過程中,B和D檢測到信道忙,就凍結各自的退避計時器的數值,重新期待信道變為空閑。正在這時E也想發送數據。由于E檢測到信道忙,因此E就執行退避算法和設置退避計時器。
當C發送完數據并經過了時間DIFS后,B和D的退避計時器又從各自的剩余時間開始倒計時。現在爭用信道的除B和D外,還有E。D的退避計時器最先減到零,于是D得到了發送權。在D發送數據時,B和E都凍結其退避計時器。以后E的退避計時器比B先減少到零。當E發送數據時,B再次凍結其退避計時器。等到E發送完數據并經過時間DIFs后,B的退避計時器才繼續工作,一直到把最后剩余的時間用完,然后就發送數據。凍結退避計時器剩余時間的做法是為了使協議對所有站點更加公平。
圖9-7表示當A正在發送數據時,B,C和D都有數據要發送(用向上的箭頭表示)。由FDC6561AN于這三個站都檢測到信道忙,因此都要執行退避算法,各自隨機退避一段時間再發送數據。8⒆.11標準規定,退避時間必須是整數倍的時隙時間。前面已經講過,第氵次退避是在時隙(0,1,¨”'+氵~1)中隨機地選擇一個。這樣做是為了使不同站點選擇相同退避時間的概率減少。因此,第1次退避(莎=D要推遲發送的時間是在時隙(0,1,¨”7)中(共8個時隙)隨機選擇一個,而第2次退避是在時隙(0,1,¨”15)中(共16個時隙)隨機選擇一個。當時隙編號達到255時(這對應于第6次退避)就不再增加了。這里決定退避時間的變量F稱為退避變量。退避時間選定后,就相當于設置了一個退避計時器(baGkoff timer)。站點每經歷一個時隙的時間就檢測一次信道。這可能發生兩種情況:若檢測到信道空閑,退避計時器就繼續倒 時;若檢測到信道忙,就凍結退避計時器的剩余時間,重新等待信道變為空閑并再經過時間DIFS后,從剩余時間開始繼續倒計時。如果退避計時器的時間減小到零時,就開始發送整個數據幀。
從圖9ˉ7可以看出,C的退避計時器最先減到零,于是C立即把整個數據幀發送出去。請注意,A發送完數據后信道就變為空閑。C的退避計時器一直在倒計時。當C在發送數據的過程中,B和D檢測到信道忙,就凍結各自的退避計時器的數值,重新期待信道變為空閑。正在這時E也想發送數據。由于E檢測到信道忙,因此E就執行退避算法和設置退避計時器。
當C發送完數據并經過了時間DIFS后,B和D的退避計時器又從各自的剩余時間開始倒計時。現在爭用信道的除B和D外,還有E。D的退避計時器最先減到零,于是D得到了發送權。在D發送數據時,B和E都凍結其退避計時器。以后E的退避計時器比B先減少到零。當E發送數據時,B再次凍結其退避計時器。等到E發送完數據并經過時間DIFs后,B的退避計時器才繼續工作,一直到把最后剩余的時間用完,然后就發送數據。凍結退避計時器剩余時間的做法是為了使協議對所有站點更加公平。
上一篇:802.11的退避機制的概念
上一篇:可把CsMA/CA算法歸納如下