CN1622504A - 一种数据包恢复方法 - Google Patents

一种数据包恢复方法 Download PDF

Info

Publication number
CN1622504A
CN1622504A CNA200310108876XA CN200310108876A CN1622504A CN 1622504 A CN1622504 A CN 1622504A CN A200310108876X A CNA200310108876X A CN A200310108876XA CN 200310108876 A CN200310108876 A CN 200310108876A CN 1622504 A CN1622504 A CN 1622504A
Authority
CN
China
Prior art keywords
packet
data package
data
group
centerdot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA200310108876XA
Other languages
English (en)
Other versions
CN100433614C (zh
Inventor
沈钢
刘儿兀
桂洛宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Shanghai Bell Co Ltd
Original Assignee
Alcatel Lucent Shanghai Bell Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel Lucent Shanghai Bell Co Ltd filed Critical Alcatel Lucent Shanghai Bell Co Ltd
Priority to CNB200310108876XA priority Critical patent/CN100433614C/zh
Publication of CN1622504A publication Critical patent/CN1622504A/zh
Application granted granted Critical
Publication of CN100433614C publication Critical patent/CN100433614C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

本发明针对数据包传输过程中的出错和丢失现象,公开了一种数据包恢复的方法,能有效降低数据包传输过程中的差错。在发送节点,时间上连续的若干个数据包的集合称为一组数据包,在每组数据包的末尾添加一个或者多个用于纠错的冗余数据包,该纠错包是由当前数据包组的全部数据包和前面至少一个数据包组的全部数据包或部分数据包根据一定的编码方法计算得出,任何一个纠错包都和一个以上的数据包组相关联。相应的,在接收节点,能够联合多个数据包组中的纠错包对出错的数据包组进行纠错,因而与传统的数据包纠错方法相比,本发明方法提供了更强大的纠错能力。

Description

一种数据包恢复方法
                                技术领域
本发明涉及一种数据包恢复方法,尤其涉及实时通信中数据包出错或者丢失的恢复方法。
                                背景技术
在实际信道上传输数字信号时,由于信道传输特性不理想及噪声的影响,信号波形会变坏,接收节点所收到的数据包就有可能被损坏。同时,由于网络中排队、拥塞等影响,数据包在传输过程中也有可能会发生丢失。为了恢复传输过程中出错或者丢失的数据包,必须使用有效的差错控制方法。
1990年6月,第九届IEEE计算机和通信协会联合会(INFOCOM′90)第1卷124-131页公开了一篇文章,作者是N.Shacham,P.McKenney等,文章名称为“高速网络中使用编码和缓冲管理的数据包恢复方法”(Packet recovery in high-speed networks using coding andbuffer management),给出了多种前向纠错数据包恢复方法,其中单个数据包的恢复方法描述如下。
图1是现有的冗余纠错包生成方法的示意图。在发送节点,每个数据包组中冗余纠错包是由本组中的k个数据包根据一定的编码方法生成的,可以看出,每组的冗余纠错包只与该组中的数据包相关联。该纠错包生成方法包括以下步骤:
1)、时间上连续的k个数据包作为一组,发送的数据包带有序列号字段和循环冗余检查(Cyclic Redundancy check,CRC)校验字段;
2)、在发送节点,将一组中的k个数据包按位异或操作(Exclusive-Or,XOR)生成纠错包:
C c , i = Σ j = 0 k - 1 C j , i , i = 0,1,2 , · · · m - 1
其中,Cj,i是第j个数据包的第i位,CC,i是纠错包的第i位,m表示每个数据包有m个比特位。图中的f0( )表示一种编码方法,这里使用了奇偶校验编码方法。
上述方法的编码效率为k/k+1,k是一组中所有数据包个数,k+1是一组中所有数据包个数和冗余包个数之和。可见,冗余包越少,编码效率越高。
数据包接收过程中恢复出错或者丢失的数据包的方法包括以下步骤:
1)、对每个接收到的数据包进行CRC校验,并且根据序列号判断是否有数据包丢失;
2)、如果接收节点收到的该组数据包中,没有数据包出错或者丢失,忽略跟随的冗余纠错包;
3)、如果接收节点收到的该组数据包中,有且仅有一个数据包出错或者丢失,根据序列号可以知道该数据包的位置,假设为数据包组中的第t个数据包,利用数据包之间的异或关系,则
C t , i = ( Σ j = 0 k - 1 c j , i + c c , i ) , i = 0,1,2 , · · · , m - 1 , 且j≠t
出错或者丢失的数据包能够完全恢复。
由上述内容可知,现有的前向纠错(Forward Error Collection,FEC)数据包恢复方法有其不足的地方:冗余的纠错数据包仅仅和自己所在组中的数据包有关联,纠错能力完全依赖于该组中纠错包的纠错能力;一个数据包组中所能恢复的数据包的个数,受到该组中的纠错数据包的纠错能力的限制;为了提高纠错能力,必然增加纠错包的长度,那么就要增加带宽消耗的负担;由于一个数据包组中纠错包的纠错能力有限,该方法并不适合连续的数据包的出错或者丢失。
                                发明内容
