1、(19)国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202310295292.5(22)申请日 2023.03.23(71)申请人 上海赫千电子科技有限公司地址 200125 上海市浦东新区东三里桥路1018号A座403室(72)发明人 肖文平何敖东(51)Int.Cl.H04W 4/40(2018.01)H04W 8/18(2009.01)(54)发明名称一种车载网络的通信方法以及车载网络(57)摘要本发明提供一种车载网络的通信方法和车载网络,至少包括:客户端发布请求信息并订阅服务端返回的请求;服务端订阅客户端发布的请求,并发布应答信息;数据的发
2、布与订阅通过请求主题和应答主题进行,客户端对包括有与请求ID相匹配的应答信息进行处理;若接收到的应答信息设有处理时序,则将含有处理时序的应答信息按照链表存储的方式插入时序缓存区中对应缓冲队列的位置;若接收到的应答信息不存在处理时序,则直接进行解包获取载荷信息进行任务执行。本发明通过上述技术方案实施,能够避免客户端的请求信息对应答信息产生因逻辑关系不匹配产生错误,从而确保程序能够获得正确的结果。权利要求书2页 说明书7页 附图1页CN 116506828 A2023.07.28CN 116506828 A1.一种车载网络的通信方法,其特征在于,至少包括:客户端创建请求信息的数据写入者用于发布请求
3、信息,并创建应答信息的数据读取者用于订阅服务端返回的请求;服务端创建请求信息的数据读取者用于订阅客户端发布的请求,并创建应答信息的数据写入者用于发布应答信息;数据的发布与订阅通过请求主题和应答主题进行,客户端对包括有与请求ID相匹配的应答信息进行处理;请求信息和应答信息至少包括报头和载荷数据;若接收到的应答信息设有处理时序,则将含有处理时序的应答信息按照链表存储的方式插入时序缓存区中对应缓冲队列的位置;若接收到的应答信息不存在处理时序,则直接进行解包获取载荷信息进行任务执行。2.如权利要求1所述的一种车载网络的通信方法,其特征在于,当存在多个包括处理时序的请求信息需要通过请求主题发送时,同步创
4、建时序缓存区用于存储每个时序对应的应答信息;若时序缓存区的首节点不为空,则客户端从时序缓存区的首节点获取应答信息进行处理后删除首节点,并将下一个节点设为首节点。3.如权利要求1所述的一种车载网络的通信方法,其特征在于,客户端保持对已创建的时序缓存区的首节点进行监控并在对时序缓存区的所有数据处理完成后销毁处理时序缓冲区。4.如权利要求1所述的一种车载网络的通信方法,其特征在于,请求信息使用请求主题,用于客户端向服务端发起请求,请求信息中包含请求报头和请求载荷数据;或应答信息使用应答主题,用于服务端向客户端返回响应,应答信息中包含应答报头和应答载荷数据。5.如权利要求4所述的一种车载网络的通信方法
5、,其特征在于,所述请求报头至少包括客户端全局唯一标识符、处理时序标识、绑定的服务端名称、调用的服务名及函数、请求序列号中的其中之一;所述请求载荷至少包括实现请求功能所使用函数调用所需的参数信息;或所述应答报头至少包括发起请求的客户端的全局唯一标识符、应答对应的请求的序列号、请求的处理时序标识、服务端的全局唯一标识符、服务端的应答时序的其中之一;所述应答载荷至少包括函数调用后所返回的信息。6.如权利要求1所述的一种车载网络的通信方法,其特征在于,当前节点的服务端创建应答信息时,将设置于应答信息中的应答报头包含的全局唯一标识符在车载网络中的节点进行全网广播并在预设的等待时长未接收到来自车载网络的节
6、点的反馈时,固定全局唯一标识符为对应的应答信息对应中的应答报头中的全局唯一标识符;若在预设时长内接受到反馈消息时,则重新生成唯一标识符并在此进行全网广播,循环往复直至固定全局唯一标识符。7.如权利要求6所述的一种车载网络的通信方法,其特征在于,当车载网络中的其它节点获取当前节点的服务端发送的信息后,解析出全局唯一标识符,并将全局唯一标识符在自身所处的系统中进行对比是否相同,若不同,则丢弃,若相同,则发送反馈消息给当前节点。权利要求书1/2 页2CN 116506828 A28.如权利要求1所述的一种车载网络的通信方法,其特征在于,当车载网络中的服务端下线时,则服务端将向网络节点进行全网广播,通
7、知网络节点删除其关联信息。9.如权利要求1所述的一种车载网络的通信方法,其特征在于,客户端在请求主题上和服务端进行服务发现,客户端的发布者调用数据写入者发送请求主题的请求信息;服务端在应答主题上和客户端进行服务发现,服务端的订阅者调用数据读取者读取来自客户端的请求信息。10.如权利要求1所述的一种车载网络的通信方法,其特征在于,客户端创建客户端进程并指定请求主题所采用参数,请求主题所采用参数至少包括:域ID、主题名、类型名、QoS策略中的其中之一;服务端创建服务端进程并创建时指明应答主题所采用参数,应答主题所采用参数至少包括:域ID、主题名、类型名、QoS策略中的其中之一,服务端进程包括服务端
8、对象和服务对象组成,服务对象设置于服务端对象中,服务端对象的数据成员服务列表保注册到服务端对象中。11.如权利要求1所述的一种车载网络的通信方法,其特征在于,服务端通过判断请求数据的请求报头中的绑定服务端名称来判断是否需要处理请求,并根据调用的服务名及函数信息来调用函数;客户端则通过判断应答数据中的应答报头中的发起请求的客户端的全局唯一标识符、应答对应的请求的序列号信息或处理时序来为请求匹配应答信息。12.如权利要求1所述的一种车载网络的通信方法,其特征在于,服务端创建监主线程和第一线程,第一线程在接收到请求后将请求信息放入请求对应服务的消息队列中,并将请求调用的服务放入请求服务队列中,接着通
9、知主线程有请求到来;主线程收到通知后取出请求服务队列队首的服务,调用服务的第一预设函数处理请求;请求处理采用先进先出调度策略,每次调用第一预设函数仅处理一个请求,完成后队首的服务将退出队列。13.如权利要求1所述的一种车载网络的通信方法,其特征在于,服务端创建监主线程和第二线程,每一个服务在启动时建立服务线程用于处理与服务相关的请求;主线程在启动后进入休眠状态,用于维持进程运行状态;第二线程在接收到请求后将请求放入请求对应服务的消息队列中,并唤醒请求对应的服务线程;服务线程调用第二预设函数处理请求,请求处理完成后若服务的消息队列中没有其他待处理请求,则服务线程进入休眠状态。14.一种车载网络的
10、EE电气架构,其特征在于,包括:至少一个区域网关、一个域控制器、一个ECU,其中,域控制器通过车载以太网连接于区域网关,域控制器通过车载以太网或CAN连接于ECU;域控制器或网关或ECU设置有客户端和服务端,所述客户端和服务端采用如权利要求1至13的一种车载网络通信方法。权利要求书2/2 页3CN 116506828 A3一种车载网络的通信方法以及车载网络技术领域0001本发明涉及智能汽车通信领域,特别是涉及一种车载网络的通信方法及车载网络。背景技术0002近年来随着技术的发展进步,推动者汽车工业进步,汽车工业朝向辅助驾驶、自动驾驶、无人驾驶的方向不断向前推进。使得汽车变得越来越复杂,因为用户
11、要求汽车有更多的功能和更高的质量,这些新功能大多需要较多的控制单元(ECU)和软件控制,不断推升现有架构和设计方法的极限。宰志能汽车中在每个ECU上都有大量的关键时间函数分布并同时运行,在车载网络中进行相互通信的信息调用,大量的ECU需要相互调用以及提供服务,ECU需要传感器,如车载以太网摄像头、车载以太网激光雷达、毫米波雷达、GPS、惯性导航,在高级辅助驾驶中需要进行多传感器的融合以进行路径规划与决策,并且车载网络产生较多数据,有些重要信息不能产生延迟,如刹车信号,转向信息等。如何确保这些顺利信息在车载网络中完成交互,成为智能汽车的车载网络通信需要迫切解决的技术问题。发明内容0003基于现有
12、技术中存在的缺陷之一,本发明人提供一种车载网络的通信方法,至少包括:0004客户端创建请求信息的数据写入者用于发布请求信息,并创建应答信息的数据读取者用于订阅服务端返回的请求;0005服务端创建请求信息的数据读取者用于订阅客户端发布的请求,并创建应答信息的数据写入者用于发布应答信息;0006数据的发布与订阅通过请求主题和应答主题进行,客户端对包括有与请求ID相匹配的应答信息进行处理;请求信息和应答信息至少包括报头和载荷数据;0007若接收到的应答信息设有处理时序,则将含有处理时序的应答信息按照链表存储的方式插入时序缓存区中对应缓冲队列的位置;若接收到的应答信息不存在处理时序,则直接进行解包获取
13、载荷信息进行任务执行。0008在其中一个实施例中,进一步有选的,当存在多个包括处理时序的请求信息需要通过请求主题发送时,同步创建时序缓存区用于存储每个时序对应的应答信息;0009若时序缓存区的首节点不为空,则客户端从时序缓存空间的首节点获取应答信息进行处理后删除首节点,并将下一个节点设为首节点。0010在其中一个实施例中,进一步优选的,客户端保持对已创建的时序缓存区的首节点进行监控并在对时序缓存区的所有数据处理完成后销毁处理时序缓冲区。0011在其中一个实施例中,进一步优选的,请求信息使用请求主题,用于客户端向服务端发起请求,请求信息中包含请求报头和请求载荷数据;0012或应答信息使用应答主题
14、,用于服务端向客户端返回响应,应答信息中包含应答说明书1/7 页4CN 116506828 A4报头和应答载荷数据。0013在其中一个实施例中,进一步优选的,请求报头至少包括客户端全局唯一标识符、处理时序标识、绑定的服务端名称、调用的服务名及函数、请求序列号中的其中之一;0014所述请求载荷至少包括实现请求功能所使用函数调用所需的参数信息;0015或所述应答报头至少包括发起请求的客户端的全局唯一标识符、应答对应的请求的序列号、请求的处理时序标识、服务端的全局唯一标识符、服务端的应答时序的其中之一;0016所述应答载荷至少包括函数调用后所返回的信息。0017在其中一个实施例中,进一步优选的,当前
15、节点的服务端创建应答信息时,将设置于应答信息中的应答报头包含的全局唯一标识符在车载网络中的节点进行全网广播并在预设的等待时长未接收到来自车载网络的节点的反馈时,固定全局唯一标识符为对应的应答信息对应中的应答报头中的全局唯一标识符;0018若在预设时长内接受到反馈消息时,则重新生成唯一标识符并在此进行全网广播,循环往复直至固定全局唯一标识符。0019在其中一个实施例中,进一步优选的,当车载网络中的其它节点获取当前节点的服务端发送的信息后,解析出全局唯一标识符,并将全局唯一标识符在自身所处的系统中进行对比是否相同,若不同,则丢弃,若相同,则发送反馈消息给当前节点。0020在其中一个实施例中,进一步
16、优选的,当车载网络中的服务端下线时,则服务端将向网络节点进行全网广播,通知网络节点删除其关联信息。0021在其中一个实施例中,进一步优选的,客户端在请求主题上和服务端进行服务发现,客户端的发布者调用数据写入者发送请求主题的请求信息;0022服务端在应答主题上和客户端进行服务发现,服务端的订阅者调用数据读取者读取来自客户端的请求信息。0023在其中一个实施例中,进一步优选的,客户端创建客户端进程并指定请求主题所采用参数,请求主题所采用参数至少包括:域ID、主题名、类型名、QoS策略中的其中之一;0024服务端创建服务端进程并创建时指明应答主题所采用参数,应答主题所采用参数至少包括:域ID、主题名
17、、类型名、QoS策略中的其中之一,服务端进程包括服务端对象和服务对象组成,服务对象设置于服务端对象中,服务端对象的数据成员服务列表保注册到服务端对象中。0025在其中一个实施例中,进一步优选的,服务端通过判断请求数据的请求报头中的绑定服务端名称来判断是否需要处理请求,并根据调用的服务名及函数信息来调用函数;0026客户端则通过判断应答数据中的应答报头中的发起请求的客户端的全局唯一标识符、应答对应的请求的序列号信息或处理时序来为请求匹配应答信息。0027在其中一个实施例中,进一步优选的,服务端创建监主线程和第一线程,第一线程在接收到请求后将请求信息放入请求对应服务的消息队列中,并将请求调用的服务
18、放入请求服务队列中,接着通知主线程有请求到来;0028主线程收到通知后取出请求服务队列队首的服务,调用服务的第一预设函数处理请求。0029请求处理采用先进先出调度策略,每次调用第一预设函数仅处理一个请求,完成说明书2/7 页5CN 116506828 A5后队首的服务将退出队列。0030在其中一个实施例中,进一步优选的,服务端创建监主线程和第二线程,每一个服务在启动时建立服务线程用于处理与服务相关的请求;0031主线程在启动后进入休眠状态,用于维持进程运行状态;第二线程在接收到请求后将请求放入请求对应服务的消息队列中,并唤醒请求对应的服务线程;0032服务线程调用第二预设函数处理请求,请求处理
19、完成后若服务的消息队列中没有其他待处理请求,则服务线程进入休眠状态。0033一种车载网络,包括:至少一个区域网关、一个域控制器、一个ECU,其中,域控制器通过车载以太网连接于区域网关,域控制器通过车载以太网或CAN连接于ECU;0034域控制器或网关或ECU设置有客户端和服务端,所述客户端和服务端采用上述的车载网络通信方法。0035有益效果:0036本发明提供的技术方案中,采用客户端和服务端的通信的方式,通过请求主体和应答主题的方式,使得客户端与服务端相对独立,客户端只需要调用所需服务,并不关心服务端所处位置。服务端只管提供服务,不用关心谁在调用。在针对复杂任务或多任务场景,通过将复杂任务分析
20、,设计处理时序和时序缓冲区以及存储方式,能够避免客户端的请求信息对应答信息产生因逻辑关系不匹配产生错误。另外,针对来自不同厂家的服务端,在不同主题下,可能产生相同的全局唯一标识符,申请人通过采用获得全局唯一标识符在车载网络中各节点进行广播,通过广播的方式通知所有的节点,在节点中进行服务端的全局唯一标识符比较,通过比较的方式,如果发现雷同,则会进行全局唯一标识符的改变。附图说明0037以下附图仅对本发明做示意性说明和解释,并不限定本发明的范围。0038图1为本发明一实施例车载网络中节点处的客户端和服务端的通信示意图。0039图2为本发明一实施例中是时序缓冲区存储应答信息的过程示意图。具体实施方式
21、0040为了对本文的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式,在各图中相同的标号表示相同的部分。为使图面简洁,各图中的示意性地表示出了与本发明相关部分,而并不代表其作为产品的实际结构。另外,为使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。0041关于控制系统,功能模块、应用程序(APP)本领域技术人员熟知的是,其可以采用任何适当的形式,既可以是硬件也可以是软件,既可以是离散设置的多个功能模块,也可以是集成到一个硬件上的多个功能单元。作为最简单的形式,所述控制系统可以是控制器,例如组合逻辑控制器、微程序控
22、制器等,只要能够实现本申请描述的操作即可。当然,控制系统也可以作为不同的模块集成到一个物理设备上,这些都不偏离本发明的基本原理和保护范围。0042本发明中“连接”,即可包括直接连接、也可以包括间接连接、通信连接、电连接,特说明书3/7 页6CN 116506828 A6别说明除外。0043本文中所使用的术语仅为了描述特定实施方案的目的并且不旨在限制本公开。如本文中所使用地,单数形式“一个”、“一种”、以及“该”旨在也包括复数形式,除非上下文明确地另作规定。还将理解的是,当在说明书中使用时,术语“包括”和/或“包含”是指存在有所陈述的特征、数值、步骤、操作、元件和/或组分,但是并不排除存在有或额
23、外增加一个或多个其它的特征、数值、步骤、操作、元件、组分和/或其组成的群组。作为在本文中所使用的,术语“和/或”包括列举的相关项的一个或多个的任何和全部的组合0044应当理解,此处所使用的术语“车辆”或“车辆的”或其它类似术语一般包括机动车辆,例如包括运动型多用途车辆(SUV)、公共汽车、卡车、各种商用车辆的乘用汽车,包括各种舟艇、船舶的船只,航空器等等,并且包括混合动力车辆、电动车辆、可插式混合动力电动车辆、氢动力车辆以及其它替代性燃料车辆(例如源于非石油的能源的燃料)。正如此处所提到的,混合动力车辆是具有两种或更多动力源的车辆,例如汽油动力和电力动力两者的车辆。0045此外,本公开的控制器
24、可被具体化为计算机可读介质上的非瞬态计算机可读介质,该计算机可读介质包含由处理器、控制器或类似物执行的可执行程序指令。计算机可读介质的示例包括,但不限于,ROM、RAM、光盘(CD)ROM、磁带、软盘、闪存驱动器、智能卡和光学数据存储设备。计算机可读记录介质也可分布在通过网络耦合的计算机系统中,使得计算机可读介质例如通过远程信息处理服务器或控制器区域网络(CAN)以分布式方式存储和执行。0046本发明提供一种车载网络的通信方法,用于车载网络通信众多ECU的通信,车载网络的通信架构采用面向对象的服务进行通信,具体地,不同的ECU进行网络通信,具体地,在每个ECU可以设置多个客户端和服务端,客户端
25、和服务端是相对的,当ECU中的APP需要调用其它APP时,当前ECU是客户端;当前ECU的APP提供服务给其它ECU时,当前ECU是服务端;0047另外,为了使得服务和需求分离,在同一个ECU中,也可以采用客户端和服务端,这样,同一个ECU内,客户端和服务端相对独立,各自实现不同的功能,方便开发设计者,降低关联性。0048因此,需要说明地是,本实施例中的客户端和服务端是相对概念,并非绝对概念,看当前ECU提供的功能。0049具体地,参见图1,客户端创建请求信息的数据写入者用于发布请求信息,并创建应答信息的数据读取者用于订阅服务端返回的请求;0050服务端创建请求信息的数据读取者用于订阅客户端发
26、布的请求,并创建应答信息的数据写入者用于发布应答信息;0051数据的发布与订阅通过请求主题和应答主题进行,客户端对包括有与请求ID相匹配的应答信息进行处理;请求信息和应答信息至少包括报头和载荷数据;0052若接收到的应答信息设有处理时序,则将含有处理时序的应答信息按照链表存储的方式插入时序缓存区中对应缓冲队列的位置;0053若接收到的应答信息不存在处理时序,则直接进行解包获取载荷信息进行任务执行。0054在车载网络通信的过程中,将产生大量的信息,为了使执行效率更高效,本发明将说明书4/7 页7CN 116506828 A7复杂的任务进行拆分成多个服务进行执行,这样客户端执行某一个功能,如在自动
27、驾驶时转动方向盘一个复杂的功能需要获取感知数据,根据感知数据结合车当前的形成状况进行路径规划,然后计算转向角以及当前行驶速度等参数信息,因此将复杂任务分解成一系列较多的服务,然后通过服务端进行调用后,一系列的服务在不同的服务端或者在同一具备多线程运行的服务端同步执行,但由此也会产生问题,即有些功能分解成分步的服务是有逻辑关系,如果不加以区别,将会导致功能出错。而现有的面向对象的服务架构中,其客户端和服务端是相对独立的,客户端并不能识别通过请求服务后应答信息反馈是否具备逻辑关系,客户端只是验证接收到的信息是否符合请求的要求,符合就进行处理。显然,现有技术无法解决本申请的技术问题;0055申请人通
28、过设计处理时序以及时序缓冲区,在采用链表存储信息的方式以及配套的操作方法,能够解决上述问题。0056具体地,当存在多个包括处理时序的请求信息需要通过请求主题发送时,同步创建时序缓存区用于存储每个时序对应的应答信息;0057若时序缓存区的首节点不为空,则客户端从时序缓存空间的首节点获取应答信息进行处理后删除首节点,并将下一个节点设为首节点。0058具体地,本实施例选择采用链接表方式进行存储,通过设计一系列随机序列,例如:假设程序的执行分成四个多个服务,设有四个处理时序,用于标识获取服务的现有顺序;0059若客户端执行的功能包括预设多个处理时序的请求信息调用,在执行请求信息调用之前,在系统内存中开
29、辟一个时序缓冲区,时序缓冲区设置多个存储单元,每个存储单元用于存储一个请求信息返回的应答信息;0060例如:参见图2,函数功能可以分解为四个服务执行,客户端调用时,采用四个请求信息分别调用对应的服务,service 1至service4;0061处理时序包括:0 x01A、0 x01B、0 x01C、0 x01D,在时序缓冲区中,有四个单元分别存储四个处理时序和应答返回信息,本实施例可以设计一个类loadInfo进行存储,为了节省空间,在接收到应答数据后,在存储前为其开辟存储空间,存储空间用完在进行释放;0062数据存储采用链表进行存储,链表中的每个节点存储一个处理时序对应的应答数据,每个链表
30、中的节点对应一个存储单元;0063客户端将接收到包括处理时序的应答信息存储于时序缓存区对应的存储单元;0064若时序缓存区的首节点不为空,则客户端从时序缓存空间的首节点获取应答信息进行处理后删除首节点,并将下一个节点设为首节点,循环执行直至首节点为空;0065具体地,客户端保持对已创建的时序缓存区的首节点进行监控并在对时序缓存区的所有数据处理完成后销毁处理时序缓冲区。0066具体地,本发明的另一个实施例中,为了区别请求信息与应答信息,设定不同的主题进行匹配;0067请求信息使用请求主题,用于客户端向服务端发起请求,请求信息中包含请求报头和请求载荷数据;0068或应答信息使用应答主题,用于服务端
31、向客户端返回响应,应答信息中包含应答报头和应答载荷数据。说明书5/7 页8CN 116506828 A80069所述请求报头至少包括客户端全局唯一标识符、处理时序标识、绑定的服务端名称、调用的服务名及函数、请求序列号中的其中之一;0070具体地,处理时序标识只针对含有处理时序的请求信息而已,并非所有的客户端的请求调用都含有处理时序,因此,针对没有处理时序的请求调用,本实例将处理时序标识设置为一个固定的代码,如将处理时序标识所占的位数全部设置为0;0071所述请求载荷至少包括实现请求功能所使用函数调用所需的参数信息;0072或所述应答报头至少包括发起请求的客户端的全局唯一标识符、应答对应的请求的
32、序列号、请求的处理时序标识、服务端的全局唯一标识符、服务端的应答时序的其中之一;0073所述应答载荷至少包括函数调用后所返回的信息。0074通过在应答信息增加客户端的全局唯一标识符、请求的处理时序标识时,确保客户端所需要的应答信息与请求信息匹配,否则,在采用面向对象服务的架构中,由于客户端和服务端相对独立,则可能会产生应答信息与请求信息不匹配的情况。0075具体地,由于较多的ECU是来自不同厂家,尽管ECU的通信都遵循一定标准,但是不同在应用程序的开发过程中则会产生,对在应答主题时,可能会产生相同的服务端全局唯一标识符,但是客户端缺无法感知的情形发生,因此,本发明为了解决该问题,设计如下方案:
33、0076当前节点的服务端创建应答信息时,将设置于应答信息中的应答报头包含的全局唯一标识符在车载网络中的节点进行全网广播并在预设的等待时长未接收到来自车载网络的节点的反馈时,固定全局唯一标识符为对应的应答信息对应中的应答报头中的全局唯一标识符;0077若在预设时长内接受到反馈消息时,则重新生成唯一标识符并在此进行全网广播,循环往复直至固定全局唯一标识符。0078当车载网络中的其它节点获取当前节点的服务端发送的信息后,解析出全局唯一标识符,并将全局唯一标识符在自身所处的系统中进行对比是否相同,若不同,则丢弃,若相同,则发送反馈消息给当前节点。0079当车载网络中的服务端下线时,则服务端将向网络节点
34、进行全网广播,通知网络节点删除其关联信息。0080具体地,客户端在请求主题上和服务端进行服务发现,客户端的发布者调用数据写入者发送请求主题的请求信息;0081服务端在应答主题上和客户端进行服务发现,服务端的订阅者调用数据读取者读取来自客户端的请求信息。0082具体地,为了应对在车载网络中,可能存在数十个甚至数百个ECU进行通信的情况,但是不同ECU在车载网络的安全等级以及产生的数据类型不同,如果在数据传输时,按照现有以太网的传输规则,采用CSMA/CD的通信机制,则使得关键性的信号无法及时传输,造成严重延时,导致出现严重的安全事故。因此,申请人针对请求主题和应答主题,设计相应的参数;0083客
35、户端创建客户端进程并指定请求主题所采用参数,请求主题所采用参数至少包括:域ID、主题名、类型名、QoS策略中的其中之一;说明书6/7 页9CN 116506828 A90084服务端创建服务端进程并创建时指明应答主题所采用参数,应答主题所采用参数至少包括:域ID、主题名、类型名、QoS策略中的其中之一,服务端进程包括服务端对象和服务对象组成,服务对象设置于服务端对象中,服务端对象的数据成员服务列表保注册到服务端对象中。0085服务端通过判断请求数据的请求报头中的绑定服务端名称来判断是否需要处理请求,并根据调用的服务名及函数信息来调用函数;0086客户端则通过判断应答数据中的应答报头中的发起请求
36、的客户端的全局唯一标识符、应答对应的请求的序列号信息或处理时序来为请求匹配应答信息。0087具体地,一个服务端可能有接收到来自不同的客户端的多个请求,当有多个服务需要处理时,而服务端仅创建一个服务处理进程时,处理方法如下:0088服务端创建监主线程和第一线程,第一线程在接收到请求后将请求信息放入请求对应服务的消息队列中,并将请求调用的服务放入请求服务队列中,接着通知主线程有请求到来;0089主线程收到通知后取出请求服务队列队首的服务,调用服务的第一预设函数处理请求;0090请求处理采用先进先出调度策略,每次调用第一预设函数仅处理一个请求,完成后队首的服务将退出队列。0091第一预设函数是用于实
37、现与请求信息相对于的功能函数,通过调用第一预设函数的执行,能够实现某种功能,如获取图像数据,激光雷达数据,对图像数据中的目标进行识别或追踪等。0092显然,上述方式不能处理大量的请求调用服务,为了解决上述技术问题,申请在针对处理大量的服务并降低延迟时,采用如下技术方案:0093服务端创建监主线程和第二线程,每一个服务在启动时建立服务线程用于处理与服务相关的请求;0094主线程在启动后进入休眠状态,用于维持进程运行状态;第二线程在接收到请求后将请求放入请求对应服务的消息队列中,并唤醒请求对应的服务线程;0095服务线程调用第二预设函数处理请求,请求处理完成后若服务的消息队列中没有其他待处理请求,
38、则服务线程进入休眠状态。0096具体地,申请的上述技术方案主要是针对车载网络的通信,可以实施如下架构:至少一个区域网关、一个域控制器、一个ECU,其中,域控制器通过车载以太网连接于区域网关,域控制器通过车载以太网或CAN连接于ECU;0097域控制器或网关或ECU设置有客户端和服务端,所述客户端和服务端采用上述的车载网络通信方法进行实施。0098以上技术方案的实施,可以基于数据分发服务的中间件进行改进实施或者基于autosar系统平台实施。0099以上所述的仅是本发明的优选实施方式,本发明不限于以上实施例。本领域的技术人员可以清楚,该实施例中的形式不局限于此,同时可调整方式也不局限于此。可以理解,本领域技术人员在不脱离本发明的基本构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。说明书7/7 页10CN 116506828 A10图1图2说明书附图1/1 页11CN 116506828 A11
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1