技术新讯 > 电子通信装置的制造及其应用技术 > 一种基于消息机制的安全跨域通信方法、系统及车辆与流程  >  正文

一种基于消息机制的安全跨域通信方法、系统及车辆与流程

  • 国知局
  • 2024-08-02 13:57:03

本技术涉及智能驾驶,尤其涉及一种基于消息机制的安全跨域通信方法、系统、车辆及计算机可读存储介质。

背景技术:

1、智能驾驶软件作为新能源汽车的关键产品,安全性和异常响应实时性是其重要的基础属性。自动驾驶系统涉及范围广,安全性要求高。随着集成电路的快速发展,目前智能驾驶领域基本采用高性能arm cortex-a处理器作为计算域,由crtex-m或cortex-r核作为安全域,另外结合信息安全、功能安全对应的软、硬件系统共同构成满足安全驾驶场景需求的系统。

2、但目前现有技术中由于智能驾驶复杂的soc(system-on-chip,片上系统)架构,导致许多业务部署在不同的domain(域)中,所需的协同数据发送量骤增,从而导致域间通信效率较低,域间通信的安全得不到有效保证。

3、因此,现有技术还有待于改进和发展。

技术实现思路

1、本技术的主要目的在于提供一种基于消息机制的安全跨域通信方法、系统、车辆及计算机可读存储介质,旨在解决现有技术中由于复杂的soc架构,导致许多业务部署在不同的域中,所需的协同数据发送量骤增,从而导致域间通信效率较低,域间通信的安全得不到有效保证的问题。

2、本技术第一方面实施例提供一种基于消息机制的安全跨域通信方法,包括以下步骤:当目标域接收到接收域发送的跨域通信请求指令时,根据所述跨域通信请求指令确定命名空间以及指定虚拟ip地址;根据所述指定虚拟ip地址在所述命名空间中的环形缓冲区域进行查找,得到目标应用信息;将所述目标应用信息发送至所述命名空间中的通信服务程序,并通过所述通信服务程序将所述目标应用信息发送至rpmsg总线;通过rpmsg总线将所述目标应用信息发送至所述接收域中,以完成所述目标域与所述接收域之间的跨域通信。

3、根据上述技术手段,本技术实施例通过在不同域内进行命名空间划分,并将域内不同应用程序对应的虚拟地址进行提前预留,同时,将域内不同应用程序的应用信息共同存储至同一命名空间中的环形缓冲区域,不仅能够提高不同域之间应用信息的读写功能,以及不同域之间并发消息处理的效率,同时也保证了不同域之间高效且稳定的核间通信方式。

4、可选地,在本技术的一个实施例中,每个所述命名空间中包括至少一个应用程序和一个通信服务程序;所述当目标域接收到接收域发送的跨域通信请求指令时,根据所述跨域通信请求指令确定命名空间以及指定虚拟ip地址,之前还包括:当所述命名空间中加载应用程序时,获取所述应用程序的虚拟地址;将多个所述应用程序的虚拟地址映射至同一命名空间中环形缓冲区域的指定缓冲区域,以完成虚拟地址预留,其中,同一命名空间中的多个所述应用程序共享一个所述环形缓冲区域。

5、根据上述技术手段,本技术实施例采用虚拟地址预留技术将同一命名空间中的多个应用程序对应的虚拟地址映射至同一命名空间中的环形缓冲区域上,使得该命名空间中的多个应用程序在进行数据读写时直接访问环形缓冲区域的同一段虚拟地址就可以完成数据共享,不仅有效降低了多应用间的同步数据开销,简化了开发流程,而且还能够有效提高应用消息读写的并发处理效率。

6、可选地,在本技术的一个实施例中,所述环形缓冲区域包括多个录入单元,其中,每个录入单元中的格式信息包括源地址、目的地址、目标服务以及服务参数。

7、根据上述技术手段,本技术实施例通过设置环形缓冲区域中多个录入单元的存储格式信息,其中,格式信息包括源地址、目的地址、目标服务以及服务参数,源地址和目的地址可以直接用来表示应用程序所属的命名空间以及其他外部元件,能够根据虚拟地址进行查找,而目标服务和服务参数能够根据应用程序的服务类型进行分类,提高了应用信息调用时的效率以及准确性。

8、可选地,在本技术的一个实施例中,所述当目标域接收到接收域发送的跨域通信请求指令时,根据所述跨域通信请求指令确定命名空间以及指定虚拟ip地址,之前还包括:当所述应用程序将对应的应用信息存入同一命名空间中的环形缓冲区域时,则在所述环形缓冲区域中查找尾部消息标记;根据所述尾部消息标记确定所述环形缓冲区域中的可录入单元,将所述应用信息按所述可录入单元的消息格式存入所述可录入单元,并更新所述尾部消息标记的位置。

