一种数据传输方法及装置转让专利

申请号 : CN201410219208.2

文献号 : CN104967635B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郑泽栋

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明公开了一种数据传输方法及装置,所述方法包括:将数据分割为至少一个分片并进行传输,其中分片具有分片大小和传输时间间隔;对分片大小进行调整,并按调整后的分片大小在时延检测时间内进行数据传输;检测在时延检测时间内数据传输的时延变化;根据时延变化的结果,按照预设调整规则对分片大小和传输时间间隔进行动态调整,按照调整后的分片大小和调整后的传输时间间隔对数据进行传输,以使得时延变化达到预设范围;按照时延变化达到预设范围时的分片大小和传输时间间隔对数据进行传输。本实施例中根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。

权利要求 :

1.一种数据传输方法,其特征在于,所述方法包括:

将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;

在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输;

检测在所述时延检测时间内数据传输的时延变化;

根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;以及按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。

2.根据权利要求1所述的数据传输方法,其特征在于,所述时延检测时间等于所述分片初始的传输时间间隔。

3.根据权利要求1所述的数据传输方法,其特征在于,所述在所述传输时间间隔到达时,对所述分片大小进行调整的步骤,包括:以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小。

4.根据权利要求3所述的数据传输方法,其特征在于,所述以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小的步骤,包括:将所述分片大小调整为初始的分片大小的两倍。

5.根据权利要求4所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行动态的调整的步骤,包括:若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。

6.根据权利要求4所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行动态的调整的步骤,包括:若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。

7.根据权利要求4所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行动态的调整的步骤,包括:若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。

8.根据权利要求7所述的数据传输方法,其特征在于,所述按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输的步骤之后,还包括:若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

9.根据权利要求7所述的数据传输方法,其特征在于,所述按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输的步骤之后,还包括:若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

10.根据权利要求3所述的数据传输方法,其特征在于,所述以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小的步骤,包括:将所述分片大小调整为初始的分片大小的一半。

11.根据权利要求10所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行调整的步骤,包括:若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。

12.根据权利要求10所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行调整的步骤,包括:若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。

13.根据权利要求10所述的数据传输方法,其特征在于,所述根据时延变化的结果,按照预设分片调整规则对分片大小和传输时间间隔进行调整的步骤,包括:若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。

14.根据权利要求13所述的数据传输方法,其特征在于,所述按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,还包括:若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

15.根据权利要求13所述的数据传输方法,其特征在于,所述按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,还包括:若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

16.一种数据传输装置,其特征在于,所述装置包括:

分片获取模块,用于将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;

初始调整模块,用于在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输;

时延检测模块,用于检测在所述时延检测时间内数据传输的时延变化;

分片调整模块,用于根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整;以及数据传输模块,用于按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并触发所述时延检测模块重复进行检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。

17.根据权利要求16所述的数据传输装置,其特征在于,若所述时延检测时间等于所述分片初始的传输时间间隔;

则所述初始调整模块,还用于按调整后的分片大小在初始的传输时间间隔内进行数据传输;以及所述时延检测模块,还用于检测在初始的传输时间间隔内数据传输的时延变化。

18.根据权利要求17所述的数据传输装置,其特征在于,所述初始调整模块,还用于在所述传输时间间隔到达时,以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小,并按调整后的分片大小在一时延检测时间内进行数据传输。

19.根据权利要求18所述的数据传输装置,其特征在于,所述初始调整模块,还用于在所述传输时间间隔到达时,将所述分片大小调整为初始的分片大小的两倍,并按调整后的分片大小在一时延检测时间内进行数据传输。

20.根据权利要求19所述的数据传输装置,其特征在于,所述分片调整模块包括第一调整单元,用于若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。

21.根据权利要求19所述的数据传输装置,其特征在于,所述分片调整模块包括第二调整单元,用于若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。

22.根据权利要求19所述的数据传输装置,其特征在于,所述分片调整模块包括第三调整单元,用于若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。

23.根据权利要求22所述的数据传输装置,其特征在于,所述分片调整模块还包括:第四调整单元,用于所述第三调整单元调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

24.根据权利要求22所述的数据传输装置,其特征在于,所述分片调整模块还包括:第五调整单元,用于所述第三调整单元调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

25.根据权利要求18所述的数据传输装置,其特征在于,所述初始调整模块,还用于在所述传输时间间隔到达时,将所述分片大小调整为初始的分片大小的一半,并按调整后的分片大小在一时延检测时间内进行数据传输。

26.根据权利要求25所述的数据传输装置,其特征在于,所述分片调整模块包括第六调整单元,用于若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。

27.根据权利要求25所述的数据传输装置,其特征在于,所述分片调整模块包括第七调整单元,用于若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。

28.根据权利要求25所述的数据传输装置,其特征在于,所述分片调整模块包括第八调整单元,用于若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。

