一种报文路由处理方法及装置制造方法及图纸

技术编号:15519102 阅读:100 留言:0更新日期:2017-06-04 09:04
本发明专利技术提供了一种报文路由处理方法及装置,报文路由处理方法包括:接收通信驱动软件模块发送的报文接收指示以及接收报文信息;从独立内存块中读取路由配置数据列表,并在路由配置数据列表中查找是否存在接收报文信息对应的路由关系;若在路由配置数据列表中查找到接收报文信息对应的路由关系,从接收报文信息对应的路由关系中获取目标报文的信息;发送目标报文的信息至通信驱动软件模块;通信驱动软件模块根据目标报文的信息,发送目标报文至目标网络。本发明专利技术降低了软件风险控制难度,并且缩短了路由功能的开发周期。

【技术实现步骤摘要】
一种报文路由处理方法及装置
本专利技术涉及汽车ECU(电子控制单元,ElectronicControlUnit)软件和硬件设计领域,特别涉及一种报文路由处理方法及装置。
技术介绍
对于汽车中具备网关功能的ECU(电子控制单元,ElectronicControlUnit),路由功能(包括报文路由(从源网络接收源报文,根据源报文的标识获取目标报文的标识,并根据目标报文的标识将目标报文路由至目标网络)和信号路由)是其主要的功能之一。其中,目前有两种方式实现报文路由,具体为:第一种:一个路由函数实现一对报文路由关系,路由表最终体现为一系列的路由函数,其中路由表存储在上层应用中。在某个(底层通信驱动软件的)报文接收回调函数中调用相应的路由函数实现该报文路由功能;第二种:一个源报文-目标报文的配置项体现一对报文路由关系,路由表最终体现为一张体现报文路由关系的配置项列表,其中配置项列表存储在上层应用中。配置项列表中的每个源报文-目标报文的配置项有两个关键的变量:一个是源报文的ID(身份标识);另一个是目标报文的ID。源报文的ID和目标报文的ID均由底层通信驱动软件模块提供。在底层通信驱动软件提供的统一的接收回调函数中调用处理源报文-目标报文配置项列表的函数实现报文路由功能。由于第一种方式中某个具体的路由函数由一个相应的报文接收回调函数调用,因此底层通信驱动软件发生变更时,上层应用的路由函数也需要发生相应的变动;由于第二种方式中,配置项列表中的源报文的ID和目标报文的ID均来至底层通信驱动软件模块,因此一旦底层驱动模块发生变更,配置项列表也随之变更。由上可见,两种实现报文路由的方式存在的缺陷为:上层应用和底层通信驱动软件的耦合性较强,两者独立性差,增加了软件风险控制难度,并且在路由表发生变化时,整个软件工程需要重新编译,延长了路由功能的开发周期。
技术实现思路
为解决上述技术问题,本申请实施例提供一种报文路由处理方法及装置,以达到降低软件风险控制难度,并且缩短路由功能的开发周期的目的,技术方案如下:一种报文路由处理方法,包括:接收通信驱动软件模块发送的报文接收指示以及接收报文信息;从独立内存块中读取路由配置数据列表,并在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系;若在所述路由配置数据列表中查找到所述接收报文信息对应的路由关系,则从所述接收报文信息对应的路由关系中获取目标报文的信息;发送所述目标报文的信息至所述通信驱动软件模块;所述通信驱动软件模块根据所述目标报文的信息,发送目标报文至目标网络。优选的,所述路由配置数据列表的生成过程包括:提取路由表中各个源报文的源报文信息,所述源报文信息包括接收的通道,源报文ID,源报文最小长度;根据各个所述源报文ID生成源报文标识列表,并根据所述源报文标识列表生成哈希查找表;根据所述源报文标识列表和所述哈希查找表,生成各个源报文的接收标识;提取所述路由表中各个目标报文的目标报文信息,所述目标报文信息包括:目标报文的数量、发送的通道、目标报文ID和目标报文长度,其中各个所述目标报文的目标报文ID,组成目标报文ID列表;按照预设原则为各个所述目标报文分配目标报文发送标识,并从各个目标报文的目标报文信息中获取各个所述目标报文的发送通道标识和每个源报文对应的目标报文的数量;提取所述路由表中的源报文-目标报文路由关系;根据所述源报文-目标报文路由关系、各个所述源报文的源报文最小长度、各个所述源报文的接收标识、所述每个源报文对应的目标报文的数量、各个所述目标报文的发送通道标识和各个所述目标报文发送标识,生成所述路由配置数据列表。优选的,所述路由配置数据列表的刷写过程,包括:将所述路由配置数据列表单独刷写到所述独立内存块中;所述路由配置数据列表的更新过程,包括:根据所述路由表更新所述路由配置数据列表,并将更新后的路由配置数据列表刷写到所述独立内存块中。优选的,在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系包括:采用哈希算法在所述哈希查找表中查找是否存在所述接收报文信息对应的接收报文的位置记录;若在所述哈希查找表中查找到所述接收报文信息对应的接收报文的位置记录,则从所述哈希查找表中获取所述接收报文信息对应的接收报文的位置记录;根据所述接收报文信息对应的接收报文的位置记录,在所述源报文标识列表中查找出接收标识;在所述路由配置数据列表中查找是否存在查找出的接收标识对应的路由关系。优选的,从所述接收报文信息对应的路由关系中获取目标报文的信息,包括:从所述查找出的接收标识对应的路由关系中,获取所述每个源报文对应的目标报文的数量、各个所述目标报文的发送通道标识和各个所述目标报文发送标识。一种报文路由处理装置,包括:接收模块,用于接收通信驱动软件模块发送的报文接收指示以及接收报文信息;读取模块,用于从独立内存块中读取路由配置数据列表;查找模块,用于在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系,若在所述路由配置数据列表中查找到所述接收报文信息对应的路由关系,则执行获取模块从所述接收报文信息对应的路由关系中获取目标报文的信息;发送模块,用于发送所述目标报文的信息至所述通信驱动软件模块;所述通信驱动软件模块,用于发送所述报文接收指示以及所述接收报文信息,并根据所述目标报文的信息,发送目标报文至目标网络。优选的,还包括:生成模块,所述生成模块包括:第一提取单元,用于提取路由表中各个源报文的源报文信息,所述源报文信息包括接收的通道,源报文ID,源报文最小长度;第一生成单元,用于根据各个所述源报文ID生成源报文标识列表,并根据所述源报文标识列表生成哈希查找表;第二生成单元,用于根据所述源报文标识列表和所述哈希查找表,生成各个源报文的接收标识;第二提取单元,用于提取所述路由表中各个目标报文的目标报文信息,所述目标报文信息包括:目标报文的数量、发送的通道、目标报文ID和目标报文长度,其中各个所述目标报文的目标报文ID,组成目标报文ID列表;分配单元,用于按照预设原则为各个所述目标报文分配目标报文发送标识;第一获取单元,用于从各个目标报文的目标报文信息中获取各个所述目标报文的发送通道标识和每个源报文对应的目标报文的数量;第三提取单元,用于提取所述路由表中的源报文-目标报文路由关系;第三生成单元,用于根据所述源报文-目标报文路由关系、各个所述源报文的源报文最小长度、各个所述源报文的接收标识、所述每个源报文对应的目标报文的数量、各个所述目标报文的发送通道标识和各个所述目标报文发送标识,生成所述路由配置数据列表。优选的,还包括:刷写模块,用于将所述路由配置数据列表单独刷写到所述独立内存块中;更新模块,用于根据所述路由表更新所述路由配置数据列表,并将更新后的路由配置数据列表刷写到所述独立内存块中。优选的,所述查找模块包括:第一查找单元,用于采用哈希算法在所述哈希查找表中查找是否存在所述接收报文信息对应的接收报文的位置记录,若在所述哈希查找表中查找到所述接收报文信息对应的接收报文的位置记录,则执行第二获取单元从所述哈希查找表中获取所述接收报文信息对应的接收报文的位置记录;第二查找单元,用于根据所述接收报文信息对应的接收报文的位置记录,在所述源报文标识列表中查找出接收标识本文档来自技高网
...
一种报文路由处理方法及装置

