物聯網協議之CoAP協議開發學習筆記之節點網絡中的術語解釋

概述

嚴重受制於電源,內存和處理器資源的小型設備所組成的網絡咱們叫作「受限節點網絡」。受限節點網絡(constrained-node networks)愈來愈多的開始使用互聯網協議簇(Internet Protocol Suite)。這個文檔提供了一些基本術語,能夠用在」受限節點網絡「的標準化制定過程當中。node

介紹


所謂的"受限設備",就是指只有有限的CPU,內存和電源資源的小型設備(一般用作傳感器/驅動器,Smart Objects,或者智能設備)。
它們能夠組成一個網絡,在這個網絡中它們被稱作"受限節點"。
由「受限設備」組成的這個網絡自己可能也是受限的,好比,使用不穩定或容易丟包的信道、有限的和沒法預測的帶寬,和高度動態的網絡拓撲。緩存

受限設備可能負責在多種環境下收集信息,包括天然環境、樓宇和工廠。它們將這些信息發送到一個或多個服務器站點。
它們也可能須要對某些信息作出響應,好比執行一些物理動做,包括顯示這些信息。
受限設備可能工做在嚴重的受限資源下,好比有限的電池和計算能力,小內存和無線帶寬的不足。
網絡中的其餘實體,好比,一個基站或者控制服務器,可能有更多計算和通信資源,能夠幫助受限設備與傳統網絡上的應用程序直接進行交互。安全

當今,各類有着不一樣資源和能力的受限設備正在逐漸鏈接起來。
移動我的配件,辦公自動化設備,蜂窩手機,設備到設備(M2M)裝置等設備開始與附近或互聯網上的"things」的交互中受益。所以,IoT開始成爲現實,並經過惟一ID和能夠被尋址到的對象(things)來構建的。鏈接互聯網的受限設備在下個10年會增加爲很是大的數量[FIFTY-BILLION],這將會極大增長互聯網的大小和範圍。服務器

這個文檔提供一系列在受限網絡的標準化工做中的經常使用基本術語。文檔的目標並非完全覆蓋這些領域,而是要保證在不一樣的組織和公司中對核心術語的使用是一致的。網絡

在這篇文檔中,1byte即8bit,"KB"表明1024bytes。

在計算機行業中,術語"power"被常用在"計算能力"或者"處理能力",用做CPU性能。在本文中,除非有特別聲明,」power」指電源。 「主電源(Main-powered)」是永久鏈接到穩定電源網絡的縮寫。性能

核心術語

IoT有兩個重要擴展方向:優化

使用不昂貴的節點將傳統互聯網的技術向上擴展到一個很大的量級,同時ui

向下擴展這些節點的能力和網絡,讓它們向上擴張更加經濟和物理上更加可行。設計

向下擴展所須要的特性構成了所謂的」受限節點"。代理

受限節點

對比一些常見的傳統互聯網節點能夠獲得「受限節點」的術語定義。

受限節點:一些對於網絡節點來講很正常的一些特性,因爲成本或者物理受限(包括尺寸、質量、電源、功耗),致使存儲,代碼大小和處理能力有限,從而沒法實現。這使得在全部的設計需求中,電源優化和網絡帶寬使用都是主要考慮的目標。同時,「受限節點」可能缺少一些二層服務,好比徹底鏈接和廣播/多播。

雖然這個定義不嚴格,甚至比較模糊,但它清楚地區分了「受限節點」與服務器系統、桌面或筆記本電腦、強大的移動設備如智能手機等設備。這些限制可能有不少是在設計時引入的,包括售價,尺寸,重量和其餘擴展因素。

致使節點受限的因素不少。這些因素一般會同時出現,好比:

  • 受限於最大代碼大小(ROM/Flash),
  • 受限於內存大小和緩存(RAM),
  • 受限於CPU處理能力,
  • 受限於可用電源,
  • 受限於用戶界面和部署(有能力去設置keys,更新軟件等)。

第三節用前兩個因素做爲標準將」受限節點「進行了一個分類("class-N",N=0,1,2)。在可用電源方面,[RFC6606]區分了」供電充足"節點(主電源或者常規充電)與」供電受限"節點。「供電充足」節點,它們能夠從主電池或者使用能源收集器來得到能源;更多有關電源的術語在第四節中會仔細介紹。

