一种基于喷泉码的车联网数据传输方法、装置及存储介质与流程

文档序号:26754428发布日期:2021-09-25 03:31阅读:192来源:国知局
一种基于喷泉码的车联网数据传输方法、装置及存储介质与流程

1.本发明涉及无线通信技术领域,具体涉及一种基于喷泉码的车联网数据传输方法、装置及存储介质。


背景技术:

2.车辆物联网,是以行驶中的车辆为信息感知对象,借助新一代信息通信技术,实现车与其它通信设备之间的数据传输,提升车辆整体的智能驾驶水平,为用户提供安全、舒适、智能、高效的驾驶感受与交通服务,同时提高交通运行效率,提升社会交通服务的智能化水平。
3.现今,几乎所有的汽车制造商都采用车辆物联网相关的技术,实现汽车内部各个子系统与车外其它通信设备的数据传输。随着汽车智能化和网络化进程的加快,汽车与车外通信设备传输的数据量与日俱增,数据的传输质量、完整性随之变得愈发重要。
4.目前大多数采用的保证数据接受完整性的方式有2种:一种是检错重发,另一种是通过rs码进行纠错。
5.其中,检错重发是利用输入端到输出端的反馈信道控制需要重新传送的数据包。当接收端检测到丢包时,产生一个重新发送控制信号,直到正确接收到完整数据包之后,接收端产生一个接收确认信号。同时发送端会跟踪每一个数据包直到接收到反馈回来的告知信号。而rs码是一种经典的前向纠删、纠错码:当信道中传送的n个符号中有k个符号被无差错接收时,就能恢复原信息。
6.然而,当采用检错重发有时会严重的浪费信道资源,降低了传输效率。例如当删除概率很大时,要求重新发送的数据包数目也会很多,需大量的信道支持数据包的发送。而rs码和码率有关,在发射端需要有部分删除概率的先验知识,来选取恰当的码率。如果删除概率选择过大的话,则会严重影响纠错效果,甚至导致系统性能的恶化;相反则会增加了传输功率,降低了传输效率。


技术实现要素:

