本申请涉及通信网络,具体涉及一种数据报文传输方法、装置、电子设备、以及计算机可读存储介质。
背景技术:
1、由于智能汽车功能越来越丰富,整车系统的ecu件也越来越多,功能也越来越复杂和丰富,功能更新周期也越来越频繁,一般车辆的整车系统通过远程空中下载技术(over-the-air ota)升级,指的是通过无线通信方式,无需物理连接设备(如usb线或数据线),它允许车辆在不需要物理连接或访问经销商的情况下,通过网络即可实现对车辆终端的软件更新或升级。
2、但ota升级需要耗费大量时间,如果采用串行升级刷写需要耗费大量时间,不能真正满足车主的用车需求和体验。如果采用并行升级将大大节约升级刷写时间,但并行升级刷写可能发生同一时刻发送数据至同一通信通路造成数据报文出现“交叉粘包”现象导致升级失败。
技术实现思路
1、为解决上述技术问题,本申请的实施例提供了一种数据报文传输方法及装置、电子设备、以及计算机可读存储介质。
2、根据本申请实施例的一个方面,提供了一种数据报文传输方法,包括:若检测到多个数据报文的目的地址相同,则确定所述目的地址对应的通信通道;基于所述通信通道生成互斥信号量,所述互斥信号量用于表征所述通信通道的状态;基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输;若所述目的地址上存在不完整数据报文,则获取所述不完整数据报文在所述通信通道上传输的相邻数据报文,以基于所述相邻数据报文修正所述不完整数据报文,得到完整数据报文。
3、根据本申请实施例的一个方面,所述基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输,包括:基于所述互斥信号量确定所述多个数据报文对应的传输顺序;基于所述传输顺序控制所述多个数据报文依次在所述通信通道上传输。
4、根据本申请实施例的一个方面,所述基于所述互斥信号量确定所述多个数据报文对应的传输顺序,包括:基于所述互信信号量确定所述多个数据报文对应的传输优先级;若多个数据报文传输优先级相同,则获取所述多个数据报文之间的数据关联性;基于所述数据关联性确定多个数据报文对应的传输顺序。
5、根据本申请实施例的一个方面,所述基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输,包括:在所述通信通道上传输数据报文时,获取所述互斥信号量,以基于所述互斥信号量确保所述通信通道的互斥访问;在所述通信通道上数据报文传输完成时,释放所述互斥信号量,以使得所述通信通道的正常访问。
6、根据本申请实施例的一个方面,所述基于所述通信通道生成互斥信号量,包括:获取所述通信通道对应的互斥访问配置信息;基于所述互斥访问配置信息通过动态内存分配创建对应的互斥信号量。
7、根据本申请实施例的一个方面,所述方法还包括:解析所述目的地址接收到的数据报文,并基于所述解析结果确定所述数据报文的实际报文长度;若所述实际报文长度与所述数据报文对应的预设数据报文长度不匹配,则确定所述数据报文为不完整数据报文。
8、根据本申请实施例的一个方面,所述基于所述相邻数据报文修正所述不完整数据报文,得到完整数据报文,包括:计算所述实际报文长度与所述预设数据报文长度之间的长度差;基于所述长度差从所述相邻数据报文中确定目标修正报文,并将所述目标修正保温与所述实际报文进行拼接得到所述完整数据报文。
9、根据本申请实施例的一个方面,提供了一种数据报文传输装置,所述装置包括:检测模块,用于若检测到多个数据报文的目的地址相同,则确定所述目的地址对应的通信通道;生成模块,用于基于所述通信通道生成互斥信号量,所述互斥信号量用于表征所述通信通道的状态;传输模块,用于基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输;修正模块,用于若所述目的地址上存在不完整数据报文,则获取所述不完整数据报文在所述通信通道上传输的相邻数据报文,以基于所述相邻数据报文修正所述不完整数据报文,得到完整数据报文。
10、根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的数据报文传输方法。
11、根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的数据报文传输方法。
12、在本申请的实施例所提供的技术方案中,通过在检测到多个数据报文的目的地址相同时,确定该目的地址对应的通信通道,进而对即将传输多个数据报文的通信通道生成互斥信号向量,以通过互斥信号量更改该通信通道的状态,然后根据互斥信号对通信通道进行解闭锁处理,然后控制多个报文数据依次在通信通道上传输,并且在目的地址上存在不完整数据报文时,通过通信通道上传输的与不完整数据报文的相邻数据报文修正该不完整数据报文,进而可以及时修正数据包,并增加数据包的传输效率,避免数据传输交叉粘包。
13、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
1.一种数据报文传输方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输,包括:
3.如权利要求2所述的方法,其特征在于,所述基于所述互斥信号量确定所述多个数据报文对应的传输顺序,包括:
4.如权利要求3所述的方法,其特征在于,所述基于所述互斥信号量控制所述多个数据报文依次在所述通信通道上传输,包括:
5.如权利要求1所述的方法,其特征在于,所述基于所述通信通道生成互斥信号量,包括:
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
7.如权利要求6所述的方法,其特征在于,所述基于所述相邻数据报文修正所述不完整数据报文,得到完整数据报文,包括:
8.一种数据报文传输装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1至7中任一项所述的数据报文传输方法。
