你好,游客 登錄 注冊 搜索
背景:
閱讀新聞

以不一樣的視角看物聯網協議

[日期:2017-04-28] 來源:  作者: [字體: ]

  嵌入式系統接入互聯網形成一個物聯網系統,協議是必不可少的關鍵技術。傳統上以解決人機對話為目標的互聯網協議遇到了物物相連的物聯網系統,顯得像大馬拉小車,有勁使不上,物聯網協議就此應運而生。

  毫無疑問,人類和嵌入式設備通過完全不同的方式使用互聯網。人類主要通過萬維網—運行在互聯網上的應用集合—訪問互聯網。當然,網頁并不是互聯網人機交換的唯一選擇,我們還可以通過電子郵件、短信、手機應用程序,以及一系列的社交媒體工具實現互聯。

  與互聯網相比,在物聯網中,智能電子設備之間通過互聯網實現信息的交互,但這些設備上并沒有類似于網頁瀏覽器和社交媒體的工具,人們已經著手開發這類工具和服務。

  TCP/IP協議棧

  TCP/IP協議棧是互聯網的核心。它可以通過OSI七層參考模型來表示,如圖1所示。圖中頂部的三層組合在一起,以簡化模型。

  

 

  圖1 TCP/IP協議棧參考模型

  1. 物理層和數據鏈路層

  嵌入式系統中最使用的物理層協議包括:

  1)以太網(10,100,1G)

  2)WiFi(802.11b,g,n)

  3)串行PPP(點對點協議)

  4)GSM,3G,LTE,4G

  2. 網絡層

  網絡層是互聯網的基礎。該層提供了網絡間及物理層之間的連接。該層中,設備擁有人們隨處可見的IP地址。

  3. 傳輸層

  該層位于網絡層之上,具有TCP和UDP兩種傳輸協議。

  TCP通常用于網絡間的人機交互(電子郵件、網頁瀏覽等),以致很多人認為TCP協議是傳輸層使用的唯一協議。TCP提供了邏輯連接、傳輸確認、丟包重傳和流控服務。

  但對嵌入式系統而言,使用TCP有點小題大做了。盡管長期以來,UDP主要用于類似于DNS和DHCP的網絡服務,現在,在傳感器數據采集和遠程控制領域,它有了新的用武之地。

  UDP也適合于實時數據應用,例如音頻和視頻應用。這是因為,TCP的包應答和重傳特性對這類應用是無效的,并且增加了額外的開銷。如果一個數據塊(例如一段對話)沒有按時到達目的地,也沒有必要重傳該包。如果重傳,它會破壞包的順序并導致信息錯誤。

  設計物聯網設備時,必須考慮如何將本地設備連接到互聯網。可以通過網關,或者將該功能集成到設備中以實現連接。目前,很多MCU集成了以太網控制器,簡化了聯網的工作。

  物聯網協議棧

  你可以使用熟悉的Web技術來構建物聯網系統嗎?答案是肯定,但沒有使用新的協議有效。

  HTTP(S)和WebSocket是數據負載中傳送XML或JavaScript對象符號(JSON)的常用標準。JSON為網頁開發人員提供了一個抽象層,可以為Web應用創建一個到Web服務器的持續、穩定的連接。

  1. HTTP

  HTTP是用于Web服務的客戶端–服務器模型的基礎。實現HTTP連接的安全的方式是在物聯網設備中只包含一個客戶端,不包含服務器。換言之,設計一個只發起連接、不接收的物聯網設備比較安全。總之,不允許外部設備訪問你的局域網。

  2. WebSocket

  WebSocket是一個全雙工通信協議,它在客戶端和服務器之間,通過一個TCP連接實現全雙工通信。它是HTML 5規范的一部分,WebSocket標準簡化了雙向Web通信和連接管理方面的復雜度。

  3. XMPP

  XMPP(可擴展通信與表示協議)是現有Web技術在物聯網領域開發新用途的一個很好的實例。

  XMPP最初用于即時消息與現場信息。現在已經擴展到支持VoIP信令、協作、輕量級中間件、內容聚合及廣義的XML數據路由等領域。它是家用電器大規模管理的競爭者,這些白色家電包括洗衣機、干衣機、冰箱等。

  4. CoAP

  盡管Web協議可用于物聯網設備,對大多數物聯網應用來說,它的體積太龐大。IETF制定的資源受限的應用協議(CoAP),可用于低功耗和資源受限的網絡。CoAP是一個REST類型的協議,采用了與HTTP類似的語法,其語義可以與HTTP的語義一一對應。

  對基于電池供電或能量收集供電的設備來說,CoAP協議是一個很好的選擇。其部分特性如下:

  1)CoAP運行在UDP協議之上。

  2)由于UDP傳輸不可靠,CoAP重現了一些TCP的功能。例如,CoAP可以識別需要確認的請求和無需確認的請求。

  3)CoAP報文采用異步請求/響應模式。

  4)所有的報文頭、方法和狀態碼基于二進制編碼,以減少協議開銷。

  5)不同于HTTP,緩存CoAP響應的能力不依賴請求方式,取決于應答碼。

  6)CoAP面向需要輕量級協議和建立永久連接的需求。如果擁有Web應用背景,使用CoAP會比較容易。

  5. MQTT

  MQ(消息隊列)遙測傳輸是一個開源的協議棧(MQTT),面向資源受限的設備和低帶寬、高延遲的網絡。它采用發布/訂閱消息傳輸模式,是一個輕量級的協議,適合將小型設備連接到資源受限的網絡。

  MQTT帶寬利用率高,數據不可知,并具有連續的會話意識。可以幫助物聯網設備減少資源消耗,還可以確保可靠性和一定程度的服務等級。

  MQTT面向大型網絡中的小型設備,這些設備需要通過互聯網中的后臺服務器來監視和控制。它不是一個設備到設備的傳輸,也不是“組播”數據到多個接收器的傳輸。MQTT非常簡單,僅提供了一些控制選項。

  協議比較

  表1概述了所有的物聯網協議,開發這些互聯網定義的物聯網協議的目的是滿足低存儲空間、低帶寬和高延遲設備的聯網需求。