29.根据权利要求28所述的数据传输装置,其特征在于,所述分片调整模块还包括:第九调整单元,用于所述第八调整单元调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

30.根据权利要求28所述的数据传输装置,其特征在于,所述分片调整模块还包括:第十调整单元,用于所述第八调整单元调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。

说明书 :

一种数据传输方法及装置

技术领域

[0001] 本发明属于通信技术领域,尤其涉及一种数据传输方法及装置。

背景技术

[0002] 随着网络的不断普及,用户对网络提供的各项服务的要求越来越高。其中,许多服务涉及到网络数据传输和数据交互,例如,微信图片服务、QQ空间日志服务等。目前,加快数据在各个服务器节点的传输,是改善服务质量、提升用户体验的重要手段。
[0003] 以基于传输控制协议(TCP,Transmission Control Protocol)的数据传输为例,现有技术中,一般采用两种方式进行传输:第一,数据不进行分片,即数据不分割,一块数据只使用一个TCP连接传输,可是传输速度受限于TCP单个连接的带宽瓶颈,并且数据大小越大,造成的传输时延也越大;第二,将数据分成固定的N片,即一个数据包分割成多个数据块,使用N个TCP连接并发传输,可是,分片数N值完全依赖经验来决定,且N为固定值,无法根据实际场景来自动调整;另外,任何大小的数据都分为N片,而实际中不同类型数据的大小差异会很大,因此,固定N片的分片方式无法保证对各种大小的数据都使得传输时延最低。
[0004] 因此,需解决现有技术中在数据传输过程中,存在的无法根据实际场景来自动调整分片数,从而无法保证对各种大小的数据的传输时延为最低的问题。

发明内容

[0005] 本发明的目的在于提供一种数据传输方法及装置,旨在解决现有技术中无法根据实际场景来自动调整分片数,从而无法保证对各种大小的数据的传输时延为最低的技术问题。
[0006] 为解决上述技术问题,本发明实施例提供以下技术方案:
[0007] 一种数据传输方法,所述数据传输方法包括:
[0008] 将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;
[0009] 在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输;
[0010] 检测在所述时延检测时间内数据传输的时延变化;
[0011] 根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;以及
[0012] 按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0013] 为解决上述技术问题,本发明实施例提供以下技术方案:
[0014] 一种数据传输装置,所述数据传输装置包括:
[0015] 分片获取模块,用于将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;
[0016] 初始调整模块,用于在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输;
[0017] 时延检测模块,用于检测在所述时延检测时间内数据传输的时延变化;
[0018] 分片调整模块,用于根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整;以及
[0019] 数据传输模块,用于按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并触发所述时延检测模块重复进行检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0020] 相对于现有技术,本实施例将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。

附图说明

[0021] 图1是本发明实施例提供的数据传输装置所在的服务器的工作环境结构示意图;
[0022] 图2是本发明第一实施例提供的数据传输方法的流程示意图;
[0023] 图3为本发明第二实施例提供的数据传输方法的流程示意图;
[0024] 图4为本发明实施例提供的数据传输方法具体应用的流程示意图;
[0025] 图5为本发明第三实施例提供的数据传输方法的流程示意图;
[0026] 图6为本发明实施例提供的数据传输方法具体应用的另一流程示意图;
[0027] 图7为本发明实施例提供的数据传输装置的结构示意图;
[0028] 图8为本发明实施例提供的数据传输装置的另一结构示意图;
[0029] 图9为本发明实施例提供的数据传输装置的另一结构示意图。

具体实施方式

