CN109951255A - 一种基于tcp的数据传输方法、***、源设备、及目标设备 - Google Patents

一种基于tcp的数据传输方法、***、源设备、及目标设备 Download PDF

Info

Publication number
CN109951255A
CN109951255A CN201910237824.3A CN201910237824A CN109951255A CN 109951255 A CN109951255 A CN 109951255A CN 201910237824 A CN201910237824 A CN 201910237824A CN 109951255 A CN109951255 A CN 109951255A
Authority
CN
China
Prior art keywords
data packet
coded data
source
source device
target device
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
CN201910237824.3A
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.)
Shenzhen Onething Technology Co Ltd
Original Assignee
Shenzhen Onething 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 Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201910237824.3A priority Critical patent/CN109951255A/zh
Publication of CN109951255A publication Critical patent/CN109951255A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

本发明公开了一种基于TCP的数据传输方法,其应用于源设备以将数据传输给目标设备,该方法包括:将待传输数据分割成预设顺序的多个源数据包;将每个所述源数据包进行冗余编码形成多个编码数据包;按照预设顺序发送编码数据包给目标设备;若当前发送的编码数据包发送后在预设时间内未接收到目标设备的确认信息时,判断出当前发送的编码数据包已丢失;当已丢失的编码数据包不是最后一个编码数据包时,发送下一个编码数据包给目标设备。本发明还提供了一种基于TCP的数据传输***、源设备、目标设备。本发明在传输过程中出现丢包时,源设备无需重传丢包数据而是发送下一个数据包,可以避免重传丢失的数据包所产生的延时而导致后续数据包失效的情况。

Description