本发明提出了一种冗余纠错包的生成方法,其中一个数据包组中的纠错包不仅仅与本组的数据包相关联,而且与多个数据包组中的数据包相关联,也就是说任何一个数据包组由分布在多个数据包组中的纠错数据包来保护,因而提供了更大的纠错能力。
下面是发送节点冗余纠错包生成的步骤。在本发明中,要发送的每个数据包都带有差错校验能力,用于检验数据包本身的误码。每个数据包还有序列号字段,用于指示数据包在序列中的位置。
首先,将连续的数据包流分段,时间上连续的若干个数据包的集合作为一组数据包。然后,在每个数据包组中添加一个用于纠错的冗余数据包,称为纠错包。纠错包是由当前一组数据包的全部数据包和前面至少一个数据包组的数据包根据一定的数学规则计算得出的。参与计算的当前数据包组和前面至少一个数据包组被认为相互关联。最后,在一组中所有数据包发送完后,纠错包紧跟着发送。
本发明还提供了一种数据包恢复方法,在接收节点接收到一个数据包组后,对其差错检测和恢复的步骤是这样实现的。
首先,对每个接收到的数据包进行差错校验,并且根据序列号是否连续判断是否有数据包丢失。假设前面相关的数据包组中没有出现差错,或者有差错但是已经成功恢复,如果接收节点收到的该组数据包中,没有数据包出错或者丢失,则忽略跟随的冗余纠错包;如果任何一组数据包中的出错或者丢失的数据包的个数小于或者等于该组纠错包的纠错能力,则通过该组纠错包恢复出错或者丢失的数据包。例如,当前数据包组中有且仅有一个数据包出错,并且当前数据包组的纠错能力是一个数据包,则通过当前组的纠错包恢复出错或者丢失的数据包。
如果任何一组数据包中的出错或者丢失的数据包的个数大于该组中的纠错包的纠错能力时,仅仅靠该组自己的纠错包已经无法完全恢复所有的错误。因为该数据包组和后续的数据包组的纠错包也建立了数学关联,这样接收节点等待下一个数据包组的纠错包到达,联合当前组的纠错包和后续组的纠错包能提供更大的纠错能力,这里假设后续到达的数据包都是正确的。
本发明方法能够快速、有效的恢复出错或者丢失的数据包,从而降低传输过程中的差错率。并且,本发明尤其能够恢复连续的数据包出错或丢失。
                                附图说明
图1是现有的冗余纠错包生成方法的示意图;
图2是根据本发明一个实施例的冗余纠错包生成方法的示意图;
图3是根据本发明一个实施例的第j组数据包对当前组纠错包的贡献Bj,u的计算示意图;
图4(a)是通过相关联的l个数据包组对第u1个数据包组进行纠错的示意图;
图4(b)是通过相关联的l个数据包组对两个数据包组中出错进行纠错的示意图。
                              具体实施方式
