女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

COAP協議的雙層模型及其傳輸特性

jf_uPRfTJDa ? 來源:移動Labs ? 2023-11-20 10:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Labs 導讀

作為物聯網世界的主流協議之一,CoAP協議為低功耗受限設備的數據交互和網絡接入提供了可能,IETF在RFC7252中對其進行了詳細的定義,本文結合CoAP協議在和家親中的應用場景對其雙層模型及輸特性進行介紹。

作者:毛小俊

單位:中國移動智慧家庭運營中心

和家親是中國移動面向智慧家庭用戶推出的智能連接類App,是物聯網在家庭應用場景中的落地實踐。物聯網強調的是物與物之間的連接通信,在和家親中實現這種物物連接的就是Andlink協議,它是對多種主流物聯網協議的綜合運用,其中包含CoAP、MQTT、LwM2M、HTTP等協議,他們的簡單對比如下表所示。由于多個協議都涉及到CoAP,因此本文重點介紹CoAP協議雙層模型及其傳輸特性。

badfcf44-8743-11ee-939d-92fbcf53809c.png

Part 01和家親哪些場景用到了CoAP?

在和家親中,CoAP主要應用在下述2個場景中:

LPWAN網絡(包括NB-IoTLoRaSigFox等)下,智能設備與家開平臺通過LwM2M協議進行交互,LwM2M協議的底層便是基于UDP/UDP+DTLS傳輸層協議之上的CoAP協議。

Wi-Fi網絡下,配網是實現智能設備后續注冊、上線、管控的前提條件,配網過程中涉及到智能組網終端查找、發送入網請求、通知設備入網信息、設備入網成功廣播、智能組網終端密碼變更同步等步驟,這些步驟的交互即是通過CoAP協議完成。

bb05cfb4-8743-11ee-939d-92fbcf53809c.png

Part 02什么是CoAP協議?

CoAP協議(Constrained Application Protocol,標準文檔RFC7252),屬于應用層協議,在M2M通信中的作用和互聯網中的HTTP類似,但在定義上只是實現了REST的一個子集,更重要區別是HTTP運行于TCP之上,而CoAP運行于UDP協議之上,由于UDP建立的是非可靠連接,在網絡數據傳輸過程中,無論是請求還是響應,均存在丟包的風險。那CoAP協議的傳輸如何保障可靠性呢?這就涉及到CoAP協議的雙層模型:

bb10e62e-8743-11ee-939d-92fbcf53809c.png

CoAP協議邏輯上分為Messaging Model和Request/Response Model,其中:

Messaging Model:處理端到端之間的數據交換,并為各報文類型提供重傳機制,來彌補傳輸過程中的不可靠性。通過CoAP消息頭部的Message ID建立請求與應答消息之間的關聯,實現可靠傳輸。

Request/Response Model:定義了Client側通過URI向服務端的資源發出操作請求和服務端響應的規則。通過CoAP消息頭部的Token建立Request和Response關聯,實現可靠響應。

注意區分Request/Response Model中的Token和Messaging Model中的Message ID是兩個不同字段,如下圖[1]所示:

bb252bac-8743-11ee-939d-92fbcf53809c.png

下面分別從Request/Response Model和Messaging Model分析CoAP協議的傳輸特性。

Part 03Messaging Model的可靠消息傳輸

上述介紹的中間CoAP定義了四種不同類型的報文:CON、NON、ACK、RST。其中CON報文需要接收方確認,即每一個CON報文都對應一個頭部帶有相同Message ID的ACK報文或RST報文,如果在規定的時間內請求方未收到ACK報文或RST報文,那么客戶端將啟動 “重傳機制”。發送方未收到ACK/RST報文可能有兩種原因:

CoAP請求丟失:CoAP請求已經發出,但未到達服務端

CoAP響應丟失:服務器已收到請求并返回響應信息,但響應未正確到達客戶端

與重傳機制相關的參數包括:ACK_TIMEOUT、ACK_RANDOM_FACTOR、MAX_RETRANSMIT、MAX_TRANSMIT_SPAN、MAX_TRANSMIT_WAIT

ACK_TIMEOUT:超時響應等待時間,默認2s。一個CON報文的初始等待時間為一個隨機數,取值范圍是ACK_TIMEOUT到ACK_TIMEOUT*ACK_RANDOM_FACTOR之間。隨著重傳次數增加,每一次的等待時間均為前一次的2倍。

