3. 系統設計與實作
3.4 IEEE 802.16 J 中控型非穿透式網路模組設計與實作
3.4.1 媒體存取控制層模組的設計
3.4.1.1 MR-BS 媒體存取控制層的模組設計與實作
在 IEEE 802.16j 中控型非穿透式網路下,基地台 MR-BS 具有控管整個網路的能力,
也就是說,基地台必頇負責管理其下的用戶端和基地台的資訊並對這些用戶端和中繼台 進行資源的分配。在用戶端與中繼台進行入網程序過程中會和基地台請求連線,基地台 則會分配連線識別碼並建立專屬的連線,方後基地台若要傳送資訊便可依連線識別碼丟 到對應的連線佇列;而當基地台收到封包時也可以依照連線識別碼來辨別是哪個用戶或 中繼台的資料並進行相對應的分析與處理。因此連線管理是基地台在維護用戶端和中繼 台資訊的主要工作。
為了方便基地台對於用戶端和中繼台的連線管理,我們將新增兩種 C++物件類別:
MS object 和 RS object。其中,MS object 是有別於 MS 物件的 C++類別,它是基地台用 來儲存用戶端節點資訊和連線資訊的資料結構;同理,每個在基地台服務下的非穿透式 中繼台也將用一個 RS object 物件來管理。因此在基地台物件(MR-BS 的 C++類別)中將 維護一個 MS object 串列(list)和一個 RS object 串列,當用戶端或中繼台完成入網程序後 便會建立一個 MS object 或 RS object 物件並加入串列中。圖 3-7 顯示了此兩種物件類別 的基本定義,其中 diuc、uiuc 是記錄用戶端和中繼台與存取點(Access Station,可能是 MR-BS 或 NT-RS)間的下行與上行通道狀況,accessStation 是指到存取點物件的指標,
servingBS 則是指向提供服務的基地台物件的指標,還有一個紀錄連線資訊的陣列 MnConnections 和儲存一般資料的 DtConnections,MnConnections[0]儲存 Basic CID 連線 的資訊,MnConnections[1]儲存 Primary CID 連線的資訊,而 MnConnections[2]則紀錄 Secondary CID 連線的資訊。這些連線的資訊將於之後基地台進行排程時取出並封裝。
此外,這兩個物件還實作了一些處理 MAC 管理訊息的函式,例如 MS object 中的 procREGREQ 就是在基地台收到 REG-REQ 後經由連線識別碼判別是哪個 MS object 再
55
去呼叫,其產生的 REG-RSP 將會儲存在 MS object 對應的 MnConnections 裡以待之後排 程時送出。RS object 基本架構與 MS object 類似,但需多處理一些中繼台與基地台之間 傳遞的訊息,例如基地台在中繼台入網程序中會發送 RS_Config-CMD。
MS object + BasicCID
+ PriCID + SecCID + diuc + uiuc
+ accessStation + servingBS
+ MnConnections[3]
+ DtConnections
---+ SendDSAREQ ( )
+ procSBCREQ ( ) + procREGREQ ( ) + procDSARSP ( )
+ procMOB_MSHOREQ ( ) + procMOB_SCNREQ ( ) + procMOB_SCNREP ( ) + procMOB_HOIND ( )
RS object + BasicCID
+ PriCID + SecCID + diuc + uiuc
+ accessStation + servingBS
+ MnConnections[3]
+ DtConnections
---+ SendDSAREQ ( )
+ SendRS_ConfigCMD ( ) + procMR_GenericACK ( ) + procSBCREQ ( )
+ procREGREQ ( ) + procDSARSP ( )
+ procMOB_MSHOREQ ( ) + procMOB_SCNREQ ( ) + procMOB_SCNREP ( ) + procMOB_HOIND ( ) 圖 3-7 MS object 與 RS object 物件結構
在基地台物件裡為了對不同的連線識別碼做適當的處理,維護了包括廣播訊息佇列 (儲存 Broadcast CID 訊息)、初始測距佇列(儲存使用 Initial CID 的訊息)還有 MS object 和 RS object 分別維護了各自的管理連線佇列(Basic CID、Primary CID、Secondary CID、
Transport CID),因此當 recv()函式收到封包時會先拆解成 PDU 並分析其連線識別碼再決 定要丟到何種連線佇列,可能的情形有下列幾種狀況:
(1) 特殊管理訊息連線識別碼:例如 Broadcast CID 或 Initial CID,由於這種不是屬 於特定的用戶端或基地台所擁有的連線識別碼,因此也不在 MS object 或 RS object 中做處理,而是直間根據是何種訊息型態再去做作相對應的分析。而當基 地台要傳送 Broadcast CID 或 Initial CID 的管理訊息會丟到對應的連線佇列 (廣 播訊息佇列或初始測距佇列),之後排程時會從中取出封裝並放在傳送封包內。
56
(2) 一般管理訊息連線識別碼:用戶端與中繼台在入網程序後所分配到的連線識別 碼都有一定的範圍,因此若判斷是屬於用戶端的識別碼範圍就去找到對應的 MS object 處理;反之則代表是中繼台的傳送的管理訊息,找對應的 RS object 處理。
基地台處理完這些管理訊息後往往會產生回覆的訊息,這些回覆訊息將藉由 MS object 與 RS object 中的 MnConnections 來儲存,待基地台開始排程會去一一檢 查各個管理物件的 MnConnections 是否有訊息要送。
(3) 一般資料連線識別碼:這些通常是來自上層的訊息,由於資料連線識別碼也是 有固定範圍,因此只要找到對應的 MS object 或 RS object 將這些資料存入其中 的 DtConnections 即可。如同一般管理連線訊息,這些資料將等稍後的排程才會 再被檢查看是否有足夠的頻寬可以傳輸。
圖 3-8 呈現了在非穿透式網路下 MR-BS、NT-RS 與 MS 間傳遞封包時各物件模組的 處理情形。MR-BS 或 NT-RS 都會在下行存取區段產生 DL Access burst 封包,若 MS 選 擇直接與 MR-BS 進行連線,它將收到 MR-BS 產生的 DL Access burst 封包並在上行存 取區段傳送 UL Access burst 封包至 MR-BS,如圖 3-8 上半部分所示;反之,若 MS 在 MR-BS 涵蓋範圍外,則它必頇與 NT-RS 進行連線,圖 3-8 虛線部分代表 MS 連接在 NT-RS2下並透過 NT-RS1與 MR-BS 進行連線的傳送流程,首先 MR-BS 透過排程器產生 DL Relay burst 並在下行轉送區段傳給 NT-RS1,NTRS1收到後會將需要中繼轉送的資料 放到對應的連線佇列,稍後在 NT-RS 的排程器會去檢查這些連線佇列並產生 DL Relay burst 再往 NT-RS2傳送,最後 NT-RS2收到 DL Relay burst 後也會將這些資料依照連線識 別碼放進連線佇列,並利用排程器產生 DL Access burst 傳送給 MS。因此對 MS 而言,
與 MR-BS 連線或與 NT-RS 連線並無差異,因為收到的封包型態都一樣是 DL Access burst,
只是透過中繼台轉送會有時間上的延遲。
57
Data to Upper Layer
send() Initial Ranging
Connection Upper Layer
Management Connection
Data from Upper Layer
Management Connection
UL Relay burst Data from
Upper Layer
send() recv()
NT-RS2
UL Relay burst
DL Access burst UL Access
burst
圖 3-8 MR-BS、MS 與 NT-RS 物件間的資料傳送
基地台的排程器負責規劃要傳送給用戶端或中繼台的資料,並將這些資料依照 WiMAX 資料封裝的格式放進訊框結構。IEEE 802.16j 非穿透式訊框結構定義於實體層,
主要分為四個區塊,分別是下行存取地帶、下行轉送地帶、上行存取地帶和上行轉送地 帶,因此,排程器會分別針對這四個區塊進行排程並做成封包往實體層傳送。基地台規 畫的封包可依照傳送對象不同分為 DL Access burst 和 DL Relay burst,前者是傳送給直
58 permutation zone 之排列方式有關,目前下行子訊框使用的是 DL-PUSC 的載波排列方式,
每個下行 slot 由一個 sub-channel 和兩個 symbols 所組成,上行子訊框則使用 UL-PUSC 的載波排列方式,每個上行 slot 由一個 sub-channel 與三個 symbols 所組成。表 3-1 和 3-2
OFDMA symbols
Subchannel number
slot (n)
slot (n+1)
slot (n+2)
slot (n+3)
slot (n+4)
slot (n+5)
slot (n+6)
slot (n+7)
slot (n+8) 0
OFDMA symbols
Subchannel number
slot (n)
slot (n+1)
slot (n+2)
slot (n+3)
slot (n+4)
slot (n+5)
slot (n+6)
slot (n+7) 0
59
圖 3-9 下行子訊框與上行子訊框 slot 配置方法
Parameter Value Comments
Number of DC Subcarriers Number of Guard Subcarriers, Left Number of Guard Subcarriers, Right Number of Used Subcarriers (Nused) including all possible allocated pilots and the DC subcarrier
Number of carriers per cluster Number of carriers per cluster
Number of data subcarriers in each symbol per sub-channel
Number of sub-channels
1 subcarriers used within a symbol
表 3-1 DL PUSC 參數表
Parameter Value Comments
Number of DC Subcarriers Nused
Guard Subcarriers: Left, Right Nsubchannels
1
subcarriers used within a symbol
表 3-2 UL PUSC 參數表
接下來將說明中控型非穿透式基地台排程器如何配置訊框結構。基地台經由排程器 產生的訊框結構如圖 3-10 所示,在我們的設計中,訊框結構採動態配置方式,也就是 說,下行存取地帶 (DL Access zone)、下行轉送地帶 (DL Relay zone)、上行存取地帶 (UL Access zone)和上行轉送地帶 (UL Relay zone)這四個區塊每一次所佔的 sumbol 數都可能 因為每一次需要傳送的資料量多寡不同而有所差異。為了確保能滿足用戶端的 QoS 並使 整體傳輸效率能達到最高或下行頻寬盡量達到最大,排程器規畫這四個區塊的順序為由 後往前,即從上行轉送地帶排程開始,依序是上行存取地帶排程、下行轉送地帶排程、
最後才是下行存取地帶排程。其中,排程頇在以下的條件限制下進行:
60
DL Relay bursts (send to NT-RS) R-FCH
R-MAP
UL Access bursts (receive from MS)
UL Relay bursts (receive from
NT-RS) Ranging
subchannel
30 subchannels
DL Relay symbols UL Access symbols
UL Relay symbols
35 subchannels
48 symbols DL Access symbols
1 2
Ranging subchannel 6
UL Allocation Start Time
Relay UL Allocation Start
Time
61
MR-BS NT-RS1 NT-RS2
MS1 MS2 MS3
圖 3-11 三段式轉傳網路拓樸
(1) 上行轉送地帶排程:此區段需做排程的資料包含:基地台服務底下的非穿透式 中繼台(NT-RS1 和 NT-RS2)的上行管理訊息、透過非穿透式中繼台轉送的用戶 端(MS2、MS3)的上行資料。此區塊可再分為競爭區間和免競爭區間,競爭區間 是位於上行轉送地帶的一段子通道,稱為競爭子通道(Ranging subchannel),用 來提供中繼台進行初始測距和定期測距以及頻寬請求測距,圖 3-12 顯示了競 爭子通道對於各種測距碼的安排方式,其中全部測距子通道所佔的 symbol 數 為 UL Relay symbols,並佔了 6 個子通道。由於上行轉送地帶所佔多少 symbols 一開始並不知道,因此這邊必頇先做非競爭區間的排程 (因為分配的上行頻寬 是固定的並可以計算其所占的 slot 個數,進而轉成 symbol 個數)才能獲得 UL Relay symbols,此外初始測距碼佔 2 symbols、定期測距碼佔 1 symbol;免競爭 區間是提供給中繼台上傳中繼台本身傳送的管理訊息或轉送其下用戶端所傳 送的資料。由於目前中繼台並不會提供應用層的服務因此不像用戶端必頇設定 QoS 參數,但中繼台又必頇負責轉送下屬用戶端的資料,為了避免每次中繼台 都要向基地台請求上行頻寬造成的負擔,當中繼台完成入網程序後,基地台會 定期分配給中繼台可用的上行頻寬,中繼台無頇經由頻寬請求機制取得。無論 是競爭區段還是免競爭區段,基地台在對這些資料做排程時最後都會依照其用 途(不同的 uiuc)表示成不同的 UL-MAP IE(Information Element)的格式,當基地 台完成上行轉送地帶的排程之後,必頇將這些 IE 放置在 UL-MAP 中,待下行 轉送地帶排程結束後會包裝成下行轉送封包並傳送至中繼台,而中繼台藉由分
62
析 UL-MAP 便可得知上行轉送地帶的起始位置和相關參數,才能在正確的時 間點進行上行資料的傳送。
UL Relay symbols Ranging
subchannel 6
2 2 2 1 1 1
: RS Initial Ranging TxOP
: RS Period Ranging TxOP
……
圖 3-12 上行轉送地帶的測距子通道分配方式
(2) 上行存取地帶排程:在完成上行轉送地帶排程過後,便可得知 DL Relay symbols,
由於上行子訊框最多只能用掉全部訊框一半的 symbol 數,因此可以推算出上
由於上行子訊框最多只能用掉全部訊框一半的 symbol 數,因此可以推算出上