System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种缓存队列调整方法及电子设备技术_技高网

一种缓存队列调整方法及电子设备技术

技术编号:40711856 阅读:7 留言:0更新日期:2024-03-22 11:13
本申请提供一种缓存队列调整方法及电子设备,应用于接收端,该方法包括:响应于第一业务的发起操作,获取第一业务的目标业务类型,并确定目标业务类型对应的业务设置时延;获取接收端与发送端当前的第一传输时延;获取接收端与发送端的频段特征信息,基于频段特征信息确定抖动系数,基于第一传输时延的抖动指示值与抖动系数确定抖动缓存时延;抖动指示值用于指示第一传输时延的抖动程度;基于业务设置时延、第一传输时延、抖动缓存时延和发送端发送数据包的发包间隔,调整缓存队列的长度;缓存队列用于缓存第一业务的数据包,缓存队列的长度等于缓存队列中能够缓存的数据包的数量。本方案可以根据网络抖动程度与业务设置动态调整缓存队列长度。

【技术实现步骤摘要】

本申请涉及网络传输,尤其涉及一种缓存队列调整方法及电子设备


技术介绍

1、在数据传输的过程中,可能出现时延抖动的情况。目前,一般采用缓存队列机制平滑时延抖动,在缓存队列机制中,通过将数据包预存到缓存队列中,从而保持递包周期。

2、但该方案中,缓存队列的长度相对固定。如果网络环境和业务类型发生变化,可能会由于缓存队列过短而导致无法平滑时延抖动,或由于缓存队列过长而造成性能的浪费。


技术实现思路

1、本申请实施例提供一种缓存队列调整方法及电子设备,可以根据网络抖动程度与业务设置共同调整缓存队列的长度,在平滑时延抖动的同时,不会造成性能浪费。

2、为达到上述目的,本申请的实施例采用如下技术方案:

3、第一方面,提供了一种缓存队列调整方法,可以应用于接收端。接收端与发送端建立了无线连接,接收端用于接收并缓存来自发送端的第一业务的数据包后处理数据包,以执行第一业务,该方法包括:响应于第一业务的发起操作,获取第一业务的目标业务类型,并确定目标业务类型对应的业务设置时延;其中,业务设置时延是针对第一业务设置的从发送端发送第一业务的一个数据包至接收端开始处理对应数据包需要花费的时间。获取接收端与发送端当前的第一传输时延;其中,第一传输时延用于指示从发送端发送第一业务的一个数据包至接收端接收到对应数据包需要花费的时间。基于第一传输时延的抖动指示值确定抖动缓存时延;其中,抖动指示值用于指示第一传输时延的抖动程度,抖动缓存时延用于指示抖动程度下从发送端发送一个数据包至接收端接收到对应数据包抵抗抖动需要缓存的时间。基于业务设置时延、第一传输时延、抖动缓存时延和发送端发送数据包的发包间隔,调整缓存队列的长度k;其中,缓存队列用于缓存第一业务的数据包,缓存队列的长度k等于缓存队列中能够缓存的数据包的数量。

4、通过采用该技术方案,可以通过获取接收端与发送端之间的传输时延,探测具体的网络抖动程度。以及根据业务设置时延,传输时延和网络抖动程度共同决定缓存队列的缓存深度,最后通过调整的缓存队列深度确定递包策略。

5、在第一方面的一种可能的实现方式中,上述获取接收端与发送端当前的第一传输时延,包括:响应于第一业务的发起操作后,每隔第一预设时长向发送端发送传输帧;其中,传输帧中包括接收端在第一预设时长内接收到第一业务的第一个数据包的接收时间到传输帧的发送时间之间的第一等待时间。接收来自发送端的传输确认帧;其中,传输确认帧中包括第一往返时延,第一往返时延是发送端的第二等待时间与第一等待时间的差值,第一往返时延为第一传输时延与传输帧的第二传输时延之和,第二等待时间为发送端发送第一个数据包的发送时间到接收到来自接收端的传输帧的接收时间之间的时间。基于传输帧的发送时间和传输确认帧的接收时间,计算第二往返时延,得到传输帧的第二传输时延;其中,传输帧的发送时间和传输确认帧的接收时间相同。计算第一往返时延与传输帧的第二传输时延的差值,得到第一传输时延。由此,接收端可以实时,准确的探测出第一业务的数据包的当前传输时延。进而可以更加准确计算出缓存队列的长度,更好平滑时延抖动。并且,不需要额外增加数据帧去探测传输时延,可以减小功耗,节省电量。

