本公开涉及通信,尤其涉及弱网数据传输方法、发送设备、接收设备和可读存储介质。
背景技术:
1、弱网是指低于2g速率的网络,3g也可划分为弱网。网络传输通常可以采用用户数据报协议(user datagram protocol,简称udp)或者传输控制协议(transmission controlprotocol,简称tcp)等传输协议。
2、在弱网环境下,由于带宽限制、丢包、延时等原因,网络传输使用udp或tcp等传输协议的传输效果不好。
技术实现思路
1、本公开实施例提供一种弱网数据传输方法、发送设备、接收设备和可读存储介质,能够解决现有网络传输效果不好的问题。所述技术方案如下:
2、根据本公开实施例的第一方面,提供一种弱网数据传输方法,应用于一种发送设备,所述方法包括:
3、将待发送数据帧拆分成n个数据,n为大于0的整数;
4、从所述n个数据中获取目标数据,在所述目标数据前添加包头信息,得到目标数据包,所述包头信息包括帧类型字段、帧信息字段、第一包信息字段、起始包字段和结束包字段,所述帧类型字段用于指示所述数据帧的类型;所述帧信息字段用于指示所述数据帧的标号信息;所述第一包信息字段用于指示所述目标数据包的标号信息,且所述第一包信息字段是根据生成的数据包的顺序产生的;所述起始包字段用于指示所述目标数据包是否为所述数据帧的第一个数据包;所述结束包字段用于指示所述目标数据包是否为所述数据帧的最后一个数据包;
5、向接收设备发送所述目标数据包。
6、在一个实施例中,所述帧类型字段包括第一数据符号时,指示所述接收设备在接收的数据帧不完整的情况下,丢弃所述数据帧;
7、所述帧类型字段包括第二数据符号时,指示所述接收设备在接收的数据帧不完整的情况下,需要请求发送设备重新传输丢失的数据包;
8、所述帧类型字段包括第三数据符号时,优先于帧类型字段包括第四数据符号、第五数据符号或者第六数据符号的数据包发送;
9、所述帧类型字段包括第四数据符号时,在所述帧类型字段包括所述第三数据符号的数据包发送完成后发送;
10、所述帧类型字段包括第五数据符号时,在所述帧类型字段包括所述第三数据符号的数据包发送完成后发送,或者在待发送数据包大于预设待发送阈值时被丢弃;
11、所述帧类型字段包括第六数据符号时,在所述帧类型字段包括所述第三数据符号、所述第四数据符号或者第五数据符号的情况下,被丢弃。
12、在一个实施例中,所述包头信息还包括检查字段,所述检查字段用于指示所述接收设备对所述目标数据包进行;所述方法还包括:
13、根据当前的网络丢包率,确定前向纠错级别;
14、根据所述前向纠错级别,确定检查字段。
15、在一个实施例中,所述前向纠错级别包括:第一级别、第二级别、第三级别和第四级别,其中,所述第一级别不产生数据冗余,所述第二级别产生第一预设数量的冗余包,所述第三级别产生第二预设数量的冗余包,所述第四级别产生第三预设数量的冗余包;所述根据当前的网络丢包率,确定前向纠错级别,包括:
16、若网络丢包率为零,则确定前向纠错级别是所述第一级别;
17、若网络丢包率大于零且小于等于第一阈值,则确定前向纠错级别是所述第二级别;
18、若网络丢包率大于所述第一阈值且小于等于第二阈值,则确定前向纠错级别是所述第三级别;
19、若网络丢包率大于所述第二阈值且小于等于1,则确定前向纠错级别是所述第四级别。
20、在一个实施例中,所述包头信息还包括检查包信息字段,所述检查包信息字段用于指示检查字段所在数据包的标号信息。
21、在一个实施例中,所述包头信息还包括第二包信息字段,所述第一包信息字段用于指示所述目标数据包的标号信息,且所述第二报信息字段是根据数据包发送顺序产生的。
22、根据本公开实施例的第二方面,提供一种弱网数据传输方法,应用于一种接收设备,所述方法包括:
23、接收发送设备发送的目标数据包,所述目标数据包是所述发送设备将待发送数据帧拆分成n个数据,并从所述n个数据中获取目标数据,在所述目标数据前添加包头信息得到的;其中,n为大于0的整数;所述包头信息包括帧类型字段、帧信息字段、第一包信息字段、起始包字段和结束包字段,所述帧类型字段用于指示所述数据帧的类型;所述帧信息字段用于指示所述数据帧的标号信息;所述第一包信息字段用于指示所述目标数据包的标号信息,且所述第一包信息字段是根据生成的数据包的顺序产生的;所述起始包字段用于指示所述目标数据包是否为所述数据帧的第一个数据包;所述结束包字段用于指示所述目标数据包是否为所述数据帧的最后一个数据包。
24、根据本公开实施例的第三方面,提供一种发送设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的弱网数据传输方法中所执行的步骤。
25、根据本公开实施例的第四方面,提供一种接收设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现第二方面以及第二方面的任一实施例所描述的弱网数据传输方法中所执行的步骤。
26、根据本公开实施例的第五方面,提供一种计算机可读存储介质,存储介质中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的弱网数据传输方法中所执行的步骤。
27、根据本公开实施例的第六方面,提供一种计算机可读存储介质,存储介质中存储有至少一条计算机指令,指令由处理器加载并执行以实现第二方面以及第二方面的任一实施例所描述的弱网数据传输方法中所执行的步骤。
28、本公开实施例提供的弱网数据传输方法、发送设备、接收设备和可读存储介质,在有待发送数据需要从发送设备通过网络发送给接收设备时,在原有udp或者tcp等协议的基础上,将数据帧拆分成n个数据,并进行分别打包,在给每个数据打包时,添加包头信息,得到目标数据包,其中,包头信息包括帧类型字段、帧信息字段、包信息字段、起始包字段和结束包字段,帧类型字段用于指示数据帧的类型;帧信息字段用于指示数据帧的标号信息;包信息字段用于指示目标数据包的标号信息;起始包字段用于指示目标数据包是否为数据帧的第一个数据包;结束包字段用于指示目标数据包是否为数据帧的最后一个数据包;接收设备通过上述添加的包头信息,可以对当前数据帧进行组帧,及时了解到当前数据帧传输是否丢包,并根据帧类型确定当前丢失的数据包是否需要重传。从而保证数据传输的实时性和可靠性。
29、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
1.一种弱网数据传输方法,其特征在于,应用于一种发送设备,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述帧类型字段包括第一数据符号时,指示所述接收设备在接收的数据帧不完整的情况下,丢弃所述数据帧;
3.根据权利要求1所述的方法,其特征在于,所述包头信息还包括检查字段,所述检查字段用于指示所述接收设备对所述目标数据包进行;所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述前向纠错级别包括:第一级别、第二级别、第三级别和第四级别,其中,所述第一级别不产生数据冗余,所述第二级别产生第一预设数量的冗余包,所述第三级别产生第二预设数量的冗余包,所述第四级别产生第三预设数量的冗余包;所述根据当前的网络丢包率,确定前向纠错级别,包括:
5.根据权利要求3所述的方法,其特征在于,所述包头信息还包括检查包信息字段,所述检查包信息字段用于指示检查字段所在数据包的标号信息。
6.根据权利要求1所述的方法,其特征在于,所述包头信息还包括第二包信息字段,所述第一包信息字段用于指示所述目标数据包的标号信息,且所述第二报信息字段是根据数据包发送顺序产生的。
7.一种弱网数据传输方法,其特征在于,应用于一种接收设备,所述方法包括:
8.一种发送设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求1至权利要求6任一项所述的弱网数据传输方法中所执行的步骤。
9.一种接收设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求7所述的弱网数据传输方法中所执行的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求1至权利要求6任一项,或者权利要求7所述的弱网数据传输方法中所执行的步骤。