CN105407058A - 带拥塞控制的可靠组播传输方法 - Google Patents

带拥塞控制的可靠组播传输方法 Download PDF

Info

Publication number
CN105407058A
CN105407058A CN201410464825.9A CN201410464825A CN105407058A CN 105407058 A CN105407058 A CN 105407058A CN 201410464825 A CN201410464825 A CN 201410464825A CN 105407058 A CN105407058 A CN 105407058A
Authority
CN
China
Prior art keywords
packet
data
data transmission
multicast
muticast
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.)
Pending
Application number
CN201410464825.9A
Other languages
English (en)
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.)
Jiangsu Gm-Winlead Intelligent Technology Co Ltd
Original Assignee
Jiangsu Gm-Winlead Intelligent Technology 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 Jiangsu Gm-Winlead Intelligent Technology Co Ltd filed Critical Jiangsu Gm-Winlead Intelligent Technology Co Ltd
Priority to CN201410464825.9A priority Critical patent/CN105407058A/zh
Publication of CN105407058A publication Critical patent/CN105407058A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明应用于网络数据传输领域,主要解决通过组播方式进行网络文件数据传输时的丢包问题。由于组播协议是根据接受者的需要由路由器对数据流进行复制转发,所以服务端的服务总带宽不受客户接入端带宽的限制。但是传统的主播与可靠单播协议相比没有纠错机制,容易出现丢包现象,同时由于传统的组播协议没有拥塞控制机制,对于TCP业务不友好,导致占用了大量的网络带宽资源。本发明主要是为了创造一种对TCP友好的、可靠的组播传输方法。通过在组播数据包中增加冗余包机制和重传机制,用于丢失数据的恢复,同时加入了拥塞控制功能,根据接收端的丢包反馈情况,自动调节发送端发送数据窗口的大小,减轻网络负荷,改善丢包问题。

Description