表1 超越MQTT:從思科的視角看物聯網協議(Paul Duffy,2013.4.30)

 

協議CoAPXMPPRESTful HTTPMQTT
傳輸類型 UDP TCP TCP TCP
消息模式 請求/響應 發布/訂閱 請求/響應 請求/響應 發布/訂閱 請求/響應
2G、3G、4G適用性(1000個節點) 很好 很好 很好 很好
LLN適用性(1000個節點) 很好 可以 可以 可以
資源占用 10K RAM/Flash 10K RAM/Flash 10K RAM/Flash 10K RAM/Flash
成功案例 生活局域網 大型家電的遠程管理 智能能源規范2(能源管理,家庭服務) 擴展企業消息到物聯網應用中

  表1 超越MQTT:從思科的視角看物聯網協議(Paul Duffy,2013.4.30)

  互聯網和物聯網協議比較如下,圖2提供了將互聯網協議與物聯網中的性能優勢比較。資料來源于Zach Shelby的報告“物聯網驅動標準”。

  

 

  圖2 互聯網和物聯網協議比較

 

  如圖2左側所示,Web應用的協議棧可以很容易地生成幾百到幾千字節的數據開銷。比較而言,物聯網協議針對受限制的設備和網絡進行了優化,僅生成幾十個字節的數據開銷。

收藏 推薦 打印 | 錄入:Cstor | 閱讀:
本文評論   查看全部評論 (0)
表情: 表情 姓名: 字數
點評:
       
評論聲明
  • 尊重網上道德,遵守中華人民共和國的各項有關法律法規
  • 承擔一切因您的行為而直接或間接導致的民事或刑事法律責任
  • 本站管理人員有權保留或刪除其管轄留言中的任意內容
  • 本站有權在網站內轉載或引用您的評論
  • 參與本評論即表明您已經閱讀并接受上述條款
棋牌app搭建教程视频 二八杠游戏作弊器下载 注册彩金送38的棋牌游戏 炸金花手机版下载免费 mg4377登录地址 重庆彩开奖号码查询结果 北京pk10技巧压6法 北京pk10直播开奖结果 pc28蛋蛋稳赢技巧 火龙果手机计划官网 一起博彩票官方网站