CN101505201B - 一种差错控制方法 - Google Patents

一种差错控制方法 Download PDF

Info

Publication number
CN101505201B
CN101505201B CN2009100303094A CN200910030309A CN101505201B CN 101505201 B CN101505201 B CN 101505201B CN 2009100303094 A CN2009100303094 A CN 2009100303094A CN 200910030309 A CN200910030309 A CN 200910030309A CN 101505201 B CN101505201 B CN 101505201B
Authority
CN
China
Prior art keywords
matrix
information source
redundancy packet
coefficient matrix
number field
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.)
Expired - Fee Related
Application number
CN2009100303094A
Other languages
English (en)
Other versions
CN101505201A (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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN2009100303094A priority Critical patent/CN101505201B/zh
Publication of CN101505201A publication Critical patent/CN101505201A/zh
Application granted granted Critical
Publication of CN101505201B publication Critical patent/CN101505201B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种数据传输的差错控制方法和系统,适用于通信领域,在该领域中使用本发明的方法或系统,可有效地将丢失的数据恢复,提高数据的完整性。本发明的方法包括生成编码系数和冗余包、生成解码系数和恢复信源等步骤,发信端以n个信源生成m个冗余包,将信源及冗余包都发送往收信端,收信端收到的信源个数与冗余包个数之和只要大于或等于n,就能恢复出所有n个信源。本发明利用柯西矩阵及GF(2q)域内的运算,巧妙地实现了信息量最大化及运算量最小化。在多播及广播通信中使用本发明的差错控制方法或系统,可取得理想的效果。

Description

一种差错控制方法
技术领域
本发明涉及一种差错控制方法和系统,适用于通信领域。
背景技术
随着宽带网络及视频业务的发展,组播得到了广阔的应用,例如IPTV。组播应用中有大量的用户接收共同的数据源,标准的组播协议是不带反馈的,这就带来新的问题:如果网络上出现丢包,由于每个用户丢失的数据都可能不一样,为此需要一种有效的恢复机制,无论用户丢失哪些数据包,都能将丢失的数据恢复。
发明内容
发明目的:本发明的目的是提供一种数据传输的差错控制方法和实现该方法的系统,有效地将丢失的数据恢复,提高数据完整性。
技术方案:一种数据传输的差错控制方法,包括生成冗余包的方法和信源恢复的方法,其中生成冗余包的方法包括以下步骤:
(1)构造编码系数矩阵A:
假设有n个信源X1、X2、X3......Xn,m为需要生成的冗余包的数量,选一个数域P,保证每个信源Xj都在数域P内,在数域P中任取m个不同的值Ki(1≤i≤m),任取n个不同的值Lj(1≤j≤n),并且满足(Ki+Lj)≠0,取编码系数矩阵A为如下柯西矩阵(CauchyMatrix):
A = A 11 A 12 A 13 . . . A 1 n A 21 A 22 A 23 . . . A 2 n A 31 A 32 A 33 . . . A 3 n . . . . . . A m 1 A m 2 A m 3 . . . A mn = 1 K 1 + L 1 1 K 1 + L 2 1 K 1 + L 3 . . . 1 K 1 + L n 1 K 2 + L 1 1 K 2 + L 2 1 K 2 + L 3 . . . 1 K 2 + L n 1 K 3 + L 1 1 K 3 + L 2 1 K 3 + L 3 . . . 1 K 3 + L n . . . . . . 1 K m + L 1 1 K m + L 2 1 K m + L 3 . . . 1 K m + L n
或对柯西矩阵进行变换:将柯西矩阵乘以任意可逆矩阵得到矩阵 K L , 其中K为方阵,取编码系数矩阵A=L*K-1
步骤(1)每步数学运算都采用数域P内的运算。
(2)计算冗余包:
取信源向量X如下:
X = X 1 X 2 X 3 . . . X n
将编码系数矩阵A乘以信源向量X,得到冗余包向量Y如下:
Y = A * X = Y 1 Y 2 . . . Y m
Y1、Y2、Y3......Ym即为m个冗余包。步骤(2)每步数学运算都采用与步骤(1)相同的数域P内的运算。
X Y = I A * X
上等式中,I为n阶单位阵,A为m行n列矩阵。上等式左边取任意n行记为列向量G,取等式右边单位阵I及矩阵A对应的n行记为矩阵H,则下等式仍然成立:
G=H*X
当A为柯西矩阵时,H为可逆矩阵,因而可以解出X如下:
X=H-1*G
当A为对柯西矩阵进行变换而得到的矩阵时,也可证明X有解,证明的方法可参考本申请人提出的第200810234515.2号中国发明专利,将其证明过程中的范得蒙矩阵替换为柯西矩阵。
因而理论上,从n个信源及m个冗余包中任取n个数据包都可 以恢复出n个信源,这是本发明的数学原理。
发信端将n个信源及m个冗余包发送往收信端,当收信端收到的信源个数r小于n时,信源恢复的方法包括以下步骤:
(3)构造解码系数矩阵B:
假设收到r个信源和t个冗余包,当t大于(n-r)时任取(n-r)个冗余包,当t等于(n-r)时取所有的冗余包,这些冗余包记为Yu、Yv......Yw,其中u<v<……<w,取矩阵B的第1行为步骤(1)编码系数矩阵A的第u行;矩阵B的第2行为步骤(1)编码系数矩阵A的第v行......矩阵B的最后1行为步骤(1)编码系数矩阵A的第w行,构成解码系数矩阵B如下:
B = A u 1 A u 2 A u 3 . . . . . . A un A v 1 A v 2 A v 3 . . . . . . A vn . . . . . . A w 1 A w 2 A w 3 . . . . . . A wn
(4)恢复出信源X:
当t大于(n-r)时任取(n-r)个冗余包,当t等于(n-r)时取所有的冗余包,得到如下等式:
B * X = Y u Y v . . . Y w
当t大于或等于(n-r)时,前面已经证明上述等式必定有解,可采用解(n-r)元1次方程组的解法解出(n-r)个未收到的信源Xj。步骤(4)每步数学运算都采用与步骤(1)相同的数域P内的运算。
上面描述了生成冗余包Y及将信源X恢复的差错控制方法,下面描述如何实现该差错控制方法的系统,包括以下内容:
(a)上述步骤(1)、(2)、(4)中的数域P采用扩展伽罗瓦域GF(2q)(Extended Galois Field)。
(b)事先按上述步骤(1)算好编码系数矩阵A,并将它存储在发信端和收信端的存储器上。
(c)发信端将信源Xj按固定的规则切成s个片段Xj1、Xj2、Xj3......Xjs,保证每个片段的值都在上述GF(2q)域内,信源Xj切片后得到如下信源矩阵X:
X = X 11 X 12 X 13 . . . . . . X 1 s X 21 X 22 X 23 . . . . . . X 2 s X 31 X 32 X 33 . . . . . . X 3 s . . . . . . X n 1 X n 2 X n 3 . . . . . . X ns
发信端利用CPU或ASIC按如下等式生成冗余包,冗余包Yi由Yi1、Yi2、Yi3......Yis构成。将n个信源Xj及m个冗余包Yi发送往收信端。
Y = A * X = Y 11 Y 12 Y 13 . . . . . . Y 1 s Y 21 Y 22 Y 23 . . . . . . Y 2 s . . . . . . Y m 1 Y m 2 Y m 3 . . . . . . Y ms
(d)当收信端收到的信源数r小于n时,取r个的信源及(n-r)个冗余包,并将信源Xj及冗余包Yi按与步骤(c)相同的规则切成s个片段。利用CPU或ASIC按上述步骤(3)和(4)的方法恢复出信源。信源Xj及冗余Yi包切片后,步骤(4)恢复信源的等式如下:
B * X 11 X 12 X 13 . . . X 1 s X 21 X 22 X 23 . . . X 2 s X 31 X 32 X 33 . . . X 2 s . . . . . . X n 1 X n 2 X n 3 . . . X ns = Y u 1 Y u 2 Y u 3 . . . Y us Y v 1 Y v 2 Y v 3 . . . Y vs . . . . . . Y w 1 Y w 2 Y w 3 . . . Y ws
有益效果:本发明与现有技术相比,其显著优点是:从n个信源及m个冗余包中任取n个数据包,都一定能恢复出n个信源,保证了冗余包信息量的最大化。采用GF(2q)域内的运算,在减少运 算量的同时还能保证信道容量得到最有效的利用。本发明的方法是信息论香农定律在实践应用中的最优化方法之一,具有很高的可用性。
在组播应用如IPTV中使用本发明的方法和系统,能有效地将丢失的组播数据恢复,完美地解决组播应用中当数据被丢失一部分之后出现的故障例如IPTV的噪音及图像停顿或马赛克。
附图说明
图1是冗余包生成单元的简要逻辑图。
图2是信源恢复单元的简要逻辑图。
具体实施方式
上述技术方案中的数域P,可采用任何无限数域或有限数域,无限数域如实数域、有理数域,有限数域如基本伽罗瓦域,在无限数域中的运算如在实数域内的运算,5050是个巨大的数,需要增大存储空间,也会因为进位而不利于有效地利用信道容量。采用有限域中的GF(pq)域,对于p取2,则任何运算的结果都不会要求更多的存储空间。具体实施本发明描述的方法时,一般选用GF(28)域。本申请人提出的第200810234515.2号中国发明专利对GF(28)域内的加、减、乘、除运算有描述。由于GF(28)域内的乘、除运算的运算量较大,为了加快运算速度采用查表法来完成,即事先将所有可能的乘、除运算及结果存于收发信端。
作为实施例,取n=10,m=4,s=5,取GF(28)域内的不可约多项式Z(x)=1+x+x3+x4+x8,K1=1、K2=2、K3=3、K3=4,L1=5、L2=6、L3=7、L4=8、L5=9、L6=10、L7=11、L8=12、L9=13、L10=14。利用GF(28)域内的运算,求得4行10列的柯西矩阵即编码矩阵系数A如下,由于A的计算量比较大,可事先算好并分别保存在收发信端。
A = 203 209 123 79 232 192 41 225 176 199 209 203 82 41 192 232 79 229 199 176 123 82 203 192 41 79 232 199 229 225 1 141 246 176 225 229 199 232 79 41
假设信源包X1、X2、X3......X10构成的信源列向量X如下:
X = X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 X 10 = abcde fghij klmno pqrst uvwxy ABCDE FGHIJ KLMNO PQRST UVWXY
将每个信源包切成5片,每片1个Byte并转换成数值,信源列向量X变为如下:
X = X 11 X 12 X 13 X 14 X 15 X 21 X 22 X 23 X 24 X 25 X 31 X 32 X 33 X 34 X 35 X 41 X 42 X 43 X 44 X 45 X 51 X 52 X 53 X 54 X 55 X 61 X 62 X 63 X 64 X 65 X 71 X 72 X 73 X 74 X 75 X 81 X 82 X 83 X 84 X 85 X 91 X 92 X 93 X 94 X 95 X 101 X 102 X 103 X 104 X 105 = 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
上述数据代入冗余包生成等式Y=A*X后,10个信源包共50个切片生成4个冗余包共20个切片如下:
Y = 36 164 95 114 20 84 205 231 6 211 131 39 20 71 153 136 19 176 249 222
假设发信端将10个信源包和4个冗余包发出之后,收信端仅接收到信源包X1、X2、X3、X5......X9,信源包X4及X10在传输过程中被丢失,同时收信端还收到冗余包Y2、Y3,冗余包Y1、Y4在传输 过程中被丢失,则可构造解码系数矩阵B如下:
Figure G2009100303094D00071
B * X = Y 2 Y 3
上等式即成为如下2元1次方程组:
Y2=209X1+203X2+82X3+41X4+192X5+232X6+79X7+229X8+199X9+176X10
Y3=123X1+82X2+203X3+192X4+41X5+79X6+232X7+199X8+229X9+225X10
收到的信源包X1、X2、X3、X5......X9及冗余包Y2、Y3作为已知项,未收到的信源包X4、X10作为变量,上等式即成为包含变量X4、X10各切片的5组2元1次方程组,解开这些方程组即得到信源X4、X10。上述过程中的所有数学运算仍采用GF(28)域内的运算。
图1是冗余包生成单元的简要逻辑图,由CPU及存储器等单元构成,在不易失存储器中存储编码系数矩阵A及GF(28)域内的乘除法表,由CPU采用软件方法实现(如采用ASIC硬件实现,可用硬件实现乘除法因而无需存储乘除法表),按步骤(2)生成冗余包。
图2是信源恢复单元的简要逻辑图,由CPU及存储器等单元构成,在不易失存储器中存储编码系数矩阵A及GF(28)域内的乘除法表,由CPU采用软件方法实现(如采用ASIC硬件实现,可用硬件实现乘除法因而无需存储乘除法表),按步骤(3)和(4)解出所有信源。

Claims (1)

1.一种数据传输的差错控制方法,其特征是:该方法包括生成冗余包的方法和信源恢复的方法,其中生成冗余包的方法包括以下步骤:
(1)构造编码系数矩阵A:
假设有n个信源X1、X2、X3......Xn,m为需要生成的冗余包的数量,选一个数域P,保证每个信源Xj都在数域P内,在数域P中任取m个不同的值Ki(1≤i≤m),任取n个不同的值Lj(1≤j≤n),并且满足Ki+Lj≠0,取编码系数矩阵A为如下柯西矩阵:
A = A 11 A 12 A 13 . . . A 1 n A 21 A 22 A 23 . . . A 2 n A 31 A 32 A 33 . . . A 3 n . . . . . . A m 1 A m 2 A m 3 . . . A mn = 1 K 1 + L 1 1 K 1 + L 2 1 K 1 + L 3 . . . 1 K 1 + L n 1 K 2 + L 1 1 K 2 + L 2 1 K 2 + L 3 . . . 1 K 2 + L n 1 K 3 + L 1 1 K 3 + L 2 1 K 3 + L 3 . . . 1 K 3 + L n . . . . . . 1 K m + L 1 1 K m + L 2 1 K m + L 3 . . . 1 K m + L n
或对柯西矩阵进行变换:将柯西矩阵乘以任意可逆矩阵得到矩阵其中K为方阵,取编码系数矩阵A=L*K-1
步骤(1)每步数学运算都采用数域P内的运算;
(2)计算冗余包:
取信源向量X如下:
X = X 1 X 2 X 3 . . . X n
将编码系数矩阵A乘以信源向量X,得到冗余包向量Y如下:
Y = A * X = Y 1 Y 2 . . . Y m
Y1、Y2、Y3......Ym即为m个冗余包;步骤(2)每步数学运算都采用与步骤(1)相同的数域P内的运算;
发信端将n个信源及m个冗余包发送往收信端,当收信端收到的信源个数r小于n时,信源恢复的方法包括以下步骤:
(3)构造解码系数矩阵B:
假设收到r个信源和t个冗余包,当t大于n-r时任取n-r个冗余包,当t等于n-r时取所有的冗余包,这些冗余包记为Yu、Yv......Yw,其中u<v<……<w,取矩阵B的第1行为步骤(1)编码系数矩阵A的第u行;矩阵B的第2行为步骤(1)编码系数矩阵A的第v行......矩阵B的最后1行为步骤(1)编码系数矩阵A的第w行,构成解码系数矩阵B如下:
B = A u 1 A u 2 A u 3 . . . . . . A un A v 1 A v 2 A v 3 . . . . . . A vn . . . . . . A w 1 A w 2 A w 3 . . . . . . A wn
(4)恢复出信源X:
当t大于n-r时任取n-r个冗余包,当t等于n-r时取所有的冗余包,得到如下等式:
B * X = Y u Y v . . . Y w
当t大于或等于n-r时,利用上等式解出n-r个未收到的信源Xj;步骤(4)每步数学运算都采用与步骤(1)相同的数域P内的运算。
CN2009100303094A 2009-03-18 2009-03-18 一种差错控制方法 Expired - Fee Related CN101505201B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100303094A CN101505201B (zh) 2009-03-18 2009-03-18 一种差错控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100303094A CN101505201B (zh) 2009-03-18 2009-03-18 一种差错控制方法

Publications (2)

Publication Number Publication Date
CN101505201A CN101505201A (zh) 2009-08-12
CN101505201B true CN101505201B (zh) 2011-08-31

Family

ID=40977292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100303094A Expired - Fee Related CN101505201B (zh) 2009-03-18 2009-03-18 一种差错控制方法

Country Status (1)

Country Link
CN (1) CN101505201B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011124167A2 (zh) * 2011-05-11 2011-10-13 华为技术有限公司 编码方法及设备、解码方法及设备、编解码系统
WO2022021098A1 (zh) * 2020-07-28 2022-02-03 华为技术有限公司 一种编解码方法及装置
CN115549848A (zh) * 2021-06-29 2022-12-30 华为技术有限公司 一种数据传输方法和通信装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5719884A (en) * 1995-07-27 1998-02-17 Hewlett-Packard Company Error correction method and apparatus based on two-dimensional code array with reduced redundancy
CN1187718A (zh) * 1996-12-10 1998-07-15 菲利浦电子有限公司 包括结合正交调幅的穿孔乘积码的数字传输系统与方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5719884A (en) * 1995-07-27 1998-02-17 Hewlett-Packard Company Error correction method and apparatus based on two-dimensional code array with reduced redundancy
CN1187718A (zh) * 1996-12-10 1998-07-15 菲利浦电子有限公司 包括结合正交调幅的穿孔乘积码的数字传输系统与方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李长乐等.一种实用的无线信道纠错方法.《电讯技术》.2002,(第四期),13-17. *

Also Published As

Publication number Publication date
CN101505201A (zh) 2009-08-12

Similar Documents

Publication Publication Date Title
US8839067B2 (en) Apparatus and method for accelerating the encoding of raptor codes
KR101933465B1 (ko) 이동 통신 시스템에서 패킷 송수신 장치 및 방법
CN102638331B (zh) 基于随机线性网络编码的无线可靠广播方法
CN103023813B (zh) 抖动缓冲器
KR20130140938A (ko) 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법
CN103716134B (zh) 一次反馈条件下度渐增的喷泉码的编码方法
CN103152652B (zh) 一种基于柯西rs编码的视频帧数据网络传输方法
CN101505201B (zh) 一种差错控制方法
CN101552661B (zh) 一种差错控制方法
US6697996B2 (en) Multi-dimensional packet recovery system and method
US20150006991A1 (en) Graceful degradation-forward error correction method and apparatus for performing same
CN101404563B (zh) 一种差错控制方法和系统
JP5497917B2 (ja) 直交多重記述符号化
CN103532674A (zh) 一种基于复杂网络的文件传输编码方法
CN100433614C (zh) 一种数据包恢复方法
KR101967884B1 (ko) 방송 및 통신 시스템에서 패킷 송/수신 장치 및 방법
CN103078715B (zh) 一种基于组合设计的语音冗余交织方法
CN107005349B (zh) 一种数据处理方法、基站以及终端设备
CN102065289B (zh) 基于网络编码的可靠性视频传输方法及装置
CN111447044A (zh) 分布式存储方法和传输译码方法
CN109474836B (zh) 数字多媒体信号的发送、接收方法及装置
Saxena et al. Network coding advantage over MDS codes for multimedia transmission via erasure satellite channels
CN103532666B (zh) 提高分布式传输中数据传输效率和lt码性能的方法
CN109687934A (zh) 基于媒体内容的自适应系统码fec方法、装置及系统
KR102181553B1 (ko) 전자장치에서 부호화 및 복호화를 위한 방법 및 장치

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110831

Termination date: 20200318

CF01 Termination of patent right due to non-payment of annual fee