CN105245317A - 一种数据传输方法、发送端、接收端和数据传输系统 - Google Patents
一种数据传输方法、发送端、接收端和数据传输系统 Download PDFInfo
- Publication number
- CN105245317A CN105245317A CN201510685559.7A CN201510685559A CN105245317A CN 105245317 A CN105245317 A CN 105245317A CN 201510685559 A CN201510685559 A CN 201510685559A CN 105245317 A CN105245317 A CN 105245317A
- Authority
- CN
- China
- Prior art keywords
- packet
- data
- sequence number
- receiving terminal
- module
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1628—List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers
Abstract
本发明公开了一种数据传输方法、发送端、接收端和数据传输系统,属于通信技术领域。该数据传输方法包括:将待发送数据按照预设数据单元切分为多个数据包,并依次为所述数据包进行连续编号,所述预设数据单元小于最大传输单元;发送端依次将所述数据包向接收端发送;接收端接收所述发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向所述发送端反馈丢包信息;所述发送端根据所述丢包信息将丢失的数据包重新向所述接收端发送,直至所述接收端成功接收到所有数据包或者数据包发送时间达到预设时间。该数据传输方法、发送端、接收端和数据传输系统,数据传输速度快、且可靠性高。
Description
技术领域
本发明涉及通信技术领域,更具体地,涉及一种数据传输方法、发送端、接收端和数据传输系统。
背景技术
随着社会财富的积累以及生活节奏的加快,人们对优质、快捷的生活品质提出了更高的要求。动听的音乐和好看的视频都成为了生活中不可或缺的部分,诸如这些音视频文件等资料经常需要在智能音箱之间进行数据传输。
现有技术中,数据传输主要采用以下两种方式:
方式一:基于TCP(TransmissionControlProtocol,传输控制协议)进行数据传输,该数据传输方式,虽然传输可靠性较高,但缺点是传输速度相对较慢。
方式二:基于UDP(UserDatagramProtocol,用户数据报协议)进行数据传输,这种数据传输方式虽然传输速度较快,但由于经常会发生数据包丢失的现象,导致可靠性难以满足实际需要。
上述两种数据传输方式由于各自存在缺点,导致无法兼顾实时性和可靠性,难以满足对数据传输速度和可靠性都有要求的场合。
发明内容
本发明的一个目的是提供一种数据传输方法和装置的新技术方案,数据传输速度快、且可靠性高。
根据本发明的第一方面,提供了一种数据传输方法,包括:
将待发送数据按照预设数据单元切分为多个数据包,并依次为所述数据包进行连续编号,所述预设数据单元小于最大传输单元;
发送端依次将所述数据包向接收端发送;
接收端接收所述发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向所述发送端反馈丢包信息;
所述发送端根据所述丢包信息将丢失的数据包重新向所述接收端发送,直至所述接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
优选地,所述按照预设周期向所述发送端反馈丢包信息包括:
根据当前数据包的序号和丢失的数据包信息生成MAP图;
按照预设周期将所述MAP图以否定确认包的形式反馈给所述发送端。
优选地,所述否定确认包的数据帧格式包括:
位于数据帧头部的帧头,位于数据帧尾部的MAP图,位于所述帧头和所述MAP图之间、且与所述帧头相邻的客户端唯一编号,以及位于所述帧头和所述MAP图之间、且与所述MAP图相邻的成功接收序列号。
优选地,所述最大传输单元为最大UDP数据包,所述数据包的数据帧格式包括:
位于数据帧头部的帧头、位于所述数据帧尾部的数据部分和位于所述帧头和所述数据部分之间的序列号部分和数据长度部分,所述序列号部分与所述帧头相邻,所述数据长度部分与所述数据部分相邻;
所述序列号部分包括:与所述帧头相邻的绝对序列号、与所述数据长度部分相邻的总子序列号,以及位于所述绝对序列号和所述总子序列号之间的子序列号。
优选地,所述发送端为一个,且所述接收端为多个,则所述方法还包括:
分别获取每个所述接收端的成功接收序列号和MAP图;
根据所述成功接收序列号,从所述MAP图中查找每个所述接收端的丢失数据包序号;
所述发送端根据所述成功接收序列号、所述丢失数据包序号,向每个所述接收端重新发送丢失的数据包,直至所述接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
根据本发明的第二方面,提供一种发送端,包括:
切分模块,用于将待发送数据按照预设数据单元切分为多个数据包,所述预设数据单元小于最大传输单元;
编号模块,用于依次为所述数据包进行连续编号;
发送模块,用于依次将所述数据包向接收端发送,并根据所述接收端按照预设周期反馈的丢包信息将丢失的数据包重新向所述接收端发送,直至所述接收端成功接收到所有数据包,或者数据包发送时间达到预设时间。
根据本发明的第三方面,提供一种接收端,包括:
接收模块,用于接收发送端发送的数据包;
判断模块,用于根据所述接收模块接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块,用于按照预设周期向所述发送端反馈丢包信息。
根据本发明的第四方面,提供了一种数据传输系统,包括:
发送端和接收端;
所述发送端包括:
切分模块,用于将待发送数据按照预设数据单元切分为多个数据包,所述预设数据单元小于最大传输单元;
编号模块,用于依次为所述数据包进行连续编号;
发送模块,用于依次将所述数据包向接收模块发送,并根据反馈模块按照预设周期反馈的丢包信息将丢失的数据包重新向所述接收模块发送,直至所述接收模块成功接收到所有数据包,或者数据包发送时间达到预设时间;
所述接收端包括:
接收模块,用于接收所述发送模块发送的数据包;判断模块,用于根据所述接收模块接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块,用于按照预设周期向所述发送模块反馈丢包信息。
优选地,所述反馈模块包括:
生成单元,用于根据当前数据包的序号和丢失的数据包信息生成MAP图;
反馈单元,用于按照预设周期将所述MAP图以否定确认包的形式反馈给所述发送模块。
优选地,所述发送端为一个,且所述接收端为多个,则所述发送端还包括:
获取模块,用于分别获取每个所述接收端的成功接收序列号;
查找模块,用于根据所述成功接收序列号,从所述MAP图中查找每个所述接收端的丢失数据包序号;
所述发送模块,还用于根据所述成功接收序列号、所述丢失数据包序号,向每个所述接收模块重新发送丢失的数据包,直至所述接收模块成功接收到所有数据包或者数据包发送时间达到预设时间。
本发明的发明人发现,在现有技术中,数据传输方式难以同时兼顾传输速度和可靠性。因此,本发明所要实现的技术任务或者所要解决的技术问题是本领域技术人员从未想到的或者没有预期到的,故本发明是一种新的技术方案。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是本发明实施例提供的一种数据传输方法的流程图。
图2是本发明实施例提供的一种丢包信息的反馈流程图。
图3是本发明实施例提供的另外一种数据传输方法的流程图。
图4是本发明实施例提供的发送端和接收端之间的数据传输示意图。
图5是本发明实施例提供的一种否定确认包的数据帧格式示意图。
图6是本发明实施例提供的一种数据包的数据帧格式示意图。
图7是本发明实施例提供的一种发送端的结构示意图。
图8是本发明实施例提供的一种接收端的结构示意图;
图9是本发明实施例提供的一种数据传输系统的结构示意图;
图10是本发明实施例提供的一种反馈模块的结构示意图。
图11是本发明实施例提供的另外一种数据传输系统的发送端的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明实施例提供一种数据传输方法,如图1和图4所示,包括以下步骤:
步骤101:将待发送数据按照预设数据单元切分为多个数据包,并依次为数据包进行连续编号,其中,预设数据单元小于最大传输单元。
其中,最大传输单元可以为最大UDP数据包。如图6所示,为本发明实施例提供的一种数据包的数据帧格式的示意图。
具体而言,数据包的数据帧格式包括:位于数据帧头部的帧头(HEADER)、位于数据帧尾部的数据(DATA)部分和位于帧头(HEADER)和数据(DATA)部分之间的序列号部分和数据长度部分,序列号(SEQ_NUM)部分与帧头(HEADER)相邻,数据长度(DATA_LENGTH)部分与数据(DATA)部分相邻;其中,序列号部分包括:与帧头相邻的序列号(SEQ_NUM)、与数据长度(DATA_LENGTH)部分相邻的总子序列号(SUB_TOTAL),以及位于序列号(SEQ_NUM)和总子序列号(SEQ_NUM)之间的子序列号(SUB_SEQ)。
在本发明实施例中,优选将最大数据包的大小设置为1472字节,其中,帧头预留8字节,序列号预留2字节、子序列号预留1字节、总子序列号预留1字节、数据长度预留2字节、数据部分最大不超过1458字节。以上只是一种选优实施例,在实际中可以根据需要对最大数据包的大小、以及各部分实际占用字节数进行调整。
以下以一个具体例子对一个待传输的数据包的数据帧格式进行具体说明:
以下对上述例子中涉及的几个关键词的含义解释如下:
(1)数据长度(DATA_LENGTH):每个数据包中的数据长度,单位为字节。
(2)数据(DATA):有效数据。
(3)帧头(HEADER):占用8个字节,定义为GOERRTP协议,以GOERRTP表示。
(4)绝对序列号(SEQ_NUM):每个数据帧的增量序列号,从1开始,编号必须连续。
(5)子序列号(SUB_SEQ):每次传输的数据的子序列号,应当与总子序列号(SUB_TOTAL)同时使用。例如,发送端发送了5个(总子序列号)数据帧,则每个子帧的子序列号(SUB_SEQ)为:1,2,3,4,5。这两个名词主要用于定义发送端发送数据将会占用多长时间,接收端能够根据其计算数据发送所需要的时间,并且可以利用该时间间隙发送否定确认包。
(6)总子序列号(SUB_TOTAL):参见上述(5)子序列号(SUB_SEQ)的描述。
步骤102:发送端依次将数据包向接收端发送。
步骤103:接收端接收发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向发送端反馈丢包信息。
其中,接收端接收发送端发送的数据包可以根据数据包传来的时间先后顺序接收,此时,则可能导致接收到的数据包与传送的数据包的先后顺序不同。例如,对于编号分别为1、2、3的数据包,发送端按照1、2、3的顺序依次进行数据包发送。由于在实际数据传输过程中,虽然先发送数据包2、后发送数据包3,根据网络状况的不同,可能导致数据包3比数据包2先到达接收端的情况发生,为了提高数据传输效率,可以根据数据包到达的先后顺序,先接收数据包3,再接收数据包2。
接收端根据接收到的数据包序号是否连续判断是否发生数据包丢失,具体而言,如果序号连续,则认为没有发生数据包丢失;如果序号不连续,则认为发生数据包丢失;无论是否发生数据包丢失,都可以按照预设周期向发送端反馈丢包信息,两者的区别在于所携带的丢包信息内容不同。在未发生丢包的情况下,丢失的数据包信息为无或空白;在发生数据包丢失的情况下,丢包信息中则会携带发生丢失的数据包的具体信息。
步骤104:发送端根据丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
发送端根据丢包信息将丢失的数据包重新向接收端发送,接收端在成功接收到数据包后,会向发送端反馈成功接收标志。在某些特殊情况下,例如,接收端发生故障或者网络中断,通过数据重发依然无法使接收端成功接收数据包,那么可以通过预设设置一个预设时间,在该预设时间内能够进行数次数据包重发,在经过几次数据包重发后,接收端依然无法成功接收数据包,则发送端会向接收端发送重置信号,放弃该丢失的数据包,进入后续新的数据接收阶段。
本发明实施例提供的数据传输方法,将待发送数据按照预设数据单元切分为多个数据包,并依次为数据包进行连续编号,由发送端依次将数据包向接收端发送,接收端接收发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向发送端反馈丢包信息,发送端根据丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。通过接收的数据包序号是否连续能够方便地判断是否发生丢包,并且在判断发生数据包丢失时,只需要重新发生丢失数据包,而不必将所有数据包都进行重复传输,从而能够有效保证数据传输的速度和可靠性。
如图2所示,按照预设周期向发送端反馈丢包信息包括:
步骤201:根据当前数据包的序号和丢失的数据包信息生成MAP图;
步骤202:按照预设周期将MAP图以否定确认包(NegativeAcknowledge,简称NACK)的形式反馈给发送端。
需要说明的是,如果步骤103中判断未发生数据包丢失,则所反馈的丢失的数据包信息中会显示未发生数据包丢失,从而使得步骤201中生成的MAP图为空白。
如图5所示,为本发明实施例提供的一种否定确认包的数据帧格式示意图,包括:
位于数据帧(DATAFRAME)头部的帧头(HEADER),位于数据帧尾部的MAP图(SEQ_MAP),位于帧头和MAP图之间、且与帧头相邻的客户端唯一编号(ID),以及位于帧头和MAP图之间、且与MAP图相邻的成功接收序列号(SS)。
其中,帧头(HEADER)可以占用8字节,定义为GOERNACK协议,用GOERNACK表示。
客户端唯一编号(ID):每个客户端的唯一识别号,可以随机生成。
成功接收序列号(SS):接收端已成功接收到数据包的最大包序号,表示在该序列号之前的数据包已经成功接收到。
下面是一个否定确认包(NACK)的实际例子:
HEADERIDSSSEQ_MAP
goernack349232010x0000…000E
在该NACK包中SS为201,代表接收端已经成功接收到了第201包的数据,且在第201包之前未发生数据包丢失,从SEQ_MAP的值为0x0000…000E(二进制为0000…0001110)可知,第203,204和205包已经接收到了,且第202包发生丢失。
步骤104:发送端根据丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包,或者数据包发送时间达到预设时间。
如图3所示,在发送端为一个,而接收端为多个的情况下,上述数据传输方法,还包括:
步骤301:分别获取每个接收端的成功接收序列号和MAP图。
在同一发送端向多个接收端发送数据的情况下,由于每个接收端与发送端之间的通信网络的状况不同,可能导致每个接收端在数据接收过程中的数据包丢失情况不同,从而导致每个接收端的成功接收序列号互不相同。
步骤302:根据成功接收序列号,从MAP图中查找每个接收端的丢失数据包序号;。
通过步骤301获得每个接收端的成功接收序列号后,可以从各个成功接收序列号中选择数值最小的那个成功接收序列号作为分界序号,对于每个接收端而言,可以确定分界序号之前的数据包都已全部成功接收到,在实际处理中,可以在缓存中将这些成功接收的数据包释放,以便对发送端的数据缓冲进行更新。
步骤303:发送端根据成功接收序列号、丢失数据包序号,向每个接收端重新发送丢失的数据包,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
本发明实施例提供的数据传输方法,将待发送数据按照预设数据单元切分为多个数据包,并依次为数据包进行连续编号,由发送端依次将数据包向接收端发送,接收端接收发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向发送端反馈丢包信息,发送端根据丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。通过接收的数据包序号是否连续能够方便地判断是否发生丢包,并且在判断发生数据包丢失时,只需要重新发生丢失数据包,而不必将所有数据包都进行重复传输,从而能够有效保证数据传输的速度和可靠性。
本发明实施例另外提供一种发送端401,如图7所示,包括:
切分模块4011,用于将待发送数据按照预设数据单元切分为多个数据包,其中,预设数据单元小于最大传输单元;
编号模块4012,用于依次为数据包进行连续编号;
发送模块4013,用于依次将数据包向接收端发送,并根据接收端按照预设周期反馈的丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
本发明实施例还提供一种接收端402,如图8所示,包括:
接收模块4021,用于接收发送端发送的数据包;
判断模块4022,用于根据接收模块接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块4023,用于按照预设周期向发送端反馈丢包信息。
本发明实施例还提供一种数据传输系统,如图9所示,包括:
发送端401和接收端402;
上述发送端401包括:
切分模块4011,用于将待发送数据按照预设数据单元切分为多个数据包,预设数据单元小于最大传输单元;
编号模块4012,用于依次为数据包进行连续编号;
发送模块4013,用于依次将数据包向接收模块4021发送,并根据反馈模块4023按照预设周期反馈的丢包信息将丢失的数据包重新向接收模块4021发送,直至接收模块4021成功接收到所有数据包;
上述接收端402包括:
接收模块4021,用于接收发送模块4013发送的数据包;
判断模块4022,用于根据接收模块4021接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块4023,用于按照预设周期向发送模块4013反馈丢包信息。
如图10所示,上述反馈模块4023包括:
生成单元501,用于根据当前数据包的序号和丢失的数据包信息生成MAP图;
反馈单元502,用于按照预设周期将所述MAP图以否定确认包的形式反馈给发送模块4013。
本发明实施例另外提供一种数据传输系统包括:一个发送端401和多个接收端402,如图11所示,为其中一个接收端402和发送端401的主要模块的结构示意图,其中,发送端401、接收端402还可以包括图9中的相关模块,在此未进行图示,本领域技术人员容易理解,其中的接收端402可以为两个或两个以上,图中的一个接收端402仅仅是实例性的,并不用于限制实际的接收端402的数量。
如图11所示,发送端401还可以包括:
获取模块4014,用于分别获取每个接收端402的成功接收序列号;
查找模块4015,用于根据成功接收序列号,从MAP图中查找每个接收端的丢失数据包序号;
发送模块4013,还用于根据成功接收序列号、丢失数据包序号,向每个接收模块4021重新发送丢失的数据包,直至接收模块4021成功接收到所有数据包或者数据包发送时间达到预设时间。
本发明实施例提供的数据传输系统,将待发送数据按照预设数据单元切分为多个数据包,并依次为数据包进行连续编号,由发送端依次将数据包向接收端发送,接收端接收发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向发送端反馈丢包信息,发送端根据丢包信息将丢失的数据包重新向接收端发送,直至接收端成功接收到所有数据包或者数据包发送时间达到预设时间。通过接收的数据包序号是否连续能够方便地判断是否发生丢包,并且在判断发生数据包丢失时,只需要重新发生丢失数据包,而不必将所有数据包都进行重复传输,从而能够有效保证数据传输的速度和可靠性。
虽然已经通过例子对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上例子仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由权利要求限定。
Claims (10)
1.一种数据传输方法,其特征在于,包括:
将待发送数据按照预设数据单元切分为多个数据包,并依次为所述数据包进行连续编号,所述预设数据单元小于最大传输单元;
发送端依次将所述数据包向接收端发送;
接收端接收所述发送端发送的数据包,并根据接收到的数据包序号是否连续判断是否发生数据包丢失,然后按照预设周期向所述发送端反馈丢包信息;
所述发送端根据所述丢包信息将丢失的数据包重新向所述接收端发送,直至所述接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
2.根据权利要求1所述的数据传输方法,其特征在于,所述按照预设周期向所述发送端反馈丢包信息包括:
根据当前数据包的序号和丢失的数据包信息生成MAP图;
按照预设周期将所述MAP图以否定确认包的形式反馈给所述发送端。
3.根据权利要求2所述的数据传输方法,其特征在于,所述否定确认包的数据帧格式包括:
位于数据帧头部的帧头,位于数据帧尾部的MAP图,位于所述帧头和所述MAP图之间、且与所述帧头相邻的客户端唯一编号,以及位于所述帧头和所述MAP图之间、且与所述MAP图相邻的成功接收序列号。
4.根据权利要求1所述的数据传输方法,其特征在于:
所述最大传输单元为最大UDP数据包,所述数据包的数据帧格式包括:
位于数据帧头部的帧头、位于所述数据帧尾部的数据部分和位于所述帧头和所述数据部分之间的序列号部分和数据长度部分,所述序列号部分与所述帧头相邻,所述数据长度部分与所述数据部分相邻;
所述序列号部分包括:与所述帧头相邻的绝对序列号、与所述数据长度部分相邻的总子序列号,以及位于所述绝对序列号和所述总子序列号之间的子序列号。
5.根据权利要求2至4任一项所述的数据传输方法,其特征在于,所述发送端为一个,且所述接收端为多个,则所述方法还包括:
分别获取每个所述接收端的成功接收序列号和MAP图;
根据所述成功接收序列号,从所述MAP图中查找每个所述接收端的丢失数据包序号;
所述发送端根据所述成功接收序列号、所述丢失数据包序号,向每个所述接收端重新发送丢失的数据包,直至所述接收端成功接收到所有数据包或者数据包发送时间达到预设时间。
6.一种发送端,其特征在于,包括:
切分模块,用于将待发送数据按照预设数据单元切分为多个数据包,所述预设数据单元小于最大传输单元;
编号模块,用于依次为所述数据包进行连续编号;
发送模块,用于依次将所述数据包向接收端发送,并根据所述接收端按照预设周期反馈的丢包信息将丢失的数据包重新向所述接收端发送,直至所述接收端成功接收到所有数据包,或者数据包发送时间达到预设时间。
7.一种接收端,其特征在于,包括:
接收模块,用于接收发送端发送的数据包;
判断模块,用于根据所述接收模块接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块,用于按照预设周期向所述发送端反馈丢包信息。
8.一种数据传输系统,其特征在于,包括:发送端和接收端;
所述发送端包括:
切分模块,用于将待发送数据按照预设数据单元切分为多个数据包,所述预设数据单元小于最大传输单元;
编号模块,用于依次为所述数据包进行连续编号;
发送模块,用于依次将所述数据包向接收模块发送,并根据反馈模块按照预设周期反馈的丢包信息将丢失的数据包重新向所述接收模块发送,直至所述接收模块成功接收到所有数据包或者数据包发送时间达到预设时间;
所述接收端包括:
接收模块,用于接收所述发送模块发送的数据包;
判断模块,用于根据所述接收模块接收到的数据包序号是否连续判断是否发生数据包丢失;
反馈模块,用于按照预设周期向所述发送模块反馈丢包信息。
9.根据权利要求8所述的数据传输系统,其特征在于,所述反馈模块包括:
生成单元,用于根据当前数据包的序号和丢失的数据包信息生成MAP图;
反馈单元,用于按照预设周期将所述MAP图以否定确认包的形式反馈给所述发送模块。
10.根据权利要求9所述的数据传输系统,其特征在于,所述发送端为一个,且所述接收端为多个,则所述发送端还包括:
获取模块,用于分别获取每个所述接收端的成功接收序列号和MAP图;
查找模块,用于根据所述成功接收序列号,从所述MAP图中查找每个所述接收端的丢失数据包序号;
所述发送模块,还用于根据所述成功接收序列号、所述丢失数据包序号,向每个所述接收模块重新发送丢失的数据包,直至所述接收模块成功接收到所有数据包或者数据包发送时间达到预设时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510685559.7A CN105245317A (zh) | 2015-10-20 | 2015-10-20 | 一种数据传输方法、发送端、接收端和数据传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510685559.7A CN105245317A (zh) | 2015-10-20 | 2015-10-20 | 一种数据传输方法、发送端、接收端和数据传输系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105245317A true CN105245317A (zh) | 2016-01-13 |
Family
ID=55042831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510685559.7A Pending CN105245317A (zh) | 2015-10-20 | 2015-10-20 | 一种数据传输方法、发送端、接收端和数据传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105245317A (zh) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743805A (zh) * | 2016-01-28 | 2016-07-06 | 昭文科技(北京)股份有限公司 | 一种数据传输方法及装置 |
CN105827367A (zh) * | 2016-05-06 | 2016-08-03 | 深圳市国华光电研究院 | 一种无线数据传输的方法及系统 |
CN105933319A (zh) * | 2016-05-30 | 2016-09-07 | 贵阳朗玛信息技术股份有限公司 | 视频数据包的发送、接收方法及装置 |
CN106130695A (zh) * | 2016-08-24 | 2016-11-16 | 桂林信通科技有限公司 | 一种数据传输方法和系统 |
CN106411560A (zh) * | 2016-06-01 | 2017-02-15 | 深圳市永兴元科技有限公司 | 数据传输方法和装置 |
CN106452692A (zh) * | 2016-11-30 | 2017-02-22 | 网宿科技股份有限公司 | 一种数据传输方法和系统 |
CN106453233A (zh) * | 2016-08-10 | 2017-02-22 | 深圳市中兴物联科技股份有限公司 | 一种基于udp的数据传输方法及装置 |
CN106559739A (zh) * | 2016-09-28 | 2017-04-05 | 深圳成谷科技有限公司 | 适于蓝牙低功耗无线通信系统的轻量级数据传输方法 |
CN107204936A (zh) * | 2017-06-21 | 2017-09-26 | 北京畅游天下网络技术有限公司 | 一种数据的传输方法、装置及设备 |
CN107257270A (zh) * | 2017-05-31 | 2017-10-17 | 张超 | 基于混合自动重传请求的数据传输方法及系统 |
CN107666625A (zh) * | 2017-08-08 | 2018-02-06 | 武汉斗鱼网络科技有限公司 | 一种消息处理方法、装置及电子设备 |
CN107995313A (zh) * | 2017-12-21 | 2018-05-04 | 黑龙江惠达科技发展有限公司 | 一种基于低网络带宽的图片和北斗定位点数据的上传方法 |
CN108022383A (zh) * | 2017-12-28 | 2018-05-11 | 深圳怡化电脑股份有限公司 | 一种控制传感器数据的方法、装置、设备及存储介质 |
CN109286477A (zh) * | 2018-10-30 | 2019-01-29 | 佛山市瑞德物联科技有限公司 | 一种支持乱序传输的数据传输方法 |
CN109905205A (zh) * | 2019-04-03 | 2019-06-18 | 苏州金螳螂文化发展股份有限公司 | 数据发送、接收的方法及设备、数据传输方法及系统 |
CN110311721A (zh) * | 2019-06-19 | 2019-10-08 | 海丰通航科技有限公司 | 数据传输方法、发送端、接收端及数据传输系统 |
CN110475287A (zh) * | 2018-05-10 | 2019-11-19 | 华为技术有限公司 | 数据处理的方法及设备 |
CN110677200A (zh) * | 2019-09-17 | 2020-01-10 | 深圳市智慧海洋科技有限公司 | 数据传输方法和装置 |
CN110943933A (zh) * | 2018-09-25 | 2020-03-31 | 华为技术有限公司 | 一种实现数据传输的方法、装置和系统 |
CN111263239A (zh) * | 2018-12-03 | 2020-06-09 | 北京新唐思创教育科技有限公司 | 视频帧丢包的处理方法及相关装置 |
CN112583529A (zh) * | 2020-12-18 | 2021-03-30 | 脸萌有限公司 | 一种数据处理方法、装置、设备及存储介质 |
US10993166B2 (en) | 2018-08-23 | 2021-04-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Data transmission method, electronic device, and computer readable storage medium |
CN112738229A (zh) * | 2020-12-29 | 2021-04-30 | 北京航天自动控制研究所 | 一种实现数据自动续传的通信方法 |
CN112838910A (zh) * | 2021-03-23 | 2021-05-25 | 中国科学技术大学 | 一种基于混合反馈的数据传输方法及装置 |
CN113300819A (zh) * | 2021-04-13 | 2021-08-24 | 中国科学技术大学 | 一种鲁棒的逐跳可靠数据传输方法、装置及系统 |
CN114257349A (zh) * | 2021-12-16 | 2022-03-29 | 北京数码视讯技术有限公司 | 数据处理系统和方法 |
CN114374474A (zh) * | 2021-12-29 | 2022-04-19 | 苏州摩比信通智能系统有限公司 | 一种数据传输系统及方法 |
CN114710446A (zh) * | 2022-03-23 | 2022-07-05 | 维沃移动通信有限公司 | 数据传输方法、装置、电子设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047484A (zh) * | 2006-06-21 | 2007-10-03 | 华为技术有限公司 | 一种传输层重传方法和系统 |
CN101202604A (zh) * | 2007-08-14 | 2008-06-18 | 深圳市同洲电子股份有限公司 | 一种网络数据的发送与接收方法、系统及设备 |
CN101212283A (zh) * | 2006-12-25 | 2008-07-02 | 华为技术有限公司 | 通信系统中传输确认/非确认信息的方法 |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
CN103269260A (zh) * | 2013-06-03 | 2013-08-28 | 腾讯科技(深圳)有限公司 | 数据传输方法、数据接收端、数据发送端和数据传输系统 |
CN104104480A (zh) * | 2014-07-31 | 2014-10-15 | 北京蓝汛通信技术有限责任公司 | 用于tcp协议的重传包丢失检测方法和装置 |
CN104518853A (zh) * | 2013-09-27 | 2015-04-15 | 北京新媒传信科技有限公司 | 一种数据重传的方法、接收端及系统 |
-
2015
- 2015-10-20 CN CN201510685559.7A patent/CN105245317A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047484A (zh) * | 2006-06-21 | 2007-10-03 | 华为技术有限公司 | 一种传输层重传方法和系统 |
CN101212283A (zh) * | 2006-12-25 | 2008-07-02 | 华为技术有限公司 | 通信系统中传输确认/非确认信息的方法 |
CN101202604A (zh) * | 2007-08-14 | 2008-06-18 | 深圳市同洲电子股份有限公司 | 一种网络数据的发送与接收方法、系统及设备 |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
CN103269260A (zh) * | 2013-06-03 | 2013-08-28 | 腾讯科技(深圳)有限公司 | 数据传输方法、数据接收端、数据发送端和数据传输系统 |
CN104518853A (zh) * | 2013-09-27 | 2015-04-15 | 北京新媒传信科技有限公司 | 一种数据重传的方法、接收端及系统 |
CN104104480A (zh) * | 2014-07-31 | 2014-10-15 | 北京蓝汛通信技术有限责任公司 | 用于tcp协议的重传包丢失检测方法和装置 |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743805A (zh) * | 2016-01-28 | 2016-07-06 | 昭文科技(北京)股份有限公司 | 一种数据传输方法及装置 |
CN105827367A (zh) * | 2016-05-06 | 2016-08-03 | 深圳市国华光电研究院 | 一种无线数据传输的方法及系统 |
CN105933319A (zh) * | 2016-05-30 | 2016-09-07 | 贵阳朗玛信息技术股份有限公司 | 视频数据包的发送、接收方法及装置 |
CN106411560A (zh) * | 2016-06-01 | 2017-02-15 | 深圳市永兴元科技有限公司 | 数据传输方法和装置 |
CN106453233A (zh) * | 2016-08-10 | 2017-02-22 | 深圳市中兴物联科技股份有限公司 | 一种基于udp的数据传输方法及装置 |
CN106130695A (zh) * | 2016-08-24 | 2016-11-16 | 桂林信通科技有限公司 | 一种数据传输方法和系统 |
CN106559739A (zh) * | 2016-09-28 | 2017-04-05 | 深圳成谷科技有限公司 | 适于蓝牙低功耗无线通信系统的轻量级数据传输方法 |
CN106559739B (zh) * | 2016-09-28 | 2020-03-20 | 深圳成谷科技有限公司 | 适于蓝牙低功耗无线通信系统的轻量级数据传输方法 |
CN106452692A (zh) * | 2016-11-30 | 2017-02-22 | 网宿科技股份有限公司 | 一种数据传输方法和系统 |
CN107257270A (zh) * | 2017-05-31 | 2017-10-17 | 张超 | 基于混合自动重传请求的数据传输方法及系统 |
CN107204936A (zh) * | 2017-06-21 | 2017-09-26 | 北京畅游天下网络技术有限公司 | 一种数据的传输方法、装置及设备 |
CN107666625A (zh) * | 2017-08-08 | 2018-02-06 | 武汉斗鱼网络科技有限公司 | 一种消息处理方法、装置及电子设备 |
CN107666625B (zh) * | 2017-08-08 | 2019-12-03 | 武汉斗鱼网络科技有限公司 | 一种消息处理方法、装置及电子设备 |
CN107995313A (zh) * | 2017-12-21 | 2018-05-04 | 黑龙江惠达科技发展有限公司 | 一种基于低网络带宽的图片和北斗定位点数据的上传方法 |
CN108022383A (zh) * | 2017-12-28 | 2018-05-11 | 深圳怡化电脑股份有限公司 | 一种控制传感器数据的方法、装置、设备及存储介质 |
CN110475287A (zh) * | 2018-05-10 | 2019-11-19 | 华为技术有限公司 | 数据处理的方法及设备 |
US11665587B2 (en) | 2018-05-10 | 2023-05-30 | Huawei Technologies Co., Ltd. | Data processing method and device to resolve packet loss in multi-hop link system |
US10993166B2 (en) | 2018-08-23 | 2021-04-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Data transmission method, electronic device, and computer readable storage medium |
US11696207B2 (en) | 2018-08-23 | 2023-07-04 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Data transmission method, electronic device, and computer readable storage medium |
CN110943933A (zh) * | 2018-09-25 | 2020-03-31 | 华为技术有限公司 | 一种实现数据传输的方法、装置和系统 |
CN110943933B (zh) * | 2018-09-25 | 2023-09-01 | 华为技术有限公司 | 一种实现数据传输的方法、装置和系统 |
CN109286477A (zh) * | 2018-10-30 | 2019-01-29 | 佛山市瑞德物联科技有限公司 | 一种支持乱序传输的数据传输方法 |
CN111263239A (zh) * | 2018-12-03 | 2020-06-09 | 北京新唐思创教育科技有限公司 | 视频帧丢包的处理方法及相关装置 |
CN109905205A (zh) * | 2019-04-03 | 2019-06-18 | 苏州金螳螂文化发展股份有限公司 | 数据发送、接收的方法及设备、数据传输方法及系统 |
CN109905205B (zh) * | 2019-04-03 | 2022-06-24 | 苏州金螳螂文化发展股份有限公司 | 数据发送、接收的方法及设备、数据传输方法及系统 |
CN110311721A (zh) * | 2019-06-19 | 2019-10-08 | 海丰通航科技有限公司 | 数据传输方法、发送端、接收端及数据传输系统 |
CN110677200A (zh) * | 2019-09-17 | 2020-01-10 | 深圳市智慧海洋科技有限公司 | 数据传输方法和装置 |
CN112583529A (zh) * | 2020-12-18 | 2021-03-30 | 脸萌有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN112583529B (zh) * | 2020-12-18 | 2023-10-31 | 脸萌有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN112738229B (zh) * | 2020-12-29 | 2022-08-12 | 北京航天自动控制研究所 | 一种实现数据自动续传的通信方法 |
CN112738229A (zh) * | 2020-12-29 | 2021-04-30 | 北京航天自动控制研究所 | 一种实现数据自动续传的通信方法 |
CN112838910A (zh) * | 2021-03-23 | 2021-05-25 | 中国科学技术大学 | 一种基于混合反馈的数据传输方法及装置 |
CN113300819A (zh) * | 2021-04-13 | 2021-08-24 | 中国科学技术大学 | 一种鲁棒的逐跳可靠数据传输方法、装置及系统 |
CN113300819B (zh) * | 2021-04-13 | 2022-09-06 | 中国科学技术大学 | 一种鲁棒的逐跳可靠数据传输方法、装置及系统 |
CN114257349A (zh) * | 2021-12-16 | 2022-03-29 | 北京数码视讯技术有限公司 | 数据处理系统和方法 |
CN114374474A (zh) * | 2021-12-29 | 2022-04-19 | 苏州摩比信通智能系统有限公司 | 一种数据传输系统及方法 |
CN114710446A (zh) * | 2022-03-23 | 2022-07-05 | 维沃移动通信有限公司 | 数据传输方法、装置、电子设备和存储介质 |
CN114710446B (zh) * | 2022-03-23 | 2024-04-26 | 维沃移动通信有限公司 | 数据传输方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105245317A (zh) | 一种数据传输方法、发送端、接收端和数据传输系统 | |
EP3364585B1 (en) | Method and arrangement in a mobile telecommunications network for harq with tti bundling and with incremental redundancy | |
EP2119171B1 (en) | Improved data transfer method, system and protocol | |
US7948991B1 (en) | Broadcast and multicast transmissions with acknowledgement scheduling | |
CN101917672B (zh) | 无线广播多播业务的协同传输方法 | |
US20200260322A1 (en) | Bluetooth low energy connected isochronous stream acknowledgement and flush algorithm and implementation | |
WO2016029747A1 (zh) | 一种数据传输方法、相关装置及系统 | |
CN103518345A (zh) | 支持harq的无线通信方法、用户设备和基站 | |
CN101018133A (zh) | 一种多媒体广播组播业务帧序列的生成方法 | |
CN102638331A (zh) | 基于随机线性网络编码的无线可靠广播方法 | |
WO2012068953A1 (zh) | 中继链路子帧配置切换时确认信息的反馈方法及装置 | |
CN103733556A (zh) | 利用突发状态下的数据包的arq和选择性重传流式无线电通信 | |
CN101039325B (zh) | 基于混合器的实时传输协议数据包配置方法 | |
CN103944880B (zh) | 一种ZigBee数据传输的方法 | |
WO2010043135A1 (zh) | 一种传输同步混合自动重传请求反馈数据的方法 | |
CN108347788B (zh) | 基于Slotted-FAMA协议利用传播时延的数据并发传输方法 | |
CN103607255A (zh) | 无线信道视频通信丢包率控制方法 | |
EP2015472B1 (en) | Methods of data transmission by relay nodes in a synchronous communications network, corresponding reception method, computer program product, storage means and nodes. | |
CN107733589B (zh) | 自组网自动重传请求的实现方法、装置、设备以及存储介质 | |
WO2019140974A1 (zh) | 数据传输控制方法、装置、数据传输设备及存储介质 | |
WO2020261988A1 (ja) | 無線通信装置および方法、並びに無線通信端末および方法 | |
CN101989896A (zh) | 一种arq连接的反馈方法及装置 | |
CN105242908A (zh) | 一种基于串口硬流控的甚高频电台大文件传输方法 | |
CN101193258B (zh) | 有线电视传输网络中时间分片和冲突退避的方法 | |
EP2178236A1 (en) | Method and apparatus of communication using adjustable group acknowledgement protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160113 |
|
RJ01 | Rejection of invention patent application after publication |