嵌入式IPv6協議棧的構造理念
網絡的發展不斷微型化,這也就是嵌入式所具備的特點。那么網絡之中我們已經開始使用IPv6協議了。那么嵌入式IPv6協議棧的設計和要求也在這時候被廣大研究者所關注。下面我們就來談及一下這方面的內容,為大家做一個參考。
IPv6 over IEE 802 15.4的技術特點
IEEE 802.15.4是2004年提出的無線標準的安全網絡技術,主要定義物理層和MAC層的協議,其余協議主要參照和采用現有的標準,主要應用場合是讀表自動化、自動化控制和傳惑器網絡。IEE802.15.4針對的就是低復雜度、低功耗、低數據速率的短距離網絡,目標是將普通小型電池的使用壽命延長到幾年。當芯片批量生產時,每個802.15.4設備的銷售價格最終不到3美元,將很好地滿足無線傳感器網絡的要求。IEEE802.15.4定義了兩個物理層標準,即2.4GHz物理層和868/9l5MHz物理層。
這兩個物理層都基于直接序列擴額DSSS(Direct SequenceSpread Spectrum),使用相同的物理層數據包格式;區別在于工作頻率、調制技術、擴頻碼片長度和傳輸速率。2.4 GHz波段為全球統一、無須申請的ISM頻段.有助于15.4設備的推廣和生產成本的降低。2.4GHz的物理屢通過采用高階調制技術能夠提供250kb/s的傳輸遵率,有助于獲得更高的吞吐量、更短的通信時延和工作周期,從而更加省電。868 MHz是歐洲的ISM頻段,915MHz是美國的ISM頻段,這兩個頻段的引入避免了2.4GHz附近各種無線通信設備的相互干擾。868MHz的傳輸速率為20kb/s,915 MHz是40 kb/s。
由于這兩個頻段上無線信號傳播損耗較低,因此可以降低對接收機靈敏度的要求,獲得較遠的有效通信距離,從而可以用較少的設備覆蓋給定的隈域,這些特點使其非常符臺傳感器網絡的應用要求。如前所述,IEEE802.15.4只規定了物理層和MAC層,并且其市場目標主要是無竣傳感器網絡,所以在選擇網絡層標準時,考慮到無線傳感器網絡對地址和安全性等方面的要求,以及下一代互聯網協議1Pv6的不斷發展和完善,在嵌入式設備中引入IPv6協議也將成為一種必然趨勢。因此,6LowPan組織建議采取嵌入式IPv6協議棧,在設計時要充分考慮資源受限與功能相對完善之間的折中。
嵌入式IPv6協議棧的設計思想
由于無線傳感器網絡節點一般都是嵌入式設備,所以嵌入式IPv6協議棧的設計主要應突出“微型化"的思想。TCP/TP協議***是在Uuix系統里實現的,由于嵌入式系統與PC機的差別很大,在嵌入式系統中實現TCP/IP協議與在操作系統巾的實現有很大不同,所以這是設計的核心環節。嵌入式系統的IPv6微型協議棧,直接面對硬件,沒有一個多任務操作系統平臺;MCU中的程序結構一般是順序執行和硬件中斷相配合的方式,與高級操作系統中多線程并發執行的方式截然不同。因為單片機上系統的各種資源是有限的,例如CPU的處理速度、字長,RAM、ROM存儲器的容量以及接口的數量等與通用計算機相比有很大差距,所以如何使協議棧做到精細、通信可靠、功能相對完善,而且又能發揮單片機的特點成為IPv6微型協議棧設計的關鍵問題。“微型化"思想主要體現在設計方案核心應著眼于設計體積小,但又不影響運行的協議棧,所以要對協議棧的裁剪方面進行深入研究,去掉不必要的組件、傳統的復雜調度機制和額外的擴展功能,甚至可以去除操作系統等。
綜合研究以上多方面因素,提出了能夠適用于無線傳感器網絡的嵌入式IPv6微型協議棧的設計要求。
①協議棧運行于單片機系統上,具有較強的兼容性。可以在以太網上正確運行,同時在此基礎上可以借助IEEE802.15.4 MAC的無線數據傳輸功能來傳送數據包。
②實現IPv6基本協議棧核心協議的最基本功能、包括IPv6基本描述協議、ND(鄰居發現)協議、ICMPv6(因特網控制報文)協議和IPv6地址的自動配置協議等。
◆IPv6基本描述協議:IPv6數據包的發送、接收、處理等基本功能。
◆ND(鄰居發現)協議:鄰居發現的地址解析功能,實現鄰居請求和鄰居通告。
◆ICMPv6(因特網控制報文)協議:主要實現控制報文的消息處理,以及對網絡診斷功能的回應請求和回應答復。
◆IPv6地址自動配置協議:根據IPv6地址格式的要求,主要實現IPv6鏈路本地地址的配置和請求節點多播地址的配置。
③利用對校驗和字段的汁算與處理來提高ICMPv6、TCP等協議運行的正確性。#p#
④實現簡單的應用層協議(如TELNET/SNMP協議),利用遠程終端可以登錄到運行嵌入式IPv6協議棧的單片機系統,以及進行簡單的控制和管理操作。
嵌入式IPv6協議棧的分層與模塊化設計
嵌入式IPv6協議棧采用分層結構進行沒計,將整個協議棧(包括TCP及上層應用)分為4個層次:事件觸發接口層、TCP/IP網絡協議層、NIC網絡接口核心層和網絡設備驅動接口層。在協議棧的工作過程中使用上層調用相鄰層的函數來實現相應的功能。
各層的功能簡述如下:
①事件觸發接口層。該層對應于TCP/IP模型的應用層協議(OSI模型的高層協議),主要功能是定義網絡數據的格式以及網絡的應用。
②TCP/IP網絡協議層。該層對應于TCP/IP模型的傳輸層協議和網絡層協議(OSI模型的3、4兩層),主要功能是定義數據如何傳輸到目的地的。使用TCP協議在兩臺主機之間建立端到端的連接,保證可靠的傳輸;IP協議進行路由選擇和基于IP的尋址。
③NIC網絡接口核心層。該層是整個網絡接口的關鍵部位,其上層是具體的網絡協議,下層是驅動程序。它為上層提供統一的發送接口,屏蔽各種各樣的物理介質;同時負責把來自下層的包向合適的協議發送。
④網絡設備驅動接口層。該層是分層結構的***層,其主要功能是控制具體物理介質,從物理介質接收和發送數據,并對物理介質進行諸如***數據包之類的各種設置。
結合對嵌入式IPv6協議棧設計要求和分層結構的全面分析,將設計實現劃分為4個模塊。
各模塊的功能簡述如下:
①網絡接口核心模塊。該模塊為網絡協議提供統一的發送接口,屏蔽各種各樣的物理介質;同時負責把來自下層的包向合適的協議配送。
②事件接口模塊。嵌入式IPv6協議棧沒有采用BSD套接口,而是采用了事件驅動接口。當特定TCP/IP事件發生時,將調用應用程序;而當應用程序產生輸出數據時,也通過此接口發送出去。
③SNMP網管模塊。該模塊負責獲取IPv6無線傳感器網絡節點的相關MIB信息。
④配置最示調試命令模塊。該模塊用于提供用戶配置和調試的界面,包括配置IP地址、子網掩碼、默認網關和MAC地址等。在程序正常運行前,由超級終端進入配置模式,由用戶進行配置管理。


















