CN100384117C - 数据传输的差错控制方法 - Google Patents

数据传输的差错控制方法 Download PDF

Info

Publication number
CN100384117C
CN100384117C CNB2005100944108A CN200510094410A CN100384117C CN 100384117 C CN100384117 C CN 100384117C CN B2005100944108 A CNB2005100944108 A CN B2005100944108A CN 200510094410 A CN200510094410 A CN 200510094410A CN 100384117 C CN100384117 C CN 100384117C
Authority
CN
China
Prior art keywords
data
transmitting end
request
collecting mail
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.)
Active
Application number
CNB2005100944108A
Other languages
English (en)
Other versions
CN1747371A (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.)
NANJING GREATBIT NETWORK TECHNOLOGY CO., LTD.
Original Assignee
NANJING GREATBIT SOFTWARE 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 NANJING GREATBIT SOFTWARE CO Ltd filed Critical NANJING GREATBIT SOFTWARE CO Ltd
Priority to CNB2005100944108A priority Critical patent/CN100384117C/zh
Publication of CN1747371A publication Critical patent/CN1747371A/zh
Application granted granted Critical
Publication of CN100384117C publication Critical patent/CN100384117C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明公开一种数据传输的差错控制方法,适用于在计算机网络中传输大量数据,它包括以下步骤:收信端发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端可以接收数据的速率;发信端对数据集进行全息编码,然后以不高于收信端可接收数据的速率,向收信端发送至少一倍于解码所需要的量的编码数据;收信端接收全息编码数据的同时进行全息解码,一旦解码完毕,立即发送停发请求给发信端;发信端收到收信端的停发请求之后,停止向收信端发送编码数据。在网络丢包率较高但带宽足够的情况下,它还能有效地保障数据的快速、可靠传输,缩短文件传输的时间或减少流媒体点播及直播时图像出现停顿、黑屏或马赛克的现象。

Description

