《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于Contiki的6LoWPAN邊界路由器的設計
基于Contiki的6LoWPAN邊界路由器的設計
2016年電子技術應用第3期
田廣東,葉 鑫
重慶郵電大學 通信與信息工程學院,重慶400065
摘要: 以TI公司的CC2538 SoC作為核心硬件平臺,基于Contiki開源操作系統設計了一種6LoWPAN邊界路由器,同時搭建了一個包含一臺接入有線網絡的PC、2個6LoWPAN節點以及一個6LoWPAN邊界路由器的測試網絡。測試結果表明,所設計的6LoWPAN邊界路由器成功實現了6LoWPAN節點和PC之間數據的轉發功能,可以應用于智能家居、環境監控等多種場合,具有一定的應用價值。
中圖分類號: TN923
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.03.017
中文引用格式: 田廣東,葉鑫. 基于Contiki的6LoWPAN邊界路由器的設計[J].電子技術應用,2016,42(3):61-63,70.
英文引用格式: Tian Guangdong,Ye Xin. Design of 6LoWPAN border router based on Contiki[J].Application of Electronic Technique,2016,42(3):61-63,70.
Design of 6LoWPAN border router based on Contiki
Tian Guangdong,Ye Xin
School of Communication and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065,China
Abstract: This paper chooses CC2538 SoC as the core hardware platforms, relying on Contiki, to design a 6LoWPAN border router. Meantime, a temporarily network, including a PC connected to the Internet, 2 6LoWPAN nodes and a 6LoWPAN border router is created to evaluate the performance of the 6LoWPAN border router. The result shows that the 6LoWPAN border router can forward the data packets between the PC and 6LoWPAN nodes. This 6LoWPAN border router can be applied to some scenario such as smart home, environment monitor and so on.
Key words : 6LoWPAN;Contiki;border router

0 引言

    6LoWPAN(IPv6 over Low Power Wireless Personal Area Network)是一種基于IEEE 802.15.4的無線通信協議,旨在為嵌入式設備,如無線傳感節點提供IPv6連接[1]。6LoWPAN的出現以全IP的方式真正解決了無線傳感器網絡與IPv6網絡的互聯互通。6LoWPAN已經得到了Google、Cisco、Honeywell等公司的高度重視,有望取代ZigBee標準,成為事實上的標準,當前已經有很多關于6LoWPAN的應用[2]。6LoWPAN網絡底層使用IEEE 802.15.4標準,在MAC層和IPv6網絡層之間引入適配層,主要提供包分片與重組、頭部壓縮和鏈路層轉發等功能。

qrs4-t1.gif

    目前已經有多種開源或商業的6LoWPAN協議棧的實現[3],其中基于Contiki的SICSlowpan以其開源、可移植性好、超輕量級、長期維護等優勢得到了廣泛關注。SICSlowpan符合RFC4944標準,實現了頭部編碼壓縮、分片、地址分配等功能,具有較好的互操作性。

    6LoWPAN邊界路由器是連接6LoWPAN傳感網和IP網絡的橋梁,使兩者的互操作成為可能。6LoWPAN邊界路由器的基本功能有:完成IP協議棧和6LoWPAN協議棧之間的轉換,使IP網絡中的主機可以訪問6LoWPAN傳感網絡中的節點。本文的目標就是在Contiki的基礎下,設計一種實用的6LoWPAN邊界路由器,為進一步研究6LoWPAN奠定基礎。典型的基于Contiki實現的6LoWPAN協議棧如圖1所示。

1 系統組成和目標

    6LoWPAN邊界路由器也可以看成是一種網關或服務器,可連接傳統IP網絡和6LoWPAN傳感網絡并自動完成網絡協議的轉換。為了驗證6LoWPAN邊界路由器在網絡協議轉換中的作用,本文設計了一個包含1個6LoWPAN邊界路由器、2個6LoWPAN節點,1臺PC的測試網絡,整體測試網絡的結構圖如圖2所示。

qrs4-t2.gif

    本文設計的6LoWPAN邊界路由器在實現無縫連接IP網絡和6LoWPAN傳感網絡的過程中具有下列特點:(1)遵循6LoWPAN標準協議,鏈路層基于ContikiMac,采用RDC機制,有效降低功耗,路由協議采用Router Over方式,基于ContikiRPL,支持RPL協議[4];(2)兼容IPv4網絡,即能實現IPv4客戶端和6LoWPAN傳感網之間的通信[5];(3)無縫連接IPv6網絡,支持6LoWPAN標準的鄰居發現協議6LoWPAN ND[6];(4)支持ping等簡單的常用網絡管理命令,方便網絡的調試。

