一种低复杂度流编码设计方法

文档序号:34744047发布日期:2023-07-12 23:18阅读:40来源:国知局
一种低复杂度流编码设计方法

本发明涉及流编码,特别是涉及一种低复杂度流编码设计方法。


背景技术:

1、流编码技术是在发送端插入源包编码的修复包到包流中,如果某些源数据包丢失,接收方可以启用解码器从修复包中恢复丢失的包,从而避免耗时的重传,因此流编码传输不受rtt的影响,随着长距离有损耗链路的需求扩大,流编码技术正受到越来越多的关注。在现有的流编码技术之前,较为经典的是分组码,其中修复数据包是由源数据包并不相连的块组成。可以是固定速率或者无速率的,对于固定速率的块编码,每个包块生成固定数量的修复包。同样地,对于无速率的而言,每个包块会产生不确定数量的修复包,这种编码模式会收到rtt的影响,传输效率较低。为了解决块fec的局限性,产生了流fec,是块fec的卷积对应。修复报文由当前所有未确定的源报文生成,存在重叠编码窗口ew。由于编码窗口是重叠的,因此源报文可以受到后续所有修复报文的保护,通过调整修复报文的发送间隔,流fec可以实现完全不重传、传输与rtt无关、数据包到达顺序一致。流编码技术很适合于传播延迟高但事实带宽高的链路,即rtt大而报文间隔小。

2、流fec相对于块fec而言,源报文由多个时间相错的修复报文保护,但代价是会有更高的编解码计算成本。而且现有的流编码技术存在一个问题,生成修复报文时使用包含所有未确定源报文的全长编码窗口,产生的修复包称为全长修复包,传输过程的编解码计算成本会比较大。


技术实现思路

1、本发明的目的是解决现有流编码技术编解码计算成较大的问题,提出了一种低复杂度流编码设计方法。

2、为了实现上述目的,本发明采用了如下技术方案:

3、一种低复杂度流编码设计方法,包括以下步骤:混合使用短长和全长修复包,利用更新理论对队列繁忙期进行分析,预测修复包到达时的解码窗口宽度,使得ew宽度大于dw宽度,降低解码延迟dw宽度。

4、作为本发明的优选技术方案:短长与全长修复包混合使用,iseq为最近发送的源包索引id,修复包为编码窗口ew[ws,we]线性组合生成,并且we≡iseq,ihead为编码窗口中最小的源包id,当ws=ihead时称为全长修复包,ws=iseq-w+1>ihead时为短长修复包;

5、短长与全长修复包混合使用,接收端按序收到源包,接收到源包id为iseq+1,解码器不启动,当收到源包id大于iseq+1时,源包丢失,解码器被激活,发送端开始混合发送短长、全长修复包,接收端解码器使用动态高斯消元法of-ge来修复数据包。

6、作为本发明的优选技术方案:动态高斯消元法of-ge中,解码器激活后开始缓冲即将到来的报文,这些报文为id>iord+1的无序源报文或者id>iord+1的修复报文,收到的无序源报文有一个编码系数为1且看作特殊的修复报文,由接收到的报文逐步生成线性方程组as=c,解码矩阵a由收到报文的编码系数组成,修复报文的编码系数由本地prng伪随机数生成器生成,则可以从本地prng中恢复,of-ge算法接收到新的编码系数进行正向运算并保持解码矩阵a为上三角矩阵,并要去掉由于传播时延而错发已经接受源包的修复包,为接收到的修复包最大的we,源包的id,当a变为全秩时,解码矩阵完成,在as=c方程组上反向操作,回复解码窗口dw中的源报文并下发;

7、传输过程中接收方定期向发送方发送ack包,不同于传统的自动重传请求arq方案中ack包用于特定数据包的重传请求,流编码设计方法中ack包用于测量链路统计数据或报告接收方状态,以便编码器可以调整修复包发送间隔和清除数据包,这个机制使得流编码不受往返时间rtt的影响。

8、作为本发明的优选技术方案:所述短长全长修复包混用方法,解码过程激活后,接收到的可以填补解码矩阵缺失行的修复包的数量与解码窗口丢失的源包数量相等,这样的修复包被称为创新包。

9、作为本发明的优选技术方案:观察解码窗口宽度方法,解码延迟取决于收到修复包时创新的概率,修复包的编码窗口ew宽度与观测到的解码窗口dw宽度之间的关系是影响该概率的关键因素,在ew宽度大于dw宽度的情况下,编码的有限域足够大,则数据包是创新的概率较大,否则修复包的非创新概率非零则传输机会被浪费了,所以根据观察到的dw宽度来确定修复包的ew宽度使得数据包为创新数据包,以降低解码延迟。

10、作为本发明的优选技术方案:当解码器被激活后,dw宽度会随着新数据包到达解码器而逐渐扩展,直到解码矩阵变为全秩,所以dw宽度与解码过程处于活跃状态时间成正比,故将其建模为更新过程来分析这个活跃时间。

11、作为本发明的优选技术方案:在整个传输过程中解码器处于活跃与非活跃之间交替,丢包过程和发送修复包的过程是相互独立的,解码器的激活时间和其持续时间不受于上一次激活与失活的影响,解码器的状态可以看作交替的更新过程,其中状态的更新发生在解码器满秩完成解码时和空闲期丢包引起繁忙期即激活解码器时,链路上的包速率为pe,观测到的到达修复包dw宽度可以等效的用这个更新过程繁忙期的持续时间来表示,设si和ti为第i个繁忙周期的开始和结束时间,繁忙时段的持续时间为bi=ti-si,则最近一次空闲时间di=si-ti-1,一般地,t0=0时认为处于空闲状态,ri为所有空闲状态时间之和,ui为所有繁忙状态时间之和,现在考虑在任意时间t>0时已经在繁忙状态持续的时间其中ii为一个指标函数,当满足括号内条件是为1,否则为0即解码器不活动,令u为不包含空闲时间的繁忙时间,将ui看作u时间内的独立更新过程,zu就是繁忙时段最后一次更新的向后递归时间,可得以下定理:在任意时间观察解码器交替更新过程时,繁忙期的持续时间等于更新过程的持续时间,其中更新间隔是繁忙期本身;所述定理用于在分析解码过程时可以只专注于活跃状态的分析,