数据传输的差错控制方法
一、技术领域
本发明涉及一种数据传输的差错控制方法,适用于在计算机网络中传输大量数据,包括传统的文件传输及利用P2P(端对端)技术进行文件传输,传统的流媒体直播、点播以及利用P2P技术进行流媒体直播、点播等应用领域。
二、背景技术
在计算机网络中,数据主要以TCP(传输控制协议)或UDP(用户数据报协议)来承载。
使用TCP时,收信端利用ACK(确认)机制,来通知发信端,它已经从发信端正确收到哪些数据块,发信端以此来确定接下来要发送的数据块的序号或需要重新发送的数据块的序号。当数据被丢失时,TCP就靠这种检测丢包重传的机制,来保证数据的可靠传输。然而TCP的丢包重传机制,会造成额外的网络时延,在传输文件的时候,时延积累的结果是需要花更多的时间才能完成文件传输;在流媒体点播或直播的时候,时延积累的结果是很明显的图像停顿。
UDP是一种不保证可靠性的传输协议,一般地,在传输文件的时候,需要增加确认序号等差错控制机制,来保障数据不被丢失;在流媒体点播或直播的时候,为保证数据能及时传递往往放弃差错控制机制,如果有数据被丢失,则导致图像黑屏或出现马赛克。
无论是TCP的可靠传输,还是在UDP上增加需要确认序号的差错控制,即使是网络带宽足够富裕,在网络有一定的丢包时,仍然将造成时间长度不可预测的传输时延,结果是导致文件传输时间变长,流媒体点播或直播时,图像停顿、黑屏或出现马赛克。
三、发明内容
1、发明目的:本发明的目的是提供一种数据传输的差错控制方法,在网络丢包率较高但带宽足够的情况下,它能有效地保障数据的快速、可靠传输。
2、技术方案:一种数据传输的差错控制方法,其特征是:它包括以下步骤:
(A)收信端发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端可以接收数据的速率;
(B)发信端对数据集进行全息编码,然后以不高于收信端可接收数据的速率,向收信端发送至少一倍于解码所需要的量的编码数据;
(C)收信端接收全息编码数据的同时进行全息解码,一旦解码完毕,立即发送停发请求给发信端;
(D)发信端收到收信端的停发请求之后,停止向收信端发送编码数据。
在上述方法中,还可以包括如下以下步骤:
(E)发信端发向收信端的编码数据量,比解码所需的数据量多一倍之后,如果还未收到收信端的停发请求,则停止继续发送;
(F)收信端由于接收到的编码数据量不够而无法解码,如果等待规定的时间之后仍接收不到来自于发信端的编码数据时,则再次发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端可以接收数据的速率。
在上述步骤(B)、(C)中,所述的编码、解码方法,可以使用本申请人提出的第200510094180.5号发明专利所涉及的方法。
3、有益效果:本发明与现有技术相比,其显著优点是:利用本发明所述的差错控制方法,在网络丢包率较高但带宽足够的情况下,它能有效地保障数据的快速、可靠传输,缩短文件传输的时间或减少流媒体点播及直播时图像出现停顿、黑屏或马赛克的现象。
四、附图说明
附图是差错控制方法主要步骤的简要逻辑图。
五、具体实施方法
结合附图,详细说明具体的实现方法:
(A)收信端发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端可以接收数据的速率。
(B)发信端对数据集进行全息编码如下:
假设收信端向发信端索取的原始数据集由数据块X1、X2、X3、……、Xm构成,小写英文字母m、n、k、s等为符号下标,是自然数。
生成随机向量Ak=<Ak1、Ak2、Ak3、……、Akm>,其中每个Akn都是随机数;生成中间结果Pk=(Ak1*X1)+(Ak2*X2)+(Ak3*X3)+……+(Akm*Xm);输出全息编码结果Yk为Ak与Pk的组合,例如,Ak为<1、2、3、4>,Pk转换成字符串之后为abcdefg,则可组合成编码结果Yk为字符串1_2_3_4_abcdefg。
发信端一边进行全息编码,一边以不高于收信端可接收数据的速率,向收信端发送至少一倍(例如1-10倍)于解码所需要的量的编码数据。一般地,解码所需的编码数据的块数,略高于原始数据集的数据的块数m。
为加快编解码速度,可以让随机向量Ak中的每个值Akn只能随机为0或1,并且编码或解码时的加法运算,都改为异或运算。
(C)收信端接收全息编码数据的同时进行全息解码如下:
由全息编码的方法可知,每个全息编码数据都含有一部分的原始信息量,所以,只要收信端接收到编码数据的块数足够,就可以解码出完整的原始数据,其原因是没有任何一块编码数据是关键数据块,收信端不会因为缺少关键数据块而无法进行解码。只要网络带宽足够,就算有较高的丢包率,收信端仍然能收到足够的编码数据,因而能够有效解码。
将接收到的s个(s必须大于或等于m)编码数据Y1、Y2、Y3、……、Ys拆分,得到如下矩阵等式:
A 11 A 12 A 13 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; A 1 m A 21 A 22 A 23 A 2 m &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Ak 1 Ak 2 Ak 3 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Akm &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Am 1 Am 2 Am 3 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Amm &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; As 1 As 2 As 3 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Asm * X 1 X 2 X 3 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Xm = P 1 P 2 &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Pk &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Pm &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; &CenterDot; Ps
解上述线性方程组,求得原始数据X1、X2、X3、……、Xm,一旦解码完毕,立即发送停发请求给发信端。
(D)发信端收到收信端的停发请求之后,立即停止再往收信端发送编码数据。由附图可知,发信端有可能发送出比收信端解码所需的数据量更多的编码数据,但是,一旦发信端收到收信端的停发请求,发信端会立即停止发送,确保发信端多发送的编码数据量很少,以避免浪费网络带宽。
为了防止收信端所发送的停发请求在网络中被丢失的情况下,发信端仍然不停地往收信端发送编码数据而浪费网络带宽,发信端需要进行如下判断处理:
(E)发信端发往收信端的编码数据量,比解码所需的数据量多一倍之后,如果还未收到收信端的停发请求,则停止继续发送。
为防止网络连续丢失大批量数据的情况下收信端无法解码,收信端需要进行如下判断处理:
(F)收信端由于接收到的编码数据量不够而无法解码,如果等待规定的时间(例如1微秒到9秒)之后仍接收不到来自于发信端的编码数据,则再次发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端可以接收数据的速率。无论编码数据是哪次收到的,收信端都可以用它来进行解码。
从上述详细的实现方法可知,虽然这种数据传输的差错控制方法,可能会导致发信端发出比实际需要略多的数据量,但在网络丢包率较高而带宽足够的情况下,它仍然能保障数据的可靠传输,同时,由于这种差错控制方法无需序号确认机制,它还能保障数据的快速传输。例如,在计算机网络中,上述请求及数据都采用UDP数据报来传送,则利用这种差错控制方法,可以很方便地在UDP之上,增加快速、可靠的数据传输控制机制,特别适合于流媒体点播及利用P2P技术进行流媒体直播等应用。