下面结合附图和具体实施方式对本发明作详细说明。
图2是根据本发明一个实施例的冗余纠错包生成方法的示意图。本实施例中,共有l个数据包组相关联,即每个数据包组和前面l-1个数据包组相关联,并用奇偶校验编码方法生成本组的纠错包。
下面说明在发送节点生成冗余纠错包的过程。
本发明中要发送的每个数据包都带有CRC校验字段,用于检验数据包本身的误码。每个数据包还有序列号字段,用于指示数据包在序列中的位置。当数据包丢失时,可以通过检查序列号获知哪个数据包丢失了。为简单起见,本实施例中规定每个数据包的长度固定为mbits。当然这不是必须的,数据包的长度是可以变化的。
首先,将连续的数据包流分段,时间上连续的k个数据包作为一个数据包组。这里规定每个数据包组中的数据包个数是固定的,但这也不是必须的。u作为组序号(u≥0),假设k<m。
然后,在每个数据包组中添加一个用于纠错的冗余数据包,称为纠错包。该纠错包是由当前数据包组和前面l-1个数据包组的信息用奇偶校验编码方法计算得出的,也就是说在本实施例中时间上连续的l个数据包组相互关联。由于本实施例采用的编码方法,每一个纠错包只有一个数据包的恢复能力。
假设第u个数据包组为当前数据包组,当前数据包组和前面l-1个数据包组相关联,根据奇偶校验编码方法产生当前数据包组中的纠错包Bu的公式如下:
B u = Σ j = u - l + 1 u B j , u · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ( 1 )
其中,Bj,u(u-l+1≤j≤u)定义为相关联的l个数据包组中第j个数据包组中的数据包对于Bu的贡献。可见Bu和l个数据包组的每个数据包组的信息都有关。
那么Bj,u是如何得到的呢?Bj,u通过对第j组的所有数据包Aj,n(0≤n≤k-1)进行偏移异或操作(XOR)得到,
B j , u = I m 0 s ( k - 1 ) × m A j , 0 + 0 s × m I m 0 s ( k - 2 ) × m A j , 1 + 0 2 s × m I m 0 s ( k - 3 ) × m A j , 2 + · · · + 0 ns × m I m 0 s ( k - n - 1 ) × m A j , n + · · · + 0 s ( k - 1 ) × m I m A j , k - 1 . - - - ( 2 )
其中,s表示数据包偏移的比特位,s的计算方法将在下面详细描述。Aj,n(0≤n≤k-1)表示第j个数据包组中的第n个数据包,其在公式(2)中为一个m行单列的向量
Figure A20031010887600092
Aj,n,0表示第j个数据包组中的第n个数据包的第0比特位,...,依此类推,Aj,n,m表示第j个数据包组中的第n个数据包的第m比特位。
Im表示单位对角阵,m为行数和列数;0s(k-1)×m表示s(k-1)行m列的0矩阵,...,0s(k-n-1)×m表示s(k-n-1)行m列的0矩阵;0s×m表示s行m列的0矩阵,...,0ns×m表示ns行m列的0矩阵。
本实施例中,出于简单,数据包的长度固定为m比特位,每个数据包组的数据包个数也都是k个,但这只是为了便于说明本发明,本领域的技术人员通过本发明应该能够了解本发明中的数据包长度和数据包组的数据包个数都是可以变化的。
图3是根据本发明一个实施例的第j组数据包对当前组纠错包的贡献Bj,u的计算示意图。该示意图的计算结果和公式(1)和(2)得到的结果是相同的,图3是用具体的数据包的示意图形式,而公式(1)和(2)是用数学方程的形式。Bi,u的计算是对于Ai,n(0≤n≤k-1)的偏移异或操作(XOR)。第j个数据包组中的第1个数据包(n=0)放在第1行;第2个数据包(n=1)放在第2行,并向右偏移s比特位,其中s=jmod(l),也就是j除以l的余数,这里l是相关联的数据包组个数,j是接收节点接收到的数据包组的序号;相对应,第n个数据包放在第n行,并向右偏移ns比特位。所产生的空位用0填充,得到一个矩阵。对这个矩阵用异或操作就得到Bj,u
本实施例中应用了奇偶校验编码方法计算纠错包,也可以用其它编码方法,如里德·索罗门编码方法或者其它的编码方法。
在本实施例中,可以得到该编码方法的冗余率Rc,冗余率定义为总的冗余包长度与总的数据包长之比,根据公式(1),
R c = ml + Σ i = 0 l - 1 ( k - 1 ) · i k · m · l = 2 ml + ( l 2 - l ) ( k - 1 ) 2 k · m · l
传统的具有一个数据包恢复能力的数据包FEC方法,冗余率Rt定义为
R t = 1 k
对于大部分的应用,数据包长度m远远大于k和l,这样Rc很接近Rt。与传统的数据包恢复方法的冗余率相比,本发明方法的冗余率基本上没有变大。特别是当l等于1,也就是说冗余数据包仅仅依赖于本数据组产生,我们得到Rc=Rt
当纠错包生成后,在一组中所有数据包发送完后,该组的纠错包紧跟着发送。
下面说明相应的数据包恢复方法。接收节点接收到一个数据包组后,就进行差错检测和恢复。
首先,对每个接收到的数据包进行CRC校验,并且根据序列号是否连续判断是否有数据包丢失。这里假设当前数据包组前面相关的数据包组中没有出现差错,或者有差错但是已经成功恢复出错或者丢失的数据包。
如果接收节点收到的当前组数据包中,没有数据包出错或者丢失,忽略跟随的冗余纠错包。
如果当前数据包组中有且仅有1个数据包出错,根据上面的假定,纠错包有恢复一个数据包的能力,则通过该纠错包能够恢复出错或者丢失的数据包,设该出错或者丢失的数据包序号为k1。
根据假设,前面相关联的l-1个数据包组中没有数据包丢失、出错或者丢失、出错的数据包已经恢复,第u个数据包组为当前数据包组,Bu为当前数据包组的纠错包,则根据纠错包的生成方法可知,前面l-1个数据包组对于Bu的贡献Bj,u(u-l+1≤j≤u-1)是已知的,将它们代入公式(1),得到当前组数据包对当前组纠错包的贡献Bu,u
B u , u = B u - Σ j = u - l + 1 u - 1 B j , u , - - - ( 3 )
然后将Bu,u代入公式(2),得到
B j , u = I m 0 s ( k - 1 ) × m A j , 0 + 0 s × m I m 0 s ( k - 2 ) × m A j , 1 + 0 2 s × m I m 0 s ( k - 3 ) × m A j , 2 + · · · + 0 ns × m I m 0 s ( k - n - 1 ) × m A j , n + · · · + 0 s ( k - 1 ) × m I m A j , k - 1 . - - - ( 2 )
则任一个数据包Aj,n丢失或者出错都能从公式(4)中得到恢复。
如果当前数据包组中有n(2≤n≤l)个数据包出错,并且当前数据包组的纠错能力是一个数据包,则必须等待后续的数据包组的纠错包到达,联合多个纠错包提供至多l(l≥2)个数据包的恢复能力:
假设第u个数据包组为当前数据包组,当前数据包组中丢失的数据包是Cn0,Cn1,Cn2,…Cn(l-1),(0≤n0<n1<…<n(l-1)≤k-1),并且后面l-1个数据包组没有数据包丢失;
将当前数据包组的纠错包Bu,和当前数据包组相关联的前面l-1个数据包组中所有数据包对第u个数据包组的贡献代入公式(1),可以得到当前数据包组中的数据包对当前组的纠错包的贡献Bu,u,见公式(3),
在后续l-1个数据包组到达后,将第u+1个数据包组的纠错包Bu+1,和第u+1个数据包组相关联的前面l-1个数据包组中除当前组u外的所有数据包对第u+1个数据包组的贡献代入公式(1),可以得到当前数据包组对第u+1个数据包组的纠错包的贡献Bu,u+1
B u , u + 1 = b u + 1 - Σ j = u - l + 2 u + 1 B j , u + 1 , j ≠ u , - - - ( 5 )
同样,可以得到当前数据包组对第u+2个数据包组的纠错包的贡献Bu,u+2,...,当前数据包组对第u+l-1个数据包组的纠错包的贡献Bu,u+l-1
将上述这些值、已知的相关数据包值、和纠错包值代入到公式(2),化解后得到下式,
Figure A20031010887600112
该公式中,Be0,Be1,Be2...Be(u+l-1)是已知的值,求解该方程组可以得到Cn0,Cn1,Cn2,…Cn(l-1)),(0≤n0<n1<…<n(l-1)≤k-1)。
上文涉及的情况是这样的:如果当前数据包组中有n1(2≤n1≤l)个数据包出错,并且当前数据包组的纠错能力是一个数据包,则必须等待后续的n1个数据包组的纠错包到达,联合多个纠错包提供n1个数据包的恢复能力。如图4(a)所示为通过相关联的l个数据包组对第u1个数据包组进行纠错的示意图。那么如果后续的n1个数据包组也有数据包出错或者丢失呢?如果出现这种情况,则必须先恢复其中最后一个出错数据包组,依次类推,直到将所有的数据包组中的出错或者丢失都恢复。这在上文已作了详细说明,,
图4(b)表示通过相关联的l个数据包组对两个数据包组中出错进行纠错的示意图。图中所示,假设在u1的后续n1-1数据包组中也有数据包丢失,如在第u2个数据包组中(u1<u2≤u1+n1-1)有n2个数据包丢失。因为u1数据包组的恢复必须要用到u2数据包组的信息,所以u1数据包组的恢复必须等到u2数据包组恢复成功之后进行。u1数据包组有数据包差错,而根据纠错包的生成算法,ui数据包组(u2≤ui≤u1+l-1)中的纠错包生成都和u1数据包组有关,这样ui数据包组(u2≤ui≤u1+l-1)中的纠错包都不能用于其它数据包纠错。仅仅序号(u1+l-1)之后的数据包组能用于u2数据包组的纠错。如果满足
    u1+l+n2-1≤u2+l-1,或者u1+n2≤u2...........................(7)
