CN109874123A - 使用发布订阅消息收发协议进行车辆通信 - Google Patents
使用发布订阅消息收发协议进行车辆通信 Download PDFInfo
- Publication number
- CN109874123A CN109874123A CN201811374211.6A CN201811374211A CN109874123A CN 109874123 A CN109874123 A CN 109874123A CN 201811374211 A CN201811374211 A CN 201811374211A CN 109874123 A CN109874123 A CN 109874123A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- message
- information
- messaging
- out information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种通过使用发布订阅消息收发协议与车辆通信的系统和方法,其中所述车辆包括无线通信设备,所述无线通信设备能够通过使用根据所述发布订阅消息收发协议的消息收发代理来执行与远程服务器或系统的数据通信,所述方法包括:使用所述无线通信设备与消息收发代理建立至少一个连接,其中使用所述发布订阅消息收发协议建立所述连接,并且其中通过从所述车辆向所述消息收发代理发送连接请求消息来建立所述至少一个连接中的每一个;从车辆的至少一个车辆系统模块(VSM)获得车辆信息;在车辆上生成发布消息,其中发布消息包括获得的车辆信息;并且使用发布订阅消息收发协议将发布消息从车辆发送到消息收发代理。
Description
引言
本发明涉及一种使用诸如消息队列遥测传输(MQTT)之类的发布订阅消息收发模型在车辆网络中传送信息。
车辆包括能够向远程服务器发送信息和从远程服务器接收消息的硬件和软件。另外,车辆通常还包括允许短程无线通信(SRWC)的设备。制造许多车辆使得车辆将关于车辆状态、条件、执行的操作等的交易信息报告给可以将交易信息存储在数据库中的远程服务器。在高频率的车辆使用期间(例如在高峰时段期间)维持车辆和车辆后端系统之间的端点到端点连接会使通信资源紧张。
发明内容
根据本发明的一个方面,提供了一种通过使用发布订阅消息收发协议与车辆通信的方法,其中所述车辆包括无线通信设备,所述无线通信设备能够通过使用根据所述发布订阅消息收发协议的消息收发代理来执行与远程服务器或系统的数据通信,所述方法包括:使用所述无线通信设备与消息收发代理建立至少一个连接,其中使用所述发布订阅消息收发协议建立所述连接,并且其中通过从所述车辆向所述消息收发代理发送连接请求消息来建立所述至少一个连接中的每一个;从车辆的至少一个车辆系统模块(VSM)获得车辆信息;在车辆上生成发布消息,其中发布消息包括获得的车辆信息;并且使用发布订阅消息收发协议将发布消息从车辆发送到消息收发代理。
根据各种实施例,该方法可以进一步包括以下特征中的任何一个或这些特征的任何技术上可行的组合:
·建立步骤还包括:在发送连接请求消息之后,从消息收发代理接收连接确认消息,其中连接确认消息指示建立的连接是成功的;
·连接请求消息包括车辆或车辆系统模块(包括至少一个VSM)请求订阅的主题的一个或多个主题名称;
·从消息收发代理接收第二发布消息的步骤,其中包括在第二发布消息中的至少一些数据至少部分地基于包括在第三发布消息中的信息,所述第三发布消息由消息收发代理从客户端设备接收;
·客户端设备是移动设备,并且其中包括在第二发布消息中的至少一些数据包括车辆命令;
·第三发布消息包括服务质量指示符,该服务质量指示符保证第二发布消息传递至少一次;
·消息收发代理被配置为:响应于在消息收发代理处从移动设备接收第三发布消息,确定第三发布消息是否指定车辆持有订阅的主题的主题名称;当确定第三发布消息指定车辆持有订阅的主题的主题名称时,确定车辆当前是否通过建立的连接而连接到消息收发代理;并且当确定车辆当前未通过建立的连接而连接到消息收发代理时,向车辆发送唤醒消息;
·使用除发布订阅消息收发协议之外的数据消息收发协议在车辆处接收唤醒消息,并且其中该方法还包括:响应于从消息代理接收到唤醒消息,重新建立与消息收发代理的连接,以允许在车辆处接收第二发布消息;
·车辆包括多个车辆系统模块(VSM),并且其中至少一个连接包括用于多个VSM中的每个的连接,并且其中多个VSM中的每个VSM使用包含在车辆中的无线通信设备建立与消息收发代理的连接;
·每个连接请求消息包括客户端标识符,该客户端标识符基于或者从车辆的标识号导出,并且其中每个客户端标识符彼此是唯一的;
·发布消息包括主题名称,并且其中,消息收发代理被配置为响应于接收到发布消息,将发布消息的至少一部分发送到订阅主题名称的一个或多个客户端设备;和/或
·连接建立步骤还包括与消息收发代理执行安全套接字层(SSL)握手。
根据本发明的另一方面,提供了一种通过使用发布订阅消息收发协议与车辆通信的方法,其中所述车辆包括无线通信设备,所述无线通信设备能够通过使用根据所述发布订阅消息收发协议的消息收发代理来执行与远程服务器或系统的数据通信,所述方法包括:使用所述无线通信设备与消息收发代理建立连接,其中使用发布订阅消息收发协议建立所述连接,并且其中通过从所述车辆向所述消息收发代理发送连接请求消息来建立所述连接;并且在发送连接请求消息之后,从消息收发代理接收连接确认消息,其中连接确认消息指示建立的连接是成功的;从车辆的一个或多个车辆系统模块(VSM)获得车辆信息;在车辆上生成发布消息,其中发布消息包括元数据和包括获得的车辆信息的有效载荷,并且其中元数据包括与车辆相对应的主题名称和/或获得的车辆信息;使用发布订阅消息收发协议将发布消息从车辆发送到消息收发代理,其中消息收发代理被配置为将发布消息的至少一部分发送到订阅包括在发布消息中的主题名称的一个或多个客户端设备;并且在发送发布消息之后,从消息收发代理接收发布确认消息。
根据本发明的又一方面,提供了一种车辆通信系统,其包括:(a)车辆后端服务设施,其包括:(a1)一个或多个服务器,每个服务器包括处理设备和存储器设备;以及(a2)包括车辆信息的一个或多个数据库;一级(b)车辆,其包括:(b1)无线通信设备,该无线通信设备包括处理设备、存储器设备和无线通信电路;(b2)多个车辆系统模块(VSM);以及(b3)连接无线通信设备和多个VSM的通信总线;(c)其中无线通信设备被配置为:(c1)使用通信总线从多个VSM接收第一组消息;并且(c2)使用无线通信电路根据发布订阅消息收发协议向消息收发代理发送第二组消息,其中第二组消息至少部分地基于第一组消息;并且(d)其中,消息收发代理被配置为:(d1)从车辆接收第二组消息;(d2)确定车辆后端服务设施是否订购了包括在第二组消息中的主题名称;并且(d3)当确定车辆后端服务设施订购了包括在第二组消息中的主题名称时,向车辆后端服务发送第三组消息,其中第三组消息包括包含在第二组消息中的车辆信息;并且(e)其中车辆后端服务设施包括包含在存储器设备上的计算机指令,所述计算机指令在被执行时使处理设备:(e1)根据发布订阅消息收发协议从消息收发代理接收第三组消息;(e2)提取包含在第三组消息的有效载荷中的车辆信息;并且(e3)将车辆信息存储到一个或多个数据库中。
根据各种实施例,该方法可以进一步包括以下特征中的任何一个或这些特征的任何技术上可行的组合:
·无线通信电路包括能够与蜂窝载波系统进行通信的蜂窝芯片组;
·第二组消息和第三组消息相同;
·无线通信设备被配置为根据发布订阅消息收发协议并通过执行安全套接字层(SSL)握手来建立与消息收发代理的连接,并且其中使用传输控制协议/互联网协议(TCP/IP)以及SSL加密来执行无线通信设备和消息收发代理之间的通信;
·车辆通信系统还包括消息收发代理;
·第二组消息包括有效载荷,其中无线通信设备还被配置为使用第一加密密钥加密第二组消息的有效载荷,其中第三组消息包括第二组消息的加密有效载荷,并且其中车辆后端服务设施包括根据公共加密密钥对应于第一加密密钥的第二加密密钥,使得车辆后端服务设施可以解密从消息收发代理接收的第三组消息的加密有效载荷;和/或
·发布订阅消息收发协议是消息队列遥测传输。
附图说明
在下文中将结合附图描述本发明的一个或多个实施例,其中相同的附图标记表示相同的元件,并且其中:
图1是描述能够利用本文公开的方法的通信系统的实施例的框图;
图2是通过使用订户推送消息收发协议与车辆通信的方法的实施例的流程图;并且
图3是通过使用订户推送消息收发协议与车辆通信的实施例的图。
具体实施方式
下面描述的系统和方法通过使用消息队列遥测传输(MQTT)实现车辆和各种其他设备之间的通信。MQTT技术可以集成到车辆通信网络中,并且可以提供优于传统车辆通信网络所使用的现有通信协议的各种优点。车辆MQTT系统可以与各种客户端设备结合使用,例如多个车辆、智能电话、其他移动设备、服务器和/或可以作为客户端执行MQTT库的任何电子计算设备,这将在下面进一步讨论。尽管在下面的实施例中全面讨论了MQTT技术,但是可以使用其他发布订阅消息收发或信息共享技术。并且,如本文所使用的那样,“发布订阅消息收发”是指使用消息收发代理来发送和接收消息并且不包括在客户端设备之间建立连接的那些技术或协议。并且,如本文所使用的那样,“MQTT”指代MQTT的所有变体,包括传感器网络的MQTT(MQTT-SN)。
例如,消息收发代理连接到各种客户端,并且在这样做时认证和授权各种客户端设备,使得每次客户端期望将信息发送到另一客户端设备(例如,车辆到后端服务设施)时,不必执行(或维护)包括认证和授权步骤的新的连接。至少根据一些实施例,通过为系统中的每个客户端设备维持单个连接,可以使用消息收发代理在客户端设备之间以减少建立直接客户端到客户端连接的开销的方式传送信息,其通常包括各种认证和授权步骤。
根据发布订阅消息收发协议,消息可以发布到代理,并且客户端也可以通过代理订阅某些主题(例如,其可以与特定客户端设备、客户端设备类、某些类型的信息等相关联,如下所述)。代理基于那些客户端设备的订阅信息向客户端设备发送消息。
在一种情况下,本文的方法和系统可用于从多个车辆发送、接收和存储交易信息。在其他情况中,车辆可以通过代理(例如MQTT代理)从智能手机接收控制命令。在一些情况中,当车辆正在被操作时,车辆发送更多交易信息,因为有更多信息要报告,例如车辆位置、发动机运行状态、其他车辆系统模块(VSM)状态和各种其他信息。在许多车辆被一次驱动的时候,例如在高峰时段,接收和管理信息的远程服务器可以通过多个连接从大量车辆接收非常多的交易消息,并且从而管理所有这些连接以及这些大量的消息可能很麻烦。如下所述,使用MQTT技术(或其他发布订阅技术)的车辆通信系统可以实现用于车辆通信网络的消息收发架构,其可以提供更易于管理的网络,至少在一些实施例中,这是由于不使用端点到端点连接的MQTT架构-也就是说,客户端设备都连接到代理设备,而不是直接连接到其他客户端设备。通过不使用客户端到客户端直接连接并且使所有客户端设备连接到消息收发代理,需要较少的认证/授权步骤来使用消息收发代理来保护与客户端设备之间的通信。
参考图1,示出了包括通信系统10并且可以用于实现本文公开的方法的操作环境。通信系统10通常包括具有无线通信设备30的车辆12、移动设备14、远程计算机16、远程设施18、消息收发代理60、一个或多个无线载波系统70,以及陆地通信网络76。应当理解,所公开的方法可以与任何数量的不同系统一起使用,并且不具体限于本文示出的操作环境。而且,系统10及其各个组件的架构、构造、设置和一般操作在本领域中通常是已知的。例如,通信系统10通常包括多个车辆12,但是出于简化的原因,本文仅明确地讨论了一个车辆12。因此,以下段落仅简要概述了一个这样的通信系统10;然而,本文未示出的其他系统也可以采用所公开的方法。
无线载波系统70可以是任何合适的蜂窝电话系统。载波系统70显示为包括蜂窝塔72;然而,载波系统70可以包括以下组件中的一个或多个(例如,取决于蜂窝技术):蜂窝塔、基站收发器、移动交换中心、基站控制器、演进节点(例如,eNodeB)、移动性管理实体(MME)、服务和PGN网关等,以及将无线载波系统70与陆地网络76连接或将无线载波系统与用户设备(UE、例如其可包括车辆12中的远程信息处理设备和/或移动设备14)连接所需的任何其他网络组件。载波系统70可以实现任何合适的通信技术,所述通信技术包括GSM/GPRS技术、CDMA或CDMA2000技术、LTE技术等。通常,无线载波系统70、它们的组件、它们的组件的布置、组件之间的交互等等在本领域中通常是已知的。
除了使用无线载波系统70之外,可以使用呈卫星通信形式的不同无线载波系统来提供与车辆的单向或双向通信。这可以使用一个或多个通信卫星(未示出)和上行链路发送站(未示出)来完成。单向通信可以是例如卫星无线电服务,其中节目内容(新闻、音乐等)由上行链路发送站接收,打包以便上载,并且然后发送到卫星,该卫星向订户广播节目。双向通信可以是例如使用一个或多个通信卫星的卫星电话服务,以便中继车辆12和上行链路发送站之间的电话通信。如果使用的话,除了无线载波系统70之外或代替无线载波系统70,可以使用该卫星电话。
陆地网络76可以是传统的陆基电信网络,其连接到一个或多个陆线电话并将无线载波系统70连接到远程设施18。例如,陆地网络76可以包括公共交换电话网(PSTN),例如用于提供硬连线电话、分组交换数据通信和因特网基础设施的公共交换电话网。陆地网络76的一个或多个段可以通过使用标准有线网络、光纤或其他光网络、有线网络、电力线、诸如无线局域网(WLAN)的其他无线网络或提供宽带无线接入(BWA)的网络或其任何组合来实现。
计算机16(仅示出一个)可以是通过诸如因特网的私人或公共网络可访问的许多计算机中的一些。如本文的实施例中所讨论的那样,计算机16可以是客户端设备(例如,MQTT客户端设备)。如本文所使用的那样,客户端设备是使用发布订阅消息收发协议发布和/或订阅消息(即,使用消息收发代理60发送和接收,如下面更详细讨论的那样)的任何这样的设备。每个这样的计算机16可以用于一个或多个目的,例如车辆12可访问的远程服务器。其他这样的可访问计算机16可以是例如:服务中心计算机,其中可以从车辆上载诊断信息和其他车辆数据;车辆所有者或其他订户用于访问或接收车辆数据或设置或配置订户偏好或控制车辆功能等目的的客户计算机;汽车共享服务器,其协调来自请求使用车辆的多个用户的登记作为汽车共享服务的一部分;或者通过与车辆12、远程设施18或两者通信来提供车辆数据或其他信息的第三方存储库。计算机16还可用于提供诸如DNS服务之类的因特网连接或用作使用DHCP或其他合适协议向车辆12和/或其他网络设备分配IP地址的网络地址服务器。在一个实施例中,计算机16可用于执行本文所讨论的方法;在其他实施例中,该方法可以由远程设施18处的服务器或其他计算设备来执行,如下面更详细地讨论的那样;并且,在另一个实施例中,该方法可以由计算机16和远程设施18处的服务器的组合来执行。
远程设施18可以容纳多个服务器和数据库,其可以用于通过使用一个或多个电子服务器向车辆电子设备20和/或移动设备14提供许多不同的系统后端功能。远程设施18包括服务器82和数据库84,它们可以存储在多个存储器设备上。而且,远程设施18可以包括一个或多个开关、现场顾问、自动语音响应系统(VRS),所有这些都是本领域已知的。远程设施18可以包括这些各种组件中的任何一个或全部,并且优选地,各种组件中的每一个经由有线或无线局域网彼此联接。远程设施18可以经由连接到陆地网络76的调制解调器接收和发送数据。数据传输也可以由无线系统进行、例如IEEE 802.11x,GPRS等。本领域技术人员将理解,尽管在所示实施例中仅描绘了一个远程设施18和一个计算机16,但是可以使用许多远程设施18和/或计算机16。
服务器82可以是包括至少一个处理器并且包括存储器的计算机或其他计算设备。处理器可以是能够处理电子指令的任何类型的设备,其包括微处理器、微控制器、主处理器、控制器、车辆通信处理器和专用集成电路(ASIC)。处理器可以是仅用于服务器82的专用处理器,或者可以与其他系统共享。至少一个处理器可以执行各种类型的数字存储指令,例如存储在存储器中的软件或固件程序(例如,EEPROM、RAM、ROM),这使得服务器82能够提供各种各样的服务。例如,至少一个处理器可以执行程序或处理数据以执行本文所讨论的方法的至少一部分。对于网络通信(例如,网络内通信、包括因特网连接的网络间通信),服务器可以包括一个或多个网络接口卡(NIC)(包括无线NIC(WNIC)),其可用于将数据传输到计算机和从计算机进行传输。这些NIC可以允许一个或多个服务器82、数据库84或包括路由器、调制解调器和/或交换机的其他网络设备彼此连接。在一个特定实施例中,服务器82的NIC(包括WNIC)可以允许建立SRWC连接和/或可以包括以太网电缆可以连接到其上的以太网(IEEE 802.3)端口,其可以提供两个或更多设备之间的数据连接或者例如用于与消息收发代理60的连接。远程设施18可以包括多个路由器、调制解调器、交换机或可以用于提供联网能力、例如与陆地网络76和/或蜂窝载波系统70连接的其他网络设备。
数据库84可以存储在多个存储器上,例如RAM、其他临时供电的存储器、任何非暂时性计算机可读介质(例如,EEPROM),或存储用于执行本文讨论的各种外部设备功能所需的一些或全部软件的任何其他电子计算机介质。远程设施处的一个或多个数据库可以存储帐户信息,例如订户认证信息、车辆标识符、车辆交易信息、车辆预订信息、与车辆可以是其一部分的汽车共享服务有关的汽车共享信息、简档记录、行为模式和其他相关的订户信息。此外,可以包括车辆信息数据库,其存储关于一个或多个车辆的信息,诸如可以由多个车辆(包括车辆12)获得并发送到远程设施18的交易信息。交易信息可以包括响应于某些车辆事件而获得的信息、例如打开车辆的点火装置(或以其他方式启动车辆主推进系统)。交易信息可以包括车辆位置、时间戳(或其他时间指示器)、车辆标识符(例如,车辆标识号(VIN))、车辆操作或状态等。
移动设备14是客户端设备,并且可以是具有网络能力的任何类型的可移动电子计算设备,诸如包括智能手机、平板计算机、膝上型计算机的个人移动设备,以及包括智能手表和智能眼镜的可穿戴电子计算设备。移动设备14可以包括实现蜂窝电信和短程无线通信(SRWC)以及其他移动设备应用的硬件、软件和/或固件,其包括可以结合本文所述的发布订阅消息收发架构使用的客户端消息收发应用(例如,MQTT客户端应用)。如本文所使用的那样,个人移动设备是能够SRWC的移动设备,其可由用户携带,并且其中设备的可携带性至少部分地取决于用户,例如可穿戴设备(例如,智能手表、一副智能眼镜)、可植入电子计算设备或手持电子计算设备(例如,智能手机、平板计算机、膝上型计算机)。如本文所使用的那样,短程无线通信(SRWC)设备是能够进行SRWC并且包括用于执行这种SRWC的必要SRWC电路的设备。
在一个实施例中,本文讨论的所有或任何SRWC设备、包括移动设备14都包括可以利用IEEE 802.11协议的无线网络接口卡(WNIC)以及包括IEEE 802.15和IEEE 802.16的其他无线IEEE 802协议。附加地或替代性地,移动设备可以包括蜂窝芯片组,其使得移动设备能够通过蜂窝载波系统70执行蜂窝通信。并且,至少在一些实施例中,移动设备14可以包括可以用于无线传输的一个或多个天线,所述无线传输包括与其他SRWC设备一起使用或与蜂窝载波系统70一起使用的无线电信号传输。
在一个特定实施例中,移动设备14可以使用蜂窝芯片组或其中包括的WNIC通过使用诸如消息队列遥测传输(MQTT)之类的发布订阅消息收发协议来向消息收发代理60发送消息。移动设备14的蜂窝芯片组或WNIC可用于通过使用传输控制协议/互联网协议(TCP/IP)技术来发送和接收来自消息收发代理60的消息,从而用于寻址和传输消息,其中发布订阅消息收发协议(例如,MQTT)在应用层顶部使用。存在其他实施例,如下面更详细讨论的那样。
在所示实施例中,车辆12被描绘为乘用车,但是应当理解,也可以使用包括摩托车、卡车、运动型多用途车(SUV)、休闲车(RV)、船舶、飞机等的任何其他车辆。一些车辆电子设备20总体上在图1中示出并且包括全球导航卫星系统(GNSS)模块22、发动机控制单元(ECU)24、无线通信设备30、其他车辆系统模块(VSM)42,以及许多其他组件和设备。可以连接一些或所有不同的车辆电子设备以通过一个或多个通信总线(例如总线44)彼此通信。通信总线44使用一个或多个网络协议为车辆电子设备提供网络连接。合适的网络连接的示例包括控制器区域网络(CAN)、面向媒体的系统传输(MOST)、本地互连网络(LIN)、局域网(LAN)以及其他适当的连接(例如,以太网或其他符合已知的ISO、SAE和IEEE标准和规范的连接),仅举几例。
车辆12可包括作为车辆电子设备20的一部分的多个车辆系统模块(VSM),例如GNSS模块22、ECU 24、车身控制模块(BCM)(未示出)、无线通信设备30和车辆用户接口52-58,如下面将详细描述的那样。车辆12还可以包括位于整个车辆中的呈电子硬件组件形式的其他VSM 42,并且其可以从一个或多个传感器接收输入并使用所感测的输入来执行诊断、监视、控制、报告和/或其他功能。每个VSM 42优选地通过通信总线44连接到其他VSM以及无线通信设备30,并且可以被编程为运行车辆系统和子系统诊断测试。一个或多个VSM42可以周期性地或偶尔地更新其软件或固件,并且在一些实施例中,这种车辆更新可以是经由陆地网络76和通信设备30从计算机16或远程设施18接收的空中(OTA)更新。如本领域技术人员所理解的那样,上述VSM仅是可以在车辆12中使用的一些模块的示例,因为许多其他模块也是可能的。
无线通信设备30被示为包括SRWC电路32、蜂窝芯片组34、处理器36、存储器38以及天线40和50。在其他实施例中,无线通信设备30可以是能够从车辆电子设备20外部的一个或多个网络发送和接收通信的任何电子计算设备。无线通信设备30是客户端设备,并且能够通过短程无线通信(SRWC)和/或通过远程通信(例如通过使用具有蜂窝载波系统70的无线电通信)来传送数据。无线通信设备30可以是独立模块,或者可以结合到车辆12的其他VSM(例如,信息娱乐单元、中央堆栈模块(CSM)等)中。在一个实施例中,无线通信设备30可以是远程信息处理单元的一部分,该远程信息处理单元包括蜂窝芯片组34、天线50和适当的软件,使得无线通信设备30能够利用蜂窝载波系统70进行蜂窝通信。
并且,如图示实施例中所示,无线通信设备30是SRWC设备并且包括实现SRWC通信的SRWC电路32。在一个实施例中,无线通信设备30可以是独立模块,或者在其他实施例中,设备30可以作为一个或多个其他车辆系统模块的一部分并入或包括在内,所述车辆系统模块例如为中央堆栈模块(CSM)、车身控制模块(BCM)、信息娱乐模块、远程信息处理单元、头部单元和/或网关模块。在一些实施例中,设备30可以实现为安装在车辆中的OEM安装(嵌入式)或售后市场设备。
无线通信设备30可以被配置为根据一个或多个无线协议进行无线通信,所述无线协议包括短程无线通信(SRWC),诸如IEEE 802.11协议、Wi-FiTM、WiMAXTM、ZigBeeTM、Wi-FidirectTM、蓝牙TM、蓝牙TM低功耗(BLE)或近场通信(NFC)中的任何一种。如本文所使用的那样,蓝牙TM指的是任何蓝牙TM技术,诸如蓝牙低功耗TM(BLE)、蓝牙TM4.1、蓝牙TM4.2、蓝牙TM5.0和可以开发的其他蓝牙TM技术。如本文所使用的那样,Wi-FiTM或Wi-FiTM技术指的是任何Wi-FiTM技术、例如IEEE 802.11b/g/n/ac或任何其他IEEE 802.11技术。短程无线通信(SRWC)电路32使无线通信设备30能够发送和接收SRWC信号、例如BLE信号。SRWC电路可以允许设备30连接到另一个SRWC设备。在一个实施例中,本文讨论的所有或任何SRWC设备、包括移动设备14包括可以利用IEEE 802.11协议的无线网络接口卡(WNIC)以及包括IEEE 802.15和IEEE802.16的其他无线IEEE 802协议。
无线通信设备30可以使车辆12能够经由分组交换数据通信与一个或多个远程网络(例如,远程设施18或计算机16处的一个或多个网络)通信。可以通过使用经由路由器或调制解调器连接到陆地网络的非车辆无线接入点来执行该分组交换数据通信。当用于诸如TCP/IP的分组交换数据通信时,通信设备30可以配置有静态IP地址,或者可以被设置为从网络上的另一设备(例如路由器或从网络地址服务器)自动接收分配的IP地址。
在一个特定实施例中,无线设备30可以使用蜂窝芯片组34或包括其中的SRWC电路32(例如,WNIC)通过使用诸如消息队列遥测传输(MQTT)之类的发布订阅消息收发协议来向消息收发代理60发送消息。设备30的蜂窝芯片组34和/或SRWC电路32可用于通过使用传输控制协议/互联网协议(TCP/IP)技术来发送和接收来自消息收发代理60的消息,从而用于寻址和传输消息,其中发布订阅消息收发协议(例如,MQTT)在应用层顶部得到使用。存在其他实施例,如下面更详细讨论的那样。
还可以通过使用可以由设备30访问的蜂窝网络来执行分组交换数据通信。通信设备30可以经由蜂窝芯片组34通过无线载波系统70传送数据。在这样的实施例中,无线电传输可以用于与无线载波系统70建立通信信道、例如语音信道和/或数据信道,以便可以通过信道发送和接收语音和/或数据传输。数据可以通过数据连接发送,例如通过数据信道上的分组数据传输,或者使用本领域已知的技术通过语音信道。对于涉及语音通信和数据通信的组合服务,系统可以通过语音信道利用单个呼叫,并根据需要在语音信道上的语音和数据传输之间进行切换,这可以使用本领域技术人员已知的技术来完成。
处理器36可以是能够处理电子指令的任何类型的设备,其包括微处理器、微控制器、主处理器、控制器、车辆通信处理器和专用集成电路(ASIC)。它可以是仅用于通信设备30的专用处理器,或者可以与其他车辆系统共享。处理器36执行各种类型的数字存储指令、例如存储在存储器38中的软件或固件程序,这使得设备30能够提供各种各样的服务。例如,处理器36可以执行程序或处理数据以执行本文所讨论的方法的至少一部分。存储器38可以包括RAM、其他临时供电存储器、任何非暂时性计算机可读介质(例如,EEPROM),或存储用于执行本文所讨论的各种外部设备功能所需的一些或全部软件的任何其他电子计算机介质。
在一个实施例中,无线通信设备30可以在车辆处于通电状态时和车辆处于断电状态时操作。如本文所使用的那样,“通电状态”是这样的车辆的状态,其中车辆的点火装置或主推进系统通电,并且如本文所使用的那样,“断电状态”是这样的车辆的状态,其中车辆的点火装置或主推进系统未通电。无线通信设备30的操作或状态可以由另一车辆系统模块控制、例如通过车身控制模块或信息娱乐模块。在通电状态下,无线通信设备30可以始终保持“接通”或从车辆电池或其他电源供电。在断电状态下,无线通信设备30可以保持在低功率模式或者可以周期性地供电,使得设备30可以唤醒并执行操作。
全球导航卫星系统(GNSS)模块22从GNSS卫星的星座接收无线电信号。根据这些信号,模块22可以确定车辆位置,该车辆位置可以使车辆确定其是否处于已知位置、例如家庭或工作场所。此外,GNSS模块22可以将该位置数据提供给无线通信设备30,该无线通信设备然后可以使用该数据来标识已知位置、例如车辆操作者的家或工作场所。GNSS模块22可用于向车辆操作者提供导航和其他位置相关的服务。在一个实施例中,GNSS模块可以是从多个GPS卫星接收位置信息的全球定位卫星(GPS)模块。导航信息可以在显示器58(或车辆内的其他显示器)上呈现,或者可以口头呈现,例如在提供逐向导航时完成。可以使用专用车载导航模块(其可以是GNSS模块22的一部分)来提供导航服务,或者可以通过安装在车辆中的远程信息处理单元来完成一些或所有导航服务,其中将位置信息发送到远程位置,以用于向车辆提供导航地图、地图注释(兴趣点,餐馆等)、路线计算等。位置信息可以提供给远程设施18或其他远程计算机系统、例如计算机16以用于其他目的,例如车队管理和/或用于汽车共享服务。而且,新的或更新的地图数据可以经由车辆远程信息处理单元或无线通信设备30从远程设施18下载到GNSS模块22。
车辆电子设备20还包括多个车辆用户接口,其为车辆乘员提供提供和/或接收信息的装置,所述装置包括按钮52、音频系统54、麦克风56和视觉显示器58。如本文所使用的那样,术语“车辆用户接口”广泛地包括任何合适形式的电子设备,其包括位于车辆上并且使车辆用户能够与车辆的组件通信或通过车辆的组件进行通信的硬件和软件组件。按钮52允许手动用户输入通信设备30以提供其他数据、响应或控制输入。音频系统54向车辆乘员提供音频输出,并且可以是专用的、独立系统或主要车辆音频系统的一部分。根据本文所示的特定实施例,音频系统54可操作地联接到车辆总线44和娱乐总线(未示出),并且可以提供AM、FM和卫星无线电、CD、DVD和其他多媒体功能。该功能可以与信息娱乐模块一起提供或独立于该信息娱乐模块提供。麦克风56向无线通信设备30提供音频输入,以使驾驶员或其他乘员能够通过无线载波系统70提供语音命令和/或执行免提呼叫。为此目的,它可以利用本领域已知的人机界面(HMI)技术连接到机载自动语音处理单元。视觉显示器或触摸屏58优选地是图形显示器,例如仪表板上的触摸屏或从挡风玻璃反射的抬头显示器,并且可用于提供多种输入和输出功能。还可以使用各种其他车辆用户接口,如图1的界面仅是一种特定实现的示例。
消息收发代理60可以包括各种计算机硬件和软件,并且可以包括多个服务器和数据库,这些服务器和数据库以协调的方式起作用以连接到客户端设备,从客户端设备接收消息,以及向客户端设备发送消息。在特定实施例中,消息收发代理包括许多电子计算服务器,其包括用于在彼此之间建立连接,以及用于与诸如车辆12、移动设备14、计算机16和/或服务器82的其他远程设备建立连接的各种网络接口,所有这些服务器都可以配置为客户端设备。消息收发代理60可以使用各种消息收发软件来实现,其包括可以下载并安装在各种电子计算设备或服务器上的库。在一个特定实施例中,代理实现MQTT协议并且可以包括使服务器充当代理的MQTT库。根据本文讨论的发布订阅消息收发协议,客户端设备可以仅通过向消息收发代理60发送消息和从消息收发代理60接收消息来彼此通信-即,在客户端设备之间没有建立直接通信连接。然而,一些通信系统可以使用各种协议进行网络通信,并且因此,客户端设备可以使用针对某些消息的发布订阅消息收发技术来发送和接收消息,同时使用针对其他消息的其他通信协议和技术。
如上所述,发布订阅消息收发技术和/或协议是客户端设备通过向消息收发代理发布消息,利用消息收发代理订阅某些主题(或消息的类型)以及从消息收发代理接收对应于代理处为该特定客户端设备保留的订阅的消息来彼此通信的技术和/或协议。通常,客户端设备可以向代理发布消息,并且消息可以包括“主题”或标识主题的“主题名称”。如本文所使用的那样,“主题”是可以在发布给代理的消息中指定的一类消息。在收到指定特定主题的消息之后,代理可以将消息发送到订阅特定主题的所有客户端设备。
根据本文讨论的许多实施例,消息队列遥测传输(MQTT)用作发布订阅消息收发协议。MQTT可以在应用层处使用,该应用层可以通过使用存储在非暂时性计算机可读介质(例如EEPROM、闪存等)上的计算机指令而在客户端设备和消息收发代理处实现。计算机指令可以包括一个或多个库、例如MQTT代理库(用于消息收发代理)和MQTT客户端库(用于客户端设备)。MQTT协议可以与TCP/IP一起使用,并且可以包括传输层安全性(TLS)、例如安全套接字层(SSL)安全性,如下面更详细讨论的那样。如本文所使用的那样,为简单起见,SSL指的是TLS和SSL系统和技术。在其他实施例中,例如那些使用MQTT用于传感器网络(MQTT-SN)的实施例中,可以使用其他传输和/或安全协议、例如用户数据报协议(UDP)。
在一些实施例中,可以使用第三方消息收发代理服务、例如由MicrosoftTMAzure和HiveMQTM提供的服务。在其他实施例中,消息收发代理可以安装在专用设备、例如由诸如OEM的车辆制造商拥有和/或操作的一个或多个服务器上。
如上所述,车辆12、移动设备14、计算机16和/或远程服务器82都可以被配置为使用发布订阅消息收发协议通过消息收发代理60彼此传送消息的客户端设备。这些客户端设备中的每一个可以包括各种库,这些库使得设备能够充当客户端设备并使用发布订阅消息收发协议来执行客户端设备的那些操作。在特定实施例中,使用MQTT并且每个客户端设备包括客户端库(例如,MQTT客户端库),并且代理包括代理库(例如,MQTT代理库)。如本文所使用的那样,客户端库是包括后台代码库的电子库,该后台代码库在被适当实现时可以用于使其所安装的设备能够作为客户端设备参与本文讨论的发布订阅消息收发通信系统中。并且,如本文所使用的那样,代理库是包括后台代码库的电子库,该后台代码库在适当实现时可用于使其所安装的设备能够作为消息收发代理参与本文所讨论的发布订阅消息收发通信系统中。在一些实施例中,客户端库和代理库可以包括在相同的库中,并且因此,基于设备如何实现和/或使我们的库将确定设备是充当客户端设备还是充当发布订阅消息收发通信系统中的消息收发代理。
在一个实施例中,可以从单个远程位置实现和启动消息收发代理。或者,在其他实施例中,多个消息收发代理可以分布并且位于不同的位置,并且在这样的实施例中,代理可以各自通过例如使用陆地网络76结合一个或多个网络协议、例如TCP/IP和/或用户数据报协议(UDP)-可以使用其他传输和寻址协议彼此互连。另外,在特定实施例中,代理网络可以通过使用发布订阅消息收发通信彼此连接-即,代理可以充当代理和客户端设备。当分布许多代理但需要彼此协调时,这种双重角色可能是有用的。
在消息收发代理和客户端设备之间发送的任何和所有消息都可以包括标头。标头可以指示消息长度和消息类型,以及其他信息。
如上所述,当使用发布订阅消息收发协议时,客户端设备不直接彼此连接;相反,客户端设备连接到消息收发代理。可以通过客户端设备向代理发送连接请求消息来建立连接。如上所述,可以使用TCP/IP,并且消息收发代理的IP地址可以对应于域名。连接请求消息可以是根据MQTT协议配置的CONNECT(连接)消息(在MQTT规范中指定)。连接请求消息可以包括各种信息,诸如客户端标识符、干净会话布尔标志、保活超时值、用户名、密码和各种其他信息(诸如“最后遗嘱”信息)。
客户端标识符可以由客户端选择,并且在一些实施例中,可以被选择为对于其他客户端设备是唯一的。例如,当向消息收发代理发送连接请求消息时,车辆12可以使用其车辆标识号(VIN)作为其客户端标识符。在其他实施例中,车辆可以包括被配置为发布订阅消息收发系统中的客户端设备的各种VSM,并且因此,这些VSM可以使用它们被容纳在其中的车辆的VIN以及特定的VSM标识符,使得客户端标识符对于特定车辆内的特定VSM是唯一的。车辆和/或其他客户端设备还可以利用其他已知标识符、例如媒体访问控制(MAC)地址或通用唯一标识符(UUID)。
连接请求消息可以包括用户名和/或密码,其可以用于认证目的以及用于授权目的。在使用用户名/密码的情况下,用户名和密码可以包括在连接请求消息中,该消息可以使用TLS/SSL进行加密。代理60可以保持用户名和密码的列表,使得当接收到用户名-密码对时,消息收发代理60可以验证该对。如果验证了用户名-密码对,则代理可以向客户端设备发送连接确认消息,如下面更详细地讨论的那样。附加地或替代性地,消息收发代理60可以保持授权客户端列表,该列表跟踪被授权用于使用消息收发代理60的设备的客户端标识符或用户名列表。并且,在一些实施例中,经授权的客户端列表可以包括每个客户端设备的授权主题,使得消息收发代理60可以确定特定客户端设备是否具有订阅和/或接收关于特定主题的消息的授权。在另一实施例中,消息收发代理60仅允许与那些客户端设备的连接,这些客户端设备指定与存储在消息收发代理处的客户端前缀匹配的客户端标识符。例如,消息收发代理60可以仅允许包含前缀“VEH”的那些设备连接;因此,发送指定“123VEH”作为客户端标识符的连接请求消息的客户端设备将不连接,而发送指定“VEH123”作为客户端标识符的连接请求消息的客户端设备将连接。可以使用其他字符串模式过滤器,例如后缀过滤器、包含过滤器、匹配过滤器等。
连接请求消息还可以包括某些不合适的断开连接信息。不合适的断开连接信息可以包括主题名称、服务质量等级、消息和保留标志。当消息收发代理确定客户端设备不合适地从消息收发代理断开连接(即,没有发送断开连接消息)时,消息收发代理可以将不合适的断开连接消息发送到订阅了在不合适的断开连接信息中指定的主题的其他客户端设备。
在一些实施例中,可以使用TLS/SSL,以便可以建立消息收发代理和客户端设备之间的安全连接。首次建立连接时可以执行TLS/SSL握手。可以使用包含公共加密密钥和签名的X509证书,该签名可以使用公共加密密钥和X509证书的其他内容进行验证。例如,一旦接收到证书,就可以使用公共密钥来解密签名,并且此后,可以使用特定的散列算法(例如,MD5)对证书的其他内容进行散列(这可以在证书中指定)。然后可以将解密的签名与证书内容(不包括签名)的散列值进行比较,并且如果两者匹配或以其他方式对应,则证书可以被认为是有效的。也可以使用本领域技术人员已知的其他认证技术。
一旦消息收发代理接收到连接请求消息并验证该消息,例如使用上面讨论的一种或多种技术,消息收发代理就可以向客户端设备发送连接确认消息。连接确认消息可以是CONNACK(连接认可)消息(如MQTT规范中所指定)。连接确认消息可以包括会话当前布尔标志和返回代码,该返回代码指示是否已经接受连接和/或不接受连接的原因。一旦接收到包括指示已经接受连接的返回代码的连接确认消息,则可以说已经建立了客户端设备和消息收发代理之间的连接。
当客户端设备希望与消息收发代理断开连接时,客户端设备可以向消息收发代理发送断开连接消息、例如MQTT规范中指定的断开连接消息。在消息收发代理接收到断开连接消息之后,消息收发代理可以停止与断开连接的客户端设备的所有通信,至少直到建立新的连接。
在诸如车辆12的客户端设备已经与消息收发代理建立连接之后,客户端设备可以开始向代理发布消息。发布消息可以包括元数据以及包括正在发布的消息的实质的有效载荷。元数据可以包括各种字段,例如在MQTT规范中指定的发布消息中包含的字段。例如,元数据可以包括分组标识符,该分组标识符允许从客户端设备和消息收发代理之间发送的其他消息唯一地标识的分组(即,消息)。此外,元数据可以包括主题名称,该主题名称指定消息所属的主题。主题名称可以是标识特定车辆、例如车辆12或车辆的特定组件的标识符。或者,主题名称可以是与一个或多个特定车辆功能或一个或多个车辆特征或状态有关的标识符。元数据还可以包括服务质量指示符,其指示发布消息的特定服务质量等级。服务质量指示符将在下面更详细地讨论。
可以包括在发布消息中的其他潜在元数据信息包括指示发布消息是否是已发送的重复消息的复制标志以及指示是否应该保留该消息以便可以将其发送到在收到发布消息后连接到消息收发代理的其他客户端设备的消息保留标志。如上所述,通常,发布订阅消息收发协议中的消息收发代理在将发布消息发送到当前连接的客户端设备之后删除发布消息,所述客户端设备订阅在发布消息中指定的特定主题。然而,如下面更详细讨论的那样,存在其他实施例,诸如保留某些消息的那些实施例-例如,某些发布订阅消息收发协议或实现包括允许保留发布消息的某些机制、例如通过在发布消息中设置消息保留标志。
响应于从客户端设备接收发布消息,消息收发代理可以发送发布确认消息、例如MQTT规范中指定的PUBACK消息。发布确认消息可以包括分组标识符,该分组标识符与发布确认消息正在确认的发布消息中的分组标识符相同。
其他消息可以由消息收发代理发送到客户端设备或由客户端设备发送到代理以响应于接收发布消息(或后续消息),例如发布接收消息(如MQTT规范中指定的PUBREC)、发布释放消息(MQTT规范中指定的PUBREL)和发布完成消息(MQTT规范中指定的PUBCOMP)。在一个实施例中,当发布消息中指定的服务质量等级被设置为特定等级、例如等级2(其对应于向每个订阅的客户端设备传递消息的一个且仅一个副本)时,可以发送这些其他响应消息。
一旦客户端设备与消息收发代理建立了连接,客户端设备就可以订阅一个或多个主题。并且,如下面更详细讨论的那样,在与消息收发代理建立连接时,客户端设备可能已经基于在先前连接期间执行的通信而订阅了某些主题。客户端设备可以发送包括订阅请求和元数据的订阅消息。订阅请求可以是呈主题名称/服务质量指示符对的形式,或者可以仅包括客户端设备想要订阅的主题名称的列表。元数据可以包括分组标识符、诸如以上关于发布消息所讨论的那些。
一旦消息收发代理接收到订阅请求消息,消息收发代理就可以将客户端设备的订阅信息保存在例如存储在消息收发代理的文本文件中。在一些实施例中,消息收发代理还可以验证发送订阅请求消息的客户端设备是否具有接收其已请求订阅的主题的消息的适当授权。在其他实施例中,消息收发代理可以在连接建立时授权客户端设备,并且当接收到订阅请求时,消息收发代理可以自动地遵守请求。
响应于订阅请求消息,消息收发代理可以发送订阅确认消息、例如MQTT规范中指定的SUBACK(订阅确认)消息。订阅确认消息可以包括与分组标识符匹配或对应的分组标识符,以作为订阅请求消息中的分组标识符。另外,订阅确认消息可以包括返回代码,该返回代码指示订阅是否被成功接收和处理。在一个实施例中,订阅确认消息可以包括订阅请求消息中包括的每个主题名称/服务质量对(即,每个订阅请求)的返回代码。并且,在特定实施例中,返回代码可用于确认订阅请求消息中的信息、例如由消息收发代理实际授予的服务质量等级。
除了订阅之外,客户端设备也可以取消订阅,例如通过发送取消订阅请求消息。取消订阅请求消息可用于通知消息收发代理客户端设备希望从客户端设备订阅(或客户端设备认为它已订阅)的一个或多个主题中取消订阅。取消订阅请求消息可以是MQTT规范中指定的取消订阅消息。取消订阅请求消息可以包括分组标识符和客户端设备不想保持订阅的一个或多个主题名称。响应于接收到取消订阅请求消息,消息收发代理然后可以发送取消订阅确认消息、例如MQTT规范中指定的UNSUBACK(取消订阅确认)消息。该取消订阅确认消息可以包括取消订阅请求消息中包括的分组标识符,以便客户端可以将接收的取消订阅确认消息与先前发送的取消订阅请求消息进行协调。
如上所述,可以为主题订阅和发布的消息指定服务质量(QoS)等级。通常,服务质量等级可用于指示向客户端设备传递消息的重要性。正如MQTT规范中所指定的那样,有三种服务质量等级:0表示消息最多只传递一次,但不保证消息的传递;1表示消息将至少传递一次;并且2表示消息将被传递一次且仅传递一次。在一些实施例中,当客户端设备向服务质量等级为0的消息收发代理发布(或发送)发布消息时,消息收发代理可以放弃发送发布确认消息。
并且,在一些实施例中,当客户端设备将发布消息发布(即,发送)到具有服务质量等级2的消息收发代理时,消息收发代理可以发送发布接收消息(PUBREC)。并且然后,响应于接收到发布接收消息(PUBREC),客户端设备可以发送发布释放消息(PUBREL)。并且,最后,响应于此,消息收发代理可以向客户端设备发送发布完成消息(PUBCOMP)。这些消息中的任何一个或全部可以包括初始发布消息中包括的分组标识符。
在许多实施例中,发布订阅消息收发协议通常不会保持会话,使得客户端设备必须在每次形成新的连接时重新订阅。然而,发布订阅消息收发协议可以包括一个或多个机制,其可以用于在与客户端设备断开连接时保持订阅信息,使得客户端设备不必在下一连接的开始时重新订阅。在一个实施例中,客户端设备可以在连接请求消息中将干净会话标志设置为假。因此,这将指示消息收发代理至少在接收到新的连接请求消息并且干净会话标志设置为真之前保持客户端的订阅信息(如客户端标识符中所指定的那样)。如果在接收到干净会话标志设置为假的连接请求消息后,消息收发代理确定针对客户端设备已存在会话(如客户端标识符中所指定),则消息收发代理可以通过在连接确认消息中包括设置为真的会话当前标志向客户端设备指示此情况。此外,当存在订阅特定主题的客户端设备的当前会话时,消息收发代理可以保留与客户端设备订阅的主题相对应的那些消息,以便消息收发代理可以在重新连接时将这些消息发送到客户端设备。
通常,当在消息收发代理和客户端设备之间没有发送或接收消息时,发布订阅消息收发协议可以使消息收发代理和客户端设备断开连接(或将该连接视为已终止)。如上所述,保活值可以包括在连接请求消息中,并且该值可以用于指定在将连接视为终止之前在客户端设备和消息收发代理之间没有消息传送的时间量。为了使会话保活,客户端设备可以发送ping请求消息,并且响应于此,消息收发代理可以用ping响应消息进行响应以指示接收到ping请求消息。
参照图2,示出了通过使用订户推送消息收发协议与车辆通信的方法200。将使用车辆12、移动设备14和远程服务器82作为客户端设备来描述方法200。方法200开始于步骤210,其中车辆12和消息收发代理60建立连接。在一个实施例中,可以在车辆点火装置开启时建立到消息收发代理60的连接。可以使用蜂窝芯片组34并使用蜂窝载波系统70和陆地网络76来发送连接请求消息。如上所述,车辆12可以发送连接请求消息,该连接请求消息包括可以从车辆处的一个或多个标识符导出的客户端标识符、例如车辆12的车辆标识号(VIN)。
在其他实施例中,车辆可能希望具有用于车辆内的各种系统模块(VSM)的连接。在这样的实施例中,包括在连接请求消息(和后续消息)中的客户端标识符可以包括唯一的车辆标识符(例如,VIN),以及包括在车辆中的特定车辆系统模块(VSM)的标识符。
连接请求消息可以包括车辆12想要订阅的各种主题或主题名称。在一个实施例中,车辆12可订阅车辆后端服务主题,其中车辆后端服务主题涉及从车辆后端服务设施为车辆发布的主题。车辆后端服务主题可以是为特定车辆或特定类型的车辆指定的主题。车辆后端服务可以包括通常通过远程后端服务器提供的那些服务、例如由远程设施18提供的那些服务。
响应于消息收发代理60接收连接请求消息,消息收发代理可以通过上面讨论的任何或所有认证/授权机制来认证和/或验证车辆12(或VSM)的授权。例如,连接请求消息可以包括用户名和密码,并且在接收到连接请求消息之后,消息收发代理60可以从存储器中调用用户名-密码文件并确定用户名和密码是否匹配。此外,消息收发代理60可以包括授权设备的列表,其可以由用户名、密码、客户端标识符或其任何组合来指定。替代性地或附加地,消息收发代理60可以包括未授权的客户端列表,其可以用于验证请求客户端设备是否未经授权用于连接或用于订阅特定主题。
响应于连接请求消息,消息收发代理60可以发送可以包括返回代码的连接确认消息。返回代码可以向车辆12(或其中的VSM)指示消息收发代理60是否决定接受或拒绝连接。方法200继续到步骤220。
在步骤220中,车辆可以获得关于车辆状态的信息。然后可以将所获得的信息打包到发布消息(例如,根据MQTT协议的发布消息)的有效载荷中,然后可以将其发布到消息收发代理(参见步骤230)。在一个实施例中,可以获得关于车辆的一个或多个状态、车辆系统模块(VSM)、车辆的操作者或用户、车辆的乘客或车辆周围的环境的信息。例如,车辆信息可以是车辆的位置(可以使用GNSS模块22确定)、点火状态、速度、速度、加速度、诊断代码(包括诊断测试代码(DTC))、乘客/驾驶员状态、燃料水平、电池电量和各种其他车辆信息。或者,车辆可以获得其他信息、例如关于一个或多个乘客或操作员的信息和/或环境信息。关于一个或多个乘客或操作员的信息可以包括:在车辆中或车辆处这样的个人的存在、由车辆中或车辆处的所述个人携带的一个或多个移动设备,和/或所述个人的一个或多个健康状态或条件。环境信息可以包括车辆内部或外部的存在温度、车辆观察到的天气或预测天气(例如,通过使用气压计或雨量计)、风速、湿度以及可以通过使用一个或多个车辆系统模块在车辆处收集或者获得的各种其他环境信息。在一个实施例中,所获得的信息可包括通过使用安装在车辆中的车辆传感器获得的任何或所有信息。该信息可以使用各种VSM获得,例如通过使用位于车辆上的车身控制模块(BCM)、ECU 24、GNSS模块22、无线通信设备30、麦克风56、按钮52或任何其他VSM 42。
在一个实施例中,响应于车辆确定另一客户端设备(例如,远程设施18或移动设备14)希望获得车辆信息,车辆可以收集和/或获得信息。例如,车辆可以从另一客户端设备接收消息(如在步骤240中,在一些实施例中,该步骤可以在步骤210之后并且在步骤220至230之前执行),对该客户端设备而言来自车辆的响应是期望的或预期的。在一个实施例中,用户可以使用移动设备14通过使用消息收发代理60向车辆发送车辆命令,并且响应于车辆接收和/或处理命令,车辆然后可以获得关于是否实际执行了命令的信息并且与车辆命令相关联的车辆状态。例如,在接收到点火开始命令时,车辆可以开始点火,然后收集关于车辆发动机的信息、例如每分钟转数(RPM)或发动机温度,然后可以将其通过消息收发代理60报告回移动设备14(参见步骤230)。方法200继续到步骤230。
在步骤230中,车辆向消息收发代理发布或发送发布消息。在一个实施例中,发布消息的有效载荷包括与车辆的当前状态有关的信息、例如在步骤220中获得的车辆信息。例如,当车辆希望发送与其点火系统有关的信息时,车辆可以生成包括主题名称“点火”的发布消息。在其他实施例中,车辆可以在主题名称中包括其VIN或其他标识符,以及VSM标识符或某个车辆子系统、模块、属性或特性的另一个标识符。在一些实施例中,可以使用第一加密密钥单独加密发布消息的有效载荷。消息所针对的客户端设备可以包括与第一加密密钥对应的第二加密密钥。例如,第一和第二加密密钥可以是在对称密钥加密方案中使用的密钥相同的密钥,或者一个可以是公共密钥,而另一个可以是根据公共密钥架构的私人密钥。
可以使用蜂窝芯片组34或设备30的SRWC电路经由蜂窝载波系统70和/或陆地网络76将发布消息发送到消息收发代理60。并且,响应于从客户端设备接收到发布消息,消息收发代理60可以执行各种步骤,例如上面讨论的那些步骤。例如,消息收发代理60可以响应于接收到发布消息而向车辆12发送发布确认消息。
另外,一旦消息收发代理60从车辆12接收到发布的消息并处理发布消息,消息收发代理60就可以从存储器中调用那些订阅了其主题在发布消息中指定的客户端设备。一旦将消息发送到所有订阅的客户端设备,就可以删除该消息。然而,在一些实施例中,发布消息可以包括消息保留标志,该消息保留标志可以指示是否应该保留该消息,直到所有订阅的客户端设备都被连接,使得它们可以接收该消息。方法200继续到步骤240。
在步骤240中,车辆可以从消息收发代理接收消息。在一个实施例中,消息收发代理60可以响应于消息收发代理60从另一客户端设备接收发布消息而向车辆12发送消息。例如,用户可以使用移动设备14来请求执行车辆功能。在这样的情况中,移动设备14上的应用程序15可以生成发布消息,该发布消息被发送到消息收发代理60并且包括主题名称,该主题名称包括与车辆12有关的信息、诸如以车辆12的VIN开头的主题名称。
该消息可以通过陆地网络76和/或蜂窝载波系统70传递到车辆。该消息可以包括车辆可以使用的各种信息、例如从移动设备发送的命令,其中该命令指示待执行的车辆功能。或者,该消息可以包括用于车辆模块(或其一部分)的软件更新。方法200继续到步骤250。
在步骤250中,车辆与消息收发代理断开连接。在一个实施例中,这可以通过从车辆向消息收发代理发送断开连接消息来执行,例如MQTT协议中指定的断开连接消息。在另一个实施例中,这可以通过在车辆和消息收发代理之间不使用发布订阅消息收发连接(即,超时)自动发生超过连接请求消息中指定的保活值的时间或者默认保活时间(例如,由消息收发代理或发布订阅消息收发库指定)。在其他实施例中,可以通过车辆向消息收发代理发送断开连接消息来执行断开连接。
在特定实施例中,如上所述,车辆可包括各种客户端设备。例如,车辆上的一个或多个VSM中的每一个、包括无线通信设备30、GNSS模块22、ECU 24和其他VSM 42可以是具有到消息收发代理60的单独连接的客户端设备。或者,在另一实施例中,无线通信设备30可以是与消息收发代理60一起使用的客户端设备,并且无线通信设备30可以充当发布订阅协议与车辆12的所有或一些其他VSM之间的网关。以这种方式,无线设备30可以发布和接收消息,但是可以以这样的方式这样做:即,它可以确定车辆12的哪个VSM要接收消息或者要从其接收消息。因此,仅与消息收发代理60的单个连接用于车辆12的许多VSM。在这些实施例中,可以通过从客户端设备向消息收发代理发送断开连接来终止任何或所有发布订阅消息收发连接。响应于接收到断开连接消息,消息收发代理60可以生成断开连接确认消息并将其发送回客户端设备,从而通知客户端设备该连接已被终止或断开。然后方法200结束。
现在参照图3,示出了描绘可以通过实现本文所讨论的方法的至少一个实施例而发生的潜在情况300的图。在步骤302中,远程服务器82可以向消息收发代理60发送连接请求消息,以尝试使用发布订阅消息收发协议建立连接。连接请求消息可以包括远程服务器82期望订阅的某些主题,诸如与特定车辆或特定类别、类型或车辆组有关的主题。在一个实施例中,主题名称可以包括车辆12的VIN、例如“1GNSKJKCZGR9999EX”,或者可以包括具有通配符的VIN,使得主题名称捕获特定类型的所有VIN。例如,可以移除车辆的唯一识别序列号(即,后六位数)并用诸如“*”的通配符替换-例如,“1GNSKJKCZGR*”将包括以“1GNSKJKCZGR”开头的所有VIN,因为“*”指示任何零个或多个字符可以附加到“1GNSKJKCZGR”并仍然匹配。
在步骤304之前并且在消息收发代理60接收到连接请求消息之后,消息收发代理可以通过使用例如连接请求消息中包括的用户名/密码来认证和/或确定远程服务器82的授权。在其他实施例中,连接请求消息的有效载荷可以包括认证信息、例如X509证书和/或授权信息,其包括权利信息(即,携带足以指示权利或授权执行某些功能的信息的数据),该权利信息向消息收发代理(或向车辆或其他客户端设备)指示远程服务器82是否已被信任以建立连接。在步骤304,消息收发代理可以发送连接确认消息,该连接确认消息包括例如指示连接是否已经成功建立的返回代码和/或与该连接相关联的服务质量等级。
在步骤306和308中,车辆12建立与消息收发代理60的连接。这可以在步骤302和304中以与远程服务器82和消息收发代理60的连接建立类似的方式执行。在步骤306中,车辆可以包括其希望订阅的某些主题名称。另外,车辆可以连接请求消息中包括用户名/密码对,或者可以在连接请求消息的有效载荷中包括其他凭证、认证信息或权利信息。在一个实施例中,连接请求消息可以包括车辆的VIN、车辆的另一个标识符或车辆系统模块、安装在车辆中的软件的版本,或者远程服务器82的标识符。并且,在一个实施例中,在发送连接请求消息之前,可以执行消息收发代理和客户端设备之间的SSL握手。在消息收发代理60接收到连接请求消息之后,消息收发代理60可以生成连接确认消息并将其发送到车辆12。
在步骤310中,车辆可以生成并向消息收发代理60发送发布消息、例如如上面在方法200(图2)的步骤230中所描述的发布消息。发布消息可以包括对应于或包括车辆的VIN的主题名称。在步骤312中,响应于接收到发布消息,消息收发代理60可以验证该消息,然后将发布消息确认消息发送回车辆12。
在步骤314中,消息收发代理可以将发布消息(或其内容)发送到订阅了包括在发布消息中的主题名称的所有客户端设备。例如,远程服务器82可以订阅与车辆的VIN相对应的主题名称,并且因此,当消息收发代理60接收到具有与VIN相对应的主题名称的发布消息时,消息收发代理可以随后发送消息到远程服务器82。在步骤310中从车辆12发送给代理的发布消息可以是与在步骤314中从消息收发代理60发送到远程服务器82的消息相同的消息,或者在步骤314中发送的消息可以是与源自在步骤310中发送的发布消息的某些信息的不同消息。在步骤316中,远程服务器82可以向消息收发代理发送发布消息确认消息,从而指示已经从代理接收到发布消息。
在步骤318中,车辆向消息收发代理60发送ping消息以保持连接活动。如上所述,连接可能超时并且因此断开连接,使得在可以执行车辆和消息收发代理之间的任何进一步通信之前需要建立新的连接。响应于接收到ping请求消息,消息收发代理60可以发送确认在消息收发代理60处接收到ping请求消息的ping响应消息,如步骤320所示。
在步骤322中,移动设备14可以向消息收发代理60发送连接请求消息。连接请求消息可以包括客户端希望订阅的各种信息和/或主题名称。在一种情况下,移动设备14可以订阅车辆12或与车辆12或车辆12的VSM相关联的主题。在步骤324,响应于消息收发代理60接收并验证连接请求消息,从消息收发代理60向移动设备14发送连接确认消息。
在步骤326中,移动设备14可以向消息收发代理60发布消息,并且在一个实施例中,消息可以包括主题名称或指示应该及时地向车辆发送消息的其他信息。在一个实施例中,移动设备可以在步骤326的发布消息中包括车辆命令。在步骤328中,消息收发代理向移动设备发送发布确认消息。在步骤330中,车辆可以发送另一个ping消息以继续保持连接活动,并且作为响应,消息收发代理60可以向车辆12发送ping响应,如步骤332所示。
在一种情况下,消息收发代理60可以确定应该及时地将消息发送到车辆,并且因此可以确定是否建立了与目标车辆的当前连接。例如,如果在步骤326中从移动设备接收的发布消息指示消息应该很快或在不久的将来传递,则消息收发代理60可以向车辆12发送唤醒消息,其向车辆指示车辆应该以活动模式操作以允许接收发布消息(即,通常包含传送特定消息的有效载荷的消息),如步骤334所示。如本文所使用的那样,“唤醒”可以包括从在低功率模式下操作无线通信设备30转换到在正常操作模式下操作无线通信设备30,其可以包括向无线通信设备提供更多功率。车辆12可以接收该唤醒消息,并且作为响应,可以生成并发送响应消息(步骤336)。
此后,消息收发代理60可以通过建立的连接将发布消息从步骤326发送到车辆12,如步骤338所示。并且,在步骤340中,车辆12然后可以发送发布确认消息。一旦车辆接收并处理发布消息、包括检查权利或认证信息,车辆就可以执行该命令。附加消息可以从车辆12发布到消息收发代理60并且从消息收发代理60发布到移动设备14,以便指示已经或者还没有执行车辆命令。
在步骤342中,车辆12向消息收发代理60发送断开连接消息,从而指示车辆希望断开连接。响应于从车辆12接收到断开连接消息,在步骤344,消息收发代理60可以向车辆12发送断开连接确认消息,从而指示已经接收到断开连接消息和/或连接已经终止。在其他实施例中,车辆12-远程服务器82连接可以自动地从连接的超时断开(即,连接中的不活动一段时间,例如,如在连接请求消息中所指定的那样)。然后情况300结束。
应理解,前述内容是对本发明的一个或多个实施方案的描述。本发明不限于本文公开的特定实施例,而是仅由下面的权利要求限定。此外,前面描述中包含的陈述涉及特定实施例,并且不应被解释为对本发明范围的限制或权利要求中使用的术语的定义,除非以上明确定义术语或短语。对于本领域技术人员来说,各种其他实施例以及对所公开的实施例的各种改变和修改将是显而易见的。所有这些其他实施例、改变和修改旨在落入所附权利要求的范围内。
如在本说明书和权利要求书中所使用的那样,术语“例”、“例如”、“比如”、“诸如”和“相似”,以及动词“包含”、“具有”、“包括”和他们的其他动词形式,当与一个或多个组件或其他项目的列表结合使用时,每个都被解释为开放式的,这意味着该列表不被视为排除其他附加组件或项目。其他术语应使用其最广泛的合理含义来解释,除非它们用于需要不同解释的上下文中。另外,术语“和/或”应解释为包含性OR。因此,例如,短语“A、B和/或C”将被解释为涵盖以下中的任何一个或多个:“A”;“B”;“C”;“A和B”;“A和C”;“B和C”;和“A、B和C”。
Claims (10)
1.一种通过使用发布订阅消息收发协议与车辆通信的方法,其中所述车辆包括无线通信设备,所述无线通信设备能够通过使用根据所述发布订阅消息收发协议的消息收发代理来执行与远程服务器或系统的数据通信,所述方法包括:
使用所述无线通信设备与消息收发代理建立至少一个连接,其中使用所述发布订阅消息收发协议建立所述连接,并且其中通过从所述车辆向所述消息收发代理发送连接请求消息来建立所述至少一个连接中的每一个;
从所述车辆的至少一个车辆系统模块(VSM)获得车辆信息;
在所述车辆上生成发布消息,其中所述发布消息包括所获得的车辆信息;并且
使用所述发布订阅消息收发协议将所述发布消息从所述车辆发送到所述消息收发代理。
2.根据权利要求1所述的方法,其中,所述连接请求消息包括所述车辆或车辆系统模块请求订阅的主题的一个或多个主题名称,所述车辆或车辆系统模块包括所述至少一个VSM。
3.根据权利要求2所述的方法,还包括从所述消息收发代理接收第二发布消息的步骤,其中包括在所述第二发布消息中的至少一些数据至少部分地基于包括在第三发布消息中的信息,所述第三发布消息由所述消息收发代理从客户端设备接收,并且其中所述客户端设备是移动设备,并且其中包括在所述第二发布消息中的至少一些数据包括车辆命令。
4.根据权利要求3所述的方法,其中,所述第三发布消息包括服务质量指示符,所述服务质量指示符保证所述第二发布消息传递至少一次。
5.根据权利要求3所述的方法,其中,所述消息收发代理被配置为:
响应于从所述移动设备在所述消息收发代理处接收到所述第三发布消息,确定所述第三发布消息是否指定了所述车辆持有订阅的主题的主题名称;
当确定所述第三发布消息指定所述车辆持有订阅的主题的主题名称时,确定所述车辆当前是否通过所建立的连接而连接到所述消息收发代理;并且
当确定所述车辆当前未通过所建立的连接而连接到所述消息收发代理时,向所述车辆发送唤醒消息。
6.根据权利要求5所述的方法,其中,使用除所述发布订阅消息收发协议之外的数据消息收发协议在所述车辆处接收所述唤醒消息,并且其中,所述方法还包括:响应于从所述消息代理接收所述唤醒消息,重新建立与所述消息收发代理的连接,以允许在所述车辆处接收所述第二发布消息。
7.根据权利要求1所述的方法,其中,所述车辆包括多个车辆系统模块(VSM),所述至少一个连接包括用于所述多个VSM中的每个的连接,并且所述多个VSM中的每个使用包括在所述车辆中的所述无线通信设备与所述消息收发代理建立所述连接,并且其中,所述连接请求消息中的每个包括客户端标识符,所述客户端标识符基于或者来源于所述车辆的标识号,并且其中所述客户端标识符中的每个彼此是唯一的。
8.根据权利要求1所述的方法,其中所述发布消息包括主题名称,并且其中所述消息收发代理被配置为响应于接收到所述发布消息,将所述发布消息的至少一部分发送到订阅了所述主题名称的一个或多个客户端设备。
9.一种通过使用发布订阅消息收发协议与车辆通信的方法,其中,所述车辆包括无线通信设备,所述无线通信设备能够通过使用根据所述发布订阅消息收发协议的消息收发代理来执行与远程服务器或系统的数据通信,所述方法包括:
使用所述无线通信设备与消息收发代理建立连接,其中使用发布订阅消息收发协议建立所述连接,并且其中通过以下方式建立所述连接:
从所述车辆向所述消息收发代理发送连接请求消息;并且
在发送所述连接请求消息之后,从所述消息收发代理接收连接确认消息,其中所述连接确认消息指示所建立的连接是成功的;
从所述车辆的一个或多个车辆系统模块(VSM)获得车辆信息;
在所述车辆处生成发布消息,其中所述发布消息包括元数据和包括所获得的车辆信息的有效载荷,并且其中,所述元数据包括与所述车辆相对应的主题名称和/或所获得的车辆信息;
使用所述发布订阅消息收发协议将所述发布消息从所述车辆发送到所述消息收发代理,其中所述消息收发代理被配置为将所述发布消息的至少一部分发送到订阅了包括在所述发布消息中的所述主题名称的一个或多个客户端设备;并且
在发送所述发布消息之后,从所述消息收发代理接收发布确认消息。
10.一种车辆通信系统,包括:
车辆后端服务设施,其包括:
一个或多个服务器,每个服务器包括处理设备和存储器设备;以及
包括车辆信息的一个或多个数据库;以及
车辆,其包括:
无线通信设备,其包括处理设备、存储器设备和无线通信电路;
多个车辆系统模块(VSM);以及
连接所述无线通信设备和所述多个VSM的通信总线;
其中,所述无线通信设备被配置为:
使用所述通信总线从所述多个VSM接收第一组消息;并且
使用所述无线通信电路根据发布订阅消息收发协议将第二组消息发送到消息收发代理,其中所述第二组消息至少部分地基于所述第一组消息;并且
其中,所述消息收发代理被配置为:
从所述车辆接收所述第二组消息;。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/829,356 US20190173951A1 (en) | 2017-12-01 | 2017-12-01 | Vehicle communication using publish-subscribe messaging protocol |
US15/829356 | 2017-12-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109874123A true CN109874123A (zh) | 2019-06-11 |
Family
ID=66548363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811374211.6A Pending CN109874123A (zh) | 2017-12-01 | 2018-11-19 | 使用发布订阅消息收发协议进行车辆通信 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190173951A1 (zh) |
CN (1) | CN109874123A (zh) |
DE (1) | DE102018130216A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111031147A (zh) * | 2020-01-22 | 2020-04-17 | 马瑞利汽车电子(广州)有限公司 | 一种基于mqtt框架的远程车载控制系统及方法 |
CN111552270A (zh) * | 2020-04-29 | 2020-08-18 | 北京汽车股份有限公司 | 用于车载诊断的安全认证和数据传输方法及装置 |
CN112367387A (zh) * | 2020-10-30 | 2021-02-12 | 湖北亿咖通科技有限公司 | 一种车联网通信方法及系统 |
CN112788097A (zh) * | 2019-11-06 | 2021-05-11 | Tttech汽车股份公司 | 利用来自面向服务的架构的信息提取的配置合成 |
CN112953942A (zh) * | 2021-02-22 | 2021-06-11 | 北京斯年智驾科技有限公司 | 港口数据控制方法、装置、系统、电子装置和存储介质 |
CN114616815A (zh) * | 2019-11-12 | 2022-06-10 | 西门子股份公司 | 用于传输订阅数据的方法以及数据提供组件、数据消费组件、网络和装置 |
CN114710557A (zh) * | 2022-04-12 | 2022-07-05 | 树根互联股份有限公司 | 一种数据传输方法、装置及数据发布设备 |
CN114766094A (zh) * | 2020-06-30 | 2022-07-19 | Lg电子株式会社 | 用于v2x服务的路侧单元 |
CN114979206A (zh) * | 2022-05-20 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种基于订阅发布模式的车辆ota升级系统和方法 |
CN115914197A (zh) * | 2022-11-29 | 2023-04-04 | 重庆长安汽车股份有限公司 | 基于mqtt协议的远程车控系统及方法 |
WO2023077968A1 (zh) * | 2021-11-04 | 2023-05-11 | 武汉路特斯汽车有限公司 | 一种车载通信方法、装置、设备及存储介质 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10630628B2 (en) * | 2018-03-23 | 2020-04-21 | Satori Worldwide, Llc | Systems and methods for managing vehicles |
JP6950605B2 (ja) * | 2018-03-27 | 2021-10-13 | トヨタ自動車株式会社 | 車両用通信システム |
CN109194736B (zh) * | 2018-08-30 | 2021-04-27 | 百度在线网络技术(北京)有限公司 | 消息去重方法、装置、电子设备、介质和无人车 |
CN110418305A (zh) * | 2019-08-01 | 2019-11-05 | 上海应用技术大学 | 一种道岔监测信息的传输方法及其传输系统 |
CN110703617A (zh) * | 2019-09-29 | 2020-01-17 | 上海上实龙创智慧能源科技股份有限公司 | 一种基于mqtt的智能家居控制系统 |
CN110737557A (zh) * | 2019-10-12 | 2020-01-31 | 北京百度网讯科技有限公司 | 电子控制单元的调试方法、装置、电子设备及存储介质 |
KR102266654B1 (ko) * | 2019-11-20 | 2021-06-18 | 단국대학교 산학협력단 | Mqtt-sn 프로토콜의 보안을 위한 mqtt-sn 보안 관리 방법 및 시스템 |
US11563823B2 (en) * | 2019-11-27 | 2023-01-24 | Verifone, Inc. | Systems and methods for device connectivity management |
DE102019134255A1 (de) * | 2019-12-13 | 2021-06-17 | Schaeffler Technologies AG & Co. KG | Verfahren zur Kommunikation zwischen einem Fahrzeug und zwei Kommunikationssystemen sowie Fahrzeugsystem |
US11834060B2 (en) | 2020-03-31 | 2023-12-05 | Denso International America, Inc. | System and method for managing vehicle subscriptions |
US11763238B2 (en) | 2020-08-07 | 2023-09-19 | Sony Group Corporation | User interface-based mobility transaction management on a MaaS platform |
WO2022036526A1 (zh) * | 2020-08-17 | 2022-02-24 | Oppo广东移动通信有限公司 | 通知消息的处理方法、装置、设备及存储介质 |
EP3968602B1 (en) | 2020-09-11 | 2024-05-22 | Volkswagen Ag | An online connectivity unit in an electronic control unit of a vehicle, corresponding method and corresponding computer program product |
EP3968600A1 (en) * | 2020-09-11 | 2022-03-16 | Volkswagen Ag | Controlling a communication between a vehicle and a backend device |
US11805188B2 (en) * | 2021-07-16 | 2023-10-31 | Itron, Inc. | Hub and spoke publish-subscribe |
JP2023037418A (ja) * | 2021-09-03 | 2023-03-15 | キヤノン株式会社 | 制御装置、制御方法、制御プログラム |
CN113965602A (zh) * | 2021-10-26 | 2022-01-21 | 广州小鹏汽车科技有限公司 | 车载ecu的订阅发布通信方法、服务器及系统 |
CN114051041A (zh) * | 2021-11-10 | 2022-02-15 | 深圳市赛格导航科技股份有限公司 | 一种基于RabbitMQ及MQTT的智慧农机系统及通信方法 |
JP2023093065A (ja) * | 2021-12-22 | 2023-07-04 | キヤノン株式会社 | 制御装置、情報処理装置、及びこれらの制御方法およびプログラム |
CN114422497B (zh) * | 2022-01-20 | 2023-05-30 | 重庆长安汽车股份有限公司 | 一种车辆氛围灯远程控制方法及可读存储介质 |
CN114339456B (zh) * | 2022-03-16 | 2022-05-27 | 飞狐信息技术(天津)有限公司 | 一种视频发布方法及装置 |
CN114866504B (zh) * | 2022-03-25 | 2024-02-23 | 安徽南瑞中天电力电子有限公司 | 一种基于mqtt消息协议的能源控制器进程间的通信方法 |
CN114978656B (zh) * | 2022-05-17 | 2023-06-09 | 北京经纬恒润科技股份有限公司 | 车载以太网检测防御方法及装置 |
CN115190165B (zh) * | 2022-06-24 | 2023-06-06 | 重庆长安汽车股份有限公司 | 一种基于订阅发布模式的车辆ota系统及方法 |
CN116684939B (zh) * | 2023-08-02 | 2023-11-07 | 中国电信股份有限公司 | 消息处理方法、装置、计算机设备和计算机可读存储介质 |
CN117544711B (zh) * | 2024-01-03 | 2024-04-19 | 陕西天行健车联网信息技术有限公司 | 一种多处理器间的通信方法、装置、设备和介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140241373A1 (en) * | 2013-02-28 | 2014-08-28 | Xaptum, Inc. | Systems, methods, and devices for adaptive communication in a data communication network |
CN104954424A (zh) * | 2014-03-31 | 2015-09-30 | 福特全球技术公司 | 远程车辆连接状态 |
CN104980490A (zh) * | 2014-04-02 | 2015-10-14 | 福特全球技术公司 | 车辆远程信息处理数据交换 |
CN106131025A (zh) * | 2016-07-15 | 2016-11-16 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息在数字标牌中传输方法 |
CN106250173A (zh) * | 2016-07-15 | 2016-12-21 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息远程安装和卸载广告的方法 |
CN106461408A (zh) * | 2015-06-02 | 2017-02-22 | 奥迪股份公司 | 用于运行车辆的方法和车辆 |
US20170093700A1 (en) * | 2015-09-30 | 2017-03-30 | WoT. io, Inc. | Device platform integrating disparate data sources |
US20170244657A1 (en) * | 2016-02-22 | 2017-08-24 | International Business Machines Corporation | Message delivery in a message system |
CN107302558A (zh) * | 2016-04-14 | 2017-10-27 | 福特全球技术公司 | 用于动态车辆通信响应的方法和设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2264594B1 (en) * | 2009-06-18 | 2011-10-12 | Software AG | A broker system for a plurality of brokers, clients and servers in a heterogeneous network |
KR102209175B1 (ko) * | 2016-11-25 | 2021-01-28 | 미츠비시 쥬고 기카이 시스템 가부시키가이샤 | 클라이언트, 브로커, 통신 시스템, 통신 방법 및 프로그램 |
GB2570607B (en) * | 2016-11-30 | 2022-04-06 | Mitsubishi Heavy Ind Mach Systems Ltd | Communication system, on-board unit, and communication method |
-
2017
- 2017-12-01 US US15/829,356 patent/US20190173951A1/en not_active Abandoned
-
2018
- 2018-11-19 CN CN201811374211.6A patent/CN109874123A/zh active Pending
- 2018-11-28 DE DE102018130216.9A patent/DE102018130216A1/de not_active Withdrawn
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140241373A1 (en) * | 2013-02-28 | 2014-08-28 | Xaptum, Inc. | Systems, methods, and devices for adaptive communication in a data communication network |
CN104954424A (zh) * | 2014-03-31 | 2015-09-30 | 福特全球技术公司 | 远程车辆连接状态 |
CN104980490A (zh) * | 2014-04-02 | 2015-10-14 | 福特全球技术公司 | 车辆远程信息处理数据交换 |
CN106461408A (zh) * | 2015-06-02 | 2017-02-22 | 奥迪股份公司 | 用于运行车辆的方法和车辆 |
US20170093700A1 (en) * | 2015-09-30 | 2017-03-30 | WoT. io, Inc. | Device platform integrating disparate data sources |
US20170244657A1 (en) * | 2016-02-22 | 2017-08-24 | International Business Machines Corporation | Message delivery in a message system |
CN107302558A (zh) * | 2016-04-14 | 2017-10-27 | 福特全球技术公司 | 用于动态车辆通信响应的方法和设备 |
CN106131025A (zh) * | 2016-07-15 | 2016-11-16 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息在数字标牌中传输方法 |
CN106250173A (zh) * | 2016-07-15 | 2016-12-21 | 深圳市丰巨泰科电子有限公司 | 一种基于mqtt的消息远程安装和卸载广告的方法 |
Non-Patent Citations (1)
Title |
---|
ANDREW BANKS: "MQTT Version 3.1.1", 《OASIS》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112788097A (zh) * | 2019-11-06 | 2021-05-11 | Tttech汽车股份公司 | 利用来自面向服务的架构的信息提取的配置合成 |
CN114616815A (zh) * | 2019-11-12 | 2022-06-10 | 西门子股份公司 | 用于传输订阅数据的方法以及数据提供组件、数据消费组件、网络和装置 |
CN111031147A (zh) * | 2020-01-22 | 2020-04-17 | 马瑞利汽车电子(广州)有限公司 | 一种基于mqtt框架的远程车载控制系统及方法 |
CN111031147B (zh) * | 2020-01-22 | 2024-04-12 | 马瑞利汽车电子(广州)有限公司 | 一种基于mqtt框架的远程车载控制系统及方法 |
CN111552270A (zh) * | 2020-04-29 | 2020-08-18 | 北京汽车股份有限公司 | 用于车载诊断的安全认证和数据传输方法及装置 |
CN114766094A (zh) * | 2020-06-30 | 2022-07-19 | Lg电子株式会社 | 用于v2x服务的路侧单元 |
CN112367387A (zh) * | 2020-10-30 | 2021-02-12 | 湖北亿咖通科技有限公司 | 一种车联网通信方法及系统 |
CN112953942A (zh) * | 2021-02-22 | 2021-06-11 | 北京斯年智驾科技有限公司 | 港口数据控制方法、装置、系统、电子装置和存储介质 |
WO2023077968A1 (zh) * | 2021-11-04 | 2023-05-11 | 武汉路特斯汽车有限公司 | 一种车载通信方法、装置、设备及存储介质 |
CN114710557A (zh) * | 2022-04-12 | 2022-07-05 | 树根互联股份有限公司 | 一种数据传输方法、装置及数据发布设备 |
CN114979206B (zh) * | 2022-05-20 | 2023-05-26 | 重庆长安汽车股份有限公司 | 一种基于订阅发布模式的车辆ota升级系统和方法 |
CN114979206A (zh) * | 2022-05-20 | 2022-08-30 | 重庆长安汽车股份有限公司 | 一种基于订阅发布模式的车辆ota升级系统和方法 |
CN115914197A (zh) * | 2022-11-29 | 2023-04-04 | 重庆长安汽车股份有限公司 | 基于mqtt协议的远程车控系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20190173951A1 (en) | 2019-06-06 |
DE102018130216A1 (de) | 2019-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109874123A (zh) | 使用发布订阅消息收发协议进行车辆通信 | |
CN104796924B (zh) | 使用无线设备管理传统wi-fi和wi-fi直接连接 | |
US10595352B2 (en) | Establishing a secure short-range wireless communications connection at a vehicle | |
CN108882200A (zh) | 在汽车共享系统中操作密钥卡 | |
US20190090174A1 (en) | Vehicle as public wireless hotspot | |
US10264399B2 (en) | Location-based vehicle wireless communications | |
US10231273B2 (en) | Vehicle wireless device connection management with switchover of primary connected device | |
US9445447B2 (en) | Pairing a wireless devices within a vehicle | |
CN103826322B (zh) | 移动终端分组连接 | |
US9179311B2 (en) | Securing vehicle service tool data communications | |
CN107085870A (zh) | 使用加密方法调节车辆访问 | |
US20120167071A1 (en) | Software update apparatus and method of vehicle | |
US9313661B2 (en) | Method of establishing communication between devices in a vehicle | |
CN108933775A (zh) | 自动无线通信认证 | |
US8639234B2 (en) | System and method for processing vehicle communications | |
CN103929830A (zh) | 车辆和手持通信装置之间的短程无线通信 | |
US8938230B2 (en) | Method of communicating between a vehicle and a telematics subscription service | |
CN106254413A (zh) | 数据同步 | |
CN104980901B (zh) | 安全sms消息发送 | |
US10419984B2 (en) | Wireless device connection management | |
CN108873680A (zh) | 更新车辆时钟 | |
CN105005539B (zh) | 使用消息鉴别码在微控制器处鉴别数据 | |
CN107872510A (zh) | 动态车辆请求策略 | |
CN108632783A (zh) | 由车辆进行的无线接入点检测和使用 | |
CN110509887A (zh) | 用于车辆预订网络的车辆配置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190611 |
|
WD01 | Invention patent application deemed withdrawn after publication |