1.3 論文架構
2.1.2 無線媒介的競爭存取與協調
當無線端點日漸增加時,難免同時會有兩端點以上向同一端點進行 傳輸的碰撞發生,此時無線媒介是藉由兩種協調方式來進行媒介的存取 控 制 如 圖 2-2 , 一 般 而 言 大 部 分 的 無 線 傳 輸 採 用 分 散 式 協 調 功 能 (Distributed Coordination Function, DCF)來進行媒介協調,DCF 是標準 CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)載波偵 測的基礎,也就是當載波偵測到媒介正處於忙碌時即隨機選定一段延後 時間(Backoff Time)來避免碰撞[10]。
圖 2-2 IEEE802.11 MAC 層協調功能
資料來源:「
802.11 Wireless Networks
:The Definitive Guide
」[7]
802.11 的載波偵測分為實體載波偵測(Physical Carrier-Sensing)與虛 擬載波偵測(Virtual Carrier-Sensing),實體載波偵測架構於實體層上,需 藉由實際的硬體來實現,成本較高實用性也較差,而虛擬載波偵測是由 網路配置向量(Network Allocation Vector, NAV)來達成無線媒介競爭協 調,在 802.11 標準中 RTS/CTS 訊框內有一個 Duration 欄位內含 NAV 值,
此 NAV 值會隨時間而遞減,其單位為毫秒(Microsecond, µs),主要是用 來預約此次傳輸所應佔用媒介的時間,如此可防止其它無線端點在傳輸 過程中存取媒介所導致的碰撞,故只要 NAV 值不為 0 則代表媒介目前 正處於忙碌狀態。
2.1.3 802.11 訊框傳送間隔時間
訊框間隔即是在各種傳輸模式下每個欲傳送的訊框所必須間隔的最 小時間,在 802.11 標準中用到四種不同的訊框間隔時間來協調在不同傳 輸模式下媒介的存取控制:
(1) 短訊框間隔(Short InterFrame Space, SIFS)
SIFS 是最小的訊框間隔時間,主要用於某些高優先權的訊框,
例如 RTS/CTS 或 ACK 等較高優先權的訊框。
(2) PCF 訊框間隔(Point coordination function InterFrame Space, PIFS) PIFS 的間隔時間較 SIFS 來的長,主要適用於免競爭作業環境,
較一般的 DIFS 競爭傳輸間隔來的短,以確保在免競爭模式下其 傳送的優先權高於一般競爭模式下的訊框。
(3) DCF 訊框間隔(Distributed coordination function InterFrame Space, DIFS)
DIFS 適用於一般的競爭式服務環境下,也是大部分傳輸作業所 採用的訊框間隔時間,訊框間隔時間大於 PIFS。
(4) 延長訊框間隔(Extended InterFrame Space,EIFS)
EIFS 通常只有在訊框傳輸發生錯誤時才用到,其無固定的間隔 時間。
以上訊框間隔時間的大小依序是 DIFS>PIFS>SIFS,整個虛擬載波偵 測的過程如圖 2-3,傳送端再發送出的 RTS 訊框會利用 NAV 預約媒介一 段時間以供傳輸,由於 RTS/CTS 是優先權較高的訊框,故接收端在間隔
SIFS 時間後立即發送 CTS 訊框來告知其他端點目前媒介正在使用中,
若不是原傳送端,請勿傳送訊框來以免造成碰撞。
圖 2-3 虛擬載波偵測示意圖
2.1.4 802.11MAC 訊框格式
圖 2-4 802.11 MAC 層訊框格式
IEEE802.11 MAC 的訊框格式如圖 2-4 所示,欄位的傳送順序由左至 右,其中包含 30 bytes 的 802.11MAC 訊框標頭(MAC Header)、0~2312 bytes 的訊框主體(Frame body) 以及 4 bytes 的錯誤檢查碼(Frame Check Sequence, FCS),以下分別說明之。
z 802.11 MAC Header:主要包含以下欄位
(1) Frame Control:佔 16 bits,負責訊框的控制,其中又包含以下欄位
• Protocol Version:用以表示 MAC 層協定的版本,由於 802.11MAC
只有一個版本,其版本編號為 0。
• Type 和 Sub Type:兩欄位共 6 bits 是用來辨識訊框類型的最主要 的欄位,其欄位值與名稱所對應的訊框類型如表 2-1。
表 2-1 訊框類型表
Type Subtype 訊框用途
0000 聯結請求(Association Request) 0001 聯結回覆(Association Response) 0010 重新聯結請求(Reassociation Request) 0011 重新聯結回覆(Reassociation Response) 0100 探索請求(Probe Request)
0101 探索回應(Probe Response)
1000 烽火訊框(Beacon)
1001 資料待傳旗標(ATIM)
1010 解除聯結(Disassociation) 1011 身分認證(Authentication) 00
(管理訊框)
1100 解除認證(Deauthentication) 1010 省電模式-輪詢(Power Save-Poll)
1011 請求傳送(RTS)
資料來源:「
802.11 Wireless Networks
:The Definitive Guide
」• ToDS 與 FromDS:當 ToDs 為 1 時表示此「資料訊框(包括廣播及
群撥訊框)」是要傳送到分散式系統(Distribution System),相對的 當 FromDS 為 1 時表示此資料訊框是從分散式系統所傳送出的。
• More Fragments:當此 bit 設為 1 時表示有未傳送完的分割片段
(Fragments)待傳送,當訊框類型為控制訊框時此欄位必為 0。
• Retry:當此 bit 設定為 1 時表示此訊框為重送的訊框,藉由此欄
位可協助接收端判斷重複的訊框。
• Power Management:此 bit 設為 1 時表示無線端點即將進入省電
模式(Power-Save),設為 0 時表示無線端點保持清醒狀態,通常 無線基地台所傳送的訊框在此欄位必定為 0,因為基地台是不允 許進入省電狀態的。
• More Data:當此 bit 被設為 1 時表示,至少有一個以上的待傳訊
框要傳送給進入省電模式中的無線端點,故無線基地台可利用此 欄位來喚醒睡眠中的無線端點。
• WEP:此 bit 設為 1 時表示該訊框受到 WEP(Wired Equivalent
Privacy)加密的保護。
• Order:此 bit 設為 1 時表示目前訊框與訊框片段的傳送是嚴格遵 守順序(Strict Ordering)來傳送的,訊框的傳送順序不可亂跳,不 過如此作法會導致傳送效率的降低。
(2) Duration/ID:此欄位包含 16 bits(以左到右編 0-15 位元),以第 14、
15 位元來判斷其功能,如圖 2-5 分以下三種功能:
圖 2-5 Duration/ID 欄位格式
(a) 設定 NAV 值:當最高位元 15 被設為 0 時表示 Duration/ID 欄位 是用來表示欲預約媒介若干毫秒,也就是 NAV 值,其範圍可從
0 到 32,767,當無線端點需預約更長的媒介使用時間,傳送端會 更新訊框內的的 NAV 值來讓其它無線端點知道傳輸仍在進行,
以避免傳輸受到其他無線端點干擾。
(b) 免競爭模式訊框 NAV 值:在免競爭模式下 Duration/ID 欄位的第 15 位元固定為 1,其餘位元皆為 0,此時 NAV 值為 32768 表示 傳送端與接收端進入免競爭傳輸模式,並利用 Beacon 訊框來告 知其他無線端點,以避免受干擾。
(c) PS-Poll(省電模式-輪詢)訊框:由於休眠中的無線端點必須定時醒
來,故當 Duration/ID 欄位中第 14、15 位元皆為 1 時表示無線端 點剛從省電模式中清醒,發送 PS-Poll 訊框來向基地台詢問是否 有待傳的訊框,PS-Poll 訊框中(Duration/ID 欄位的第 0~13 位元) 含有聯結識別碼(Association ID, AID)主要是用來識別所隸屬的
BSS(Basic Service Set),故當判斷為 PS-Poll 訊框時,Duration/ID 的範圍會落於 49,153~51,159 之間(51,160~65535 保留未使用)。
(3) Address:802.11 MAC 標頭最多可以包含四個 32bits 的 Address 欄 位,通常四個 Address 欄位會依訊框類型而分別代表以下的用途;
(a)目的位址:最終目的端的 MAC Address。
(b)來源位址:來源端的 MAC Address。
(c)接收端位址:如接收端為無線端點,則接收端位址同目的端位 址,如接收端為與基地台相連的 Ethernet 端點,
則 接 收 端 位 址 為 基 地 台 無 線 介 面 的 MAC Address。
(d)傳送端位址:通常只適用於無線橋接器,代表將訊框送到另一無 線傳輸系統的無線基地台 MAC Address。
(e)BSSID(Base Service Set ID):在中控型網路中 BSSID 即是基地台 的 MAC Address,主要用來區別不同的無線區域 網路。
(4) Sequence Control:此欄位佔 16bits,由 4bits 的訊框片段編號(Fragment Number)和 12bits 的訊框序號(Sequence Number)組成,主要是代表訊 框的順序編號,用於重組訊框片段或判斷重複封包。
(5) Frame body:訊框主體即為資料的部份,可傳送 0~2,312bytes(包含 WEP)。
(6) FCS(Frame Check Sequence):用來檢查訊框序列是否完整無誤,其 計算得範圍從 802.11MAC 層標頭到訊框主體,通常是以 CRC(Cyclic Redundancy Check)作為檢查碼。