專利名稱:基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法
技術(shù)領(lǐng)域:
本發(fā)明屬于通信領(lǐng)域,具體涉及一種基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法。
背景技術(shù):
Wi-Fi (又稱802. lib),是一種無(wú)線通訊技術(shù),工作在2. 4GHz的 ISM(IndustrialScientific Medical)步頁(yè) 段, 米 用 DSSS (Direct Sequence Spread Spectrum)擴(kuò)頻技術(shù),能提供最高IlMbps的速率,有效距離達(dá)100m,具有速度快,通訊范圍 大,成本低等特點(diǎn)。Wi-Fi因其高帶寬,低成本的優(yōu)勢(shì),目前已成為無(wú)線通訊的主流,大部分 的移動(dòng)設(shè)備都配備了 Wi-Fi接口。然而,Wi-Fi也存在功耗大的缺陷。研究數(shù)據(jù)表明,移動(dòng)設(shè)備超過(guò)50%的耗電量 都來(lái)自于Wi-Fi接口,因而移動(dòng)設(shè)備將不足以支持長(zhǎng)時(shí)間的Wi-Fi通訊,這極大地阻礙了 Wi-Fi在移動(dòng)設(shè)備中的進(jìn)一步推廣和應(yīng)用。因此,如何有效降低Wi-Fi接口的耗電量成為一 個(gè)亟待解決的問(wèn)題。根據(jù)802. Ilb協(xié)議,Wi-Fi的啟動(dòng)過(guò)程主要包括四個(gè)階段掃描(kan),關(guān)聯(lián) (Association),驗(yàn)證(Authentication),地址配置(DHCP),其中掃描階段的持續(xù)時(shí)間最 長(zhǎng),耗電量最大,若能減少掃描階段的電量消耗,就能有效地降低Wi-Fi接口的耗電量。目前,研究者已提出一些方案,以有效降低Wi-Fi掃描階段的耗電量,其中一 種主要的方案就是利用移動(dòng)設(shè)備配備的其他低功耗網(wǎng)絡(luò)接口(Bluetooth,GPRS),如 Footprint, Blue-Fi等。Footprint利用設(shè)備從蜂窩網(wǎng)絡(luò)中獲得的相關(guān)數(shù)據(jù),如監(jiān)聽到的 蜂窩塔的ID,信號(hào)強(qiáng)度等,來(lái)推測(cè)設(shè)備當(dāng)前的位置,只有當(dāng)設(shè)備的位置發(fā)生較大的改變時(shí)才 啟動(dòng)Wi-Fi掃描以獲得周圍可用的接入點(diǎn)(Access Point, AP)信息,通過(guò)減少不必要的掃 描次數(shù)來(lái)降低耗電量。Blue-Fi利用周圍藍(lán)牙節(jié)點(diǎn)及蜂窩信號(hào)的相關(guān)信息,例如藍(lán)牙節(jié)點(diǎn) 的ID,蜂窩塔ID等,來(lái)判斷當(dāng)前是否有可用的Wi-Fi網(wǎng)絡(luò),只有在存在Wi-Fi網(wǎng)絡(luò)時(shí)才啟動(dòng) Wi-Fi掃描并連接到相關(guān)AP。Footprint與Blue-Fi都是利用其他鏈路獲取的信息以預(yù)測(cè) 當(dāng)前Wi-Fi網(wǎng)絡(luò)的狀態(tài),以減少不必要的Wi-Fi掃描與連接,從而節(jié)省電量,但存在預(yù)測(cè)不 準(zhǔn)確的問(wèn)題。上述幾種方案,大都使用GPRS和藍(lán)牙作為輔助鏈路,然而GPRS存在準(zhǔn)確度低的問(wèn) 題,不能很好地用于Wi-Fi網(wǎng)絡(luò)的預(yù)測(cè),藍(lán)牙也存在通訊距離短,節(jié)點(diǎn)發(fā)現(xiàn)時(shí)間長(zhǎng)等限制, 因此上述幾種方案都不能很有效地解決Wi-Fi接口功耗大的問(wèn)題,且實(shí)現(xiàn)起來(lái)都較為復(fù)
ο
發(fā)明內(nèi)容
本發(fā)明針對(duì)Wi-Fi接口功耗大的問(wèn)題,以及現(xiàn)有方案中存在的一些不足,提出一 種基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,移動(dòng)設(shè)備之間利用高效的消息廣播機(jī)制通 過(guò)ZigBee接口共享AP信息,并利用AP信息直接連接到相關(guān)AP而無(wú)需事先掃描AP。此外,可使設(shè)備能夠根據(jù)獲取的AP信息,利用有效地AP選擇機(jī)制選取當(dāng)前最佳AP連接。本發(fā)明一種基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,采用ZigBee作為通訊 鏈路,包括以下步驟步驟1 初始化建立本地Wi-Fi接入點(diǎn)AP列表,然后啟動(dòng)ZigBee接口接收數(shù)據(jù),并 啟動(dòng)兩個(gè)定時(shí)器Timer-u及Timer-s ;所述的AP列表記錄了所有本地保存的AP記錄APRec, 所述的AP記錄的結(jié)構(gòu)為APRec<APhfo,count, lifetime〉,其中,lifetime表示該AP記錄 的生存時(shí)間,count表示在一個(gè)發(fā)送周期內(nèi)重復(fù)收到相同AP信息的次數(shù),APhfo指連接AP 所必須的信息。步驟2 判斷ZigBee接口是否收到數(shù)據(jù),若是,轉(zhuǎn)步驟3 ;若不是,轉(zhuǎn)步驟4。步驟3 從ZigBee接口接收的數(shù)據(jù)包中提取AP信息,記為RecAP,隨后掃描本地AP 列表,針對(duì)每個(gè)AP記錄,查看其無(wú)線網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí)wlan_SSid是否與RecAP的相同,若 相同,則將該AP記錄的count及l(fā)ifetime的值重置為0 ;若不存在無(wú)線網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí) wlan_ssid與RecAP的wlan_ssid相同的AP記錄,則新建一條AP記錄,將新建的AP記錄的 APInfo賦值為RecAP,count與lifetime的值初始為0。步驟4 判斷定時(shí)器Timer-u是否超時(shí),若是,轉(zhuǎn)步驟5 ;若不是,轉(zhuǎn)步驟6。步驟5 遍歷整個(gè)AP列表,檢查每個(gè)AP記錄的lifetime值,若超過(guò)特定閾值,則 刪除該條AP記錄。步驟6 判斷定時(shí)器Timer-s是否超時(shí),若是,轉(zhuǎn)步驟7 ;若不是,轉(zhuǎn)步驟8。步驟7 遍歷整個(gè)AP列表,選取AP信息通過(guò)ZigBee接口廣播出去。步驟8 判斷是否有連接請(qǐng)求,若有連接請(qǐng)求,轉(zhuǎn)步驟9 ;若無(wú)連接請(qǐng)求,轉(zhuǎn)步驟10。步驟9 檢查本地AP列表中是否存有AP記錄,若有,則選擇當(dāng)前最佳AP連接,若 無(wú),則開啟Wi-Fi接口,啟動(dòng)Wi-Fi掃描并連接到AP。步驟10 判斷用戶是否發(fā)出結(jié)束命令,若是,結(jié)束本方法;若不是,轉(zhuǎn)步驟2執(zhí)行。本發(fā)明一種新型節(jié)能的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法的優(yōu)點(diǎn)與積極效果在于(1)采用低功耗ZigBee鏈路作為輔助鏈路實(shí)現(xiàn)AP信息的共享,相比于傳統(tǒng)方案使 用藍(lán)牙或GPRS更能有效降低Wi-Fi接口的耗電量。(2)充分利用移動(dòng)設(shè)備之間的相互協(xié)作,使得信息更加準(zhǔn)確,更易于實(shí)現(xiàn)高效信息(3)提出一種有效的基于連接時(shí)間與信號(hào)強(qiáng)度的AP選擇策略,相對(duì)于傳統(tǒng)的只依 據(jù)信號(hào)強(qiáng)度的方案更加高效,能有效選擇當(dāng)前最佳AP接入,更能有效提高用戶使用無(wú)線網(wǎng) 絡(luò)的體驗(yàn)。
圖1為本發(fā)明的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法的應(yīng)用場(chǎng)景示意圖;圖2為本發(fā)明的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法的整體步驟流程圖;圖3為本發(fā)明的Wi-Fi接入點(diǎn)發(fā)現(xiàn)方法同普通Wi-Fi掃描方法的功耗對(duì)比示意 圖;圖4為本發(fā)明中AP選擇基于連接時(shí)間的性能分析結(jié)果示意圖;圖5為本發(fā)明中AP選擇基于信號(hào)強(qiáng)度的性能分析結(jié)果示意圖6為本發(fā)明中選擇性AP信息廣播策略同普通洪泛策略的數(shù)據(jù)發(fā)送量對(duì)比圖。
具體實(shí)施例方式下面將結(jié)合附圖和實(shí)例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。近幾年來(lái),隨著移動(dòng)終端設(shè)備的普及及無(wú)線通訊技術(shù)的發(fā)展,越來(lái)越多的用戶使 用移動(dòng)設(shè)備訪問(wèn)網(wǎng)絡(luò),其中Wi-Fi (802. 11)是最主流的無(wú)線網(wǎng)絡(luò),幾乎所有的移動(dòng)設(shè)備都 配備了 Wi-Fi接口,用戶大多使用Wi-Fi上網(wǎng)。通常情況下,用戶欲獲取Wi-Fi連接,需事先 啟動(dòng)Wi-Fi掃描周圍AP,然后選取特定AP連接。然而Wi-Fi掃描往往持續(xù)時(shí)間較長(zhǎng)(3-5 秒)且耗電量大,且通常很多掃描都是無(wú)用的,尤其對(duì)于周圍沒(méi)有部署Wi-Fi AP的情況。 ZigBee是一種近距離、低復(fù)雜度、低功耗、低響應(yīng)延遲、低成本的雙向無(wú)線通信技術(shù),主要適 用于自動(dòng)控制、傳感、監(jiān)控和遠(yuǎn)程控制等領(lǐng)域,可以嵌入各種設(shè)備中,同時(shí)支持地理定位功 能。本發(fā)明提出的一種基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,移動(dòng)設(shè)備之間利用低 功耗的ZigBee鏈路共享AP信息,設(shè)備利用AP信息可以直接連接到相關(guān)AP而無(wú)需事先掃 描,大大減少了 Wi-Fi掃描的次數(shù),從而有效降低Wi-Fi接口的耗電量。本發(fā)明提出的基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)及選擇方法,其應(yīng)用場(chǎng)景是部署有 多個(gè)AP且有多個(gè)移動(dòng)設(shè)備的區(qū)域,如圖1所示。下面結(jié)合圖1,通過(guò)一個(gè)簡(jiǎn)單的例子說(shuō)明協(xié) 同AP發(fā)現(xiàn)的流程。圖1描述了一個(gè)部署有三個(gè)AP的區(qū)域R,圖中三條虛線分別表示每個(gè) AP的覆蓋范圍。區(qū)域R被這三條曲線劃分成七個(gè)子區(qū)域區(qū)域1-區(qū)域7。假設(shè)初始時(shí),區(qū) 域R中沒(méi)有任何移動(dòng)設(shè)備,一段時(shí)間后1)設(shè)備A首先進(jìn)入?yún)^(qū)域1并請(qǐng)求網(wǎng)絡(luò)連接。設(shè)備A 首先檢查本地?cái)?shù)據(jù)庫(kù)是否存有可用的AP信息,若沒(méi)有,則設(shè)備A啟動(dòng)Wi-Fi掃描周圍的可 用AP并將獲得APl的信息;設(shè)備A隨后連接到AP1,保存APl的信息至本地,并通過(guò)ZigBee 鏈路周期性地廣播APl的信息。2)隨后,設(shè)備B與設(shè)備C分別進(jìn)入?yún)^(qū)域2和區(qū)域6。同設(shè) 備A —樣,當(dāng)有連接請(qǐng)求時(shí),設(shè)備B與設(shè)備C首先檢查本地?cái)?shù)據(jù)庫(kù)是否存有可用的AP信息。 在此場(chǎng)景下,本發(fā)明方法中的AP信息可靠性保證機(jī)制將會(huì)保證設(shè)備B與設(shè)備C不會(huì)收到 APl的信息,因此,設(shè)備B與設(shè)備C啟動(dòng)Wi-Fi掃描并分別連接到AP2及AP3,隨后周期性地 廣播AP2及AP3的信息。3)幾分鐘后,設(shè)備D進(jìn)入?yún)^(qū)域1。若設(shè)備D處于設(shè)備A的通訊范 圍之內(nèi),則設(shè)備D將收到APl的信息。設(shè)備D將APl的信息保存在本地,并依照本發(fā)明方法 中選擇性AP信息廣播策略選取滿足條件的AP信息廣播。當(dāng)有連接請(qǐng)求時(shí),設(shè)備D可以直 接連接到APl而無(wú)需事先掃描。若設(shè)備D沒(méi)有收到APl的信息,則設(shè)備D啟動(dòng)Wi-Fi掃描 搜索可用AP,顯然,隨著區(qū)域1中設(shè)備數(shù)目的增加,設(shè)備B收到APl信息的概率也隨之增大。 4)處于區(qū)域3,區(qū)域4,區(qū)域5,區(qū)域6及區(qū)域7中的移動(dòng)設(shè)備將收到多個(gè)AP的信息。當(dāng)有 連接請(qǐng)求時(shí),設(shè)備將根據(jù)本發(fā)明方法中AP選擇方法選擇最佳AP連接。從上述例子可以看 出,在一個(gè)部署有多個(gè)AP的區(qū)域中,只需要少數(shù)幾臺(tái)設(shè)備啟動(dòng)Wi-Fi掃描獲取周圍AP的信 息并通過(guò)ZigBee接口共享這些AP信息,經(jīng)過(guò)一段時(shí)間的消息擴(kuò)散之后,區(qū)域中的其他設(shè)備 都可以利用AP信息直接連接到AP而無(wú)需事先掃描,從而可以大大減少Wi-Fi掃描的次數(shù), 降低Wi-Fi接口的耗電量。本發(fā)明提出的基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其流程如圖2所示, 具體包括如下步驟步驟一初始化本地AP列表(APList),隨后啟動(dòng)ZigBee接口接收數(shù)據(jù)并啟動(dòng)兩個(gè)定時(shí)器Timer-u及Timer-s。所述的初始化即為建立APList,APlist是所有保存的AP 記錄(APRec)的列表,APRec 的格式如下 APRec {APhfο,count,lifetime},其中,lifetime 表示該APRec的生存時(shí)間;count表示在一個(gè)發(fā)送周期內(nèi)重復(fù)收到相同AP信息的次數(shù),所 述的發(fā)送周期是指定時(shí)器Timer-s的超時(shí)時(shí)間間隔;APhfo指連接AP所必須的信息,其格 式為APInfo {wlan_ssid, wlan_name, wlan_type, signal_strength, ipv4_type, wlan_ security, wlan_hidden, connecting_time},其中,wlan_ssid 表示無(wú)線網(wǎng)絡(luò)的月艮務(wù)集標(biāo)識(shí) (Service Set Identification) ;wlan_name 表示無(wú)線網(wǎng)絡(luò)的名稱;wlan_type 表示無(wú)線網(wǎng) 絡(luò)的類型;signalstrength表示無(wú)線網(wǎng)絡(luò)信號(hào)強(qiáng)度;Wlan_seCurity表示無(wú)線網(wǎng)絡(luò)的安全 性設(shè)置;wlanjiidden標(biāo)識(shí)網(wǎng)絡(luò)是否隱藏;cormectingjime表示連接網(wǎng)絡(luò)所需時(shí)間。定時(shí) 器Timer-u用于周期性地更新AP列表并檢查AP記錄的有效性,根據(jù)實(shí)驗(yàn)分析結(jié)果,其周期 超時(shí)時(shí)間間隔設(shè)為ls,定時(shí)器Timer-s用于周期性地廣播本地保存的AP信息以實(shí)現(xiàn)AP信 息的共享,根據(jù)實(shí)驗(yàn)分析結(jié)果,其超時(shí)時(shí)間間隔設(shè)為3s。步驟二 判斷ZigBee接口是否收到數(shù)據(jù),若是,轉(zhuǎn)步驟三;若不是,轉(zhuǎn)步驟四。步驟三當(dāng)ZigBee接口收到數(shù)據(jù)后,從接收的數(shù)據(jù)包中提取AP信息,記為RecAP, 掃描本地APList,對(duì)每個(gè)APRec,查看其APhfo的wlan_ssid值是否與RecAP的相同,若相 同,則將該APRec的count值及l(fā)ifetime重置為O。若不存在wlan_ssid值與RecAP相同 的APRec,則新建一條APRec,將其APhfo賦值為RecAP,count值及l(fā)ifetime初始為O。步驟四、判斷定時(shí)器Timer-u是否超時(shí),若是,轉(zhuǎn)步驟五;若不是,轉(zhuǎn)步驟六。步驟五當(dāng)定時(shí)器Timer-u超時(shí)時(shí),更新AP列表,遍歷整個(gè)更新AP列表,檢查每個(gè) APRec的lifetime值,若超過(guò)特定閾值,則刪除該條APRec,從而保證AP信息的可靠性與有 效性。根據(jù)實(shí)驗(yàn)分析結(jié)果,所述的特定閾值設(shè)為6。AP信息的可靠性與有效性是整個(gè)算法的核心,步驟二與步驟三通過(guò)動(dòng)態(tài)地更新 AP列表并檢測(cè)AP信息有效性以保證AP信息的有效性與可靠性。下面對(duì)本發(fā)明方法保證 AP信息的有效性與可靠性做進(jìn)一步地說(shuō)明AP信息的可靠性與有效性是指設(shè)備能夠利用該AP信息成功連接到相應(yīng)AP。本 發(fā)明的方法主要從兩個(gè)方面來(lái)保證AP信息的可靠性與有效性首先,對(duì)于設(shè)備收到的任何 一條AP信息,均能在區(qū)域中找到一臺(tái)連接到該AP的設(shè)備——這是由AP信息的共享機(jī)制決 定的,任何一條AP信息都是由最先連接到這個(gè)AP的設(shè)備產(chǎn)生的,然后通過(guò)其他設(shè)備轉(zhuǎn)發(fā) 來(lái)在整個(gè)區(qū)域中傳播,從而保證了 AP信息的可靠性;另一方面,通過(guò)記錄AP信息的生存期 lifetime及周期性的檢測(cè)AP列表及時(shí)刪除失效的AP信息,從而保證AP信息的有效性。步驟六、判斷定時(shí)器Timer-s是否超時(shí),若是,轉(zhuǎn)步驟七;若不是,轉(zhuǎn)步驟八。步驟七當(dāng)定時(shí)器Timer-s超時(shí)時(shí),遍歷整個(gè)AP列表,按照本發(fā)明提出的選擇性 AP信息廣播機(jī)制選取滿足條件的AP信息通過(guò)ZigBee接口廣播出去以有效實(shí)現(xiàn)AP信息的為有效實(shí)現(xiàn)AP信息共享,本發(fā)明提出選擇性AP信息廣播機(jī)制,在保證AP信息擴(kuò) 散濃度的同時(shí)進(jìn)一步降低系統(tǒng)的開銷,減少耗電量。其具體步驟如下當(dāng)定時(shí)器Timer-s超 時(shí),遍歷AP列表,選取信號(hào)強(qiáng)度signalstrength不低于1且count值小于3的AP信息發(fā) 送。選擇性AP信息廣播機(jī)制對(duì)本地AP信息進(jìn)行一定的過(guò)濾,從而減少消息的發(fā)送量,降低 系統(tǒng)的消耗。下面說(shuō)明采用本發(fā)明的選擇性AP信息廣播機(jī)制的這種過(guò)濾對(duì)AP信息擴(kuò)散的影響1)通過(guò)信號(hào)強(qiáng)度來(lái)過(guò)濾,只發(fā)送信號(hào)強(qiáng)度較大的AP信息,對(duì)AP信息的濃度不會(huì)產(chǎn)生 較大的影響。根據(jù)本發(fā)明的AP選擇策略,設(shè)備在連接AP時(shí),也會(huì)自動(dòng)過(guò)濾信號(hào)強(qiáng)度較低的 AP,從這個(gè)角度來(lái)說(shuō),信號(hào)較低的AP信息對(duì)設(shè)備是無(wú)用的,可視為冗余信息,從而可以在發(fā) 送時(shí)就將其過(guò)濾。2、通過(guò)count值來(lái)過(guò)濾,count值表示一個(gè)發(fā)送周期內(nèi)重復(fù)收到某條AP 信息的次數(shù),從一定程度上反映該條AP信息在區(qū)域中的擴(kuò)散程度。當(dāng)count值超過(guò)一定 范圍時(shí),本發(fā)明實(shí)施例設(shè)為3,即可認(rèn)為該條信息已經(jīng)達(dá)到一定的濃度,使得區(qū)域中的節(jié)點(diǎn) 都能收到該AP的信息,從而不需要再發(fā)送這條AP信息。此外,count值在每個(gè)發(fā)送周期初 始都被重置為0,從而可以動(dòng)態(tài)適應(yīng)節(jié)點(diǎn)的運(yùn)動(dòng)以及區(qū)域中節(jié)點(diǎn)分布的變化,進(jìn)一步保證了 AP信息的有效性。 步驟八、判斷是否有連接請(qǐng)求,若有連接請(qǐng)求,轉(zhuǎn)步驟九;若無(wú)連接請(qǐng)求,轉(zhuǎn)步驟步驟九當(dāng)設(shè)備有網(wǎng)絡(luò)連接請(qǐng)求時(shí),首先檢查本地AP列表中是否存有AP記錄,若 有,則根據(jù)本發(fā)明提出的AP選擇策略選擇當(dāng)前最佳AP連接;若無(wú),則開啟Wi-Fi接口,啟動(dòng) Wi-Fi掃描并連接到AP。本發(fā)明提出的AP選擇策略旨在通過(guò)本地保存的AP信息選擇當(dāng)前最佳AP連接以 提高用戶訪問(wèn)internet的體驗(yàn),具體通過(guò)P值來(lái)評(píng)估AP的性能P = SS/CT其中SS表示AP的信號(hào)強(qiáng)度,其值為AP記錄中APhfo中表示無(wú)線網(wǎng)絡(luò)信號(hào)強(qiáng)度 signal_strength的值,CT表示連接AP所需的時(shí)間,指從發(fā)起連接請(qǐng)求到連接到指定AP的 時(shí)間,其值為AP記錄中APhfo中表示表示連接網(wǎng)絡(luò)所需時(shí)間connecting_time的值。當(dāng) 設(shè)備有連接請(qǐng)求時(shí),通過(guò)遍歷AP列表,計(jì)算每個(gè)AP記錄的P值,選擇P值最大的AP連接。步驟十、判斷是否結(jié)束,若是,結(jié)束本方法;若不是,轉(zhuǎn)步驟二繼續(xù)執(zhí)行。具體是否 結(jié)束由用戶根據(jù)需要來(lái)控制。下面將結(jié)合附圖和實(shí)例說(shuō)明本發(fā)明提出的基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選 擇方法相比普通的Wi-Fi方式在功耗及性能方面的改進(jìn),所述的普通的Wi-Fi方式是指利 用操作系統(tǒng)自帶的Wi-Fi掃描功能掃描并連接AP。如圖3所示,為本發(fā)明的接入點(diǎn)發(fā)現(xiàn)與選擇方式同普通Wi-Fi掃描方式在功耗方 面的對(duì)比。實(shí)驗(yàn)場(chǎng)景為一臺(tái)諾基亞N810采用普通Wi-Fi模式連接AP,另一臺(tái)諾基亞N810 采用本發(fā)明方法連接AP,記錄設(shè)備兩分鐘內(nèi)的實(shí)時(shí)功率。其中,采用普通Wi-Fi掃描方式有 兩個(gè)明顯的能量高峰第22秒至28秒,表示W(wǎng)i-Fi掃描階段;第32秒至47秒,表示AP連 接階段。與普通Wi-Fi模式不同,采用本發(fā)明方法只有一個(gè)能量高峰,即AP連接階段,這是 因?yàn)樵赯igBee模式下設(shè)備可以直接連接到AP而無(wú)需事先掃描。圖3表明本發(fā)明的方法能 夠大大減少設(shè)備掃描Wi-Fi的次數(shù),從而降低設(shè)備的耗電量。圖4,圖5演示了本發(fā)明方法中AP選擇的性能分析結(jié)果,實(shí)驗(yàn)場(chǎng)景如下選取1臺(tái) 諾基亞N810,依據(jù)本發(fā)明的AP選擇策略從本地保存的可用AP中選取當(dāng)前最佳AP并連接, 記錄該AP的實(shí)際信號(hào)強(qiáng)度及連接時(shí)間以及本地AP記錄的連接時(shí)間及信號(hào)強(qiáng)度,同時(shí)記錄 本地AP記錄的信號(hào)強(qiáng)度及連接時(shí)間的最大值及最小值。圖4與圖5中橫坐標(biāo)都表示實(shí)驗(yàn) 次數(shù),本實(shí)施例中是在不同地點(diǎn)重復(fù)試驗(yàn)12次。圖4為連接時(shí)間的對(duì)比,可以看出,實(shí)際的 AP連接時(shí)間與本地保存的最佳AP的連接時(shí)間幾乎沒(méi)有差別,且最佳AP的連接時(shí)間基本接近最短連接時(shí)間。圖5為信號(hào)強(qiáng)度的對(duì)比,可以看出,實(shí)際獲得的AP信號(hào)強(qiáng)度與本地保存 得當(dāng)前最佳AP信號(hào)的強(qiáng)度也無(wú)明顯差別,且也非常接近本地保存的最大AP信號(hào)強(qiáng)度,由此 可以看出本發(fā)明中選擇的AP信息的有效性。 圖6為本發(fā)明方法中的選擇性AP信息廣播策略與普通的洪泛策略的性能對(duì)比的 實(shí)驗(yàn)分析結(jié)果。實(shí)驗(yàn)場(chǎng)景如下在一個(gè)部署有8個(gè)AP的區(qū)域中,兩臺(tái)諾基亞N810分別采用 本發(fā)明方法中選擇性AP廣播策略及洪泛策略廣播本地保存的AP信息,發(fā)送周期設(shè)為3s,記 錄一分鐘內(nèi)的耗電量及發(fā)送數(shù)據(jù)量。圖6為兩種策略的發(fā)送數(shù)據(jù)量對(duì)比,可以看出,隨著周 圍節(jié)點(diǎn)的增多,收到的AP信息增多,發(fā)送數(shù)據(jù)量呈上升趨勢(shì),且兩種轉(zhuǎn)發(fā)策略的發(fā)送數(shù)據(jù) 量沒(méi)有太大差別;隨后,節(jié)點(diǎn)收到的的AP信息逐漸達(dá)到飽和,本發(fā)明實(shí)施例中即獲得所有8 個(gè)AP的信息,此時(shí),洪泛策略,由于其轉(zhuǎn)發(fā)所有收到的AP信息,所以在達(dá)到信息飽和后,發(fā) 送數(shù)據(jù)量沒(méi)有變化,始終保持最大;而本發(fā)明方法中的選擇性AP廣播策略由于對(duì)AP信息進(jìn) 行一定過(guò)濾,發(fā)送的數(shù)據(jù)量逐漸下降,最后同樣趨于穩(wěn)定。由圖6可以看出,相比于洪泛機(jī) 制,本發(fā)明方法中的選擇性AP信息廣播策略能夠大大減少發(fā)送數(shù)據(jù)量,降低鏈路消耗。
權(quán)利要求
1.一種基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,該方法采用ZigBee 作為通訊鏈路,包括如下步驟步驟1 初始化建立本地Wi-Fi接入點(diǎn)AP列表,然后啟動(dòng)ZigBee接口接收數(shù)據(jù),并啟 動(dòng)兩個(gè)定時(shí)器Timer-u及Timer-s ;所述的AP列表記錄了所有本地保存的AP記錄APRec, 所述的AP記錄的結(jié)構(gòu)為APRec<APhfo,count, lifetime〉,其中,lifetime表示該AP記錄 的生存時(shí)間,count表示在一個(gè)發(fā)送周期內(nèi)重復(fù)收到相同AP信息的次數(shù),APhfo指連接AP 所必須的信息;步驟2 判斷ZigBee接口是否收到數(shù)據(jù),若是,轉(zhuǎn)步驟3 ;若不是,轉(zhuǎn)步驟4 ; 步驟3 從ZigBee接口接收的數(shù)據(jù)包中提取AP信息,記為RecAP,隨后掃描本地AP列 表,針對(duì)每個(gè)AP記錄,查看其無(wú)線網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí)wlan_SSid是否與RecAP的相同,若 相同,則將該AP記錄的count及l(fā)ifetime的值重置為0 ;若不存在無(wú)線網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí) wlan_ssid與RecAP的wlan_ssid相同的AP記錄,則新建一條AP記錄,將新建的AP記錄的 APInfo賦值為RecAP, count與lifetime的值初始為O ;步驟4 判斷定時(shí)器Timer-u是否超時(shí),若是,轉(zhuǎn)步驟5 ;若不是,轉(zhuǎn)步驟6 ; 步驟5 遍歷整個(gè)AP列表,檢查每個(gè)AP記錄的lifetime值,若超過(guò)特定閾值,則刪除 該條AP記錄;步驟6 判斷定時(shí)器Timer-s是否超時(shí),若是,轉(zhuǎn)步驟7 ;若不是,轉(zhuǎn)步驟8 ; 步驟7 遍歷整個(gè)AP列表,選取AP信息通過(guò)ZigBee接口廣播出去; 步驟8 判斷是否有連接請(qǐng)求,若有連接請(qǐng)求,轉(zhuǎn)步驟9 ;若無(wú)連接請(qǐng)求,轉(zhuǎn)步驟10 ; 步驟9 檢查本地AP列表中是否存有AP記錄,若有,則選擇當(dāng)前最佳AP連接,若無(wú),則 開啟Wi-Fi接口,啟動(dòng)Wi-Fi掃描并連接到AP ;步驟10 判斷用戶是否發(fā)出結(jié)束命令,若是,結(jié)束本方法;若不是,轉(zhuǎn)步驟2繼續(xù)執(zhí)行。
2.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟一中所述 的連接 AP 所必須的信息 APhfo,其結(jié)構(gòu)為APhfo<wlan_ssid,wlan_name, wlan_type, signal_strength, wlan_security, wlan_hidden, connecting_time>,其中,wlan_ssid 表 示無(wú)線網(wǎng)絡(luò)的服務(wù)集標(biāo)識(shí);wlan_name表示無(wú)線網(wǎng)絡(luò)的名稱;wlan_type表示無(wú)線網(wǎng)絡(luò)的類 型;signalstrength表示無(wú)線網(wǎng)絡(luò)信號(hào)強(qiáng)度;wlar^security表示無(wú)線網(wǎng)絡(luò)的安全性設(shè) 置;wlan_hidden表示網(wǎng)絡(luò)是否隱藏;connecting_time表示連接網(wǎng)絡(luò)所需時(shí)間。
3.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟1中所述的 定時(shí)器Timer-u用于周期性地更新AP列表并檢查AP記錄的有效性,所述的定時(shí)器Timer-s 用于周期性地廣播本地保存的AP信息。
4.根據(jù)權(quán)利要求3所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,定時(shí)器Timer-u 的超時(shí)時(shí)間間隔設(shè)為ls,定時(shí)器Timer-s的超時(shí)時(shí)間間隔設(shè)為3s。
5.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟5所述的特 定閾值為6。
6.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟7所述的選 取AP信息,具體是選取信號(hào)強(qiáng)度不低于1且AP記錄中的count值小于3的AP信息。
7.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟1中所述的 count值在每個(gè)發(fā)送周期初始都被重置為0。
8.根據(jù)權(quán)利要求1所述的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,其特征在于,步驟9中所述的 選擇當(dāng)前最佳AP,具體選擇方法為為每個(gè)本地AP記錄計(jì)算一個(gè)評(píng)估AP性能的P值 P = SS/CT其中,SS表示AP的信號(hào)強(qiáng)度,CT表示連接AP所需的時(shí)間; P值最大的AP就是當(dāng)前最佳AP。
全文摘要
本發(fā)明為基于ZigBee的Wi-Fi接入點(diǎn)發(fā)現(xiàn)與選擇方法,以一個(gè)部署有多個(gè)AP且有多臺(tái)移動(dòng)便攜設(shè)備的區(qū)域?yàn)閼?yīng)用場(chǎng)景,采用ZigBee作為通訊鏈路。首先初始化建立Wi-Fi接入點(diǎn)AP列表,然后啟動(dòng)ZigBee接口接收數(shù)據(jù),并啟動(dòng)兩個(gè)定時(shí)器。當(dāng)ZigBee接口接收到數(shù)據(jù)時(shí),提取AP信息并更新AP列表。當(dāng)兩個(gè)定時(shí)器超時(shí)時(shí)分別進(jìn)行更新AP列表與廣播AP信息的操作。當(dāng)收到連接請(qǐng)求時(shí),進(jìn)行連接請(qǐng)求處理。本發(fā)明方法可使移動(dòng)設(shè)備之間通過(guò)ZigBee接口共享AP信息,并利用AP信息直接連接到相關(guān)AP而無(wú)需事先掃描AP,根據(jù)AP信息,選取當(dāng)前最佳AP連接,大大減少AP掃描的次數(shù),有效降低Wi-Fi接口的耗電量。
文檔編號(hào)H04W48/20GK102076060SQ20111002134
公開日2011年5月25日 申請(qǐng)日期2011年1月19日 優(yōu)先權(quán)日2011年1月19日
發(fā)明者吳菲菲, 張錦鋒, 牛建偉, 陳燦峰 申請(qǐng)人:北京航空航天大學(xué)