基于链路质量预测和网络编码的文件传输方法与流程

文档序号:34860840发布日期:2023-07-23 07:35阅读:35来源:国知局
基于链路质量预测和网络编码的文件传输方法与流程

本发明涉及文件传输方法,尤其涉及一种基于链路质量预测和网络编码的文件传输方法。


背景技术:

1、随着通信技术的不断发展,人类的生活发生了翻天覆地的改变。就目前常见的通信设备手机来说,从最初只支持语音通话的大哥大,到如今可以刷视频玩游戏的智能手机,一切都与通信速度和质量的快速提升密不可分。随着5g时代的到来,万物互联的思想已经深入人类的日常生活。但在一些特定场景中,例如无线传感网络和远距离卫星通信网络等,链路质量不稳定的问题依然存在,而现有的文件传输协议无法在这种高延迟或者高丢包率的网络环境下实现高效的文件传输。而网络编码技术,链路质量预测以及最优路由选择等关键技术为我们解决这一问题提供了良好的设计思路。

2、网络编码是无线通信领域中的一项较为成熟的技术。在近几十年的研究中,网络编码技术被广泛应用于单播网络与组播网络。研究表明,网络编码中的冗余编码可以大幅提高窄带环境下的数据传输可靠性,从而实现高效的端到端文件传输。但是现在网络编码的性能仍然有待提高。


技术实现思路

1、发明目的:本发明针对现有技术存在的问题,提供一种性能更好的基于链路质量预测和网络编码的文件传输方法。

2、技术方案:本发明所述的基于链路质量预测和网络编码的文件传输方法包括如下步骤:

3、(1)采集不同环境下的链路质量参数数据集,并对链路质量预测模型进行训练,将训练好的链路质量预测模型布设于网络中每个节点;

4、(2)当目标节点接收到文件传输请求时,采用基于链路状态分析的贪心策略从复杂网络中选择最优路径,并初始化网络编码系数;

5、(3)源节点将大文件拆分为多个子文件;

6、(4)源节点通过网络编码系数对子文件进行网络编码,并向最优路径中的下一跳节点传输;

7、(5)当中间节点接收到数据后,通过网络编码系数对接收的数据再次进行网络编码,并向最优路径中的下一跳节点传输;

8、(6)当目标节点预设时间段内接收到预设数量数据后,采用高斯消元法进行数据解码;当完成一个子文件的接收之后,采用训练好的链路质量预测模型进行当前环境下的链路质量实时预测,并根据预测的链路质量参数采用网络编码系数计算算法计算上一跳节点的网络编码系数,并将网络编码系数返回至上一跳节点;

9、(7)中间节点接收到网络编码系数后,采用训练好的链路质量预测模型进行当前环境下的链路质量实时预测,并根据预测的链路质量参数采用网络编码系数计算算法计算上一跳节点的网络编码系数,并将网络编码系数返回至上一跳节点;

10、(8)返回迭代步骤(4)至(7),直至完成整个文件的传输。

11、进一步的,当目标节点预设时间段内未接收到预设数量数据且子文件未完成接收时,根据已接收的数据判断出丢失的数据,并通过负反馈机制,请求源节点重传丢失的数据。

12、进一步的,步骤(1)中所述不同环境下的链路质量参数数据集包括若干不同环境下的链路的传输时延和丢包率值,所述链路质量预测模型具体为基于bi-lstm+注意力机制网络结构的编码器解码器模型,用于通过过往的传输时延和丢包率作为样本,对未来的丢包率进行预测。

13、进一步的,若源节点或中间节点为首次数据发送,则按照初始网络编码系数进行网络编码,所述初始化网络编码系数具体为基于路由选择算法产生的链路环境采用网络编码系数计算算法计算得到网络编码系数。

14、进一步的,采集不同环境下的链路质量参数数据集之后,对数据集进行预处理,所述预处理包括:

15、计算传输时延和丢包率的平均值;

16、基于传输时延和丢包率的平均值按照下式分别计算传输时延和丢包率的阈值:

17、

18、

19、式中,στ、σd分别表示传输时延、丢包率的阈值,分别表示传输时延、丢包率的平均值,分别表示第i个传输时延、丢包率的值,n表示数据集数量;

20、根据传输时延和丢包率的阈值采用下式对丢包率和传输时延进行粗差过滤:

21、