ACK_RANDOM_FACTOR:隨機系數,默認1.5。

MAX_RETRANSMIT:最大重傳次數,固定值4次。

MAX_TRANSMIT_SPAN:第一次發出CON報文到最后一次重新發送的最長時間間隔。

MAX_TRANSMIT_WAIT:第一次發出CON報文到發送方放棄接收ACK或RST報文的最長時間間隔。

為進一步說明Messaging Model重傳機制,以和家親中設備端向智能組網終端發送入網CON請求為例,假如在本次CON報文發送中

ACK_TIMEOUT=2s

ACK_RANDOM_FACTOR=1.5

首次超時響應等待時間取t1=2.5s (2s<=t1<=2*1.5s)

由于網絡較差嘗試了4次重新發送都未收到ACK或RST響應報文,可以得到如下圖所示的交互結果:

bb50d8ba-8743-11ee-939d-92fbcf53809c.png

需要注意的是上圖只是為了說明重傳機制的完整流程,只要CON消息發送后任意時刻,設備端收到來自服務端的ACK/RST消息,本次消息傳送便會終止。通過這種重傳機制,CoAP協議保證了端到端消息傳輸的可靠性。

Part 04Request/Response Model的消息傳輸

Request/Response模型的交互方式類似于HTTP協議中的客戶端和服務端交互的C/S模型。

Request關注的是根據URI向服務端的資源發出操作請求,請求類型包括GET、POST、PUT 和 DELETE,但和HTTP不同的是不會先建立連接,而是通過CoAP消息進行異步交互,Request和Response之間通過CoAP消息頭部的Token字段進行匹配。

Response則根據Request類型和服務端當前狀態的差異,分為Piggybacked Response、Separate Response、Non-confirmable Response3種不同類型:

? Piggybacked Response(附帶響應)

下圖[1]中展示了對于兩個GET請求,服務端返回附帶響應的例子,一個成功,一個導致了4.04(資源未找到)。通過ACK報文回應CON報文,是最通用的類型,屬于可靠響應模式。

bb60fd26-8743-11ee-939d-92fbcf53809c.png

? Separate Response(獨立響應)

假如Server由于系統繁忙等原因無法直接給出數據響應,那么它就會立即發回一個空的ACK消息,服務端在數據準備好后服務器端就會把它組裝成一個新的CON類型消息(這需要客戶端的ACK),進行異步響應。獨立響應也屬于可靠響應模式。下圖[1]中可以看到兩次交互中使用的Token一致,都是0x73;但是Message ID已經變掉了,從0x7a10變成了0x23bb。

bb6c4be0-8743-11ee-939d-92fbcf53809c.png

? Non-confirmable Response(無需響應)

Client的請求如果是NON類型,Server一般也回NON類型消息,但服務器也有可能發送一個CON類型的消息作為響應。適用于對響應可靠性要求不高的場景。例如對溫度傳感器數據的重復讀取,并不需要每一次都成功。圖中[1]request和response使用了相同的Token:0x74。

bb76c1b0-8743-11ee-939d-92fbcf53809c.png

Part 05總結

CoAP協議目前在和家親的智能設備大網和局域網連接、管控中都起到了重要的連接作用。作為物聯網的主流協議之一,CoAP協議除了本身單獨使用之外,還是LwM2M協議的底層消息傳遞協議,和MQTT相比,CoAP更加輕量、開銷更低,在諸如和家親設備配網等場景中更加合適。在使用CoAP時結合場景選擇合適的Message和Request/Response模型對保障傳輸可靠性,提高客戶端和服務端的交互效率十分重要。







審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2930

    文章

    46229

    瀏覽量

    392270
  • ACK
    ACK
    +關注

    關注

    0

    文章

    28

    瀏覽量

    11381
  • RST
    RST
    +關注

    關注

    0

    文章

    31

    瀏覽量

    7595
  • CoAP
    +關注

    關注

    0

    文章

    10

    瀏覽量

    10798
  • TCP通信
    +關注

    關注

    0

    文章

    146

    瀏覽量

    4552

原文標題:技術 | COAP協議的雙層模型及其傳輸特性

