基于開源路由技術的低功耗無線路由器研究
摘要:移動終端通過基于IEEE 802.11協議的Wi-Fi無線通信技術與互聯網相連。本文深入研究了IEEE802.11協議,利用開源路由技術對無線路由器刷入第三方開源固件Open-WRT,并對該固件進行相應的協議修改來降低Wi-Fi功耗,并且將降低功耗后的無線路由器應用于具體的智慧旅游項目。
關鍵詞:移動互聯網;Wi-Fi;無線路由器;開源路由技術
引言
Wi-Fi無線接入技術基于IEEE802.11協議,是目前無線通信中最常用的無線接入技術。然而,Wi-Fi無線接入技術有一個致命弱點——功耗高。因此,如何降低Wi-Fi無線接入技術的功耗成為了急需解決的問題。移動終端通過無線路由器提供的Wi-Fi信號接入互聯網或者進行定位服務,然而由于Wi-Fi的高功耗使得無線路由器必須一直連接電源才能保持正常工作,這就嚴重限制了人們的使用范圍。我們希望在沒有電源接入的地方(比如古老景區、歷史遺跡)也可以使用無線路由器,為移動終端提供服務。
1 IEEE802.11協議
IEEE802.11協議是由美國電氣與電子工程師學會(IEEE)開發的一組無線傳輸協議。這些協議定義了無線站點(或接入點)之間兩個或多個無線站點之間的通信的接口。該協議主要包含物理層和MAC層,主要工作在ISO協議的最低兩層上,本文主要研究該協議的MAC層。
IEEE802.11協議定義幀包含以下幾個部分:
◆MAC頭部。包含幀控制、持續時間、地址和排隊控制信息。
◆有效長度的幀體。包含幀信息、幀類型。
◆FCS。包含CRC校驗的信息。
控制幀:主要用于協助數據幀的傳遞,所有控制幀都使用相同的Frame Control字段。
管理幀:負責在工作站和AP之間建立初始的通信,提供認證和連接服務,包括連接請求/響應、輪詢請求/響應、Beacon幀等。
Beacon幀:主要聲明網絡的存在。定期傳送的信標可以讓移動式工作站得知該網絡的存在,從而調整加入該網絡所必需的參數。在基礎結構網絡中,接入點負責傳送Beacon幀。
由圖1的IEEE802.11協議幀結構可以看出,如果僅僅保留IEEE802.11協議廣播Beacon幀功能的話,則只需發送很少的數據,可以大大地降低功耗,而且我們還可以通過開源路由技術修改IEEE802.11協議來達到降低功耗的目的。
2 開源路由技術
圖2為TCP/IP與OSI參考模型的對應關系,可以看出路由器是工作在OSI模型中的第3層,即網絡層。同時也是TCP/IP協議的第3層,即網際層。路由器利用網絡層定義的“邏輯”網絡地址(即IP地址)來區別不同的網絡,實現網絡的百聯和隔離,保持各個網絡的獨立性。路由器不轉發廣播消息,而把廣播消息限制在各自的網絡內部。發送到其他網絡的數據均被送到路由器,再由路由器轉發出去。
無線路由器是基于開源的Linux操作系統,然而商業路由器為了保護自己的技術是不會把固件源碼公開的,因此不能由第三方軟件開發者直接對其固件進行開發。自從Linksys釋放WRT54G/GS的源碼后,開源軟件愛好者開發出很多不同版本的固件,以增強原有的功能或者增加原來沒有的功能。下面是主流的無線路由的Linux發行版:
①Open-WRT。國內最早興起刷固件行動的人基本上都是將自己的設備刷新成Open-WRT,由此可見Open-WRT具有極大的影響力。該固件通過SSH加密協議來配置,與Cisco設備在很多指令和操作上類似。
②DD-WRT。該固件是國內外目前最為流行的固件之一,它是在Open-WRT固件的基礎上改進后發布的,很多功能都是取自Open-WRT。存應用范同上DD-WRT支持極多的硬件平臺,并且新版本的發布也很及時。
③Hyper-WRT。該固件是以穩定著稱的第三方同件,不過功能上要比前兩種稍遜一籌。從核心代碼上看,它是最接近Linksys官方固件的固件。對很多用戶來說,新功能、新應用的出現是他們刷新同件的主要動力,如果只是要求單一的穩定,那么直接使用官方默認固件即可。
④Tomato。這是一款逐漸流行的固件,個頭比較小,實際使用起來非常穩定,而且基于SVG的圖形化流量圖非常有特色。它是由Hyper-WRT研發團隊中的一個組員開發的。
本文選用的第三方固件是Open-WRT,之所以選擇Open-WRT是因為它是完全開源的,方便編譯和配置,有對應路由器所需要的固件,重新刷固件也很方便。
評論