使用受限節點組成網絡一般會致使網絡也是受限的。可是,網絡受限緣由可能與這些節點是沒有關係的。咱們隨後將會辨別「受限網絡」和「受限節點的網絡」。

受限網絡

咱們也使用一樣的方法來定義「受限網絡」:

受限網絡:它的一些特性與傳統互聯網的鏈路層是同樣的。可是,在必定時間裏面是不能寫入的。

可能包括下面的受限因素:

能夠達到的比特率/吞吐量低(包括週期性循環的限制),

包丟失率高和包丟失的可能性高(到達率),

高的不對稱的連接特性,

使用比較大的數據包會有嚴重後果(例如,由於鏈路層分片而致使高的包丟失率),

數據到達率可能會受時間影響(一些設備會關閉電源,可是按期能夠會喚醒,而後進行一段時間通信),

缺少(或者嚴重受限於)一些高級服務,好比IP多播。

咱們說「受限網絡」的時候,一般在網絡中的受限節點展示出這樣的特性: 另外,可能有一些緣由是針對這個:

在網絡中的投入有限,

節點是受限的,

物理受限(好比,電源受限,環境受限,媒介受限好比在水下操做,用在很是高的分辨率的有限頻譜,電磁兼容性),

監管受限。好比有很是有限的頻譜可用性(好比在輻射能力和週期性循環)或者防爆,

技術受限,好比依然在使用更老的和更低速技術,可能須要用很長時間。

有缺陷的網絡

受限網絡並不必定是「缺陷網絡」[FALL]:

缺陷網絡:應用程序但願使用端對端的IP傳輸模型,可是網絡有很難去完成。舉例來講:

不能提供一個端對端IP連接,

在端對端IP連接顯示出嚴重中斷的特色,

嚴重延遲,並超出TCP定義的最大段生存時間(MSL)[RFC0793]

某種意義上,全部缺陷網絡是受限網絡。可是不是全部的受限網絡是缺陷網絡。在這兩個網絡中沒有一個很是明確的邊界。針對缺陷網絡已經有了處理方法:延遲容忍網絡(DTN)[RFC4838]。

受限節點的網絡

受限節點網絡:這個網絡的特色會主要被「受限節點」的特性影響。

一個受限節點網絡一般是一個受限網絡。由於節點受限致使網絡也受限和堵塞。另外,「受限節點網絡」也可能有其餘方面的受限。

在本章的其餘段中描述在受限節點網絡使用中的兩個額外術語。不須要額外去定義它們:LLN和(6)LoWPAN。

LLN

術語LLN已經被描述成IETF ROLL工做小組的目標,它指「低功耗和有損網絡」(LLN:Low-Power and Lossy Network)。ROLL(Routing over Low-Power and Lossy)術語文檔[RFC7102]中對LLNs作出了以下定義:

LLN:低功耗和有損網絡。一般不少嵌入式設備使用有限電源,內存和處理資源組成了一個鏈接,好比IEEE 802.15.4或者低功耗Wi-Fi。不少大範圍的應用程序用做LLN,包括工業監控,建築自動化(加熱,空氣流通和空調,燈光,訪問控制,或災報警),鏈接家庭,健康,環境健康,城市傳感網絡,能源管理,資產追蹤,冷鏈。

在這些之上,LLN一般表現出在物理層上的一些丟失,傳遞速率變化大,有時出現短期不可達,長時間穩定存在問題,所以能夠構建有向無環圖來確保中等的穩定,用做路由,和作測量,好比ETX[RFC6551],並非全部的LLN都由低功耗節點組成。LLN一般由受限節點組成:這致使設計出如「無存儲模式」(由RPL設計(IPV6路由協議用做低功耗和丟失網絡[RFC6550]))的操做模式。所以,在這個文檔的術語中,LLN是一個受限節點網絡,使用必定網絡特性,包括在網絡上受限。

LoWPAN,6LoWPAN