文章出處:【微信號:5G通信,微信公眾號:5G通信】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    永磁無刷電機及其驅動技術

    結構電機以及Halbach 陣列布置的電機等。第2章簡要介紹了功率器件和它們的開關特性與損耗,整流器及逆變器。逆變 器主要介紹了其模型、開關方案及其優缺點。同時介紹了四象限運行常用的學術用 語
    發表于 03-31 15:25

    FTP文件傳輸協議的工作模式

    FTP(File Transfer Protocol)文件傳輸協議,基于C/S架構,支持文件的上傳和下載功能。
    的頭像 發表于 02-06 10:09 ?700次閱讀

    iic協議的電氣特性說明

    特性 電壓水平 :I2C協議支持不同的電壓水平,包括3.3V、5V等。這允許I2C總線在不同的電壓級別上工作,但需要確保所有連接到總線的設備都能在相
    的頭像 發表于 02-05 13:37 ?676次閱讀

    什么是TCP協議及其工作原理

    在現代網絡通信中,數據的傳輸需要依賴于一套復雜的協議來確保數據的完整性和可靠性。TCP協議作為這些協議中的關鍵一環,扮演著至關重要的角色。 TCP
    的頭像 發表于 01-22 09:41 ?1194次閱讀

    MPU數據傳輸協議詳解

    在現代電子系統中,微控制器(MPU)扮演著核心角色,負責處理各種任務和數據。為了實現這些功能,MPU需要與其他設備進行數據交換。數據傳輸協議就是規定這些數據交換如何進行的一套規則。 MPU數據傳輸
    的頭像 發表于 01-08 09:37 ?869次閱讀

    什么是MTP協議及其應用

    一、MTP協議概述 MTP協議是SS7信令系統的一部分,它負責在不同網絡節點之間傳遞信令消息。MTP協議分為三個層次: MTP Level 1(MTP1): 負責在物理層面上傳輸信令消
    的頭像 發表于 01-03 09:50 ?2042次閱讀

    如何使用 HTTP 協議進行數據傳輸

    在互聯網時代,數據傳輸是信息交換的基礎。HTTP協議作為最常用的數據傳輸協議之一,支撐著全球數十億用戶的數據交互。 HTTP協議的基本概念
    的頭像 發表于 12-30 09:24 ?1554次閱讀

    PCIe數據傳輸協議詳解

    、網卡和聲卡等,以實現高效的數據傳輸。以下是對PCIe數據傳輸協議的介紹: 一、PCIe協議的基本概念 PCIe協議定義了一系列規范和要求,
    的頭像 發表于 11-26 16:12 ?3499次閱讀

    OSI七層模型中各層的協議 OSI七層模型的優勢與不足

    功能。以下是OSI七層模型中各層的協議: 物理層(Physical Layer) : 主要負責傳輸比特流,即實際的數據信號傳輸和物理連接的建立。
    的頭像 發表于 11-24 10:54 ?1261次閱讀

    物聯網常用協議及應用場景

    、Ethernet、NFC、 Zigbee、Bluetooth、GPRS、3G/4G/5G等。這些協議能夠確保在網絡上傳輸的數據的安全性和可靠性。 通訊協議:主要是運行在傳統互聯網TCP/IP
    的頭像 發表于 11-12 11:01 ?1701次閱讀

    TCP協議是什么

    ,應用層之下,為各種應用提供可靠的、面向連接的、基于字節流的傳輸服務。本文將詳細解析TCP協議的定義、工作原理、主要特點及其在各種應用場景中的重要作用。 定義與基本原理 TCP協議是一
    的頭像 發表于 10-09 13:54 ?1785次閱讀

    MQTT協議網關的工作原理及功能特性

    的數據傳輸。本文將詳細探討 MQTT協議網關 的工作原理、功能特性及其在物聯網應用中的重要作用。 一、MQTT協議網關的工作原理 1、連接設
    的頭像 發表于 09-18 17:00 ?1195次閱讀
    MQTT<b class='flag-5'>協議</b>網關的工作原理及功能<b class='flag-5'>特性</b>

    有損傳輸及其特性介紹

    電子發燒友網站提供《有損傳輸及其特性介紹.pdf》資料免費下載
    發表于 08-12 14:24 ?1次下載

    集總電路元件及其特性

    電子發燒友網站提供《集總電路元件及其特性.pdf》資料免費下載
    發表于 08-12 09:33 ?0次下載

    請問InDTU IHDMP協議使用的CRC校驗使用的什么參數模型

    InDTU IHDMP協議使用的CRC校驗使用的什么參數模型
    發表于 07-25 06:39