802.11--802.11g协议
一. 概述
時間到了2003年,IEEE發布了802.11g標準,從這個標準開始有了熟悉的感覺,這是一個更為接近我們日常使用的協議,本文則主要簡要梳理一下11g協議的部分內容。
市場對速度、價格的追求是無止境的,雖然再此之前,已經有了802.11a協議,但受制于當時的硬件技術水平,5G設備的成本相較2.4G來說偏高,2.4G設備更實惠,但是速度跟不上,于是兩者結合的協議產生了–802.11g,代號為ERP。
Note:實際的情況并不是只使用11a的OFDM,還有PBCC,經過多年的發展之后,OFDM成為了主流,它們之間的愛恨情仇筆者沒有過多的了解。
二. 專業術語
本小節對一些專業術語進行一個簡要的說明,如下:
1. DSSS-OFDM:PHYs using DSSS-OFDM modulation ;
2. ERP:Extended Rate PHY;
3. ERP-PBCC:PHYs using extended rate PBCC modulation;
4. ERP-CCK:PHYs using CCK modulation;
5. ERP-DSSS:PHYs using DSSS modulation ;
6. ERP-DSSS/CCK:PHYs using DSSS or CCK modulation;
7. ERP-OFDM:PHYs using OFDM modulation;
8. EVM:error vector magnitude;
三. PHY層
802.11g協議的主要改進集中在物理層技術,為了跟已有的2.4G協議保持兼容,802.11g的PHY有4種模式:ERP-DSSS/CCK、ERP-OFDM、ERP-DSSS-OFDM、ERP-PBCC,本文主要針對前3中進行簡要的描述,ERP-PBCC就不在本文展開敘述了。
Note:其實11g延伸出來的這么多種PHY,就是11b的DSSS和11a的OFDM各種組合,形成的新PHY格式;
1. ERP-DSSS/CCK
這也稱為單載波模式,這種格式并未引入OFDM,使用的就是11b原有的格式,如下所示:
可以看到,這個格式跟HR/DSSS的格式完全一樣,從這個角度來看,802.11g協議好像在該種模式下啥也沒有做,實際上PLCP Header/SERVICE有一點不一樣,bit5~bit6被使用了,如下所示:
2. ERP-OFDM
這其實就是802.11a運行在2.4G上,也是802.11g的核心模式,大多情況下,使用802.11g協議,就是使用的這個模式,它的結構如下圖所示:
Note:在802.11g協議開始,Preamble包括:STF、LTF,到了802.11n協議,Preamble包括:STF、LTF、Signal;
3. ERP-DSSS-OFDM
這種模式也被稱為DSSS-OFDM、CCK-OFDM,它是前兩種模式的結合,目的是為了兼容802.11b和802.11a的PHY,它的格式如下所示:
這里再引用一下《802.11無線網絡權威指南-第2板》的截圖,會 更加直觀一些:
1) 可以看到,這種模式下就是將DSSS和OFDM的PHY拼接起來,形成一種新的PHY頭,但注意:并沒有使用OFDM的STF,因為STF的功能可以通過DSSS的Preamble來完成,所以就沒必要重復了;
2) 對于802.11b的設備而言:看到DSSS的PLCP Preamble和PLCP Header后,可以正常解析,此時它應該主動退避,退避的時間在PLCP Header中的Length字段,單位:us,后面的內容它就無能為力了;
3) 對于802.11g的設備而言:
a) 它必須支持DSSS,否則沒法實現幀同步,粗頻率同步之類的功能;
b) 11g所支持的DSSS,短幀格式是必須支持的(這個在11b中是可選的),否則沒法識別那些支持短幀的節點;
4) DSSS PLCP Header/SIGNAL字段:固定為0x1E,表示后面的速率為3Mbps,對于802.11b的設備來說,這是一個不支持的速率,無法把后面的MPDU解析出來,以此確保802.11b設備在這個幀的周期間保持靜默;
Note:這里筆者有個小疑惑:接收方是如何確定后面DSSS PLCP Header后面的是LTF還是數據呢,是通過這個DSSS PLCP Header/SIGNAL中3M的速率,還是通過DSSS PLCP Header/SERVICE字段確定的,暫時并未發現明確的說明;
5) DSSS-OFDM signal extension:6us長,具體作用未詳細了解,權威指南提到給OFDM解碼充足的時間,應該是OFDM兼容11b所需要的;
這種模式下,設備需要不停的在DSSS、OFDM之間做切換,而且怎么看效率都不太好,這大概就是兼容的代價。
4. 信道評估CS/CCA
802.11g不支持載波監聽,只支持能量檢測(可能是為了簡化實現):如果檢測到能量大于-76dBm,則標記信道為忙碌狀態;
Note:如果11g需要做載波監聽,至少需要支持3種Preamble:DSSS的Short Preamble、Long Preamble,OFDM的STF,才能將全部幀識別出來;
5. ACK使用的調制方式是根據接收到的數據幀類型來的,如果接收的數據采用CCK/Barker,那么ACK也采用CCK/Barker進行回復,如果數據是OFDM(包括ERP-OFDM、ERP-DSSS-OFDM),那么ACK也是OFDM的;
6. slot time:包括兩個,分別為DSSS的20us,以及OFMD的9us(可選),只有在11g only的情況下才能使用9us的slot time,其他情況均使用20us的slot time;
7. 其余PHY特性參數:
四. MAC層
802.11g的mac層并沒有多少改動,簡單的處理一下,主要包括如下:
1. 幀格式
1) 控制幀:CTS,用這個幀來進行保護傳輸:802.11g的設備可以通過CTS to self來告知802.11b的設備,我準備發送數據了,不使用完整RTS/CTS流程的原因是,CTS to self具有更高的效率;
2) 管理幀:beacon、probe、assoc等幀中,增加了兩個IE:ERP Information(Element ID:42)、Extended Supported Rates(Element ID:50),其中Extended Supported Rates是在支持的速率數量大于8個時候使用,否則是一個可選字段;
2. 引入CTS進行NAV的聲明;
3. 保護模式
主要是針對ERP-OFDM模式,因為ERP-DSSS/CCK、ERP-DSSS-OFDM以DSSS PHY開頭,并不需要保護,ERP-OFDM模式需要保護是因為802.11b的設備無法確定是否有人在以ERP-OFDM模式發送數據,為了防止自己發送數據過程中被干擾,所以需要進行虛擬載波監聽進行保護:
1) 如果當前bss中沒有802.11b的設備,則可以不需要進行保護;
2) 否則,ap需要再beacon幀中廣播出來,所有使用ERP-OFDM模式的節點在發包時就需要使用CTS進行保護了;
Note:這里筆者有個小疑惑,802.11b的設備不是有能量檢測嘛,為何會檢測不出來,難道是802.11b的能量檢測是可選的?后續確認清楚后再補充。
五. 參考資料
1. 《IEEE 802.11g-2003》;
2. 《IEEE 802.11-2007》;
3. 《802.11無線網絡權威指南-第2板》;
4. 《802.11物理層和發射機測量概述》;
5. https://zhuanlan.zhihu.com/p/126983722;
總結
以上是生活随笔為你收集整理的802.11--802.11g协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: simditor图标不显示
- 下一篇: 网易云歌词居中滚动、点击/滑动进度条对应