基于IEEE 802.15.4無線傳感器網(wǎng)絡的IPv6協(xié)議棧
隨著互聯(lián)網(wǎng)的普及,Internet對人們生活方式的影響越來越巨大,并將繼續(xù)在未來得各領域持續(xù)發(fā)揮其影響力,集成了網(wǎng)絡技術,嵌入式技術、微機電系統(tǒng)(MEMS)及傳感器技術的無線傳感器網(wǎng)絡將Internet為從虛擬世界延伸到物理世界,從而將邏輯上的信息世界與真實物理世界融合在一起,改變了人與自然交互的方式,滿足了人們對“無處不在”的網(wǎng)絡的需求。2000年12月IEEE成立了IEEE 802.15.4 工作組,致力于定義一種供廉價、固定、便捷或移動設備使用的,復雜度、成本和功耗極低的低速率無線連接技術,產(chǎn)品的方便靈活,易于連接、實用可靠及可繼承延續(xù)是市場的驅(qū)動力,一般認為短距離的無線低功耗通信技術最適合傳感器網(wǎng)絡使用,傳感器網(wǎng)絡是IEEE 802.15.4標準的主要市場對象。
一方面,無線傳感器網(wǎng)絡具有“無處不在”和節(jié)點數(shù)量龐大等特點,部署無線傳感器網(wǎng)絡需要數(shù)量巨大的IP地址資源,另一方面,由于無線傳感器網(wǎng)絡的應用領域往往對安全性要求較高,而無線傳感器網(wǎng)絡自組織的先天性缺乏應有的安全機制,IPv6作為下一代網(wǎng)絡協(xié)議,具有地址資源豐富、地址自動配置、安全性高、移動性好等
本文在分析了無線傳感器網(wǎng)絡和IPv6 over IEEE 802.15.4的技術特點之后,重點提出了一種能夠適用于無線傳感器網(wǎng)絡,且底層采用IEEE 802.15.4的嵌入式IPv6協(xié)議棧設計方案,最后,還總結(jié)了基于IPv6 over IEEE 802.15.4無線傳感器網(wǎng)絡協(xié)議棧設計的核心原則。
1 無線傳感器網(wǎng)絡和IPv6 over IEEE 802.15.4的技術節(jié)點
1.1 無線傳感器網(wǎng)絡簡介
無線傳感器網(wǎng)絡由大量低功耗、低速率、低成本、高密度的微型節(jié)點組成,節(jié)點通過自我組織、自我愈合的方式組成網(wǎng)絡,圖1給出了無線傳感器網(wǎng)絡的工作原理,圖中分散的無線傳感器節(jié)點通過自組織方式形成傳感器網(wǎng)絡。節(jié)點負責采集周圍的相關信息,并采用多跳方式將這些信息通過Internet或其他網(wǎng)絡傳遞到遠端的監(jiān)控設備。
無線傳感器網(wǎng)絡由許多個功能相同或不同的無線傳感器節(jié)點組成。每個傳感器節(jié)點由數(shù)據(jù)采集模塊(傳感器、A/D轉(zhuǎn)換器)、數(shù)據(jù)處理和控制模塊(微處理器、存儲器)、通信模塊(無線收發(fā)器)以及供電模塊(電池、DC/DC能量轉(zhuǎn)換器)等組成。節(jié)點在網(wǎng)絡中可以充當數(shù)據(jù)采集者、數(shù)據(jù)中轉(zhuǎn)站或者簇頭節(jié)點(cluster-head node)的角色。作為數(shù)據(jù)采集者,數(shù)據(jù)采集模塊收集周圍環(huán)境的數(shù)據(jù)(如溫度和濕度),通過通信路由協(xié)議直接或間接將數(shù)據(jù)傳輸給遠方基站(base station)或匯節(jié)點(sink node);作為數(shù)據(jù)中轉(zhuǎn)站,節(jié)點除了完成采集任務外,還要接收鄰居節(jié)點的數(shù)據(jù),將其轉(zhuǎn)發(fā)給距離基站更近的鄰居節(jié)點或者直接轉(zhuǎn)發(fā)到基站或匯節(jié)點;作為簇頭節(jié)點,節(jié)點負責收集該類內(nèi)所有節(jié)點采集的數(shù)據(jù),經(jīng)數(shù)據(jù)融合后,發(fā)送到基站或匯節(jié)點。與傳統(tǒng)Ad Hoc網(wǎng)絡相比,無線傳感器網(wǎng)絡具有一些明顯的特征:1)網(wǎng)絡節(jié)點密度高,傳感器節(jié)點數(shù)量眾多,單位面積所擁有的網(wǎng)絡節(jié)點數(shù)遠大于傳統(tǒng)的Ad Hoc網(wǎng)絡,2)傳感器節(jié)點由電池供電,節(jié)點能量有限;3)網(wǎng)絡拓撲變化頻繁;4)網(wǎng)絡應具備容錯能力,正是由于以上特點,IPv6已無線傳感器網(wǎng)絡的結(jié)合對IPv6提出了一些新的要求,如IPv6地址自動分配機制和IPv6包頭壓縮機制,另外,還有一些管理問題、與無線數(shù)據(jù)鏈路層接口問題等,因此,設計IPv6微型協(xié)議棧時,除了要實現(xiàn)功能完整,高效實用。占用的存儲資源少以外,如上所述的一些新要求也應考慮進來。
1.2 IPv6 over IEEE 802.15.4的技術特點
IEEE 802.15.4是2004年提出的無線標準的安全網(wǎng)絡技術,主要定義物理層和MAC層的協(xié)議,其余協(xié)議主要參照和采用現(xiàn)有的標準,主要應用場合是讀表自動化、自動化控制和傳感器網(wǎng)絡,IEEE 802.15.4針對的就是低復雜度、低功耗、低數(shù)據(jù)速率的短距離網(wǎng)絡,目標是將普通小型電池的使用壽命延長到幾年,當芯片批量生產(chǎn)時,每個802.15.4設備的銷售價格最終不到3美元,將很好地滿足無線傳感器網(wǎng)絡的要求,IEEE 802.15.4定義了兩個物理層標準,即2.4GHz物理層和868/915MHz物理層。這兩個物理層都基于直接序列擴頻DSSS(Direct Sequence Spread Spectrum),使用相同的物理層數(shù)據(jù)包格式;區(qū)別在于工作頻率、調(diào)制技術、擴頻碼片長度和傳輸速率。2.4GHz波段為全球統(tǒng)一、無須申請的ISM頻段,有助于15.4設備的推廣和生產(chǎn)成本的降低。2.4GHz的物理層通過采用高階調(diào)制技術能夠提供250kb/s的傳輸速率,有助于獲得更高的吞吐量、更短的通信時延和工作周期,從而更加省電。868MHz是歐洲的ISM頻段,915MHz是美國的ISM頻段,這兩個頻段的引入避免了2.4GHz附近各種無線通信設備的相互干擾,868MHz的傳輸速率為20kb/s,915MHz和40kb/s。由于這兩個頻段上無線信號傳播損耗較低,因此可以降低對接收機靈敏度的要
2 嵌入式IPv6協(xié)議棧的設計
2.1 嵌入式IPv6協(xié)議棧的設計思想
由于無線傳感器網(wǎng)絡節(jié)點一般都是嵌入式設備,所以嵌入式IPv6協(xié)議棧的設計主要應突出“微型化”的思想,TCP/IP協(xié)議最先在Uuix系統(tǒng)里實現(xiàn)的,由于嵌入式系統(tǒng)與PC機的差別很大,在嵌入式系統(tǒng)中實現(xiàn)TCP/IP協(xié)議與在操作系統(tǒng)中的實現(xiàn)有很大不同,所以這是設計的核心環(huán)節(jié)。嵌入式系統(tǒng)的IPv6微型協(xié)議棧,直接面對硬件,沒有一個多任操作系統(tǒng)平臺,MCU中的程序結(jié)構(gòu)一般是順序執(zhí)行和硬件中斷相匹配的方式,與高級操作系統(tǒng)中多線程并發(fā)執(zhí)行的方式截然不同,因為單片機上系統(tǒng)的各種資源是有限的,例如CPU的處理速度、字長、RAM、ROM存儲器的容量以及接口的數(shù)量等與通用計算機相比有很大差距,所以如何使協(xié)議棧做到精細、通信可靠、功能相對完善,而且又能發(fā)揮單片機的特點成為IPv6微型協(xié)議棧設計的關鍵問題?!拔⑿突彼枷胫饕w現(xiàn)在設計方案核心應著眼于設計體積小,但又不影響運行的協(xié)議棧,所以要對協(xié)議棧的剪切方面進行深入研究,去掉不必要的組件,傳統(tǒng)的復雜調(diào)度機制和額外的擴展功能,甚至可去除操作系統(tǒng)等。
綜合研究以上多方面因素,提出了能夠適用于無線傳感器網(wǎng)絡的嵌入式IPv6微型協(xié)議棧的設計要求。
1)協(xié)議棧運行于單片機系統(tǒng)上,具有較強的兼容性,可以在以太網(wǎng)上正確運行,同時在此基礎上可以借助IEEE 802.15.4 MAC的無線數(shù)據(jù)傳輸功能來傳送數(shù)據(jù)包。
2)實現(xiàn)IPv6基本協(xié)議棧核心協(xié)議的最基本功能,包括IPv6基本描述協(xié)議,ND(鄰居發(fā)現(xiàn))協(xié)議、ICMPv6(因特網(wǎng)控制報文)協(xié)議和IPv6地址的自動配置協(xié)議等。
◆ IPv6基本描述協(xié)議;IPv6數(shù)據(jù)包的發(fā)送、接收、處理等基本功能。
◆ ND(鄰居發(fā)現(xiàn))協(xié)議:鄰居發(fā)現(xiàn)的地址解析功能,實現(xiàn)鄰居請求和鄰居通告。
◆ ICMPv6(因特網(wǎng)控制報文)協(xié)議:主要實現(xiàn)控制報文的消息處理,以及對網(wǎng)絡診斷功能的回應請求和回應答復。
◆ IPv6地址自動配置協(xié)議:根據(jù)IPv6地址格式的要求,主要實現(xiàn)IPv6鏈路本地地址的配置和請求節(jié)點多播地址的配置。
3)利用對校驗和字段的計算與處理來提高ICMPv6,TCP等協(xié)議運行的正確性。
4)實現(xiàn)簡單的應用層協(xié)議(如TELNET/SNMP協(xié)議),利用遠程終端可以登陸到運行嵌入式IPv6協(xié)議棧的單片機系統(tǒng),以及進行簡單的控制和管理操作。
2.2 嵌入式IPv6協(xié)議棧的分層與模塊化設計
嵌入式IPv6協(xié)議棧采用分層結(jié)構(gòu)進行設計,將整個協(xié)議棧(包括TCP及上層應用)分為4個層次,事件觸發(fā)接口層、TCP/IP網(wǎng)絡協(xié)議層、NIC網(wǎng)絡接口核心層和網(wǎng)絡設備驅(qū)動接口層。
圖3是對整個協(xié)議棧的分層描述,在協(xié)議棧的工作過程中使用上層調(diào)用相鄰層的函數(shù)來實現(xiàn)相應的功能。
各層的功能簡述如下:
1)事件觸發(fā)接口層。該層對應于TCP/IP模型的應用層協(xié)議(OSI模型的高層協(xié)議),主要功能是定義網(wǎng)絡數(shù)據(jù)的格式以及網(wǎng)絡的應用。
2)TCP/IP網(wǎng)絡協(xié)議層。該層對應于TCP/IP模型的傳輸層協(xié)議和網(wǎng)絡層協(xié)議(OSI模型的3.4兩層),主要功能是定義數(shù)據(jù)如何傳輸?shù)侥康牡氐?,使用TCP協(xié)議在兩臺主機之間建立端到端的連接,保證可靠的傳輸,IP協(xié)議進行路由選擇和基于IP的尋址。
3)NIC網(wǎng)絡接口核心層。該層是整個網(wǎng)絡接口的關鍵部位,其上層是具體的網(wǎng)絡協(xié)議,下層是驅(qū)動程序,它為上層提供統(tǒng)一的發(fā)送接口,屏蔽各式各樣的物理介質(zhì),同時負責把來自下層的包向合適的協(xié)議發(fā)送。
4)網(wǎng)絡設備驅(qū)動接口層,該層是分層結(jié)構(gòu)的最底層,其主要功能是控制具體物理介質(zhì),從物理介質(zhì)接收和發(fā)送數(shù)據(jù),并對物理介質(zhì)進行諸如最大數(shù)據(jù)包之類的各種設置。
結(jié)合對嵌入式IPv6協(xié)議棧設計要求和分層結(jié)構(gòu)的全面分析,將設計實現(xiàn)劃分為4個模塊,如圖4所示。
各模塊的功能簡述如下:
1)網(wǎng)絡接口核心模塊,該模塊為網(wǎng)絡協(xié)議提供統(tǒng)一的發(fā)送接口,屏蔽各式各樣的物理介質(zhì),同時負責把來自下層的包向合適的協(xié)議配送。
2)事件接口模塊,
3)SNMP網(wǎng)管模塊。該模塊負責獲取IPv6無線傳感器網(wǎng)絡節(jié)點的相關MIB信息。
4)配置顯示調(diào)試命令模塊,該模塊用于提供用戶配置和調(diào)試的界面。包括配置IP地址、子網(wǎng)掩碼、默認網(wǎng)關和MAC地址等,在程序正常運行前,由超級終端進入配置模式,由用戶進行配置管理。
本文在分析了無線傳感器網(wǎng)絡和IPv6 over IEEE 802.15.4的技術特點之后,重點提出了一種能夠適用于無線傳感器網(wǎng)絡,且底層采用IEEE 802.15.4的嵌入式IPv6協(xié)議棧設計方案,最后,還總結(jié)了基于IPv6 over IEEE 802.15.4無線傳感器網(wǎng)絡協(xié)議棧設計的核心原則。
基于IPv6 over IEEE 802.15.4的無線傳感器網(wǎng)絡是一門新興的網(wǎng)絡技術,人們對它的研究尚處于起步階段,本文針對基于IPv6 over IEEE 802.15.4無線傳感器網(wǎng)絡自身特點,對其關鍵技術嵌入式IPv6協(xié)議棧進行了分析,筆者認為,現(xiàn)有的IPv6協(xié)議棧雖然在功能、性能等方面具有很大優(yōu)勢,但由于代碼體積較大(幾MB-幾百MB),而無線傳感器網(wǎng)絡節(jié)點的存儲資源只有不到200MB,因而無法運行在計算能力和存儲資源受限的無線傳感器網(wǎng)絡節(jié)點中。所以在設計適合傳感器節(jié)點的嵌入式IPv6協(xié)議棧時,應充分分析和研究無線傳感器網(wǎng)絡對IPv6提出的新要求,考慮在性能和資源之間尋找一個折中的方案。充分運用協(xié)議工程學理論和軟件工程的方法,設計一種合理、高效的嵌入式IPv6微型協(xié)議棧,這對推動無線傳感器網(wǎng)絡和IPv6的發(fā)展,以及改變?nèi)藗兊纳詈凸ぷ鞣绞?,具有十分重要的意義。
tcp/ip相關文章:tcp/ip是什么
評論