9、根据上述技术手段,本技术实施例通过在环形缓冲区域中设置尾部消息标记来确认其中的可录入单元,当应用程序需要将应用信息在环形缓冲区域中进行预留存储时,则可以在环形缓冲区域中查找对应的尾部消息标记,而没有尾部消息标记的则表示为可录入单元,能够确保应用信息的存储安全,同时,还可以支持多应用程序并发访问,而无需另外过多加锁验证。

10、可选地,在本技术的一个实施例中,所述当目标域接收到接收域发送的跨域通信请求指令时,根据所述跨域通信请求指令确定命名空间以及指定虚拟ip地址,具体包括:当目标域接收到所述接收域发送的跨域通信请求指令时,则对所述跨域通信请求指令进行解析;根据解析后的跨域通信请求指令确定所述目标域中的命名空间以及所述命名空间中环形缓冲区域上的指定虚拟ip地址。

11、根据上述技术手段,本技术实施例通过对接收的跨域通信请求指令进行解析,能够确定需要进行通信的目标域,并进一步的确定目标域中的目标命名空间,同时,根据跨域通信请求指令在目标命名空间中的环形缓冲区域进行查找,能够有效提高跨域通信请求指令的解析以及目标域和目标命名空间查找的效率,也进一步提高了核间通信的效率。

12、可选地,在本技术的一个实施例中,所述根据所述指定虚拟ip地址在所述命名空间中的环形缓冲区域进行查找,得到目标应用信息,具体包括:根据所述指定虚拟ip地址在所述命名空间中所述环形缓冲区域的指定缓冲区域进行查找,得到对应的目标应用程序虚拟地址;根据所述目标应用程序虚拟地址在所述环形缓冲区域的可录入单元中进行查找,得到所述目标应用程序虚拟地址对应的所述目标应用信息。

13、根据上述技术手段,本技术实施例能够根据跨域通信请求指令解析后得到的指定虚拟ip地址在目标命名空间中的环形缓冲区中进行查找,而此时,环形缓冲区域中的应用信息是存储在指定缓冲区域的,通过指定虚拟ip地址则能够确定对应的目标程序,并将目标程序对应的应用信息进行读取,而不需要单独到每一个应用程序去进行读取,通过这种应用信息共享预留的方式,有效提高了应用信息的获取效率,也有利于提高核间通信效率。

14、可选地,在本技术的一个实施例中,所述将所述目标应用信息发送至所述命名空间中的通信服务程序,并通过所述通信服务程序将所述目标应用信息发送至rpmsg总线,之前还包括:当rpmsg channel通道创建成功时,通过所述rpmsg总线为每一个命名空间对应创建一个字符设备节点,其中,同一命名空间中的多个应用程序共享一个所述字符设备节点。

15、根据上述技术手段,本技术实施例通过rpmsg总线为每个域中的命名空间创建一个字符设备节点,通过此字符设备节点,能够建立rpmsg总线与命名空间之间的通信连接,同时,也为应用信息的读写提供了可行通道,保证了通信指令的快速下发以及应用信息的高效读写。

16、可选地,在本技术的一个实施例中,所述将所述目标应用信息发送至所述命名空间中的通信服务程序,并通过所述通信服务程序将所述目标应用信息发送至rpmsg总线,具体包括:当所述通信服务程序监听到同一命名空间的所述环形缓冲区域中存在需要发送的目标应用信息时,则将所述目标应用信息发送至所述字符设备节点;通过所述字符设备节点将所述目标应用信息发送至rpmsg总线,其中,每个所述命名空间中对应一个所述字符设备节点,所述通信服务程序用于对同一命名空间中的环形缓冲区域进行监听。

17、根据上述技术手段,本技术实施例对于域内通信框架采用了一种“多生产者和单消费者”的程序模式,其中,多生产者是指命名空间中的多个应用程序,而消费者指的则是通信服务程序,而同一命名空间中的多个应用程序可以共享通信服务程序,当多个应用程序异常或者是需要发送信息时,则可以通过通信服务程序进行监听,并由通信服务程序来接收需要发送的应用信息,并将需要发送的应用信息发送至rpmsg总线上,同时,该通信服务程序只在第一次启动时打开一次分配给同一命名空间中的字符设备节点,避免了多个应用程序反复开关导致的资源浪费。

18、可选地,在本技术的一个实施例中,所述通过rpmsg总线将所述目标应用信息发送至所述接收域中,以完成所述目标域与所述接收域之间的跨域通信,具体包括:通过mu消息单元判断目标域与接收域之间的通信是否正常连接,若是,则通过rpmsg总线将所述目标应用信息发送至所述接收域中;当所述接收域接收到所述目标应用信息时,则通过所述mu消息单元进行域间通信中断处理,完成所述目标域与所述接收域之间的跨域通信。