一种基于TCP的数据传输方法、***、源设备、及目标设备
技术领域
本发明涉及数据传输技术领域,尤其涉及一种基于TCP的数据传输方法、***、源设备、及目标设备。
背景技术
随着网络技术的高速发展,在计算机网络领域开发的网络应用软件也越来越多,在针对TCP/IP体系为核心的开发也逐渐成为热点,因此,在计算机网络中传输的数据日趋呈现出多样性和复杂性,同时在网络中传输的数据中的某些问题也是日益的突出,例如传输速度。
TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到目标设备的包是按序接收的。然后目标设备对已成功收到的包发回一个相应的确认(ACK);如果源设备在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。
然而,有些网络中传输的数据对时间要求较高,例如,执行实时语音和视频数据业务,目标设备接收到重传的数据时,后续的数据有可能已经失效了。
发明内容
本发明的主要目的在于提供快速实现数据传输避免重传导致后续数据包失效的一种基于TCP的数据传输方法、***、源设备、及目标设备。
为实现上述目的,本发明提供一种基于TCP的数据传输方法,其应用于源设备以将数据传输给目标设备,所述方法包括:
将待传输数据分割成预设顺序的多个源数据包;
将每个所述源数据包进行冗余编码形成多个编码数据包;
按照所述预设顺序发送所述编码数据包给所述目标设备;
若当前发送的编码数据包发送后在预设时间内未接收到所述目标设备的确认信息时,判断出当前发送的编码数据包已丢失;
当所述已丢失的编码数据包不是最后一个编码数据包时,发送下一个编码数据包给所述目标设备。
优选地,各所述源数据包大小相同。
优选地,各所述编码数据包的大小相同。
优选地,每一所述编码数据包的大小大于每一所述源数据包的大小的两倍。
优选地,所述源设备为客户端,所述目标设备为服务器,所述待传输数据为多媒体数据。
为实现上述目的,本发明还提供一种源设备,所述源设备包括第一处理器和第一计算机可读存储介质,所述第一计算机可读存储介质用于存储第一计算机程序,所述第一处理器用于执行所述第一计算机程序上述基于TCP的数据传输方法。
为实现上述目的,本发明还提供一种基于TCP的数据传输方法,其应用于目标设备中,用于接收源设备传输的数据,其特征在于,所述目标设备接收所述源设备传输的数据为编码数据包,所述编码数据包为所述源设备对需发送给所述目标设备的源数据包进行冗余编码所形成,所述数据传输方法包括:
按照预设顺序接收所述源设备发送的所述编码数据包;
当在预设的时间内未接收到所述源设备当前发送的编码数据包时,判断出所述源设备当前发送的编码数据包已丢失;
当所述已丢失的编码数据包不是最后一个编码数据包时,进入接收下一个编码数据包的接收状态;
获取所述源设备发送的下一个数据包;
若接收到的编码数据包为最后一个编码数据包时,将接收到的所有编码数据包进行解码;
将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
优选地,所述各所述源数据包大小相同。
优选地,所述各编码数据包的大小相同。
优选地,每一所述编码数据包的大小大于每一所述源数据包的大小的两倍。
优选地,所述方法还包括:
当所述已丢失的编码数据包是最后一个编码数据包时,将接收到的所有编码数据包进行解码;
将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
优选地,所述源设备为客户端,所述目标设备为服务器。
为实现上述目的,本发明还提供一种目标设备,所述目标设备包括第二处理器和第二计算机可读存储介质,所述第二计算机可读存储介质用于存储第二计算机程序,所述第二处理器用于执行所述第二计算机程序实现上述基于TCP的数据传输方法。
为实现上述目的,本发明还提供一种数据传输***,所述数据传输***包括上述源设备和上述目标设备。
本发明通过在传输过程中出现丢包时,源设备可以继续发送下一个数据包,目标设备可以接收下一个数据包,无需重传丢包数据,可以避免重传丢失的数据包所产生的延时而导致后续数据包失效的情况。
附图说明
图1为本发明第一实施例提供的一种基于TCP的数据传输***示意图;
图2为本发明提供第一实施例一种基于TCP的数据传输方法的流程示意图;
图3为本发明第二实施例提供的一种基于TCP的数据传输方法的流程示意图;
图4为本发明第三实施例提供的一种基于TCP的数据传输方法的流程示意图;
图5为本发明第一实施例揭露的源设备的内部结构示意图;
图6为本发明第一实施例揭露的目标设备的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参照图1,图1为本发明实施例提供的一种基于TCP的数据传输***99的示意图。数据传输***99用于运行基于TCP的数据传输方法。数据传输***99 包括源设备100和目标设备200。在本实施例中,源设备100为客户端。目标设备200为服务器。源设备100向目标设备200传输的数据可以为但不限于实时音视频数据。
图2为运行于源设备100中的基于TCP的数据传输方法的流程示意图。该数据传输方法由源设备100执行以实现将数据传输给目标设备200。其中,源设备100传输数据给目标设备20之前,源设备100与目标设备200已完成三次握手建立了连接。即,该数据传输方法是基于源设备100和目标设备200 已建立好连接的基础上执行的。源设备100与目标设备200如何完成三次握手可以根据现有TCP传输协议进行,在此不再赘述。该数据传输方法包括下面步骤。
步骤S201,将待传输数据分割成预设顺序的多个源数据包。具体地,源设备100将需要发送给目标设备200的待传输数据按照设定的大小分割成多个源数据包并且给每个源数据包一个序号,该序号用户表示各数据包的发送顺序。在本实施例中,各源数据包的大小相同,即,各源数据包的大小固定。例如,每个源数据包的大小固定为2bit。
步骤S203,将每个源数据包进行冗余编码形成多个编码数据包。具体地,源设备100将每个源数据包进行冗余编码。其中,源设备100使用比源数据包的信息量多的信息码对源数据包进行编码,形成编码数据包。可以理解地,编码数据包的大小比源数据包的两倍的大小还要大。例如,源数据包的大小为2bit,则编码数据包大于4bit,例如,5bit或者更大。在本实施例中,源设备100对源数据包进行冗余编码时采用的信息码数量相同,即,各编码数据包的大小相同。编码数据包也有一个序号,其与对应的源数据包数据的序号相同。
步骤S205,按照该预设顺序发送编码数据包给目标设备。具体地,源设备100按照每个源数据包的序号发送编码数据包给目标设备200,从而确保了编码数据包与源数据包的序号一致。
步骤S207,若当前发送的编码数据包发送后在预设时间内未接收到目标设备的确认信息时,判断出当前发送的编码数据包已丢失。具体地,源设备 100每发送一个编码数据包,就会启动定时器以等待目标设备200接收当前发送的编码数据包。当目标设备200接收到该编码数据包时,向源设备100发送表示已接收到当前发送的数据包的确认信息。当源设备100在预设的时间内未接收到该确认信息,则判断出当前发送的编码数据包已丢失。
步骤S209,当已丢失的编码数据包不是最后一个编码数据包时,发送下一个编码数据包给目标设备。具体地,若已丢失的编码数据包不是最后一个编码数据包时,源设备100发送下一个数据包给目标设备200。若已丢失的编码数据包为最后一个数据包,则停止发送。例如,当编码数据包一共由N个,当发送到第三个编码数据包出现了丢包,则源设备100继续发送第四个编码数据包,依此类推,直至将所有编码数据包发送完毕。
上述实施例中,若当前发送的编码数据包丢失,源设备100直接发送下一个编码数据包给目标设备200,无需重传,从而可以避免重传而导致后续传输给目标设备200的数据失效,且可以提升传输速度。上述实施例中,由于编码数据包采用的是冗余编码,一个编码数据包丢失仅丢失小部分源数据,解码时仍然可以还原为原始数据。
请参看图3,其为本发明一实施例提供的运行于目标设备200中的一种基于TCP的数据传输方法的流程图。该数据传输方法包括下面步骤。
步骤S301,按照预设顺序接收源设备发送的编码数据包。具体地,该编码数据包中包括源设备100需向目标设备200发送的源数据包。该编码数据包为源设备100对源数据包进行冗余编码形成的。源数据包为源设备100对需传输给目标设备200的待传输数据进行分割而成。
步骤S303,当在预设的时间内未接收到源设备当前发送的编码数据包时,判断出源设备当前发送的编码数据包已丢失。具体地,源设备当前发送的编码数据包即为目标设备200当前需要接收的编码数据包,若目标设备200在预设时间内未接收到,则判断出源设备100当前发送的编码数据包已丢失。
步骤S305,当已丢失的编码数据包不是最后一个编码数据包时,进入接收下一个编码数据包的接收状态。具体地,已丢失的编码数据包不是最后一个数据包时,目标设备200直接进入接收下一个编码数据包的状态,可以使得源设备100发送给目标设备200的数据包可以被目标设备200接收。
步骤S307,获取源设备发送的下一个数据包。
步骤S309,若接收到的编码数据包为最后一个编码数据包时,将接收到的所有编码数据包进行解码。具体地,目标设备200对接收到所有编码数据包进行解码时,可以将编码数据包还原为源数据包。由于,编码数据包采用的是冗余编码,即便其中一个数据或少量数据包丢失,将接收到的编码数据包进行解码仍可以将丢失的编码数据包包含的源数据包解码出来。
步骤S311,将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
步骤S313,当已丢失的编码数据包是最后一个编码数据包时,将接收到的所有编码数据包进行解码,并执行步骤S311。
请参看图4,其为本发明提供的数据传输方法执行时源设备100和目标设备200双方之间进行数据传输的具体实施例。该数据传输方法包括下面步骤。
步骤S401,源设备100将待传输数据分割成预设顺序的多个源数据包。在本实施例中以6个源数据包D1~D6为例进行描述。
步骤S403,将每个源数据包进行冗余编码形成多个编码数据包。其中,源数据包D1~D6对应的编码数据包为N1~N6
S405,源设备100按照预设顺序发送编码数据包N1给目标设备200。
S406,当接收到编码数据包N1,目标设备200发送确认信息R1给源设备 100。
S407,当接收到确认信息R1,源设备100发送编码数据包N2给目标设备 200。
S408,当在预设时间内未接收到编码数据包N2,目标设备200判断出编码数据包N2已丢失,并进入接收编码数据包N3状态,而没有发送确认信息 R2给源设备。
S409,当在预设时间内未接收到确认信息R2,源设备100判断出编码数据包N2已丢失,直接发送编码数据包N3
可以理解地,源设备100按照以上方法继续发送编码数据包N4~N6,目标设备200按照以上方法继续接收编码数据包N3~N6,在此不再赘述。本实施例中,N3~N6全部由目标设备200接收成功。
S410,当目标设备300接收到最后一个数据包R6时,目标设备200对接收到的编码数据包N1,N3~N6进行解码,可以得到源编码数据包D1~D6
S412,将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
上述实施例中,编码数据包N2丢失,源设备100无需重传编码数据包 N2,而继续发送编码数据包N3。目标设备200可以直接接收编码数据包N3,无需等待接收编码数据包N2。因此,可以避免N3~N6受编码数据包N2丢失影响而失效问题。另外,由于源数据包进行冗余编码,即便丢失了部分编码数据包也可以通过解码还原出丢失的源数据包。
请结合参看图1和图5,其中,图5为本发明第一实施例提供的一种源设备100的内部结构示意图。源设备100包括第一存储器11、第二处理器12、第一总线13。
其中,第一存储器11至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。第一存储器11在一些实施例中可以是源设备1 的内部存储单元,例如该源设备100的硬盘。第一存储器11在另一些实施例中也可以是源设备100的外部存储设备,例如源设备100上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD) 卡,闪存卡(Flash Card)等。进一步地,第一存储器11还可以既包括源设备 100的内部存储单元也包括外部存储设备。第一存储器11不仅可以用于存储安装于源设备100的应用软件及各类数据,例如第一计算机可执行程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
第一处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行第一存储器11中存储的程序代码或处理数据,例如执行程序01等。
第一总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
图5仅示出了具有组件11-13以及第一计算机可执行程序01的源设备100,本领域技术人员可以理解的是,图5示出的结构并不构成对源设备100的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
第一存储器11用于存储可执行程序。第一处理器12用于执行第一计算机可执行程序01以实现上述数据传输方法。
请结合参看图1和图6,图6为本发明第一实施例提供的一种目标设备 200的内部结构示意图。该目标设备200包括第二存储器21、第二处理器22、第二总线23。
其中,第二存储器21至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。第二存储器21在一些实施例中可以是第二存储器21的内部存储单元。第二存储器21用于存储第二计算机执行程序02的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
第二处理器22在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行第二存储器21中存储的程序代码或处理数据,例如执行第二计算机执行程序 02等。
第二总线23可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
图6仅示出了具有组件21-23以及第二计算机可执行程序02的目标设备 200,本领域技术人员可以理解的是,图6示出的结构并不构成对目标设备200 的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
第二存储器21用于存储可执行程序。该第二处理器22用于执行可执行程序02以实现上述数据传输方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本发明实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例提供的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (14)

