802.11幀主要有三類:
數據幀——好比 802.11 的馱馬,負責在工作站之間傳輸數據。
控制幀——控制幀通常與數據幀搭配使用, 負責區域的清空、信道的取得以及載波監聽的維護,並於收到數據時予以正面的應答,借此促進工作站間數據傳輸的可靠性。
管理幀——管理幀負責監督, 主要用來加入或退出無線網絡, 以及處理基站之間連接的轉移事宜。
4.1 數據幀
數據幀會將上層協議的數據置於幀主體加以傳遞。會用到哪些位,取決於該數據幀所屬的類型。
一種區分方式:競爭式服務和免競爭服務兩種數據幀
另一種區分方式: 對攜帶數據與提供管理功能的幀加以區別
表4-1: 數據幀的各種分類方式
| 幀類型 | 基於競爭的服務 | 無競爭服務 | 攜帶數據 | 未攜帶數據 |
| Data |
√
|
√ | ||
| Data+CF-ACK | √ | √ | ||
| Data+CF-Poll | AP only | √ | ||
| Data+CF-ACK+CF-Poll | AP only | √ | ||
| Null | √ | √ | √ | |
| CF-ACK | √ | √ | ||
| CF-Poll | AP only | √ | ||
| CF-ACK+CF-Poll | AP only | √ |
4.1.1 Frame Control(幀控制)
最值得注意的是那些地址位,它們的意義將因 ToDS 及FromDSbit 的值而異。
最值得注意的是那些地址位,它們的意義將因 ToDS 及FromDSbit 的值而異。
4.1.2 Duration(持續時間)
Duration(持續時間)位用來記載網絡分配矢量( NAV)的值。
數據幀之 Duration 位的設定,必須依循四項規范:
1.免競爭期間所傳遞的任何幀,必須將 Duration 位設定為 32768。此規范適用於免競爭期間所傳遞的任何數據幀。
Duration(持續時間)位用來記載網絡分配矢量( NAV)的值。
數據幀之 Duration 位的設定,必須依循四項規范:
1.免競爭期間所傳遞的任何幀,必須將 Duration 位設定為 32768。此規范適用於免競爭期間所傳遞的任何數據幀。
2.目的地為廣播或組播地址的幀( Address 1 位設定了群組 bit),其持續時間為 0。此類幀並非基本交換過程的一部分,接收端也不會加以應答,因此競爭式介質訪問可以在廣播或組播數據幀結束后立即開始。 NAV 在幀交換過程中是用來保護傳輸介質。既然廣播或組播幀之后不會有來自鏈路層的應答,因此沒有必要為后續幀鎖住介質使用權。
3.如果 Frame Control 位中的 More Fragments bit 為 0,表示該幀已無其余片段。最后的幀片段只須為本身的應答預訂介質使用權,之后就可以恢復競爭式訪問了。 Duration位會被設定為發送一個短幀間隔及片段應答所需要的時間。整個過程如圖 4-2 所示。倒數第二個片段的 Duration 位,會為最后一個片段鎖住介質使用權。
4.如果 Frame Control 位的 More Fragmentsbit 被設定為 1 ,表示其后還有幀片段。因此,Duration 位便會被設定為發送兩個應答、加上三個短幀間隔及下一個幀片段所需要的時間。為非最終片段設定 NAN 的方式本質上與 RTS 相同,所以亦稱為虛擬 RTS。
4.1.3
地址與
DS Bit
地址位的編號與功能取決於設定了哪個 DS(傳輸系統) bit,因此所使用的網絡類型會間接影響到地址位的用法。表 4-2 列出了地址位在數據幀中的各種用法。只有無線橋接器才會使用第四個地址位,因此比較少見。
地址位的編號與功能取決於設定了哪個 DS(傳輸系統) bit,因此所使用的網絡類型會間接影響到地址位的用法。表 4-2 列出了地址位在數據幀中的各種用法。只有無線橋接器才會使用第四個地址位,因此比較少見。
表 4-2:地址位在數據幀中的用法
| 功能 | ToDS | FromDS | Address 1(receiver) | Address 2(transmitter) | Address 3 | Address 4 |
| IBSS | 0 | 0 | DA | SA | BSSID | not used |
| To AP | 1 | 0 | BSSID | SA | DA | not used |
| From AP | 0 | 1 | DA | BSSID | SA | not used |
| WDS(橋接器) | 1 | 1 | RA | TA | DA | SA |
注意
接收端和
目的地並不是完全相同的。
目的地是指負責處理幀中網絡層封包的工作站;
接收端則是負責將無線電解碼為 802.11 幀的工作站。
源地址是指產生幀中網絡層協議封包的工作站
發送端則是負責將幀發送至無線鏈路。
Address 3 位則是供基站與傳輸系統過濾之用,不過該位的用法,取決於所使用的網絡類型。
4.1.4
數據幀的次類型
- Data(數據)
次類型為
Data
的幀,只有在競爭訪問期間才會傳輸。
- Null(空)
它是由 MAC 標頭與 FCS 標尾所組成。在傳統的以太網中, Null幀無非就是額外的負擔;在 802.11 網絡中,移動工作站會利用 Null 幀來通知基站省電狀態的改
變。
變。
4.1.5
數據幀的封裝
4.1.5.1 IBSS 幀
4.1.5.1 IBSS 幀
IBSS 數據幀的次類型不是 data 就是 Null;后者只是用來告知目前的電源管理狀態。
4.1.5.2 發送自基站( From AP)的幀
區分源與發送端所以必要,是因為 802.11 MAC 會將應答送給幀的 Transmitter(發送端 AP),而較上層的協議會將應答送給幀的 source(來源地)。
區分源與發送端所以必要,是因為 802.11 MAC 會將應答送給幀的 Transmitter(發送端 AP),而較上層的協議會將應答送給幀的 source(來源地)。
4.1.5.3 發送至基站( To AP)的幀
發送至傳輸系統( Ds)的幀其 ToDS bit 會被設定為 1 ,而 FromOS bit 會被設定為 0。
4.1.5.4 WDS 中的幀
4.1.5.5 經加密的幀
Frames Control(幀控制)位的 Protected Frame bit 會被設定為 1
4.2
控制幀
控制幀主要在協助數據幀的傳遞。
控制幀主要在協助數據幀的傳遞。
4.2.1 一般的幀控制位
ToDS
與
FromDS bit
控制幀負責處理無線介質的訪問,因此只能夠由無線工作站產生。傳輸系統並不會收送控制幀,因此這兩個 bit 必然為 0。
4.2.2 RTS(請求發送)
RTS 幀可用來取得介質的控制權,以便傳輸「大型」幀。至於多大稱之大型:是由網卡驅動程式中的 RTS threshold(門限)來定義。介質訪問權只能保留給單點傳播( unicast)幀使用,而廣播(broadcast)與組播( multicast)幀只須發送便是了。
RTS 幀可用來取得介質的控制權,以便傳輸「大型」幀。至於多大稱之大型:是由網卡驅動程式中的 RTS threshold(門限)來定義。介質訪問權只能保留給單點傳播( unicast)幀使用,而廣播(broadcast)與組播( multicast)幀只須發送便是了。
Duration
(持續時間)
RTS 幀會試圖預定介質使用權,供幀交換程序使用,因此 RTS 幀發送者必須計算 RTS 幀結束后還需要多少時間。
RTS 幀會試圖預定介質使用權,供幀交換程序使用,因此 RTS 幀發送者必須計算 RTS 幀結束后還需要多少時間。
4.2.3
CTS
(允許發送)
CTS 幀有兩種目的:1.
用於應答
RTS
幀;2.被 802. 11g 防護機制用來避免干擾較舊的工作站
4.2.4
ACK
(應答)
ACK 幀就是 MAC 以及任何數據傳輸(包括一般傳輸 RTS/CTS 交換之前的幀、幀片段)所需要的正面應答( positive acknowledgment)。
4.2.5
PS-Poll
(省電模式一輪詢)
當一部移動工作站從省電模式中蘇醒, 便會發送一個 PS-Poll 幀給基站, 以取得任何暫存幀。
當一部移動工作站從省電模式中蘇醒, 便會發送一個 PS-Poll 幀給基站, 以取得任何暫存幀。
AID(連接識別碼):PS-Poll 幀將會以 MAC 標頭的第三與第四 bit 來代表連接識別碼(association ID)。連接識別碼是基站所指定的一個數值, 用以區別各個連接。 將此識別碼置入幀, 可讓基站找出為其(移動工作站)所暫存的幀。
4.3
管理幀
4.3.1 管理幀的結構
4.3.1 管理幀的結構
4.3.2 長度固定的管理幀元件
Authentication Algorithm Number 位
Authentication Algorithm Number 位
Authentication Transaction Sequence Number 位
身份認證程序分為好幾個步驟,其中包含由基站所發出的盤問口令( challenge),以及試圖連接的移動工作站所做出的應答。
Beacon interval
位
每隔一段時間就會發出的 Beacon(信標)信號,用來宣布 802.11 網絡的存在。 Beacon幀中除了包含 BSS 參數的信息,也包含基站暫存幀的信息,因此移動工作站必須仔細聆聽Beacons 信號。 Beacon interval(信標間隔)位的長度有 16 個 bit,用來設定 Beacon 信號之間相隔多少時間單位。
每隔一段時間就會發出的 Beacon(信標)信號,用來宣布 802.11 網絡的存在。 Beacon幀中除了包含 BSS 參數的信息,也包含基站暫存幀的信息,因此移動工作站必須仔細聆聽Beacons 信號。 Beacon interval(信標間隔)位的長度有 16 個 bit,用來設定 Beacon 信號之間相隔多少時間單位。
Capability information
位
長度 16 個 bit 的 Capability Information 性能信息位, 發送 Beacon 信號的時候,它被用來通知各方,該網絡具備哪種性能。
長度 16 個 bit 的 Capability Information 性能信息位, 發送 Beacon 信號的時候,它被用來通知各方,該網絡具備哪種性能。
- ESS/IBSS(擴展服務組合/獨立型塞本服務組合)
- Privacy(私響性)
- short Preamble(短同步信號)
- PBCC(分組二進制卷積編碼)
- Channel Agility(機動信道轉換)
- Short Slot Time( 802.llg)
- DSSS-OFDM( 802.lIg)
- Contention-free polling(免競爭輪詢) bit
Current AP Address
位
移動工作站可以使用圖 4-25 所示的 Current AP Address(目前基站的地址)位來表明目前所連接的基站的 MAC 地址。 這個位的用途是便於連接( association) 與重新連接( reassociation)的進行。 工作站會借此發送上一次所連接的基站的地址。 當工作站打算與不同的基站建立連接時,此位可用來轉換連接,以及取回所有暫存的幀。
移動工作站可以使用圖 4-25 所示的 Current AP Address(目前基站的地址)位來表明目前所連接的基站的 MAC 地址。 這個位的用途是便於連接( association) 與重新連接( reassociation)的進行。 工作站會借此發送上一次所連接的基站的地址。 當工作站打算與不同的基站建立連接時,此位可用來轉換連接,以及取回所有暫存的幀。
Listen interval 位
所謂 Listen Interval,其實就是以 Beacon interval(信標間隔)為單位所計算出的休眠時間。
Association ID
位
長度 16bit
長度 16bit
Timestamp
位
用來同步 BSS 中的工作站 BSS 的主計時器會定期發送目前已作用的微秒數。 當計數器到達最大值時, 便會從頭開始計數。
用來同步 BSS 中的工作站 BSS 的主計時器會定期發送目前已作用的微秒數。 當計數器到達最大值時, 便會從頭開始計數。
Reason Code
位
當對方不適合加入網絡時,工作站會送出 Disassociation(解除連接)或 Deauthentication(解除身份認證)幀作為應答。這些幀當中包含一個長度 16bit 的 Reason Code(原因代碼)位,表示對方的做法有誤,
當對方不適合加入網絡時,工作站會送出 Disassociation(解除連接)或 Deauthentication(解除身份認證)幀作為應答。這些幀當中包含一個長度 16bit 的 Reason Code(原因代碼)位,表示對方的做法有誤,
| 代碼 | 含義 |
| 0 | 保留,未使用( Reserved; unused) |
| 1 | 未指定( Unspecified) |
| 2 | 之前的身份認證無效( Prior authentication is not valid) |
| 3 | 工作站已經離開基本服務區或擴展服務區,目前已經解除身份認證 |
| 4 | 閑置計時器超時,且工作站已經解除連接 |
| 5 | 基站資源不足,因此解除連接 |
| 6 | 從尚未認證的工作站所收到的幀類型或次類型不正確 |
| 7 | 從尚未連接的工作站所收到的幀類型或者次類型不正確 |
| 8 | 工作站已經離開基本服務區或擴展服務區,目前已經解除連接 |
| 9 | 在身份認證完成之前要求連接或者重新連接 |
| 10( 802.11h) | 無法接受 Power Capability 信息元素的設定值,因此解除連接 |
| 11( 802.11h) | 無法接受 Supported Channels 信息元素的設定值,因此解除連接 |
| 12 | 保留 |
| 13( 802.11i) | 信息元素不正確( 802.11i 所加入的原因代碼, 因此應指 802.11i 的信息元素) |
| 14( 802.11i) | 數據完整性檢驗失敗 |
| 15( 802.11i) | 四道密鑰磋商超時 |
| 16( 802.11i) | 群組密鑰磋商超時 |
| 17( 802.11i) | 四道磋商信息元素的安全參數與原始參數組合不符 |
| 18( 802.11i) | 群組密碼鎖不正確 |
| 19( 802.11i) | 成對密碼鎖不正確 |
| 20( 802.11i) | 身份認證與密鑰管理協議不正確 |
| 21( 802.11i) | 未支持的固安網絡信息元素版本 |
| 22( 802.11i) | RSN IE 的性能項不正確 |
| 23( 802.11i) | 802.1X 身份認證失敗 |
| 24( 802.11i) | 所設定的使用政策拒絕所提議的密鑰鎖組 |
| 25-65535 | 保留 |
Status Code
位
狀態代碼用來表示某項過程成功或失敗。
狀態代碼用來表示某項過程成功或失敗。
4.3.3
管理幀的信息元素
信息元素( information element)是管理幀的組成元件,其長度不定。信息元素通常包含一個 Element ID(元素識別碼)位、一個 Length(長度)位以及一個長度不定的位,如圖 4-31所示。 Element ID 編號的標准值如表 4-7 所示。
信息元素( information element)是管理幀的組成元件,其長度不定。信息元素通常包含一個 Element ID(元素識別碼)位、一個 Length(長度)位以及一個長度不定的位,如圖 4-31所示。 Element ID 編號的標准值如表 4-7 所示。
表 4-7:信息元素
| Element ID | Name |
| 0 | 服務集標識( Service Set Identity (SSID)) |
| 1 | 所支持的速率( Supported Rates) |
| 2 | 跳頻參數集合( FH Parameter Set) |
| 3 | 直接序列參數集合( DS Parameter Set) |
| 4 | 免競爭參數集合( CF Parameter Set) |
| 5 | 數據待傳信息( Traffic Indication Map (TIM)) |
| 6 | IBSS 參數集合( IBSS Parameter Set) |
| 7 (802.11d) | 國家( Country) |
| 8 (802.11d) | 跳頻模式參數( Hopping Pattern Parameters) |
| 9 (802.11d) | 跳頻模式表( Hopping Pattern Table) |
| 10(802.11d) | 請求( Request) |
| 11-15 | 保留;未使用( Reserved; unused) |
| 16 | 盤查口令( Challenge text) |
| 17-31 | 保留【注 a】(在 802.11 共享密鑰身份認證停用之前,保留給盤查口令未來擴充用) |
| 32(802.11h) | 功率限制( Power Constraint) |
| 33(802.11h) | 功率性能( Power Capability) |
| 34(802.11h) | 發射功率控制請求( Transmit Power Control (TPC) Request) |
| 35(802.11h) | 發射功率控制報告( TPC Report) |
| 36(802.11h) | 所支持的信道( Supported Channels) |
| 37(802.11h) | 信道切換宣告( Channel Switch Announcement) |
| 38(802.11h) | 測量請求( Measurement Request) |
| 39(802.11h) | 測量報告( Measurement Report) |
| 40(802.11h) | 禁聲( Quiet) |
| 41(802.11h) | IBSS 動態選頻( IBSS DFS) |
| 42(802.11g) | ERP 信息( ERP information) |
| 43-49 | 保留( Reserved) |
| 48 (802.11i) | 固安網絡( Robust Security Network) |
| 50(802.11g) | 擴展支持速率(Extended Supported Rates) |
| 32-255 | 保留;未使用(Reserved; unused) |
| 221 | Wi-Fi 訪問保護(Wi-Fi Protected Access) |
4.3.3.1
服務集標識(
Service Set Identity
(
SSID
))
有些文件將 SSID 視為網絡名稱,因為網管人員通常以字串來指定 SSID。其實, SSID 不過是由字節所形成的字串,用來標示所屬網絡的 BSSID。有些產品要求此字串必須是以 null(即0)結尾的 ASCII 字串,雖然標准對此並無特別規范。
SSID 的長度介於 0 至 32 字節之間。如果完全不加指定,此種特例稱為 broadcast SSID;broadcast SSID 只用於 Probe Request 幀,工作站可以藉此找出該區域中所有的 802.11 網絡。
4.3.3.2
支持速率(
Supported Rates
)
無線局域網絡支持數種標准速率。 802.11 網絡可以使用 Supported Rates(所支持的凍率)信息元素指定其所支持的速率。 當移動工作站試圖加入網絡, 會先檢視該網絡所使用的數據速率。有些速率是強制性的,每部工作站都必須支持,有些則是選擇性的。
無線局域網絡支持數種標准速率。 802.11 網絡可以使用 Supported Rates(所支持的凍率)信息元素指定其所支持的速率。 當移動工作站試圖加入網絡, 會先檢視該網絡所使用的數據速率。有些速率是強制性的,每部工作站都必須支持,有些則是選擇性的。
它是由一串字節所構成。每個字節會使用七個低效 bit 來代表數據速率;最高效 bit 則是用來表示該數據速率是否為強制性。如果是強制性速率,最高效 bit 為 1 ;非強制性速率則為 0。
此信息元素最多可涵括八種速率。
| 二進制數值 | 十六進制 | 響應的速率( Corresponding rate (Mbps)) |
| 2 | 82 | 1Mbps |
| 4 | 84 | 2 Mbps |
| 11 (802.11b) | 8B | 5.5 Mbps |
| 12 (802.11g) | 0C | 6 Mbps |
| 18 (802.11g) | 12 | 9 Mbps |
| 22 (802.11b) | 96 | 11 Mbps |
| 24 (802.11g) | 18 | 12 Mbps |
| 36 (802.11g) | 24 | 18 Mbps |
| 44 (802.11g) | 2C | 22 Mbps (802.11g PBCC 選項 optional 802.11g PBCC) |
| 48 (802.11g) | 30 | 24 Mbps |
| 66 (802.11g) | 42 | 33 Mbps (802.11g PBCC 選項 optional 802.11g PBCC) |
| 72 (802.11g) | 48 | 36 Mbps |
| 96 (802.11g) | 60 | 48 Mbps |
| 108 (802.11g) | 6C | 54 Mbps |
圖 4-33 顯示了如何
同時編碼兩種數據速率。除了支持強制性的 2Mbps 服務,也支持選擇性的 11Mbps 服務。
4.3.3.4
直接序列參數集合(
DS Parameter Set
)
802.11 直接序列( Direct-sequence)網絡只有一個參數:網絡所使用的信道數。
802.11 直接序列( Direct-sequence)網絡只有一個參數:網絡所使用的信道數。