2 硬件設計

    6LoWPAN邊界路由器是6LoWPAN網絡的核心,處理能力要求較高,但從性能和成本兩方面考慮,邊界路由器的主控并沒有采用高性能ARM芯片,而是采用了TI公司的片上系統解決方案CC2538芯片,CC2538基于ARM Cortex-M3架構,內部資源豐富,性能強勁,能很好地支持最新的Contiki3.x版本,完全可以滿足本文的設計要求。以太網模塊采用ENC28J60芯片及HR911105A網絡變壓器。為了調試方便,本文設計了USB轉串口模塊,用于在PC上打印信息,其驅動芯片采用cp2102。邊界路由器的整體硬件結構圖如圖3所示。

qrs4-t3.gif

    為了便于后續的功能擴展及滿足各種需求,本6LoWPAN傳感器節點的硬件結構設計基本與6LoWPAN邊界路由器相同,不同之處在于去掉了以太網模塊,其他部分設計與邊界路由器相同。

3 軟件設計

    6LoWPAN邊界路由器的軟件實現主要基于Contiki協議棧,Contiki以函數指針結構體的形式在每一層定義了很多鉤子函數,或者稱為服務接入點。每一層不同的實現可以很容易連接到這些鉤子函數,緊接著就可以通過函數指針訪問。具體來說,首先要深入分析Contiki內核的結構,然后根據本文需求對Contiki原有的協議棧進行相應的修改,增添所需的額外功能,本設計要求至少要兼容IPv4網絡的通信。

    由于6LoWPAN是為支持IPv6而設計的,但當前仍有大量的設備只能運行IPv4協議,因此,本文在應用層定義了一個IPv6/IPv4適配器,其作用就是兼容IPv4協議同時還能驗證客戶端輸入指令的有效性。當邊界路由器初始化完畢后,該應用層適配器會創建一個IPv4套接字接口用于監聽IPv4連接。IPv4主機收到的命令會被適配器提取出來經分析并判定是否需要轉發到6LoWPAN網絡。如果命令無效或者目的節點失效,將會返回一個錯誤消息給IPv4主機。經過這一確認過程,包含該命令的IPv6數據包就被轉發給相應的6LoWPAN節點。與此同時,適配器還會啟動一個定時器,如果該命令的應答沒有在規定的時間內返回,同樣會返回一個錯誤信息給主機端;如果正常,適配器會收到6LoWPAN節點的數據,該數據會被提取出來,壓縮在IPv4報文中并發送給IPv4主機端。

    圖4描述了報文經由邊界路由器在IPv6客戶端和6LoWPAN網絡之間交換的通信過程。該通信過程分為兩個階段:IPv6客戶端發送命令給6LoWPAN節點以及6LoWPAN節點返回應答。邊界路由器主要完成壓縮、解壓縮、分片及重組等工作。

qrs4-t4.gif

    類似的,IPv4主機和6LoWPAN網絡之間的消息流程可以從圖5中看出。同樣可將其看成兩個階段:IPv4主機發送命令給6LoWPAN節點以及6LoWPAN節點返回應答。這里邊界路由器更像是一個服務器,等待IPv4來連接特定的端口,所有來自IPv4主機的命令都被轉交給邊界路由器而不是6LoWPAN節點。這些命令包含目的節點或節點ID號以及要執行的動作。它們被壓縮在IPv4數據包中并被遞交給IPv4/IPv6適配器,適配器會執行相應的動作。當發現命令是無效的,邊界路由器會發送一個錯誤消息給IPv4主機,避免再同6LoWPAN節點通信這一多余過程。

qrs4-t5.gif

4 邊界路由器功能驗證

    為了驗證6LoWPAN邊界路由器確實發揮了應有的作用,讓兩個6LoWPAN節點和6LoWPAN邊界路由器彼此相距10 m遠,6LoWPAN邊界路由器經以太網接口以有線方式接入Internet,6LoWPAN節點和6LoWPAN邊界路由器之間則通過無線方式連接。設定讓6LoWPAN節點以一定時間間隔循環向PC發送ASCII碼字節數據流,為了便于觀察效果,設定讓串口打印出相關信息,利用串口助手可以很方便地看到相關的數據。

4.1 連通性測試

    聯通性測試主要利用ping命令來測試PC和6LoWPAN邊界路由器的連通性。圖6所示為6LoWPAN邊界路由器啟動時獲取到的IPv4地址,其IPv4地址為172.23.10.177,PC的IPv4地址為172.23.10.134。圖7所示為在PC上利用ping命令測試的最終結果,可以看出數據包的往返時間較小,證明連通性較好。

qrs4-t6.gif

qrs4-t7.gif

4.2 數據通信測試

    在確定了6LoWPAN邊界路由器和PC之間較好的連通性后,就可以測試6LoWPAN節點和PC之間的數據交換。測試過程中,利用sokit軟件,設定從PC上向6LoWPAN節點發送“Hello World?鄞”字符串數據,利用抓包軟件wireshark進行抓包,整個過程如圖8和圖9所示。

qrs4-t8.gif

qrs4-t9.gif

    從圖中可以看出,在PC向6LoWPAN節點發送數據包的過程中,傳輸層的承載協議是UDP,成功抓取到了數據包的轉發過程。也從側面說明6LoWPAN邊界路由器發揮了協議轉換的作用。

5 結束語

    本文選取了CC2538 SoC作為6LoWPAN邊界路由器的硬件平臺的核心,在Contiki協議棧的基礎上,完成了6LoWPAN邊界路由器的設計,測試結果表明達到了預期的設計目標。所設計的6LoWPAN邊界路由器可以應用于無線傳感網絡應用中的多種場合,下一步計劃是將所設計的6LoWPAN邊界路由器應用到無線抄表上。

參考文獻

[1] Chen Yibo,Hou KunMean,Zhou Haiying,et al.6LoWPAN stacks:a survey[C].IEEE Conference Publications,2011.

[2] YoungKi Park,Ngoc-Thanh Dinh.A network monitoring system in 6LoWPAN networks[C].IEEE Conference Publications,2012.

[3] Dhananjay Singh,U.S.Tiwary.Global healthcare monitoring system using 6lowpan networks[C].IEEE Conference Publications,2009.

[4] Olfa Gaddour,Anis Koubaa.RPL in a nutshell:a survey[J].Computer Networks,2012,56(14).

[5] B.da Silva Campos,RODRIGUES J J,OLIVEIRA L M,et al.Design and construction of wireless sensor network gateway with IPv4/IPv6 support[C].2011 IEEE International Conference on Communications,Kyoto,Japan,2011.