12、设fb(x)=pr{b≤x}为繁忙时段b的分布函数,则zu→∞时的极限分布概率密度为:其中e{b}是b的数学期望,预测观察到的繁忙时段e{z}=e{b2}/2e{b}=1/2(e{b}+var{b}/e{b}),其中var{b}是b的方差,分析了无记忆包丢失观察的dw宽度,其中每个传输的包以概率pe被擦除,考虑两种发送模式:第一种为每发送1/(f-1)个源包后定期发送修复包,第二种为每次发送数据包时以概率f发送修复包,两种的码率相等且为1-f,得出dw宽度与数据包发送速率无关。

13、作为本发明的优选技术方案:混合使用短长、全长修复包,通过利用跟新定理分析队列繁忙期,使得ew宽度大于dw宽度,以减少解码延迟降低运算成本,但当ew宽度远大于dw宽度时,在进入of-ge算法前需要减去不在dw中但在ew中的源报文,这样意味着在一个比观测到的dw大得多的ew报文中,在发送端和接收端都在成了计算成本的浪费,设计低复杂度流编码方案解决上述问题:编码器根据配置的码率1-f生成修复包时,使用短长和全长的概率分别为qs和1-qs,使用短长ew有助于降低编解码成本,但是如果仅使用短长ew,则dw宽度有可能会增加到短长修复包无法提供创新ev的水平,从而导致解码停滞,将违反流编码的无重传特性,即传输不再是rtt无关的,因此全长修复包在短长修复包无法提供接收方创新包时,采用短长修复包会降低接受到的修复包时创新包的概率,因此会增加解码延迟dw宽度,通过对短长修复包的概率qs和短长ew宽度w进行设计,可以在解码延迟dw宽度和编解码计算成本之间进行平衡,f表示数据包流中修复包的比例,混合使用短长全长修复包时,接受到的修复包有可能是非创新的,因为接收到的修复包一定要是创新的,所以假设ploss是一个短长度的修复包被证明是非创新的概率,因此混合使用短长全长修复包时数据流中修复包的比例小于f且为

14、使用短长修复包时创新包的比例,首先假设观察到的dw宽度大于w,则接收到的ew宽度为w的修复包是非创新的,则ploss≈pr{w(f~)>w},其中w(f~)代表通过任意接收到的修复包观察到的dw宽度,但此时仍有可能是创新的修复包,因为观察到的dw宽度大于短长修复包的w,但是由于解码矩阵要求上三角,所以短长修复包的w小于dw宽度但是大于所在行所需要的解码宽度,所以对于创新概率的描述是相当困难的,所以我们使用这种近似得到了实际f~的下界:f~=(1-qspr{w(f~)>w})f,给定qs和w则可以求解出f~,其中pr{w(f~)>w}在f~上是单调减少的,若达不到f~>pe(这是实现有限解码延迟的必要条件),则说明给定的qs和w不可行,期望解码延迟与解码繁忙时间成正比,e{bmixed}=1/[(f~-pe)r],记完全使用全长修复包期望解码延迟e{bfull}=1/[(f-pe)r],则低复杂度流编码方案的解码延迟惩罚为:[e{bmixed-bfull}]/bfull=(f-f~)/(f~-pe);

15、设w与nbdp分别代表ew的短长修复包与全长修复包的宽度,在发送端生成修复包时,相比于完全使用全长修复包,生成短长全长混合修复包可以平均节省包操作为:(nbdp-w)qs,在解码端计算成本的差异主要来自于进入of-ge算法之前,从接受到的修复包中减去按序发送的源包,假设dw宽度为d,接受到的修复报文ew宽度为n∈[w,nbdp]>d,需要减去n-d个源报文,一个修复包的平均节省实际上与发送端相同为(nbdp-w)qs,注意当n<d时,主要为n=w时,使用短长度的ew也节省了of-ge算法期间的计算成本,短长度ew的行计算在n*n解码矩阵中使用,而全长ew在d*d矩阵中,当w<d时,短长度的修复包可以是非创新的,但是这不会造成任何计算成本的浪费,因为解码器在接受到修复包后可以立即检查,非创新报文将被抛弃,不进行任何操作,综上我们可以得出低复杂度流编码方案的计算成本比全长修复包方案约节省:csave=2(nbdp-w)qs,即每个包的包操作。

16、作为本发明的优选技术方案:在低复杂度流编码方案中,需要确定适当的参数w和qs,以最大化节省计算成本,同时使得延迟惩罚不超过给定的η,通过f~和csave可以写出以下优化函数:约束条件为:(f-f~)/(f~-pe)≤η,f~=(1-qspr{w(f~)>w})f。

17、作为本发明的优选技术方案:所述报文丢失时突发情况时,当连续丢失几个数据包,称为一批,各批次的发生时相互独立的,遵从概率为λ的泊松分布,当损失发生时每个批次的大小是随机的,解码的空闲、繁忙时间形成与无记忆包损失类似的交替更新过程,解码延迟时间同样通过队列的繁忙时间来分析。

18、本发明相比于现有技术,本发明有益效果为:

19、本发明在保持流编码优点的同时,可明显减少编解码计算成本。

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