System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种数据传输方法、装置、设备、存储介质及程序产品。
技术介绍
1、在数据传输场景中,网络丢包是一个常见问题,而网络丢包会导致数据传输的质量下降,从而影响用户体验。相关技术中,通常采用固定冗余率的前向纠错(forward errorcorrection,fec)技术来解决这个问题,即通过添加固定长度的冗余数据来纠正数据传输中出现的错误。但是,如此1)在网络较好的情况下,可能因冗余数据过多导致带宽资源的浪费;2)在网络较差的情况下,可能因冗余数据过少导致数据传输的可靠性降低。
技术实现思路
1、本申请实施例提供一种数据传输方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高数据传输的效率和可靠性。
2、本申请实施例的技术方案是这样实现的:
3、本申请实施例提供一种数据传输方法,包括:
4、数据发送端获取当前时刻待传输的源数据,并获取数据接收端在第一时间段前的多个第二时间段分别针对数据传输反馈的丢包数量,所述当前时刻处于所述第一时间段;
5、基于各所述第二时间段的丢包数量,预测第三时间段待反馈的丢包数量,得到预测丢包数量,所述第三时间段为所述第一时间段的下一时间段;
6、基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率;
7、基于所述前向纠错冗余率对所述源数据进行编码,得到包括冗余数据的目标数据,并向所述数据接收端发送所述目标数据,所述冗余数据用于在接收的源数据存在丢包情况
8、本申请实施例还提供一种数据传输装置,应用于数据发送端,包括:
9、获取模块,用于获取当前时刻待传输的源数据,并获取数据接收端在第一时间段前的多个第二时间段分别针对数据传输反馈的丢包数量,所述当前时刻处于所述第一时间段;
10、预测模块,用于基于各所述第二时间段的丢包数量,预测第三时间段待反馈的丢包数量,得到预测丢包数量,所述第三时间段为所述第一时间段的下一时间段;
11、确定模块,用于基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率;
12、发送模块,用于基于所述前向纠错冗余率对所述源数据进行编码,得到包括冗余数据的目标数据,并向所述数据接收端发送所述目标数据,所述冗余数据用于在接收的源数据存在丢包情况时,基于所述冗余数据恢复所述源数据。
13、在上述方案中,所述预测的过程通过机器学习模型实现,所述机器学习模型包括级联的m个长短期记忆网络,每个长短期记忆网络对应一个所述第二时间段;所述预测模块,还用于分别将各所述第二时间段的丢包数量,输入各所述第二时间段对应的长短期记忆网络中;通过所述m个长短期记忆网络中的第1个长短期记忆网络,对输入的丢包数量进行处理,得到第1个长短期记忆网络输出;通过所述m个长短期记忆网络中的第i个长短期记忆网络,对输入的丢包数量以及第(i-1)个长短期记忆网络输出进行处理,得到第i个长短期记忆网络输出,所述i为区间(1,m]内的整数;遍历所述i,得到第m个长短期记忆网络输出,并将所述第m个长短期记忆网络输出作为所述预测丢包数量。
14、在上述方案中,所述预测模块,还用于接收到所述数据接收端在所述第三时间段反馈的真实丢包数量;当所述真实丢包数量和所述预测丢包数量之间的差值大于差值阈值时,将指示预测错误次数的预测错误值加1;当所述预测错误值达到预测错误阈值时,对所述机器学习模型进行更新。
15、在上述方案中,所述确定模块,还用于获取所述源数据的数据包数量,并基于所述数据包数量以及所述预测丢包数量,确定所述当前时刻的预测丢包率;获取预测丢包率和前向纠错冗余率的对应关系;基于所述对应关系,确定所述当前时刻的预测丢包率对应的目标前向纠错冗余率,并将所述目标前向纠错冗余率,作为所述当前时刻的前向纠错冗余率。
16、在上述方案中,所述确定模块,还用于确定所述源数据的数据业务场景;获取所述源数据的数据包数量,并基于所述数据包数量以及所述预测丢包数量,确定所述当前时刻的预测丢包率;基于所述数据业务场景和所述预测丢包率,确定所述当前时刻的前向纠错冗余率。
17、在上述方案中,所述发送模块,还用于获取所述源数据的源数据量,并将所述源数据量和所述前向纠错冗余率相乘,得到所述冗余数据的冗余数据量;基于所述冗余数据量,对所述源数据进行前向纠错编码,得到冗余数据;为所述源数据添加所述冗余数据,得到所述目标数据。
18、在上述方案中,所述发送模块,还用于将所述源数据划分为多个数据块;针对各所述数据块,基于所述冗余数据量确定所述数据块的块冗余数据量,并为所述数据块添加所述块冗余数据量的块冗余数据,得到目标数据块;对各所述目标数据块进行组合,得到所述冗余数据。
19、在上述方案中,所述发送模块,还用于获取用于前向纠错的冗余率上限和冗余率下限;将所述前向纠错冗余率分别与所述冗余率上限和冗余率下限比较;当所述前向纠错冗余率小于所述冗余率上限且大于所述冗余率下限时,基于所述前向纠错冗余率对所述源数据进行编码,得到包括冗余数据的目标数据;所述发送模块,还用于当所述前向纠错冗余率大于或等于所述冗余率上限时,基于所述冗余率上限对所述源数据进行编码,得到包括冗余数据的目标数据;当所述前向纠错冗余率小于或等于所述冗余率下限时,基于所述冗余率下限对所述源数据进行编码,得到包括冗余数据的目标数据。
20、在上述方案中,所述确定模块,还用于生成冗余率列表,所述冗余率列表记录有第一时间周期内各时刻的前向纠错冗余率;在所述第一时间周期之后的各第二时间周期内,采用所述冗余率列表中各时刻的前向纠错冗余率进行数据传输。
21、在上述方案中,所述确定模块,还用于确定目标第二周期内的数据传输评估指标值;当所述数据传输评估指标值低于评估指标标准值时,更新所述冗余率列表,得到目标冗余率列表。
22、本申请实施例还提供一种电子设备,包括:
23、存储器,用于存储计算机可执行指令;
24、处理器,用于执行所述存储器中存储的计算机可执行指令时,实现本申请实施例提供的数据传输方法。
25、本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令或计算机程序,所述计算机可执行指令或计算机程序被处理器执行时,实现本申请实施例提供的数据传输方法。
26、本申请实施例还提供一种计算机程序产品,包括计算机可执行指令或计算机程序,所述计算机可执行指令或计算机程序被处理器执行时,实现本申请实施例提供的数据传输方法。
27、本申请实施例具有以下有益效果:
28、应用本申请上述实施例,数据发送端针对当前时刻待传输的源数据,首先获取数据接收端在第一时间段(当前时刻所处时间段)前的多个第二时间段分别针对数据传输反馈的丢包数量;可以理解的是,由于数据发送端和数据接收端之间数据传输存在往返时延的原因,当前时刻对应的丢本文档来自技高网...
【技术保护点】
1.一种数据传输方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,每个时间段的时长为,所述数据发送端发送待传输数据至所述数据接收端,并从所述数据接收端接收到所述待传输数据在传输时的丢包数量所需的时长,所述时间段包括所述第一时间段、所述第二时间段以及所述第三时间段。
3.如权利要求1所述的方法,其特征在于,所述预测的过程通过机器学习模型实现,所述机器学习模型包括级联的M个长短期记忆网络,每个长短期记忆网络对应一个所述第二时间段;所述基于各所述第二时间段的丢包数量,预测第三时间段待反馈的丢包数量,得到预测丢包数量,包括:
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
5.如权利要求1所述的方法,其特征在于,所述基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率,包括:
6.如权利要求1所述的方法,其特征在于,所述基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率,包括:
7.如权利要求1所述的方法,其特征在于,所述基于所述前向纠错冗余率对所述源数据进行编码,得到包括冗余
8.如权利要求7所述的方法,其特征在于,所述基于所述冗余数据量,对所述源数据进行前向纠错编码,得到冗余数据,包括:
9.如权利要求1所述的方法,其特征在于,所述基于所述前向纠错冗余率对所述源数据进行编码,得到包括冗余数据的目标数据,包括:
10.如权利要求1所述的方法,其特征在于,所述方法还包括:
11.如权利要求10所述的方法,其特征在于,所述方法还包括:
12.一种数据传输装置,其特征在于,应用于数据发送端,所述装置包括:
13.一种电子设备,其特征在于,所述电子设备包括:
14.一种计算机可读存储介质,存储有计算机可执行指令或计算机程序,其特征在于,所述计算机可执行指令或计算机程序被处理器执行时,实现权利要求1至11任一项所述的数据传输方法。
15.一种计算机程序产品,包括计算机可执行指令或计算机程序,其特征在于,所述计算机可执行指令或计算机程序被处理器执行时,实现权利要求1至11任一项所述的数据传输方法。
...【技术特征摘要】
1.一种数据传输方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,每个时间段的时长为,所述数据发送端发送待传输数据至所述数据接收端,并从所述数据接收端接收到所述待传输数据在传输时的丢包数量所需的时长,所述时间段包括所述第一时间段、所述第二时间段以及所述第三时间段。
3.如权利要求1所述的方法,其特征在于,所述预测的过程通过机器学习模型实现,所述机器学习模型包括级联的m个长短期记忆网络,每个长短期记忆网络对应一个所述第二时间段;所述基于各所述第二时间段的丢包数量,预测第三时间段待反馈的丢包数量,得到预测丢包数量,包括:
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
5.如权利要求1所述的方法,其特征在于,所述基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率,包括:
6.如权利要求1所述的方法,其特征在于,所述基于所述预测丢包数量,确定所述当前时刻的前向纠错冗余率,包括:
7.如权利要求1所述的方法,其特征在于,所述基于所述前向纠错冗余率对所述源数...
【专利技术属性】
技术研发人员:刘书成,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。