FOTA技術(shù)專欄—車云通信應(yīng)用層協(xié)議淺析 全球新資訊
來(lái)源 |十一號(hào)組織
知圈 | 進(jìn)“底盤社群”請(qǐng)加微yanzhi-6,備注底盤
(資料圖片)
車聯(lián)網(wǎng)配置的普及,使得車端與云端的交互日益頻繁。車云通信協(xié)議作為車聯(lián)業(yè)務(wù)的底層,隨著接入車輛總數(shù)的不斷增長(zhǎng),設(shè)計(jì)時(shí)必須考慮健壯性和拓展性。
早期網(wǎng)聯(lián)應(yīng)用較少,因此不少車廠采用基于TCP/IP的私有化協(xié)議。但隨著車聯(lián)網(wǎng)業(yè)務(wù)場(chǎng)景的快速演變,私有協(xié)議弊端也開始凸顯,例如:
(1)開發(fā)新車型或新控制器都需定制或適配協(xié)議棧,這會(huì)導(dǎo)致開發(fā)重點(diǎn)從業(yè)務(wù)轉(zhuǎn)移到通信中間件,增加了人力成本和測(cè)試復(fù)雜性;
(2)私有協(xié)議具有封閉性、排他性等特點(diǎn),一般是為了某些早期的特定業(yè)務(wù)場(chǎng)景而設(shè)計(jì),缺乏靈活性和擴(kuò)展性;
(3)接入車輛數(shù)的增多,也更易碰到性能的瓶頸,消息可靠性亦無(wú)保障,對(duì)上層業(yè)務(wù)影響較大。
因而一個(gè)輕量化、高可靠、可拓展的物聯(lián)網(wǎng)協(xié)議是主機(jī)廠車云通信的不二選擇。本文主要通過比較常見的物聯(lián)網(wǎng)協(xié)議,并詳細(xì)闡釋MQTT協(xié)議在車云通信中的優(yōu)勢(shì)。
請(qǐng)求響應(yīng)模式
首先介紹請(qǐng)求響應(yīng)模式的物聯(lián)網(wǎng)協(xié)議,即“一問一答”的形式,包括HTTP和CoAP。
一、HTTP
讀者最為熟悉的是HTTP,在早期也的確有不少設(shè)備采用基于REST風(fēng)格的HTTP協(xié)議作為云端與設(shè)備端的應(yīng)用層協(xié)議。其傳輸層采用TCP、網(wǎng)絡(luò)層采用IPv4/IPv6。
然而HTTP協(xié)議是無(wú)狀態(tài)、無(wú)連接的,一般由設(shè)備主動(dòng)請(qǐng)求,云端難以主動(dòng)向客戶端推送消息,不能滿足日益變化的車聯(lián)業(yè)務(wù)需求。對(duì)于本就珍貴的車端運(yùn)算和存儲(chǔ)能力,HTTP較重的協(xié)議字段也增大了性能開銷。與此同時(shí),HTTP協(xié)議采用的傳輸層協(xié)議TCP并不支持多播或者廣播,在數(shù)據(jù)分發(fā)上也具有瓶頸。
因此如果HTTP如承擔(dān)車云的通信協(xié)議,是存在短板的。
二、CoAP
CoAP(Constrained Application Protocol),即受限制的應(yīng)用協(xié)議,協(xié)議小巧,協(xié)議字段可選,數(shù)據(jù)包最小僅4字節(jié)。對(duì)于那些算力和內(nèi)存小的設(shè)備,或現(xiàn)有Web服務(wù)器架構(gòu)的設(shè)備,CoAP協(xié)議是一個(gè)更好的解決方案。
同為請(qǐng)求響應(yīng)工作模式,CoAP保留了HTTP快速開發(fā)的特點(diǎn),并減小了網(wǎng)絡(luò)開銷,實(shí)現(xiàn)了收發(fā)數(shù)據(jù)異步,提高了設(shè)備的響應(yīng)速度。CoAP可與HTTP兼容,請(qǐng)求方法類似,包括了GET、POST、PUT、DELETE。
基于REST風(fēng)格設(shè)計(jì),相較于HTTP協(xié)議,傳輸層從TCP變?yōu)榱薝DP、網(wǎng)絡(luò)層為6LowPAN(基于IPv6的低速無(wú)線個(gè)域網(wǎng)標(biāo)準(zhǔn),即IPv6 over IEEE 802.15.4)。由于UDP允許廣播和多播,CoAP協(xié)議降低了分發(fā)數(shù)據(jù)的帶寬要求。但CoAP局限應(yīng)用于局域網(wǎng)中,限制了其在車聯(lián)網(wǎng)的應(yīng)用。
發(fā)布訂閱模式
物聯(lián)網(wǎng)不少協(xié)議的設(shè)計(jì)模式為發(fā)布訂閱模式,當(dāng)前物聯(lián)網(wǎng)云平臺(tái)主流使用的發(fā)布訂閱模式協(xié)議為DDS和MQTT。
一、DDS
DDS(Data Distribution Service for Real-Time Systems),為新一代分布式實(shí)時(shí)通信中間件協(xié)議,用于節(jié)點(diǎn)之間發(fā)送和接收數(shù)據(jù)、事件和命令。分發(fā)百萬(wàn)條消息的性能達(dá)到秒級(jí)。DDS采用無(wú)代理的發(fā)布/訂閱體系架構(gòu),實(shí)現(xiàn)了以數(shù)據(jù)為中心的數(shù)據(jù)共享,提供多達(dá)22種QoS(Quality of Service,服務(wù)質(zhì)量)策略,以保障數(shù)據(jù)進(jìn)行實(shí)時(shí)、高效、靈活地分發(fā),可滿足各種分布式實(shí)時(shí)通信應(yīng)用需求。這也是它適用于國(guó)防軍事、工業(yè)控制這些高可靠性、可安全性應(yīng)用領(lǐng)域的原因。
DDS的特性源于其底層實(shí)現(xiàn)了一個(gè)抽象的全局?jǐn)?shù)據(jù)空間域,如下圖所示,DDS的基本架構(gòu)由域構(gòu)成,域?qū)⒏鲬?yīng)用組合在一起進(jìn)行通信。域是一個(gè)范圍概念,由域ID唯一標(biāo)識(shí),只有在同一個(gè)域內(nèi)的通信實(shí)體才能通信。域參與者作為數(shù)據(jù)分發(fā)服務(wù)的入口,包含若干個(gè)發(fā)布者,訂閱者和主題,負(fù)責(zé)創(chuàng)建,刪除,管理這些實(shí)體。
目前DDS的實(shí)施主要通過有線網(wǎng)絡(luò)。如車端在車載以太通過網(wǎng)DDS中間件實(shí)現(xiàn)SOA架構(gòu),可應(yīng)用于智駕領(lǐng)域,以滿足其高響應(yīng),強(qiáng)實(shí)時(shí)的要求。然而大部分車聯(lián)業(yè)務(wù),如FOTA,藍(lán)牙鑰匙、遠(yuǎn)程控制,對(duì)車云通信的實(shí)時(shí)性要求并不高,綜合實(shí)施成本和實(shí)現(xiàn)方式考慮,DDS協(xié)議的輕量級(jí)和開發(fā)成本不如MQTT。
二 MQTT
MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測(cè)傳輸)協(xié)議是一種基于TCP/IP,采用發(fā)布訂閱模式的輕量級(jí)物聯(lián)網(wǎng)通信協(xié)議。MQTT協(xié)議通過代理(Broker)服務(wù)器實(shí)現(xiàn)數(shù)據(jù)的交互,是輕量、簡(jiǎn)單、開放和易開發(fā)的。這些特點(diǎn)使它成為互聯(lián)網(wǎng)設(shè)備之間的通信的首選,實(shí)現(xiàn)了低帶寬下與云端的數(shù)據(jù)傳輸。應(yīng)用領(lǐng)域除車聯(lián)網(wǎng)通信之外,還包括了物聯(lián)網(wǎng)大數(shù)據(jù)采集、消息推送、智能家電等。源代碼的開放進(jìn)一步推動(dòng)了MQTT的發(fā)展。
MQTT協(xié)議能適應(yīng)針對(duì)低帶寬網(wǎng)絡(luò),低計(jì)算能力的設(shè)備應(yīng)用場(chǎng)景,主要設(shè)計(jì)特點(diǎn)如下。
(1)發(fā)布訂閱模式方便車云的交互,數(shù)據(jù)通過Topic發(fā)布,支持多對(duì)多的通信;
(2)協(xié)議報(bào)文結(jié)構(gòu)緊湊,性能開銷小,負(fù)載的格式靈活,能有效減少車端的網(wǎng)絡(luò)流量;
(3)提供三個(gè)可選的 QoS 等級(jí),分別是“至多一次”,“至少—次”,“只有一次”。實(shí)際開發(fā)過程中,消息可以在用戶定義的任何 QoS等級(jí)被發(fā)送出去,并且客戶端也可訂閱任何 QoS等級(jí)的主題。客戶端會(huì)選擇最高的QoS等級(jí)進(jìn)行消息的發(fā)布和訂閱,根據(jù)業(yè)務(wù)要求調(diào)整消息的服務(wù)質(zhì)量,適應(yīng)車端不同的網(wǎng)絡(luò)環(huán)境;
(4)由于MQTT可適應(yīng)不可靠網(wǎng)絡(luò)的場(chǎng)景,通過遺囑消息提供在線狀態(tài)感知與會(huì)話保持能力,用來(lái)告知其他客戶端本客戶端的網(wǎng)絡(luò)已經(jīng)異常斷開。在設(shè)備與服務(wù)端連接時(shí),通過CONNECT報(bào)文指定,當(dāng)出現(xiàn)socket異常斷開或者保活超時(shí)時(shí),服務(wù)端應(yīng)當(dāng)立即發(fā)布遺囑消息,以確保盡快通知訂閱者。
Mosquito是一款實(shí)現(xiàn)了MQTT的開源軟件,開發(fā)人員可以利用 Mosquitto提供的API進(jìn)行應(yīng)用程序的開發(fā)。Mosquitto同時(shí)為MQTT實(shí)現(xiàn)了諸如SSL/TLS安全、線程管理等功能。
比較與總結(jié)
最后我們對(duì)比上文所述的多種通信協(xié)議,如下表所示。在車聯(lián)網(wǎng)場(chǎng)景中,MQTT能夠以最小的網(wǎng)絡(luò)開銷,勝任未來(lái)海量車端設(shè)備的靈活、快速、安全接入,并保證復(fù)雜網(wǎng)絡(luò)環(huán)境下消息實(shí)時(shí)性、可靠性。
關(guān)鍵詞: 通信協(xié)議 實(shí)時(shí)通信 應(yīng)用領(lǐng)域
相關(guān)閱讀
-
魔獸真三秘籍(魔獸真三改建)
大家好,小琪來(lái)為大家解答以上的問題。魔獸真三秘籍,魔獸真三改建這... -
美的空調(diào)標(biāo)志(美的空調(diào)標(biāo)志)
大家好,小琪來(lái)為大家解答以上的問題。美的空調(diào)標(biāo)志,美的空調(diào)標(biāo)志這... -
如何培養(yǎng)學(xué)生的空間思維能力(如何培養(yǎng)...
大家好,小琪來(lái)為大家解答以上的問題。如何培養(yǎng)學(xué)生的空間思維能力,... -
十滴水洗澡的功效(十滴水打一字)
大家好,小琪來(lái)為大家解答以上的問題。十滴水洗澡的功效,十滴水打一... -
地鐵逃生怎么下載(地團(tuán)網(wǎng))|要聞速遞
大家好,小琪來(lái)為大家解答以上的問題。地鐵逃生怎么下載,地團(tuán)網(wǎng)這個(gè)... -
女人在床上說的最刻薄的話_世界即時(shí)看
大家好,小琪來(lái)為大家解答以上的問題。女人在床上說的最刻薄的話這個(gè)...
- 魔獸真三秘籍(魔獸真三改建)2022-11-25
- 美的空調(diào)標(biāo)志(美的空調(diào)標(biāo)志)2022-11-25
- 如何培養(yǎng)學(xué)生的空間思維能力(如何培養(yǎng)學(xué)生2022-11-25
- 十滴水洗澡的功效(十滴水打一字)2022-11-25
- 焦點(diǎn)快播:“外國(guó)人講安徽故事·合肥站”宣2022-11-25
- 2022黃山旅游節(jié)推出14項(xiàng)主題活動(dòng)2022-11-25
- 世界微速訊:以群眾口碑檢驗(yàn)富裕江西幸福江2022-11-25
- 內(nèi)雙畫眼妝選擇什么樣的眼影??jī)?nèi)雙眼妝怎么2022-11-25
- 眼影選購(gòu)需要注意哪些方面?眼影是不是越貴2022-11-25
- 深邃歐式眼妝教程 歐美上挑眼線怎么畫?-2022-11-25
- 環(huán)球觀熱點(diǎn):中分劉海怎么打理好看?哪些中2022-11-25
- 適合中分發(fā)型的臉型有哪些?2022年短發(fā)發(fā)型2022-11-25
- 全球今熱點(diǎn):中分發(fā)型有哪些優(yōu)勢(shì)?方形臉適2022-11-25
- 中分短發(fā)發(fā)型有哪些?你更喜歡哪一款?|全2022-11-25
- 中分適合什么臉型?劉海中分怎么處理?2022-11-25
- 劉海分開合不上怎么恢復(fù)?去理發(fā)店可以嗎?2022-11-25
- 【世界新要聞】圓臉臉型特點(diǎn)是什么?圓臉適2022-11-25
- 不想中分怎么變回來(lái)?哪些臉型留中分發(fā)型不2022-11-25
- 環(huán)球熱推薦:中分劉海留煩了想換發(fā)型怎么辦2022-11-25
- 熱點(diǎn)聚焦:劉海中分怎么解決?劉海剪厚了怎2022-11-25
- 如何讓頭發(fā)快速生長(zhǎng)?剛?cè)就觐^發(fā)第二天就洗2022-11-25
- 男士中分適合燙大卷還是小卷?男生燙發(fā)發(fā)型2022-11-25
- 自然卷應(yīng)該使用什么樣的護(hù)發(fā)產(chǎn)品?自然卷該2022-11-25
- 月餅分著吃寓意好嗎?為什么說月餅吃多了也2022-11-25
- 月餅?zāi)芗逯詥幔吭嘛灥某苑ㄓ心男縷環(huán)球2022-11-25
- 中秋節(jié)該怎么送禮?中秋節(jié)后天氣會(huì)轉(zhuǎn)涼嗎?2022-11-25
- 月餅烤完很硬怎么回事?月餅的好壞主要看什2022-11-25
- 十八數(shù)藏引入新投資方,深度布局產(chǎn)業(yè)化2022-11-25
- 地鐵逃生怎么下載(地團(tuán)網(wǎng))|要聞速遞2022-11-25
- 女人在床上說的最刻薄的話_世界即時(shí)看2022-11-25