一個受限網絡的有趣的類型被用做受限節點網絡是"LoWPAN"[RFC4919],該術語由IEEE802.15.4工做小組所定義的(LR-WPANs)。LoWPAN的解釋是,「低功耗無線我的區域局域網」,包含了一個很難去界定的詞「我的」,由於IEEE 802工做小組在定義的時候有一個目標是定義LoWPAN是圍繞我的設計的。準確的說,LoWPANs已經被建議用於城市監控,大樓控制和工業控制程序,因此」我的「這個詞能夠被認爲是過期了。偶爾,術語又被稱爲低功耗無線網絡[WEI]。一般關注於IEEE 802.15.4,「LoWPAN」指在受限網絡下的鏈路層網絡技術V6-BTLE[V6-G9959]。

受限設備種類

儘管,絕大部分與互聯網鏈接的設備都可以被預計到,但對不一樣類型的受限設備有一些簡潔的術語定義也很必要。在這個文檔中,表1中的文章,可能會用在一個相對開放的設備能力定義:

Name data size (e.g., RAM) code size (e.g., Flash)
Class 0, C0 << 10 KiB << 100 KiB
Class 1, C1 ~ 10 KiB ~ 100 KiB
Class 2, C2 ~ 50 KiB ~ 250 KiB

表1:受限設備類型(KiB = 1024字節)
在本文檔中,芯片能夠分爲通用芯片和受限設備芯片。這幾類的邊界(如RAM/Flash大小)會隨着時間的推移而更改,但摩爾定律在嵌入式中不太有效:對晶體管數量增長的需求每每會屈服於成本限制和電源限制。

0類設備是很是受限的傳感器。他們的存儲和處理能力嚴重受限,以致於沒有與互聯網直接、安全的溝通的能力。0類設備與互聯網通訊須要更大的設備來幫忙,好比代理,網關,或服務器。0類設備一般很難考慮安全性或者進行復雜的管理。它們最多是已經被預先配置(而後不多再配置)。爲了達到管理,他們能夠響應keepalive信號,發送 開啓/關閉或基本健康信息(如心跳)。

1類設備在代碼空間和處理能力上也有至關的限制,使得它們不能很容易地與其餘網絡節點溝通,如採用完整的協議棧,使用HTTP,傳輸層安全(TLS),及相關的安全協議和基於XML的數據表示。然而,他們有足夠的能力來使用專爲受限節點設計的協議(如使用UDP的受限的應用協議CoAP),在沒有網關節點的幫助下進行必定的通信。特別是,他們能夠提供一個大型網絡所要求的安全功能的支持。所以,他們能夠集成到IP網絡,但他們須要簡單的狀態存儲,代碼空間,較大的功耗,供協議和應用程序使用。

2類設備的限制較少,基本上可以支持大多數相同的協議棧,如同使用筆記本電腦或服務器。然而,即便這些設備也可使用簡單、節省能耗的協議來減小帶寬的消耗。此外,使用較少的網絡資源能夠給應用留下更多的可用資源。所以,利用受限的設備專用協議棧,對2類設備來講可能會下降開發成本和提升互操做性。

也存在超越2類設備標準的受限的設備。他們能夠在很大程度上利用現有的協議不變。所以本文檔不定義超過2類的設備。固然,這些設備仍然可能會存在能源受限。

電源術語

設備不僅能夠從它們的計算能力上進行區分,也能夠在可用電源和(或)能量上進行區分。在可用電源和能量這個層面上很難去找到可量化的分類方法,但引入一些通用術語仍是很是有用的。

度量單位

一個設備可用電源或可用能量的計量單位多是不一樣的,從千瓦到毫瓦,從基本無限制到上百微焦耳。

咱們使用國際標準單位(SI單位)簡單陳述下可用電源或可用能量,而不是定義一個類和簇。在表2中定義了一個或兩個類似值。

Name Definition SI Unit
Ps 當被調用時,設備的平均功率 W
(Watt)
Et 在電源被耗盡以前可以使用的總能量 J
(Joule)

表 2: 有關電源和能量的度量
Et可能須要結合時間週期來解釋;見4.2節。

一些設備在可用能量耗盡以前循環進入「low-power」模式。對於這些設備,Ps須要爲每一個給定的modes/steps。

能源限制的分類