22、

23、式中,x′i、y′i分别表示第i个传输时延、丢包率过滤后的值;

24、对粗差过滤后的数据进行如下公式的归一化:

25、

26、

27、式中,xi、yi分别表示预处理后第i个传输时延、丢包率的值。

28、进一步的,步骤(2)中所述基于链路状态分析的贪心策略,具体包括:

29、源节点向网络中广播z个具有文件初始信息的不同编号的链接请求数据包,z为大于1的正整数;

30、目标节点和中间节点接收链接请求数据包,对于相同编号的链接请求数据包,仅接收首次到达的链接请求数据包;并以源节点经同一上一跳节点到达当前节点的所有路径为一条虚拟路径记录虚拟路径信息,包括上一跳节点ip地址、到达的链接请求数据包个数、虚拟路径长度和虚拟路径传输时延;所述虚拟路径长度、虚拟路径传输时延为虚拟路径包括的所有实际路径的平均路径长度、平均传输时延;

31、待广播结束,目标节点将记录的所有虚拟路径到达的链接请求数据包个数按照对应的平均传输时延从小到大重新排序,并根据排序后的到达个数序列a′计算得到每个虚拟路径的丢包率:

32、

33、式中,a′i表示到达个数序列中第i个元素,ri表示a′i对应的虚拟路径的丢包率;

34、目标节点根据每条虚拟路径的丢包率、虚拟路径长度和传输时延按照下式计算得到路径指标值,并从中选取路径指标值最小的虚拟路径作为局部最优虚拟路径:

35、

36、式中,sci表示ri对应虚拟路径的路径指标值,tavg,i为传输时延,bi为虚拟路径长度,ω为权重;

37、将局部最优虚拟路径中当前节点的上一跳节点按照相同步骤进行计算,并沿局部虚拟路径从后向前的节点重复执行,直至计算到源节点,将所有局部最优虚拟路径组合,得到一条真实的最优路径。

38、进一步的,步骤(3)具体包括:

39、源节点将子文件分为若干分组;

40、对于每个分组,根据下一跳节点发送来的网络编码系数生成一个n0行k列的本地随机编码矩阵m0,n0为下一跳节点发送来的网络编码系数,k为正整数;

41、对于每个分组,将分组分成k片分片数据fj,形成文件矩阵f=[f1 f2 … fk]t,并将对应本地随机编码矩阵m0与文件矩阵f相乘,得到编码数据c0=m0×f;

42、将随机编码矩阵m0作为传输编码矩阵m′0与编码数据c0和一起发送至下一跳节点。

43、进一步的,步骤(4)具体包括:

44、当中间节点接收到上一跳节点发送的编码数据ck-1后,根据下一跳节点发送来的网络编码系数生成一个nk行k列的本地随机编码矩阵mk,nk为下一跳节点发送来的网络编码系数,k表示路径中中间节点序号;

45、将本地随机编码矩阵mk与接收的编码数据ck-1相乘,得到编码数据ck=mk×ck-1;

46、将本地随机编码矩阵mk与上一跳节点发送的传输随机编码矩阵m′k-1相乘,得到当前节点的传输随机编码矩阵m′k=mk×m′k-1;

47、将编码数据ck和传输随机编码矩阵m′k一起发送至下一跳节点。

48、进一步的,步骤(5)中所述采用高斯消元法进行数据解码,具体包括:

49、按照下式进行解码:

50、f=m′l-1-1×cl-1

51、式中,f为子文件的分组数据,l表示选择的最优路径长度,cl-1表示目标节点接收到的编码数据,m′l-1表示目标节点接收到的传输随机编码矩阵。

52、进一步的,步骤(5)中所述网络编码系数计算算法具体包括:

53、构建以下目标函数,并求解得到网络编码系数nk:

54、

55、式中,rk为针对当前节点预测的丢包率,k为正整数,θ为成功率阈值。

56、有益效果:本发明与现有技术相比,其显著优点是:本发明在文件传输之前,通过基于链路状态分析的路由选择算法从复杂且未知的网络中选择一条性能较优的文件传输路径,实现了更高效的文件传输,并且利用链路质量预测模型预测未来链路质量,根据链路质量自适应更新网络编码系数,从而使得网络编码更适合当前网络链路状态,提高了节点间数据通信的可靠性与吞吐量,提高传输的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1