15-6 IEEE 802.11 訊框格式
IEEE 802.11 協定如同一般區域網路(如 Ethernet)協定一樣,上層通訊軟體也是透過 IEEE 802.1 LLC(Logical Link Control)(請參考第七章說明)。LLC 提供多工傳輸模式,讓多個應用程式能透過 LLC 連接到 MAC 通訊軟體。但為了提高傳輸效率,LLC 點對點傳輸大多採用較長的訊框,稱之為『MAC 服務資料單元』(MAC Service Data Unit, MSDU)。但無線網路的電波傳遞容易受到其他訊號的干擾,並不適合傳遞長訊框,因此,MAC 傳訊框前會將長訊框的 MSDU 切割(Fragment)為若干個『MAC Protocol Data Unit, MPDU』,接收端收到 MPDUs 後再將其組合回原來的 MSDU,分割方式如圖 15-37 所示。
圖 15-37 MSDU 切割範例 在 IEEE 802.11 規範中,可設定一個最大訊框長度,稱之為『切割臨界值』(Fragmentation Threshold)。當一個 MSDU 訊框的長度大於切割臨界值時,就必須被切割,亦即每一個 MPDU 的資料長度都必須小於切割臨界值。在傳送時,每一個 MPDU 都代表一個獨立的訊框,也都必須分別收到對方的回覆訊息。不過屬於同一個 MSDU 的 MPDUs 在傳送時,是以密集方式一個接一個傳送,而每一個 MPDU 也都必須收到回覆訊息(Stop-and-Wait 流量控制法)。一個 MSDU 訊框只要呼叫一次 DCF 或 PCF,便可以連續傳送所屬的 MPDUs,不需要每個 MPDU 都呼叫一次。另外,不論欲傳送訊框的 MSDU 長度是否超過切割臨界值,只有指定單一目的地的訊框才能被切割,且廣播及群播的訊框也都不可以分割。另外值得注意的是,『切割臨界值』是依照系統內定的 aMPDUMaxLength 參數大小而定,一般在 FHSS/1Mbits 設定為 400 Bytes;而 FHSS/2Mbits 設定為 800 Bytes,由此可見,MPDU 是屬於短訊框傳輸方式。 15-6-1 MPDU 訊框格式 圖 15-38 為 IEEE 802.11 的 MPDU(MAC Protocol Data Unit)訊框格式,其中包含: (1) 訊框標頭(Header):長度為 30 Bytes,包含訊框控制(Frame Control)、位址(Address 1 ~ 4)、順序控制(Sequence Control)與持續時間(Duration/ID)等欄位。 (2) 訊框實體(Frame Body):為 0 ~ 2312 Bytes 的不定長度,欄位中可能存放資料或其他控制訊息,依訊框型態(Frame Type)而有所不同。這裡必須強調的是,如果是廣播或多重傳播的訊框是不可以分割的,因此訊框實體內可能包裝著一個未經分割的 MSDU,而其長度可能會較長。 (3) 訊框檢查序列(Frame Check Sequence):長度為 4 Bytes,採用 CRC-32 檢查碼。
圖 15-38 MPDU 訊框格式
以下分別介紹各欄位的功能。 (A) 訊框控制欄位 『訊框控制』(Frame Control)欄位格式如圖 15-39 所示,其包含 11 個子欄位,功能如下:
圖 15-39 訊框控制欄位格式 (1) Protocol Version:802.11 協定版本。 (2) Type and Subtype:Type 欄位表示此訊框型態,目前定義有三種:Data、Control 與 Management 訊框,每一種型態都包含若干種子型態,由 Subtype 欄位指定,如表 15-4 所示。 (3) To DS:此旗號為 1 表示此 Data 訊框(包含廣播與群播訊框)是要傳遞給分散式系統(透過 AP 轉送)。若為其他種類訊框,則其值應該為 0。 (4) From DS:此旗號為 1 表示此 Data 訊框是由分散式系統傳送下來的(透過 AP 轉送);若為其他種類訊框,則其值應該為 0。To DS 與 From DS 之間有四種組合,各表示不同的意義,如表 15-5 所示。 (5) More Frag:此旗號值若為 1,表示此訊框後面還有其他片段(Fragment)會繼續傳送過來。若後面已無其他片段訊框,則為 0。 (6) Retry:此旗號值為 1,表示此 Data 訊框(或管理訊框)為重送的訊框,接收端可依此判斷接收或拋棄。 (7) Pwr Mgt:此旗號用來顯示工作站是否處於電源管理模式(Power Management)。如其值為 1,表示此工作站正處於省電模式;其值為 0,表示此工作站處於正常工作狀態。 (8) More Data:AP 可用此旗號來通知處於省電模式的工作站,已有資料準備傳送給它;另一種用途是,如在 Data 訊框上此旗號為 1,表示至少還有一個 MPDU 準備傳送。若為其他種類的訊框,該值應為 0。 (9) WEP:此旗號值為 1 時,表示該訊框所攜帶的資料已經過 WEP 加密處理,否則該值為 0。 (10) Order:此旗號為 0 時,表示此 Data 訊框是經由『嚴格依序服務等級』(Strictly Ordered Service Class)所分類。若為其他訊框,則該值為 0。 表 15-4 有效訊框型態與次型態的組合
表 15-5 To DS 與 From DS 組合的意義
(B) 持續/識別欄位 持續/識別(Duration/ID)欄位共有 16 個位元,依照訊框格式可能存放『持續時間』(Duration)或『聯結識別碼』(Association Identify, AID),其用法如表 15-6 所示,說明如下: (1) 若訊框為『控制型態』(Control Type,如表 15-4 所示),而且次型態為 PS_Poll(省電詢問),則此欄位攜帶聯結識別碼(AID),其最左邊兩個位元都是 1,而剩下的 14 個位元表示傳送此訊框工作站的 AID;AID 值的範圍由 1 到 2007。 (2) 若為其他訊框,則此欄位代表一個『持續時間』(Duration),其值依各訊框型態而定。但對於所有在無競爭週期所傳送的訊框來說,此欄位的值應該設為 3274。當 Duration/ID 欄位的內容小於 3278 時,表示其為一個 Duration 值,而且是用來修正 NAV 值的。 表 15-6 Duration/ID 欄位的意義
(C) 位址欄位 在 IEEE 802.11 規範中,位址型態(48 個位元)可能是下列兩種型態之一: (1) 個別位址(Individual Address):表示連結在網路上的某一獨立工作站位址,可做為目的或來源位址使用。 (2) 群組位址(Group Address):表示某一工作站群組位址,僅能做為目的位址使用,可分為下列兩種類型: (a) 群播群組位址(Multicast-Group Address):某一位址代表一個工作站群組,此群組成員可接收該位址為目的地的訊框。 (b) 廣播位址(Broadcast Address):廣播位址的格式是所有位元都是 1(48 個位元),任何工作站都可接收該位址為目的地的訊框。 MAC 訊框格式共有四個位址欄位,這些欄位是用來記錄『基本服務區 ID』(BSS Identifier, BSSID)、起始位址(Source Address, SA)、目的地位址(Destination Address, DA)、傳送器位址(Transmitter Address, TA)、以及接收器位址(Receiver Address, RA),至於哪一個欄位存放何種位址,隨不同訊框型態而異。其中目的位址(DA)可以是個別或群播位址,也可以是該訊框的最終目的;起始位址(SA)是產生此訊框的工作站位址;而傳送器位址(TA)是指無線媒介上傳送此訊框的位址;接收器位址(RA)則是指在無線媒介上接收此訊框的位址;然而 TA 與 RA 大多屬於擷取點(AP)位址。每一個位址都符合 IEEE 802 標準的 48 位元長度,但有些訊框型態不會使用到所有欄位。 有些位址欄位在使用時,與其在欄位的相對位址(1 ~ 4)有關,和位址型態無關。例如,當一個工作站接收到一筆訊框時,皆以 Address 1 來判斷是否傳送給自己,而 CTS 訊框(ACK 訊框)中的 RA,是等於 RTS 訊框(需要被回覆的訊框)中的 Address 2 位址。至於每一欄位存放何種位址,在介紹控制訊框與資料訊框時會提到。 (D) 順序控制欄位 『順序控制』(Sequence Control)欄位是用來表示該訊框是屬於那一個 MSDU 號碼下的第幾個分段(Segment)號碼,包含兩個次欄位:順序號碼(Sequence Number,12 個位元)與片段號碼(Segment Number, 4 個位元),如圖 15-40 所示。其中順序號碼為該訊框的 MSDU 號碼,每一個 MSDU 都有一個順序號碼,其值由 0 到 4095,可以重複輪流使用。片段號碼是指由 MSDU 分割出來的片段順序號碼,其值由 0 到 15,可重複使用;如果片段號碼為 0,表示是第一個片段或沒有分段的訊框。
圖 15-40 順序控制欄位 15-6-2 控制訊框格式 如表 15-4 所列,訊框型態可區分為控制(Control)、資料(Data)和管理(Management)等三大類,每一型態都有不同的訊框格式,首先我們來介紹控制訊框格式,接下來兩小節再介紹資料和管理訊框格式。 控制訊框可區分為 RTS、CTS、ACK、PS_Poll、CF_End 與 CF_End+CF_Ack 等訊框,由訊框欄位中的 Type 和 Subtype 次欄位來分別表示(如表 15-4)。而各種控制訊框的『訊框控制』(Frame Control)欄位都相同,如圖 15-41 所示。圖 15-42 為各控制訊框的格式,其『訊框控制』欄位如圖15-41 所示。然而控制訊框並沒有包含『訊框實體』(Frame Body)欄位,四個位址欄位中也依各訊框使用不同的欄位,但並不一定每一欄位都使用到。各訊框的說明如下:
圖 15-41 控制訊框的控制欄位內容
圖 15-42 各控制訊框的格式 (D) RTS 訊框 『RTS 訊框』格式如圖 15-42 (a) 所示,其中 RA 為接收此訊框的位址;TA 為發送此訊框的位址,兩者位址皆是一個無線媒介的位址(如擷取點)。Duration 的值(單位為 μs)為準備發送訊框的長度再加上一個 CTS 訊框、一個 ACK 訊框、以及三個 SIFS 間隔時間,而取整數計算。 (E) CTS 訊框 『CTS 訊框』格式如圖 15-42 (b) 所示,其中 TA 欄位內容應該等於上一個對應之 RTS 訊框的 TA 內容。Duration 值為前一個對應之 RTS 訊框中的 Duration 值,再減去傳送此 CTS 訊框及一個 SIFS 間隔時間,也採整數計算。 (F) ACK 訊框 『ACK 訊框』格式如圖 15-42 (c) 所示,其中 RA 的內容應該等於前一個對應訊框的 Address 2 欄位,前面訊框可能是 Data、Management 或 PS_Poll 等訊框。如果前一訊框的 More Fragment 欄位為 0 時,則本訊框的 Duration 的值應該設為 0;如果為 1 時,則本訊框的 Duration 的值為前一訊框的 Duration 值,再減掉傳送本訊框的時間和一個 SIFS 間隔時間,而採整數計算。 (G) PS_Poll 訊框 『省電輪詢』(Power Save Poll, PS_Poll)訊框格式如圖 15-42 (d) 所示,其中 AID(Association ID)是接收工作站和 AP 之間所建立的聯結號碼,而 AID 的最前面兩位元都應該為 1;BSSID 是接收工作站所屬的 AP位址;TA 是傳送此訊框的 AP 位址。所有收到 PS_Poll 訊框者,都必須修正自己的 NAV 值,修正的值為傳送一個 ACK 訊框及一個 SIFS 間隔時間。 (H) CF_End 訊框 『無競爭週期結束』(Contention-Free End, CF_End)訊框格式如圖 15-42 (e) 所示,其中 RA 為廣播位址;Duration 值為 0;BSSID 為隸屬於 AP 的工作站位址。 (I) CF_End + CF_Ack 訊框 『無競爭週期結束及回覆』(Contention-Free End and Acknowledge, CF_End+CF_Ack)訊框格式如圖 15-42 (f) 所示,如同 CF_End 訊框一樣,其中 BSSID 為隸屬於 AP 中的工作站位址;RA 為廣播位址;Duration 的值為 0。 15-6-3 資料訊框格式 在表 15-4 中,雖然『資料訊框』(Data Frame)可依照 Type 和 Subtype 欄位,來區分各種資料訊框的使用時機,但訊框格式並沒有差異,訊框標頭也如同圖 15-38 一樣。但資料訊框會隨著傳輸時機,來改變位址欄位(Address 1 ~ Address 4)的表示方法。資料訊框傳送的時機如表 15-5 所示,其中以 To DS 和 From DS 欄位來區分,而位址表示方式如表 15-7 所示,其中 N/A 表示該欄位可以取消。 表 15-7 資料訊框的 Address 欄位內容
管理訊框是利用 Address 1 來存放目的位址(DA)、Address 2 存放來源工作站位址(SA)、Address 3 存放 BSSID 位址。其中 BSSID 為一個基本服務區(BSS)的識別碼,表示方式如同資料訊框的 BSSID 一樣。在所有無競爭週期(CFP)內傳送的管理訊框,Duration 欄位都設定為 32768;而在競爭週期(DCF)內,Duration 欄位會依照下列情況而異: 15-6-4 管理訊框格式 在 IEEE 802.11 規範下,管理訊框(Management Frame)可區分為 Beacon、Disassociation、Association Request、Association Response、Reassociation Request、Reassociation Response、Probe Request、Probe Response、Authentication、 Deauthentication 與 ATIM(Announcement Traffic Indication Message)等 11 種訊框格式,訊框標頭如圖 15-43 所示(減少 Address 4 欄位)。如同控制及資料訊框一樣,是由 Type 和 Subtype 欄位來區分各種訊框,如表 15-42 所示。
圖 15-43 管理訊框的格式 管理訊框是利用 Address 1 來存放目的位址(DA)、Address 2 存放來源工作站位址(SA)、Address 3 存放 BSSID 位址。其中 BSSID 為一個基本服務區(BSS)的識別碼,表示方式如同資料訊框的 BSSID 一樣。在所有無競爭週期(CFP)內傳送的管理訊框,Duration 欄位都設定為 32768;而在競爭週期(DCF)內,Duration 欄位會依照下列情況而異: (1) 如果目的位址(DA)為一群體位址,則 Duration 的值為 0。 (2) 如果 More Fragment 欄位為 0,並且 DA 為一個別位址,則 Duration 的值(單位為 μs)為傳送一個 ACK 訊框所需時間,再加上一個 SIFS 間隔時間。 (3) 如果 More Fragment 欄位為 1,並且 DA 為一個別位址,則 Duration 的值為緊接著傳送下一個訊框的時間,再加上傳送兩個 ACK 訊框時間及三個 SIFS 間隔時間: 管理訊框是利用 Frame Body 來攜帶各種控制訊息,每一種管理訊框都有其各自的控制訊息,有關控制訊息部份請讀者參考 IEEE 802.11 規格書說明,本書侷限於篇幅不另介紹(太多了)。
|
翻轉工作室:粘添壽
電腦網路與連結技術:
翻轉電子書系列:
|