1.一种基于TCP的数据传输方法,应用于源设备以将数据传输给目标设备,其特征在于,所述方法包括:
将待传输数据分割成预设顺序的多个源数据包;
将每个所述源数据包进行冗余编码形成多个编码数据包;
按照所述预设顺序发送所述编码数据包给所述目标设备;
若当前发送的编码数据包发送后在预设时间内未接收到所述目标设备的确认信息时,判断出当前发送的编码数据包已丢失;
当所述已丢失的编码数据包不是最后一个编码数据包时,发送下一个编码数据包给所述目标设备。
2.如权利要求1所述的数据传输方法,其特征在于,各所述源数据包大小相同。
3.如权利要求1所述的数据传输方法,其特征在于,各所述编码数据包的大小相同。
4.如权利要求1所述的数据传输方法,其特征在于,每一所述编码数据包的大小大于每一所述源数据包的大小的两倍。
5.如权利要求1所述的数据传输方法,其特征在于,所述源设备为客户端,所述目标设备为服务器,所述待传输数据为多媒体数据。
6.一种基于TCP的数据传输方法,应用于目标设备中,用于接收源设备传输的数据,其特征在于,所述目标设备接收所述源设备传输的数据为编码数据包,所述编码数据包为所述源设备对需发送给所述目标设备的源数据包进行冗余编码所形成,所述数据传输方法包括:
按照预设顺序接收所述源设备发送的所述编码数据包;
当在预设的时间内未接收到所述源设备当前发送的编码数据包时,判断出所述源设备当前发送的编码数据包已丢失;
当所述已丢失的编码数据包不是最后一个编码数据包时,进入接收下一个编码数据包的接收状态;
获取所述源设备发送的下一个数据包;
若接收到的编码数据包为最后一个编码数据包时,将接收到的所有编码数据包进行解码;
将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
7.如权利要求6所述的数据传输方法,其特征在于,各所述源数据包大小相同。
8.如权利要求6所述的数据传输方法,其特征在于,各所述编码数据包的大小相同。
9.如权利要求6所述的数据传输方法,其特征在于,每一所述编码数据包的大小大于每一所述源数据包的大小的两倍。
10.如权利要求6所述的数据传输方法,其特征在于,所述方法还包括:
当所述已丢失的编码数据包是最后一个编码数据包时,将接收到的所有编码数据包进行解码;
将解码后的数据包按照预设顺序进行组包在一起并发送给应用层。
11.如权利要求6所述的数据传输方法,其特征在于,所述源设备为客户端,所述目标设备为服务器。
12.一种源设备,所述源设备包括第一处理器和第一计算机可读存储介质,其特征在于,所述第一计算机可读存储介质用于存储第一计算机程序,所述第一处理器用于执行所述第一计算机程序实现权利要求1~5任意一项所述的基于TCP的数据传输方法。
13.一种目标设备,所述目标设备包括第二处理器和第二计算机可读存储介质,其特征在于,所述第二计算机可读存储介质用于存储第二计算机程序,所述第二处理器用于执行所述第二计算机程序实现权利要求6~11任意一项所述的基于TCP的数据传输方法。
14.一种数据传输***,所述数据传输***包括源设备和目标设备,其特征在于,所述源设备包括权利要求12所述的源设备,所述目标设备包括权利要求13所述的目标设备。
CN201910237824.3A 2019-03-27 2019-03-27 一种基于tcp的数据传输方法、***、源设备、及目标设备 Pending CN109951255A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910237824.3A CN109951255A (zh) 2019-03-27 2019-03-27 一种基于tcp的数据传输方法、***、源设备、及目标设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910237824.3A CN109951255A (zh) 2019-03-27 2019-03-27 一种基于tcp的数据传输方法、***、源设备、及目标设备

