文/周曜 謝銳 周立聘
在校園網(wǎng)中最常見的高密度接入環(huán)境下的Wi-Fi性能問題,一直都是困擾各個高校的問題之一。最常見的問題是部署的AP不少,也有AP用戶分布不均、訪問質(zhì)量無法保證等實際問題。
根據(jù)IEEE 802.11-2016標(biāo)準(zhǔn),Wi-Fi網(wǎng)絡(luò)主要采用了分布式協(xié)作功能(DCF)架構(gòu),通過載波監(jiān)聽/沖突避免(CSMA/CA)機(jī)制在Wi-Fi設(shè)備之間實現(xiàn)自動的媒體共享和訪問控制(MAC)。CSMA/CA專門設(shè)計用來在多個Wi-Fi設(shè)備訪問同一個通信媒體時,降低Wi-Fi設(shè)備之間的沖突可能。根據(jù)CSMA/CA協(xié)議,每一個Wi-Fi設(shè)備(無論是AP還是終端)在發(fā)送數(shù)據(jù)前必須對通信媒體進(jìn)行監(jiān)聽,根據(jù)監(jiān)聽結(jié)果判斷該媒體是否處于Busy狀態(tài)。如果是Busy狀態(tài),則需要繼續(xù)等待;如果是空閑狀態(tài),則需要在一定的幀間隔時間(IFS)后,再等待一個隨機(jī)的退避時間(Backoff Time),當(dāng)退避時間結(jié)束時如果媒體仍然處于空閑狀態(tài),則Wi-Fi設(shè)備獲取到發(fā)送機(jī)會(TXOP),通過通信媒體開始發(fā)送數(shù)據(jù)。根據(jù)不同類型數(shù)據(jù)報文(管理幀、數(shù)據(jù)幀、確認(rèn)幀……)的傳輸要求,802.11定義了幾種不同的幀間隔時間,包括SIFS、PIFS、DIFS和AIFS等。
圖 1 空口連接速率
對于802.11網(wǎng)絡(luò)而言,當(dāng)我們考慮一個物理范圍有限、傳輸條件良好的封閉空間時, Wi-Fi的信號覆蓋足夠,我們通??梢约僭O(shè)每個終端都能獲得足夠好的信噪比,以保證終端的關(guān)聯(lián)速率保持穩(wěn)定。此時,對Wi-Fi網(wǎng)絡(luò)性能影響最大的因素就只有無線信道和空口時間。作為Wi-Fi設(shè)備通信的共享媒體,無線信道可以被認(rèn)為是一個802.11沖突域。所謂802.11沖突域,首先是一個獨立的系統(tǒng)容量單元,在這個沖突域中的所有Wi-Fi設(shè)備共享這個沖突域的系統(tǒng)容量;其次,802.11沖突域與時間和地點相關(guān),兩個相鄰的Wi-Fi設(shè)備如果在不同的時間發(fā)送數(shù)據(jù)并不會產(chǎn)生沖突;最后,802.11沖突域的范圍是動態(tài)變化的,與正在占用信道發(fā)送數(shù)據(jù)的設(shè)備有關(guān)。因此,特定空間范圍內(nèi)使用相同無線信道的無線AP和Wi-Fi終端共享一個沖突域;而相同空間內(nèi)使用不同無線信道的無線AP和Wi-Fi終端則分別共享不同的沖突域。無線信道的增加意味著沖突域的疊加,沖突域的疊加意味著系統(tǒng)性能容量的疊加。
在每一個沖突域中,Wi-Fi設(shè)備對媒體的共享是基于空口時間(即Wi-Fi設(shè)備占用無線信道發(fā)送數(shù)據(jù)的時間)的,所有Wi-Fi設(shè)備必須在信道處于空閑狀態(tài),且等待相應(yīng)的幀間隔時間和退避時間后才能占用信道并發(fā)送數(shù)據(jù)。因此,Wi-Fi設(shè)備占用無線信道時的空口效率,即傳輸一定的數(shù)據(jù)所需消耗的時間,很大程度決定了Wi-Fi網(wǎng)絡(luò)的整體性能。無線信道的空口效率與兩個因素有關(guān):傳輸速率和報文結(jié)構(gòu)。從理論上講,傳輸數(shù)據(jù)所需消耗的時間與傳輸速率成反比。在Wi-Fi環(huán)境下,網(wǎng)絡(luò)中傳輸?shù)膸ü芾韼?、控制幀和?shù)據(jù)幀,Wi-Fi傳輸速率不僅與幀的類型有關(guān),甚至在每一幀的前導(dǎo)部分和負(fù)載部分也有差異。
如圖1所示,802.11數(shù)據(jù)幀實際負(fù)載的傳輸速率就是Wi-Fi設(shè)備的空口連接速率,這個速率通常與Wi-Fi設(shè)備的信噪比有關(guān),隨距離增加而降低;802.11管理幀和控制幀則缺省采用最低速率(6Mbps),已確保能夠被沖突域中所有的終端有效接收,這一速率可以通過系統(tǒng)參數(shù)進(jìn)行調(diào)整到24Mbps,以減少低速率幀對網(wǎng)絡(luò)性能的影響。
圖2抽象地顯示出構(gòu)成相同的802.11管理幀、控制幀和數(shù)據(jù)幀在采用不同的速率時對空口效率的影響。很明顯,第二張圖中由于管理幀和控制幀采用24Mbps速率進(jìn)行發(fā)送,因此每一幀可以消耗更少的空口時間,使無線信道更多地處于空閑狀態(tài),所以可以提升空口效率,達(dá)到性能優(yōu)化的目的。
圖 2 對空口效率的影響
除了傳輸速率,802.11數(shù)據(jù)幀的報文架構(gòu),特別是每個報文平均負(fù)載的大小,也會嚴(yán)重影響Wi-Fi網(wǎng)絡(luò)的傳輸性能。 Wi-Fi網(wǎng)絡(luò)上每一次發(fā)送機(jī)會(TXOP)并非是僅僅發(fā)送某個單一報文,而是由一系列連續(xù)的交互報文構(gòu)成。對于802.11ac標(biāo)準(zhǔn),這些交互報文包括:RTS報文、CTS報文、數(shù)據(jù)報文(A-MPDU)、塊確認(rèn)報文(BA)。其中的情況是:AIFS和CW分別是與不同業(yè)務(wù)QOS相關(guān)的幀間隔和沖突退避時間,存在一定的變化范圍;SIFS是最短幀間隔,其長度固定為16us;RTS、CTS和BA是長度固定的管理幀/控制幀,其幀長度分別為20字節(jié)、14字節(jié)和32字節(jié),并且每一幀都有一個長度為20us的傳統(tǒng)前導(dǎo)幀(Legacy Preamble),根據(jù)802.11標(biāo)準(zhǔn),傳統(tǒng)前導(dǎo)幀的傳輸速率是最低速率(6Mbps),并且不可修改,而這些幀的具體內(nèi)容則可以采用相對稍高的速率進(jìn)行傳輸;A-MPDU中包含了真正的用戶數(shù)據(jù),同時也包含相應(yīng)的傳統(tǒng)前導(dǎo)幀和VHT前導(dǎo)幀,其中前導(dǎo)幀的傳輸速率是固定的6Mbps,用戶數(shù)據(jù)則采用實際連接速率,隨著數(shù)據(jù)報文真實負(fù)載的長度不同,傳輸這部分報文所需的空口時間,以及這部分空口時間在整個發(fā)送機(jī)會(TXOP)中的占比也存在差異。
從圖3可以看出,無論A-MPDU大小如何,每個TXOP中除A-MPDU外的空口開銷都是固定的,傳輸3000字節(jié)報文與90字節(jié)報文相比,其空口效率要高出很多。因此,針對802.11網(wǎng)絡(luò),報文的構(gòu)成從以下兩個方面對網(wǎng)絡(luò)性能產(chǎn)生重大影響:
802.11數(shù)據(jù)幀的負(fù)載越大,用于傳輸真實數(shù)據(jù)負(fù)載的空口時間就越長,相對于整個TXOP中的傳輸開銷,其空口效率就越高;
802.11管理幀和控制幀都是固定長度的短幀,并且傳輸速率相對數(shù)據(jù)幀低很多,因此管理幀和控制幀數(shù)量越少、速率越高,網(wǎng)絡(luò)的空口效率就越高。
圖 3 空口開銷
圖 4 射頻沖突和重傳
圖5 連接速率的自調(diào)
在802.11網(wǎng)絡(luò)中,人們普遍的感受是:當(dāng)一個AP下連接了較多的終端時,這個AP的整體性能以及用戶體驗會快速下降。當(dāng)然,這里有一個隱含條件:這個AP和連在上面的Wi-Fi終端處于一個獨立的沖突域。因此,關(guān)于這個現(xiàn)象更加精確的描述應(yīng)該是:當(dāng)一個沖突域中存在較多的終端時,這個沖突域的整體容量和用戶體驗會快速下降。進(jìn)一步的實驗發(fā)現(xiàn),這個現(xiàn)象的發(fā)生具有一定的普遍性,并且與終端構(gòu)成不具有相關(guān)性。由實驗數(shù)據(jù)可得,如果以只有一個終端時的系統(tǒng)吞吐量作為參照,則無論終端類型為1x1、2x2或者3x3,當(dāng)并發(fā)終端數(shù)量在25個時,系統(tǒng)吞吐量僅下降5%~10%;當(dāng)并發(fā)終端數(shù)量在50個時,系統(tǒng)吞吐量下降大約10%~30%;當(dāng)并發(fā)終端數(shù)量達(dá)到100個時,系統(tǒng)吞吐量下降高達(dá)50%~60%。
從理論上分析,導(dǎo)致這一現(xiàn)象的可能原因有以下四個:
1.射頻沖突和重傳;2.連接速率的自適應(yīng)下調(diào);3.TCP滑動窗口機(jī)制導(dǎo)致;4.MAC層幀構(gòu)成的變化。
然而,通過在不同并發(fā)終端數(shù)量環(huán)境下進(jìn)行的抓包分析,我們可以推斷出:
1.射頻沖突和重傳不是多終端環(huán)境下系統(tǒng)吞吐量下降的主要原因。從圖4中可以看到,隨著并發(fā)終端的增加,射頻重傳比例基本保持穩(wěn)定,并未出現(xiàn)明顯的同步增長,因此并非系統(tǒng)吞吐量下降的主要原因。
2.連接速率的自適應(yīng)下調(diào)也不是系統(tǒng)吞吐量下降的主要原因。從圖5中可以觀察到,由于retry導(dǎo)致Wi-Fi終端自適應(yīng)降低射頻速率的數(shù)量并未明顯增加,因此自適應(yīng)的速率調(diào)節(jié)也不是系統(tǒng)吞吐量下降的可能原因。
3.系統(tǒng)吞吐量下滑與TCP或者UDP沒有關(guān)系。
如圖6所示,通過對比并發(fā)終端數(shù)量變化前后系統(tǒng)的TCP和UDP性能,可以發(fā)現(xiàn)UDP同樣存在近似的性能下滑,因此可以排除TCP窗口機(jī)制導(dǎo)致性能下降的潛在可能。
4.隨著并發(fā)終端的增加,MAC層的幀構(gòu)成發(fā)生了重大變化,這才是導(dǎo)致系統(tǒng)吞吐量下降的主要原因。
如圖7所示,隨著并發(fā)終端數(shù)量從1增加到100,網(wǎng)絡(luò)中的數(shù)據(jù)幀數(shù)量減少了34%,而與此同時,控制幀數(shù)量則增加了3倍,用于喚醒Wi-F i終端的Power Save NDP幀則更是增加了5倍。
圖 7 MAC層幀構(gòu)成
圖 8 802.11幀尺寸
如圖8中802.11幀尺寸的維度進(jìn)行分析,可以看到小于64字節(jié)的幀數(shù)量從32K增長到107K,大約3倍多的比例。根據(jù)前面的研究,報文負(fù)載越小,射頻空口的效率就越低,網(wǎng)絡(luò)吞吐量越差;反之亦然。因此,網(wǎng)絡(luò)中傳輸?shù)亩虉笪臄?shù)量大幅增加嚴(yán)重拉低了系統(tǒng)的吞吐量性能。對控制幀的進(jìn)一步分析發(fā)現(xiàn):
RTS和NDP幀快速增長,由于RTS和NDP都需要DIFS/AIFS和Backoff timer作為沖突避免機(jī)制,因此意味著DIFS/AIFS和Backoff timer的數(shù)量也在同步快速增加;
TXOP數(shù)量快速增長。作為TXOP結(jié)構(gòu)中的主要構(gòu)成,RTS、CTS和BA數(shù)量的增長可以反映出TXOP數(shù)量的增長,TXOP數(shù)量的增長意味著AIFS、DIFS、SIFS和Backoff Timer數(shù)量的增長;
每個TXOP中數(shù)據(jù)幀的占比下降明顯。TXOP在快速增加,然而數(shù)據(jù)幀的數(shù)量卻在顯著下滑,意味著大量的發(fā)送機(jī)會(TXOP)并未用來發(fā)送有用數(shù)據(jù);
隨著終端數(shù)量的增長,由于每個終端都會經(jīng)常進(jìn)入Power Save模式,因此用于喚醒終端的NDP和ACK報文大量增加。
分析結(jié)論:隨著并發(fā)終端數(shù)量的增加,網(wǎng)絡(luò)中的MAC幀構(gòu)成會發(fā)生相當(dāng)大的變化,主要體現(xiàn)在控制幀數(shù)量的增加和數(shù)據(jù)幀數(shù)量的減少。這兩個變化,導(dǎo)致了更多的發(fā)送機(jī)會(TXOP),但是其中真正用于傳輸有用數(shù)據(jù)的卻不多,因此導(dǎo)致了高密度環(huán)境下的Wi-Fi性能快速下降。
根據(jù)前面的分析,高密度多終端接入的性能優(yōu)化可以有針對性地從以下幾個角度進(jìn)行優(yōu)化:
通過合理的信道和功率規(guī)劃,以及網(wǎng)絡(luò)設(shè)備的射頻優(yōu)化功能,降低每個信道的并發(fā)終端數(shù)量;
盡量減少不必要的網(wǎng)絡(luò)發(fā)送,減少TXOP就可以減少與之相關(guān)的幀間隔時間和沖突退避時間,降低802.11性能開銷;
在確??煽總鬏?shù)恼{(diào)節(jié)下,盡量提高管理幀、控制幀和數(shù)據(jù)幀的傳輸速率,降低管理幀/控制幀對空口資源的開銷。
通過這幾方面優(yōu)化過的高密度無線網(wǎng)絡(luò)區(qū)域能大幅度提高用戶使用體驗。
本文對無線網(wǎng)在高密度多終端接入環(huán)境下,對影響Wi-Fi性能的主要因素進(jìn)行了分析與討論,從而總結(jié)出具體的優(yōu)化方向。在無線網(wǎng)絡(luò)覆蓋密度不斷增加的趨勢下,通過這些具體優(yōu)化方向可以對不同多終端接入環(huán)境下的Wi-Fi性能作針對性地優(yōu)化調(diào)整,從而能大幅度提高優(yōu)化區(qū)域Wi-Fi性能,給用戶帶來更好的無線體驗。