7.有鉴于此,本发明实施例提供了涉及一种基于喷泉码的车联网数据传输方法、装置及存储介质,以解决现有技术中车联网采用的数据传输方式,传输效率较低的技术问题。
8.本发明提出的技术方案如下:
9.本发明实施例第一方面提供一种基于喷泉码的车联网数据传输方法,包括:根据发送节点发送数据的总线类型和对应的数据长度确定度值,所述发送节点包括至少两个;根据所述度值将发送节点发送数据中的业务数据进行喷泉码编码分组;将编码分组后的数据包发送至接收节点。
10.可选地,根据发送节点发送数据的总线类型和对应的数据长度确定度值,包括:根据发送节点发送数据的总线类型确定任一总线类型所占比例;根据发送节点的发送数据确定任一总线类型的数据长度;根据总线类型所占比例、总线类型的数据长度以及预设度值
确定对应总线类型的度值。
11.可选地,所述度值通过以下公式计算得到:
12.d=x*d*(1-8/n)
13.其中,d表示度值,d表示预设度值,x表示总线类型所占比例,n表示总线类型的数据长度。
14.可选地,所述预设度值采用鲁棒孤波分布计算得到。
15.可选地,根据所述度值将发送节点发送数据中的业务数据进行喷泉码编码分组,包括:根据发送节点发送数据的总线类型确定对应的度值;根据确定的度值将对应发送节点发送数据中的业务数据进行分割,形成数据分组;对消息分组进行喷泉码编码,形成编码分组。
16.可选地,该基于喷泉码的车联网数据传输方法还包括:接收节点接收数据包进行喷泉码译码,得到还原数据。
17.可选地,接收节点接收数据包进行喷泉码译码,得到还原数据,包括:接收节点将接收的数据包根据总线类型进行分类;将分类后的数据包分别进行喷泉码译码,得到还原数据。
18.本发明实施例第二方面提供一种基于喷泉码的车联网数据传输装置,包括:度值计算模块,用于根据发送节点发送数据的总线类型和对应的数据长度确定度值,所述发送节点包括至少两个;编码模块,用于根据所述度值将发送节点发送数据中的业务数据进行喷泉码编码分组;数据发送模块,用于将编码分组后的数据包发送至接收节点。
19.本发明实施例第三方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行如本发明实施例第一方面及第一方面任一项所述的基于喷泉码的车联网数据传输方法。
20.本发明实施例第四方面提供一种电子设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如本发明实施例第一方面及第一方面任一项所述的基于喷泉码的车联网数据传输方法。
21.本发明提供的技术方案,具有如下效果:
22.本发明实施例提供的基于喷泉码的车联网数据传输方法、装置及存储介质,采用喷泉码进行车联网数据的传输,由于喷泉码是一种码率无关的随机编码方式,由k个原始分组操作任意数量的编码分组,源节点在不知道这些数据包是否被成功接收的情况下,持续发送数据包。接收端通过收到的数据包高效的恢复全部原始分组。由此在车联网数据传输时采用喷泉码编码译码,既解决了主流保证数据完整性方法传输效率较低的缺点,又没有增加额外的传输信道负担,不过多占用数据传输中宝贵的信道资源。同时,基于自动驾驶中多节点传输的工作场景,该数据传输方法通过采用数据总线类型确定度值,相比于仅通过理想弧波分布或鲁棒弧波分布确定度值的方式,进一步优化了度值。由此实现了采用喷泉码进行多节点间的高效数据传输。
附图说明
23.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体
实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1是根据本发明实施例的基于喷泉码的车联网数据传输方法的流程图;
25.图2是根据本发明另一实施例的基于喷泉码的车联网数据传输方法的流程图;
26.图3是根据本发明另一实施例的基于喷泉码的车联网数据传输方法的流程图;
27.图4是根据本发明实施例的基于喷泉码的车联网数据传输装置的结构框图;
28.图5是根据本发明实施例提供的计算机可读存储介质的结构示意图;
29.图6是根据本发明实施例提供的电子设备的结构示意图。
具体实施方式
30.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
31.正如在背景技术中所述,目前在车联网中采用的数据传输方案大多为检错重发或者是通过rs码进行纠错。但是采用这两种传输方式传输数据时会使得在某些时候数据的传输效率较低。
32.并且,在自动驾驶的实际工作场景中,不仅仅涉及到单节点之间的数据传输。大多情况下是多节点之间的数据传输。例如,行驶中的车辆a将车辆的相对位置、车辆的行驶速度、车辆的下一步动作(减速、加速、刹车、转向)传递给在其后行驶的车辆b,同时路测基站将车辆网络服务数据传给车辆b,此时对于车辆b来说,传递给它的网络节点至少为2个。并且,收到的数据经过网关向车内的各个网络节点进行转发,包括动力域负责控制车速的网络节点,动力域负责控制行车灯开关的网络节点,动力域负责控制行车转向的网络节点、动力域负责控制在中控屏显示车辆a、b行车状态的网络节点,信息娱乐域负责控制音响设备的网络节点,信息娱乐域负责控制显示屏信息的网络节点。综上所述,该工作场景中,一方节点至少为2个,另一方节点至少为6个,涉及到多工作节点之间数据传输。
33.本发明实施例提供一种基于喷泉码的车联网数据传输方法,如图1所示,该评估方法包括如下步骤:
34.步骤s101:根据发送节点发送数据的总线类型和对应的数据长度确定度值,发送节点包括至少两个。具体地,在车联网的数据传输时,传输的数据大多采用报文结构。例如,采用can总线进行数据传输时,其数据结构通常包括帧起始、仲裁段、控制段、数据段、crc段、ack段以及帧结束。其中,在数据段一般包括64个bits。在生成待传输数据时,可以将前56个bits用作业务数据的传输,最后8个bits预留。预留8bits的前两位可以用来表示数据总线的类型。例如00表示can数据总线;01表示以太网数据总线;10、11可以自定义表示主机厂用到的其它类自定义的数据总线类型。预留8bits的后六位可以明确为各个交互节点的序列号,如在上述多节点数据传输场景中,可以将动力域负责控制车速的网络节点明确为000001。
35.在一实施例中,在多节点数据传输场景中,各个网络节点在传输数据时可能是采
用不同的数据总线,因此采用喷泉码编码分组时需要考虑总包中的各数据总线上的数据包,例如包括的各类总线类型以及对应的数据长度。即在计算喷泉码的度值时需要基于总线类型以及对应的数据长度进行计算。
36.在一实施例中,根据发送节点发送数据的总线类型和对应的数据长度确定度值,包括:根据发送节点发送数据的总线类型确定任一总线类型所占比例;根据发送节点的发送数据确定任一总线类型的数据长度;根据总线类型所占比例、总线类型的数据长度以及预设度值确定对应总线类型的度值。具体地,度值通过以下公式计算得到:
37.d=x*d*(1-8/n)
38.其中,d表示度值,d表示预设度值,x表示总线类型所占比例,n表示总线类型的数据长度。
39.在一具体实施方式中,在确定度值时,先基于发送节点发送数据的总线类型确定任一总线类型所占比例。此时,可以先确定具体有几个发送节点发送数据。例如,上述多节点传输场景中,需要将车辆a的多个节点数据和路测基站的多个节点数据传给车辆b。同时,确定车辆a和路测基站多个节点发送的数据中共包括多少个数据总线类型。例如包括多少can数据总线传输数据,多少以太网数据总线传输数据。即确定can数据总线所占比例、以太网数据总线所占比例等等。
40.之后,确定每一类数据总线传输数据的总长度。例如can数据总线的传输数据总长度、以太网数据总线传输数据总长度等等。需要说明的是,在64bits数据段中,只有56bits属于业务数据,剩下8bits预留。因此,在确定总长度时,需要将预留数据去掉,只考虑业务数据所占长度。在确定总线类型和数据长度之后,可以结合预设度值实现度值计算,例如can数据总线所占的比例为x,can数据总线的总长度为n bits,则对于can数据总线的度值的确定方式为x*d*(1-8/n)。
41.在一实施例中,预设度值采用鲁棒孤波分布计算得到。在喷泉码编码中,度值的计算可以采用理想弧波分布,也可以采用鲁棒弧波分布。但是,理想弧波分布在原始数据数量很大的情况下,度值为1的编码概率很小,一旦因为丢包导致度为1的包丢失,译码过程会提前终止,导致译码失败。因此采用理想弧波分布计算的度值容易导致译码失败。由此,该实施例采用鲁棒弧波分布的方式确定预设度值,可以增加数据被译出的概率,解决了理想弧波分布不够稳定的问题,提高了编译码的稳定性。
42.步骤s102:根据度值将发送节点发送数据中的业务数据进行喷泉码编码分组;具体地,在进行喷泉码编码时,可以只对发送数据中的业务数据进行编码。即将预留bits以外的数据进行编码。
43.在一实施例中,在采用喷泉码编码时,可以基于lt码进行编码。具体地,根据度值将待编码的数据进行分割,形成数据分组,之后将分组数据进行求异或求同,同时进行计数。当计数数值n小于度值时,继续求异或求同计算,直至计数数值相等于d,形成编码分组。由此形成的编码分组的数据包的数量为d。
44.在一实施例中,由于上述度值是基于数据总线的类型确定的。因此各发送节点在将发送数据中的业务数据进行编码时,需要先根据发送数据中的预留数据确定该业务数据对应的数据总线类型。然后根据确定的数据总线类型确定该发送节点编码时所需的度值。确定度值后,发送节点可以根据该度值对其需要发送的业务数据进行编码分组。
45.步骤s103:将编码分组后的数据包发送至接收节点。具体地,发送节点在将编码分组后的数据进行发送时,每发出一个数据包,则将剩余数据包的数量减1,直至全部发送完成。同时发送节点在发送过程中,发送节点向其他发送节点告知自身的发包情况,便于判断统计各节点的发送情况。
46.本发明实施例提供的基于喷泉码的车联网数据传输方法,采用喷泉码进行车联网数据的传输,由于喷泉码是一种码率无关的随机编码方式,由k个原始分组操作任意数量的编码分组,源节点在不知道这些数据包是否被成功接收的情况下,持续发送数据包。接收端通过收到的数据包高效的恢复全部原始分组。由此在车联网数据传输时采用喷泉码编码译码,既解决了主流保证数据完整性方法传输效率较低的缺点,又没有增加额外的传输信道负担,不过多占用数据传输中宝贵的信道资源。同时,基于自动驾驶中多节点传输的工作场景,该数据传输方法通过采用数据总线类型确定度值,相比于仅通过理想弧波分布或鲁棒弧波分布确定度值的方式,进一步优化了度值。由此实现了采用喷泉码进行多节点间的高效数据传输。
47.作为本发明实施例的一种可选的实施方式,该基于喷泉码的车联网数据传输方法还包括:接收节点接收数据包进行喷泉码译码,得到还原数据。具体地,以上述工作场景为例,当车辆a和路测基站发送数据至车辆b时,车辆b的车载网关接收车辆a和路测基站各节点发送的数据包。当其接收到所有的数据包之后,将接收的数据包根据总线类型进行分类,例如分为can总线数据包和以太网总线数据包;将分类后的数据包分别进行喷泉码译码,得到还原数据。
48.在一实施例中,车载网关接收数据包之前,可以先获取步骤s101计算的度值d。然后在接收数据时,通过获取的度值判断是否接收到全部的数据包。例如,在数据包到达之后,每到达一个数据包,计数增加1,直到接收到所有的编码分组数据包。在车载网关接收到所有数据包之后,采用喷泉码译码算法进行译码。具体地,将分类后的每一类数据包进行关联运算,并减去相应的度值,直至当每一个关联计算对应的度都减为0之后,数据包完成还原,数据成功接收。在车载网关还原到所有数据包之后,根据数据中预留数据对应的数据总线类型以及对应网络节点将数据转发。例如,预留数据为00000001,则将对应的数据包通过can数据总线发送至动力域负责控制车速的网络节点。
49.作为本发明实施例的一种可选的实施方式,如图2及图3所示,该基于喷泉码的车联网数据传输方法可以按照以下流程实现:根据发送数据中的预留数据确定多个节点发送数据中的总线类型以及节点标注(如动力域负责控制车速的网络节点可以标注为000001);计算各总线上数据包的实际比例,确定d值。各发送节点将发送数据中除数据段8个预留bits,将剩余部分采用喷泉码进行编码分组。将编码分组后的原始数据编码包发送。其中,在发送过程中,各节点向其他节点告知自身的发包情况,便于各节点统计其余节点的度值d是否为0,即是否完成数据包的发送。
50.车载网关接收发送的数据包,将其按照总线类型和节点标注进行分类,实现编码分组包的接收缓存。同时,网关统计接收的数据包是否接收完整,即是否等于d。将数据包全部接收之后,将其进行关联运算,并减去相应的度值,直至当每一个关联计算对应的度都减为0之后,数据包完成还原,数据成功接收。之后,车载网关按照分类的总线类型和节点标注将还原的数据包进行转发。
51.本发明实施例还提供一种基于喷泉码的车联网数据传输装置,如图4所示,包括:
52.度值计算模块1,用于根据发送节点发送数据的总线类型和对应的数据长度确定度值,所述发送节点包括至少两个;详细内容参见上述方法实施例中步骤s101的相关描述。
53.编码模块2,用于根据所述度值将发送节点发送数据中的业务数据进行喷泉码编码分组;详细内容参见上述方法实施例中步骤s102的相关描述。
54.数据发送模块3,用于将编码分组后的数据包发送至接收节点。详细内容参见上述方法实施例中步骤s103的相关描述。
55.本发明实施例提供的基于喷泉码的车联网数据传输装置,采用喷泉码进行车联网数据的传输,由于喷泉码是一种码率无关的随机编码方式,由k个原始分组操作任意数量的编码分组,源节点在不知道这些数据包是否被成功接收的情况下,持续发送数据包。接收端通过收到的数据包高效的恢复全部原始分组。由此在车联网数据传输时采用喷泉码编码译码,既解决了主流保证数据完整性方法传输效率较低的缺点,又没有增加额外的传输信道负担,不过多占用数据传输中宝贵的信道资源。同时,基于自动驾驶中多节点传输的工作场景,该数据传输装置通过采用数据总线类型确定度值,相比于仅通过理想弧波分布或鲁棒弧波分布确定度值的方式,进一步优化了度值。由此实现了采用喷泉码进行多节点间的高效数据传输。
56.本发明实施例提供的基于喷泉码的车联网数据传输装置的功能描述详细参见上述实施例中基于喷泉码的车联网数据传输方法描述。
57.本发明实施例还提供一种存储介质,如图5所示,其上存储有计算机程序601,该指令被处理器执行时实现上述实施例中基于喷泉码的车联网数据传输方法的步骤。该存储介质上还存储有音视频流数据,特征帧数据、交互请求信令、加密数据以及预设数据大小等。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(harddisk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
58.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flash memory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
59.本发明实施例还提供了一种电子设备,如图6所示,该电子设备可以包括处理器51和存储器52,其中处理器51和存储器52可以通过总线或者其他方式连接,图6中以通过总线连接为例。
60.处理器51可以为中央处理器(central processing unit,cpu)。处理器51还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
61.存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的对应的程序指令/模块。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的基于喷泉码的车联网数据传输方法。
62.存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器51所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
63.所述一个或者多个模块存储在所述存储器52中,当被所述处理器51执行时,执行如图1-3所示实施例中的基于喷泉码的车联网数据传输方法。
64.上述电子设备具体细节可以对应参阅图1至图3所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
65.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1