基于ARM的Ad Hoc網(wǎng)絡(luò)平臺的實現(xiàn)
為簡單起見,本測試使用兩個筆記本和一個ARM平臺組建成Ad Hoc網(wǎng)絡(luò),如圖4所示,A節(jié)點IP為10.0.1.1,B節(jié)點IP為10.0.1.2,C節(jié)點IP為10.0.1.3(經(jīng)測試將ARM平臺做通信端,A或C做中繼,網(wǎng)絡(luò)同樣可以正常運行)。
圖4 測試拓?fù)涫疽鈭D
為了簡單地實現(xiàn)C節(jié)點不在A節(jié)點一跳范圍內(nèi),可以使用iptables實現(xiàn)過濾。
在A節(jié)點執(zhí)行:
iptables –A INPUT –p ALL –m mac –mac-source C.mac –j DROP
在C節(jié)點執(zhí)行:
iptables –A INPUT –p ALL –m mac –mac-source A.mac –j DROP
以上的C.mac、A.mac是C和A的實際mac地址,這樣A節(jié)點拒絕C發(fā)給它的數(shù)據(jù)包,C節(jié)點也拒絕A發(fā)給它的數(shù)據(jù)包,保證二者一跳不可達(dá)。
在C節(jié)點ping -R 10.0.1.1,鏈路不通,說明過濾成功,B沒有進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā)。
在各節(jié)點上運行AODV后,在C節(jié)點ping -R 10.0.1.1,結(jié)果如圖5所示。
圖5 測試結(jié)果
可見,B正確地進(jìn)行了數(shù)據(jù)包轉(zhuǎn)發(fā),AODV協(xié)議正常運行,ARM平臺成功運行。
在A節(jié)點執(zhí)行l(wèi)ftp 10.0.1.3,并下載普通文件。這樣數(shù)據(jù)包由中間的ARM平臺B轉(zhuǎn)發(fā),下載完成后,查看C節(jié)點的日志文件/var/log/vsftpd.log,發(fā)現(xiàn)上傳和下載的速率基本相同,有將近700kBps的速率,達(dá)到5.4Mbps的速率。粗略估算聚合物電池供電能使ARM平臺穩(wěn)定運行8小時。
通過以上測試,搭建一個Ad Hoc網(wǎng)絡(luò)的ARM平臺的目標(biāo)已經(jīng)達(dá)到。通過對有多個ARM平臺的Ad Hoc網(wǎng)絡(luò)進(jìn)行測試,發(fā)現(xiàn)當(dāng)某節(jié)點感知無線信號很弱時,無線網(wǎng)卡的essid存在自動變化的情況。
評論