CN109981473B - 一种实时消息总线系统 - Google Patents
一种实时消息总线系统 Download PDFInfo
- Publication number
- CN109981473B CN109981473B CN201910116722.6A CN201910116722A CN109981473B CN 109981473 B CN109981473 B CN 109981473B CN 201910116722 A CN201910116722 A CN 201910116722A CN 109981473 B CN109981473 B CN 109981473B
- Authority
- CN
- China
- Prior art keywords
- message
- real
- time
- data
- bus module
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/15—Flow control; Congestion control in relation to multipoint traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种实时消息总线系统,所述系统包括:多个数据处理终端节点和数据总线模块;各个数据处理终端节点均与所述数据总线模块实时通信连接;所述数据处理终端节点用于产生数据,并将数据发送至所述数据总线模块,和/或用于从所述数据总线模块获取数据,并对所述数据进行相应处理。本发明通过设计具备实时交互能力的消息总线系统,实现了消息产生者和消息消费者之间的解耦,并且通过设计能够隔离与实时通信无关的背景进程的背景进程管理单元,支持实时消息处理的消息管理单元,能够适时调整消息分发机制的监测单元和组播单元,从多角度保障消息传输的实时性,使得所述系统的消息传输的实时性可以达到毫秒级甚至微秒级。
Description
技术领域
本发明涉及通信领域,尤其涉及一种实时消息总线系统。
背景技术
智能网联汽车的研发是当前业界的关注重点。智能网联汽车的出现使得车载电子系统日益复杂,具备信息娱乐、高级驾驶辅助(ADAS)、自动驾驶等功能的汽车中装备了越来越多的电子设备,如摄像头、激光雷达等。这些设备产生的大量数据需要及时地传输到车内的目的设备,对总线带宽提出了很高的要求。同时,随着汽车功能的增强,车内系统复杂性也越来越高,汽车专门功能区如车架、车身等需要共享车辆数据,这些也加重了带宽需求。而现有技术中普遍使用的控制器局域网络(Controller Area Network,CAN)总线由于传输速度慢、传输距离短、单总线连接的设备数量等原因,无法满足智能网联汽车的需要。
在控制器局域网络无法满足车辆数据通信要求的背景下,其它现有技术的实时性也无法满足车辆数据通信要求,其原因主要在于:
(1)一些与驾驶安全相关的传感器信息必须尽快地被相应的电子控制单元(ECU:Electronic Control Unit)接收并处理,而有的传感器信息并不是非常紧急的,比如信息娱乐的相关数据。
(2)不同的消息对实时性的要求不同,这些消息在发送时应该具有不同的优先级。比如,防抱死制动系统(ABS:Anti-lock Braking System)控制指令、发动机控制指令、自动变速器控制指令在总线上的发送优先级依次为:ABS控制指令优先级最高,自动变速器控制指令优先级最低。
(3)其实时性要求不仅包括对消息发送的要求还包括对消息发布的要求。比如,摄像头的视频信息必须及时发送给计算机视觉系统,还必须及时呈现在监控屏幕上,在某些应用场合,前车的摄像头视频还需要共享给后车。现有的消息总线虽然实现了队列的优先级,但是这些协议都是针对普通的计算机应用环境所应用的,队列的优先级只能保证优先级高的信息先于优先级低的信息发送,无法从根本上解决消息的实时发布,即无法保证接收端在特定时间内接收到消息。
发明内容
为了解决上述技术问题,本发明提供一种实时消息总线系统。
本发明是以如下技术方案实现的:
一种实时消息总线系统,所述系统包括:
多个数据处理终端节点和数据总线模块;各个数据处理终端节点均与所述数据总线模块实时通信连接;所述实时通信连接的时延在毫秒级或微秒级;
所述数据处理终端节点用于产生数据,并将数据发送至所述数据总线模块,和/或用于从所述数据总线模块获取数据,并对所述数据进行相应处理。
进一步地,各个数据处理终端节点均与所述数据总线模块基于以太网进行实时通信。
进一步地,至少一个以太网交换机构成实时消息交互总线系统的数据处理终端节点;每个以太网交换机均与至少一个车载设备通信连接;
以太网转换器构成数据总线模块;各个以太网交换机均与所述以太网转换器通过以太网通信连接。
进一步地,所述数据总线模块包括:
背景进程管理单元,用于隔离与实时通信无关的进程和消息总线进程;
消息管理单元,用于对所述数据总线模块接收到的消息进行处理;
监测单元,用于实时监测消息通信情况,并根据监测结果调整消息管理单元的处理逻辑;
组播单元,用于提供组播的工作方式。
进一步地,所述消息管理单元包括:
实时消息生产者,用于产生实时消息并将实时消息发送至消息分发器;
实时消息消费者,用于从消息队列获取实时消息;
消息分发器,用于接收实时消息,并将所述实时消息路由至相应的队列中以供消息消费者使用;
消息队列,用于存储实时消息。
进一步地,消息分发器用来暂存数据的缓冲区与消息队列的存储区共享。
进一步地,消息分发器的分发线程支持多种消息分发机制,在微秒级实时性要求中,采用轮询分发机制;在毫秒级实时性要求中,采用定时器驱动的分发机制。
进一步地,所述监测单元,包括:
消息缓存检测器,用于在消息进入消息分发器后添加时间戳,在消息以推送或拉取方式发出时,根据所述消息的时间戳计算所述消息被消息管理单元缓存的时间长度;
消息时延判断器,用于根据消息被消息管理单元缓存的时间长度判断消息管理单元的实际时延,并根据所述实际时延触发相应的优化机制,所述优化机制用于提升消息管理单元的实时性;
优化机制执行器,用于响应所述消息时延判断器的触发指令,执行对应的优化机制。
进一步地,所述执行对应的优化机制包括:
降低定时器的定时时间长度或者降低触发定时器事件的计数器次数;
和/或,
由定时器驱动的消息发送机制切换为轮询机制;
和/或,
若存在多个消息管理单元,则使用负载均衡策略。
进一步地,所述组播单元通过组播汇聚点实现组播。
本发明的有益效果是:
本发明提供了一种实时消息总线系统,通过设计具备实时交互能力的消息总线系统,实现了消息产生者和消息消费者之间的解耦,并且通过设计能够隔离与实时通信无关的背景进程的背景进程管理单元,支持实时消息处理的消息管理单元,能够适时调整消息分发机制的监测单元和组播单元,从多角度保障消息传输的实时性,使得所述系统的消息传输的实时性可以达到毫秒级甚至微秒级,从而使其具备广阔的应用前景。
附图说明
图1是本发明实施例提供的一种实时消息总线系统框图;
图2是本发明实施例提供的现有技术中的消息交互架构示意图;
图3是本发明实施例提供的本发明实施例中技术方案的消息交互架构示意图;
图4是本发明实施例提供的一种基于以太网的实时消息交互总线系统的架构示意图;
图5是本发明实施例提供的数据总线模块框图;
图6是本发明实施例提供的数据总线模块和数据处理终端节点基于实时操作系统进行通信的示意图;
图7是本发明实施例提供的消息管理单元框图;
图8是本发明实施例提供的监测单元框图;
图9是本发明实施例提供的组播示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
为了在汽车消息交互领域,突破CAN产生的数据流量交互瓶颈,本发明实施例提供一种实时消息总线系统,从改变数据交互模式,优化数据管理逻辑的角度提供一种高实时性的消息交互系统,从而可以替代或部分替代CAN承担汽车消息交互的职责,并显著提升对汽车各个模块产生的数据的处理能力。
具体地,本发明实施例提供的一种实时消息总线系统,所述实时消息总线系统用于智能联网环境,如图1所示,包括:
多个数据处理终端节点和数据总线模块;各个数据处理终端节点均与所述数据总线模块实时通信连接;所述实时通信连接的时延在毫秒级或微秒级;
所述数据处理终端节点用于产生数据,并将数据发送至所述数据总线模块,和/或用于从所述数据总线模块获取数据,并对所述数据进行相应处理。
具体地,智能物联网可能存在多个数据处理终端。以智能汽车为例,其包括各种各样的传感器和处理器,智能汽车的车载传感器数量接近200个,并且各个传感器与处理器之间需要周期性或基于时间驱动的方式进行数据交换,此外车载传感器和处理器的输出往往需要被多个车载设备共享,由此产生了复杂数据交互关系。将本发明实施例中提供的实时消息总线系统应用于汽车,能够实现汽车中相关部件之间的高速实时通信。具体地,在汽车中每个需要进行数据交换的设备或传感器均被称为一个数据处理终端节点。
为了将本发明实施例中技术方案与现有技术进行区别,请参见图2和图3,图2示出了现有技术中的消息交互架构示意图和本发明实施例中技术方案的消息交互架构示意图。
假设汽车网络中存在三个节点,三个节点间均需要交换数据。图2中表示的是节点之间的直接通信模式,即每个节点都需要通过设计专门的通信程序或配置来实现两两节点间的数据交换,当有新增加节点时,新的节点也需要设计相应的程序或修改配置来实现与节点1、节点2、节点3的通信。同时,节点1、节点2、节点3也必须修改相应的程序或配置,来实现与新增加节点之间的信息收发。如图3所示,由于节点1、节点2、节点3并不直接发生通信,而是把要发送的数据发送给数据总线模块,节点1、节点2、节点3需要接收的数据也来自于数据总线模块。由图3可知,如果有新增加节点,新节点只需要从数据总线模块订阅所需要的其他节点发来的信息即可。当新节点需要发布数据时,它只要将要发布的数据发送给数据总线模块,其他感兴趣的节点可以从数据总线模块订阅。
由以上分析可知,本发明实施例中技术方案实现了一种实时总线机制,从而实现了消息产生者和消息消费者的解耦,并使得系统具有良好的可扩展性。除此之外,消息总线还具有以下优势:
(1)可以在不同语言开发的应用程序之间实现通信。消息总线系统可以提供多种语言的客户端应用程序接口,从而轻松实现不同平台、不同语言编写的应用间消息的交互。
(2)可以将消息的同步处理转换为异步处理,便于实现应用的事件驱动架构,避免了同步处理中的请求阻塞,提高了系统的吞吐率和响应速度。
(3)实现应用之间解耦,减少了应用之间的依赖性,即消息产生者可能对消息消费者一无所知,这样的架构能更好地应对未来可能的业务处理流程改变。
(4)提高了系统扩展性,尤其当系统中增加新的业务节点并且新节点需要与已经存在的节点之间交换数据时,无需修改原有节点的代码和系统配置,简化了应用开发,保证系统功能升级的平滑演进,降低开发成本。
在一个可行的实施方式中,为了保证各个数据处理终端节点均与所述数据总线模块实时通信的带宽和通信速率,本发明实施例中基于以太网来进行数据通信,即数据处理终端节点与数据总线模块之间通过以太网连接。
以太网能够提供远高于CAN总线的带宽,可以满足高速率数据传输的场合;以太网的另一个优势是可以显著降低车内布线的复杂度和线缆的重量。进一步地,本发明实施例提供了一种基于以太网的实时消息交互总线系统的架构示意图。
如图4所示,所述架构示意图中将各个车载设备进行模块化划分,从而得到了多个分组,对每个分组使用以太网交换机进行管理,而各个以太网交换机和以太网转换器构成了实时消息交互总线系统。
显然,以太网交换机成为了实时消息交互总线系统的数据处理终端节点,而以太网转换器实现了数据总线模块的功能,从而得到了基于以太网的实时消息总线系统。本发明实施例中将基于以太网的实时消息总线系统构成的通信网络称为车载以太网。
具体地,本发明实施例中所述实时通信连接是指通信时延能够被控制在毫秒级或者微秒级的通信连接,具体可以为在车联网环境中,满足车辆各个部件通信实时性要求的通信连接。
为了进一步提升本发明实施例提供的实时消息总线系统的实时性,使得其可以应用于汽车等相关对于实时性要求较高的领域,本发明实施例中对实时消息总线系统进行了进一步设计,具体地,本发明实施例中数据总线模块如图5所示,包括:
背景进程管理单元100,用于隔离与实时通信无关的进程和消息总线进程。
消息管理单元200,用于对所述数据总线模块接收到的消息进行处理。
监测单元300,用于实时监测消息通信情况,并根据监测结果调整消息管理单元的处理逻辑。
组播单元400,用于提供组播的工作方式。
本发明实施例中数据总线模块通过进程隔离、消息管理、消息监测和组播四个功能模块保证消息通信的实时性,下面具体对各个模块进行描述。
如图6所示,其示出了数据总线模块和数据处理终端节点基于实时操作系统进行通信的示意图。
为了从操作系统层面上保证系统的实时性,数据总线模块需要基于实时操作系统构建,它可以是安装有实时补丁的L i nux,QNX,或者是商用的实时操作系统,如Vxworks,相应的,各个数据处理终端节点均可以构建于实时操作系统之上。所述背景进程管理单元用于把数据总线模块的与实时通信无关的进程和与消息总线进程进行隔离,从而保证消息总线的收发进程独占处理器,没有其他进程的干扰。
仅仅采用实时操作系统仍然无法保证消息发布的实时性,因为影响系统实时性的因素是多方面的,如果系统配置不当,就会有很多不确定的干扰进程与消息收发进程竞争资源,从而导致无法及时接收和发送实时消息。背景进程管理单元的目的是通过合理的规划和配置系统来消除不确定因素对实时应用的影响。具体措施包括通过编写脚本来关闭操作系统的CPU负载均衡功能、关闭CPU自动调节时钟频率功能、关闭操作系统中断均衡服务、设备中断服务线程的CPU捆绑和CPU使用规划等。具体的功能配置因处理器的厂家不同而不同。对于背景进程的迁移可以通过脚本调用taskset等命令来实现。
为了进行消息管理,消息管理单元200将参与消息管理的各个环节进行逻辑拆分,从而形成了下述结构,如图7所示,包括:
实时消息生产者201,用于产生实时消息并将实时消息发送至消息分发器。
实时消息生产者可以被理解为是生成实时消息的源,负责发布消息到消息分发器。生成的消息应当包括相应的消息属性,如所属的消息标识等。
实时消息消费者202,用于从消息队列获取实时消息;所述实时消息生产者和所述实时消息消费者可以位于相同设备或相同模块。
消息分发器203,用于接收实时消息,并将所述实时消息路由至相应的队列中以供消息消费者使用。
消息分发器可以根据消息中携带的标识属性,将消息进一步路由至相应的队列中,以便在多核和多个发送线程之间实现负载均衡。
消息队列204,用于存储实时消息。
消息队列用来保存消息,直到该消息被消费。为了提高实时性,消息队列在具体实现上可以是内存中的一段空间。为了进一步提高实时性,消息分发器用来暂存数据的缓冲区可以与消息队列的存储区共享,这样可以避免一次数据在内存的拷贝。
具体地,为了提升消息分发的实时性,本发明实施例中消息分发器的分发线程支持多种消息分发机制,并且能够根据实时性要求触发不同的消息分发机制。优选的,在微秒级实时性要求中,采用轮询分发机制;在毫秒级实时性要求中,采用定时器驱动的分发机制。
进一步地,为了提升消息接收的实时性,消息分发器的接收线程对接收数据的访问可以采用轮询和非阻塞访问机制。
监测单元300如图8所示,包括:
消息缓存检测器301,用于在消息进入消息分发器后添加时间戳,在消息以推送或拉取方式发出时,根据所述消息的时间戳计算所述消息被消息管理单元缓存的时间长度。
消息时延判断器302,用于根据消息被消息管理单元缓存的时间长度判断消息管理单元的实际时延,并根据所述实际时延触发相应的优化机制,所述优化机制用于提升消息管理单元的实时性,减少时延。
优化机制执行器303,用于响应所述消息时延判断器的触发指令,执行对应的优化机制。
具体地,所述优化机制执行器303可以支持下述优化机制:
在一个可行的实施方式中,可以降低定时器的定时时间长度或者降低触发定时器事件的计数器次数。在所述实施方式中,可以通过定时器驱动的方式进行消息分发,通过以降低定时器的定时时间长度或者降低触发定时器事件的计数器次数可以提升消息分发的频率,减少时延。
在另一个可行的实施方式中,由定时器驱动的消息发送机制切换为轮询机制。轮询机制的实时性优于定时器驱动机制,因此,可以通过消息分发机制的切换减少消息分发的时延。
在另一个可行的实施方式中,若存在多个消息管理单元,则可以负载均衡策略来减少存在明显时延的消息管理单元的运行压力,从而达到减少时延的目的。
组播能够提升消息交互的实时性,但是现有技术中的使用消息总线进行消息实时交互的系统中均不支持组播功能,当一个消息需要被发送到多个地址时,还需要按照一定的时间顺序分别给不同的地址发送相同的消息拷贝,需要强调的是,某些现有的使用消息总线进行消息实时交互的系统虽然声称支持组播,比如Rabb itMQ,但是其实际是遵守AMQP协议的,而AMQP协议是不支持组播的,为了实现所谓组播,其只能够利用底层的单播技术来实现应用程序逻辑上的组播,这无疑使得排在后面的地址接收的数据被推迟,并不是真正的组播,并且其底层的单播技术还增加了网络流量,占用过多的带宽资源,降低了其他网络应用的用户体验。
为了解决现有技术存在的在实时消息总线系统中无法组播的技术问题,进一步提升消息交互的实时性,本发明实施例中提供了组播单元400来实现真正的组播。
为了实现组播单元400的功能,在本发明实施例中所述实时消息总线系统中的作为消息生产者的数据处理终端节点被配置有组播地址,所述数据处理节点对需要发送的消息以其自身的组播地址作为目的地址进行封装。在车载以太网环境中,这个组播地址可以是私有组播地址239.0.0.0—239.255.255.255中的一个。
由于从网络协议层面上,消息消费者并不知道自己所属的组播地址是多少,组播单元400引入组播汇聚点来完成消息生产者、消息消费者和组播地址间的关联,如图9所示,消息生产者向组播汇聚点报告发送使用的组播地址,消息消费者向组播汇聚点报告需要接收的消息标识,并从所述组播汇聚点获取所述消息所述的组播地址。在系统运行之初,消息生产者和消费者都能够获取到组播汇聚点的单播I P地址。
所述组播单元400进一步从消息生产者获取组播消息,并支持消息消费者接收组播消息,从而实现消息的组播。
在所述组播单元400的管理下,所有要接收某个相同消息的节点同属于一个组播地址,提高了一个消息被多个消息消费者共享的实时性。
本发明实施例提供了一种实时消息总线系统,通过设计具备实时交互能力的消息总线系统,实现了消息产生者和消息消费者之间的解耦,并且通过设计能够隔离与实时通信无关的背景进程的背景进程管理单元,支持实时消息处理的消息管理单元,能够适时调整消息分发机制的监测单元和组播单元,从多角度保障消息传输的实时性,使得所述系统的消息传输的实时性可以达到毫秒级甚至微秒级,从而使其具备广阔的应用前景。
由于本发明实施例所述的系统突出的实时性,基于车载以太网的多传感器信息共享和消息实时发布成为可能,从而为车联网应用的落地铺平了道路,其在后续的发展过程中,可以替代或部分替代汽车CAN总线,解决汽车领域传输带宽不足的问题。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如本发明的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在本发明的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(如计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,也可以在载体信号上提供,或者以任何其他形式提供。
应该注意的是,上述实施例是对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或者步骤等。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二以及第三等的使用不表示任何顺序,可将这些单词解释为名称。
Claims (7)
1.一种实时消息总线系统,其特征在于,应用于车辆智能物联场景,所述系统包括:
多个数据处理终端节点和数据总线模块;各个数据处理终端节点均与所述数据总线模块实时通信连接;所述实时通信连接的时延在毫秒级或微秒级;至少一个以太网交换机构成实时消息交互总线系统的数据处理终端节点,将各个车载设备进行模块化划分,从而得到多个分组,对每个分组使用以太网交换机进行管理;
所述数据处理终端节点用于产生数据,并将数据发送至所述数据总线模块,和/或用于从所述数据总线模块获取数据,并对所述数据进行相应处理;以太网转换器构成数据总线模块;各个以太网交换机均与所述以太网转换器通过以太网通信连接;
所述数据总线模块包括:
消息管理单元,用于对所述数据总线模块接收到的消息进行处理;
监测单元,用于实时监测消息通信情况,并根据监测结果调整消息管理单元的处理逻辑;
所述监测单元,包括:
消息缓存检测器,用于在消息进入消息分发器后添加时间戳,在消息以推送或拉取方式发出时,根据所述消息的时间戳计算所述消息被消息管理单元缓存的时间长度;
消息时延判断器,用于根据消息被消息管理单元缓存的时间长度判断消息管理单元的实际时延,并根据所述实际时延触发相应的优化机制,所述优化机制用于提升消息管理单元的实时性;
优化机制执行器,用于响应所述消息时延判断器的触发指令,执行对应的优化机制;所述执行对应的优化机制包括降低定时器的定时时间长度或者降低触发定时器事件的计数器次数;和/或,由定时器驱动的消息发送机制切换为轮询机制;和/或,若存在多个消息管理单元,则使用负载均衡策略。
2.根据权利要求1所述的系统,其特征在于:
各个数据处理终端节点均与所述数据总线模块基于以太网进行实时通信。
3.根据权利要求1所述的系统,其特征在于,所述数据总线模块还包括:
背景进程管理单元,用于隔离与实时通信无关的进程和消息总线进程;
组播单元,用于提供组播的工作方式。
4.根据权利要求1所述的系统,其特征在于,所述消息管理单元包括:
实时消息生产者,用于产生实时消息并将实时消息发送至消息分发器;
实时消息消费者,用于从消息队列获取实时消息;
消息分发器,用于接收实时消息,并将所述实时消息路由至相应的队列中以供消息消费者使用;
消息队列,用于存储实时消息。
5.根据权利要求4所述的系统,其特征在于:
消息分发器用来暂存数据的缓冲区与消息队列的存储区共享。
6.根据权利要求4所述的系统,其特征在于:
消息分发器的分发线程支持多种消息分发机制,在微秒级实时性要求中,采用轮询分发机制;在毫秒级实时性要求中,采用定时器驱动的分发机制。
7.根据权利要求3所述的系统,其特征在于,所述组播单元通过组播汇聚点实现组播。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910116722.6A CN109981473B (zh) | 2019-02-15 | 2019-02-15 | 一种实时消息总线系统 |
PCT/CN2020/072439 WO2020164363A1 (zh) | 2019-02-15 | 2020-01-16 | 一种实时消息总线系统及处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910116722.6A CN109981473B (zh) | 2019-02-15 | 2019-02-15 | 一种实时消息总线系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109981473A CN109981473A (zh) | 2019-07-05 |
CN109981473B true CN109981473B (zh) | 2021-03-09 |
Family
ID=67076943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910116722.6A Active CN109981473B (zh) | 2019-02-15 | 2019-02-15 | 一种实时消息总线系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981473B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020164363A1 (zh) * | 2019-02-15 | 2020-08-20 | 浙江吉利汽车研究院有限公司 | 一种实时消息总线系统及处理装置 |
CN113271283B (zh) * | 2020-02-14 | 2022-11-04 | 宁波吉利汽车研究开发有限公司 | 消息接入方法及系统 |
CN111650916A (zh) * | 2020-04-27 | 2020-09-11 | 宝能(广州)汽车研究院有限公司 | 一种基于can总线的ecu刷新方法 |
CN114978875A (zh) * | 2021-02-23 | 2022-08-30 | 广州汽车集团股份有限公司 | 一种车载节点管理方法、装置及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2496681A (en) * | 2011-11-21 | 2013-05-22 | Push Technology Ltd | A publish/subscribe system with time-sensitive message delivery to subscribers |
CN103457875A (zh) * | 2013-08-29 | 2013-12-18 | 上海永畅信息科技有限公司 | 车联网中基于多优先级的消息队列控制方法 |
CN107515781B (zh) * | 2017-07-20 | 2020-07-07 | 哈尔滨工业大学(威海) | 一种基于多处理器的确定性任务调度及负载均衡系统 |
CN107889075A (zh) * | 2017-10-23 | 2018-04-06 | 林楚莲 | 一种基于 Li‑Fi 技术的车辆信息传输系统 |
-
2019
- 2019-02-15 CN CN201910116722.6A patent/CN109981473B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109981473A (zh) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981473B (zh) | 一种实时消息总线系统 | |
CN109889455B (zh) | 一种实时消息处理装置 | |
US10678243B2 (en) | Systems and methods for scalable electrical engineering (EE) architecture in vehicular environments | |
WO2020164363A1 (zh) | 一种实时消息总线系统及处理装置 | |
CN114205386B (zh) | 一种面向服务架构的车载网络通信方法 | |
US10225168B2 (en) | Interface apparatus and memory bus system | |
EP3291089B1 (en) | Data processing method and apparatus | |
DE102012023395A1 (de) | Schnittstellenvorrichtung und Verfahren zum Austauschen von Nutzdaten | |
EP3296884A1 (en) | Distributed processing in a network | |
CN114095445A (zh) | 车载以太网的数据传输控制方法、装置、电子设备及存储介质 | |
CN114802058B (zh) | 智能电动汽车区域架构车载网络化控制系统及调度方法 | |
WO2021051882A1 (zh) | 报文转发方法、装置、系统、设备及存储介质 | |
CN111314420A (zh) | 面向智能驾驶的柔性车载网络系统及车辆 | |
Kenjić et al. | Connectivity challenges in automotive solutions | |
CN114374583A (zh) | 一种汽车网关控制器及其控制方法 | |
CN115562872A (zh) | 一种高并发的some/ip协议栈服务器实现方法 | |
CN116166582A (zh) | 一种数据的读写方法、系统、设备及存储介质 | |
CN107920035B (zh) | 用于确定性交换式以太网的多核处理器类型装置、系统及运载工具 | |
CN102681969A (zh) | 基于can总线的长帧数据传输卡和长帧数据传输方法 | |
CN115454594A (zh) | 一种车辆域控制器通信信号周期优化方法、系统及车辆 | |
JP7431848B2 (ja) | 車両制御装置及びデータ転送制御方法 | |
Park et al. | An OSGi based in-vehicle gateway platform architecture for improved sensor extensibility and interoperability | |
Kenjić et al. | Overview of the SWCs communication mechanisms in autonomous vehicles | |
Seo et al. | A reliable gateway for in-vehicle networks | |
Trifunović et al. | Data Exchange Interfaces in Automotive SOA |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |