2015年11月23日 星期一

EARC: Enhanced Adaptation of Link Rate and Contention Window for IEEE 802.11 Multi-Rate Wireless Networks

這篇paper,是在探討如何於傳輸的過程中,讓Network可以自己調整Link Rate Contention Window,以達到較好的傳輸效率,以EARC(Enhanced Adaptation of Link Rate and Window)字面上來看,就是強化ARC Protocol,修正這個Protocol 的一些缺失,讓整體的throughput可以得到提升。
首先來討論之前的一些rate-adaptive schemes:

(1)  rate-adaptive schemes: open-loop and closed-loop approaches:

一般在 rate-adaptive schemes,有兩類方式open-loop以及 closed-loop:

Open-loop:只依靠ACK訊息,來做相對應的調整。

a.      Auto-rate Fallback (ARF)

它是以收到ACK的資訊來做為調整rate的依據,在Sender成功連續收到10次的ACKSender 就會調高send rate,而在兩次傳輸的失敗後,sender就會調降send rate。雖然這個方法實作上很簡單,但是卻無法在stable 或是 fluctuated Network達到好的效果,在穩定的狀態下,rate 會被不斷的提高,而在SINR無法容忍下,就會造成不必要的collision,而在fluctuated的狀態下,因為環境變動太快速,會造成rate的調整無法做及時的回應。

b.     Adaptive Thresholds (AT)

AT是用來修正ARF的缺失,它會測量link-layer的狀態,來設計一個Adaptive Threshold,這個值會在contending station增加時,抑制send rate的下降,而在contending station減少時,抑制send rate的提升。這樣的設計對於ARF來說,有效的改善了a部分說討論到的缺失。

Closed-loop: 結合其他訊息(EX:SINR,collision)來做相對應調整。

a.     ARF with COLLIE (AC)  

AC也是用來修正ARF的缺失,它會對link-layer的狀態做診斷,分析封包遺失的原因,如果是weak signal的話,Sender就會降低send rate,而如果是link-layer collisionsSender就會增加它的contention window。主要弊端在於它需要額外的診斷資訊加至每一個封包,因此造成了較大的overhead

b.     Receiver-based Auto-rate (RBAR)

   RBAR是根據receiver所估測到的channel quality來調整data rate,由RTS/CTS   
   handshaking mechanism來告知sender。利用RTS取得RSSI的資訊,選擇適當
   data rate,再利用CTS告知sender做相對的調整。

c.      Adaptation of Link Rate and Contention Window (ARC)

結合了Contention Window,利用Cal´i’s approximation methods,找出optCW,假設發生傳輸失敗(成功),如果CW>optCW(CW<optCW)就減少(增加)CW,否則減少(增加)data rate。不過因為在open-loop nature必須在歷經幾次失敗後,才可到達穩定的狀態,而且它只能在symmetric networking才有好的效果。


(2) EARC: Enhanced Adaptation of Link Rate and Contention


   EARC是屬於closed-loop approach,主要針對ARC的一些弱點作修正,(1)不能及時的調整出適當的data rate(2)以及 asymmetric下無法達到好的效果。(1)Rate Selection Reference
  這邊Rate的選擇是使用rate selection reference (RSR) table(圖一),在每一個接收端的energy level都設定一個合適的data rate,此篇作者通過各種實驗的佐證下,證實這些設定確實時最合適的。相對於ARC,這個方式可以更快找到合適的Rate
 

  


  圖一
(2) Erx,Etx, Ediff
為了考量到asymmetric,這篇paper定義了Erx and EtxErx代表接收端的energy level,而Etx代表在傳送端的energy level,如果兩者不相同代表networkasymmetric     
,如果>0,代表接收端的contenting station較多,必須要放大CW,以減少競爭,相反則縮小CW,鼓勵Sender傳輸。調整方式定義於圖二。

EARC CW Flag是加在header上,如果=0,EARC CW Flag設為0,告訴Sender CW不用做調整,否,則EARC CW Flag設為1,告訴Sender依圖二的方式來調整CW。至於b1b2b3,可以由以下兩式決定:                                          


以及
      
圖二
綜合以上,如果Sender發現Receiver在不同的energy levelsender就先保留CW的調整,先做data rate的調整,將send rate調整至Erx level下的rate,如果兩邊的ErxEtx在相同energy level,再依Ediff對CW做相對應的調整。
 
       



(2)  simulation
a. Symmetric Environment



             Result(1)                         
    Symmetric Environment        
                      
200*200 nodesSymmetric Environment模擬結果下,如圖(Symmetric Environment)可以發現EARC有最好的Throughput(如圖Result(1)),其次是ARC,而最差的是只利用BEB機制的ProtocolEARC以及ARC,都是聯合CWData rate的調整找出最合適的狀態,由結果可以發現這樣的做法確實可以達到好的Throughput。而因為是在Symmetric Environment的環境下,所以EARCARCThroughput差異不大。
b. Asymmetric Environment
                      
Asymmetric Environment                    Result(2)


Asymmetric Environment下,就可以發現ARC的弱點-無法在Asymmetric Environment有好的傳輸效率,因為這個Protocol本身就沒有考慮Asymmetric的情況,只由sender端來決定調整的內容。以上的結果,我可以發現有結合CWadjustment,可以有效穩定rate的變動,如果medium congestion level 可以由CWadjustment來降低,我們就不需要去調整rate,反過來,如果medium可以忍受更多inteference,我們就可以縮小CW,製造更傳輸的機會。

沒有留言:

張貼留言