Publications (1)

Publication Number Publication Date
CN109951255A true CN109951255A (zh) 2019-06-28

Family

ID=67011971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910237824.3A Pending CN109951255A (zh) 2019-03-27 2019-03-27 一种基于tcp的数据传输方法、***、源设备、及目标设备

Country Status (1)

Country Link
CN (1) CN109951255A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113438274A (zh) * 2021-05-26 2021-09-24 曙光网络科技有限公司 数据传输方法、装置、计算机设备及可读存储介质
WO2022143902A1 (zh) * 2020-12-31 2022-07-07 华为技术有限公司 数据包传输方法及相关设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011124167A2 (zh) * 2011-05-11 2011-10-13 华为技术有限公司 编码方法及设备、解码方法及设备、编解码***
US20150236819A1 (en) * 2012-11-08 2015-08-20 Igor Zhovnirnovsky Method & apparatus for improving the performance of tcp and other network protocols in a communications network using proxy servers
CN107276722A (zh) * 2017-06-21 2017-10-20 北京奇艺世纪科技有限公司 一种基于udp的数据传输方法和***
CN107809302A (zh) * 2017-08-23 2018-03-16 银江股份有限公司 一种不可靠链路下的文件元数据冗余传输、接收方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011124167A2 (zh) * 2011-05-11 2011-10-13 华为技术有限公司 编码方法及设备、解码方法及设备、编解码***
US20150236819A1 (en) * 2012-11-08 2015-08-20 Igor Zhovnirnovsky Method & apparatus for improving the performance of tcp and other network protocols in a communications network using proxy servers
CN107276722A (zh) * 2017-06-21 2017-10-20 北京奇艺世纪科技有限公司 一种基于udp的数据传输方法和***
CN107809302A (zh) * 2017-08-23 2018-03-16 银江股份有限公司 一种不可靠链路下的文件元数据冗余传输、接收方法及***

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022143902A1 (zh) * 2020-12-31 2022-07-07 华为技术有限公司 数据包传输方法及相关设备
CN113438274A (zh) * 2021-05-26 2021-09-24 曙光网络科技有限公司 数据传输方法、装置、计算机设备及可读存储介质

