详细阐释MQTT协议在车云通信中的优势

发布时间:2022-12-07  

车联网配置的普及,使得车端与云端的交互日益频繁。车云通信协议作为车联业务的底层,随着接入车辆总数的不断增长,设计时必须考虑健壮性和拓展性。 早期网联应用较少,因此不少车厂采用基于TCP/IP的私有化协议。但随着车联网业务场景的快速演变,私有协议弊端也开始凸显,例如:

(1)开发新车型或新控制器都需定制或适配协议栈,这会导致开发重点从业务转移到通信中间件,增加了人力成本和测试复杂性;

(2)私有协议具有封闭性、排他性等特点,一般是为了某些早期的特定业务场景而设计,缺乏灵活性和扩展性;

(3)接入车辆数的增多,也更易碰到性能的瓶颈,消息可靠性亦无保障,对上层业务影响较大。 因而一个轻量化、高可靠、可拓展的物联网协议是主机厂车云通信的不二选择。本文主要通过比较常见的物联网协议,并详细阐释MQTT协议在车云通信中的优势。          

请求响应模式          

首先介绍请求响应模式的物联网协议,即“一问一答”的形式,包括HTTP和CoAP。

6212c864-6f82-11ed-8abf-dac502259ad0.png

一、HTTP

读者最为熟悉的是HTTP,在早期也的确有不少设备采用基于REST风格的HTTP协议作为云端与设备端的应用层协议。其传输层采用TCP、网络层采用IPv4/IPv6。 然而HTTP协议是无状态、无连接的,一般由设备主动请求,云端难以主动向客户端推送消息,不能满足日益变化的车联业务需求。对于本就珍贵的车端运算和存储能力,HTTP较重的协议字段也增大了性能开销。与此同时,HTTP协议采用的传输层协议TCP并不支持多播或者广播,在数据分发上也具有瓶颈。 因此如果HTTP如承担车云的通信协议,是存在短板的。

二、CoAP

CoAP(Constrained ApplicaTIon Protocol),即受限制的应用协议,协议小巧,协议字段可选,数据包最小仅4字节。对于那些算力和内存小的设备,或现有Web服务器架构的设备,CoAP协议是一个更好的解决方案。

同为请求响应工作模式,CoAP保留了HTTP快速开发的特点,并减小了网络开销,实现了收发数据异步,提高了设备的响应速度。CoAP可与HTTP兼容,请求方法类似,包括了GET、POST、PUT、DELETE。 基于REST风格设计,相较于HTTP协议,传输层从TCP变为了UDP、网络层为6LowPAN(基于IPv6的低速无线个域网标准,即IPv6 over IEEE 802.15.4)。由于UDP允许广播和多播,CoAP协议降低了分发数据的带宽要求。但CoAP局限应用于局域网中,限制了其在车联网的应用。          

发布订阅模式          

物联网不少协议的设计模式为发布订阅模式,当前物联网云平台主流使用的发布订阅模式协议为DDS和MQTT。

一、DDS

DDS(Data DistribuTIon Service for Real-TIme Systems),为新一代分布式实时通信中间件协议,用于节点之间发送和接收数据、事件和命令。分发百万条消息的性能达到秒级。DDS采用无代理的发布/订阅体系架构,实现了以数据为中心的数据共享,提供多达22种QoS(Quality of Service,服务质量)策略,以保障数据进行实时、高效、灵活地分发,可满足各种分布式实时通信应用需求。这也是它适用于国防军事、工业控制这些高可靠性、可安全性应用领域的原因。

DDS的特性源于其底层实现了一个抽象的全局数据空间域,如下图所示,DDS的基本架构由域构成,域将各应用组合在一起进行通信。域是一个范围概念,由域ID唯一标识,只有在同一个域内的通信实体才能通信。域参与者作为数据分发服务的入口,包含若干个发布者,订阅者和主题,负责创建,删除,管理这些实体。

6221c512-6f82-11ed-8abf-dac502259ad0.png

目前DDS的实施主要通过有线网络。如车端在车载以太通过网DDS中间件实现SOA架构,可应用于智驾领域,以满足其高响应,强实时的要求。然而大部分车联业务,如FOTA,蓝牙钥匙、远程控制,对车云通信的实时性要求并不高,综合实施成本和实现方式考虑,DDS协议的轻量级和开发成本不如MQTT。

二 MQTT

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)协议是一种基于TCP/IP,采用发布订阅模式的轻量级物联网通信协议。MQTT协议通过代理(Broker)服务器实现数据的交互,是轻量、简单、开放和易开发的。这些特点使它成为互联网设备之间的通信的首选,实现了低带宽下与云端的数据传输。应用领域除车联网通信之外,还包括了物联网大数据采集、消息推送、智能家电等。源代码的开放进一步推动了MQTT的发展。

6247bb50-6f82-11ed-8abf-dac502259ad0.png

MQTT协议能适应针对低带宽网络,低计算能力的设备应用场景,主要设计特点如下。

(1)发布订阅模式方便车云的交互,数据通过Topic发布,支持多对多的通信;

(2)协议报文结构紧凑,性能开销小,负载的格式灵活,能有效减少车端的网络流量;

(3)提供三个可选的 QoS 等级,分别是“至多一次”,“至少—次”,“只有一次”。实际开发过程中,消息可以在用户定义的任何 QoS等级被发送出去,并且客户端也可订阅任何 QoS等级的主题。客户端会选择最高的QoS等级进行消息的发布和订阅,根据业务要求调整消息的服务质量,适应车端不同的网络环境;

(4)由于MQTT可适应不可靠网络的场景,通过遗嘱消息提供在线状态感知与会话保持能力,用来告知其他客户端本客户端的网络已经异常断开。在设备与服务端连接时,通过CONNECT报文指定,当出现socket异常断开或者保活超时时,服务端应当立即发布遗嘱消息,以确保尽快通知订阅者。

Mosquito是一款实现了MQTT的开源软件,开发人员可以利用 Mosquitto提供的API进行应用程序的开发。Mosquitto同时为MQTT实现了诸如SSL/TLS安全、线程管理等功能。

比较与总结          

最后我们对比上文所述的多种通信协议,如下表所示。在车联网场景中,MQTT能够以最小的网络开销,胜任未来海量车端设备的灵活、快速、安全接入,并保证复杂网络环境下消息实时性、可靠性。

62803e3a-6f82-11ed-8abf-dac502259ad0.png


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>