STA (工做站)啓動初始化、開始正式使用、AP 傳送數據幀以前,要通過三個階段才能接入:算法
(1) 掃描(SCAN)
(2) 認證(Authentication)
sass
(3) 關聯(Association) 安全
1) 若無線站點 STA 設成 Ad-hoc (無AP)模式:網絡
STA先尋找是否已有 IBSS(與STA所屬相同的SSID)存在,若有,則參加(join);若無, 則會本身建立一個IBSS,等其餘站來 join。 加密
2) 若無線站點 STA 設成 Infrastructure (有AP)模式:spa
--主動掃描方式 (特色:能迅速找到)ci
•依次在每一個信道上發送Probe request報文,從Probe Response中獲取BSS的基本信息, Probe Response包含的信息和Beacon幀相似同步
-- 被動掃描方式 (特色:找到時間較長,但STA節電) it
• 經過偵聽AP按期發送的Beacon幀來發現網絡, Beacon幀中包含該AP所屬的BSS的基本信息以及AP的基本能力級,包括: BSSID(AP的MAC地址)、 SSID、支持的速率、支持的認證方式,加密算法、 Beacons幀發送間隔,使用的信道等io
• 當未發現包含指望的SSID的BSS時,STA能夠工做於IBSS狀態
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) Association
• STA經過Association和一個AP創建關聯,後續的數據報文的收發只能和創建Association關係的AP進行
2) Reassociation
• STA在從一個老的AP移動到新AP時經過Reassociation和新AP創建關聯
• Reassociation前必須經歷Authentication過程
3) Deassociation
• STA經過Deassociation和AP解除關聯關係
• Frame Control(幀控制域)
• Duration/ID(持續時間/標識)
• Address(地址域)
• Sequence 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。
代表該幀和它的確認幀將會佔用信道多長時間;對於幀控制域子類型爲:Power Save-Poll的幀,該域表示了STA的鏈接身份(AID, Association Indentification)。
Address(地址域):源地址(SA)、目的地址(DA)、傳輸工做站地址(TA)、接收工做站地址(RA),SA與DA必不可少,後兩個只對跨 BSS的通訊有用,而目的地址能夠爲單播地址(Unicast address)、多播地址(Multicast address)、廣播地址(Broadcast address)。
Sequence Control(序列控制域):由表明MSDU(MAC Server Data Unit)或者MMSDU(MAC Management Server Data Unit)的12位序列號(Sequence Number)和表示MSDU和MMSDU的每個片斷的編號的4位片斷號組成(Fragment Number)。
包含信息根據幀的類型有所不一樣,主要封裝的是上層的數據單元,長度爲0~2312個字節,能夠推出,802.11幀最大長度爲:2346個字節;
包含32位循環冗餘碼。
1) 方案一:
A和B 在同一個IBSS,A->B (Ad hoc無線自組網中的數據幀的地址格式)。
2) 方案二:
從AP發出的無線數據幀中的地址格式。
3) 方案三:
發到AP的無線數據幀中的地址格式。
4) 方案四:
經過無線分佈系統傳輸的無線數據幀中的地址格式。
WLAN有如下三種網絡拓撲結構:
1) 獨立基本服務集(Independent BSS, IBSS)網絡(也叫ad-hoc網絡);
2) 基本服務集(Basic Service Set, BSS)網絡;
3) 擴展服務集(Extent Service Set, ESS)網絡。
其各自的特色以下所示:
也叫Ad Hoc 網(無線自組網):IBSS (Independent BSS,獨立基本服務集),無AP,站點間直接通訊。
又名Infrastructured網(基礎設施網):有AP(Access Point, 接入點),無線站點通訊首先要通過AP。
ESS:屬 Infrastructured 網 ( DS:分配系統,AP:接入點, SSID:ESS擴展服務集標識符。一個移動節點使用某 ESS 的 SSID 加入到該擴展服務集中,一旦加入ESS,移動節點即可實現從該ESS的一個BSS到另外一個BSS的漫遊)
針對幀的不一樣功能,可將802.11中的MAC幀細分爲如下3類:
• 數據幀:用於在競爭期和非競爭期傳輸數據;
• 控制幀:用於競爭期間的握手通訊和正向確認(RTS信道預定、CTS預定成功、ACK等)、結束非競爭期等,爲數據幀的發送提供輔助功能;
• 管理幀:主要用於STA與AP之間協商、關係的控制,如關聯、認證、同步等。
Frame Control(幀控制域)中的Type(類型域)和Subtype(子類型域)共同指出幀的類型,當Type的B3B2位爲00時,該幀爲管理幀;爲 01時,該幀爲控制幀;爲10時,該幀爲數據幀。而Subtype進一步判斷幀類型,如管理幀裏頭細分爲關聯和認證幀
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沒有負載。
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幀
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(未傳送數據) |