第二章 相關背景
2.2 基礎架構下的省電模式
一般的工作站在省電模式下有下列四種狀態:休眠、傳送、接收以及監 聽,工作站處於這四種狀態的消耗模式不同,其耗電情況在休眠狀態時約為 60 mW,傳送、接收與監聽則分別為 1400mW、950 mW 與 805 mW,很清楚的,
如果讓網路卡處於休眠狀態,可以節省不少電源的消耗。
2.2.1 點對點傳送之省電模式運作
所謂省電模式是指當工作站沒有資料傳送時,就通知擷取點他要進入休眠 狀態,此時工作站送出一個 Null Data 的訊框,將控制欄中的電源管理位元設為 1,擷取點收到後會回應 ACK,確認工作站進入休眠狀態,並暫存要給該工作 站的資料,如果有擷取點有暫存資料要傳送給工作站,會在工作站的 AID 所對 應的位元,在信標訊框的 TIM 欄位上做註記,工作站只要檢驗 TIM 上對應的位 元即可。
擷取點在省電模式時,除了需要暫存工作站的資料,還要並要通知工作站 是否有暫存資料,所以一般而言,工作站在做連結
程序前,會設定聆聽區間(Listen Interval),告訴擷 取點工作站進入休眠狀態後,每隔幾個信標區間的 時間會醒來聽信標訊框,因此擷取點至少要幫工作 站暫存聆聽區間所需的時間。當工作站查追查信標 訊框的 TIM 欄位時,如果發現擷取點在上面做註記 時,表示有暫存資料存放在擷取點上,工作站便會 發出 PS-Poll 訊框給擷取點,擷取點便會回暫存資 料給工作站,工作站收到之後會回 ACK 給擷取 點,其運作過程如圖 2.3.
每一個工作 PS-Poll 可向擷取點取回一個訊框的資料,如果擷取點尚有資 料要給工作站,則在訊框中的 ”尚有資料位元”的欄位設 1,工作站便會知道還 有暫存資料要收,此時工作站可再發送 PS-Poll 訊框取回另一筆資料。
從圖 2.4 可以瞭解 PS-mode 的整個運作流程
圖 2.4 暫存訊框擷取程序
圖 2.3 PS-Poll 的運作流程
從上圖可知工作站 A 的聆聽時間為 2,工作站 B 為 3,當兩個工作站都進 入休眠模式時,假設工作站 B 在第 1 個信標區間醒來監聽信標訊框的 TIM,由 於沒有資料要給工作站 B,所以又進入睡眠模式,直到又過 3 個信標區間時間 時,才會再度醒來。工作站 A 在第 2 個信標區間醒來,發現對應的 TIM 位元有 被註記,於是工作站 A 發送 PS-Poll 給擷取點,取回暫存的資料訊框,當資料傳 送完畢後,又進入休眠狀態。第 3 個信標區間時,兩者都在休眠,並在第 4 個 信標區間時同時醒來,此時兩者發現相對應的 TIM 位元有被註記,於是根據 CSMA/CA 機制競爭發送 PS-Poll 去取回資料,假設工作站 A 先搶到發送 PS-Poll 去取回資料,工作站 B 便一直醒著,直到第 5 個信標區間前段,聽到信標訊框 並發現對應的 TIM 已無註記,此時工作站又可進入休眠狀態。
2.2.2 廣播及群播傳送之省電模式
在訊框不是只給單一工作站,而是指名給所有工作站或是一群工作站,其 目的地的位址,為單一的群組位域或廣播位址,因此再擷取點若有廣播訊框或 群播訊框,會暫存這些訊框在 AID 邊為 0 的暫存區上,也就是在 TIM 的欄位 中,將對應 AID 編號為 0 的位元,即 TIM 欄位的第 1 個位元設定為 1。
因為廣播或群播都是傳送給一群工作站,所以在休眠的工作站一定要在特 定的時間清醒,監聽是否有廣播或群播要給他,因此在每一個基本服務組內,
設有一被稱為傳送 TIM(DTIM)週期。DTIM 週期為數個信標區間,類似聆聽週 期,如圖 2.5 所示,1 個 DTIM 週期為 3 個信標訊框,在 DTIM 區間起頭時,擷 取點傳送的信標訊框被稱為 DTIM 信標訊框,如果有廣播或群播訊框暫存時,
擷取點會在 DTIM 信標之後,將訊框依序傳出,因此工作站必須在 DTIM 信標 時醒來,監聽 DTIM 的的第 1 位元是否有被設定,若有責工作站等著接收廣播 或群播的訊框,若沒有被設定,則工作站可以繼續進入休眠狀態,若是一個工 作站聽到一個一般的信標訊框,可以從信標的欄位為取 DTIM 的週期為何,以 及還經過多少個 TIM 後,就是 DTIM 的信標訊框。
圖 2.5 DTIM 時的廣播與群播傳送運作
從圖 2.5 中,工作站在第 1 個信標訊框醒來,從 DTIM 的信標中,獲知 TIM 第 1 個位元沒被註記,所以再度進入休眠狀態,並從信標中得知 DTIM 週期為 3,所以會在第 4 個信標時間的時候,醒來聽 DTIM 訊框,當發覺有廣播或群播 的訊框要傳送時,擷取點依照 DCF 的存取方式,將廣播或群播依序傳送出來。
另一個問題是聆聽區間,要是工作站 A 的聆聽區間與 DTIM 區間相同時,
則可以把聆聽區間與 DTIM 區間對齊,如此在工作站醒來時,可以同時聽 DTIM 的欄位,看看是否有廣播或群播的訊框以及是否有暫存資料需要接收。由於擷 取點會先處理廣播或群播訊框,所以工作站發出的 PS-Poll 可能得不到回應,此 外為了省電的緣故,有可能將網卡設定為忽略 DTIM 訊框,即在休眠狀態下就 不接收廣播或群播的訊框。