19、根据上述技术手段,本技术实施例通过使用mailbox硬件作为跨域事件通知,同时,在各不同域的底层之间设置了mu单元硬件,通过mu单元硬件可控制不同域之间通信的连接或中断,能够简单有效的控制不同核间通信,提高了核间通信效率。

20、可选地,在本技术的一个实施例中,所述通过mu消息单元判断目标域与接收域之间的通信是否正常连接,若是,则通过rpmsg总线将所述目标应用信息发送至所述接收域中,之后还包括:当所述接收域接收到所述目标应用信息时,则对所述目标应用信息进行反向解析;根据反向解析后的目标应用信息调用对应的已注册服务程序,并判断所述已注册服务程序调用是否调用异常;当所述已注册服务程序调用异常时,则生成异常调用结果,并将所述异常调用结果进行上报。

21、根据上述技术手段,本技术实施例通过对接收的目标应用信息进行反向解析,能够实现对已注册服务的快速调用,同时,也大大提高了核间通信的处理效率;当调用异常时,则会快速生成异常结果并进行上报,保证了异常状况的及时处理,保证了核间通信的安全性以及高效性。

22、本技术第二方面实施例提供一种基于消息机制的安全跨域通信系统,所述基于消息机制的安全跨域通信系统包括:命名空间确定模块,用于当目标域接收到接收域发送的跨域通信请求指令时,根据所述跨域通信请求指令确定命名空间以及指定虚拟ip地址;目标应用信息查找模块,用于根据所述指定虚拟ip地址在所述命名空间中的环形缓冲区域进行查找,得到目标应用信息;通信服务程序代理模块,用于将所述目标应用信息发送至所述命名空间中的通信服务程序,并通过所述通信服务程序将所述目标应用信息发送至rpmsg总线;跨域通信模块,用于通过rpmsg总线将所述目标应用信息发送至所述接收域中,以完成所述目标域与所述接收域之间的跨域通信。

23、可选地,在本技术的一个实施例中,所述命名空间确定模块包括:跨域通信请求指令解析单元,用于当目标域接收到所述接收域发送的跨域通信请求指令时,则对所述跨域通信请求指令进行解析;指定虚拟ip地址确定单元,用于根据解析后的跨域通信请求指令确定所述目标域中的命名空间以及所述命名空间中环形缓冲区域上的指定虚拟ip地址。

24、可选地,在本技术的一个实施例中,所述目标应用信息查找模块包括:目标应用程序虚拟地址查找单元,用于根据所述指定虚拟ip地址在所述命名空间中所述环形缓冲区域的指定缓冲区域进行查找,得到对应的目标应用程序虚拟地址;目标应用信息获取单元,用于根据所述目标应用程序虚拟地址在所述环形缓冲区域的可录入单元中进行查找,得到所述目标应用程序虚拟地址对应的所述目标应用信息。

25、可选地,在本技术的一个实施例中,所述通信服务程序代理模块包括:目标应用信息监听单元,用于当所述通信服务程序监听到同一命名空间的所述环形缓冲区域中存在需要发送的目标应用信息时,则将所述目标应用信息发送至所述字符设备节点;目标应用信息发送单元,用于通过所述字符设备节点将所述目标应用信息发送至rpmsg总线,其中,每个所述命名空间中对应一个所述字符设备节点,所述通信服务程序用于对同一命名空间中的环形缓冲区域进行监听。

26、可选地,在本技术的一个实施例中,所述跨域通信模块包括:mu消息单元判断单元,用于通过mu消息单元判断目标域与接收域之间的通信是否正常连接,若是,则通过rpmsg总线将所述目标应用信息发送至所述接收域中;域间通信中断单元,用于当所述接收域接收到所述目标应用信息时,则通过所述mu消息单元进行域间通信中断处理,完成所述目标域与所述接收域之间的跨域通信。

27、可选地,在本技术的一个实施例中,本技术实施例的系统还包括:虚拟地址获取单元,用于当所述命名空间中加载应用程序时,获取所述应用程序的虚拟地址;虚拟地址映射单元,用于将多个所述应用程序的虚拟地址映射至同一命名空间中环形缓冲区域的指定缓冲区域,以完成虚拟地址预留,其中,同一命名空间中的多个所述应用程序共享一个所述环形缓冲区域。

28、可选地,在本技术的一个实施例中,本技术实施例的系统还包括:环形缓冲区域设置单元,所述环形缓冲区域包括多个录入单元,其中,每个录入单元中的格式信息包括源地址、目的地址、目标服务以及服务参数。

29、可选地,在本技术的一个实施例中,本技术实施例的系统还包括:尾部消息标记查找单元,用于当所述应用程序将对应的应用信息存入同一命名空间中的环形缓冲区域时,则在所述环形缓冲区域中查找尾部消息标记;应用信息存入单元,用于根据所述尾部消息标记确定所述环形缓冲区域中的可录入单元,将所述应用信息按所述可录入单元的消息格式存入所述可录入单元,并更新所述尾部消息标记的位置。