带拥塞控制的可靠组播传输方法
一、技术领域
TCP/IP网络数据传输领域。本发明主要解决通过组播方式进行网络文件数据传输时的丢包问题。
二、背景技术
由于组播协议是根据接受者的需要由路由器对数据流进行复制转发,所以服务端的服务总带宽不受客户接入端带宽的限制。但是与可靠单播协议相比没有纠错机制,发生丢包错包后难以弥补,同时由于传统的组播协议没有拥塞控制机制,对于TCP业务不友好,导致占用了大量的网络带宽资源。本发明主要是为了创造一种对TCP友好的、可靠的组播传输方法。
三、发明内容
发送端通过TCP/IP网络同时向多个接收端分发文件。
1.发送端发送数据时IP数据包的结构说明
发送端发送数据时IP数据包的结构为:
IP头部,UDP头部,type,fileId,groupId,blockId,contentsize,文件数据段。
因为该方法是在组播的基础上改进而来,所以IP头部和UDP头部与TCP/IP协议族中的一致,这边不再介绍。UDP数据端的大小固定为1000Byte。
下面主要介绍下UDP数据段中几个额外的字段:
type:数据包类型,8bit,如果为0则为文件属性包,为1则为文件数据包(非冗余包),为2则为文件数据包(冗余包)。
fileId:文件id,64bit,标识传送的文件。从0开始每发送完一个文件该值增加1,到达2^64-1后,回到0。
groupId:数据包组id,64bit,标识当前数据包在哪个group中,每个group中包含一个或者多个数据以及一个冗余包。从0开始每发送完一个group的数据包后该值增加1,到达2^64-1后,回到0。
blockId:数据包在组内的id,8bit,标识该数据包在当前group中的编号。在同一group中,从0开始,每发送完一个数据包后,该值增加1。在一个group中,blockId不会重复。
contentsize:包中数据大小,16bit,标识当前包中数据大小。
文件数据段:最大1024Byte。
2.接收端发送数据时数据段格式说明
接收端发送数据时数据段格式为:
type,length,fileId,groupId,blockId
各字段的说明如下:
type:数据包类型,8bit,固定为0,表示请求重发。
length:数据内容长度,16bit。说明了接下来发送的数据的长度。
fileId:文件id,64bit,标识要被重传的文件。
groupId:数据包组id,64bit,标识要被重传的数据组。
blockId:数据包在组内的id,8bit,标识要被重传的数据包在group中的编号。
接收端以TCP的方式发送这些数据段。
3.数据包组结构说明:
数据包的组结构为:
数据包1,数据包2,数据包3,冗余包
以4个为一组,其中有3个数据包,1个冗余包。其中冗余包的数据段是对数据包的数据段进行异或操作后得到的。
如果到达文件的末尾,则还是需要发送一个完整的数据包分组,多余的数据包的数据段使用0填充。
4.发送等级说明
发送端有8个发送等级,每个发送等级主要包含窗口的大小(每次连续发送的数据包个数)。详细如下:
等级 窗口大小(个)
1 4
2 8
3 12
4 16
5 20
6 24
7 28
8 32
一个窗口大小包含一个或者多个数据包。
5.文件属性通知说明
该通知只包含在一个数据报中,type为0,则文件数据段的内容如下:
xxxx,yyyy
其中xxxx是被传输的文件的大小,单位字节。yyyy是文件名。
发送端在一开始连续发送5个文件属性通知数据报,等五秒钟后,再次连续发送5个文件属性通知数据报,等五秒钟后,再次连续发送5个文件属性通知数据报。
6.发送端发送文件流程说明(流程图参见说明书附图1)
1)发送端监听接收端的TCP连接。
2)在发送文件数据前,组播告知接收端接下来发送的文件的属性信息。
3)一开始,发送端使用最小的发送等级(等级1),发送完一个窗口大小的数据包(即发送4个包,3个是数据包,1个是冗余包),等待32ms(一个RTT),
a)如果没有收到接收端的重发请求,则增加一个发送级别(如果当前等级为1,则变成等级2;如果为最高级8,则不变),然后继续发送下一个窗口大小的数据包(如果新等级为2,则发送8个数据包,发送顺序如下:数据包*3,冗余包*1,数据包*3,冗余包*1)。
b)如果收到了接收端的重发请求,发送端根据fileId,groupId和blockId计算出缺失的数据段的位置,然后读取数据后通过TCP再次发送给接收端。
i.如果发送重发请求的接收端数量没有超过总接收端数的十分之一(本次例子中为10个),则维持当前的发送等级发送接下来五个窗口大小的数据包,如果在发送的5个窗口的数据包中,重发请求都没有超过总接收端的十分之一,则将发送等级加1;如果在发送五个窗口过程中,收到了重发请求并且发送重发请求的接收端数量超过总接收端数的十分之一,此时设置下一次的发送等级设置为当前发送等级的二分一(如果当前等级为4,则新的等级为2;如果当前等级为5,则新的等级为2;如果当前为最低级1,则不变)。
ii.如果发送重发请求的接收端数量超过总接收端数的十分之一,则将设置下一次的发送等级设置为当前发送等级的二分一。
以上步骤不断循环,直到完成文件的发送。
7.接收端接收文件流程
1)接收端需要通过TCP连接到发送端。
2)接收端接收文件的属性信息,解析成功后,等待接收文件数据信息。
3)接收文件数据包,如果一个数据包组中有一个包没有接收到,则通过冗余包将丢失的包还原出来;如果一个数据包组中有两个或者两个以上的包没有接收到,则通过TCP向发送端发送重发请求,并等待发送端的重发内容。
四、具体实施方式
1.配置TCP/IP网络,并且网路上任意两个点都能互通。
2.所有的路由器启用组播协议。
3.在网络的一端启动发送服务器,在网路的其他位置启动接收客户端。
4.服务器发送文件,客户端能正确接收到文件。

Claims (4)

1.本发明主要解决通过组播方式进行网络文件数据传输时的丢包问题,创新性的引入了冗余包的设计方法,对于一般的丢包现象通过冗余包计算来恢复丢失的数据包,因此要求保护在组播数据传输中使用冗余包的这种设计方法。
2.本发明创新性的将FEC算法应用于组播数据传输中的冗余包生成,因此要求保护在组播数据传输中使用FEC算法生产冗余包的这种设计。
3.本发明对于组播数据传输过程中冗余包和普通数据包都丢失的情况,创新性的采用了基于可靠连接的TCP方式来做补包处理,因此要求保护在组播数据传输过程中,丢失冗余包和普通数据包时,通过TCP方式来重发丢失的数据包,以达到补包的算法。
4.本发明在组播数据传输过程中丢包非常严重的情况下,可以根据接收端的反馈,自动调节发送端的发送数据窗口(发送数据缓冲区)大小来改善丢包问题,因此要求保护这种在组播数据传输过程中通过接收端的反馈,自动动态调节发送端发送数据窗口(发送数据缓冲区)大小的处理方式。
CN201410464825.9A 2014-09-12 2014-09-12 带拥塞控制的可靠组播传输方法 Pending CN105407058A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410464825.9A CN105407058A (zh) 2014-09-12 2014-09-12 带拥塞控制的可靠组播传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410464825.9A CN105407058A (zh) 2014-09-12 2014-09-12 带拥塞控制的可靠组播传输方法

