802.11MAC協(xié)議的簡單分析
IEEE 802.11MAC協(xié)議在一些規(guī)定中有著獨(dú)特的地方。那么我們這里對MAC協(xié)議不再過多描述,主要看一下802.11MAC協(xié)議的一些特點(diǎn)和工作流程。希望大家能從中有所收獲。
802.11MAC協(xié)議定義了5類時序間隔,其中兩類是由物理層決定的基本類型:短幀空間(SIFS)和時隙 (slot time)。其余3類時序間隔則基于以上兩種基本的時序間隔:優(yōu)先級幀間空間(PIFS)、分散幀間空間(DIFS)和擴(kuò)展幀間空間(EIFS)。 SIFS是最短的時序間隔,其次為時隙。時隙可視為MAC協(xié)議操作的時間單元,盡管802.11信道就整體而言并不工作于時隙級時序間隔上。對于 802.11b網(wǎng)絡(luò)(即具有DSSS物理層的網(wǎng)絡(luò)),SIFS和時隙分別為10和20μs。考慮到信號的傳播和處理延遲,通常將時隙選擇為20μs。 PIFS等于SIFS加1個時隙,而DIFS等于SIFS加2個時隙。EIFS比上述4類時序間隔都長得多,通常在當(dāng)收到的數(shù)據(jù)幀出現(xiàn)錯誤時才使用。
802.11MAC協(xié)議支持兩種操作模式:單點(diǎn)協(xié)調(diào)功能(PCF)和分散協(xié)調(diào)功能(DCF)。PCF提供了可避免競爭的接入方式,而DCF則對基于接入的競爭采取帶有沖突避免的載波檢測多路訪問(CSMA/CA)機(jī)制。上述兩種模式可在時間上交替使用,即一個PCF的無競爭周期后緊跟一個DCF的競爭周期。
AP首先將輪詢消息和數(shù)據(jù)(如果存在)發(fā)送至移動站1(用S1表示)。移動站1應(yīng)當(dāng)在SIFS時序間隔內(nèi),立即發(fā)送確認(rèn)消息或數(shù)據(jù)幀(如果數(shù)據(jù)幀存在)至AP。在收到來自移動站1的ACK消息或數(shù)據(jù)后,AP將在SIFS時序間隔內(nèi)輪詢移動站2。在本例中,由于輪詢消息丟失或者移動站不需要發(fā)送數(shù)據(jù)至AP,因此移動站2并未作出響應(yīng)。這種情形中,由于在SIFS截止之前AP未收到來自移動站2的響應(yīng), AP將在PIFS時序間隔內(nèi)繼續(xù)輪詢移動站3。PIFS開始于移動站2最后一條輪詢消息的末尾。
在退避期間,如果在一個時隙中檢測到信道繁忙,那么退避間隔將保持不變,并且只當(dāng)檢測到在DIFS間隔及其下一時隙內(nèi)信道持續(xù)保持空閑,才重新開始減少退避間隔值。當(dāng)退避間隔為0,將再次傳送分組數(shù)據(jù)。退避機(jī)制有助于避免沖突,因?yàn)樾诺揽稍谧罱鼤r刻被檢測為繁忙。更進(jìn)一步,為了避免信道被捕獲,在兩次連續(xù)的新分組數(shù)據(jù)傳送之間,移動站還必須等待一個退避間隔,盡管在DIFS間隔中檢測到信道空閑。
DCF的退避機(jī)制具有指數(shù)特征。對于每次分組傳送,退避時間以時隙為單位(即是時隙的整數(shù)倍),統(tǒng)一地在0至n-1之間進(jìn)行選取,n表示分組數(shù)據(jù)傳送失敗的數(shù)目。在第一次傳送中,n取值為CWmin=32,即所謂的最小競爭窗(minimum contention window)。每次不成功的傳送后,n將加倍,直至達(dá)到最大值CWmax=1024。
對于每個成功接收的分組數(shù)據(jù),802.11規(guī)范要求向接收方發(fā)送ACK消息。而且為了簡化協(xié)議頭,ACK消息將不包含序列號,并可用來確認(rèn)收到了最近發(fā)送的分組數(shù)據(jù)。也就是說,移動站根據(jù)間斷停起(stop-and-go)協(xié)議進(jìn)行數(shù)據(jù)交換。一旦分組數(shù)據(jù)傳送結(jié)束,發(fā)送移動站將在10μs SIFS間隔內(nèi)收到ACK。如果ACK不在指定的ACK_timeout周期內(nèi)到達(dá)發(fā)送移動站,或者檢測到信道上正在傳送不同的分組數(shù)據(jù),最初的傳送將被認(rèn)為是失敗的,并將采用退避機(jī)制進(jìn)行重傳。
除了物理信道檢測,802.11MAC協(xié)議還實(shí)現(xiàn)了網(wǎng)絡(luò)向量分配(NAV),NAV的值向每個移動站指示了信道重新空閑所需的時間。所有的分組數(shù)據(jù)均包含一個持續(xù)時間字段,而且NAV將對傳送的每個分組數(shù)據(jù)的持續(xù)時間字段進(jìn)行更新。因此,NAV實(shí)際上表示了一種虛擬的載波檢測機(jī)制。MAC協(xié)議就采用物理檢測和虛擬檢測的組合以避免沖突。
上面描述的協(xié)議稱為雙向握手機(jī)制,此外,MAC協(xié)議也包含4通(four-way)幀交換協(xié)議。實(shí)際上,4通協(xié)議利用上述競爭過程獲得信道接入之后,要求移動站向AP發(fā)送一個特殊信號:發(fā)送請求(RTS)信號,而不是實(shí)際的數(shù)據(jù)分組包。與此相呼應(yīng),AP將在適當(dāng)?shù)臅r候,在 SIFS間隔內(nèi)發(fā)送清除-發(fā)送(Clear-to-Send, CTS)消息,以通知請求的移動站立即開始分組數(shù)據(jù)傳送。RTS/CTS握手的主要目的是解決所謂的隱藏終端(hidden terminal)問題。