邢毓華,余紅慶
(西安理工大學(xué) 自動(dòng)化與信息工程學(xué)院,陜西 西安 710048 )
?
共享WiFi系統(tǒng)中MAC層快速切換方案的研究與實(shí)現(xiàn)
邢毓華,余紅慶
(西安理工大學(xué) 自動(dòng)化與信息工程學(xué)院,陜西 西安 710048 )
基于IEEE 802.11協(xié)議的無(wú)線局域網(wǎng)(WLAN)能夠?yàn)闊o(wú)線多媒體應(yīng)用提供足夠的帶寬,由于無(wú)線接入點(diǎn)AP(Access Point)發(fā)射功率受限,其服務(wù)覆蓋范圍也因此受限,這使得終端在移動(dòng)過(guò)程中需要在不同AP之間頻繁地切換,由此帶來(lái)的時(shí)延嚴(yán)重影響了無(wú)線多媒體應(yīng)用的服務(wù)質(zhì)量。因此,提出一種基于信道掩碼和優(yōu)先級(jí)的選擇掃描策略和選擇性鄰居圖緩存算法,增大了命中緩存的概率,減少了掃描的信道數(shù)量和系統(tǒng)信令開(kāi)銷(xiāo)。仿真結(jié)果表明,該切換方案可以有效降低移動(dòng)節(jié)點(diǎn)MN(Mobile Node)在共享WiFi(Wireless Fidelity)系統(tǒng)中不同AP間的切換時(shí)延,滿足了無(wú)線多媒體業(yè)務(wù)(如VoIP)的傳輸要求。
無(wú)線局域網(wǎng);切換時(shí)延;選擇性鄰居圖
目前主流的無(wú)線通信接入技術(shù)中,基于IEEE 802.11的WiFi技術(shù)因其覆蓋范圍廣、傳輸速率快、架設(shè)簡(jiǎn)便而成為事實(shí)上的近距離無(wú)線通信的通用標(biāo)準(zhǔn)。為了便于用戶隨時(shí)隨地訪問(wèn)網(wǎng)絡(luò)和無(wú)縫漫游,本文提出了一種通過(guò)共享無(wú)線AP來(lái)組建共享WiFi系統(tǒng)的構(gòu)思,進(jìn)而解決MN在移動(dòng)管理方面出現(xiàn)的切換延時(shí)問(wèn)題。
圖1描述了基于IEEE 802.11協(xié)議的WLAN中WiFi移動(dòng)切換的一般結(jié)構(gòu),該網(wǎng)絡(luò)由移動(dòng)節(jié)點(diǎn)MN、無(wú)線接入點(diǎn)AP和分配系統(tǒng)(Distribution System,DS)組成。MN可以在不同的AP射頻區(qū)域之間移動(dòng),每個(gè)AP及其關(guān)聯(lián)的MN形成基本服務(wù)集(Basic Service Set,BSS),BSS覆蓋范圍約為100~400 m,要滿足更大覆蓋范圍的要求則需要將AP通過(guò)DS(包括路由器、交換機(jī)等設(shè)備)連接形成擴(kuò)展服務(wù)集(Extended Service Set,ESS)。雖然WiFi網(wǎng)絡(luò)能夠提供足夠高的帶寬,實(shí)際使用場(chǎng)景下AP服務(wù)范圍的限制會(huì)決定MN將在不同AP之間頻繁切換。有研究[1]表明AP間的切換時(shí)延可達(dá)到幾百毫秒,這無(wú)法滿足實(shí)時(shí)多媒體應(yīng)用的性能要求,因此如何降低切換延時(shí)是移動(dòng)端切換管理的熱點(diǎn)研究方向。
圖1 WLAN中移動(dòng)切換的典型體系結(jié)構(gòu)
在WLAN中,MN的移動(dòng)形式有兩種:鏈路層移動(dòng)和網(wǎng)絡(luò)層移動(dòng)。前者只會(huì)改變MN的MAC地址,網(wǎng)絡(luò)前綴不變;后者會(huì)導(dǎo)致MAC地址和網(wǎng)絡(luò)前綴都發(fā)生變化。而無(wú)線AP又分為Fit AP和Fat AP,前者一般是運(yùn)營(yíng)商搭建的AP,功能相對(duì)單一,一般只能配合無(wú)線控制器使用,后者是用戶自己搭建的AP,它將WLAN的數(shù)據(jù)加密、用戶認(rèn)證、漫游、服務(wù)質(zhì)量等應(yīng)用層功能集于一體。本方案中主要探討MN在同一個(gè)路由器下的不同F(xiàn)at AP之間的鏈路層移動(dòng)的軟切換延時(shí)問(wèn)題。
在總結(jié)前人研究成果[2-4]的基礎(chǔ)之上,本文根據(jù)實(shí)際的共享WiFi場(chǎng)景對(duì)信道掃描過(guò)程進(jìn)行優(yōu)化,通過(guò)信道掩碼和優(yōu)先級(jí)相結(jié)合的策略可有效減少掃描信道數(shù),在此基礎(chǔ)上提出一種選擇性鄰居圖緩存算法,并對(duì)接收信號(hào)強(qiáng)度、用戶負(fù)載和歷史接入數(shù)據(jù)進(jìn)行加權(quán)后,過(guò)濾掉一些鄰居信息,把精簡(jiǎn)的鄰居圖信息緩存到MN,一旦緩存命中,即可進(jìn)入認(rèn)證和重關(guān)聯(lián)環(huán)節(jié),明顯降低MAC層切換的時(shí)延。
無(wú)線局域網(wǎng)中WiFi網(wǎng)絡(luò)的切換是指移動(dòng)端MN從當(dāng)前AP的射頻覆蓋范圍內(nèi)離開(kāi)并進(jìn)入另一個(gè)AP服務(wù)區(qū)域的過(guò)程,即MN先斷開(kāi)與舊AP的連接,再與新AP建立連接。此次過(guò)程包含了終端與所連接過(guò)AP之間的一系列掃描、認(rèn)證和重關(guān)聯(lián)等信息的交換。目前IEEE802.11標(biāo)準(zhǔn)主要還是采用這種硬切換方式,而在一次硬切換過(guò)程中,除了MN與AP之間會(huì)交換相關(guān)管理信息外,在這期間的數(shù)據(jù)通信將被中斷,這個(gè)中斷時(shí)間就是切換時(shí)延。
IEEE 802.11中規(guī)定了兩種掃描方式:
(1) 被動(dòng)掃描:AP定期廣播一個(gè)信標(biāo)幀,MN監(jiān)聽(tīng)每個(gè)信道上的信標(biāo)幀,通過(guò)信標(biāo)幀來(lái)發(fā)現(xiàn)AP,并由信標(biāo)幀的信息(如RSSI)決定切換AP,由于在每個(gè)信道上需要停留至少一個(gè)信標(biāo)幀間隔時(shí)間,被動(dòng)掃描時(shí)間為
Tscan=nTBeaconInterval+nTChannelSwitchTime
(1)
信標(biāo)幀間隔時(shí)間TBeaconInterval默認(rèn)為100 ms,在全掃描信道的情況下(n=13)需要花費(fèi)至少1 300 ms的時(shí)間完成整個(gè)過(guò)程,顯然該模式不適合實(shí)時(shí)性要求較高的無(wú)線多媒體業(yè)務(wù)(ITU-T的G.114建議VoIP等實(shí)時(shí)語(yǔ)音業(yè)務(wù)單向時(shí)延在150 ms以內(nèi))。
(2) 主動(dòng)掃描:MN廣播一個(gè)探測(cè)Probe幀,位于這個(gè)MN無(wú)線信號(hào)服務(wù)范圍內(nèi)的任一個(gè)AP都會(huì)回應(yīng)一個(gè)探尋Response幀,以此來(lái)獲取當(dāng)前可用的APs。整個(gè)探測(cè)時(shí)間和掃描時(shí)間分別為
nTMinChannelTime≤Tprobe≤nTMaxChannelTime
(2)
Tscan=Tprobe+nTChannelSwitchTime
(3)
最小信道駐留時(shí)間TMinChannelTime取值一般為1~7 ms,最大信道駐留時(shí)間TMaxChannelTime的取值一般是11~20 ms, 信道切換時(shí)間TChannelSwitchTime一般為5 ms,當(dāng)TMinChannelTime取5 ms,TMaxChannelTime取11 ms時(shí),Tprobe取值在65~143 ms之間。整個(gè)主動(dòng)掃描耗時(shí)Tscan為T(mén)probe與n個(gè)信道跳轉(zhuǎn)時(shí)間TChannelSwitchTime之和,約為100 ms~250 ms。相比之下被動(dòng)掃描的切換時(shí)延更大,本系統(tǒng)中決定使用主動(dòng)掃描方式。MN歷經(jīng)掃描、認(rèn)證和重關(guān)聯(lián)這三個(gè)階段之后即完成了MAC層切換,而掃描時(shí)延占據(jù)整個(gè)切換延時(shí)的絕大部分,因此國(guó)內(nèi)外學(xué)者一直致力于解決如何有效降低該部分的時(shí)延。
2.1 掃描階段
當(dāng)RSSI降低時(shí),MN進(jìn)入掃描狀態(tài)并廣播一個(gè)探測(cè)Probe幀,搜尋可用APs。若在MN歷時(shí)TMinChannelTime后沒(méi)有收到其他AP的應(yīng)答幀,則切換下一個(gè)信道來(lái)掃描;反之,等待其他應(yīng)答消息,直到TMaxChannelTime,掃描下一個(gè)信道,直到所有信道被掃描完為止。這個(gè)階段的時(shí)延約占整個(gè)MAC層切換時(shí)延的90%[1]。
2.2 認(rèn)證階段
掃描搜尋AP結(jié)束后,MN根據(jù)算法從列表中選擇一個(gè)最優(yōu)的AP進(jìn)行切換,隨后進(jìn)入認(rèn)證環(huán)節(jié)。MN會(huì)發(fā)送相關(guān)認(rèn)證請(qǐng)求幀給新的AP,新AP將信息上交給后臺(tái)服務(wù)器處理之后再將認(rèn)證結(jié)果返回。該階段消耗的時(shí)間為認(rèn)證時(shí)延,可忽略不計(jì)。
2.3 重關(guān)聯(lián)階段
MN經(jīng)過(guò)認(rèn)證以后就進(jìn)入重關(guān)聯(lián)階段。先由MN發(fā)送重關(guān)聯(lián)請(qǐng)求幀到新AP,新AP收到此幀后與舊AP使用IAPP協(xié)議交換MN的狀態(tài)信息,然后向MN發(fā)送重關(guān)聯(lián)響應(yīng)幀。該階段時(shí)延為重關(guān)聯(lián)時(shí)延,受IAPP協(xié)議的影響很大。
3.1 減少掃描信道數(shù)
由上節(jié)對(duì)MAC層切換機(jī)制的分析可知,減少掃描時(shí)延將會(huì)有效改善MAC層切換性能。由式(2)、式(3)可知,當(dāng)信道切換時(shí)間忽略不計(jì)時(shí),決定掃描時(shí)延的關(guān)鍵因素是掃描信道數(shù)和信道駐留時(shí)間。根據(jù)802.11b工作頻段的信道劃分特征,本文提出了一種基于信道掩碼和優(yōu)先級(jí)相結(jié)合的選擇掃描信道方案,其步驟如下:
(1) MN準(zhǔn)備接入WLAN時(shí),搜索所有可能的信道,并對(duì)當(dāng)前接入的信道和收到掃描響應(yīng)幀的AP的信道標(biāo)志位置1,其余為0;
(2) 當(dāng)MN移動(dòng)觸發(fā)掃描門(mén)限時(shí),先掃描工作頻段中1、6、11三個(gè)優(yōu)先級(jí)高的子信道,并把新掃描到的AP所在信道的標(biāo)志位置1,離開(kāi)MN服務(wù)區(qū)域的AP則清零;
(3) 當(dāng)在這3個(gè)指定信道中沒(méi)有發(fā)現(xiàn)可用AP時(shí),再掃描其他標(biāo)志位為1的信道;
(4) 若仍沒(méi)有掃描到可用AP,就使用全信道掃描策略掃描所有信道。
經(jīng)驗(yàn)證,該方案中信道掩碼和信道優(yōu)先級(jí)相結(jié)合的策略能明顯地減少掃描過(guò)程中的信道數(shù),從搜尋結(jié)果中剔除掉沒(méi)有AP布置的信道,的確降低了切換過(guò)程第一個(gè)階段的時(shí)延,但僅僅依賴信道選擇性掃描算法仍不能明顯改善MN的切換性能。
3.2 鄰居圖緩存算法
共享WiFi系統(tǒng)中通過(guò)多個(gè)Fat AP的簡(jiǎn)單拓?fù)淠M一般用戶使用的場(chǎng)景,其射頻區(qū)域總是有相互重疊的部分,系統(tǒng)中搭建一個(gè)后臺(tái)服務(wù)器,用于管理控制整個(gè)切換過(guò)程。具體方案如下:
(1) 系統(tǒng)中每個(gè)自建AP加入時(shí),都會(huì)上傳信息到認(rèn)證服務(wù)器上,包括:AP的MAC地址、發(fā)射功率、工作的信道、所在BSS的ID、IP地址以及其射頻覆蓋半徑R,當(dāng)MN通過(guò)Android客戶端軟件接入該AP后,會(huì)把BSSID、接收信號(hào)強(qiáng)度RSSI、MAC地址和IP地址上傳給后臺(tái)服務(wù)器,同時(shí)也會(huì)把MN的定位信息等效為AP的位置信息進(jìn)行上傳。
(2) 通過(guò)上傳的位置信息及覆蓋半徑,服務(wù)器可以生成系統(tǒng)的所有AP區(qū)域圖,共有AP1~AP7。服務(wù)器根據(jù)區(qū)域圖計(jì)算每一個(gè)關(guān)聯(lián)AP的鄰居圖,任意兩個(gè)有重疊覆蓋區(qū)域的AP就是鄰居,再根據(jù)AP的局域圖得到當(dāng)前連接AP1的鄰居圖(AP4因?yàn)榕cAP1沒(méi)有重疊區(qū)域而被剔除,如圖2所示)。
圖2 AP鄰居圖
(3) 服務(wù)器根據(jù)MN上傳的信息,綜合信號(hào)強(qiáng)度RSSI、用戶負(fù)載UL和歷史切換數(shù)據(jù)N計(jì)算鄰居信息的權(quán)重W(λ,η,θ),并從大到小進(jìn)行排序,同時(shí)設(shè)置閾值δ,權(quán)重值小于δ的鄰居將被移除鄰居圖,AP5、AP6和AP7的接入權(quán)重小于閾值δ就不必掃描,MN只將選擇后的鄰居圖信息(鄰居AP的BSSID、所使用的信道等)保存在本地緩存中,即AP1、AP2和AP3。
(4) 當(dāng)MN移動(dòng)而觸發(fā)切換時(shí),MN會(huì)從緩存在本地的鄰居圖中得到當(dāng)前AP的周?chē)従有畔ⅰ4藭r(shí)MN根據(jù)這些鄰居的信道掩碼進(jìn)行選擇性掃描,接入到新的AP。
(5) 接入新AP后MN將接入信息傳給后臺(tái),服務(wù)器重新計(jì)算鄰居信息權(quán)重,MN再次獲得服務(wù)器返回的新AP的鄰居信息,該信息依然保存到本地,替代原有的鄰居信息。下一次MN再觸發(fā)時(shí)會(huì)依據(jù)新緩存的信息來(lái)掃描和切換。
由于選擇性鄰居圖緩存算法是在選擇性信道掃描算法的基礎(chǔ)上,根據(jù)鄰居的信息權(quán)重又做了一次優(yōu)化,這樣可以保證MN在移動(dòng)切換時(shí)的低信令開(kāi)銷(xiāo)和低切換延時(shí)。
4.1 系統(tǒng)設(shè)計(jì)
本文WiFi共享系統(tǒng)基于C/S模式由移動(dòng)終端MN、無(wú)線接入點(diǎn)APs和服務(wù)器三部分構(gòu)成。MN客戶端軟件基于安卓平臺(tái)開(kāi)發(fā),開(kāi)發(fā)環(huán)境為Eclipse,主要完成上傳信息、信道掃描和AP切換連接等功能;服務(wù)器端搭建在Tomcat上,數(shù)據(jù)庫(kù)采用MySQL,主要完成預(yù)認(rèn)證、信道標(biāo)識(shí)、鄰居圖選擇優(yōu)化、下發(fā)連接消息等功能。
Android在無(wú)線網(wǎng)絡(luò)管理和控制方面直接使用了開(kāi)源的wpa_supplicant,所有Framework層中與WiFi相關(guān)的操作都由wpa_supplicant實(shí)現(xiàn)。wpa_supplicant是一個(gè)工作站對(duì)無(wú)線網(wǎng)絡(luò)進(jìn)行管理和控制的開(kāi)源軟件項(xiàng)目[5],完全支持WPA和WPA2,包括PMKSA緩存、預(yù)認(rèn)證等功能。WiFi接入點(diǎn)的相關(guān)信息在MN注冊(cè)時(shí)會(huì)上傳給服務(wù)器,服務(wù)器根據(jù)上述信息將通過(guò)算法優(yōu)化后的最終鄰居圖列表緩存到MN本地,MN掃描找到最優(yōu)AP并完成接入。
4.2 系統(tǒng)測(cè)試
(1) 移動(dòng)節(jié)點(diǎn)MN登錄客戶端并連接AP,打開(kāi)PC啟動(dòng)Wireshark實(shí)時(shí)過(guò)濾并抓包;
(2) 移動(dòng)節(jié)點(diǎn)MN開(kāi)啟實(shí)時(shí)性應(yīng)用(如視頻聊天)進(jìn)行通信,并從當(dāng)前AP向鄰居AP緩慢移動(dòng)進(jìn)行切換,MN緩存處理后的鄰居圖信息;
(3) 在新舊AP切換前后對(duì)Wireshark的抓包記錄進(jìn)行數(shù)據(jù)中斷分析,通過(guò)多次統(tǒng)計(jì)新AP上第一個(gè)包到達(dá)時(shí)間減去舊AP上最后一個(gè)包發(fā)出時(shí)間,切換時(shí)延可控制在50 ms以內(nèi)。
隨著無(wú)線網(wǎng)絡(luò)和多媒體實(shí)時(shí)應(yīng)用的快速發(fā)展,如何解決在共享WiFi系統(tǒng)中MAC切換的時(shí)延問(wèn)題具有重要的應(yīng)用價(jià)值?;谏鲜鲂枨蟊疚姆治隽饲袚Q的機(jī)制和時(shí)延的成因,提出的信道掃描策略和選擇性鄰居圖緩存算法,減少了掃描信道數(shù)和系統(tǒng)信令開(kāi)銷(xiāo),增大了命中緩存的概率,有效縮短了切換時(shí)延,對(duì)實(shí)時(shí)應(yīng)用的服務(wù)質(zhì)量有明顯提升;但由于目前實(shí)驗(yàn)的條件限制,沒(méi)有考慮到復(fù)雜業(yè)務(wù)、高網(wǎng)絡(luò)負(fù)荷等情況,故還需進(jìn)一步研究。
[1] MISHRA A,SHIN M,ARBAUGH W. An empirical analysis of the IEEE802.11 MAC layer handoff process[J]. ACM Computer Communications Review, 2003, 33(2):93-102.
[2] MUSTAFA N, MAHMOOD W, CHAUDHRY A A, et al. Pre-scanning and dynamic caching for fast handoff at MAC layer in IEEE 802.11 wireless LANs[C]. MASS 2005 Workshop, 2005: 7-10.
[3] 王忠峰,董雯霞,陳慶春,等.一種減小IEEE 802.11b WLANs中MAC層切換時(shí)延的方法[C]. 第十二屆全國(guó)青年通信學(xué)術(shù)會(huì)議, 2007:783-788.
[4] SHIN M, MISHRA A, ARBAUGH W. Improving the latency of 802.11 handoffs using neighbor graphs[C]. Proceedings of ACM Mobile Systems, 2004:70-83.
[5] 鄧凡平. 深入理解Android-WiFi、NFC、GPS卷[M]. 北京:機(jī)械工業(yè)出版社,2014.
Research and implementation of the MAC layer fast handoff scheme in sharing WiFi system
Xing Yuhua, Yu Hongqing
(Faculty of Automation and Information Engineering, Xi'an University of Technology, Xi’an 710048, China)
Wireless local area network (WLAN) based on IEEE 802.11 protocols can provide sufficient bandwidth for wireless multimedia applications, since the AP transmit power is limited, its service coverage also limited, which makes the terminal switch frequently between different APs, and the latency of handoff which is caused by the mobility of the MN affects the quality of service of wireless multimedia applications. Therefore, in this paper we propose the selective scan strategy and selective neighbor graph caching algorithm based on the channel mask and switching priority to increase the probability of hitting the cache and reduce the number of channels and system signaling overhead scanning. The simulation results indicate that the handoff mechanism can effectively reduce the handoff latency of mobile node between different APs in Sharing WiFi Platform, and meet the wireless multimedia services (such as VoIP) transmission requirements.
WLAN; handoff latency; selective neighbor graph
TP393.1
A
10.19358/j.issn.1674- 7720.2017.13.005
邢毓華,余紅慶.共享WiFi系統(tǒng)中MAC層快速切換方案的研究與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2017,36(13):13-15,18.
2017-02-07)
邢毓華(1966-),男,碩士,副教授,主要研究方向:物聯(lián)網(wǎng)通信技術(shù)和分布式光伏發(fā)電系統(tǒng)理論與技術(shù)。
余紅慶(1988-),男,碩士研究生,主要研究方向:物聯(lián)網(wǎng)通信技術(shù)和WiFi切換研究。