30、可选地,在本技术的一个实施例中,本技术实施例的系统还包括:字符设备节点创建单元,用于当rpmsg channel通道创建成功时,通过所述rpmsg总线为每一个命名空间对应创建一个字符设备节点,其中,同一命名空间中的多个应用程序共享一个所述字符设备节点。

31、可选地,在本技术的一个实施例中,本技术实施例的系统还包括:反向解析单元,用于当所述接收域接收到所述目标应用信息时,则对所述目标应用信息进行反向解析;调用异常判断单元,用于根据反向解析后的目标应用信息调用对应的已注册服务程序,并判断所述已注册服务程序调用是否调用异常;异常调用结果生成单元,用于当所述已注册服务程序调用异常时,则生成异常调用结果,并将所述异常调用结果进行上报。

32、本技术第三方面实施例提供一种车辆,所述车辆包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于消息机制的安全跨域通信程序,所述基于消息机制的安全跨域通信程序被所述处理器执行时实现如上述实施例所述的基于消息机制的安全跨域通信方法的步骤。

33、本技术第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有基于消息机制的安全跨域通信程序,所述基于消息机制的安全跨域通信程序被处理器执行时实现如上述实施例所述的基于消息机制的安全跨域通信方法的步骤。

34、本技术的有益效果:

35、(1)本技术实施例通过在不同域内进行命名空间划分,并将域内不同应用程序对应的虚拟地址进行提前预留,同时,将域内不同应用程序的应用信息共同存储至同一命名空间中的环形缓冲区域,不仅能够提高不同域之间应用信息的读写功能,以及不同域之间并发消息处理的效率,同时也保证了不同域之间高效且稳定的核间通信方式。

36、(2)本技术实施例采用虚拟地址预留技术将同一命名空间中的多个应用程序对应的虚拟地址映射至同一命名空间中的环形缓冲区域上,使得该命名空间中的多个应用程序在进行数据读写时直接访问环形缓冲区域的同一段虚拟地址就可以完成数据共享,不仅有效降低了多应用间的同步数据开销,简化了开发流程,而且还能够有效提高应用消息读写的并发处理效率。

37、(3)本技术实施例通过设置环形缓冲区域中多个录入单元的存储格式信息,其中,格式信息包括源地址、目的地址、目标服务以及服务参数,源地址和目的地址可以直接用来表示应用程序所属的命名空间以及其他外部元件,能够根据虚拟地址进行查找,而目标服务和服务参数能够根据应用程序的服务类型进行分类,提高了应用信息调用时的效率以及准确性。

38、(4)本技术实施例通过在环形缓冲区域中设置尾部消息标记来确认其中的可录入单元,当应用程序需要将应用信息在环形缓冲区域中进行预留存储时,则可以在环形缓冲区域中查找对应的尾部消息标记,而没有尾部消息标记的则表示为可录入单元,能够确保应用信息的存储安全,同时,还可以支持多应用程序并发访问,而无需另外过多加锁验证。

39、(5)本技术实施例通过对接收的跨域通信请求指令进行解析,能够确定需要进行通信的目标域,并进一步的确定目标域中的目标命名空间,同时,根据跨域通信请求指令在目标命名空间中的环形缓冲区域进行查找,能够有效提高跨域通信请求指令的解析以及目标域和目标命名空间查找的效率,也进一步提高了核间通信的效率。

40、(6)本技术实施例能够根据跨域通信请求指令解析后得到的指定虚拟ip地址在目标命名空间中的环形缓冲区中进行查找,而此时,环形缓冲区域中的应用信息是存储在指定缓冲区域的,通过指定虚拟ip地址则能够确定对应的目标程序,并将目标程序对应的应用信息进行读取,而不需要单独到每一个应用程序去进行读取,通过这种应用信息共享预留的方式,有效提高了应用信息的获取效率,也有利于提高核间通信效率。

41、(7)本技术实施例对于域内通信框架采用了一种“多生产者和单消费者”的程序模式,其中,多生产者是指命名空间中的多个应用程序,而消费者指的则是通信服务程序,而同一命名空间中的多个应用程序可以共享通信服务程序,当多个应用程序异常或者是需要发送信息时,则可以通过通信服务程序进行监听,并由通信服务程序来接收需要发送的应用信息,并将需要发送的应用信息发送至rpmsg总线上,同时,该通信服务程序只在第一次启动时打开一次分配给同一命名空间中的字符设备节点,避免了多个应用程序反复开关导致的资源浪费。

42、本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。

本文地址:https://www.jishuxx.com/zhuanli/20240801/241208.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。