Claims (2)

1.一种数据传输的差错控制方法,其特征是:它包括以下步骤:
(A)收信端发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端接收数据的速率;
(B)发信端对数据集进行全息编码,然后以不高于收信端接收数据的速率,向收信端发送至少一倍于解码所需要的量的编码数据;
(C)收信端接收全息编码数据的同时进行全息解码,一旦解码完毕,立即发送停发请求给发信端;
(D)发信端收到收信端的停发请求之后,停止向收信端发送编码数据。
2.根据权利要求1所述的数据传输的差错控制方法,其特征是:它还包括以下步骤:
(E)为了防止收信端所发送的停发请求在网络中被丢失的情况下,发信端仍然不停地往收信端发送编码数据而浪费网络带宽,发信端进行如下判断处理:发信端发向收信端的编码数据量比解码所需的数据量多一倍之后,如果还未收到收信端的停发请求,则停止继续发送;
(F)为防止网络连续丢失大批量数据的情况下收信端无法解码,收信端需要进行如下判断处理:收信端由于接收到的编码数据量不够而无法解码,如果等待规定的时间之后仍接收不到来自于发信端的编码数据时,则再次发送请求给发信端,该请求包括收信端向发信端索取的数据集的标识及收信端接收数据的速率。
CNB2005100944108A 2005-09-16 2005-09-16 数据传输的差错控制方法 Active CN100384117C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100944108A CN100384117C (zh) 2005-09-16 2005-09-16 数据传输的差错控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100944108A CN100384117C (zh) 2005-09-16 2005-09-16 数据传输的差错控制方法

Publications (2)

Publication Number Publication Date
CN1747371A CN1747371A (zh) 2006-03-15
CN100384117C true CN100384117C (zh) 2008-04-23

Family

ID=36166717

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100944108A Active CN100384117C (zh) 2005-09-16 2005-09-16 数据传输的差错控制方法

Country Status (1)

