物聯(lián)網(wǎng)數(shù)據(jù)接入篇-應(yīng)用層 CoAP(7)

躍曰
0 評(píng)論 796 瀏覽 5 收藏 5 分鐘
🔗 B端产品经理需要进行售前演示、方案定制、合同签订等,而C端产品经理需要进行活动策划、内容运营、用户激励等

這篇文章,我們來學(xué)習(xí)下物聯(lián)網(wǎng)數(shù)據(jù)接入中的應(yīng)用層協(xié)議——CoAP,這種基于REST架構(gòu)的協(xié)議適用于在資源受限的低功耗設(shè)備上,其工作原理、應(yīng)用場(chǎng)景等信息,詳見本文。

CoAP,The Constrained Application Protocol,受限應(yīng)用協(xié)議,專門為物聯(lián)網(wǎng)和其他受限環(huán)境設(shè)計(jì)的一種輕量級(jí)協(xié)議,基于REST架構(gòu),與HTTP類似,但是基于 UDP,更加簡(jiǎn)潔和高效。CoAP協(xié)議適用在資源受限的低功耗設(shè)備上,尤其是NB-IoT的設(shè)備使用。設(shè)備醒了直接發(fā)數(shù)據(jù),發(fā)完設(shè)備休眠,省電。

他是個(gè)應(yīng)用層協(xié)議,聯(lián)網(wǎng)方式,就是網(wǎng)絡(luò)接口層可以用 Wi-Fi 連接、以太網(wǎng)連接、蜂窩網(wǎng)絡(luò)連接、藍(lán)牙連接、低功耗廣域網(wǎng)(LPWAN)連接(如 LoRa、NB-IoT 等)。

CoAP 模仿 HTTP 的 REST 模型,服務(wù)端以 URI 方式創(chuàng)建資源,客戶端可以通過 GET、PUT、POST、DELETE方式訪問這些資源,并且協(xié)議風(fēng)格也和HTTP極為相似。

MQTT可以實(shí)現(xiàn)一個(gè)最簡(jiǎn)單的loT架構(gòu):Device+MQTT服務(wù)器+APP。手機(jī)端或Web端可以直接從MQTT服務(wù)器訂想要的主題。

而CoAP可能需要這樣的架構(gòu):CoAP+ Web+ DataBase+App。使用CoAP必須經(jīng)過DataBase才能轉(zhuǎn)給第三方。

組成部分

主要包括客戶端、服務(wù)器和消息格式等。

工作原理

客戶端向服務(wù)器發(fā)送請(qǐng)求消息,服務(wù)器根據(jù)請(qǐng)求進(jìn)行相應(yīng)的響應(yīng)。CoAP 采用了類似于 HTTP 的請(qǐng)求/響應(yīng)模式,但針對(duì)受限環(huán)境進(jìn)行了優(yōu)化。

CoAP 報(bào)文:

報(bào)文結(jié)構(gòu):CoAP報(bào)文由固定的4字節(jié)頭部、0-8字節(jié)的Token、0或多個(gè)TLV格式的Option、可選的Payload組成。

報(bào)文類型:CoAP定義了四種報(bào)文類型,分別是CON(需要應(yīng)答的報(bào)文)、NON(無需應(yīng)答的報(bào)文)、ACK(應(yīng)答報(bào)文)和RST(復(fù)位報(bào)文)。

Code字段:Code字段占一個(gè)字節(jié),用于表示請(qǐng)求方法或響應(yīng)碼。例如,0.01表示GET方法,2.00表示成功響應(yīng)。文本類型(text/plain)、二進(jìn)制類型(application/octet-stream)、JSON類型(application/json)是在物聯(lián)網(wǎng)中應(yīng)用最廣泛的三種媒體類型,application/link-format 則是專屬于 CoAP 的媒體類型,一般在 CoAP 資源發(fā)現(xiàn)中使用。

Token:用于匹配Request和Response,或者用于消息防偽造等場(chǎng)景。

Options:通過報(bào)文選項(xiàng)可設(shè)定CoAP請(qǐng)求參數(shù)和負(fù)載媒體類型等。

Payload:真正有用的被交互的數(shù)據(jù)。

CoAP 和 HTTP對(duì)比

特點(diǎn)

輕量級(jí):協(xié)議開銷小,適合資源受限設(shè)備。COAP 是二進(jìn)制格式的,HTTP 是文本格式的,COAP 比 HTTP 更加緊湊。COAP 最小長度僅僅4B,一個(gè)HTTP的頭都幾十個(gè)B了。

低功耗:非長連接通信,適應(yīng)低功耗網(wǎng)絡(luò)的需求。

支持可靠傳輸:雖然基于 UDP,但通過四種報(bào)文類型的組合及重傳機(jī)制提高了傳輸?shù)目煽啃浴?/p>

應(yīng)用場(chǎng)景

智能家居:如智能家電的控制和狀態(tài)監(jiān)測(cè)。

工業(yè)物聯(lián)網(wǎng):工廠內(nèi)設(shè)備的通信。

智能農(nóng)業(yè):農(nóng)田監(jiān)測(cè)設(shè)備的數(shù)據(jù)傳輸。

可穿戴設(shè)備等領(lǐng)域,實(shí)現(xiàn)設(shè)備與服務(wù)器之間的高效交互。

本文由 @躍曰 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議。

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 目前還沒評(píng)論,等你發(fā)揮!
专题
11729人已学习16篇文章
“老板记账”,这个词相信大家都不陌生,其实这个词就等同与我们现在的“消费金融”,就是把钱借给有消费需求的人用于消费,融合场景:消费时选择分期或借一笔钱去直接消费。
专题
42661人已学习17篇文章
谈到互联网产品,我们不得不谈的就是它的盈利方式,这也是产品人经常会被问到的问题。
专题
12281人已学习14篇文章
现在,不少企业和行业都走上了数字化转型的征程。本专题的文章分享了数字化营销策略。
专题
64556人已学习17篇文章
每个网站或APP,发展到了一定的阶段,用户积分体系都是不可或缺的。
专题
16227人已学习12篇文章
本专题的文章分享了物联网产品的设计思路。
专题
14038人已学习13篇文章
作为一名运营,需要持续对自己的经验进行总结并不断更新迭代。本专题的文章分享了运营方法论。