Similar Documents

Publication Publication Date Title
US5948060A (en) Speeding-up communication rates on links transferring data structures by a method of handing scatter/gather of storage blocks in commanded computer systems
CN109981480A (zh) 一种数据传输方法及第一设备
CN104995874B (zh) 具有协议异常状态的数据传输协议
CN107819659B (zh) 一种基于spi的智能级联通信网络
CN104092763B (zh) 一种应用程序安装包推送方法及装置
CN110460412A (zh) 用于数据传输的方法和rdma网卡
JP7271709B2 (ja) データ送信方法及び関連装置
CN107528747B (zh) 主从站通信状态的诊断方法和装置及计算机可读存储介质
CN105007308B (zh) 一种数据库隔离装置环境下的文件传输方法
CN109951255A (zh) 一种基于tcp的数据传输方法、***、源设备、及目标设备
CN105519057A (zh) 一种多播发送装置、多播接收装置和多播传输确定方法
CN104125046A (zh) 一种数据传输方法、装置及***
CN104468509A (zh) 手机网络游戏数据传输的方法、***和手机用户端
CN113992654A (zh) 一种高速的文件传输方法、***、设备及介质
US20210392187A1 (en) Data transmission and network interface controller
US20170141882A1 (en) Data acknowledgment to multiple devices
CN106788916B (zh) 用于总线的数据传输方法及数据传输装置
KR20170117326A (ko) 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치
CN105191198A (zh) 数据传输及反馈的处理方法及装置
CN104412559A (zh) 无线usb协议
EP3000025B1 (en) Remote update of a portable storage device
KR20140125311A (ko) 멀티 코어를 가진 네트워크 인터페이스 카드를 이용한 트래픽 처리 장치 및 방법
WO2017063589A1 (zh) 数据传输的方法及装置
CN103051559B (zh) 数据流接收处理方法和装置
US9185727B2 (en) Access point for wireless LAN and medium access control method thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190628

RJ01 Rejection of invention patent application after publication