Country Link
CN (1) CN100384117C (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1326624A (zh) * 1998-09-16 2001-12-12 科学研究公司 用于异步传输模式和因特网协议的***和方法
WO2002033847A2 (en) * 2000-10-16 2002-04-25 Ericsson Inc Systems and methods for wirelessly communicating time division multiple access (tdma) data using adaptive multiplexing and coding
WO2004088909A1 (de) * 2003-04-03 2004-10-14 Rohde & Schwarz Gmbh & Co. Kg Verfahren und messgerät zum ermitteln einer fehlerrate ohne incremental redundancy
EP1499058A2 (en) * 1997-01-14 2005-01-19 Samsung Electronics Co., Ltd. Error prevention method for multimedia

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1499058A2 (en) * 1997-01-14 2005-01-19 Samsung Electronics Co., Ltd. Error prevention method for multimedia
CN1326624A (zh) * 1998-09-16 2001-12-12 科学研究公司 用于异步传输模式和因特网协议的***和方法
WO2002033847A2 (en) * 2000-10-16 2002-04-25 Ericsson Inc Systems and methods for wirelessly communicating time division multiple access (tdma) data using adaptive multiplexing and coding
WO2004088909A1 (de) * 2003-04-03 2004-10-14 Rohde & Schwarz Gmbh & Co. Kg Verfahren und messgerät zum ermitteln einer fehlerrate ohne incremental redundancy

Also Published As

Publication number Publication date
CN1747371A (zh) 2006-03-15

Similar Documents

Publication Publication Date Title
CN101432969B (zh) 前向纠错(fec)编码和流送
CN100375538C (zh) 在分组信道上多媒体通信的方法
KR100913983B1 (ko) 점―대―다지점 전송 시스템용 점―대―점 수리 요구 메커니즘
CN1620760B (zh) 用于通信***的多级码发生器和解码器
AU2010239821B2 (en) Data communication using 2D bar codes
AU2003201700A1 (en) Targeted scalable video multicast based on client bandwidth or capability
RU2010127308A (ru) Система и способ сжатия интерактивного потокового видео
KR20010113762A (ko) 각 출력 그룹 코드에 대한 관련된 입력 데이터의 가변수를갖는 그룹 체인 리액션 엔코더
EP1830507A3 (en) Apparatus and method for transmitting/receiving signal in a communication system using multiple input multiple output scheme
CN1152511C (zh) 通过合并数据包改变交织长度的信息重传方法
WO2009137464A3 (en) Pre-emptive acknowledgement for data transmission in a communication system
CN1509027A (zh) 用于在分组信道上的多媒体通信的方法和设备
CN1981503A (zh) 用于在数据网络中对内容进行可扩展传输的***
CN101286819B (zh) 一种数据接收方法及装置
CN102237966B (zh) 基于度2和高度编码包的喷泉码解码方法
CN101459490A (zh) 一种数据传输方法及装置
CN106100804B (zh) 一种基于选择重传arq的数字喷泉码传输方法
US20050193193A1 (en) Employing cyclic redundancy checks to provide data security
CN101944982A (zh) 基于时间驱动滑动窗口协议的流媒体实时转发方法
CN100384117C (zh) 数据传输的差错控制方法
Shalin et al. Multimedia data transmission through TCP/IP using hash based FEC with AUTO-XOR scheme
CN101494517B (zh) 一种数据传输方法及装置
CN1964478A (zh) 数字视频广播***中加扰/解扰的随机化处理方法
CN101562498B (zh) 多连接数据流裂化的编译码传输方法、设备及***
CN111327631A (zh) 一种基于tcp和udp的秘密信息传输方法及其***

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
ASS Succession or assignment of patent right

Owner name: NANJING GREATBIT INTERNET TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: NANJING GREATBIT SOFTWARE CO., LTD.

Effective date: 20100511

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 210002 ROOM 206, BUILDING 50, JIANGSU SOFTWARE PARK, NO.168, LONGPAN MIDDLEROAD, NANJING CITY, JIANGSU PROVINCE TO: 210002 ROOM 207, 2/F, BUILDING 53, JIANGSU PROV SOFTWARE PARK, NO.168, LONGPAN MIDDLE ROAD, NANJING CITY, JIANGSU PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20100511

Address after: Nanjing City, Jiangsu province Longpan road 210002 No. 168 Jiangsu Software Park building 53, 2 floor, room 207

Patentee after: NANJING GREATBIT NETWORK TECHNOLOGY CO., LTD.

Address before: Nanjing City, Jiangsu province Longpan road 210002 No. 168 Jiangsu Software Park building 50, room 206

Patentee before: Nanjing GreatBit Software Co., Ltd.