则从序号(u1+l)到(u1+l-1+n2)的n2个数据包组可以联合用于u2数据包组的纠错,即所选的用于纠错的相关联数据包组不能有出错,否则,数据包的丢失不能被恢复。其它的后续数据包组中的出错也能用同样的方法恢复。
相比于传统的数据包恢复方法,在相近的编码效率和冗余度的情况下,本发明方法具有明显的优点。传统的数据包恢复方法在一个数据包组中的所能恢复的数据包的个数,受到该组中的纠错数据包的纠错能力的限制,如果出错超过纠错包的纠错能力时就没法恢复了。而本发明的方法中,当一个数据包组中的出错数据包超过该组中纠错包的纠错能力时,通过联合后续的纠错包,提供更大的纠错能力,相比于原有的方法,有更大的纠错能力。并且本发明能够有效恢复出错或者丢失的数据包,从而降低传输过程中的差错率。
虽然已经结合特定实施例对本发明加以描述,然而根据前面的描述,许多替代、修改与变更对于本领域的技术人员来说是显而易见的。因此,本发明将包括所有落在后附的权利要求的构思与范围之内的这种替代、修改与变更。

Claims (9)

1.一种冗余纠错包的生成方法,其特征在于,所述方法包括以下步骤:
由当前数据包组的全部数据包和前面至少一个数据包组的全部数据包或者部分数据包根据一定的编码方法计算得到冗余纠错包;
将所述冗余纠错包添加到所述当前数据包组。
2.如权利要求1所述的方法,其特征在于,所述编码方法包括但不限于下述方法:奇偶校验编码方法,及里德·索罗门编码方法。
3.如权利要求2所述的方法,其特征在于,
假定时间上连续的k个数据包的集合作为一个数据包组,u为组序号(u≥0),Au,n(0≤n≤k-1)表示第u数据包组中的第n个数据包,当前数据包组和前面l-1个数据包组相关联,则根据奇偶校验编码方法产生当前数据包组中的纠错包Bu的公式如下:
B u = Σ j = u - l + 1 u B j , u - - - ( 1 )
其中,Bj,u(u-l+1≤j≤u)定义为第j个数据包组中的数据包对于Bu的贡献;
Bj,u通过对第j组的所有数据包Aj,n(0≤n≤k-1)进行偏移异或操作(XOR)得到,
B j , u = I m 0 s ( k - 1 ) × m A j , 0 + 0 s × m I m 0 s ( k - 2 ) × m A j , 1 + 0 2 s × m I m 0 s ( k - 3 ) × m A j , 2 + · · · + O ns × m I m 0 s ( k - n - 1 ) × m A j , n + · · · + 0 s ( k - 1 ) × m I m A j , k - 1 . - - - ( 2 )
其中,m表示数据包的长度,s表示偏移的比特位,Aj,n在公式(2)中为一个单列向量 A j , n , 0 A j , n , 1 . . . A j , n , m - 1 , Aj,n,r(0≤r≤m-1)表示第j个数据包组中的第n个数据包的第r位;
Im表示单位对角阵;0s(k-1)×m表示s(k-1)行m列的0矩阵,...,0s(k-n-1)×m表示s(k-n-1)行m列的0矩阵;0s×m表示s行m列的0矩阵,...,0ns×m表示ns行m列的0矩阵。
4.如权利要求3所述的方法,其特征在于,s=j mod(l),即j除以l的余数,j是指接收节点接收到的第j个数据包组。
5.如权利要求3所述的方法,其特征在于,所述数据包的长度可以变化,每个数据包组中的数据包个数也可以变化。
6.一种数据包恢复方法,其特征在于,包括步骤:
如果当前组数据包中出错或者丢失的数据包个数小于或者等于当前组冗余纠错包的纠错能力,则通过当前组冗余纠错包恢复出错或丢失的数据包;
如果当前组数据包中的出错或者丢失的数据包个数大于当前组冗余纠错包的纠错能力,则联合当前组的纠错包和至少一个后续组的纠错包恢复出错或丢失的数据包。
7.如权利要求6所述的方法,其特征在于,
在前面相关联的数据包组中没有数据包丢失、出错或者丢失、出错的数据包已经恢复的情况下,
如果当前数据包组中有且仅有一个数据包出错,则通过当前组的纠错包恢复出错或者丢失的数据包:假设第u个数据包组为当前数据包组,Bu为当前数据包组的纠错包,则根据相应的纠错包生成方法,当前数据包组前面l-1个数据包组对于Bu的贡献Bj,u(u-l+1≤j≤u-1)是已知的,将它们代入公式(1),得到当前组数据包对当前组纠错包的贡献Bu,u
B u , u = B u - Σ j = u - l + 1 u - 1 B j , u , - - - ( 3 )
然后将Bu,u代入公式(2),得到
B u , u = I m 0 s ( k - 1 ) × m A u , 0 + 0 s × m I m 0 s ( k - 2 ) × m A u , 1 + 0 2 s × m I m 0 s ( k - 3 ) × m A u , 2 + · · · + 0 ns × m I m 0 s ( k - n - 1 ) × m A u , n + · · · + 0 s ( k - 1 ) × m I m A u , k - 1 . - - - ( 4 )
其中,m表示数据包的长度,k表示一个数据包组的数据包个数,u表示数据包组的组序号(u≥0),s表示偏移的比特位,Au,n(0≤n≤k-1)表示第u个数据包组中的第n个数据包;
则任一个数据包Au,n(0≤n≤k-1)丢失或者出错都能从公式(4)中得到恢复。
8.如权利要求6所述的方法,其特征在于,如果当前数据包组n(2≤n≤l)个数据包出错,并且当前数据包组的纠错能力是一个数据包,则必须等待后续的数据包组的纠错包到达,联合多个纠错包提供至多l个数据包的恢复能力:
假设第u个数据包组为当前数据包组,当前数据包组中丢失的数据包是Cn0,Cn1,Cn2,…Cn(l-1),(0≤n0<n1<…<n(l-1)≤k-1),并且后面l-1个数据包组没有数据包丢失:
将当前数据包组的纠错包Bu,和当前数据包组相关联的前面l-1个数据包组对Bu的贡献Bj,u(u-l+1≤j≤u-1)代入公式(1),可以得到当前数据包组中的数据包对当前组的纠错包的贡献Bu,u,见公式(3),
在后续的第u+1个数据包组到达后,将Bu+1,和Bj,u+1(u-l+2≤j≤u+2,j≠u)代入公式(1),可以得到Bu,u+1
B u , u + 1 = B u + 1 - Σ j = u - l + 2 u + 1 B j , u + 1 , j ≠ u , - - - ( 5 )
同样,可以得到Bu,u+2,,,....,Bu,u+l-1
将上述这些值、已知的相关数据包值、和纠错包值代入到公式(2),化解后得到下式,
Be0,Be1,Be2...Be(u+l-1)是已知的值,因此求解该方程组可以得到Cn0,Cn1,Cn2,…Cn(l-1),(0≤n0<n1<…<n(l-1)≤k-1);
9.如权利要求8所述的方法,其特征在于,还包括步骤:
如果当前数据包组中有n1(2≤n1≤l)个数据包出错,并且当前数据包组的纠错能力是一个数据包,则必须等待后续的n1个数据包组的纠错包到达,联合多个纠错包提供n1个数据包的恢复能力;如果后续的n1个数据包组有数据包出错或者丢失,则先恢复其中最后一个出错数据包组,依次类推。
CNB200310108876XA 2003-11-26 2003-11-26 一种数据包恢复方法 Expired - Lifetime CN100433614C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200310108876XA CN100433614C (zh) 2003-11-26 2003-11-26 一种数据包恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200310108876XA CN100433614C (zh) 2003-11-26 2003-11-26 一种数据包恢复方法