6、在第一方面的一种可能的实现方式中,业务设置时延包括最小固定值与最大固定值,该方法包括:若第一传输时延小于最小固定值,则业务设置时延为最小固定值;若第一传输时延大于或等于最小固定值,则业务设置时延为最大固定值。由此,根据实时计算出来的传输时延进一步确定业务设置时延的值,也即,业务设置时延可以根据传输时延动态进行调整。

7、在第一方面的一种可能的实现方式中,在基于所述第一传输时延的抖动指示值确定抖动缓存时延之前,该方法还包括:基于第二预设时长内第一传输时延的平均离差值确定抖动指示值。其中,平均离差σ的计算公式如下:

8、

9、上述公式中,n为第二预设时长内可以计算出的传输时延的次数,是n次传输时延的平均值。每次的传输时延与平均值之差为离差,平均离差σ即为各个离差的绝对值的平均值,可以反应传输时延在预设时长内的抖动程度。

10、在第一方面的一种可能的实现方式中,基于第一传输时延的抖动指示值确定抖动缓存时延,该方法包括:获取接收端与发送端的频段特征信息,基于频段特征信息确定抖动系数;其中,频段特征信息用于指示接收端与发送端的频点与信道的关系,包括同频同信道,异频同信道与异频异信道。基于抖动指示值与抖动系数的乘积确定抖动缓存时延。

11、在第一方面的一种可能的实现方式中,该方法还包括:若抖动缓存时延小于发包间隔,则抖动缓存时延调整为0。可以理解的是,若是计算出的抖动缓存时延小于发包间隔,则可以认为此时网络状况比较好,网络抖动较弱,可以不引入抖动缓存。由此,在网络状态好的时候,并不会引入抖动缓存,从而不会造成性能浪费。接收端可以只根据业务需求,也就是业务设置时延确定业务缓存时延,进一步调整缓存队列的长度。

12、在第一方面的一种可能的实现方式中,目标业务类型还设置有对应的抖动缓存时延阈值,该方法包括:若抖动缓存时延大于抖动缓存时延阈值,则抖动缓存时延为抖动缓存时延阈值。也就是说,本方案中对每个业务的抖动缓存时延设置了对应的最大值限制,以免计算出的抖动缓存时延过大,超出业务设置能力。

13、在第一方面的一种可能的实现方式中,上述基于业务设置时延、第一传输时延、抖动缓存时延和发送端发送数据包的发包间隔,调整缓存队列的长度k,包括:基于业务设置时延t1、第一传输时延t2、抖动缓存时延t3和发送端发送数据包的发包间隔s,采用以下公式:k=(t1-t2+t3)/s,计算缓存队列的长度k。由此,本方案可以根据数据包实时准确的第一传输时延探测具体的网络抖动程度,并根据网络抖动程度与业务设置时延动态调整缓存队列长度。

14、在第一方面的一种可能的实现方式中,在上述基于业务设置时延、第一传输时延、抖动缓存时延和发送端发送数据包的发包间隔,调整缓存队列的长度k之后,该方法还包括:获取缓存队列中当前缓存的数据包的实际数量k,基于实际数量k与缓存队列的长度k,调整缓存队列中已缓存的数据包的处理策略,直至缓存队列中缓存有k个数据包后按照所发包间隔处理缓存队列中缓存的数据包。按照实际数量与缓存队列的长度调整数据包的处理策略,可以在时延抖动时保持处理数据包的速度。

