802.11幀主要有三種類型:
-
數據幀(data frame)
數據幀好比802.11中的馱馬,負責在工作站之間搬運數據
-
控制幀(control frame)
控制幀通常與數據幀搭配使用,負責區域的清空、信道的取得以及載波監聽的維護,並於收到數據時予以肯定確認,借此提高工作站之間數據傳送的可靠性
-
管理幀(management frame)
管理幀負責監督,主要用來加入或退出無線網絡以及處理接入點之間關聯的轉移事項
本文將從如下幾個方面描述802.11的成幀細節。
數據幀
數據幀會將上層協議的數據置於幀主體中加以傳遞,圖 1顯示了數據幀的基本結構,會用到那些字段取決於該數據幀所屬的類型。
不同的數據幀,幀中字段的含義不同,尤其表現在地址字段。地址字段的編號與功能取決於ToDS位與FromDS位的設定,因此所使用的網絡類型會間接影響到地址字段的用法。下表列出了地址字段在數據幀中的各種用法。
Address 1字段代表幀接收端的地址;Address 2字段是發送端的地址,用來發送確認信息;Address 3字段則是供接入點與分布式系統過濾之用。每個BSS都會被賦予一個BSSID,它是一個長度為48位的二進制標識符,用來識別不同的BSS,在infrastructure BSS中,BSSID就是創建該BSS的接入點上無線接口的MAC地址。
以下通過三個實例來說明數據幀中地址字段的含義。
實例一:將幀傳送至服務器時地址字段的用法
如下圖所示,無線客戶端將幀傳送給服務器,則數據幀中Address 1為RA(BSSID),Address 2為SA/TA,Address 3為DA。
傳送至接入點的數據幀如下圖所示
實例二:將幀從分布式系統傳送至無線客戶端
如下圖所示,分布式系統的服務器將幀發送至無線客戶端,則數據幀中Address 1為RA/DA,Address 2為TA(BSSID),Address 3為SA。
來自接入點的數據幀如下圖所示
實例三:無線分布式系統
無線分布式系統有時也稱為無線橋接器,如下圖所示,兩條有線網絡通過扮演無線橋接器的基站彼此相連,從客戶端送至服務器的幀會經過802.11 WDS。WDS中的數據幀傳輸會用到四個地址,數據幀中Address 1為RA,Address 2為TA,Address 3為DA,Address 4為SA。
WDS幀如下圖所示
在802.11網絡中,移動式工作站會利用Null幀來通知接入點改變省電狀態。如果移動式工作站沒有數據要經過分布式系統傳送,可以使用Null幀,同時將Frame Control字段的Power Management位設定為1,通知接入點該移動工作站即將進入省電模式,接入點需要開始為之緩存幀。Null幀的交互如下圖所示。
控制幀
所有控制幀的Frame Control字段只有Sub type不同,如下圖所示
RTS(請求發送)
RTS幀可用來取得媒介的控制權,以便傳送“大型”幀,由網卡驅動程序中的RTS threshold來區分“大型”幀,RTS幀的格式如下圖所示,RTS幀只包含幀頭,幀主體不包含任何數據,幀頭之后即為FCS。
CTS(清除發送)
CTS幀用於恢復RTS幀,並清空傳送區域。其幀格式如下圖所示。
ACK(確認)
ACK幀是MAC以及任何數據的傳送所需要的確認,其格式如下圖所示。
PS-Poll(省電-輪詢)
當一個移動式工作站從省電模式中蘇醒后,便會傳送一個PS-Poll幀給接入點以取得任何緩存幀,PS-Poll幀的格式如下圖所示。
PS-Poll幀使用管理標識符(association ID)來填充Duration/ID字段。關聯標識符是接入點指定的一個數值,用來識別關聯。雖然PS-Poll幀中並未包含duration信息,無法更新NAV,但是所有收到PS-Poll幀的工作站都會以短幀間間隔加上傳送ACK信號所需要的時間來更新NAV,這一自動調整機制使得接入點在傳送ACK信號時,不容易與移動式工作站發生沖突。
管理幀
管理幀負責監督,主要用來加入或退出無線網絡以及處理接入點之間關聯的轉移事項。所有管理幀的MAC標頭都一樣,與幀的子類型無關。管理幀會使用信息元素來與其他系統交換信息,管理幀的基本結構如下圖所示。
幀主體中大部分數據如果使用長度固定的字段,就稱為固定字段(fixed field);如果字段長度不定,就稱為信息元素(information element),信息元素是TLV結構的數據塊。
固定字段
- Authentication Algorithm Number字段
該字段占用2個字節,代表關聯發生之前,802.11層的最初認證過程所使用的認證類型。 - Authentication Transaction Sequence Number字段
該字段由2個字節構成,用以追蹤身份驗證的進度 - Beacon interval字段
Beacon interval字段的長度為16位,用來設定Beacon信號之間相隔多少時間單位。時間單位通常縮寫位TU,代表1024微秒 - Capability Information字段
傳送Beacon信號的時候,該字段用來通告網絡具備何種性能。Capability Information字段也可以使用在Probe Request與Probe Response幀中。
- Current AP Address字段
表明當前關聯的接入點的MAC地址,這個字段的用途是便於關聯與重新關聯的進行 - Listen interval字段
該字段表明休眠中的工作站會多長時間定期醒來聆聽往來消息,以判斷是否有幀緩存於接入 - Association ID 當工作站與接入點關聯時,就會被賦予一個關聯標識符來協助控制與管理,該字段高兩位置為1,只有14位可用,取值范圍1~2007
- Timestamp字段
時間戳字段可用來同步BSS中的工作站 - Reason Code字段
當對方不適合加入網絡時,工作站會送出Disassociation或Deauthentication幀作為響應,這些幀中包含一個長度位16位的Reason code
字段,表示對方的做法有誤 - Status Code字段
狀態碼用來表示某項操作成功或失敗
信息元素
信息元素通常包含一個Element ID字段、一個Length字段以及一個長度不定的字段,如下圖所示。
- Service Set Identity(SSID)
SSID為網管人員為服務集指定的標識符,長度介於0至32個字節之間 - Supported Rates
802.11網絡可以使用Supported Rates來指定其所支持的速率,有些速率是強制性的,每個工作站都必須支持,有些則是選擇性的。如果是強制性速率,則最高位為
1;非強制性速率則為0。此信息元素最多可包括8種速率,每種編碼均為500kbps的倍數。 - FH Parameter Set
跳頻參數集信息元素ing Pattern Parameter與Hopping Pattern Table - Request
在Probe Request幀中,Request信息元素用來向網絡查詢特定的信息元素 - Challenge Text
802.11所定義的共享密鑰身份驗證系統會要求移動式工作站必須成功解碼一個加密過的質詢。這個質詢使用Challenge Text信息元素進行傳送 - Power Constraint
功率限制 - Power Capability
該字段讓工作站能夠報告本身最低與最高的傳送功率,以dBm為單位 - TPC Request
Transmit Power Control(傳送功率控制) Request信息元素用來請求無線鏈路管理信息 - TPC Report
- Supported Channel
- Channel Switch Announcement
- Quiet
- IBSS DFS
- ERP(extended rate PHY)信息
- Robust Security Network(RSN)
- Extended Supported Rates
- Wi-Fi Protected Access(WPA)
管理幀的類型
Beacon(信標)幀
Probe Request幀
Probe Response幀
IBSS的通知傳輸指示消息(ATIM)幀
Disassociation幀與Deauthentication幀
Association Request幀
Reassociation Request幀
Association Response幀與Reassociation Response幀
Authentication幀
Action幀
幀傳送、關聯與身份驗證狀態
802.11整體狀態圖如下所示: