專利名稱:基于IPv6的物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)主機的通信方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于IPv6的物聯(lián)網(wǎng)輕量級終端與互聯(lián)網(wǎng)主機通訊方法,屬于物聯(lián)網(wǎng)終端應(yīng)用技術(shù)領(lǐng)域。
背景技術(shù):
隨著物聯(lián)網(wǎng)產(chǎn)業(yè)的發(fā)展,物聯(lián)網(wǎng)應(yīng)用的數(shù)量越來越多,覆蓋范圍也越趨廣泛。物聯(lián)網(wǎng)終端表現(xiàn)出數(shù)量多,覆蓋范圍廣,密度高;電池供電,能量資源有限的特點。針對這些特點,針對應(yīng)用分別對節(jié)點的電路集成、低功耗能量管理、節(jié)點一體化、輕量級網(wǎng)絡(luò)協(xié)議棧等方面進行了設(shè)計與研究。而目前對物聯(lián)網(wǎng)終端的研究基本上是由應(yīng)用出發(fā),針對不同應(yīng)用研發(fā)不同的終端,從而促使物聯(lián)網(wǎng)應(yīng)用成為ー個個“孤島”,無法進行行業(yè)間的應(yīng)用與配置。
同時針對物聯(lián)網(wǎng)的這些特點,61owpan技術(shù)的研究也日漸受到關(guān)注,它采用IPv6進行編碼,能夠提供更多的地址空間;鏈路層同時采用802. 15. 4標準對數(shù)據(jù)包進行傳輸,兼具了尋址范圍廣泛同時滿足物聯(lián)網(wǎng)輕量級尋址的要求。然而采用61owpan技術(shù)支撐物聯(lián)網(wǎng),同時也要求物聯(lián)網(wǎng)終端的設(shè)計能夠支撐61owpan技術(shù)的應(yīng)用。在IETF標準組織所制定RFC標準文獻中,詳細規(guī)范了 61owpan適配層的技術(shù)細節(jié),但在將其61owpan協(xié)議棧載入物聯(lián)網(wǎng)終端,并最終用干物聯(lián)網(wǎng)應(yīng)用的過程中,依然存在較多的技術(shù)難點是標準中尚未解決的。其中對于地址壓縮過程中context的管理機制,IETF標準組織在其鄰居發(fā)現(xiàn)協(xié)議中給出了一套較為詳細的分發(fā)與更新方案,但是其中對于終端在所發(fā)送的報文目的地址的context未知情況的設(shè)計,使得搭載有61owpan協(xié)議棧的物聯(lián)網(wǎng)終端將無法壓縮該主機的地址,直到前一次分發(fā)的context表中的lifetime耗盡,才能等待網(wǎng)關(guān)的再次分發(fā)。這種設(shè)計使得終端節(jié)點每次給該主機發(fā)送的分片數(shù)都有所増加,不僅占用了該終端節(jié)點的處理器與緩存空間,甚至能夠影響到整個網(wǎng)絡(luò)的傳輸效率與能量消耗。①相關(guān)現(xiàn)有技術(shù)一《一種基于物聯(lián)網(wǎng)的網(wǎng)絡(luò)智能終端》(陳迎東.ー種基于物聯(lián)網(wǎng)的網(wǎng)絡(luò)智能終端[Z]. CN102006209A: ,2011. )0該終端的設(shè)計特點包括(I)是ー種面向家庭和S0H0用戶設(shè)計的滿足三網(wǎng)合一需求的光纖網(wǎng)絡(luò)終端設(shè)備;(2)包括顯示輸入模塊、通訊接ロ模塊、智能控制模塊和中央處理器;(3)基干物聯(lián)網(wǎng),綜合利用數(shù)字技術(shù)、網(wǎng)絡(luò)技術(shù)、EPON光通信技術(shù)、RFID技術(shù)等高新技術(shù)手段,通過電腦、電視、手機三種媒介形式深入家庭、個人等民眾身邊,為民眾提供全面的物聯(lián)生活服務(wù),能夠滿足人們從基本通信服務(wù)到多媒體生活等全面的家庭智能化、信息化生活需求?,F(xiàn)有技術(shù)ー的缺點
基干物聯(lián)網(wǎng)的網(wǎng)絡(luò)智能終端是為家庭應(yīng)用而設(shè)計的,與很多研究機構(gòu)的設(shè)計ー樣,為不同的應(yīng)用設(shè)計不同的物聯(lián)網(wǎng)終端節(jié)點,不具備普適性。其次,該設(shè)計突出智能化,強調(diào)打印機,顯示屏等外設(shè)的連接與應(yīng)用,沒有針對物聯(lián)網(wǎng)終端特點而論。最后,該終端的設(shè)計對網(wǎng)絡(luò)帶寬,通信機制有著較高的要求,它的普及與實現(xiàn)還需等待基礎(chǔ)設(shè)施的更新與建設(shè)。②相關(guān)現(xiàn)有技術(shù)ニ 61owpan傳感器節(jié)點的設(shè)計與實現(xiàn)(王曉喃,高德民.6LoWPAN傳感器節(jié)點的設(shè)計與實現(xiàn)[J].傳感技術(shù)學(xué)報,2010,(10).)。
該設(shè)計考慮到物聯(lián)網(wǎng)終端與IPv6網(wǎng)絡(luò)的互通,傳感器網(wǎng)絡(luò)采用61owpan的體系架構(gòu),鏈路層使用802. 15. 4協(xié)議。從硬件和軟件的角度是物聯(lián)網(wǎng)終端實現(xiàn)以下兩個功能1)實現(xiàn)精簡的IPv6網(wǎng)絡(luò)協(xié)議;(2)實現(xiàn)IPv6數(shù)據(jù)報文在IEEE802. 15. 4幀的傳輸。硬件設(shè)計考慮了處理器和射頻芯片以及寄存器與緩存之間如何讀寫數(shù)據(jù)幀的過程。軟件設(shè)計則定義了三層架構(gòu)硬件抽象層,適配層和應(yīng)用層。硬件抽象層的任務(wù)是接收數(shù)據(jù)幀和封裝數(shù)據(jù)幀;適配層的任務(wù)是分片與重組;應(yīng)用層則定義了 IPv6控制域?,F(xiàn)有技術(shù)ニ的缺點
該方案分別從硬件與軟件的角度對節(jié)點進行了設(shè)計,可是忽略了兩者之間的聯(lián)系問題。其次,軟件設(shè)計部分的適配層設(shè)計參考了 2007年的6Iowpan標準草稿,現(xiàn)在6Iowpan-15已經(jīng)有了更新。同時在適配層的設(shè)計中方案只提到了分片與重組而忽略了對首部的壓縮方式。最后,本方案的考慮背景是傳感器網(wǎng)絡(luò),其應(yīng)用范圍與特點與物聯(lián)網(wǎng)存在一定的區(qū)別,該方案對終端節(jié)點的設(shè)計不能完全滿足物聯(lián)網(wǎng)的需求。
③相關(guān)現(xiàn)有技術(shù)三ー種基于物聯(lián)網(wǎng)的無線移動RFID數(shù)據(jù)采集終端設(shè)備及設(shè)計方法(簡鐘,宋元,賀虎,趙小剛,饒曉燕.ー種基于物聯(lián)網(wǎng)的無線移動RFID數(shù)據(jù)采集終端設(shè)備及設(shè)計方法[Z]. CN101894280A: ,2010.)。該方案的設(shè)計方法是將RFID中間件數(shù)據(jù)處理模塊整合到讀寫器上,使讀寫器在整個系統(tǒng)中的作用功能增強,減少系統(tǒng)對中間件數(shù)據(jù)處理模塊的技術(shù)依賴。硬件采用CAN總線模式,將相關(guān)芯片集成,軟件采用嵌入式Java應(yīng)用程序和嵌入式Java虛擬機KVM,操作系統(tǒng)采用嵌入式操作系統(tǒng),嵌入式Java應(yīng)用程序符合EPCglobal的ALE (ApplicationLevel Events)規(guī)范,并結(jié)合 JINI (Java Intelligent、Network Infrastructure)月艮務(wù)組件,以支持無線傳感器網(wǎng)絡(luò)功能。該方案的優(yōu)勢是適用于物聯(lián)網(wǎng)大規(guī)模應(yīng)用的普及,同時最大的創(chuàng)新之處是為物聯(lián)網(wǎng)中的射頻識別(RFID)裝置提供了一個對識讀的海量RFID數(shù)據(jù)進行去冗余化的處理?,F(xiàn)有方案三的缺點
該方案的設(shè)計集中優(yōu)化了 RFID的數(shù)據(jù)冗余處理問題,因此也只涉及了物聯(lián)網(wǎng)眾多終端節(jié)點類型中的ー種,不能適用于其他物聯(lián)網(wǎng)感應(yīng)終端的設(shè)計。其次,該方案將中間件數(shù)據(jù)處理模塊整合到讀寫器上,這樣限制了此類讀寫器必須是有線電源連接的方式供電,否則將會有嚴重的能量供應(yīng)不足的問題存在。最后,該方案的設(shè)計沒有涉及終端的編碼與尋址方式,可行性有待加強。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有物聯(lián)網(wǎng)應(yīng)用終端節(jié)點能量有限、數(shù)量多、處理能力弱的技術(shù)問題,提出一種基于IPv6的物聯(lián)網(wǎng)輕量級終端與互聯(lián)網(wǎng)主機通訊方法,具有輕量級,網(wǎng)絡(luò)穩(wěn)定性好,耗能低,適用于大型物聯(lián)網(wǎng)應(yīng)用的特點。本發(fā)明為解決上述技術(shù)問題采用以下技術(shù)方案
一種基于IPv6的物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)主機的通信方法,在該通信方法中,物聯(lián)網(wǎng)終端的鏈路層采用IEEE的802. 15. 4標準與網(wǎng)關(guān)進行數(shù)據(jù)通信,網(wǎng)關(guān)與互聯(lián)網(wǎng)主機之間通過基于IPv6協(xié)議的以太網(wǎng)進行數(shù)據(jù)通信;所述物聯(lián)網(wǎng)終端的網(wǎng)絡(luò)層由61owpan協(xié)議與IPv6協(xié)議共同支撐,即在物聯(lián)網(wǎng)終端的協(xié)議棧中加入61owpan協(xié)議對數(shù)據(jù)包進行適配;所述通信方法包括互聯(lián)網(wǎng)主機訪問物聯(lián)網(wǎng)終端的流程,以及物聯(lián)網(wǎng)終端訪問互聯(lián)網(wǎng)主機的流程;其中
所述互聯(lián)網(wǎng)主機訪問物聯(lián)網(wǎng)終端的流程具體如下
A,當網(wǎng)關(guān)與物聯(lián)網(wǎng)終端已知互聯(lián)網(wǎng)主機的上下文信息context時,步驟如下
步驟A01,由互聯(lián)網(wǎng)主機發(fā)送數(shù)據(jù)請求報文給網(wǎng)關(guān),網(wǎng)關(guān)將該數(shù)據(jù)請求報文中包含的互聯(lián)網(wǎng)主機的IPv6地址根據(jù)其上下文信息context壓縮成互聯(lián)網(wǎng)主機的61owpan地址,生成61owpan數(shù)據(jù)包發(fā)送至物聯(lián)網(wǎng)終端;
步驟A02,物聯(lián)網(wǎng)終端根據(jù)其保存的上下文表項查詢到該互聯(lián)網(wǎng)主機的上下文信息
context,對互聯(lián)網(wǎng)主機的61owpan地址進行有效的地址解壓縮,經(jīng)過61owpan協(xié)議將得到的61owpan數(shù)據(jù)包解壓縮成原始IPv6數(shù)據(jù)包,解析互聯(lián)網(wǎng)主機發(fā)送來的數(shù)據(jù)請求報文信息;
B,當網(wǎng)關(guān)與物聯(lián)網(wǎng)終端均未知互聯(lián)網(wǎng)主機的上下文信息context時,步驟如下
步驟B01,網(wǎng)絡(luò)初始化,物聯(lián)網(wǎng)終端完成全局可路由IPv6地址的注冊,互聯(lián)網(wǎng)主機已知物聯(lián)網(wǎng)終端的IPv6地址;
步驟B02,互聯(lián)網(wǎng)主機將數(shù)據(jù)請求封裝在UDP數(shù)據(jù)包中,并設(shè)定源地址與目的地址,經(jīng)由IPV6以太網(wǎng)發(fā)送給網(wǎng)關(guān);
步驟B03,網(wǎng)關(guān)對數(shù)據(jù)包進行地址解析,分析到目的地址為物聯(lián)網(wǎng)終端的IPv6地址,調(diào)用uip進程,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的6Iowpan地址;
步驟B04,網(wǎng)關(guān)對互聯(lián)網(wǎng)主機的Ipv6地址前綴進行截取,生成互聯(lián)網(wǎng)主機上下文信息context并將其存入網(wǎng)關(guān)的上下文表項中,根據(jù)該互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機的IPv6地址進行壓縮得到互聯(lián)網(wǎng)主機的61owpan地址;
步驟B05,根據(jù)物聯(lián)網(wǎng)終端的61owpan地址、互聯(lián)網(wǎng)主機的61owpan地址構(gòu)造61owpan數(shù)據(jù)包;
步驟B06,將步驟B05中所述61owpan數(shù)據(jù)包經(jīng)過IEEE802. 15. 4鏈路封裝后通過網(wǎng)關(guān)的無線射頻接ロ發(fā)送至物聯(lián)網(wǎng)終端;
步驟B07,物聯(lián)網(wǎng)終端收到該數(shù)據(jù)包后經(jīng)由IEEE802. 15. 4鏈路層解析得到61owpan數(shù)據(jù)包;
步驟B08,物聯(lián)網(wǎng)終端查詢上下文表項,向網(wǎng)關(guān)發(fā)送RS請求,請求網(wǎng)關(guān)發(fā)送由步驟B04得到的互聯(lián)網(wǎng)主機上下文信息context ;網(wǎng)關(guān)將該互聯(lián)網(wǎng)主機上下文信息context通過RA消息發(fā)送給物聯(lián)網(wǎng)終端;物聯(lián)網(wǎng)終端接收到RA消息后,記錄該互聯(lián)網(wǎng)主機上下文信息context,存儲至其自身的上下文表項中;
步驟B09,物聯(lián)網(wǎng)終端獲取該互聯(lián)網(wǎng)主機的上下文信息context后,經(jīng)過61owpan協(xié)議將步驟B07得到的61owpan數(shù)據(jù)包解壓縮成原IPv6數(shù)據(jù)包;
步驟B10,物聯(lián)網(wǎng)終端分析到UDP封裝的數(shù)據(jù)請求信息,進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包,執(zhí)行下述步驟C03至步驟C06將數(shù)據(jù)包通過網(wǎng)關(guān)發(fā)送給互聯(lián)網(wǎng)主機;
所述物聯(lián)網(wǎng)終端訪問IPv6互聯(lián)網(wǎng)主機的流程如下
C,當網(wǎng)關(guān)上下文表項中已知物聯(lián)網(wǎng)終端需主動上報的互聯(lián)網(wǎng)主機上下文信息context時,包括以下步驟步驟C01,在設(shè)置61owpan網(wǎng)絡(luò)時,為物聯(lián)網(wǎng)終端配置其所要主動上報的互聯(lián)網(wǎng)主機的IPv6地址以及上下文信息context ;
步驟C02,物聯(lián)網(wǎng)終端進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包;
步驟C03,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的61owpan地址;根據(jù)該互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機的IPv6地址進行壓縮得到互聯(lián)網(wǎng)主機的61o wpan地址;
步驟C04,根據(jù)物聯(lián)網(wǎng)終端的61owpan地址、互聯(lián)網(wǎng)主機的61owpan地址以及步驟C02所采集的數(shù)據(jù)封裝成61owpan數(shù)據(jù)包;
步驟C05,物聯(lián)網(wǎng)終端將61owpan數(shù)據(jù)包通過IEEE802. 15. 4協(xié)議封裝成幀,通過無線網(wǎng)絡(luò)發(fā)送至網(wǎng)關(guān);
步驟C06,網(wǎng)關(guān)通過對數(shù)據(jù)包解析后得到61owpan數(shù)據(jù)包,通過查詢自身的上下文表項,根據(jù)物聯(lián)網(wǎng)終端上下文信息context,將物聯(lián)網(wǎng)終端的61owpan地址解壓縮為物聯(lián)網(wǎng)終端的IPv6地址;根據(jù)互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機61owpan地址解壓縮為互聯(lián)網(wǎng)主機IPv6地址,然后根據(jù)物聯(lián)網(wǎng)終端的IPv6地址、互聯(lián)網(wǎng)主機Ipv6地址構(gòu)造Ipv6數(shù)據(jù)包;
步驟C07,網(wǎng)關(guān)通過Ipv6網(wǎng)絡(luò)將該Ipv6數(shù)據(jù)包發(fā)送給互聯(lián)網(wǎng)主機;
D,當網(wǎng)關(guān)上下文表項中未知物聯(lián)網(wǎng)終端需主動上報的互聯(lián)網(wǎng)主機上下文信息context,具體包括以下步驟
步驟D01,物聯(lián)網(wǎng)終端進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包;
步驟D02,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的61owpan地址;將物聯(lián)網(wǎng)終端的61owpan地址作為源地址、互聯(lián)網(wǎng)主機IPV6地址作為目的地址構(gòu)造61owpan數(shù)據(jù)包;
步驟D03,物聯(lián)網(wǎng)終端將61owpan數(shù)據(jù)包封裝成IEEE802. 15. 4數(shù)據(jù)包發(fā)送至網(wǎng)關(guān);步驟D04,網(wǎng)關(guān)解析IEEE802. 15. 4數(shù)據(jù)包得到61owpan數(shù)據(jù)包,獲取該數(shù)據(jù)包中的互聯(lián)網(wǎng)主機IPV6地址,對互聯(lián)網(wǎng)主機的Ipv6地址前綴進行截取,生成互聯(lián)網(wǎng)主機上下文信息context并將其存入網(wǎng)關(guān)的上下文表項中;
步驟D05,根據(jù)物聯(lián)網(wǎng)終端上下文信息context,將物聯(lián)網(wǎng)終端的61owpan地址解壓縮為物聯(lián)網(wǎng)終端的IPv6地址,然后根據(jù)物聯(lián)網(wǎng)終端的IPv6地址、互聯(lián)網(wǎng)主機Ipv6地址構(gòu)造IPV6數(shù)據(jù)包,將該IPV6數(shù)據(jù)包轉(zhuǎn)發(fā)至互聯(lián)網(wǎng)主機。本發(fā)明采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果
本發(fā)明所設(shè)計的物聯(lián)網(wǎng)終端能夠適用于所有采用61owpan網(wǎng)絡(luò)的物聯(lián)網(wǎng)應(yīng)用,同時有利于推動61owpan網(wǎng)絡(luò)應(yīng)用業(yè)務(wù)的發(fā)展與集成。物聯(lián)網(wǎng)與無線傳感器網(wǎng)絡(luò)最主要的區(qū)別即能夠?qū)崿F(xiàn)與互聯(lián)網(wǎng)的聯(lián)通,在物聯(lián)網(wǎng)終端中配置61owpan協(xié)議,能夠?qū)崿F(xiàn)其在Iowpan域內(nèi)通過802. 15. 4協(xié)議發(fā)送輕量級的數(shù)據(jù)包。本發(fā)明所提出的在物聯(lián)網(wǎng)終端實現(xiàn)context主動更新機制,并將該機制用于互聯(lián)網(wǎng)中的IPv6主機主動訪問Iowpan域內(nèi)物聯(lián)網(wǎng)終端的流程中,同時提出了物聯(lián)網(wǎng)終端主動上報數(shù)據(jù)給互聯(lián)網(wǎng)主機的流程,解決了 Iowpan域內(nèi)物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)中主機的互聯(lián)互通問題。
圖I是本發(fā)明的物聯(lián)網(wǎng)終端實現(xiàn)模塊示意圖。圖2是基于IPv6的終端節(jié)點與IPv6主機通信協(xié)議棧系統(tǒng)示意圖。圖3是物聯(lián)網(wǎng)終端、網(wǎng)關(guān)與PC主機之間的通信流圖。圖4是6C0選項格式示意圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的技術(shù)方案做進ー步的詳細說明
I、物聯(lián)網(wǎng)終端節(jié)點模塊設(shè)計。如圖I所示,本發(fā)明的物聯(lián)網(wǎng)終端共包括五個主要模塊微處理器模塊、數(shù)據(jù)傳輸模塊、數(shù)據(jù)采集模塊、存儲模塊以及電源管理模塊。微處理器模塊要求承載支持多任務(wù)的嵌入式操作系統(tǒng),其中包括uIPv6協(xié)議棧,能夠支持IPv6通信;同時它連接存儲模塊與電源管理模塊。存儲模塊要求包含一定字節(jié)的片內(nèi)存儲器,外部提供接ロ可配置一定容量的flash閃存;電源管理模塊要求具有低功耗的特點,延長節(jié)點的工作時間,同時要求不需外接電源。數(shù)據(jù)傳輸模塊要求具有無限射頻收發(fā)系統(tǒng),其性能穩(wěn)定同時功耗低,符合802. 15. 4標準,可確保短距離通信的有效性和可靠性。集成該數(shù)據(jù)傳輸模塊的物聯(lián)網(wǎng)終端節(jié)點采用IPv6協(xié)議實現(xiàn)多點間的通信。數(shù)據(jù)采集模塊包括感應(yīng)單元與A/D轉(zhuǎn)換器,其感應(yīng)形式可以多樣化,適應(yīng)不同類型感知數(shù)據(jù)的采集。2、物聯(lián)網(wǎng)終端基于IPv6和802. 15. 4協(xié)議與互聯(lián)網(wǎng)中主機互發(fā)數(shù)據(jù)的方法。在輕量級的物聯(lián)網(wǎng)終端設(shè)計中,最重要的能夠?qū)崿F(xiàn)其輕量級特點的是微處理器中需要加載能夠運行uIPv6協(xié)議棧的操作系統(tǒng)。而61owpan的網(wǎng)絡(luò)架構(gòu)已經(jīng)日漸成熟,其協(xié)議也正在逐步完善,其最大的特點就是功耗低,同時源碼所占空間小,解決了物聯(lián)網(wǎng)終端處理器資源能量有限的問題。本發(fā)明在物聯(lián)網(wǎng)終端協(xié)議棧中加入61owpan協(xié)議對數(shù)據(jù)包進行適配,下面根據(jù)附圖2詳細說明基于IPv6的終端節(jié)點與IPv6主機通信協(xié)議棧系統(tǒng)。如圖2所示,底層的物理層與鏈路層采用IEEE的802. 15. 4標準,6Iowpan協(xié)議與IPv6協(xié)議共同支撐網(wǎng)絡(luò)層,傳輸層采用UDP與ICMP協(xié)議。與傳統(tǒng)IP協(xié)議棧相比,該協(xié)議棧在網(wǎng)絡(luò)層與鏈路層之間加了ー個適配層,即61owpan協(xié)議。這是因為IPv6的載荷為1280byte,而802. 15. 4幀的載荷為127個字節(jié),因此通過61owpan協(xié)議將IPv6數(shù)據(jù)包適配后符合802. 15. 4幀格式的發(fā)送標準。同時61owpan最普遍的傳輸層協(xié)議是UDP協(xié)議,與IP協(xié)議棧相比,由于性能、效率和復(fù)雜性等原因,TCP協(xié)議一般不用于61owpan傳輸層。ICMPv6協(xié)議主要用于控制消息,比如ICMP重放、目的不可達以及鄰居發(fā)現(xiàn)消息?;贗Pv6的輕量級物聯(lián)網(wǎng)終端其最終能力需要達到與IPV6網(wǎng)絡(luò)的正常通信,同時又能夠正常的實行61owpan適配層的基本功能,但是當IPv6網(wǎng)絡(luò)中的任意一臺主機想要查詢Iowpan域內(nèi)任意ー個終端數(shù)據(jù)時,這臺主機的IP地址是不被網(wǎng)關(guān)及物聯(lián)網(wǎng)終端所已知的。則該IPV6地址的context信息也不被所要查詢的終端已知。但根據(jù)上述context的基本功能可知,在Iowpan域中的終端未知其發(fā)送數(shù)據(jù)包IPv6地址context的情況下,將不能對其地址進行壓縮。而在IETF所提出的標準中也未對該情況進行設(shè)計處理,因此圖3給出了描述此情景下的物聯(lián)網(wǎng)終端、網(wǎng)關(guān)與PC主機之間的通信流圖,其中所設(shè)計的基于IPv6的輕量級物聯(lián)網(wǎng)終端context主動更新機制將有效的利用context查詢與主動索要功能及時更新自身的context存儲表,提高與Internet網(wǎng)絡(luò)中主機的通信效率,降低原本標準中設(shè)計機制的網(wǎng)絡(luò)載荷;基于61owpan協(xié)議IPv6主機主動訪問物聯(lián)網(wǎng)終端的方法將有效利用context的更新機制與物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端進行有效通信;基于61owpan協(xié)議物聯(lián)網(wǎng)終端訪問IPv6主機的方法可以實現(xiàn)基于IPv6的輕量級物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)環(huán)境下的IPv6主機實現(xiàn)互聯(lián)互通。下面將根據(jù)圖3分別詳細介紹這三種機制。A,基于61owpan的物聯(lián)網(wǎng)終端context主動更新機制
Context攜帯用于61owpan地址壓縮的前綴信息由網(wǎng)關(guān)獲取并配置、通過RA消息的6C0選項分發(fā)到域內(nèi)路由器,再由路由器分發(fā)到各主機,從而使網(wǎng)絡(luò)內(nèi)所有61owpan節(jié)點共享相同的地址前綴信息。因此,在保證域內(nèi)各節(jié)點context的一致性的基礎(chǔ)上如何高效的利用context對任意一域外的主機進行地址壓縮是本終端實現(xiàn)的關(guān)鍵所在。 ー個真正的物聯(lián)網(wǎng)系統(tǒng)需要能夠使無線傳感器網(wǎng)絡(luò)與internet互聯(lián)互通,至少實現(xiàn)三個實體間的基本通信,即無線傳感器終端、物聯(lián)網(wǎng)網(wǎng)關(guān)以及internet上的主機(PC機或是移動終端)。context采用人工配置的方式將固定的PC地址前綴寫入6C0選項中發(fā)給物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端,如圖4所示為6C0選項的基本格式,網(wǎng)關(guān)主要維護context信息的四個主要字段
1、C位標識了是否用此context進行壓縮,C=O表示該context只能用于解壓縮,C=I表示既用于壓縮也可用于解壓縮;
2、標識context序號的CID字段,用于壓縮與解壓縮;
3、validlifetime標識context有效生存期,當物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端保存的context快過期時向網(wǎng)關(guān)重發(fā)單播RS消息;
4、contextprefix攜帶地址前綴信息。首先是context的獲取方式需要實現(xiàn)網(wǎng)關(guān)自適應(yīng),網(wǎng)關(guān)需要獲取與物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端交互的外網(wǎng)IPv6地址前綴,主要從兩方面考慮一方面是在物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端已知所發(fā)送主機IP地址context的情況下,由物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端發(fā)起的外網(wǎng)通信請求,此時61owpan首部中的目的地址是完整的IPv6地址,數(shù)據(jù)包到達網(wǎng)關(guān)時,網(wǎng)關(guān)根據(jù)完整的IPv6地址獲取其前綴信息,存入context表項中,同時進行地址轉(zhuǎn)換,將發(fā)送請求經(jīng)路由發(fā)送給外網(wǎng)主機;另一方面由PC發(fā)起對物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端的訪問吋,網(wǎng)關(guān)需要對其地址進行前綴截取并存入context表項中,并將數(shù)據(jù)請求轉(zhuǎn)發(fā)給終端節(jié)點,終端節(jié)點根據(jù)接收到的數(shù)據(jù)請求查詢源地址的context,在context未知的情況下,向網(wǎng)關(guān)發(fā)出RS請求,即向網(wǎng)關(guān)請求該主機源地址的context信息,網(wǎng)關(guān)則將剛剛存儲下的context信息通過RA消息再發(fā)回給終端節(jié)點,接收到RA消息后,終端節(jié)點將此context值記錄入自己的context表中,并將所發(fā)送數(shù)據(jù)包的目的地址進行壓縮,對數(shù)據(jù)包進行分片后將數(shù)據(jù)包發(fā)送給網(wǎng)關(guān),由網(wǎng)關(guān)進行協(xié)議轉(zhuǎn)換后再發(fā)回給外網(wǎng)主機C。關(guān)于context的管理與分發(fā)機制,61owpan鄰居發(fā)現(xiàn)協(xié)議給出了一個較為靈活全面的機制,網(wǎng)關(guān)充分利用C位的標記功能,保證C=O的context值遍歷整個61owpan域時再將C位置I。這里的保證依據(jù)是ー個由人工設(shè)定的全局變量MIN_CONTEXT_CHANGE_DELAY,根據(jù)網(wǎng)絡(luò)速率與61owpan域覆蓋范圍測試RA消息遍歷整個網(wǎng)絡(luò)而得到的最小時延。即在這個時延內(nèi)保證了同一 RA消息已通過多跳拓撲分發(fā)至61owpan域內(nèi)的姆ー個節(jié)點。此外同一 CID的前綴信息也會面臨版本更新的需求,網(wǎng)關(guān)將通過三個步驟實現(xiàn)context的無差別更新與分發(fā)首先,將舊版本context所對應(yīng)的C位清O通過RA消息分發(fā)出去,經(jīng)過最小時延再進行第二歩,即將新版本的context前綴覆蓋舊版本的前綴信息,同時C位依然為0,同樣在RA消息發(fā)出并經(jīng)過最小時延后進入第三歩,即將C位置I。這樣就保證了整個域內(nèi)地址壓縮的節(jié)點與解壓縮的節(jié)點獲取的context的一致性。且復(fù)雜的context管理機制都在網(wǎng)關(guān)中實現(xiàn),保證了傳感終端節(jié)點的低消耗。B,基于61owp an協(xié)議IPv6主機訪問物聯(lián)網(wǎng)終端的方法
互聯(lián)網(wǎng)中IPv6主機主動發(fā)起對物聯(lián)網(wǎng)終端的訪問主要分為兩種情況ー種是在該主機的context是網(wǎng)關(guān)與物聯(lián)網(wǎng)終端已知的,則主機發(fā)送給網(wǎng)關(guān)的數(shù)據(jù)請求報文,網(wǎng)關(guān)均可以進行有效的地址壓縮與61owpan數(shù)據(jù)包的正常發(fā)送,物聯(lián)網(wǎng)終端A也可以根據(jù)自己的context表查詢到該主機的地址前綴,進行有效的地址解壓縮并發(fā)送數(shù)據(jù)應(yīng)答報文。另ー種情況是網(wǎng)關(guān)與物聯(lián)網(wǎng)終端均未知該主機C的context,而本次會話是由主機C主動發(fā)起的。經(jīng)過網(wǎng)絡(luò)初始化階段,節(jié)點A完成全局可路由IPv6地址IP(A)的注冊,主機C已知節(jié)點A的地址。接下來將通過IP(A)與主機C進行交互。本系統(tǒng)在數(shù)據(jù)傳輸過程采用UDP協(xié)議,實現(xiàn)UDP首部的壓縮與解壓縮。不實現(xiàn)復(fù)雜的應(yīng)用層協(xié)議,而是采用最簡單的請求——回復(fù)機制完傳感器的數(shù)據(jù)采集與傳輸(如圖2)。圖2中虛線表示本系統(tǒng)各節(jié)點網(wǎng)關(guān)協(xié)議棧以及傳輸udp數(shù)據(jù)時協(xié)議解析路線首先由主機C將數(shù)據(jù)請求封裝在UDP數(shù)據(jù)包中,設(shè)定源地址與目的地址,經(jīng)由IPV6以太網(wǎng)發(fā)送給網(wǎng)關(guān),網(wǎng)關(guān)對數(shù)據(jù)包進行地址解析,分析到目的地址為IP(A),調(diào)用uip進程,將IPv6首部進行壓縮得到61owpan數(shù)據(jù)包,其中源、目的地址通過contextA、contextC壓縮成61owpan地址6L(C), 6L(A),最后61owpan數(shù)據(jù)包經(jīng)過IEEE802. 15.4鏈路封裝后通過無線射頻接ロ發(fā)送出去。物聯(lián)網(wǎng)終端物聯(lián)網(wǎng)終端A收到經(jīng)由IEEE802. 15. 4鏈路層解析后的61owpan數(shù)據(jù)包。經(jīng)過61owpan協(xié)議解壓縮成原IPv6數(shù)據(jù)包,源、目的地址分別通過contextA、contextC解壓縮為IP(C),IP(A)。分析到UDP封裝的數(shù)據(jù)請求信息,進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包,此時源IPv6地址與目的地址分別為IP (A), IP (C) ο經(jīng)過61owpan層之后變?yōu)?L(A),6L(C)。數(shù)據(jù)包通過IEEE802. 15. 4無線網(wǎng)絡(luò)到達網(wǎng)關(guān)B時通過與接收相反的步驟進行協(xié)議轉(zhuǎn)換與地址轉(zhuǎn)換(IPv6地址->61owpan地址),路由選擇后發(fā)至主機C。C,基于61owpan協(xié)議物聯(lián)網(wǎng)終端訪問IPv6主機的方法
物聯(lián)網(wǎng)終端主動上報數(shù)據(jù)給IPv6網(wǎng)絡(luò)中的主機,所要解決的最主要的問題是所上報主機的IPv6地址如何獲取。在這種情況下,一般物聯(lián)網(wǎng)終端需要定時地將所采集到的數(shù)據(jù)信息上傳給服務(wù)器,其數(shù)據(jù)信息量大,一般也較為重復(fù),因此可以為一定范圍內(nèi)的物聯(lián)網(wǎng)終端配置相同的服務(wù)器IPv6地址,在設(shè)置61owpan網(wǎng)絡(luò)吋,為物聯(lián)網(wǎng)終端配置其所要主動上報的服務(wù)器IPv6地址,在這種情況下,其數(shù)據(jù)的主動上報過程如圖3中所示的context已知情況下數(shù)據(jù)傳輸過程一致。
權(quán)利要求
1.一種基于IPv6的物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)主機的通信方法,在該通信方法中,物聯(lián)網(wǎng)終端的鏈路層采用IEEE的802. 15. 4標準與網(wǎng)關(guān)進行數(shù)據(jù)通信,網(wǎng)關(guān)與互聯(lián)網(wǎng)主機之間通過基于IPv6協(xié)議的以太網(wǎng)進行數(shù)據(jù)通信;其特征在于所述物聯(lián)網(wǎng)終端的網(wǎng)絡(luò)層由6Iowpan協(xié)議與IPv6協(xié)議共同支撐,即在物聯(lián)網(wǎng)終端的協(xié)議棧中加入61owpan協(xié)議對數(shù)據(jù)包進行適配;所述通信方法包括互聯(lián)網(wǎng)主機訪問物聯(lián)網(wǎng)終端的流程,以及物聯(lián)網(wǎng)終端訪問互聯(lián)網(wǎng)主機的流程;其中 所述互聯(lián)網(wǎng)主機訪問物聯(lián)網(wǎng)終端的流程具體如下 A,當網(wǎng)關(guān)與物聯(lián)網(wǎng)終端已知互聯(lián)網(wǎng)主機的上下文信息context時,步驟如下 步驟A01,由互聯(lián)網(wǎng)主機發(fā)送數(shù)據(jù)請求報文給網(wǎng)關(guān),網(wǎng)關(guān)將該數(shù)據(jù)請求報文中包含的互聯(lián)網(wǎng)主機的IPv6地址根據(jù)其上下文信息context壓縮成互聯(lián)網(wǎng)主機的61owpan地址,生成61owpan數(shù)據(jù)包發(fā)送至物聯(lián)網(wǎng)終端; 步驟A02,物聯(lián)網(wǎng)終端根據(jù)其保存的上下文表項查詢到該互聯(lián)網(wǎng)主機的上下文信息context,對互聯(lián)網(wǎng)主機的61owpan地址進行有效的地址解壓縮,經(jīng)過61owpan協(xié)議將得到的61owpan數(shù)據(jù)包解壓縮成原始IPv6數(shù)據(jù)包,解析互聯(lián)網(wǎng)主機發(fā)送來的數(shù)據(jù)請求報文信息; B,當網(wǎng)關(guān)與物聯(lián)網(wǎng)終端均未知互聯(lián)網(wǎng)主機的上下文信息context時,步驟如下 步驟B01,網(wǎng)絡(luò)初始化,物聯(lián)網(wǎng)終端完成全局可路由IPv6地址的注冊,互聯(lián)網(wǎng)主機已知物聯(lián)網(wǎng)終端的IPv6地址; 步驟B02,互聯(lián)網(wǎng)主機將數(shù)據(jù)請求封裝在UDP數(shù)據(jù)包中,并設(shè)定源地址與目的地址,經(jīng)由IPV6以太網(wǎng)發(fā)送給網(wǎng)關(guān); 步驟B03,網(wǎng)關(guān)對數(shù)據(jù)包進行地址解析,分析到目的地址為物聯(lián)網(wǎng)終端的IPv6地址,調(diào)用uip進程,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的6Iowpan地址; 步驟B04,網(wǎng)關(guān)對互聯(lián)網(wǎng)主機的Ipv6地址前綴進行截取,生成互聯(lián)網(wǎng)主機上下文信息context并將其存入網(wǎng)關(guān)的上下文表項中,根據(jù)該互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機的IPv6地址進行壓縮得到互聯(lián)網(wǎng)主機的61owpan地址; 步驟B05,根據(jù)物聯(lián)網(wǎng)終端的61owpan地址、互聯(lián)網(wǎng)主機的61owpan地址構(gòu)造61owpan數(shù)據(jù)包; 步驟B06,將步驟B05中所述61owpan數(shù)據(jù)包經(jīng)過IEEE802. 15. 4鏈路封裝后通過網(wǎng)關(guān)的無線射頻接口發(fā)送至物聯(lián)網(wǎng)終端; 步驟B07,物聯(lián)網(wǎng)終端收到該數(shù)據(jù)包后經(jīng)由IEEE802. 15. 4鏈路層解析得到61owpan數(shù)據(jù)包; 步驟B08,物聯(lián)網(wǎng)終端查詢上下文表項,向網(wǎng)關(guān)發(fā)送RS請求,請求網(wǎng)關(guān)發(fā)送由步驟B04得到的互聯(lián)網(wǎng)主機上下文信息context ;網(wǎng)關(guān)將該互聯(lián)網(wǎng)主機上下文信息context通過RA消息發(fā)送給物聯(lián)網(wǎng)終端;物聯(lián)網(wǎng)終端接收到RA消息后,記錄該互聯(lián)網(wǎng)主機上下文信息context,存儲至其自身的上下文表項中; 步驟B09,物聯(lián)網(wǎng)終端獲取該互聯(lián)網(wǎng)主機的上下文信息context后,經(jīng)過61owpan協(xié)議將步驟B07得到的61owpan數(shù)據(jù)包解壓縮成原IPv6數(shù)據(jù)包; 步驟B10,物聯(lián)網(wǎng)終端分析到UDP封裝的數(shù)據(jù)請求信息,進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包,執(zhí)行下述步驟C03至步驟C06將數(shù)據(jù)包通過網(wǎng)關(guān)發(fā)送給互聯(lián)網(wǎng)主機; 所述物聯(lián)網(wǎng)終端訪問IPv6互聯(lián)網(wǎng)主機的流程如下 C,當網(wǎng)關(guān)上下文表項中已知物聯(lián)網(wǎng)終端需主動上報的互聯(lián)網(wǎng)主機上下文信息context時,包括以下步驟 步驟C01,在設(shè)置61owpan網(wǎng)絡(luò)時,為物聯(lián)網(wǎng)終端配置其所要主動上報的互聯(lián)網(wǎng)主機的IPv6地址以及上下文信息context ; 步驟C02,物聯(lián)網(wǎng)終端進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包; 步驟C03,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的61owpan地址;根據(jù)該互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機的 IPv6地址進行壓縮得到互聯(lián)網(wǎng)主機的61owpan地址; 步驟C04,根據(jù)物聯(lián)網(wǎng)終端的61owpan地址、互聯(lián)網(wǎng)主機的61owpan地址以及步驟C02所采集的數(shù)據(jù)封裝成61owpan數(shù)據(jù)包; 步驟C05,物聯(lián)網(wǎng)終端將61owpan數(shù)據(jù)包通過IEEE802. 15. 4協(xié)議封裝成幀,通過無線網(wǎng)絡(luò)發(fā)送至網(wǎng)關(guān); 步驟C06,網(wǎng)關(guān)通過對數(shù)據(jù)包解析后得到61owpan數(shù)據(jù)包,通過查詢自身的上下文表項,根據(jù)物聯(lián)網(wǎng)終端上下文信息context,將物聯(lián)網(wǎng)終端的61owpan地址解壓縮為物聯(lián)網(wǎng)終端的IPv6地址;根據(jù)互聯(lián)網(wǎng)主機上下文信息context將互聯(lián)網(wǎng)主機61owpan地址解壓縮為互聯(lián)網(wǎng)主機IPv6地址,然后根據(jù)物聯(lián)網(wǎng)終端的IPv6地址、互聯(lián)網(wǎng)主機Ipv6地址構(gòu)造Ipv6數(shù)據(jù)包; 步驟C07,網(wǎng)關(guān)通過Ipv6網(wǎng)絡(luò)將該Ipv6數(shù)據(jù)包發(fā)送給互聯(lián)網(wǎng)主機; D,當網(wǎng)關(guān)上下文表項中未知物聯(lián)網(wǎng)終端需主動上報的互聯(lián)網(wǎng)主機上下文信息context時,具體包括以下步驟 步驟DOl,物聯(lián)網(wǎng)終端進行數(shù)據(jù)采集,并構(gòu)造IPv6數(shù)據(jù)包; 步驟D02,根據(jù)物聯(lián)網(wǎng)終端上下文信息context將物聯(lián)網(wǎng)終端的IPv6地址進行壓縮得到物聯(lián)網(wǎng)終端的61owpan地址;將物聯(lián)網(wǎng)終端的61owpan地址作為源地址、互聯(lián)網(wǎng)主機IPV6地址作為目的地址構(gòu)造61owpan數(shù)據(jù)包; 步驟D03,物聯(lián)網(wǎng)終端將61owpan數(shù)據(jù)包封裝成IEEE802. 15. 4數(shù)據(jù)包發(fā)送至網(wǎng)關(guān);步驟D04,網(wǎng)關(guān)解析IEEE802. 15. 4數(shù)據(jù)包得到61owpan數(shù)據(jù)包,獲取該數(shù)據(jù)包中的互聯(lián)網(wǎng)主機IPV6地址,對互聯(lián)網(wǎng)主機的Ipv6地址前綴進行截取,生成互聯(lián)網(wǎng)主機上下文信息context并將其存入網(wǎng)關(guān)的上下文表項中; 步驟D05,根據(jù)物聯(lián)網(wǎng)終端上下文信息context,將物聯(lián)網(wǎng)終端的61owpan地址解壓縮為物聯(lián)網(wǎng)終端的IPv6地址,然后根據(jù)物聯(lián)網(wǎng)終端的IPv6地址、互聯(lián)網(wǎng)主機Ipv6地址構(gòu)造IPV6數(shù)據(jù)包,將該IPV6數(shù)據(jù)包轉(zhuǎn)發(fā)至互聯(lián)網(wǎng)主機。
全文摘要
本發(fā)明公開了一種基于IPv6的物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)主機通訊方法,本發(fā)明在物聯(lián)網(wǎng)終端的協(xié)議棧中加入6lowpan協(xié)議對數(shù)據(jù)包進行適配,即采用6lowpan協(xié)議與IPv6協(xié)議共同支撐網(wǎng)絡(luò)層,鏈路層采用IEEE的802.15.4標準與網(wǎng)關(guān)進行數(shù)據(jù)通信,實現(xiàn)其在lowpan域內(nèi)通過802.15.4協(xié)議發(fā)送輕量級的數(shù)據(jù)包,物聯(lián)網(wǎng)終端的傳輸層采用UDP與ICMP協(xié)議,網(wǎng)關(guān)與互聯(lián)網(wǎng)主機通過以太網(wǎng)進行數(shù)據(jù)通信;本發(fā)明所提出的在物聯(lián)網(wǎng)終端實現(xiàn)context主動更新機制,并將該機制用于互聯(lián)網(wǎng)中的IPv6主機主動訪問lowpan域內(nèi)物聯(lián)網(wǎng)終端的流程中,同時提出了物聯(lián)網(wǎng)終端主動上報數(shù)據(jù)給互聯(lián)網(wǎng)主機的流程,解決了lowpan域內(nèi)物聯(lián)網(wǎng)終端與互聯(lián)網(wǎng)中主機的互聯(lián)互通問題。
文檔編號H04L29/06GK102857968SQ20121033340
公開日2013年1月2日 申請日期2012年9月11日 優(yōu)先權(quán)日2012年9月11日
發(fā)明者孫知信, 駱冰清, 高同 申請人:南京郵電大學(xué)