正如上面所討論的,一些設備因爲功率限制,在能耗有限。若是對此沒有限制,則爲E9。若是某個設備的總能量有限制(例如,採用不可替換的電池),爲E2。若是能源限制是在特定的時期,該裝置爲爲E1,例如,太陽能裝置(在夜間的能量有限),或者手機充完電到插上充電器之間的間隔,或有一個週期性的裝置(電池)更換間隔。最後,有多是用於特定的事件的裝置,只有有限的能量,例如,爲能量收集開關按下按鈕;這樣的設備爲E0。須要注意的是,在某種意義上,許多E1設備也爲E2,如充電次數有限的可再充電電池。

表3提供上述分類的總結。

名稱 能量限制的類型 電源來源示例
E0 事件能量受限 按期收集能量
E1 按期能量受限 電池,須要按期充電或更換
E2 生命週期能量受限 一次性,無需更換電源
E9 對可用能量沒有直接的配額限制 主電源

表 3: 能量限制的級別

通信使用能量的策略

當使用無線傳輸時,射頻功耗一般會佔到設備總功耗的大部分。不一樣的設計參數,好比使用頻段,覆蓋範圍和傳輸比特率,都影響收發的電量消耗;收發的間隔(包括潛在的接收)也會影響總能耗。

基於不一樣的能源來源(好比電池和主電源供電)和設備通信的頻率,可能會採用不一樣的電源和網絡鏈接策略。

一般電源使用的策略能夠描述以下:

Always-on:若是沒有節能的要求,這種策略是最適用的。設備能夠在全部的時間都以正常狀態工做。爲了節能可能會使用更省電的硬件、限制無線傳輸速率,限制CPU主頻或其餘經常使用的省電和散熱手段,可是設備可以永久鏈接網絡。

Normally-off:在這個策略下,設備一次會休眠很長時間。一旦它醒來,它不會僞裝它已經鏈接到網絡中:設備會在它被喚醒的時候從新鏈接網絡。主要優化目標是最小化重連的步驟和由此產生的應用層通訊。

若是設備休眠很長一段時間,且不須要頻繁的溝通,對於重連過程當中能量消耗的增長,可能也是能夠接受的。

Low-power:這種策略一般適用於須要低功耗,但仍需進行一個相對頻繁通信的設備。這意味着,在這些硬件上須要使用超低功耗的解決方案,和鏈路層選擇機制等等。一般狀況下,相比它們的休眠時間,傳輸使用的時間很短,這些設備仍然在某種形式上保持和網絡的鏈接。用於減小網絡通訊功耗所使用的技術包括:喚醒後減小從新創建鏈接的能耗、調整通訊頻率(包括「週期性循環」,即在一個循環週期中,組件循環處於開關狀態)和其餘適當的參數。

下表4提供使用電源進行通信的策略

名稱 策略 通信時機
P0 Normally-off 當需求的時候鏈接
P1 Low-power 看似鏈接
P9 Always-on 始終鏈接

表4 電源通訊策略
請注意,上述討論的是在設備層面;相似的考慮也適用於通訊接口層。這個文檔沒有定義後面的術語。

一個常用的術語來描述的省電方法是「週期性循環(Duty Cycle)」。這即採用各類形式週期性開關一些功能。

[RFC7102]只能區分兩個級別,定義一個非休眠的節點始終保持在在徹底供電狀態(一直醒着),它有能力執行通訊(P9)和一個休眠的節點,有時可能會進入睡眠模式(低功耗狀態,以節省電力)和暫時停止協議通訊(P0);沒有明確說起P1。

安全考慮

本文檔介紹了常見的術語,不會增長任何新的安全問題。由於受限所產生的安全方面的考慮須要在特定的協議下進行討論。例如,[COAP]的11.6節,「受限節點的考慮」,探討了在受限狀況下對使用安全機制的影響。[ROLL-SEC-THREATS]爲RPL路由協議提供了安全威脅分析。在[IKEV2-MINIMAL]和[TLS-MINIMAL]有討論受限節點的安全協議的實現問題。在[IOT-SECURITY]提供如何使受限節點網絡更安全的觀點。

相關文章
相關標籤/搜索