[6] SHELBY Z,CHAKRABARTI S,NORDMARK E,et al.Neighbor discovery optimization for IPv6 over low-power wireless personal area networks(6LoWPANs),RFC 6775,2012.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩综合视频网址| 亚洲天堂成人在线观看| 久久综合一区二区| 欧美在线视频a| 国内在线观看一区二区三区| 久久色在线观看| 亚洲欧洲一区二区三区| 亚洲第一主播视频| 欧美日本簧片| 久久国产精品久久久| 国产一区二区三区久久悠悠色av| 久久精品噜噜噜成人av农村| 亚洲永久精品大片| 欧美亚洲在线观看| 在线精品亚洲| 激情六月婷婷综合| 欧美日韩国产综合视频在线观看中文 | 在线综合+亚洲+欧美中文字幕| 国产精品国产三级国产aⅴ浪潮| 午夜国产精品影院在线观看| 欧美制服丝袜第一页| 91久久精品日日躁夜夜躁国产| 欧美日韩在线播| 久久久精品久久久久| 日韩一区二区免费高清| 亚洲视频1区| 精品成人在线视频| 狠狠干综合网| 国产精品va在线播放| 久久免费国产| 亚洲香蕉成视频在线观看| 一区二区三区av| 欧美影片第一页| 久久av老司机精品网站导航| 亚洲国产高清在线观看视频| 一区二区冒白浆视频| 一区二区毛片| 在线播放视频一区| 国产精品视频网站| 欧美国产精品v| 久久精品国内一区二区三区| 久久精品国产99精品国产亚洲性色 | 欧美精品一区二区三区四区 | 久久久午夜视频| 麻豆国产精品va在线观看不卡| 亚洲欧美电影在线观看| 亚洲日本成人| 久久成人精品无人区| 亚洲高清免费视频| 亚洲美女av网站| 久久福利视频导航| 亚洲人成人77777线观看| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲综合视频1区| 久久精品国产99国产精品澳门| 另类天堂视频在线观看| 欧美日本一道本在线视频| 国产精品久久久久久久久久免费| 国产日韩在线视频| 欧美手机在线视频| 国产欧美一区二区精品性色| 国产精品a级| 国产一区二区av| 亚洲日本电影在线| 1024成人网色www| 亚洲精品中文字幕在线| 亚洲国产mv| 黄色成人在线观看| 亚洲三级电影在线观看| 亚洲激情电影中文字幕| 国产精品99久久99久久久二8| 欧美在线视频观看| 一区二区三区精品视频| 久久美女性网| 国产精品国产三级国产aⅴ浪潮| 一区在线电影| 亚洲一区激情| 亚洲午夜激情| 亚洲国产高清视频| 亚洲欧美视频一区| 欧美精品久久久久a| 国产亚洲欧美中文| 一区二区三区精品国产| 亚洲第一精品电影| 久久福利资源站| 亚洲在线观看免费视频| 蜜桃伊人久久| 国产精品专区第二| 国产伦理一区| 亚洲精品三级| 久久成人免费视频| 午夜精品久久久| 欧美日本在线看| 黄色日韩网站视频| 亚洲欧美在线一区二区| 亚洲欧美日韩国产成人| 欧美一区二区高清在线观看| 99精品欧美一区二区三区综合在线| 亚洲精品视频免费| 久久精品国产一区二区电影| 欧美三日本三级三级在线播放| 在线看不卡av| 久久大逼视频| 欧美在线免费一级片| 久久精品欧美日韩精品| 欧美三级乱人伦电影| 亚洲国产专区| 久久超碰97人人做人人爱| 欧美一区二区三区四区视频| 久久久久久久精| 国产精品视频自拍| 日韩视频免费观看| 亚洲免费成人av| 欧美成人国产| 国产精品伦一区| 国产日韩欧美在线播放不卡| 日韩西西人体444www| 亚洲影院污污.| 亚洲高清三级视频| 久久久久国产免费免费| 国产伦精品一区二区三区视频孕妇| 日韩写真视频在线观看| 日韩系列欧美系列| 欧美福利视频网站| 亚洲国产欧美一区二区三区同亚洲 | 欧美一区二区私人影院日本| 国产精品久久久久久久久久尿| 日韩午夜中文字幕| 亚洲性av在线| 国产精品久久久久一区二区三区共 | 裸体一区二区三区| 伊人婷婷久久| 亚洲黄色一区| 亚洲特黄一级片| 欧美日韩精品是欧美日韩精品| 亚洲精品你懂的| 这里只有精品丝袜| 久久精品麻豆| 国产综合第一页| 亚洲国产精品久久久久婷婷老年 | 国产精品成人午夜| 亚洲一区二区三区中文字幕在线| 午夜精品亚洲| 国产日本欧美视频| 久久精品国产第一区二区三区| 99综合精品| 欧美精品一区二区精品网| 亚洲裸体在线观看| 在线视频你懂得一区| 国产精品日韩电影| 亚洲欧美视频在线观看视频| 久久久久国产精品麻豆ai换脸| 一色屋精品亚洲香蕉网站| 亚洲人体偷拍| 欧美婷婷久久| 欧美一区不卡| 男人的天堂亚洲| 国产美女在线精品免费观看| 欧美一区二视频| 欧美成人精品一区二区三区| 日韩视频免费在线观看| 亚洲欧美日韩成人高清在线一区| 国产日韩欧美二区| 亚洲黄色有码视频| 欧美日韩黄视频| 亚洲综合欧美| 美女精品自拍一二三四| 亚洲美女视频在线观看| 先锋影院在线亚洲| 欧美日本二区| 亚洲网站视频| 久久夜色精品国产亚洲aⅴ| 亚洲经典在线看| 午夜精品视频网站| **网站欧美大片在线观看| 亚洲在线免费| 激情六月婷婷综合| 亚洲一区二区三区在线播放| 国产欧美日韩在线 | 亚洲尤物精选| 国外精品视频| 在线亚洲一区| 国产亚洲制服色| 一本色道久久综合亚洲精品不卡| 国产日韩亚洲欧美精品| 99热在线精品观看| 国产手机视频精品| 一区二区三区日韩欧美精品| 国产亚洲美州欧州综合国| 一区二区三区导航| 国产一区二区三区在线观看免费 | 久久成人国产精品| 亚洲三级性片| 久久久精品国产免费观看同学| 日韩亚洲欧美一区二区三区| 久久视频精品在线| 亚洲一区精品电影| 欧美国产日韩精品免费观看| 欧美一区二区成人6969| 欧美日韩在线播放三区|