数据传输方法、装置、终端、服务器及系统的制作方法

文档序号:8000496阅读:223来源:国知局
数据传输方法、装置、终端、服务器及系统的制作方法
【专利摘要】本发明涉及一种数据传输方法、装置、终端、服务器及系统,其方法包括:当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包;对数据包复制至少一次,得到至少一复制数据包;将数据包以及至少一复制数据包通过预先建立的TCP链路发送至接收终端。本发明在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
【专利说明】数据传输方法、装置、终端、服务器及系统

【技术领域】
[0001]本发明涉及通讯【技术领域】,尤其涉及一种数据传输方法、装置、终端。、服务器及系统。

【背景技术】
[0002]在因特网协议族(Internetprotocol suite)四层协议中,TCP (Transmiss1nControl Protocol,传输控制协议)层是位于IP层之上,应用层之下的传输层。发送端应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP层把数据流分割成适当长度的报文段,之后发送端TCP层将此结果包传给IP层,由IP层通过网络将结果包传送给接收端的TCP层。
[0003]在TCP链路建立连接之后,通信双方都同时可以进行数据包的传输,但也常常产生丢包现象。为了保证链路传输的可靠性,通常采用超时重传和捎带确认机制。但是,现有的这种传输方式,由于延迟比较大,数据传输的速度低,造成数据响应时间长,在某些应用场景会影响业务性能,而且降低了链路传输质量。


【发明内容】

[0004]本发明实施例的主要目的在于提供一种数据传输方法、装置、终端、服务器及系统,旨在减少TCP重发概率,提高TCP链路传输可靠性。
[0005]为了达到上述目的,本发明实施例提出一种数据传输方法,包括:
[0006]当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包;
[0007]对所述数据包复制至少一次,得到至少一复制数据包;
[0008]将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
[0009]本发明实施例还提出一种数据传输装置,包括:
[0010]接收模块,用于当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包;
[0011]复制模块,用于对所述数据包复制至少一次,得到至少一复制数据包;
[0012]发送模块,用于将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
[0013]本发明实施例还提出一种数据包发送终端,包括如上所述的装置。
[0014]本发明实施例还提出一种系统,包括至少一个如上所述的发送终端以及至少一个接收终端,所述至少一个接收终端用于接收所述至少一个发送终端发送的数据包。
[0015]本发明实施例还提出一种服务器,包括如上所述的装置。
[0016]本发明实施例还提出一种系统,包括至少一个发送终端、至少一个接收终端以及至少一个如上所述的服务器,所述至少一个接收终端用于接收所述至少一个发送终端及所述至少一个服务器发送的数据包。
[0017]本发明实施例提出的一种数据传输方法、装置、终端、服务器及系统,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。

【专利附图】

【附图说明】
[0018]图1是本发明数据传输方法第一实施例的流程示意图;
[0019]图2是本发明数据传输方法第二实施例的流程示意图;
[0020]图3是本发明数据传输方法第三实施例的流程示意图;
[0021]图4是本发明数据传输方法第四实施例的流程示意图;
[0022]图4a是本发明数据传输系统的一种具体场景实例示意图;
[0023]图5是本发明数据传输装置第一实施例的结构示意图;
[0024]图6是本发明数据传输装置第二实施例的结构示意图;
[0025]图7是本发明数据传输装置第三实施例的结构示意图。
[0026]为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。

