802.11协议基础
1. 802.11管理功能–用戶接入過程
? ? ? STA (工作站)啟動初始化、開始正式使用、AP 傳送數據幀之前,要經過三個階段才能接入:
? ? ? (1) 掃描(SCAN)?? ? ? (2) 認證(Authentication)?
? ? ? (3) 關聯(Association)?
1.1 802.11管理–掃描(SCAN)
? ? ? 1) ?若無線站點 STA 設成 Ad-hoc (無AP)模式:
? ? ? ? ?STA先尋找是否已有 IBSS(與STA所屬相同的SSID)存在,如有,則參加(join);若無, 則會自己創建一個IBSS,等其他站來 join。?
? ??? 2) 若無線站點 STA 設成 Infrastructure (有AP)模式:
? ? ? ? ? ?--主動掃描方式?(特點:能迅速找到)
? ? ? ? ? ? ? ?依次在每個信道上發送Probe request報文,從Probe Response中獲取BSS的基本信息, Probe Response包含的信息和Beacon幀類似
? ? ? ? ? ?--?被動掃描方式?(特點:找到時間較長,但STA節電)? ? ? ? ? ? ??
? ? ? ? ? ? ? ? 通過偵聽AP定期發送的Beacon幀來發現網絡, Beacon幀中包含該AP所屬的BSS的基本信息以及AP的基本能力級,包括: BSSID(AP的MAC地址)、 SSID、支持的速率、支持的認證方式,加密算法、 Beacons幀發送間隔,使用的信道等 ? ? ? ? ? ? ? ? 當未發現包含期望的SSID的BSS時,STA可以工作于IBSS狀態
1.2 ?802.11管理功能–認證(Authentication)?
? ? ? ?802.11支持兩種基本的認證方式:? ? ? ???? Open-system Authentication ? ? ? ? ? 1) 等同于不需要認證,沒有任何安全防護能力 ? ? ? ? ? 2) 通過其他方式來保證用戶接入網絡的安全性,例如Address filter、用戶報文中的SSID
? ? ??? Shared-Key Authentication ? ? ? ? ?1) 采用WEP加密算法 ? ? ? ? ?2) Attacker可以通過監聽AP發送的明文Challenge text和STA回復的密文Challenge text計算出WEP KEY
? ? ? 另外,STA可以通過Deauthentication來終結認證關系。
1.3 802.11管理功能–關聯(Association)?
??? ?1) Association
? ? ? ? ?? STA通過Association和一個AP建立關聯,后續的數據報文的收發只能和建立Association關系的AP進行 ??? ?2) Reassociation ? ? ? ? ?? STA在從一個老的AP移動到新AP時通過Reassociation和新AP建立關聯 ? ? ? ? ?? Reassociation前必須經歷Authentication過程 ? ? ?3) Deassociation ? ? ? ? ?? STA通過Deassociation和AP解除關聯關系
2. 802.11相關協議
3. 802.11幀格式
3.1 802.11 MAC Header(MAC頭)
? ? ???Frame Control(幀控制域)
? ? ???Duration/ID(持續時間/標識)
? ? ???Address(地址域)
? ? ???Sequence Control(序列控制域)
3.1.1?Frame Control(幀控制域)
? ? ???Protocol Version(協議版本):通常為0;
? ? ???Type(類型域)和Subtype(子類型域):共同指出幀的類型;
? ? ???To DS:表明該幀是BSS向DS發送的幀;
? ? ???From DS:表明該幀是DS向BSS發送的幀;
? ? ???More Frag:用于說明長幀被分段的情況,是否還有其它的幀;
? ? ???Retry(重傳域):用于幀的重傳,接收STA利用該域消除重傳幀;
? ? ???Pwr Mgt(能量管理域):1:STA處于power_save模式;0:處于active模式;
? ? ???More Data(更多數據域):1:至少還有一個數據幀要發送給STA ;
? ? ???Protected Frame: 1:幀體部分包含被密鑰套處理過的數據;否則:0;
? ? ???Order(序號域):1:長幀分段傳送采用嚴格編號方式;否則:0。
3.1.2?Duration/ID(持續時間/標識)
? ? ?表明該幀和它的確認幀將會占用信道多長時間;對于幀控制域子類型為:Power Save-Poll的幀,該域表示了STA的連接身份(AID, Association Indentification)。
3.1.3?Address(地址域)
? ? ? ?Address(地址域):源地址(SA)、目的地址(DA)、傳輸工作站地址(TA)、接收工作站地址(RA),SA與DA必不可少,后兩個只對跨BSS的通信有用,而目的地址可以為單播地址(Unicast address)、多播地址(Multicast address)、廣播地址(Broadcast address)。
3.1.4?Sequence Control(序列控制域)
? ? ? Sequence Control(序列控制域):由代表MSDU(MAC Server Data Unit)或者MMSDU(MAC Management Server Data Unit)的12位序列號(Sequence Number)和表示MSDU和MMSDU的每一個片段的編號的4位片段號組成(Fragment Number)。
3.2 Frame Body(幀體部分)
? ? 包含信息根據幀的類型有所不同,主要封裝的是上層的數據單元,長度為0~2312個字節,可以推出,802.11幀最大長度為:2346個字節;
3.3 FCS(校驗域)
? ? 包含32位循環冗余碼。
3.4 地址格式
1) 方案一:
? ? ?A和B 在同一個IBSS,A->B (Ad hoc無線自組網中的數據幀的地址格式)。
2) 方案二:
? ? 從AP發出的無線數據幀中的地址格式。
3) 方案三:
? ? 發到AP的無線數據幀中的地址格式。
4) 方案四:
? ? 通過無線分布系統傳輸的無線數據幀中的地址格式。
4. WLAN拓撲結構
? ?WLAN有以下三種網絡拓撲結構:
? ? ?1) 獨立基本服務集(Independent BSS, IBSS)網絡(也叫ad-hoc網絡);
? ? ?2) 基本服務集(Basic Service Set, BSS)網絡;
? ? ?3) 擴展服務集(Extent Service Set, ESS)網絡。
? ? 其各自的特點如下所示:
4.1 IBSS-無AP
也叫Ad Hoc 網(無線自組網):IBSS (Independent BSS,獨立基本服務集),無AP,站點間直接通信。
4.2 BSS-有AP
又名Infrastructured網(基礎設施網):有AP(Access Point, 接入點),無線站點通信首先要經過AP。
4.3 ESS-有AP和DS
? ? ESS:屬 Infrastructured 網 (?DS:分配系統,AP:接入點, SSID:ESS擴展服務集標識符。一個移動節點使用某 ESS 的 SSID 加入到該擴展服務集中,一旦加入ESS,移動節點便可實現從該ESS的一個BSS到另一個BSS的漫游)
5. 802.11幀類型
? ??針對幀的不同功能,可將802.11中的MAC幀細分為以下3類:
? ??? 數據幀:用于在競爭期和非競爭期傳輸數據;
? ??? 控制幀:用于競爭期間的握手通信和正向確認(RTS信道預約、CTS預約成功、ACK等)、結束非競爭期等,為數據幀的發送提供輔助功能;
? ??? 管理幀:主要用于STA與AP之間協商、關系的控制,如關聯、認證、同步等。
? ? ?Frame Control(幀控制域)中的Type(類型域)和Subtype(子類型域)共同指出幀的類型,當Type的B3B2位為00時,該幀為管理幀;為01時,該幀為控制幀;為10時,該幀為數據幀。而Subtype進一步判斷幀類型,如管理幀里頭細分為關聯和認證幀
5.1 管理幀 (Management Frame)
| Type | SubType | FrameType |
| 00 | 0000 | Association request (連接請求) |
| 00 | 0001 | Association response (連接響應) |
| 00 | 0010 | Reassociation request(重連接請求) |
| 00 | 0011 | Reassociation response(重連接聯響應) |
| 00 | 0100 | Probe request(探測請求) |
| 00 | 0101 | Probe response(探測響應) |
| 00 | 1000 | Beacon(信標,被動掃描時AP 發出,notify) |
| 00 | 1001 | ATIM(通知傳輸指示消息) |
| 00 | 1010 | Disassociation(解除連接,notify) |
| 00 | 1011 | Authentication(身份驗證) |
| 00 | 1100 | Deauthentication(解除認證,notify) |
| 00 | 1101~1111 | Reserved(保留,未使用) |
? ? ATIM:Announcement Traffic Indication Message,ATIM僅在ATIM窗口期間傳送,ATIM沒有負載。
5.2 控制幀 (Control Frame)
| Type | Subtype | Frametype |
| 01 | 1010 | Power Save(PS)- Poll(省電-輪詢) |
| 01 | 1011 | RTS(請求發送,即:?Request To Send ,預約信道,幀長20字節) |
| 01 | 1100 | CTS(清除發送,即:Clear To Send ,同意預約,幀長14字節) |
| 01 | 1101 | ACK(確認) |
| 01 | 1110 | CF-End(無競爭周期結束) |
| 01 | 1111 | CF-End(無競爭周期結束)+CF-ACK(無競爭周期確認) |
? ? ?RTS和CTS用于信道預約,CF-End+CF_ACK和ACK用于確認正確接收到幀。
? ? 1) ACK幀
5.3 數據幀 (Data Frame)
| Type | Subtype | Frametype |
| 10 | 0000 | Data(數據) |
| 10 | 0001 | Data+CF-ACK |
| 10 | 0010 | Data+CF-Poll |
| 10 | 0011 | Data+CF-ACK+CF-Poll |
| 10 | 0100 | Null data(無數據:未傳送數據) |
| 10 | 0101 | CF-ACK(未傳送數據) |
| 10 | 0110 | CF-Poll(未傳送數據) |
| 10 | 0111 | Data+CF-ACK+CF-Poll |
| 10 | 1000 | Qos Data |
| 10 | 1001 | Qos Data + CF-ACK |
| 10 | 1010 | Qos Data + CF-Poll |
| 10 | 1011 | Qos Data + CF-ACK+ CF-Poll |
| 10 | 1100 | QoS Null(未傳送數據) |
| 10 | 1101 | QoS CF-ACK(未傳送數據) |
| 10 | 1110 | QoS CF-Poll(未傳送數據) |
| 10 | 1111 | QoS CF-ACK+ CF-Poll(未傳送數據) |
| ? | ? | ? |
總結
以上是生活随笔為你收集整理的802.11协议基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32堆栈区
- 下一篇: wifi网络结构(上)