1 物聯網與IPv6
物聯網(Internet of Things)的概念最初在1999年由美國麻省理工學院的Auto-ID實驗室提出,其構想是通過RFID與無線傳感器網絡的結合來構建一個追蹤貨物的全球系統。Internet of Things這個思路最初是非常具體的,但是其概念本身給人以很大的遐想空間,并且隨著集成電路技術、無線傳感器網絡技術的飛速發展,這個幼小的思想得到了越來越廣泛的關注,并且被各方賦予了新的內涵和外延。2005年,國際電信聯盟(ITU)在其年度報告中對物聯網的概念、技術、市場、挑戰和未來構想方面進行了闡述。與此同時,互聯網的誕生地IETF自2006年開始也從技術層面展開了對物聯網的研究,制定了網絡層的相關技術標準。2010年3月,IRTF主席Aaron Falk在第77次會議上發起了IoT的興趣小組,計劃從研究層面推進相關工作。
物聯網的架構可以簡單地劃分為3個層次(感知層,網絡層和應用層),分別為物聯網提供了一些重要的特性,即全面感知、可靠傳送、智能處理。物聯網的感知層要求能夠全面感知物理世界的各種信息,利用多種傳感器、傳感器網絡、RFID、二維碼、攝像頭、GPS、智能物體等來全面感知現實世界中的各種信息。物聯網的感知層節點具有數量多、成本低、計算能力弱等特點,是物聯網信息的源頭,如何更好地管理維護感知層網絡、促進相關應用開展一直是學術界和工業界關注的重要問題之一。
物聯網引起全世界的廣泛關注以來,終端數量持續上升,逐漸成為上百億終端的市場,給網絡運營提出了兩個方面的挑戰。首先是碼號尋址需求,從國際和國內兩個方面看,IPv4地址不足已經成為不爭的事實。一方面,截止到2010年3月,全球可分配的A類IPv4地址段只剩下22個,預計2012年亞洲地址管理分支機構APNIC的IPv4地址池將耗盡,屆時國內公司將無法再申請到IPv4地址;另一方面,我國已獲得的IPv4地址份額只占到全球的6.3%,勢必影響我國巨大潛在市場的發展。由此可見,IPv4地址尚不能滿足互聯網和移動互聯網的地址需求,對于發展中的物聯網,特別是具有數量眾多的感知層節點的標識問題,這個問題更為明顯。其次,物聯網業務發展問題也凸顯出現,目前,感知終端上的數據格式多種多樣,難以統一管理運營,新型業務難以落地。由于缺乏統一的網絡層通信標準,應用程序的開發處于無章可循的狀態,且廣泛基于TCP/IP協議棧開發的互聯網應用不容易移植。因此,物聯網的發展需要統一標準的協議來支撐網絡向大規模泛在化發展,也需要一個標準的網絡基礎設置來孵化各種新型的業務模式,真正實現“無處不在的網絡、無所不能的業務”。
基于這兩個方面的需求,物聯網和IPv6產生了廣泛的聯系。IETF從一開始研究物聯網相關技術以來,就把IPv6作為惟一選擇,IETF相關工作組的工作都是在IPv6基礎上展開的,相關的產業聯盟IPSO Alliance (IP Smart Object Alliance)也開始了IPv6產品化推廣的路線。最初不支持IP相關技術的Zigbee組織,也在其智能電網(Smart Energy)的最新標準規范中加入了對IPv6協議的支持。
本文介紹了物聯網感知層的IPv6協議標準化動態,介紹了IPv6技術在IETF,IPSO,Zigbee,ISA-100多個標準化組織的基本原理和工作進展。
2 IETF工作進展
IETF成立了3個工作組來進行低功耗IPv6網絡方面的研究。6LowPan(IPv6 over Low-power and Lossy Networks)工作組主要討論如何把IPv6協議適配到IEEE 802.15.4 MAC層和PHY層協議棧上的工作。RoLL(Routing Over Low Power and Lossy Networks)主要討論低功耗網絡中的路由協議,制訂了各個場景的路由需求以及傳感器網絡的RPL(Routing Protocol for LLN)路由協議。CoRE(Constrained Restful Environment)工作組由6LowApp興趣小組發展而來,主要討論資源受限網絡環境下的信息讀取操控問題,旨在制訂輕量級的應用層協議(Constrained Application Protocol,CoAP)。
2.1 6LowPan工作組
6LowPan工作組成立于2006年,屬于IETF互聯網領域。該工作組已完成兩個RFC:《在低功耗網絡中運行IP6協議的假設、問題和目標》(RFC4919,Informational);《在IEEE802.15.4上傳輸IPv6報文》(RFC4944,Proposed Standard)。
在IEEE 802.15.4網絡中運行IPv6協議的主要挑戰來自于兩個方面,一方面802.15.4物理層支持的最大幀長度是127字節,而IPv6的報頭就占據了40字節,再加上MAC層報頭,安全報頭、傳輸層報頭的長度,實際能夠給應用層使用報文長度變得非常小。另一方面,IPv6協議(RFC2460)中規定的MTU值最小是1280字節,表明IP層最小只會把數據包分片到1280字節。如果鏈路層支持的MTU小于此值,則鏈路層需要自己負責分片和重組。所以,6LowPan工作組為IEEE 802.15.4設計了一個適配層,把IPv6數據包適配到IEEE 802.15.4規定的物理層和鏈路層之上,支持報文分片和重組,同時6LowPan規定了IPv6報頭的無狀態壓縮方法,減小IPv6協議帶來的負荷。6LowPan工作組的工作在低功耗節點協議棧中的位置如圖1所示。
圖1 6LowPan協議棧模型
報頭壓縮的主要原理是通過壓縮編碼省略掉報頭中冗余的信息。不包含擴展頭的IPv6報頭一共有40個字節,但是在網絡感知層,IPv6報頭中的很多信息可以省略或者壓縮,IPv6報頭中的各個信息域的壓縮方法如下:
(1)版本號Version(4位):取值為6,在運行IPv6協議的網絡中,此項可以省略。
(2)流類型Traffic Class(8位):可以通過壓縮編碼壓縮。
(3)流標識Flow label(20位):可以通過壓縮編碼壓縮。
(4)載荷長度Payload Length(16位):可以省略,因為IP頭長度可以通過MAC頭中的載荷長度字段計算出來。
(5)下一個頭Next Header(8位):可以通過壓縮編碼壓縮,假設下一個頭是UDP,ICMP,TCP或者擴展頭的一種。
(6)跳極限Hop Limit(8位):惟一不能進行壓縮的信息。
(7)源地址Source Address(128位):可以進行壓縮,省略掉前綴或者IID。
(8)目標地址Destination Address(128位):可以進行壓縮,省略掉前綴或者IID。
為了對IPv6報頭進行無狀態壓縮,6LowPan工作組制定了兩種壓縮算法LOWPAN_HC1(RFC4944)和LOWPAN_IPHC(draft-ietf-6LowPan-hc-06),其中HC1算法用于使用本地鏈路地址(Link-local Address)的網絡,節點的IPv6地址前綴固定(FE80::/10),IID可以由MAC層的地址計算而來,但是這種算法不能有效壓縮全局的可路由地址和廣播地址,因此不能用于LOWPAN網絡與互聯網互訪的應用。LOWPAN_IPHC算法的提出主要是為了有效壓縮可路由的地址,目前LOWPAN_IPHC算法正在IETF 6LowPan工作組進行最后的修訂狀態。
LOWPAN_HC1算法和LOWPAN_IPHC算法在MAC報頭之后定義了8位的一個選擇報頭,此選擇報頭的取值決定了壓縮報頭的具體格式和算法。詳細信息見表1。例如,如果前8位的取值是01000001,那么表示接下來是LOWPAN_HC1算法對應的壓縮報頭,如果前3位的取值是011,那么表示接下來的是LOWPAN_IPHC算法對應的壓縮報頭。
表1 6LowPan選擇報頭的含義
在選擇報頭后緊跟的是壓縮編碼,壓縮編碼由一些指示位組成,指示位的不同取值表明了IPv6報頭壓縮的不同方法。具體參見RFC4944。
除了IPv6無狀態報頭壓縮的方法之外,6LowPan工作組還制定了一系列相關標準,包括支持Mesh Routing的方法,簡化的IPv6 Neighbor Discovery協議,應用場景和路由需求等幾個關鍵的技術規范。6LowPan工作組是IETF物聯網感知層工作的發源地,其中的很多研究和探索直接影響了另外幾個工作組的成立和方向,下面將分別介紹。
2.2 IPv6路由工作組RoLL
RoLL(Routing over Lossy and Low-power Networks)工作組于2008年2月成立,屬于IETF路由領域的工作組。IETF RoLL工作組致力于制定低功耗網絡中IPv6路由協議的規范。ROLL工作組的思路是從各個應用場景的路由需求開始,目前已經制定了4個應用場景的路由需求,包括家庭自動化應用(Home Automation,RFC5826)、工業控制應用(Industrial Control,RFC5673)、城市應用(Urban Environment,RFC5548)和樓宇自動化應用(Building Automation,draft-ietf-roll-building-routing-reqs)。
為了制訂出適合低功耗網絡的路由協議,ROLL工作組首先對現有的傳感器網絡的路由協議進行了綜述分析,工作組文稿draft-ietf-roll-routing-survey分析了相關協議的特點以及不足。然后研究了路由協議中路徑選擇的定量指標。ROLL工作組文稿draft-ietf-roll-routing-metrics包含兩個方面的定量指標,一方面是節點選擇指標,包括節點狀態,節點能量,節點跳數(Hop Count);另一方面是鏈路指標,包括鏈路吞吐率、鏈路延遲、鏈路可靠性、ETX、鏈路著色(區分不同流類型)。為了輔助動態路由,節點還可以設計目標函數(Objective Function)來指定如何利用這些定量指標來選擇路徑。
在路由需求、鏈路選擇定量指標等工作的基礎上,ROLL工作組研究制定了RPL(Routing Protocol for LLN)協議。RPL協議目前是一個工作組文稿(draft-ietf-roll-rpl),已經更新到第8版本。RPL協議支持3種類型的數據通信模型,即低功耗節點到主控設備的多點到點的通信,主控設備到多個低功耗節點的點到多點通信,以及低功耗節點之間點到點的通信。RPL協議是一個距離向量路由協議,節點通過交換距離向量構造一個有向無環圖(Directed Acyclic Graph,DAG)。DAG可以有效防止路由環路問題,DAG的根節點通過廣播路由限制條件來過濾掉網絡中的一些不滿足條件的節點,然后節點通過路由度量來選擇最優的路徑。
2.3 IPv6應用工作組CoRE
2010年3月,CoRE(Constrained RESTful Environment)工作組正式成立,屬于應用領域(Application Area)。CoRE起源于6lowapp興趣組(BOF),主要討論受限節點上的應用層協議。隨著討論的深入,IETF技術專家把工作組的內容界定在為受限節點制定相關的REST形式的協議上。REST(Representational State Transfer)是指表述性狀態轉換架構,是互聯網資源訪問協議的一般性設計風格。REST提出了一些設計概念和準則:網絡上的所有對象都被抽象為資源;每個資源對應一個惟一的資源標識;通過通用的連接器接口;對資源的各種操作不會改變資源標識;對資源的所有操作是無狀態的。HTTP協議就是一個典型的符合REST準則的協議。在資源受限的傳感器網絡中,HTTP過于復雜,開銷過大,因此也需要設計一種符合REST準則的協議,這就是CoRE工作組正在制訂的CoAP協議(Constrained Application Protocol)。目前,CoAP協議還處于討論狀態,暫時沒有工作被IETF接受為工作組文稿。
應用CoAP協議之后,互聯網上的服務就能夠直接通過CoAP協議或者通過HTTP與CoAP協議之間的網關來進行資源讀取、修改、刪除等操作。圖2顯示了CoAP協議在傳感器、網關、互聯網服務器上的呈現。圖2(a)顯示了CoAP通過網關與HTTP協議進行轉換的方式,圖2(b)顯示了傳感器節點直接與支持CoAP協議的互聯網服務器進行信息交互的方式。圖中也顯示了這兩種方式中,節點和網關的協議棧都是建立在IPv6和6LowPan協議棧之上的。
圖2 利用CoAP協議進行資源訪問的節點、網關和服務器的協議棧
除了CoAP協議,資源受限環境中的資源發現、安全、API等都在工作組的工作范圍之內,相關的工作正在積極地展開。
3 物聯網感知層IPv6協議的相關應用標準
物聯網感知層的IPv6協議目前在IETF組織進行研究和標準化,其他相關標準化組織為了支持IPv6也要研究如何采用和應用IETF相關標準。目前,支持IPv6相關應用的國際標準化組織有IPSO,Zigbee,ISA-100等組織。
3.1 IPSO Alliance
IPSO Alliance(IP Smart Object Alliance)即IP智能物體產業聯盟,是推動IETF所制訂的輕量級IPv6協議相關應用的產業聯盟。IPSO成立于2008年9月,其發起組織包括CISCO,Ericsson,SUN等電信和互聯網廠商,也包括一些傳統的傳感器網絡的芯片和器件廠商,如Atmel,Freescale,Arch Rock,Sensinode等。
IPSO聯盟的主要目的是推動智能IP解決方案的產業實施和,實現智能IP解決方案的技術優勢。IPSO分析了現有傳感器網絡系統和控制系統中方案的問題,特別是這些方案長遠來看在大規模系統中難以互通的問題,指出IP技術作為一種成熟和高度互通的方案,是市場和技術的最優選擇。IPSO目前的工作包括:引起產業界對IP智能物體解決方案的重視,利用現有方案并且進行技術開發;產出一系列幫助廠商開發的指導性研究報告、白皮書和應用場景;從市場層面輔助IETF組織的工作;連接起全世界支持IP智能感知和控制系統的公司;協調和組織市場推動工作;組織互通性測試。
目前,IPSO已經產出5份白皮書,包括:
(1)IP協議帶來的優勢。
(2)智能物體的輕量級IPv6協議棧:來自3個獨立互通實現的經驗。
(3)6LowPan介紹。
(4)6LowPan鄰居發現協議概覽。
(5)智能物體的網絡安全。
IPSO主要基于IETF所制訂的技術標準,以此來推動應用和產業發展,進行互通性測試,資質認證等等工作,是IETF物聯網技術的主要推動者。
3.2 Zigbee Alliance
Zigbee是IEEE 802.15.4組織對應的產業聯盟。Zigbee制訂了短距離無線通信標準的網絡層和應用層,針對不同的應用制訂了相應的應用規范。Zigbee對應的物理層和鏈路層是在IEEE 802.15.4組織研究制訂的。
Zigbee目前正式發布的規范涵蓋了下面幾種應用:智能電力,遙控,家庭自動化,醫療,樓宇自動化,電信服務應用,零售服務應用等。Zigbee組織目前包含23個工作組和任務組,涵蓋技術相關的工作組:架構評估、核心協議棧、IP協議棧、低功耗路由器、安全,以及應用相關的工作組:樓宇自動化、家庭自動化、醫療、電信服務、智能電力、遠程控制、零售業務,還有與市場、認證相關的一些工作組。
Zigbee最初是不支持IP協議的,目前Zigbee已經正式發布的應用規范都沒有對IP協議的支持。但是隨著IETF,IPSO相關工作的推進,以及Zigbee內部成員單位的推動,Zigbee的智能電力Smart Energy 2.0應用已經開始全面支持IP協議。同時,Zigbee內部成立了IP-stack工作組,專門制定IPv6協議在Zigbee規范中的應用方法。Zigbee Smart Energy2.0應用也將采用IETF 6LowPan制訂的適配層,要求IEEE 802.15.4設備的網絡中使用這種輕載的IPv6協議棧,同時把對6LowPan的支持作為一種必選。在應用層,新的規范也支持輕量級的COAP協議。Zigbee IP-stack工作組的工作范圍可以從圖3顯示出來。
圖3 Zigbee IP Stack工作組的工作范疇
適配層(Adaption Layer)提供報頭壓縮和解壓縮功能,IP報文分片重組的能力;網絡層提供IPv6地址配置、ICMPv6協議、鄰居發現、路由、安全接入的能力;傳輸層要求提供多路數據流服務,進行擁塞控制和流量控制;在基礎設施服務層,Zigbee IP Stack工作組正在制訂EAP認證,TLS,端到端安全的相關架構和技術規范。
3.3 ISA-100
ISA(International Society of Automation)是無線傳輸在工控領域的產業聯盟,ISA專門成立了一個由終端用戶和技術提供者組成的ISA-100委員會,該委員會的主要任務是制定標準、推薦操作規程、起草技術報告等,用以定義工業環境下的無線系統相關規程和實現技術。ISA-100.11a工作組主要由10個子工作組組成:系統工作組、匯集工作組、PHY/MAC層工作組、安全工作組、網絡/傳輸層工作組、網絡管理工作組、評估工作組、應用層工作組、編輯工作組合網關工作組。其中,在網絡/傳輸層上,ISA-100.11a組織也要求支持RFC4944的網絡層協議棧,支持6LowPan,IPv6協議和TCP/UDP。
4 結束語
物聯網的感知層技術多種多樣,沒有形成統一的標準,難以大規模互通。IP協議作為互聯網的統一標準,對物聯網的發展具有重要的借鑒意義,成為了物聯網標準研究和技術應用的一種方向。互聯網的誕生地IETF制訂了IPv6低功耗網絡的相關標準,并且成為IPSO產業聯盟、ISA-100組織的選擇,以及Zigbee組織的發展方向。本文介紹了物聯網感知層IPv6協議標準化的動態,概括了相關技術標準的主要內容以及應用發展狀況。物聯網感知層的IPv6技術正日臻完善,期待著未來會有越來越多的網絡應用采用IPv6協議,實現真正的端到端的互聯互通。
評論
查看更多