--- title: CH13. IEEE 802.11 Wireless LAN 網路 tags: 區域網路與高速網路 --- ## 區域網路與高速網路 ### CH13. IEEE 802.11 Wireless LAN 網路 ___ ### 與有線網路的差異 1. 無線網路的目的位址(Destination Address)通常不等於目的位置(Destination Location): 2. 無線網路的傳輸媒介會影嚮整体網路的設計: a. 訊號強弱 b. 共享媒介 c. 雜訊干擾 d. 相比於有線網路可靠性低 e. 需要動態拓樸 3. 要有能力處理移動工作站 4. 和其它 IEEE 802 網路層間的關係不同: 將處理移動性工作站及保持資料傳送可靠性的能力全做在網路媒介擷取層 (MAC Layer) --- ### 特性 1. 速率:多重傳輸速率。(0.5 Mbps, 1 Mbps 或 2 Mbps) 2. 訊框:IEEE 802.11 訊框 3. 媒介:無線電 4. 基本通訊協定: CSMA/CA 5. 傳送服務:PCF, DCF 6. 提供認證 (Authentication) 及資料保密 (Privacy) 功能 7. 不適合多媒體資訊傳輸 ___ ### 硬體架構 #### 基本架構: 1. 有基礎架構的無線區域網路 (Infrastructure Wireless LAN) 2. 無基礎架構的無線區域網路 (Ad Hoc Wireless LAN) > Note: > 擷取點 (access points):一種連接節點,用於無線區域網路和現存的有線網路分散系統相連結 #### 硬体元件: > **Wireless Medium (WM)**:無線傳輸媒介,實體層的傳輸媒介。 > **Station (STA)**:工作站,擁有 IEEE 802.11 MAC、PHY 層的介面。 > **Station Services (SS)**:工作站服務,提供送收資料服務。 > **Basic Service Area (BSA)**:Infrastructure Wireless LAN 幾何上的建構區塊 (building block)。 > **Basic Service Set (BSS)**:BSA 中所有 STA 的集合。 > **Distribute System (DS)**:分散式系統,由有線網路所構成將 BSAs 連結起來。 > **Access Point (AP)**:連結 BSS 和 DS 的設備,具 STA 的功能並 DS 能力,通常在一個 BSA 內會有一個 AP。 > **Extended Service Area (ESA)**:數個 BSAs 經由 DS 連結的區域。 > **Extended Service Set (ESS)**:數個 DS 連接 BSS 中的每一 STAs 形成區域。 > **Distribution System Services (DSS)**:DS Service,使資料能在不同 BSSs 間傳送。 <center class="half"> <img src="https://i.imgur.com/HCwfyCM.png" width="50%"/> </center> ___ ### 軟體架構 工作站服務 (Station Services, SS) - 傳送資料的安全性兩種服務: 1. 身份確認服務(Authentication) 2. 隱密性服務(Privacy) 分散式系統服務(Distribution System Services, DSS) - 提供五種服務: 1. 聯結服務(Association) 2. 取消聯結服務(Disassociation) 3. 分送服務(Distribution) 4. 整合服務(Integration) 5. 重聯結服務(Reassociation) <center class="half"> <img src="https://i.imgur.com/90XPoxB.png" width="60%"/> </center> - 分送服務(Distribution):將 DS 資料送到該送到的地方。 >以圖為例,訊框要從STA1 ->STA4 , > - Step 1. frame->STA2 (輸入AP) > - Step 2. 透過「分送服務」STA2->STA3 (輸出AP) > - Step 3. 透過「無線媒介」STA3->STA4 > >Note:IEEE 802.11 並沒有規定傳送方式但要求相關服務的資訊內容,DS 自己決定傳送方式到輸入或輸出AP。 >相關服務內容:「聯結」(Association)、「取消聯結」(Disassociation)及「重聯結」(Reassociation) 。 - 整合服務(Integration):DS和傳統區域網路間傳送。 > 主要工作就是將不同的位址空間。 >IEEE 802.11 對 STA,定義了三種程度的「移動性」: > 1. 無變動:靜止及區域性的移動(STA 只在一個 BSA 內移動)。 > 2. 基本服務區的變動:STA 從 BSA 移動到另一 BSA ,仍在同一個 ESA 內。 > 3. 擴充服務區的變動:STA 從 ESA 內的 BSA 移動到另一 ESA 內的 BSA。 - 聯結服務(Association):STA 和 AP 之間建立一個通訊連線。 > 確保 STA 與 DS 溝通之中,確保中介 AP 的連線關係。 > STA 與 AP 已**類似註冊**的方式做連結。 > Note:STA->AP(one to one), AP->STA(one to N) - 重聯結服務(Reassociation):STA 轉移 AP 時使用 > STA 再 BSA 中轉移,會觸發「重聯結的服務」並對上層的 AP 做連結。 - 取消聯結服務(Disassociation):STA 主動取消連結 > STA 再 BSA 中轉移,除了會觸發「重聯結的服務」亦會對原 AP 發送「取消聯結服務」 > 此功能由 STA 或 AP 發送不得拒絕,AP 會因網路負荷而取消連結。 - 身份確認服務(Authentication):識別 STA 身分 IEEE 802.11 支援一種叫做「盤問/回應」(Challenge/Response,C/R) 的身份確認方法 > C/R 身份確認的方法主要有下列三個步驟: > 1. 聲明身份 (Assertion of Identity) > 2. 盤問聲明 (Challenge of Assertion) > 3. 回應盤問 (Response to Challenge) > 實例: |聲明 (Assertion)|盤問 (Challenge)|回應 (Response)|結果 (Result)| |---|---|---|---| |我是STA4|証明你的身份|這是我的密碼|如果密碼 OK ,工作站就完成身份確認| - 隱密性服務 (Privacy):避免傳送資料被竊聽 與有線網路差異在於傳輸媒介,無線網路以空氣為媒介。任意 STA 都會收到他人資料,因此主要功能是提供「隱密性服務」的演算法 (privacy algorithm) Note:「隱密性服務」的演算法 (privacy algorithm)屬於 STA 服務 ___ #### 訊框格式 (此簡述特殊重點) - TO DS 與 From DS組合與意義 <center class="half"> <img src="https://i.imgur.com/fV7zIrL.png" width="70%"/> </center> - Duration /ID 欄位意義 <center class="half"> <img src="https://i.imgur.com/59zZQN6.png" width="70%"/> </center> 補充訊框整理 ___ #### 認證與保密 認證 (Authentication) 的目的是確認對方身分的合法性,IEEE 802.11 提供兩種認證的服務: - 開放系統式 (Open System) - 共享密匙式 (Shared Key) #### 開放系統式認證 (Open System) 一種不須認證演算法的認證方法,共兩步驟: 1. 認證者聲明自己的身份 (Identity assertion) 並且送出認證訊框 (Authentication frame) 要求認證 2. 被要求認證者回送一個認證訊框其中記錄認證結果 Note:認證訊框都不經過加密處理 (WEP = OFF)。 <center class="half"> <img src="https://i.imgur.com/JHllbca.png" width="50%"/> </center> #### 共享密匙式 (Shared Key) 共享密匙式認證是假設有一群工作站擁有共同的密匙 (Shared Key)。 <center class="half"> <img src="https://i.imgur.com/iFpQFP1.png" width="45%"/> <img src="https://i.imgur.com/IF6iYx8.png" width="45%"/> </center> 認證包含四個認證步驟: | 步驟|1|2|3|4| |---|---|---|---|---| |發送者|要求認證者|被要求認證者|要求認證者|被要求認證者| |目的|聲明身份</br>(Identity assertion)|檢查認證方法相同</br>生成驗證明文|加密明文</br>驗證密鑰 (Shared Key)|解密密文</br>驗證密鑰 (Shared Key)| |方式|Header</br>SA欄位(Station ID)|WEP 演算法生成盤問全文</br>(Challenge text, 128 bytes)</br>回送給要求認證者</br>目的:檢驗對方的密匙(內容不重要)|盤問全文拷貝</br>至認證訊框回送|將密文用共享密匙解密| |WAP||OFF|ON|OFF| |訊框格式|a|b|c|d| ___ #### 有線等效保密演算法 (Wired Equivalent Privacy Algorithm, WEP) - 特色 - 抗竊聽性強:允許變更鑰匙及頻繁變更加密時的初始向量 (Initialization Vector, IV)。 - 具自我同步功能:鏈結層 (data-link level) 的加密演算法而言,是相當具關鍵性。 - 效率佳:可以用硬體或軟體的技術來製作。 - 出口爭議性:主要以美國出口。 - 選項功能 : WEP 是一種選項配備,802.11 設備不一定需要具備WEP。 - 運作原理 <table> <tr><td> |符號|說明| |---|---| |P|原文 plaintext| |C|密文 ciphertext| |Ek|加密函式| |Dk|解密函式| </td><td> |加密|解密| |---|---| |![](https://i.imgur.com/xoD7h6D.png)|![](https://i.imgur.com/YYlKL1D.png)| </td></tr> </table> <center> <img src="https://i.imgur.com/9xkUZZ2.png" width="80%"/> </center> ___ #### MAC 通訊協定 - IEEE 802.11 MAC 二種擷取方法: - 分散協調式功能 (Distributed Coordination Function, DCF) - 集中協調式功能 (Point Coordination Function, PCF) ##### 分散協調式功能 (Distributed Coordination Function, DCF) CSMA/CA 是利用載波感測技術,以一個基準點為界若信號大於基準點代表頻寬位被佔用。當頻寬被佔用就需要使用延緩 (defer) 訊框傳送時間直到頻寬空閒,延遲時間又稱為「訊框間隔」(Inter-Frame Space, IFS)。 IEEE 802.11 又將訊框分為三種不同的優先權等級:SIFS < PIFS < DIFS < EIFS - SIFS (Short IFS);短訊框間隔。 > SIFS等級:要求傳送訊框 (RTS)、允許傳送訊框 (CTS)、回覆訊框 (ACK)。 - PIFS(PCF IFS);PCF 訊框間隔。 > PCF 免競爭式傳輸功能時,工作站傳送訊框等待時間。 - DIFS(DCF IFS); DCF 訊框間隔。 > DCF 競爭式傳輸功能時,工作站傳送訊框等待時間。 - EIFS (Extended IFS) : 延長訊框間隔。 > 工作站重送訊框等待時間。 ![](https://i.imgur.com/DsaZgNs.png) CSMA/CD:訊框傳送->監聽衝撞->碰撞中斷->中斷並延遲->載波感測 CSMA/CA:載波感測->(忙碌:延遲/空閒:傳送) 無線網路中CSMA/CA較為合適,因為無線網路碰撞難以偵測。 #### RTS & CTS 要求傳送(Request to Send,RTS), SIFS 訊框間隔後立刻回送另一種「允許傳送」控制訊框 (Clear to Send,CTS)。只有成功收到 CTS 才會開始傳送資料,大大降低碰撞機率。而阻止其他工作站傳送資料是靠 RTS/CTS 訊框中有持續時間(duration)的欄位,並配置到自己的網路配置向量(NAV)。 - 使用限制 :訊框參數 RTSThreshold (訊框長度>= RTSThreshold)才使用 RTS/CTS 機制。 - 隱憂 > Note:NAV > IEEE 802.11 利用「虛擬載波偵測」(Virtual Carrier Sense),虛擬波偵測利用「網路配置向量」(Net Allocation Vector,NAV),記載其他工作站還需要多久的時間來傳送訊框,工作站根据這些資訊能知道傳輸媒介現在是否忙碌。 <center> <img src="https://i.imgur.com/7e779Rp.png" width="40%"/> </center> <center> <img src="https://i.imgur.com/CfqFnPj.png" width="80%"/> </center> - 不使用 RTS/CTS 的傳輸,其他工作站需要使用 DCF 的規則爭取傳送權 <center> <img src="https://i.imgur.com/EJ67BkN.png" width="80%"/> </center> - 隱藏工作站 (hidden terminals) STA X,STA Y因為距離互不知道存在,但都可與AP通訊當 X 送 RTS , AP 回覆 CTS 會帶有持續時間則 Y 聽到 CTS 會設置 NAV 值可避免無法監聽到對方而造成衝撞。 <center> <img src="https://i.imgur.com/hv1pDVS.png" width="50%"/> </center> - 不藉助 RTS/CTS 訊框而直接傳送片段 (fragments) 的方式 - 方法:利用較短的 SIFS 間隔(只會在第一次傳送有碰撞可能) - 特點:其他工作站依照 DCF 爭取傳送權須等待 DIFS 間隔,( SIFS < DIFS), 其他工作站沒有機會在片段傳送的過程中奪取傳送權。 ![](https://i.imgur.com/zMK4rd7.png) - NAV 計算 ![](https://i.imgur.com/VMdwgku.png) - 封包遺失 收到 RTS, CTS, ACK 摻生之 NAV,沒收到新的 NAV 就會直接進入 back off 後競爭傳輸權。 ![](https://i.imgur.com/Qrs33uj.png) - 競爭視窗 (Contention Window, CW) & 後退時間(backoff time) 進入競爭視窗 CW 時,參與 STA 會產生一個後退時間(backoff time)來爭取傳送權。 > Note:backoff time 相同便會發生碰撞 ![](https://i.imgur.com/YckzaPm.png) <center> <img src="https://i.imgur.com/LsK82c9.png" width="50%"/> </center> <center> <img src="https://i.imgur.com/v1ZqDLZ.png" width="45%"/> <img src="https://i.imgur.com/USUcciE.png" width="45%"/> </center> ##### 集中協調式功能 (Point Coordination Function, PCF) - 特點:支援「免競爭」的服務,傳送時限性的訊框。 - 需要**『集中協調者』(Point Coordinator)**通常是 AP,不強迫加入輪詢 - 元件 1. 可輪詢工作站(CF_Pollable):參與被協調的工作站,或具有被輪詢能力的工作站。 2. 非輪詢工作站(Non CF-Pollable):未參與被輪詢的工作站。 3. 無競爭輪詢(Contention Free Poll, CF-Poll)訊框:集中協調者用以輪流詢問參與協調的工作站是否有資料要傳送。 - 傳送規定: 1. 當被協調者詢問時,須在 SIFS 時間,回應有無資料要傳送。 2. CF-Pollable 在 PCF週期 可以傳送訊框,可傳送對象為全體;Non CF-Pollable 只能接收 4. PCF週期 可以攜帶 ACK,回覆前一筆由協調者傳送的訊框。 5. 沒有收到ACK,不可以立即重送,要等到下一次被 PCF 機制詢問或 CDF競爭週期才可重送。 6. 如果是 CF_Pollable -> Non CF-Pollable, 則 Non CF-Pollable 要依照 DCF 規定運作(等 SIFS 後回應 ACK)。 7. PCF 週期中,不需使用 RTS/CTS 。 8. PCF 週期中發生的碰撞,不採用 DCF 的 Backoff,要等下一次 PCF 週期或 DCF 機制。 - 無競爭週期的時序 - 起始:協調者傳送 攜帶 DTIM 元件的 Beacon 訊框 > 訊框中帶有持續的時間欄位(CFPDurRemaining),其他工作站會以 CFPDurRemaining 生成 NAV - 終止:協調者傳送 CF-End、CF-End+ACK 訊框 > CF_End 將 NAV 設定為零,並進入CDF。 > 協調者依週期時間(CFPMaxDuration)發送 Beacon > Note:超級訊框(Superframe)= 免競爭週期 + 競爭週期 > 若某些因素使上一個超級訊框延遲,則在下一個超級訊框內會減少PCF週期,固定完整的週期。 ![](https://i.imgur.com/JyXLK3E.png) - PCF 基本運作程序 1. Data:協調者->STA,該工作站不是剛好被輪詢到的(或是非可輪詢工作站),而且協調者沒有未回覆訊息。 2. Data+CF_ACK:協調者->STA,STA不是剛好被輪詢到的,協調者回覆確認訊框給STA。 3. Data+CF_Poll:協調者->STA,詢問有無資料傳送。 4. Data+CF_ACK+CF_Poll:協調者->STA,回覆確認訊息,並詢問有無資料傳送。 5. CF_Poll:協調者(依照輪詢名單)->STA,詢問 STA 有無資料傳送。 6. CF_ACK+CF_Poll:協調者詢問STA,並送出回覆訊框。 7. CF_ACK:協調者僅送出回覆訊框。 ![](https://i.imgur.com/BfZ1kgL.png) - 輪詢名單的建立與維護 - 建立方法: - STA ->協調者(AP) 建立通訊連線(Association)同時表明是否願意加入被輪詢名單。 - STA 欲退出輪詢名單, 需要重新連線(Reassociation)來表明退出。 - 缺點:省電狀態 STA,輪詢會被叫醒但不加入就只能再 CDF 週期才能傳送資料。 - 避免名單過長或順序問題 - 依據訊務(Traffic)流量的分佈情形,或QOS,創立輪詢優先次序,或給某些 STA 較多次傳輸,如部分涉及協調者排程演算法。規範沒有制定標準演算法。 ___ #### 電源管理 STA 依電源管理模 ( 啟動模式 (Active Mode)、省電模式 (Power Save Mode, PS Mode) )。更改模式以訊框控制欄位的電源管理位元 (Power Management bit) 來通知協調者。 - 要送訊框給 PS Mode STA 時,不可以隨時傳送。 - 協調者有訊務指示對照表 (Traffic Indication Map, TIM),傳送 Beacon 訊框時都會將此對照表放入其中。 - PS Mode STA 定時的起來接收 Beacon 訊框(時間間隔由 aListenInterval 參數定義)。 - STA 取得 TIM 後可自行研判其是否有訊框儲存在協調者 - TIM 則是以虛擬位元對照表 (Virtual Bitmap) 的方式記錄(第 i 個位元等於 1 表示 SIDi 有訊框儲存在協調者中,0是廣播)。 - 訊務指示對照表 (TIM) 又可分為兩類:TIM 及 DTIM。 正常放TIM, 但每隔一個aDTIMPeriod時間,就放入DTIM。協調者在 DTIM 後必須先傳送廣播或群播訊框才能傳送各別訊框。圖中 DTIM = 3 Beacon 訊框間隔。 (Note: SID2 為超低功率狀態,不醒來接收所有的 DTIM 元件。) 協調者每隔一段 Beacon 間隔(TBTT)就送 Beacon,第一時間 SID1 收到了,接下來TIM、DTIM 都會延遲直到收到為止。 ![](https://i.imgur.com/KDx7I22.png)