Publications (1)

Publication Number Publication Date
CN105407058A true CN105407058A (zh) 2016-03-16

Family

ID=55472317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410464825.9A Pending CN105407058A (zh) 2014-09-12 2014-09-12 带拥塞控制的可靠组播传输方法

Country Status (1)

Country Link
CN (1) CN105407058A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107566291A (zh) * 2017-09-26 2018-01-09 恒生电子股份有限公司 组播传输方法、装置、电子设备及存储介质
CN112866178A (zh) * 2019-11-27 2021-05-28 北京沃东天骏信息技术有限公司 音频数据传输的方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741584A (zh) * 2008-11-20 2010-06-16 盛乐信息技术(上海)有限公司 降低流媒体丢包的方法
CN102325009A (zh) * 2011-09-13 2012-01-18 北京邮电大学 一种基于前向纠错的网络编码组播数据流可靠传输方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741584A (zh) * 2008-11-20 2010-06-16 盛乐信息技术(上海)有限公司 降低流媒体丢包的方法
CN102325009A (zh) * 2011-09-13 2012-01-18 北京邮电大学 一种基于前向纠错的网络编码组播数据流可靠传输方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
叶保留: "面向Internet的流媒体组播技术", 《计算机科学》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107566291A (zh) * 2017-09-26 2018-01-09 恒生电子股份有限公司 组播传输方法、装置、电子设备及存储介质
CN107566291B (zh) * 2017-09-26 2021-03-12 恒生电子股份有限公司 组播传输方法、装置、电子设备及存储介质
CN112866178A (zh) * 2019-11-27 2021-05-28 北京沃东天骏信息技术有限公司 音频数据传输的方法和装置
CN112866178B (zh) * 2019-11-27 2023-09-05 北京沃东天骏信息技术有限公司 音频数据传输的方法和装置

Similar Documents

Publication Publication Date Title
JP4857262B2 (ja) エンド・ツー・エンドの信頼性のあるグループ通信のための方法および装置
US8717900B2 (en) Mechanisms to improve the transmission control protocol performance in wireless networks
US8819532B2 (en) Methods and devices for transmitting a data stream and corresponding computer readable media
CN105791054A (zh) 一种基于流分类实现的自主可控可靠组播传输方法
EP2774322B1 (en) Apparatus and method for transmitting a message to multiple receivers
US8976814B2 (en) Method of transporting data from sending node to destination node
US10645012B2 (en) System and method for reducing bandwidth usage of a network
US10003434B2 (en) Efficient error correction that aggregates different media into encoded container packets
CN105407058A (zh) 带拥塞控制的可靠组播传输方法
US10250499B2 (en) Multicast transmission using programmable network
CN106686410A (zh) Hls流媒体传输方法以及装置
US11502986B2 (en) Reducing transmission delay of transmitting data in Wi-Fi
US20150071273A1 (en) Efficient transfer of tcp traffic over wlan
US9591058B2 (en) Rapid recovery method for incomplete file transfer from sender to recipient
Patel et al. Reliable Connectionless Transport Protocol for Fast Message Delivery
Kumar et al. Improving The Performance Of Congestion Control In Wireless Networks
JP2013026836A (ja) 中継装置、中継方法及びプログラム
US20170195085A1 (en) Transmission control protocol segment recovery
Kok An adaptive block encoding technique for hybrid ARQ schemes
Amin et al. Bandwidth Efficient TCP Frame Design without Acknowledgment Number Field
Wilson Reliable Burst Protocol—Deterministic streaming data transport
Wang et al. A concurrent multi-path transfer mechanism used in ad hoc networks
Cui et al. A New Initialization Mechanism for SCTP Association between Two Multihomed Terminals

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160316

WD01 Invention patent application deemed withdrawn after publication