在802.11ax之前,MAC的接入機制是典型的CSMA機制(即DCF中所采取的CSMA/CA)。在引入了OFDMA的需求以后,802.11ax的MAC層隨機接入機制也產生了變化,在協議中,代替傳統的CSMA思想,802.11ax采取了基于ALOHA思想設計了競爭協議。本節我們主要就是介紹802.11ax中所采取的TF(Trigger Frame)和TF-R(Trigger Frame for Random access)機制。
本節我們討論內容主要參考Draft 0.1中的相應描寫,和以下提案(依照時間順序):
以上的草案資源整理以下,【TF與TF-R相干草案】。
注:由于協議正在制定的進程中,所以會存在TBD(To Be Determined)的部份和不斷更新的協議內容,筆者未必跟上最新的協議進程,如果有錯漏的地方,還請見諒。
802.11ax與傳統的DCF所需求的MAC層機制是不同的。傳統的DCF同1個時刻只有1個用戶接入信道,而由于802.11ax采取OFDMA技術,其需求多個用戶可以同1時間接入信道(選擇的RU是正交的)。
本節我們所介紹的TF機制,主要是用在UL MU (Uplink Multi-users)這類上行傳輸的場景下的。TF機制是1個上行傳輸的框架,其具體的隨機接入的方法是TF-R機制。參考draft 0.1中,第10.3.2.11.4節部份,和草案(IEEE 802.11⑴5/0365r0),我們描寫協議中TF接入機制。
注:如果研讀過協議草案的可以發現,802.11協議指定是1個非常嚴謹的進程,其屬于1個個小草案漸漸疊加,1步1步往上設定的進程,比如在IEEE 802.11⑴5/0365r0草案中,僅僅是1個很簡單的TF的機制,并沒有設置1些具體內容。在TF機制基本思想通過以后,協議會在其上進1步設計,終究不斷修改才取得了終究的802.11協議版本。
TF是1種上行接入的傳輸框架,其定義了1個很簡單的進程:
其中第1列是該RU被分配給那個用戶(具體是指定用戶的AID),如果AID設置為RA(協議中RA的AID號還沒給定,即TBD),那末該RU就是供節點競爭的。后面的幾列包括了比如Coding Type和MCS值,這1塊細節較多,所以我們就不展開了。
以上就是1個TF的接入框架,筆者總結其與傳統的802.11相比有以下不同:
注:802.11ax中不是完全把DCF刪除,而是分時采取不同的模式。TF機制主要是用在上行接入這1部份的,有關我們這1節不進行展開。
TF-R是基于TF的進1步擴大,是在TF機制中,引入了競爭的機制,其基本思想是Slot-Aloha。參考draft 0.1中,第25.5.2.6.1節部份,和草案(IEEE 802.11⑴5/1105r0),我們描寫協議中TF-R接入機制。
初看上圖是比較復雜的,以下我們1步1步做解析。
TF-R是將原來時域競爭轉為頻率競爭(如左側紅色豎線上所示)。
TF-R是在我們前面所述的TF進程之前履行的,在每次接入時,AP首先發送TF-R幀,在該幀中的部份RU其相應AID=X,這個X代表這個RU是供節點競爭接入的。節點在辨認到TF-R幀以后,具體是采取OBO(UL-OFDMA Backoff)的機制競爭(我們所述TF-R的接入思想是基于Aloha而不是CSMA的主要緣由也在這里)。
Aloha和CSMA的核心區分在于LBT(Listen Before Talk)機制上:Aloha是沒有LBT的,而CSMA是基于LBT的。
在OBO中,每個節點首先從CWO(Contention Window for UL-OFDMA)窗口中,選擇1個隨機數并放入Backoff counter中。如上圖,STA1選擇的是10,STA2選擇的是4,STA3選擇的是0。然后節點比較,這1輪TF-R幀中,可供競爭的RU slot的數目,比如上圖RU數目為3。若Backoff counter小于RU的總數(比如STA3選擇為0,其小于3),那末節點就能夠發送數據,反之不行。那末該節點就隨機選擇1個RU(比如上圖,從3個中隨機選擇1個,即RU=3),然后在該RU上進行數據傳輸。
當RU=3被競爭以后,開始下1個的TF-R。此時節點首先要進行Backoff進程,即本地的Backoff counter要減去上1輪總的競爭RU數目(比如STA2選擇為4,那末要減去3,行將Backoff counter設置為1)。若新的1輪中節點的Backoff counter小于這1輪的可供競爭的RU數目(比如STA2現在Backoff counter為1,RU數目為2),那末該節點競爭成功,可以任意選擇1個RU(比如選擇RU=1)。只有當TF幀中,有被用來Random Access的RU的時候(即TF-R幀),其才會觸發OBO的進程,若該TF幀中沒有這類RU,那末不會進行Backoff。
當RU資源被競爭好以后,AP發送TF幀,節點正式向AP反饋上行數據,其進程就和我們之前所述的TF進程1樣了。
注:Slot-Aloha的思想是用來判斷節點在這個時刻可不可以發送(參考我這里所提過的同步異步2:ALOHA中的同步異步),并沒有包括在哪一個位置具體傳輸的機制。故OBO主要是用來判斷,節點能不能發的,至于使用哪一個信道具體發送,那末這里是隨機的。這1塊可能有性能評估的問題,不過目前協議是這樣設定的。