[0030] 为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0031] 在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行之作业的步骤及符号来说明,除非另有述明。因此,其将可了解到这些步骤及操作,其中有数次提到为由计算机执行,包括了由代表了以一结构化型式中的数据之电子信号的计算机处理单元所操纵。此操纵转换该数据或将其维持在该计算机之内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机之运作。该数据所维持的数据结构为该内存之实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
[0032] 如本申请所使用的术语“组件”、“模块”、“系统”、“接口”、“进程”等等一般地旨在指计算机相关实体:硬件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于是运行在处理器上的进程、处理器、对象、可执行应用、执行的线程、程序和/或计算机。通过图示,运行在控制器上的应用和该控制器二者都可以是组件。一个或多个组件可以有在于执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。
[0033] 而且,要求保护的主题可以被实现为使用标准编程和/或工程技术产生软件、固件、硬件或其任意组合以控制计算机实现所公开的主题的方法、装置或制造品。本文所使用的术语“制造品”旨在包含可从任意计算机可读设备、载体或介质访问的计算机程序。当然,本领域技术人员将认识到可以对该配置进行许多修改,而不脱离要求保护的主题的范围或精神。
[0034] 图1和随后的讨论提供了对实现本发明所述的数据传输装置所在的服务器的工作环境的简短、概括的描述。图1的工作环境仅仅是适当的工作环境的一个实例,并且不旨在建议关于工作环境的用途或功能的范围的任何限制。实例服务器112包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费型服务器、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。
[0035] 尽管没有要求,但是在“计算机可读指令”被一个或多个服务器执行的通用背景下描述实施例。计算机可读指令可以经由计算机可读介质来分布(下文讨论)。计算机可读指令可以实现为程序模块,比如执行特定任务或实现特定抽象数据类型的功能、对象、应用编程接口(API)、数据结构等等。典型地,该计算机可读指令的功能可以在各种环境中随意组合或分布。
[0036] 图1图示了包括本发明的数据传输装置的一个或多个实施例的服务器112的实例。在一种配置中,服务器112包括至少一个处理单元116和存储器118。根据服务器的确切配置和类型,存储器118可以是易失性的(比如RAM)、非易失性的(比如ROM、闪存等)或二者的某种组合。该配置在图1中由虚线114图示。
[0037] 在其他实施例中,服务器112可以包括附加特征和/或功能。例如,设备112还可以包括附加的存储装置(例如可移除和/或不可移除的),其包括但不限于磁存储装置、光存储装置等等。这种附加存储装置在图1中由存储装置120图示。在一个实施例中,用于实现本文所提供的一个或多个实施例的计算机可读指令可以在存储装置120中。存储装置120还可以存储用于实现操作系统、应用程序等的其他计算机可读指令。计算机可读指令可以载入存储器118中由例如处理单元116执行。
[0038] 本文所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储器118和存储装置120是计算机存储介质的实例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储期望信息并可以被服务器112访问的任何其他介质。任意这样的计算机存储介质可以是服务器112的一部分。
[0039] 服务器112还可以包括允许服务器112与其他设备通信的通信连接126。通信连接126可以包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接或用于将服务器112连接到其他服务器的其他接口。通信连接126可以包括有线连接或无线连接。通信连接126可以发射和/或接收通信媒体。
[0040] 术语“计算机可读介质”可以包括通信介质。通信介质典型地包含计算机可读指令或诸如载波或其他传输机构之类的“己调制数据信号”中的其他数据,并且包括任何信息递送介质。术语“己调制数据信号”可以包括这样的信号:该信号特性中的一个或多个按照将信息编码到信号中的方式来设置或改变。
[0041] 服务器112可以包括输入设备124,比如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。设备112中也可以包括输出设备122,比如一个或多个显示器、扬声器、打印机和/或任意其他输出设备。输入设备124和输出设备122可以经由有线连接、无线连接或其任意组合连接到服务器112。在一个实施例中,来自另一个服务器的输入设备或输出设备可以被用作服务器112的输入设备124或输出设备122。
[0042] 服务器112的组件可以通过各种互连(比如总线)连接。这样的互连可以包括外围组件互连(PCI)(比如快速PCI)、通用串行总线(USB)、火线(IEEE1394)、光学总线结构等等。在另一个实施例中,服务器112的组件可以通过网络互连。例如,存储器118可以由位于不同物理位置中的、通过网络互连的多个物理存储器单元构成。
[0043] 本领域技术人员将认识到,用于存储计算机可读指令的存储设备可以跨越网络分布。例如,可经由网络128访问的服务器130可以存储用于实现本发明所提供的一个或多个实施例的计算机可读指令。服务器112可以访问服务器130并且下载计算机可读指令的一部分或所有以供执行。可替代地,服务器112可以按需要下载多条计算机可读指令,或者一些指令可以在服务器112处执行并且一些指令可以在服务器130处执行。
[0044] 本文提供了实施例的各种操作。在一个实施例中,所述的一个或多个操作可以构成一个或多个计算机可读介质上存储的计算机可读指令,其在被服务器执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
[0045] 而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
[0046] 而且,尽管已经相对于一个或多个实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或多个其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
[0047] 请参阅图2,图2是本发明第一实施例提供的数据传输方法的流程示意图。
[0048] 在步骤S201中,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔。
[0049] 可以理解的是,采用现有的数据分片算法,可以将数据分割为至少一个分片。其中,所述分片具有初始的分片大小和传输时间间隔,并可以通过预先设置方式存储于服务器中。本实施例中,在数据进行分片后,按分片初始的分片大小在初始的传输时间间隔内进行数据传输。
[0050] 在步骤S202中,在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输。
[0051] 可以理解的是,在所述传输时间间隔到达时对分片的分片大小进行初始的调整,优选地,可以以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小。
[0052] 本发明实施例中,所述分片的传输时间间隔可以包括时延检测时间和分片的传输时间,优选地,可以将所述分片的传输时间间隔的单位时间T定义为时延检测时间,所述时延检测时间等于所述分片初始的传输时间间隔。
[0053] 在步骤S203中,检测在所述时延检测时间内数据传输的时延变化。
[0054] 其中,在对初始的分片大小进行初始调整后,检测调整后的分片在所述时延检测时间内相对于未调整前的数据传输的时延变化。
[0055] 在步骤S204中,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整。
[0056] 在步骤S205中,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围。
[0057] 可以理解的是,所述步骤S204和所述步骤S205中,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,目的是为了在数据传输过程中不断的调整数据的分片数,以降低时延。其中,所述预设范围可以按照预先设置的方式存储于服务器中。
[0058] 若步骤S203中检测出所述时延变化达到所述预设范围,则执行步骤S206,若检测出所述时延变化未达到所述预设范围,则按照预设调整规则,对每个分片的分片大小和传输时间间隔进行动态的调整,直至所述时延变化达到预设范围。
[0059] 在步骤S206中,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0060] 由上述可知,本实施例中将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0061] 请参阅图3,图3为本发明第二实施例提供的数据传输方法的流程示意图。在所述第二实施例中,所述时延检测时间等于所述分片初始的传输时间间隔,为方便描述,以下实施例中将所述分片初始的分片大小标记为S,初始的传输时间间隔标记为T,所述方法包括:
[0062] 在步骤S301中,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小S和传输时间间隔T。
[0063] 在步骤S302中,在所述传输时间间隔T到达时,将所述分片大小调整为初始的分片大小的两倍,并按调整后的分片大小在时延检测时间内进行数据传输。
[0064] 本发明实施例中,将所述分片的传输时间间隔的单位时间T定义为时延检测时间,所述分片初始的传输时间间隔T等于所述时延检测时间。
[0065] 优选地,在初始调整中对于每个分片,可以将所述分片的分片大小调整为初始的分片大小S的两倍,即调整为2S。
[0066] 在步骤S303中,检测在所述时延检测时间内数据传输的时延变化。
[0067] 即检测调整后的分片在所述传输时间间隔T内数据传输的时延变化。
[0068] 优选地,所述时延变化的结果可以包括时延值变小且所述时延值不在所述预设范围内、所述时延值变大以及时延值在所述预设范围内。
[0069] 可以理解的是,若检测出所述时延变化的结果为时延值变小且所述时延值不在所述预设范围内或者检测出所述时延值变大,则需要根据对所述分片的分片大小和传输时间间隔进行调整,即对应执行步骤S304a或步骤S304b或步骤S304c;若所述时延变化的结果为在所述预设范围内,则执行步骤S306。
[0070] 在本实施例中,对于每个分片的初始调整,将所述分片的分片大小调整为初始的分片大小的两倍(即该调整为将分片大小调大),基于此,以下针对于根据时延变化的结果对每个分片的分片大小和传输时间间隔进行动态调整的三种情况,进行详细分析:
[0071] 在步骤S304a中,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。
[0072] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,则对于本次调整,上一次调整为将分片大小调大,若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为4S;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0073] 在步骤S304b中,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。
[0074] 假设,对于上一次调整为将分片大小调小(如从S调整为S/2),若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为S/4;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0075] 在步骤S304c中,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。
[0076] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即分片大小调整为S;初始的传输时间间隔为T,将传输时间间隔调整为上一次调整前的传输时间间隔(即初始的传输时间间隔T)的两倍,即传输时间间隔调整为2T。
[0077] 可以理解的是,从所述步骤S304a至所述步骤S304c中,根据不同的延时变化的结果对应的采用不同的调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,目的是为了在数据传输过程中不断的调整数据的分片数,以降低时延。
[0078] 在步骤S305中,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤。
[0079] 即当按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输后,需要返回步骤S303,对该次数据传输的时延进行检测。
[0080] 优选地,在时延值变大,将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍(即步骤S304c)的情形下,按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,可以进一步包括:
[0081] 若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0082] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调小(2S调整为S),因此将分片的分片大小调整为S/2,将传输时间间隔调整为T,调整完后,返回步骤S305。
[0083] 在某些实施方式中,按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,可以进一步包括:
[0084] 若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0085] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调大(S/2调整为S),因此将分片的分片大小调整为2S,将传输时间间隔调整为T,调整完后,返回步骤S305。
[0086] 在步骤S306中,若检测出时延值在所述预设范围内,则按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0087] 为了更理解本发明技术方案,可一并参阅图4,图4为一本发明实施例的数据传输方法的具体应用实施例的流程示意图;其中,将所述分片初始的分片大小标记为S,所述分片初始的传输时间间隔等于所述时延检测时间,标记为T,以下对该具体应用进行分析说明:
[0088] 首先,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小S和传输时间间隔T;T时间后,对分片进行初始调整,将所述分片的分片大小S调整为初始的分片大小的两倍(即该调整为将分片大小调大),即分片大小调整为2S,传输时间间隔保持为T,并按分片大小2S在T内进行数据传输;T时间后,检测在所述时延检测时间内数据传输的时延变化:
[0089] 在一种情形下,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大(由S调整为2S),则将分片大小调整为4S,传输时间间隔保持为T,并按分片大小4S在T内进行数据传输;
[0090] 在该情形的一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大(由2S调整为4S),则将分片大小调整为8S,传输时间间隔保持为T,并按分片大小8S在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片,直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0091] 在该情形的另一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为2S,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为2T,并按分片大小2S在2T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调小(由4S调整为2S),则将分片大小调整为当前的分片大小的一半,即将分片大小调整为S,将传输时间间隔调整为T,并按分片大小S在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0092] 在另一种情形下,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为S,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为2T,并按分片大小S在2T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调小(由2S调整为S),则将分片大小调整为当前的分片大小的一半,即将分片大小调整为S/2,将传输时间间隔调整为T,并按分片大小S/2在T内进行数据传输。
[0093] 在该情形的一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小(由S调整为S/2),则将分片大小调整为4/S,传输时间间隔保持为T,并按分片大小S/4在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片,直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0094] 在该情形的另一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为S,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为4T,并按分片大小S在4T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调大(由S/2调整为S),则将分片大小调整为当前的分片大小的两倍,即将分片大小调整为2S,将传输时间间隔调整为T,并按分片大小2S在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0095] 若假设所述时延变化达到所述预设范围时的分片大小为m*S,传输时间间隔为n*T,则按分片大小m*S在传输时间间隔为n*T对所述数据进行传输。
[0096] 另容易想到的是,如图4所示的数据传输方法中,仅以基于分片初始的分片大小S,成比例的调大或者调小分片大小的方式为例进行分析,不构成对本发明的限定。
[0097] 由上述可知,本实施例中,本实施例将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0098] 请参阅图5,图5为本发明第三实施例提供的数据传输方法的流程示意图。区别于如图3所示的数据传输方法,在对分片进行初始调整时,将所述分片的分片大小S调整为初始的分片大小的一半(即该调整为将分片大小调小),在所述第三实施例中,所述时延检测时间等于所述分片初始的传输时间间隔,为方便描述,以下实施例中将所述分片初始的分片大小标记为S,初始的传输时间间隔标记为T,所述方法包括:
[0099] 在步骤S401中,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小S和传输时间间隔T。
[0100] 在步骤S402中,在所述传输时间间隔T到达时,将所述分片大小调整为初始的分片大小的一半,并按调整后的分片大小在时延检测时间内进行数据传输。
[0101] 本发明实施例中,将所述分片的传输时间间隔的单位时间T定义为时延检测时间,所述分片初始的传输时间间隔T等于所述时延检测时间。
[0102] 优选地,在初始调整中对于每个分片,可以将所述分片的分片大小调整为初始的分片大小S的一半,即调整为S/2。
[0103] 在步骤S403中,检测在所述时延检测时间内数据传输的时延变化。
[0104] 即检测调整后的分片在所述传输时间间隔T内数据传输的时延变化。
[0105] 优选地,所述时延变化的结果可以包括时延值变小且所述时延值不在所述预设范围内、所述时延值变大以及时延值在所述预设范围内。
[0106] 可以理解的是,若检测出所述时延变化的结果为时延值变小且所述时延值不在所述预设范围内或者检测出所述时延值变大,则需要根据对所述分片的分片大小和传输时间间隔进行调整,即对应执行步骤S404a或步骤S404b或步骤S404c;若所述时延变化的结果为在所述预设范围内,则执行步骤S406。
[0107] 在本实施例中,对于每个分片的初始调整,将所述分片的分片大小调整为初始的分片大小的一半(即该调整为将分片大小调小),基于此,以下针对于根据时延变化的结果对每个分片的分片大小和传输时间间隔进行动态调整的三种情况,进行详细分析:
[0108] 在步骤S404a中,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。
[0109] 假设,对于上一次调整为将分片大小调大(如从S调整为2S),若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为4S;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0110] 在步骤S404b中,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。
[0111] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,则对于本次调整,上一次调整为将分片大小调小,若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为S/4;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0112] 在步骤S404c中,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。
[0113] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即分片大小调整为S;初始的传输时间间隔为T,将传输时间间隔调整为上一次调整前的传输时间间隔(即初始的传输时间间隔T)的两倍,即传输时间间隔调整为2T。
[0114] 可以理解的是,从所述步骤S404a至所述步骤S404c中,根据不同的延时变化的结果对应的采用不同的调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,目的是为了在数据传输过程中不断的调整数据的分片数,以降低时延。
[0115] 在步骤S405中,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤。
[0116] 即当按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输后,需要返回步骤S403,对该次数据传输的时延进行检测。
[0117] 优选地,在时延值变大,将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍(即步骤S404c)的情形下,按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,可以进一步包括:
[0118] 若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0119] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调小(2S调整为S),因此将分片的分片大小调整为S/2,将传输时间间隔调整为T,调整完后,返回步骤S405。
[0120] 在某些实施方式中,按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输的步骤之后,可以进一步包括:
[0121] 若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0122] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调大(S/2调整为S),因此将分片的分片大小调整为2S,将传输时间间隔调整为T,调整完后,返回步骤S405。
[0123] 在步骤S406中,若检测出时延值在所述预设范围内,则按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0124] 为了更理解本发明技术方案,可一并参阅图6,图6为一本发明实施例的数据传输方法的具体应用实施例的流程示意图;其中,将所述分片初始的分片大小标记为S,所述分片初始的传输时间间隔等于所述时延检测时间,标记为T,以下对该具体应用进行分析说明:
[0125] 首先,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小S和传输时间间隔T;T时间后,对分片进行初始调整,将所述分片的分片大小S调整为初始的分片大小的一半(即该调整为将分片大小调小),即分片大小调整为S/2,传输时间间隔保持为T,并按分片大小S/2在T内进行数据传输;T时间后,检测在所述时延检测时间内数据传输的时延变化:
[0126] 在一种情形下,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小(由S调整为S/2),则将分片大小调整为S/4,传输时间间隔保持为T,并按分片大小S/4在T内进行数据传输;
[0127] 在该情形的一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小(由S/2调整为S/4),则将分片大小调整为S/8,传输时间间隔保持为T,并按分片大小S/8在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片,直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0128] 在该情形的另一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为S/2,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为2T,并按分片大小S/2在2T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调大(由S/4调整为S/2),则将分片大小调整为当前的分片大小的两倍,即将分片大小调整为S,将传输时间间隔调整为T,并按分片大小S在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0129] 在另一种情形下,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为S,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为2T,并按分片大小S在2T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调大(由S/2调整为S),则将分片大小调整为当前的分片大小的两倍,即将分片大小调整为2S,将传输时间间隔调整为T,并按分片大小2S在T内进行数据传输。
[0130] 在该情形的一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大(由S调整为S2),则将分片大小调整为4S,传输时间间隔保持为T,并按分片大小4S在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片,直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0131] 在该情形的另一分支下,T时间后,再次检测在所述时延检测时间内数据传输的时延变化,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即将分片大小调整为S,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍,即将输时间间隔调整为4T,并按分片大小S在4T内进行数据传输;在该情形下,2T时间后,由于上一次调整为将分片大小调小(由2S调整为S),则将分片大小调整为当前的分片大小的一半,即将分片大小调整为S/2,将传输时间间隔调整为T,并按分片大小S/2在T内进行数据传输,重复进行所述检测在所述时延检测时间内数据传输的时延变化的步骤,即持续调整分片直至所述时延变化达到预设范围,按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0132] 若假设所述时延变化达到所述预设范围时的分片大小为m*S,传输时间间隔为n*T,则按分片大小m*S在传输时间间隔为n*T对所述数据进行传输。
[0133] 另容易想到的是,如图6所示的数据传输方法中,仅以基于分片初始的分片大小S,成比例的调大或者调小分片大小的方式为例进行分析,不构成对本发明的限定。
[0134] 由上述可知,本实施例中,本实施例将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0135] 为便于更好的实施本发明实施例提供的数据传输方法,本发明实施例还提供一种基于上述数据传输方法的装置。其中名词的含义与上述驾驶数据处理的方法中相同,具体实现细节可以参考方法实施例中的说明。请参阅图7,图7为本发明实施例提供的数据传输装置的结构示意图,其中所述数据传输装置包括分片获取模块71、初始调整模块72、时延检测模块73、分片调整模块74以及数据传输模块75。
[0136] 其中所述分片获取模块71,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;所述初始调整模块72,在所述传输时间间隔到达时,对所述分片大小进行调整,并按调整后的分片大小在一时延检测时间内进行数据传输;所述时延检测模块73,检测在所述时延检测时间内数据传输的时延变化。
[0137] 可以理解的是,采用现有的数据分片算法,可以将数据分割为至少两个固定大小的分片。其中,所述分片具有初始的分片大小和传输时间间隔,并可以通过预先设置方式存储于服务器中。本实施例中,在数据进行分片后,按分片初始的分片大小在初始的传输时间间隔内进行数据传输。
[0138] 所述初始调整模块72在所述传输时间间隔到达时对分片的分片大小进行初始的调整,优选地,可以以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小。
[0139] 本发明实施例中,所述分片的传输时间间隔可以包括时延检测时间和分片的传输时间,优选地,可以将所述分片的传输时间间隔的单位时间T定义为时延检测时间,所述时延检测时间等于所述分片初始的传输时间间隔。
[0140] 所述分片调整模块74,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整;所述数据传输模块75,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并触发所述时延检测模块重复进行检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0141] 可以理解的是,所述分片调整模块74按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,目的是为了在数据传输过程中不断的调整数据的分片数,以降低时延。其中,所述预设范围可以按照预先设置的方式存储于所述数据传输装置中。
[0142] 若所述时延检测模块73检测出所述时延变化达到所述预设范围,则所述数据传输模块75按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输;若所述时延检测模块73检测出所述时延变化未达到所述预设范围,则所述分片调整模块74,按照预设调整规则,对每个分片的分片大小和传输时间间隔进行动态的调整,直至所述时延变化达到预设范围。
[0143] 由上述可知,本实施例中将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0144] 优选地,可一并参考图8,图8为本发明实施例提供的数据传输装置的另一结构示意图,所述数据传输装置包括分片获取模块81、初始调整模块82、时延检测模块83、分片调整模块84以及数据传输模块85。该实施例中,所述时延检测时间等于所述分片初始的传输时间间隔,所述分片初始的分片大小标记为S,初始的传输时间间隔标记为T。
[0145] 其中所述分片获取模块81,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;
[0146] 优选地,所述初始调整模块82,在所述传输时间间隔T到达时,以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小,并按调整后的分片大小在一时延检测时间内进行数据传输。
[0147] 进一步优选地,所述初始调整模块82,在所述传输时间间隔T到达时,将所述分片大小调整为初始的分片大小的两倍,并按调整后的分片大小在一时延检测时间内进行数据传输。
[0148] 譬如,在初始调整中对于每个分片,可以将所述分片的分片大小调整为初始的分片大小S的两倍,即调整为2S。
[0149] 所述时延检测模块83,检测在所述时延检测时间内数据传输的时延变化。
[0150] 优选地,所述时延变化的结果可以包括时延值变小且所述时延值不在所述预设范围内、所述时延值变大以及时延值在所述预设范围内;
[0151] 可以理解的是,若检测出所述时延变化的结果为时延值变小且所述时延值不在所述预设范围内或者检测出所述时延值变大,则所述分片调整模块84,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整;若所述时延变化的结果为在所述预设范围内,则所述数据传输模块85按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0152] 在本实施例中,对于每个分片的初始调整,将所述分片的分片大小调整为初始的分片大小的两倍(即该调整为将分片大小调大),基于此,以下针对于所述分片调整模块84根据时延变化的结果对每个分片的分片大小和传输时间间隔进行动态调整的三种情况,进行详细分析:
[0153] 所述分片调整模块84包括第一调整单元841、第二调整单元842和第三调整单元843,其中,所述第一调整单元841,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。
[0154] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,则对于本次调整,上一次调整为将分片大小调大,若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为4S;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0155] 所述第二调整单元842,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。
[0156] 假设,对于上一次调整为将分片大小调小(如从S调整为S/2),若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为S/4;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0157] 所述第三调整单元843,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。
[0158] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即分片大小调整为S;初始的传输时间间隔为T,将传输时间间隔调整为上一次调整前的传输时间间隔(即初始的传输时间间隔T)的两倍,即传输时间间隔调整为2T。
[0159] 更进一步地,所述分片调整模块84还可以包括第四调整单元844和第五调整单元845;其中所述第四调整单元844,在所述第三调整单元843调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0160] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调小(2S调整为S),因此将分片的分片大小调整为S/2,将传输时间间隔调整为T,调整完后,触发所述数据传输模块85执行操作。
[0161] 所述第五调整单元845,在所述第三调整单元843调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0162] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调大(S/2调整为S),因此将分片的分片大小调整为2S,将传输时间间隔调整为T,调整完后,触发所述数据传输模块85执行操作。
[0163] 所述数据传输模块85,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并触发所述时延检测模块重复进行检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0164] 由上述可知,本实施例中,本实施例将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0165] 优选地,可一并参考图9,图9为本发明实施例提供的数据传输装置的另一结构示意图,所述数据传输装置包括分片获取模块91、初始调整模块92、时延检测模块93、分片调整模块94以及数据传输模块95。该实施例中,所述时延检测时间等于所述分片初始的传输时间间隔,所述分片初始的分片大小标记为S,初始的传输时间间隔标记为T。
[0166] 其中所述分片获取模块91,将数据分割为至少一个分片并进行数据传输,其中所述分片具有分片大小和传输时间间隔;
[0167] 优选地,所述初始调整模块92,在所述传输时间间隔T到达时,以所述分片初始的分片大小为基数,按照预设比例调整所述分片的分片大小,并按调整后的分片大小在一时延检测时间内进行数据传输。
[0168] 进一步优选地,所述初始调整模块92,在所述传输时间间隔T到达时将所述分片大小调整为初始的分片大小的一半,并按调整后的分片大小在一时延检测时间内进行数据传输。
[0169] 譬如,在初始调整中对于每个分片,可以将所述分片的分片大小调整为初始的分片大小S的一半,即调整为S/2。
[0170] 所述时延检测模块93,检测在所述时延检测时间内数据传输的时延变化。
[0171] 优选地,所述时延变化的结果可以包括时延值变小且所述时延值不在所述预设范围内、所述时延值变大以及时延值在所述预设范围内;
[0172] 可以理解的是,若检测出所述时延变化的结果为时延值变小且所述时延值不在所述预设范围内或者检测出所述时延值变大,则所述分片调整模块94,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整;若所述时延变化的结果为在所述预设范围内,则所述数据传输模块95按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0173] 在本实施例中,对于每个分片的初始调整,将所述分片的分片大小调整为初始的分片大小的一半(即该调整为将分片大小调小),基于此,以下针对于所述分片调整模块94根据时延变化的结果对每个分片的分片大小和传输时间间隔进行动态调整的三种情况,进行详细分析:
[0174] 所述分片调整模块94包括第六调整单元941、第七调整单元942和第八调整单元943,其中,所述第六调整单元941,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,维持分片的传输时间间隔不变。
[0175] 假设,对于上一次调整为将分片大小调大(如从S调整为2S),若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为4S;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0176] 所述第七调整单元942,若检测出时延值变小且所述时延值不在所述预设范围内,且上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,维持分片的传输时间间隔不变。
[0177] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,则对于本次调整,上一次调整为将分片大小调小,若检测出时延值变小且所述时延值不在所述预设范围内,则将分片大小调整为S/4;由于本实施例中,所述时延检测时间等于所述分片初始的传输时间间隔T,因此,在该实施例下,维持分片的传输时间间隔T不变。
[0178] 所述第八调整单元943,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,将传输时间间隔调整为上一次调整前的传输时间间隔的两倍。
[0179] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小,即分片大小调整为S;初始的传输时间间隔为T,将传输时间间隔调整为上一次调整前的传输时间间隔(即初始的传输时间间隔T)的两倍,即传输时间间隔调整为2T。
[0180] 更进一步地,所述分片调整模块94还可以包括第九调整单元944和第十调整单元945;其中所述第九调整单元944,在所述第八调整单元943调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调小,则将分片大小调整为当前的分片大小的一半,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0181] 假设,初始的分片大小为S,经过初始调整后分片大小变为2S,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调小(2S调整为S),因此将分片的分片大小调整为S/2,将传输时间间隔调整为T,调整完后,触发所述数据传输模块95执行操作。
[0182] 所述第十调整单元945,在所述第八调整单元943调整结束且所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输之后,若上一次调整为将分片大小调大,则将分片大小调整为当前的分片大小的两倍,将传输时间间隔调整为所述时延检测时间,并触发所述数据传输模块按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输。
[0183] 假设,初始的分片大小为S,经过初始调整后分片大小变为S/2,若检测出时延值变大,则将分片大小调整为上一次调整前的分片大小S,初始的传输时间间隔为T,则将传输时间间隔调整为2T;按调整后的分片大小S在传输时间间隔2T内进行数据传输后,由于上一次调整为将分片大小调大(S/2调整为S),因此将分片的分片大小调整为2S,将传输时间间隔调整为T,调整完后,触发所述数据传输模块95执行操作。
[0184] 所述数据传输模块95,按照调整后的分片大小和调整后的传输时间间隔继续对所述数据进行传输,并触发所述时延检测模块重复进行检测在所述时延检测时间内数据传输的时延变化的步骤,直至所述时延变化达到预设范围;按照所述时延变化达到所述预设范围时的分片大小和传输时间间隔对所述数据进行传输。
[0185] 由上述可知,本实施例中,本实施例将数据进行分片,并对分片的分片大小和传输时间间隔进行了初始调整,并检测在时延检测时间内数据传输的时延变化;其后,根据时延变化的结果,按照预设调整规则对每个分片的分片大小和传输时间间隔进行动态的调整,并按照调整后的分片大小和调整后的传输时间间隔对所述数据进行传输,以使得所述时延变化达到预设范围,最后按照时延变化达到预设范围时的分片大小和传输时间间隔对所述数据进行传输;本实施例在数据传输过程中,根据当前的时延变化来自动调整分片的分片大小和传输时间间隔,从而调整分片数,降低了传输时延,并保证对各种大小的数据的传输时延为最低。
[0186] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对数据传输方法的详细描述,此处不再赘述。
[0187] 本发明实施例提供的所述数据传输装置,譬如为计算机、平板电脑、具有触摸功能的手机等等,所述数据传输装置与上文实施例中的数据传输方法属于同一构思,在所述数据传输装置上可以运行所述数据传输方法实施例中提供的任一方法,其具体实现过程详见所述数据传输方法实施例,此处不再赘述。
[0188] 需要说明的是,对本发明所述数据传输方法而言,本领域普通测试人员可以理解实现本发明实施例所述数据传输方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在终端的存储器中,并被该终端内的至少一个处理器执行,在执行过程中可包括如所述数据传输方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
[0189] 对本发明实施例的所述数据传输装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。
[0190] 综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通测试人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。