国产综合精品,国产精品久久久av久久久,国产亚洲精品久久19p,国产女人乱人伦精品一区二区,国产精品久久精品国产

您的位置:首頁(yè) >汽車 >

FOTA技術(shù)專欄—車云通信應(yīng)用層協(xié)議淺析 全球新資訊

2022-11-13 05:46:55    來(lái)源:搜狐汽車

來(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é)議弊端也開(kāi)始凸顯,例如:

(1)開(kāi)發(fā)新車型或新控制器都需定制或適配協(xié)議棧,這會(huì)導(dǎo)致開(kāi)發(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ī)廠車云通信的不二選擇。本文主要通過(guò)比較常見(jiàn)的物聯(lián)網(wǎng)協(xié)議,并詳細(xì)闡釋MQTT協(xié)議在車云通信中的優(yōu)勢(shì)。

請(qǐng)求響應(yīng)模式

首先介紹請(qǐng)求響應(yīng)模式的物聯(lián)網(wǎng)協(xié)議,即“一問(wèn)一答”的形式,包括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é)議字段也增大了性能開(kāi)銷。與此同時(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快速開(kāi)發(fā)的特點(diǎn),并減小了網(wǎng)絡(luò)開(kāi)銷,實(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í)施主要通過(guò)有線網(wǎng)絡(luò)。如車端在車載以太通過(guò)網(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í)和開(kāi)發(fā)成本不如MQTT。

二 MQTT

MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測(cè)傳輸)協(xié)議是一種基于TCP/IP,采用發(fā)布訂閱模式的輕量級(jí)物聯(lián)網(wǎng)通信協(xié)議。MQTT協(xié)議通過(guò)代理(Broker)服務(wù)器實(shí)現(xiàn)數(shù)據(jù)的交互,是輕量、簡(jiǎn)單、開(kāi)放和易開(kāi)發(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ù)采集、消息推送、智能家電等。源代碼的開(kāi)放進(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ù)通過(guò)Topic發(fā)布,支持多對(duì)多的通信;

(2)協(xié)議報(bào)文結(jié)構(gòu)緊湊,性能開(kāi)銷小,負(fù)載的格式靈活,能有效減少車端的網(wǎng)絡(luò)流量;

(3)提供三個(gè)可選的 QoS 等級(jí),分別是“至多一次”,“至少—次”,“只有一次”。實(shí)際開(kāi)發(fā)過(guò)程中,消息可以在用戶定義的任何 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)景,通過(guò)遺囑消息提供在線狀態(tài)感知與會(huì)話保持能力,用來(lái)告知其他客戶端本客戶端的網(wǎng)絡(luò)已經(jīng)異常斷開(kāi)。在設(shè)備與服務(wù)端連接時(shí),通過(guò)CONNECT報(bào)文指定,當(dāng)出現(xiàn)socket異常斷開(kāi)或者保活超時(shí)時(shí),服務(wù)端應(yīng)當(dāng)立即發(fā)布遺囑消息,以確保盡快通知訂閱者。

Mosquito是一款實(shí)現(xiàn)了MQTT的開(kāi)源軟件,開(kāi)發(fā)人員可以利用 Mosquitto提供的API進(jìn)行應(yīng)用程序的開(kāi)發(fā)。Mosquitto同時(shí)為MQTT實(shí)現(xiàn)了諸如SSL/TLS安全、線程管理等功能。

比較與總結(jié)

最后我們對(duì)比上文所述的多種通信協(xié)議,如下表所示。在車聯(lián)網(wǎng)場(chǎng)景中,MQTT能夠以最小的網(wǎng)絡(luò)開(kāi)銷,勝任未來(lái)海量車端設(shè)備的靈活、快速、安全接入,并保證復(fù)雜網(wǎng)絡(luò)環(huán)境下消息實(shí)時(shí)性、可靠性。

關(guān)鍵詞: 通信協(xié)議 實(shí)時(shí)通信 應(yīng)用領(lǐng)域

相關(guān)閱讀