【技术保护点】
一种报文路由处理方法,其特征在于,包括:接收通信驱动软件模块发送的报文接收指示以及接收报文信息;从独立内存块中读取路由配置数据列表,并在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系;若在所述路由配置数据列表中查找到所述接收报文信息对应的路由关系,则从所述接收报文信息对应的路由关系中获取目标报文的信息;发送所述目标报文的信息至所述通信驱动软件模块;所述通信驱动软件模块根据所述目标报文的信息,发送目标报文至目标网络。

【技术特征摘要】
1.一种报文路由处理方法,其特征在于,包括:接收通信驱动软件模块发送的报文接收指示以及接收报文信息;从独立内存块中读取路由配置数据列表,并在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系;若在所述路由配置数据列表中查找到所述接收报文信息对应的路由关系,则从所述接收报文信息对应的路由关系中获取目标报文的信息;发送所述目标报文的信息至所述通信驱动软件模块;所述通信驱动软件模块根据所述目标报文的信息,发送目标报文至目标网络。2.根据权利要求1所述的方法,其特征在于,所述路由配置数据列表的生成过程包括:提取路由表中各个源报文的源报文信息,所述源报文信息包括接收的通道,源报文ID,源报文最小长度;根据各个所述源报文ID生成源报文标识列表,并根据所述源报文标识列表生成哈希查找表;根据所述源报文标识列表和所述哈希查找表,生成各个源报文的接收标识;提取所述路由表中各个目标报文的目标报文信息,所述目标报文信息包括:目标报文的数量、发送的通道、目标报文ID和目标报文长度,其中各个所述目标报文的目标报文ID,组成目标报文ID列表;按照预设原则为各个所述目标报文分配目标报文发送标识,并从各个目标报文的目标报文信息中获取各个所述目标报文的发送通道标识和每个源报文对应的目标报文的数量;提取所述路由表中的源报文-目标报文路由关系;根据所述源报文-目标报文路由关系、各个所述源报文的源报文最小长度、各个所述源报文的接收标识、所述每个源报文对应的目标报文的数量、各个所述目标报文的发送通道标识和各个所述目标报文发送标识,生成所述路由配置数据列表。3.根据权利要求2所述的方法,其特征在于,所述路由配置数据列表的刷写过程,包括:将所述路由配置数据列表单独刷写到所述独立内存块中;所述路由配置数据列表的更新过程,包括:根据所述路由表更新所述路由配置数据列表,并将更新后的路由配置数据列表刷写到所述独立内存块中。4.根据权利要求3所述的方法,其特征在于,在所述路由配置数据列表中查找是否存在所述接收报文信息对应的路由关系包括:采用哈希算法在所述哈希查找表中查找是否存在所述接收报文信息对应的接收报文的位置记录;若在所述哈希查找表中查找到所述接收报文信息对应的接收报文的位置记录,则从所述哈希查找表中获取所述接收报文信息对应的接收报文的位置记录;根据所述接收报文信息对应的接收报文的位置记录,在所述源报文标识列表中查找出接收标识;在所述路由配置数据列表中查找是否存在查找出的接收标识对应的路由关系。5.根据权利要求4所述的方法,其特征在于,从所述接收报文信息对应的路由关系中获取目标报文的信息,包括:从所述查找出的接收标识对应的路由关系中,获取所述每个源报文对应的目标报文的数量、各个所述目标报文的发送通道标识和各个所述目标报文发送标识。6.一种报文路由处理装置,其特征在于,包括:接收模块,用于接收通信驱动软件模块发送的报文接收指示以及接收...

【专利技术属性】
技术研发人员:杨东耳
申请(专利权)人:北京经纬恒润科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1