15、在第一方面的一种可能的实现方式中,上述基于实际数量k与缓存队列的长度k,调整缓存队列中已缓存的数据包的处理策略,包括:若实际数量k小于缓存队列的长度k,按照发包间隔处理缓存队列中缓存的数据包,并记录缓存队列中丢失的数据包,对丢失的数据包进行重传;若实际数量k大于缓存队列的长度k,按照目标间隔处理缓存队列中缓存的数据包或者对缓存队列中的数据包进行丢包处理;其中,目标间隔小于发包间隔;若实际数量k为0,则在缓存队列缓存一个数据包后,立即处理对应的数据包。按照上述数据包的处理策略,可以使缓存队列快速恢复到正常状态,保证接收端本文档来自技高网...

【技术保护点】

1.一种缓存队列调整方法,其特征在于,应用于接收端,所述接收端与发送端建立了无线连接,所述接收端用于接收并缓存来自所述发送端的第一业务的数据包后处理所述数据包,以执行所述第一业务,所述方法包括:

2.根据权利要求1所述的缓存队列调整方法,其特征在于,所述获取所述接收端与所述发送端当前的第一传输时延,包括:

3.根据权利要求1或2中所述的缓存队列调整方法,其特征在于,所述业务设置时延包括最小固定值与最大固定值,所述方法包括:

4.根据权利要求1-3中任一项所述的缓存队列调整方法,其特征在于,在所述基于所述第一传输时延的抖动指示值确定抖动缓存时延之前,还包括:

5.根据权利要求4中所述的缓存队列调整方法,其特征在于,所述方法还包括:

6.根据权利要求4或5中所述的缓存队列调整方法,其特征在于,所述目标业务类型还设置有对应的抖动缓存时延阈值,所述方法包括:

7.根据权利要求1-6中任一项所述的缓存队列调整方法,其特征在于,所述基于所述业务设置时延、所述第一传输时延、所述抖动缓存时延和所述发送端发送数据包的发包间隔,调整缓存队列的长度K,包括:

8.根据权利要求1-7中任一项所述的缓存队列调整方法,其特征在于,在所述基于所述业务设置时延、所述第一传输时延、所述抖动缓存时延和所述发送端发送数据包的发包间隔,调整缓存队列的长度K之后,所述方法还包括:

9.根据权利要求8所述的缓存队列调整方法,其特征在于,所述基于所述实际数量k与缓存队列的长度K,调整所述缓存队列中已缓存的数据包的处理策略,包括:

10.根据权利要求9所述的缓存队列调整方法,其特征在于,所述记录所述缓存队列中丢失的数据包,对所述丢失的数据包进行重传,包括:

11.一种电子设备,其特征在于,所述电子设备包括:通信模块、存储器和一个或多个处理器;所述通信模块、所述存储器和所述处理器耦合;所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述电子设备执行时,使得所述电子设备执行如权利要求1-10任一项所述的方法。

12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在电子设备中运行时,使得所述电子设备执行如权利要求1至10中任一项所述的方法。

...

【技术特征摘要】

1.一种缓存队列调整方法,其特征在于,应用于接收端,所述接收端与发送端建立了无线连接,所述接收端用于接收并缓存来自所述发送端的第一业务的数据包后处理所述数据包,以执行所述第一业务,所述方法包括:

2.根据权利要求1所述的缓存队列调整方法,其特征在于,所述获取所述接收端与所述发送端当前的第一传输时延,包括:

3.根据权利要求1或2中所述的缓存队列调整方法,其特征在于,所述业务设置时延包括最小固定值与最大固定值,所述方法包括:

4.根据权利要求1-3中任一项所述的缓存队列调整方法,其特征在于,在所述基于所述第一传输时延的抖动指示值确定抖动缓存时延之前,还包括:

5.根据权利要求4中所述的缓存队列调整方法,其特征在于,所述方法还包括:

6.根据权利要求4或5中所述的缓存队列调整方法,其特征在于,所述目标业务类型还设置有对应的抖动缓存时延阈值,所述方法包括:

7.根据权利要求1-6中任一项所述的缓存队列调整方法,其特征在于,所述基于所述业务设置时延、所述第一传输时延、所述抖动缓存时延和所述发送端发送数据包的发包间隔,调整缓存队列的长度k,包...

【专利技术属性】
技术研发人员:庄凌凡张梦龙
申请(专利权)人:荣耀终端有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1