IoT>>入門概述與物聯網安全基礎

寫在前面的話

作爲新時代技術人員,物聯網安全成爲了網絡安全/信息安全重要的一部分。但是妾身一個web崽崽爲什麼開始搞IoT了呢QAQ,主要是發揮釘子精神,我是革命一塊磚,那裏需要哪裏搬。(劃掉)
總之,IoT安全也是很有意思的,與lua和二進制文件愉快玩耍似乎也很不錯。

IoT入門概述

IoT概述

物聯網(The Internet of Things,簡稱IOT)是指通過 各種信息傳感器、射頻識別技術、全球定位系統、紅外感應器、激光掃描器等各種裝置與技術,實時採集任何需要監控、 連接、互動的物體或過程,採集其聲、光、熱、電、力學、化 學、生物、位置等各種需要的信息,通過各類可能的網絡接入,實現物與物、物與人的泛在連接,實現對物品和過程的智能化感知、識別和管理。物聯網是一個基於互聯網、傳統電信網等的信息承載體,它讓所有能夠被獨立尋址的普通物理對象形成互聯互通的網絡 (來自度娘)。

物聯網安全基礎

物聯網通信協議

本部分參考博客或其他資料:
https://baijiahao.baidu.com/s?id=1597350854339650310&wfr=spider&for=pc
https://www.jianshu.com/p/f5a6977e9fef
https://blog.csdn.net/sinat_36098122/article/details/80930168
https://zhuanlan.zhihu.com/p/62021917
https://baijiahao.baidu.com/s?id=1633509774761295945&wfr=spider&for=pc
https://www.imooc.com/article/41612
https://www.runoob.com/w3cnote/mqtt-intro.html
https://blog.csdn.net/jaredcoding/article/details/78656636

物聯網的基本架構

物聯網的基本架構分爲三層:感知層、網絡層和應用層

感知層:主要是指前端數據的獲取,通過傳感器採集某些數據(聲、光、電等),比如北斗獲得經緯度,還有環境監測溫溼度傳感器等。
網絡層:將感知層採集的數據進行回傳,基於不同特點採用不同的通信協議技術。
應用層: 把前端感知層的得到的信息進行處理,並實現具體的應用。可以理解爲物聯網的數據平臺和業務平臺。

通信的上行和下行

上下行是通信的兩個方向。
上行:把設備端傳感器的數據傳到雲上
下行:通過手機或電腦下發一些控制指令到設備端
在這裏插入圖片描述

物聯網通信協議

傳輸協議與通信協議

物聯網協議一般分爲兩大類,傳輸協議和通信協議。
傳輸協議:一般負責子網內設備間的組網及通信;
通信協議:主要是運行在傳統互聯網TCP/IP協議之上的設備通訊協議,負責設備通過互聯網進行數據交換及通信。

IoT通信協議

REST/HTTP(鬆耦合服務調用)
REST即表述性狀態傳遞,是基於HTTP協議開發的一種通信風格。

適用範圍:REST/HTTP主要爲了簡化互聯網中的系統架構,快速實現客戶端和服務器之間交互的鬆耦合,降低了客戶端和服務器之間的交互延遲。因此適合在物聯網的應用層面,通過REST開放物聯網中資源,實現服務被其他應用所調用。

特點:

  1. REST 指的是一組架構約束條件和原則。滿足這些約束條件和原則的應用程序或設計就是RESTful
  2. 客戶端和服務器之間的交互在請求之間是無狀態的。
  3. 在服務器端,應用程序狀態和功能可以分爲各種資源,它向客戶端公開,每個資源都使用 URI 得到一個唯一的地址。所有資源都共享統一的界面,以便在客戶端和服務器之間傳輸狀態。
  4. 使用的是標準的 HTTP 方法,比如:GET、PUT、POSTDELETE

CoAP協議

CoAP(Constrained Application Protocol),受限應用協議,應用於無線傳感網中協議。

適用範圍:CoAP是簡化了HTTP協議的RESTful API,CoAP是6LowPAN協議棧中的應用層協議,它適用於在資源受限的通信的IP網絡。

MQTT協議(低帶寬)

MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸協議),是一種基於發佈/訂閱(publish/subscribe)模式的"輕量級"通訊協議,該協議構建於TCP/IP協議上

它可以以極少的代碼和有限的帶寬,爲連接遠程設備提供實時可靠的消息服務。作爲一種低開銷、低帶寬佔用的即時通訊協議,使其在物聯網、小型設備、移動應用等方面有較廣泛的應用。

在MQTT協議中,一個MQTT數據包由:固定頭(Fixed header)、可變頭(Variable header)、消息體(payload)三部分構成。MQTT數據包結構如下:

(1)固定頭(Fixed header)。存在於所有MQTT數據包中,表示數據包類型及數據包的分組類標識。
(2)可變頭(Variable header)。存在於部分MQTT數據包中,數據包類型決定了可變頭是否存在及其具體內容。
(3)消息體(Payload)。存在於部分MQTT數據包中,表示客戶端收到的具體內容。

DDS協議(高可靠性、實時)

DDS(Data Distribution Service for Real-Time Systems),面向實時系統的數據分佈服務。
以數據爲中心,使用無代理的發佈/訂閱消息模式,點對點、點對多、多對多, 提供多達21種QoS服務質量策略。
適用範圍:分佈式高可靠性、實時傳輸設備數據通信。目前DDS已經廣泛應用於國防、民航、工業控制等領域。

AMQP協議(互操作性)

AMQP(Advanced Message Queuing Protocol),先進消息隊列協議,用於業務系統例如PLM,ERP,MES等進行數據交換。

AMQP協議這種降低耦合的機制是基於與上層產品,語言無關的協議。是一種二進制協議,提供客戶端應用與消息中間件之間多通道、協商、異步、安全、中立和高效地交互。從整體來看,AMQP協議可劃分爲兩層:

Functional Layer:​ 功能層,位於協議上層主要定義了一組命令(基於功能的邏輯分類),用於應用程序調用實現自身所需的業務邏輯。例如:應用程序可以通過功能層定義隊列名稱,生產消息到指定隊列,消費指定隊列消息等基於(Message queues 模型)

Transport Layer:​ 傳輸層,基於二進制數據流傳輸,用於將應用程序調用的指令傳回服務器,並返回結果,同時可以處理信道複用,幀處理,內容編碼,心跳傳輸,數據傳輸和異常處理。

適用範圍:最早應用於金融系統之間的交易消息傳遞,在物聯網應用中,主要適用於移動手持設備與後臺數據中心的通信和分析。

XMPP協議(即時通信)

XMPP(Extensible Messaging and Presence Protocol)可擴展通訊和表示協議,一個開源形式組織產生的網絡即時通信協議。

適用範圍:即時通信的應用程序,還能用在網絡管理、遊戲、遠端系統監控等。

JMS

JMS (Java Message Service),即消息服務,這是JAVA平臺中著名的消息隊列協議。

Java消息服務應用程序接口,是一個Java平臺中關於面向消息中間件(MOM)的API,用於在兩個應用程序之間,或分佈式系統中發送消息,進行異步通信。Java消息服務是一個與具體平臺無關的API,絕大多數MOM提供商都對JMS提供支持。

物聯網操作系統比較

本部分參考博客或其他資料:
https://zhuanlan.zhihu.com/p/23618181
https://support.huaweicloud.com/productdesc-LiteOS/zh-cn_topic_0145347223.html

Huawei LiteOS

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章