Publications (2)

Publication Number Publication Date
CN1622504A true CN1622504A (zh) 2005-06-01
CN100433614C CN100433614C (zh) 2008-11-12

Family

ID=34758759

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200310108876XA Expired - Lifetime CN100433614C (zh) 2003-11-26 2003-11-26 一种数据包恢复方法

Country Status (1)

Country Link
CN (1) CN100433614C (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008049341A1 (fr) * 2006-10-24 2008-05-02 Hangzhou H3C Technologies Co., Ltd. Procédé de traitement de messages, dispositif de transmission de messages et dispositif de réception de messages
WO2008151514A1 (fr) * 2007-06-12 2008-12-18 Huawei Technologies Co., Ltd. Procédé, dispositif et système de transmission des données de support
CN100571217C (zh) * 2007-09-19 2009-12-16 腾讯科技(深圳)有限公司 一种在数据传输过程中抵抗丢包的方法、收发装置及系统
CN1972455B (zh) * 2006-11-30 2012-02-22 中兴通讯股份有限公司 一种移动多媒体广播系统的容错方法
CN103067130A (zh) * 2012-12-25 2013-04-24 哈尔滨工业大学 基于联合行列校验码和rs码的丢包恢复技术的无线通信方法
CN103455511A (zh) * 2012-05-31 2013-12-18 北大方正集团有限公司 一种数据检测的方法、系统和设备
CN104158569A (zh) * 2014-07-15 2014-11-19 清华大学 一种基于蓝牙协议使用acl链路承载的语音通信方法
CN106571893A (zh) * 2016-11-10 2017-04-19 深圳市潮流网络技术有限公司 一种语音数据的编解码方法
CN109462456A (zh) * 2018-11-15 2019-03-12 西安交通大学 一种基于误码扩散和噪声聚合的流媒体安全传输方法
CN109887514A (zh) * 2019-01-10 2019-06-14 广州视源电子科技股份有限公司 音频传输方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03198544A (ja) * 1989-12-27 1991-08-29 Nec Corp パリティ計数回路
DE19630343B4 (de) * 1996-07-26 2004-08-26 Telefonaktiebolaget L M Ericsson (Publ) Verfahren und Paket-Übertragungssystem unter Verwendung einer Fehlerkorrektur von Datenpaketen
US6081907A (en) * 1997-06-09 2000-06-27 Microsoft Corporation Data delivery system and method for delivering data and redundant information over a unidirectional network
CA2267450C (en) * 1997-08-01 2004-04-27 Ntt Mobile Communications Network Inc. Data sequence generator, transmitter, information data decoder, receiver, transmitter-receiver, data sequence generating method, information data decoding method, and recording medium
US6243846B1 (en) * 1997-12-12 2001-06-05 3Com Corporation Forward error correction system for packet based data and real time media, using cross-wise parity calculation

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008049341A1 (fr) * 2006-10-24 2008-05-02 Hangzhou H3C Technologies Co., Ltd. Procédé de traitement de messages, dispositif de transmission de messages et dispositif de réception de messages
US8127207B2 (en) 2006-10-24 2012-02-28 Hangzhou H3C Technologies Co., Ltd. Method for processing packets, an apparatus for transmitting packets, and an apparatus for receiving packets
CN1972455B (zh) * 2006-11-30 2012-02-22 中兴通讯股份有限公司 一种移动多媒体广播系统的容错方法
WO2008151514A1 (fr) * 2007-06-12 2008-12-18 Huawei Technologies Co., Ltd. Procédé, dispositif et système de transmission des données de support
CN100571217C (zh) * 2007-09-19 2009-12-16 腾讯科技(深圳)有限公司 一种在数据传输过程中抵抗丢包的方法、收发装置及系统
CN103455511A (zh) * 2012-05-31 2013-12-18 北大方正集团有限公司 一种数据检测的方法、系统和设备
CN103067130A (zh) * 2012-12-25 2013-04-24 哈尔滨工业大学 基于联合行列校验码和rs码的丢包恢复技术的无线通信方法
CN103067130B (zh) * 2012-12-25 2015-05-27 哈尔滨工业大学 基于联合行列校验码和rs码的丢包恢复技术的无线通信方法
CN104158569A (zh) * 2014-07-15 2014-11-19 清华大学 一种基于蓝牙协议使用acl链路承载的语音通信方法
CN104158569B (zh) * 2014-07-15 2016-08-17 清华大学 一种基于蓝牙协议使用acl链路承载的语音通信方法
CN106571893A (zh) * 2016-11-10 2017-04-19 深圳市潮流网络技术有限公司 一种语音数据的编解码方法
CN106571893B (zh) * 2016-11-10 2022-05-24 深圳市潮流网络技术有限公司 一种语音数据的编解码方法
CN109462456A (zh) * 2018-11-15 2019-03-12 西安交通大学 一种基于误码扩散和噪声聚合的流媒体安全传输方法
CN109887514A (zh) * 2019-01-10 2019-06-14 广州视源电子科技股份有限公司 音频传输方法及装置

Also Published As

Publication number Publication date
CN100433614C (zh) 2008-11-12

Similar Documents

Publication Publication Date Title
EP2357731B1 (en) Systematic decoding of chain reaction codes
KR100924295B1 (ko) 통신 시스템의 다단계 코드 발생기 및 디코더
CN105991227B (zh) 数据编码方法及装置
CN1947369A (zh) 传输数字数据分组的方法和实现该方法的设备
KR20060096156A (ko) 서브심볼 기반 코드를 이용한 데이터 삭제를 방지하기 위한방법
WO2005112250A2 (en) File download and streaming system
WO2008003094A2 (en) Efficient representation of symbol-based transformations with application to encoding and decoding of forward error correction codes
WO2015184914A1 (zh) 一种数据包处理方法及装置
JP2009055603A (ja) 符号化装置及び復号化装置
CN1604515A (zh) 为具有n块数据的消息产生循环冗余检验的方法和装置
CN101080875A (zh) 纠错方法以及装置
CN108282265A (zh) 纠错编码方法、装置、设备及计算机可读存储介质
CN1622504A (zh) 一种数据包恢复方法
US6697996B2 (en) Multi-dimensional packet recovery system and method
CN1610339A (zh) 传送和恢复数据分组的方法和装置
WO2017185681A1 (zh) 一种gel码字结构编码和译码的方法、装置及相关设备
CN1829099A (zh) 一种基于循环冗余码的单比特纠错查表方法及其电路
CN110830171B (zh) 接收数据的方法及设备,以及发送数据的方法及设备
Skachek et al. Hybrid noncoherent network coding
EP2621121A2 (en) Supercharged codes
CN101505201B (zh) 一种差错控制方法
CN1112778C (zh) 一种数字通信系统中的信道循环冗余码校验的方法
JP2023519407A (ja) データ通信のためのコーディング方法および装置
CN112286449A (zh) 一种rs纠删处理设备及分布式存储系统
CN1757166A (zh) 使用并行处理的turbo解码器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: SHANGHAI ALCATEL-LUCENT CO., LTD.

Free format text: FORMER NAME: BEIER AERKATE CO., LTD., SHANGHAI

CP01 Change in the name or title of a patent holder

Address after: 201206 Pudong Jinqiao Export Processing Zone, Nanjing Road, No. 388, Shanghai

Patentee after: ALCATEL-LUCENT SHANGHAI BELL Co.,Ltd.

Address before: 201206 Pudong Jinqiao Export Processing Zone, Nanjing Road, No. 388, Shanghai

Patentee before: Shanghai Bell Alcatel Co.,Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 201206 Pudong Jinqiao Export Processing Zone, Nanjing Road, No. 388, Shanghai

Patentee after: NOKIA SHANGHAI BELL Co.,Ltd.

Address before: 201206 Pudong Jinqiao Export Processing Zone, Nanjing Road, No. 388, Shanghai

Patentee before: ALCATEL-LUCENT SHANGHAI BELL Co.,Ltd.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20081112