【具体实施方式】
[0027]本发明实施例解决方案主要是:在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0028]如图1所示,本发明第一实施例提出一种数据传输方法,包括:
[0029]步骤S101,当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包;
[0030]在TCP链路建立连接之后,通信双方可以进行数据包的相互传输。为了避免丢包造成的链路传输可靠性差,在TCP链路上通常采用超时重传等机制。本实施例考虑到,仅仅依赖TCP链路上的超时重传机制会造成传输数据的延迟大,数据传输的速度低,数据响应时间长,在某些应用场景会影响业务性能等问题,因此,在发送终端与接收终端的TCP链路上设置一数据传输装置,以减少TCP链路上的重传概率,提高TCP链路传输可靠性。
[0031]数据传输装置在发送终端向接收终端发送数据包时,在TCP链路上将此数据包接收在本地,以便对该数据包进行复制及转发操作。
[0032]步骤S102,对所述数据包复制至少一次,得到至少一复制数据包;
[0033]步骤S103,将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
[0034]数据传输装置在接收到发送终端发送的数据包后,会将该数据包转发至接收终端,同时,还会将该数据包至少复制一次,发送给接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到数据包,降低接收终端的丢包率,提高TCP链路的可靠性。
[0035]其中,对数据包的复制次数,可以根据需要设定,一种较佳实施方式是复制一次,并可以结合TCP链路的重传机制,进一步提高TCP链路的可靠性。
[0036]在具体实施过程中,作为一种实施方式,数据传输装置可以同时将原始数据包以及复制的一个或多个复制数据包通过发送终端与接收终端之间的TCP链路发送至接收终端;
[0037]作为另一种实施方式,数据传输装置还可以按照先后顺序将原始数据包以及复制的复制数据包发送至接收终端。
[0038]根据TCP协议,在接收终端侧,只要接收终端接收到一份来自发送终端的数据包,则不会再接收到其他相同的数据包,接收终端侧的TCP层会将其他数据包丢弃。
[0039]本实施例通过上述方案,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原始数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0040]如图2所示,本发明第二实施例提出一种数据传输方法,在上述第一实施例的基础上,在上述步骤S102:对数据包复制至少一次之前还包括:
[0041]步骤S104,对所述TCP链路状态进行检测;当所述TCP链路状态符合预定的重发策略时,进入步骤S102,否则,退出流程。
[0042]本实施例与上述第一实施例的区别在于,本实施例中,数据传输装置在复制数据包之前,需要检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作。
[0043]具体地,本实施例所指的TCP链路状态可以包括但不限于TCP链路上的历史丢包率以及TCP链路上的数据包延迟等。
[0044]此外,本实施例根据TCP链路状态预先设定有重发策略,当满足重发策略时,则启动发送复制数据包的重发机制,对数据包进行复制操作。
[0045]针对上述TCP链路状态,该设定的重发策略可以是:TCP链路上的历史丢包率达到预定阀值;或者,TCP链路上的数据包延迟达到预定阀值,上述预定阈值可以根据实际情况设定。
[0046]当检测到的TCP链路状态符合预定的重发策略时,执行对所述数据包的复制操作。
[0047]本实施例通过上述方案,通过检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0048]如图3所示,本发明第三实施例提出一种数据传输方法,在上述第一实施例的基础上,在上述步骤S102:将数据包以及至少一复制数据包通过预先建立的TCP链路发送至接收终端之前还包括:
[0049]步骤S104,对所述TCP链路状态进行检测;当所述TCP链路状态符合预定的重发策略时,进入步骤S103。
[0050]本实施例与上述第二实施例的区别在于,本实施例中,数据传输装置在复制数据包之后,以及发送数据包及复制的复制数据包之前,需要检测TCP链路状态,根据检测结果来判断是否进行数据包及复制数据包的发送操作。
[0051]同理,本实施例所指TCP链路状态可以包括但不限于TCP链路上的历史丢包率以及TCP链路上的数据包延迟等。
[0052]根据TCP链路状态预先设定有重发策略,当满足重发策略时,则启动发送复制数据包的重发机制,并执行数据包及复制数据包的发送操作。
[0053]针对上述TCP链路状态,该设定的重发策略可以是:TCP链路上的历史丢包率达到预定阀值;或者,TCP链路上的数据包延迟达到预定阀值,上述预定阈值可以根据实际情况设定。
[0054]当检测到的TCP链路状态符合预定的重发策略时,执行对数据包及复制数据包的发送操作。
[0055]本实施例通过上述方案,通过检测TCP链路状态,根据检测结果来判断是否进行对数据包及复制数据包的发送操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0056]如图4所示,本发明第四实施例提出一种数据传输方法,在上述第二或第三实施例的基础上(本实施例以图3所示的第三实施例举例),在上述步骤SlOl之前,还包括:
[0057]步骤S100,在所述发送终端与接收终端之间建立所述TCP链路。
[0058]相比上述各实施例,本实施例还包括在发送终端向接收终端发送数据包之前建立TCP链路的方案。
[0059]其中,两主机(发送终端和接收终端)之间TCP链路的建立可以采用现有的三次握手协议来实现。
[0060]具体地,TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:
[0061]其中涉及的位码即tcp标志位,有6种标示:SYN (synchronous建立联机);ACK(acknowledgement 确认);PSH (push 传送);FIN (finish 结束);RST (reset 重置);URG(urgent 紧急);Sequence number (顺序号码);Acknowledge number (确认号码)。
[0062]第一次握手:主机A发送位码为syn = I,随机产生seq number=1234567的数据包到服务器,主机B由SYN=I知道,主机A要求建立联机;
[0063]第二次握手:主机B收到请求后要确认联机信息,向主机A发送ack number=(主机 A 的 seq+1), syn=l, ack=l,随机产生 seq=7654321 的包;
[0064]第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seqnumber+1,以及位码ack是否为I,若正确,主机A会再发送ack number=(主机B的seq+1),ack=l,主机B收到后确认seq值与ack=l则连接建立成功。
[0065]完成三次握手,主机A与主机B开始传送数据。
[0066]此外,在建立发送终端与接收终端之间的TCP链路时,还可以获取TCP链路上的数据包延迟。
[0067]本实施例通过上述方案,在发送终端与接收终端之间建立TCP链路,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0068]此外,本发明较佳实施例提出一种系统,包括至少一个发送终端以及至少一个接收终端,所述发送终端包括一数据传输装置,所述至少一个接收终端用于接收所述至少一个发送终端发送的数据包。
[0069]具体地,如图4a所示,本实施例以系统包括一个发送终端及一个接收终端举例说明。
[0070]发送终端包括一数据传输装置,发送终端与接收终端之间建立有TCP链路。本实施例系统实现数据包在TCP链路上的传输原理如下:
[0071]当发送终端向接收终端发送数据包时,数据传输装置在TCP链路上将此数据包接收在本地,以便对该数据包进行复制及转发操作。
[0072]数据传输装置在接收到发送终端发送的数据包后,会将该数据包转发至接收终端,如图4a中A线路所示;同时,还会将该数据包复制一次,发送给接收终端,如图4a中B-C-D线路所不。
[0073]在B-C-D线路中,数据传输装置会对发送终端发送的数据包进行复制,得到复制数据包,同时还会检测TCP链路状态是否符合重发策略,以决定是否启动发送复制数据包的重发机制。
[0074]作为一种实施方式,数据传输装置在复制数据包之前,需要检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作。TCP链路状态可以包括但不限于TCP链路上的历史丢包率以及TCP链路上的数据包延迟等。此外,根据TCP链路状态预先设定有重发策略,当满足重发策略时,则启动发送复制数据包的重发机制,对数据包进行复制操作。针对上述TCP链路状态,该设定的重发策略可以是:TCP链路上的历史丢包率达到预定阀值;或者,TCP链路上的数据包延迟达到预定阀值,上述预定阈值可以根据实际情况设定。当检测到的TCP链路状态符合预定的重发策略时,执行对所述数据包的复制操作。由此,通过检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0075]作为另一种实施方式,数据传输装置还可以先进行数据包的复制操作,在复制数据包之后,以及发送数据包及复制的复制数据包之前,检测TCP链路状态,根据检测结果来判断是否进行数据包及复制数据包的发送操作。当检测到的TCP链路状态符合预定的重发策略时,执行对数据包及复制数据包的发送操作。由此,通过检测TCP链路状态,根据检测结果来判断是否进行对数据包及复制数据包的发送操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0076]如图4a所示,来自发送终端并经数据传输装置转发至接收终端的数据包,在TCP链路中丢失,而经数据传输装置复制并重传的数据包到达接收终端,由此,通过对数据包的复制及重传操作,在发生丢包的情况下,可以保证接收终端能够接收到数据包,降低接收终端的丢包率,提闻TCP链路的可罪性。
[0077]其中,对数据包的复制次数,可以根据需要设定,一种较佳实施方式是复制一次,并可以结合TCP链路的重传机制,进一步提高TCP链路的可靠性。
[0078]在具体实施过程中,作为一种实施方式,数据传输装置可以同时将原始数据包以及复制的一个或多个复制数据包通过发送终端与接收终端之间的TCP链路发送至接收终端;
[0079]作为另一种实施方式,数据传输装置还可以按照先后顺序将原始数据包以及复制的复制数据包发送至接收终端。
[0080]根据TCP协议,在接收终端侧,只要接收终端接收到一份来自发送终端的数据包,则不会再接收到其他相同的数据包,接收终端侧的TCP层会将其他数据包丢弃。
[0081]本实施例通过上述方案,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制一次,并将原始数据包以及复制的复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0082]如图5所示,本发明第一实施例提出一种数据传输装置,包括:接收模块201、复制模块202及发送模块203,其中:
[0083]接收模块201,用于当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包;
[0084]复制模块202,用于对所述数据包复制至少一次,得到至少一复制数据包;
[0085]发送模块203,用于将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
[0086]在TCP链路建立连接之后,通信双方可以进行数据包的相互传输。为了避免丢包造成的链路传输可靠性差,在TCP链路上通常采用超时重传等机制。本实施例考虑到,仅仅依赖TCP链路上的超时重传机制会造成传输数据的延迟大,数据传输的速度低,数据响应时间长,在某些应用场景会影响业务性能等问题,因此,在发送终端与接收终端的TCP链路上设置一数据传输装置,以减少TCP链路上的重传概率,提高TCP链路传输可靠性。
[0087]该数据传输装置在发送终端向接收终端发送数据包时,在TCP链路上通过接收模块201将此数据包接收在本地,以便对该数据包进行复制及转发操作。
[0088]在接收模块201接收到发送终端发送的数据包后,数据传输装置的发送模块203会将该数据包转发至接收终端,同时,数据传输装置的复制模块202还会将该数据包至少复制一次,由发送模块203发送给接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到数据包,降低接收终端的丢包率,提高TCP链路的可靠性。
[0089]其中,对数据包的复制次数,可以根据需要设定,一种较佳实施方式是复制一次,并可以结合TCP链路的重传机制,进一步提高TCP链路的可靠性。
[0090]在具体实施过程中,作为一种实施方式,数据传输装置可以同时将原始数据包以及复制的一个或多个复制数据包通过发送终端与接收终端之间的TCP链路发送至接收终端;
[0091]作为另一种实施方式,数据传输装置还可以按照先后顺序将原始数据包以及复制的复制数据包发送至接收终端。
[0092]根据TCP协议,在接收终端侧,只要接收终端接收到一份来自发送终端的数据包,则不会再接收到其他相同的数据包,接收终端侧的TCP层会将其他数据包丢弃。
[0093]本实施例通过上述方案,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原始数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0094]如图6所示,本发明第二实施例提出一种数据传输装置,在上述第一实施例的基础上,还包括:
[0095]检测模块204,用于在复制模块202对原始数据包进行复制操作前,对所述TCP链路状态进行检测;当所述TCP链路状态符合预定的重发策略时,由所述复制模块202执行对所述数据包的复制操作;或者,在发送模块203对原始数据包及至少一复制数据包进行发送操作前,对所述TCP链路状态进行检测,当所述TCP链路状态符合预定的重发策略时,由所述发送模块203执行对所述数据包及至少一复制数据包的发送操作(其中图6是以其中一种方式举例)。
[0096]本实施例与上述第一实施例的区别在于,本实施例中,作为一种实施方式,数据传输装置在复制数据包之前,需要通过检测模块204检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作。
[0097]具体地,本实施例所指的TCP链路状态可以包括但不限于TCP链路上的历史丢包率以及TCP链路上的数据包延迟等。
[0098]此外,本实施例根据TCP链路状态预先设定有重发策略,当满足重发策略时,则启动发送复制数据包的重发机制,对数据包进行复制操作。
[0099]针对上述TCP链路状态,该设定的重发策略可以是:TCP链路上的历史丢包率达到预定阀值;或者,TCP链路上的数据包延迟达到预定阀值,上述预定阈值可以根据实际情况设定。
[0100]当检测到的TCP链路状态符合预定的重发策略时,复制模块202执行对所述数据包的复制操作。
[0101]本实施例通过上述方案,通过检测TCP链路状态,根据检测结果来判断是否进行数据包的复制操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0102]作为本实施例的另一种实施方式,数据传输装置在复制数据包之后,以及发送数据包及复制的复制数据包之前,需要检测TCP链路状态,根据检测结果来判断是否进行数据包及复制数据包的发送操作。
[0103]其中所指TCP链路状态可以包括但不限于TCP链路上的历史丢包率以及TCP链路上的数据包延迟等。
[0104]根据TCP链路状态预先设定有重发策略,当满足重发策略时,则启动发送复制数据包的重发机制,并通过发送模块203执行数据包及复制数据包的发送操作。
[0105]针对上述TCP链路状态,该设定的重发策略可以是:TCP链路上的历史丢包率达到预定阀值;或者,TCP链路上的数据包延迟达到预定阀值,上述预定阈值可以根据实际情况设定。
[0106]当检测到的TCP链路状态符合预定的重发策略时,执行对数据包及复制数据包的发送操作。
[0107]本实施例通过上述方案,通过检测TCP链路状态,根据检测结果来判断是否进行对数据包及复制数据包的发送操作,在保证TCP链路传输可靠性的同时,还可以减少系统开销。
[0108]如图7所示,本发明第三实施例提出一种数据传输装置,在上述第二实施例的基础上,还包括:
[0109]链路建立模块200,用于在所述发送终端与接收终端之间建立所述TCP链路。
[0110]相比上述各实施例,本实施例还包括在发送终端向接收终端发送数据包之前建立TCP链路的方案。
[0111]其中,两主机(发送终端和接收终端)之间TCP链路的建立可以采用现有的三次握手协议来实现。
[0112]具体地,TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:
[0113]其中涉及的位码即tcp标志位,有6种标示:SYN (synchronous建立联机);ACK(acknowledgement 确认);PSH (push 传送);FIN (finish 结束);RST (reset 重置);URG(urgent 紧急);Sequence number (顺序号码);Acknowledge number (确认号码)。
[0114]第一次握手:主机A发送位码为syn = I,随机产生seq number=1234567的数据包到服务器,主机B由SYN=I知道,主机A要求建立联机;
[0115]第二次握手:主机B收到请求后要确认联机信息,向主机A发送ack number=(主机 A 的 seq+1), syn=l, ack=l,随机产生 seq=7654321 的包;
[0116]第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seqnumber+1,以及位码ack是否为I,若正确,主机A会再发送ack number=(主机B的seq+1),ack=l,主机B收到后确认seq值与ack=l则连接建立成功。
[0117]完成三次握手,主机A与主机B开始传送数据。
[0118]此外,在建立发送终端与接收终端之间的TCP链路时,检测模块204还可以获取TCP链路上的数据包延迟。
[0119]本实施例通过上述方案,在发送终端与接收终端之间建立TCP链路,在发送终端向接收终端发送数据包时,将发送终端发送的数据包复制至少一次,并将原数据包以及复制的至少一复制数据包通过TCP链路发送至接收终端,由此,在发生丢包的情况下,可以保证接收终端能够接收到发送终端发送的数据包,从而降低TCP链路的丢包率,减少TCP重发概率,降低数据响应时间,提高TCP链路的传输可靠性。
[0120]需要说明的是,上述各实施例中的数据传输装置可以是设置在发送终端与接收终端之间的TCP链路上的某个具体实体装置,也可以是位于发送终端侧的装置,还可以是后台服务器等。
[0121]由此,本发明较佳实施例还提出一种数据包发送终端,包括上述实施例所述的装置,在此不再赘述。
[0122]本发明较佳实施例还提出一种服务器,包括上述实施例所述的装置,在此不再赘述。
[0123]本发明较佳实施例还提出一种系统,包括至少一个发送终端、至少一个接收终端以及至少一个如上所述的服务器,所述至少一个接收终端用于接收所述至少一个发送终端及所述至少一个服务器发送的数据包。
[0124]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0125]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0126]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,月艮务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0127]以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种数据传输方法,其特征在于,包括: 当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包; 对所述数据包复制至少一次,得到至少一复制数据包; 将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
2.根据权利要求1所述的方法,其特征在于,所述对数据包复制至少一次的步骤之前还包括: 对所述TCP链路状态进行检测; 当所述TCP链路状态符合预定的重发策略时,执行对所述数据包的复制操作。
3.根据权利要求1所述的方法,其特征在于,所述将数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端的步骤之前还包括: 对所述TCP链路状态进行检测; 当所述TCP链路状态符合预定的重发策略时,执行对所述数据包及至少一复制数据包的发送操作。
4.根据权利要求2或3所述的方法,其特征在于,所述预定的重发策略至少包括:所述TCP链路上的历史丢包率达到预定阀值;或者,所述TCP链路上的数据包延迟达到预定阀值。
5.根据权利要求4所述的方法,其特征在于,在所述发送终端向接收终端发送数据包之前,还包括: 在所述发送终端与接收终端之间建立所述TCP链路。
6.根据权利要求5所述的方法,其特征在于,还包括: 在所述发送终端与接收终端之间建立所述TCP链路时,获取所述TCP链路上的数据包延迟。
7.根据权利要求1所述的方法,其特征在于,所述将数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端的步骤包括: 同时将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端;或者,按照先后顺序将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
8.一种数据传输装置,其特征在于,包括: 接收模块,用于当发送终端向接收终端发送数据包时,接收发送终端发送的所述数据包; 复制模块,用于对所述数据包复制至少一次,得到至少一复制数据包; 发送模块,用于将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
9.根据权利要求8所述的装置,其特征在于,还包括: 检测模块,用于对所述TCP链路状态进行检测;当所述TCP链路状态符合预定的重发策略时,由所述复制模块执行对所述数据包的复制操作;或者由所述发送模块执行对所述数据包及至少一复制数据包的发送操作。
10.根据权利要求9所述的装置,其特征在于,所述预定的重发策略至少包括:所述TCP链路上的历史丢包率达到预定阀值;或者,所述TCP链路上的数据包延迟达到预定阀值。
11.根据权利要求10所述的装置,其特征在于,还包括: 链路建立模块,用于在所述发送终端与接收终端之间建立所述TCP链路。
12.根据权利要求11所述的装置,其特征在于,所述检测模块还用于在所述发送终端与接收终端之间建立所述TCP链路时,获取所述TCP链路上的数据包延迟。
13.根据权利要求8-12中任一项所述的装置,其特征在于,所述发送模块还用于同时将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端;或者,按照先后顺序将所述数据包以及所述至少一复制数据包通过预先建立的TCP链路发送至接收终端。
14.一种数据包发送终端,其特征在于,包括权利要求8-13中任一项所述的装置。
15.一种系统,其特征在于,包括至少一个如权利要求14所述的发送终端以及至少一个接收终端,所述至少一个接收终端用于接收所述至少一个发送终端发送的数据包。
16.一种服务器,其特征在于,包括权利要求8-13中任一项所述的装置。
17.—种系统,其特征在于,包括至少一个发送终端、至少一个接收终端以及至少一个如权利要求16所述的服务器,所述至少一个接收终端用于接收所述至少一个发送终端及所述至少一个服务器发送的数据包。
【文档编号】H04L1/08GK104243107SQ201310223328
【公开日】2014年12月24日 申请日期:2013年6月6日 优先权日:2013年6月6日
【发明者】余子军, 刘贤彬 申请人:深圳市腾讯计算机系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1