CN112152759B - 一种数据传输方法、数据传输系统、设备及存储介质 - Google Patents
一种数据传输方法、数据传输系统、设备及存储介质 Download PDFInfo
- Publication number
- CN112152759B CN112152759B CN202011099350.XA CN202011099350A CN112152759B CN 112152759 B CN112152759 B CN 112152759B CN 202011099350 A CN202011099350 A CN 202011099350A CN 112152759 B CN112152759 B CN 112152759B
- Authority
- CN
- China
- Prior art keywords
- transmission
- parameter
- data
- current transmission
- historical
- 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.)
- Active
Links
Images
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/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- 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/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提出一种数据传输方法、数据传输系统、设备及存储介质,该方法包括:查询历史传输记录,获取历史传输参数;根据历史传输参数,确定当前传输参数;根据当前传输参数,对待传输数据进行初始分片后传输;判断当前传输状态是否正常;若正常,则按照第一预设规则调整当前传输参数,根据调整后的当前传输参数,对剩余的待传输数据进行二次分片后传输。根据历史传输参数确定当前传输参数,再根据当前传输参数对待传输数据进行分片后传输;能够避免固化分片方式造成的过多的分片传输请求尝试,从而减少时间损耗;通过判断当前传输状态动态调整当前传输参数,能够最大限度利用网络带宽,减少传输时间,提升传输效率,提高带宽利用率,减少传输延迟。
Description
技术领域
本申请属于数据处理域,具体涉及一种数据传输方法、数据传输系统、设备及存储介质。
背景技术
随着大数据时代和5G通信时代的到来,生产和生活中各领域产生的数据量呈指数级别增长。在大容量存储设备和技术的持续支持下,承载这些数据的文件容量也与日俱增,大容量数据文件传输逐渐成为各领域的刚需。在一些特定领域和特殊场景下,仍然不得不通过网络传输大容量数据文件。网络数据传输正是信息技术领域中极其重要的组成部分,然而目前的大数据处理技术大多偏向于移动计算而非数据传输,对于无法避免的大容量数据传输而言,尚未有高可用的稳定传输策略。
大容量数据传输在高速稳定的网络场景下,例如同局域网或者同一个数据中心进行大容量数据传输时,传输速度和稳定性尚可,此种场景除耗时较长之外,发生传输失败等严重问题的可能性较小。然而,在一些传输带宽比较窄或者带宽不稳定的场景下,例如跨局域网或不同数据中心进行大容量数据传输,若不采用特别处理的技术方案和传输策略,大概率会因为传输中断或者耗费时间太长超时而导致最终无法完成传输。
针对这种情况,目前已有的技术方案大多都是采用基于断点续传的分片传输策略,即将大容量数据文件进行分片,在某个分片传输失败时,从断点处重新发起该分片的传输,从而避免重新传输整个文件。这种单纯使用分片传输的方式,虽然能够完成传输,却无法有效地利用网络带宽,特别是在一些带宽不稳定的情况下,现有的分片传输方法无法最大限度地利用网络带宽,导致传输时的时间损耗过多,带宽利用率低下。
发明内容
本申请提出一种数据传输方法、数据传输系统、设备及存储介质,根据历史传输参数,确定当前传输参数,再根据所述当前传输参数对待传输数据进行分片后传输;能够避免传统分片的固化分片方式造成的过多的分片传输请求尝试,从而减少时间损耗;通过判断当前传输状态是否正常,动态调整当前传输参数,能够最大限度地利用网络带宽,提高带宽利用率。
本申请第一方面实施例提出了一种数据传输方法,包括:
查询历史传输记录,获取历史传输参数;
根据所述历史传输参数,确定当前传输参数;
根据所述当前传输参数,对待传输数据进行初始分片后传输;
判断当前传输状态是否正常;
若正常,则按照第一预设规则调整当前传输参数,根据调整后的当前传输参数,对剩余的所述待传输数据进行二次分片后传输。
在本申请的一些实施例中,所述根据所述历史传输参数,确定当前传输参数,包括:
从所述历史传输参数中,获取一组或多组历史参数向量,
根据获取的所述一组或多组历史参数向量,使用加权平均平滑公式,计算当前传输参数。
在本申请的一些实施例中,所述历史参数向量和当前传输参数均包括:分片大小、传输线程数、响应时间和/或重试次数。
在本申请的一些实施例中,所述判断当前传输状态是否正常,包括:
判断待传输数据的分片数据在传输过程中,是否出现超时的异常情况。
在本申请的一些实施例中,所述若正常,则按照第一预设规则调整当前传输参数,根据调整后的当前传输参数,对剩余的所述待传输数据进行二次分片后传输,包括:
按照第一预设规则增加当前传输参数中的分片大小和传输线程数;
以增加的分片大小和传输线程数为当前传输参数,对剩余的所述传输数据进行二次分片后传输。
在本申请的一些实施例中,在所述当前传输状态是否正常之后,还包括:
若异常,则保存当前传输参数至所述历史传输记录;
使用当前传输参数继续传输剩余的所述待传输数据。
在本申请的一些实施例中,在所述根据所述历史传输参数,确定当前传输参数之前,还包括:
若在历史传输记录中未查询到与当前传输时间对应的所述历史传输参数,则使用预设传输参数作为当前传输参数。
本申请第二方面的实施例提供了一种数据传输系统,包括:
查询模块,用于查询历史传输记录,获取历史传输参数;
判断计算模块,用于根据所述历史传输参数,确定当前传输参数;判断当前传输状态是否正常,若正常,则按照第一预设规则调整当前传输参数;
传输模块,用于根据所述当前传输参数,对待传输数据进行初始分片后传输;根据调整后的当前传输参数,对剩余的所述待传输数据进行二次分片后传输。
本申请第三方面的实施例提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述第一方面所述的数据传输方法的步骤。
本申请第四方面的实施例提供了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述第一方面所述的数据传输方法的步骤。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
在本申请实施例中,通过历史传输参数,确定当前传输参数,再根据当前传输参数对待传输数据进行分片后传输,从而能够避免传统的朴素分片方式由于不考虑当前带宽的情况直接分片,导致的过多的分片传输请求尝试而增加的时间损耗;通过判断当前传输状态,动态调整当前传输参数和分片大小,能够最大限度地利用网络带宽,从而减少传输时间,提升传输效率,提高带宽利用率,减少传输延迟。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请一实施例所提供的一种数据传输方法的步骤示意图;
图2示出了本申请一实施例所提供的一种数据传输方法的流程示意图;
图3示出了本申请一实施例所提供的一种数据传输系统的结构示意图;
图4示出了本申请一实施例所提供的一种计算机设备的结构示意图;
图5示出了本申请一实施例所提供的一种存储介质的示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
在一个实施例中,提出了一种数据传输方法,该方法能够通过历史传输参数确定当前传输参数,再根据当前传输参数对待传输数据进行分片后传输,从而能够避免传统的朴素分片方式由于不考虑当前带宽的情况直接分片,导致的过多的分片传输请求尝试而增加的时间损耗;通过实时判断当前传输状态,动态调整当前传输参数和分片大小,从而最大限度地利用网络带宽,减少传输时间,提升传输效率,提高带宽利用率,减少传输延迟。
通过图1所示的操作过程进行数据传输,具体包括以下步骤:
步骤101,查询历史传输记录,获取历史传输参数。
如图2所示,当客户端准备跨局域网或跨数据中心进行大容量数据文件的传输时,客户端需要先发起大容量数据文件传输请求,对客户端中的数据库进行查询,从之前进行数据传输时保存的历史传输记录中获取与文件接收端(接收文件的服务端)对应的历史传输参数。历史传输参数即为在此之前,准备发大容量数据文件传输的客户端与将要接收文件的服务端之间,进行大容量数据文件传输时的历史传输参数,包括分片大小、传输线程数、响应时间和重试次数等与数据传输以及带宽相关的参数。
步骤102,根据历史传输参数,确定当前传输参数。
从历史传输参数中,获取一组或多组历史参数向量,其中,历史参数向量为数据库内不同时间段的相关历史参数组成的向量。参数向量包括:分片大小、传输线程数、响应时间和重试次数等与数据传输以及带宽相关的参数。根据获取的一组或多组历史参数向量,使用加权平均平滑公式,计算当前传输参数。加权平均平滑公式为:
其中,为当前传输参数,i为历史参数向量的组数,为历史参数向量,ai为加权分量,通常情况下,设置为时间越近,权值越高,n为正整数,t为时间,t0为对应当前传输时间的查询时间段起始点,即为当前传输时间对应的一个传输时间段,传输时间段可以是30分钟、1小时或2小时等。T0为查询时间段间隔周期,通常以24小时为一个间隔周期。假设客户端发起大容量数据文件传输请求的时间为2020年8月18日13时35分,以1小时为传输时间段,则对应当前传输时间(2020年8月18日13时35分)的查询时间段起始点为13时0分,查询时间段结束点为14时0分。即,查询今天(18日)13时0分至14时0分、昨天(17日)13时0分至14时0分、前天(16日)13时0分至14时0分以及再之前的日期的13时0分至14时0分的历史传输参数,从这些历史传输参数中获取一组或多组包括分片大小、传输线程数、响应时间和重试次数的历史参数向量。假设只获取到了17日和16日的历史参数向量,即历史参数向量的组数为2,由于历史参数向量中包括分片大小Mt、线程数Pt、响应时间Rt和重试次数Ct,因此使用加权平均平滑公式和17日以及16日的历史参数向量中的分片大小Mt、线程数Pt、响应时间Rt和重试次数Ct,确定前传输参数中的分片大小m、线程数p、响应时间r和重试次数c。
其他与数据传输以及带宽相关的参数也可以通过上述公式进行计算得到。
步骤103,根据当前传输参数,对待传输数据进行初始分片后传输。
根据客户端之前计算得到的分片大小m,对待传输的大容量数据文件进行分片,得到分片数据,根据之前计算得到的线程数p、响应时间r和重试次数c对传输参数进行设置,以传输大容量数据文件的分片数据至服务端。其中,在判断当前传输状态之前,对待传输数据进行的分片,为初始分片。
若在历史传输记录中未查询到与当前传输时间对应的历史传输参数,则使用预设传输参数直接作为当前传输参数。即客户端无法从历史传输记录中获取与接收文件的服务端对应的历史传输参数,则使用预设值好的传输参数,对待传输的大容量数据文件进行分片,对传输参数进行设置,传输大容量数据文件的分片至服务端。
步骤104,判断当前传输状态是否正常。
判断待传输数据的分片数据在传输过程中,是否出现超时错误的异常情况。具体地,判断传输数据的分片传输是否正常,是否出现超时的异常情况。其中,超时的异常情况包括:是否出现超时错误,是否超过重试次数,是否超过响应时间等。
步骤105,若正常,则按照第一预设规则调整当前传输参数,根据按照第一预设规则调整后的当前传输参数,对剩余的待传输数据进行二次分片后传输。按照第一预设规则增加当前传输参数中的分片大小和传输线程数,以增加的分片大小和传输线程数为当前传输参数,对剩余的所述待传输数据进行二次分片后传输。其中,根据调整后的当前传输参数,对剩余的待传输数据进行分片,为二次分片。
其中,在根据调整后的当前传输参数,对剩余的所述待传输数据进行二次分片后传输之后,继续次执行步骤104的判断,根据传输状态是否正常再选择是否执行步骤105,如此循环。
具体地,按照第一预设规则增加当前传输参数中的分片大小和传输线程数,包括:若传输状态正常,没有出现超时的异常情况,即,没有出现超时错误,没有超过重试次数也没有超过响应时间等参数,则按照第一预设规则中预设置的增量比率和增量值调整当前传输参数。也可以只以没有出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态正常的判断标准。
在增加当前传输参数中的分片大小和传输线程数之外,还包括调整(如增加或减小)响应时间和重试次数。响应时间和重试次数是否调整,以及是增加还是减小,可以根据需要具体设置。
以对分片大小、响应时间和重试次数均进行增加的调整为例。
分片大小、响应时间和重试次数的增量比率可以为5%、10%、15%以及20%等,也可以对分片大小、响应时间和重试次数分别设置对应的增量比率。以分片大小、响应时间和重试次数的增量比率均为10%为例,则分片大小m经过调整后,为(1+0.1)m,响应时间r经过调整后,为(1+0.1)r,重试次数c经过调整后,为(1+0.1)c。线程数、响应时间和重试次数的增量值可以按照固定数值增加。假设线程数的增量值为1,响应时间的增量值为5毫秒(ms),重试次数的增量值为5,则调整后的线程数为p+1,响应时间为r+5毫秒,重试次数为c+5。
根据进行增量调整后的当前传输参数对还没传输完的剩下的待传输数据进行对应的分片和发送。对分片进行发送时,其当前传输参数为调整后当前传输参数。即,使用调整后的线程数为p+1,响应时间为r+5毫秒,重试次数为c+5的传输参数传输分片大小为(1+0.1)m的分片。
在进行增量(增加当前传输参数中的分片大小和传输线程数)之后,还继续判断当前传输状态是否正常。若传输状态正常,则继续按照第一预设规则,增加当前传输参数中的分片大小、传输线程数、响应时间和重试次数,根据增量调整后的分片大小、传输线程数、响应时间和重试次数,对还没传输完的剩余的待传输数据进行对应的二次分片和传输。若直至数据传输完成,均未出现不正常的传输状态,则保存数据传输完成时的当前传输参数。若出现了不正常的传输状态,则保存当前传输参数至历史传输记录,使用当前传输参数继续传输剩余的待传输数据,或对当前传输参数进行减量调整后,保存进行减量调整后的当前传输参数,并使用进行减量调整后的当前传输参数对剩余的待传输数据进行二次分片和传输。
在步骤104,判断当前传输状态是否正常之后,还包括:
若异常,则保存当前传输参数至历史传输记录,使用当前传输参数继续传输剩余的待传输数据。
上述步骤即在根据传输数据的分片传输是否正常,是否出现超时错误,是否超过重试次数,是否超过响应时间等判断传输状态是否正常,之后,若传输状态不正常,即超时错误、重试次数以及响应时间等参数若均出现和超过,或其中之一出现或超过(即判断传输数据的分片传输是否正常,也可以只以出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态不正常的判断标准),则继续使用当前传输参数传输分片数据,不再进行调整,直至传输完成,并保存当前传输参数。
若出现异常情况,也可以选择下述两种减量方法之一,进行后续传输,以及对调整后的参数进行保存。两种减量方法包括:使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,或调整当前传输参数,减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数。响应时间和重试次数是否调整,以及是增加还是减小,可以根据需要具体设置。
其中,使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,表示,如果当前传输参数为调整后的传输参数,则使用在当前传输参数调整之前的传输参数作为调整后的当前传输参数,进行数据传输。即,假设当前传输参数为:分片大小为(1+0.1)m,响应时间为(1+0.1)r,重试次数c为(1+0.1)c,线程数为p+1;则在当前传输参数调整之前的传输参数为:分片大小为m,响应时间为r,重试次数为c,线程数为p;使用这些参数作为调整后的传输参数,传输数据,并保存这些参数,之后不再调整,直至数据传输完成。
调整当前传输参数,减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数,表示,根据预设置的减量比率和减量值,对当前传输参数进行调整,减小分片大小、减少响应时间、重试次数和线程数。减量比率可以是5%、10%、15%以及20%等。减量值可以是对应减少响应时间、重试次数和线程数的固定值。对当前传输参数进行减量调整后,使用并保存减量调整后的当前传输参数传输数据,之后不再调整,直至数据传输完成。
在根据上述两种减量方法进行调整后,保存调整后的当前传输参数至客户端的历史传输记录,用于之后的数据传输,并且不再对当前传输参数进行调整。保存的调整后的当前传输参数已经未调整的当前传输参数均与传输时间段对应。
即,在传输状态不正常的时候,一共有三种可选方法。
根据进行减量调整后的当前传输参数对还没传输完的剩余的待传输数据进行对应的二次分片后传输。根据选择的上述三种方法之一,对分片进行发送时,其当前传输参数为调整后当前传输参数或不进行调整的当前传输参数。
本申请实施例利用传输网络的时段性特征,根据传输网络的普适性特征,通过历史传输参数,确定当前传输参数,再根据当前传输参数对待传输数据进行分片后传输,从而能够避免传统的朴素分片方式由于不考虑当前带宽的情况直接分片,导致的过多的分片传输请求尝试而增加的时间损耗,弥补了现有分片传输方案传输效率低下、带宽利用率低下的不足;通过判断当前传输状态,对网络实时参数的量化分析最优化分片传输策略,动态调整当前传输参数和分片大小,在跨局域网或跨数据中心的大容量数据传输场景下,能够最大限度地利用网络带宽,从而减少传输时间,提升传输效率,提高带宽利用率,减少传输延迟,使分片传输策略、网络传输效率和带宽利用率达到最优,从而提升传输方案鲁棒性,保证连接高可用,并且在跨局域网或跨数据中心的大容量数据传输场景下,具有传输网络的普适性特征。
大多数传输网络都有潮汐性的特点,即在固定的时间段有相似的周期性传输性能。其原因在于网络负载和使用者的作息以及使用习惯有很大的相关性。比如跨洋网络通常在中午十二点左右达到传输的峰值。针对这一网络特征,利用同一时段网络参数的历史传输参数优化分片传输过程中的策略,一方面能提高传输成功率,另外一方面提高网络传输的效率。
基于历史传输记录中的历史传输参数,在传输大容量数据文件时,利用网络传输时段性的特征对大容量数据文件进行动态的实时智能分片传输,有效利用网络带宽。通过记录并读取当前时间段的历史传输记录,最优化当前时间段的分片传输策略。同时,小幅度调整当前传输参数,直到出错重试率上升,从而在最优传输策略(参数)的基础上进一步优化分片策略。通过最优化分片传输策略,不仅提高了大容量数据文件的传输成功率,而且提升了网络的传输效率。
如图3所示,在一个实施例中,提供了一种数据传输系统,包括:
查询模块301,用于查询历史传输记录,获取历史传输参数;
判断计算模块302,用于根据历史传输参数,确定当前传输参数;判断当前传输状态是否正常,若正常,则按照第一预设规则调整当前传输参数;
传输模块303,用于根据当前传输参数,对待传输数据进行初始分片后传输;根据调整后的当前传输参数,对剩余的待传输数据进行二次分片后传输。
查询模块301包括:
数据查询单元,用于查询历史传输记录;
数据提取单元,用于从历史传输记录中获取历史传输参数,将历史传输参数发送至判断计算模块302。
当数据传输系统(客户端)准备跨局域网或跨数据中心进行大容量数据文件的传输时,数据传输系统需要先通过数据查询单元对数据库进行查询,再通过数据提取单元从历史传输记录中获取与文件接收端(接收文件的服务端)对应的历史传输参数。历史传输参数即为在此之前,准备发大容量数据文件传输的数据传输系统与将要接收文件的服务端之间,进行大容量数据文件传输时的历史传输参数。
判断计算模块302包括:
参数确定单元,用于根据历史传输参数,使用加权平均平滑公式,确定当前传输参数,将当前传输参数发送至传输模块303;
状态判断单元,用于判断当前传输状态是否正常,将传输状态的判断结果发送至参数调整单元;
参数调整单元,用于根据传输状态的判断结果,按照第一预设规则调整当前传输参数,将调整后的当前传输参数发送至传输模块303。
上述参数确定单元,具体地,从历史传输参数中,获取一组或多组历史参数向量,其中,参数向量包括:分片大小、传输线程数、响应时间和重试次数等与数据传输以及带宽相关的参数。根据获取的一组或多组历史参数向量,使用加权平均平滑公式,计算当前传输参数。加权平均平滑公式为:
其中,为当前传输参数,i为历史参数向量的组数,为历史参数向量,ai为加权分量,通常情况下,设置为时间越近,权值越高,n为正整数,t为时间,t0为对应当前传输时间的查询时间段起始点,即为当前传输时间对应的一个传输时间段,传输时间段可以是30分钟、1小时或2小时等。T0为查询时间段间隔周期,通常以24小时为一个间隔周期。假设客户端发起大容量数据文件传输请求的时间为2020年8月18日13时35分,以1小时为传输时间段,则对应当前传输时间(2020年8月18日13时35分)的查询时间段起始点为13时0分,查询时间段结束点为14时0分。即,查询今天(18日)13时0分至14时0分、昨天(17日)13时0分至14时0分、前天(16日)13时0分至14时0分以及再之前的日期的13时0分至14时0分的历史传输参数,从这些历史传输参数中获取一组或多组包括分片大小、传输线程数、响应时间和重试次数的历史参数向量。假设只获取到了17日和16日的历史参数向量,即历史参数向量的组数为2,由于历史参数向量中包括分片大小Mt、线程数Pt、响应时间Rt和重试次数Ct,因此使用加权平均平滑公式和17日以及16日的历史参数向量中的分片大小Mt、线程数Pt、响应时间Rt和重试次数Ct,确定前传输参数中的分片大小m、线程数p、响应时间r和重试次数c。
其他与数据传输以及带宽相关的参数也可以通过上述公式进行计算得到。
上述状态判断单元,具体地,通过判断当前传输状态是否正常,是否出现超时的异常情况。其中,超时的异常情况包括:是否出现超时错误,是否超过重试次数,是否超过响应时间等,确定当前传输状态是否正常。若没有出现超时错误,没有超过重试次数也没有超过响应时间等参数,则当前传输状态正常,将当前传输状态发送至参数调整单元;传输状态的判断也可以只以未出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态是正常的判断标准。若出现超时错误,超过重试次数并且超过响应时间等参数,则传输状态不正常,将传输状态发送至参数调整单元;传输状态的判断也可以只以出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态不正常的判断标准。
上述参数调整单元,具体地,根据传输状态,对当前传输参数进行调整,将调整后的当前传输参数发送至传输模块303。判断当前传输状态是否正常,若正常,则按照第一预设规则调整当前传输参数。
判断待传输数据的分片数据在传输过程中,是否出现超时错误的异常情况,若无(传输状态正常),则按照第一预设规则调整当前传输参数(对当前传输参数进行增量调整),增加当前传输参数中的分片大小和传输线程数。具体地,判断传输数据的分片传输是否正常,是否出现超时错误,是否超过重试次数,是否超过响应时间等,若传输状态正常,没有出现超时的异常情况,即,没有出现超时错误,没有超过重试次数也没有超过响应时间等参数,则按照按照第一预设规则预设置的增量比率和增量值调整当前传输参数。也可以只以没有出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态正常的判断标准。分片大小、响应时间和重试次数的增量比率可以为5%、10%、15%以及20%等,也可以对分片大小、响应时间和重试次数分别设置对应的增量比率。以分片大小、响应时间和重试次数的增量比率均为10%为例,则分片大小m经过调整后,为(1+0.1)m,响应时间r经过调整后,为(1+0.1)r,重试次数c经过调整后,为(1+0.1)c。线程数、响应时间和重试次数的增量值可以按照固定数值增加。假设线程数的增量值为1,响应时间的增量值为5毫秒(ms),重试次数的增量值为5,则调整后的线程数为p+1,响应时间为r+5毫秒,重试次数为c+5。
在增加当前传输参数中的分片大小和传输线程数之外,还包括调整(如增加或减小)响应时间和重试次数。响应时间和重试次数是否调整,以及是增加还是减小,可以根据需要具体设置。
若异常(传输状态不正常),则继续使用当前传输参数。即判断传输数据的分片传输是否正常,是否出现超时错误,是否超过重试次数,是否超过响应时间等,若传输状态不正常,即超时错误、重试次数以及响应时间等参数若均出现和超过,或其中之一出现或超过(即判断传输数据的分片传输是否正常,也可以只以出现超时错误、超过重试次数、超过响应时间或其他情况中的一项作为状态不正常的判断标准),则继续使用当前传输参数并且之后不再进行调整,将未调整(未更改)的当前传输参数发送至传输模块303,并保存当前传输参数。
也可以选择下述两种减量方法之一,进行后续传输。两种减量方法包括:使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,或调整当前传输参数,减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数。
其中,使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,表示,如果当前传输参数为调整后的传输参数,则使用在当前传输参数调整之前的传输参数作为调整后的当前传输参数,进行数据传输。即,假设当前传输参数为:分片大小为(1+0.1)m,响应时间为(1+0.1)r,重试次数c为(1+0.1)c,线程数为p+1;则在当前传输参数调整之前的传输参数为:分片大小为m,响应时间为r,重试次数为c,线程数为p;使用这些参数作为调整后的传输参数发送至传输模块303。
调整当前传输参数,减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数,表示,根据预设置的减量比率和减量值,对当前传输参数进行调整,减小分片大小、减少响应时间、重试次数和线程数。减量比率可以是5%、10%、15%以及20%等。减量值可以是对应减少响应时间、重试次数和线程数的固定值。对当前传输参数进行减量调整后,使用这些参数作为调整后的传输参数,发送至传输模块303。
参数调整单元还用于将未调整的当前传输参数,或进行减量调整后的当前传输参数发送至存储模块的历史传输记录进行保存。在根据上述两种减量方法进行调整后,或继续使用未调整的当前传输参数后,保存当前传输参数(即进行减量或未调整当前传输参数)至客户端的历史传输记录,用于之后的数据传输,并且不再对当前传输参数进行任何调整。保存的当前传输参数均与传输时间段对应。
传输模块303包括:
传输调整单元,用于根据当前传输参数,对待传输数据进行初始分片;根据第一预设规则调整后的当前传输参数,对剩余的待传输数据进行二次分片;
数据传输单元,用于传输分片后(进行初始分片或进行二次分片后)的待传输数据。
上述传输调整单元,具体用于根据当前传输参数对待传输数据进行二次分片。客户端根据之前计算得到的分片大小m,对待传输的大容量数据文件进行分片,根据之前计算得到的线程数p、响应时间r和重试次数c对传输参数进行设置,传输大容量数据文件的分片至服务端。
若在历史传输记录中未查询到与当前传输时间对应的历史传输参数,则使用预设传输参数直接作为当前传输参数。即客户端无法从历史传输记录中获取与接收文件的服务端对应的历史传输参数,则使用预设值好的传输参数,对待传输的大容量数据文件进行分片,对传输参数进行设置,传输大容量数据文件的分片至服务端。
根据当前传输参、进行增量调整或者是减量调整后的当前传输参数对还没传输完的剩下的待传输数据进行对应的分片后,通过数据传输单元发送。
状态判断单元在进行增量(增加当前传输参数中的分片大小和传输线程数)之后,还继续判断当前传输状态是否正常。若当前传输状态正常,则参数调整单元继续增加当前传输参数中的分片大小、传输线程数、响应时间和重试次数,根据增量调整后的分片大小、传输线程数、响应时间和重试次数。传输调整单元对还没传输完的剩余的待传输数据进行对应的分片后发送。若直至数据传输完成,均未出现不正常的传输状态,则参数调整单元保存数据传输完成时的当前传输参数。若出现了不正常的传输状态,则传输调整单元根据上述的两种方式调整当前传输参数,或不调整当前传输参数,参数调整单元保存进行减量调整后的当前传输参数或未进行调整的当前传输参数。
本申请实施例提供的数据传输系统的通过历史传输参数,确定当前传输参数,再根据当前传输参数对待传输数据进行分片后传输,从而能够避免传统的朴素分片方式由于不考虑当前带宽的情况直接分片,导致的过多的分片传输请求尝试而增加的时间损耗;通过判断当前传输状态,动态调整当前传输参数和分片大小,能够最大限度地利用网络带宽,从而减少传输时间,提升传输效率,提高带宽利用率,减少传输延迟。
在一个实施例中,提出了一种计算机设备,如图4所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种数据传输方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种数据传输方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:查询历史传输记录,获取历史传输参数;根据历史传输参数,确定当前传输参数;根据当前传输参数对待传输数据进行分片后传输;判断当前传输状态是否正常,若正常,则按照第一预设规则调整当前传输参数;根据调整后的当前传输参数对待传输数据进行分片后传输。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,如图5所示,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:查询历史传输记录,获取历史传输参数;根据历史传输参数,确定当前传输参数;根据当前传输参数对待传输数据进行初始分片后传输;判断当前传输状态是否正常,若正常,则按照第一预设规则调整当前传输参数;根据调整后的当前传输参数对剩余的待传输数据进行二次分片后传输。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种数据传输方法,其特征在于,包括:
查询历史传输记录,获取历史传输参数;
根据所述历史传输参数,确定当前传输参数;
根据所述当前传输参数,对待传输数据进行初始分片后传输;
判断当前传输状态是否正常;
若正常,则按照第一预设规则增加当前传输参数中的分片大小以及传输线程数、和/或调整响应时间以及重试次数,并基于修改后的传输参数对剩余的所述待传输数据进行二次分片后传输;
若异常,则保存当前传输参数至所述历史传输记录,使用当前传输参数继续传输剩余的待传输数据;或者使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,以继续传输剩余的待传输数据;或者减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数,以继续传输剩余的待传输数据。
2.根据权利要求1所述的数据传输方法,其特征在于,所述根据所述历史传输参数,确定当前传输参数,包括:
从所述历史传输参数中,获取一组或多组历史参数向量,
根据获取的所述一组或多组历史参数向量,使用加权平均平滑公式,计算当前传输参数。
3.根据权利要求2所述的数据传输方法,其特征在于,所述历史参数向量和当前传输参数均包括:分片大小、传输线程数、响应时间和/或重试次数。
4.根据权利要求1所述的数据传输方法,其特征在于,所述判断当前传输状态是否正常,包括:
判断待传输数据的分片数据在传输过程中,是否出现超时的异常情况。
5.根据权利要求1所述的数据传输方法,其特征在于,在所述根据所述历史传输参数,确定当前传输参数之前,还包括:
若在历史传输记录中未查询到与当前传输时间对应的所述历史传输参数,则使用预设传输参数作为当前传输参数。
6.一种数据传输系统,其特征在于,包括:
查询模块,用于查询历史传输记录,获取历史传输参数;
判断计算模块,用于根据所述历史传输参数,确定当前传输参数;判断当前传输状态是否正常,若正常,则按照第一预设规则增加当前传输参数中的分片大小以及传输线程数、和/或调整响应时间以及重试次数,并利用传输模块基于修改后的传输参数对剩余的待传输数据进行二次分片后传输;
所述传输模块,用于若异常,则保存当前传输参数至所述历史传输记录,使用当前传输参数继续传输剩余的待传输数据;或者使用最近一次进行当前参数调整之前的当前传输参数作为调整后的当前传输参数,以继续传输剩余的待传输数据;或者减少当前传输参数中的分片大小和传输线程数作为调整后的当前传输参数,以继续传输剩余的待传输数据。
7.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至5中任一项权利要求所述的数据传输方法的步骤。
8.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至5中任一项权利要求所述的数据传输方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011099350.XA CN112152759B (zh) | 2020-10-14 | 2020-10-14 | 一种数据传输方法、数据传输系统、设备及存储介质 |
PCT/CN2020/135265 WO2021189957A1 (zh) | 2020-10-14 | 2020-12-10 | 一种数据传输方法、数据传输系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011099350.XA CN112152759B (zh) | 2020-10-14 | 2020-10-14 | 一种数据传输方法、数据传输系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112152759A CN112152759A (zh) | 2020-12-29 |
CN112152759B true CN112152759B (zh) | 2022-10-21 |
Family
ID=73951814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011099350.XA Active CN112152759B (zh) | 2020-10-14 | 2020-10-14 | 一种数据传输方法、数据传输系统、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112152759B (zh) |
WO (1) | WO2021189957A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113518108A (zh) * | 2021-04-23 | 2021-10-19 | 北京奇艺世纪科技有限公司 | 分片上传的方法、装置、设备及存储介质 |
CN113595685A (zh) * | 2021-07-15 | 2021-11-02 | 上海晶赞融宣科技有限公司 | 数据传输方法及装置、存储介质、终端 |
CN114221954A (zh) * | 2021-12-07 | 2022-03-22 | 中国电信股份有限公司 | 文件传输方法及装置、电子设备及存储介质 |
CN114339863A (zh) * | 2021-12-27 | 2022-04-12 | 浙江大华技术股份有限公司 | 上行数据的传输方法、装置、存储介质及电子装置 |
CN114449041A (zh) * | 2021-12-30 | 2022-05-06 | 东软集团股份有限公司 | 数据传输方法、装置、存储介质及电子设备 |
CN114338826A (zh) * | 2021-12-31 | 2022-04-12 | 海光信息技术股份有限公司 | 数据传输方法、装置、系统及相关设备 |
CN114817110B (zh) * | 2022-04-26 | 2023-04-25 | 地平线(上海)人工智能技术有限公司 | 一种数据传输方法及装置 |
CN115065676A (zh) * | 2022-05-17 | 2022-09-16 | 深圳市绿联科技股份有限公司 | 一种上传文件的方法、装置以及电子设备 |
CN115576995B (zh) * | 2022-11-09 | 2023-06-09 | 广州海量数据库技术有限公司 | 一种基于OpenGauss数据库的流数据加载方法 |
CN115859394B (zh) * | 2022-12-15 | 2023-11-21 | 深圳市数存科技有限公司 | 一种基于边缘计算的数据安全存储系统及方法 |
CN116991337B (zh) * | 2023-09-27 | 2023-12-26 | 深圳市凌壹科技有限公司 | 一种远程教育系统的教育资源的云存储方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101114867A (zh) * | 2006-07-25 | 2008-01-30 | 深圳Tcl工业研究院有限公司 | 一种多信道同步传输的方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101848067B (zh) * | 2010-06-22 | 2015-01-28 | 中兴通讯股份有限公司 | 一种自适应带宽的数据传输方法及系统 |
WO2013078558A1 (en) * | 2011-11-28 | 2013-06-06 | Jigsee Inc. | Method of determining transport parameters for efficient data transport across a network |
CN104967635B (zh) * | 2014-05-22 | 2017-04-19 | 腾讯科技(深圳)有限公司 | 一种数据传输方法及装置 |
EP3433958B1 (en) * | 2016-03-24 | 2020-05-13 | Telefonaktiebolaget LM Ericsson (publ) | A method and apparatus for determining a value for a transmission parameter |
CN109085995B (zh) * | 2017-06-14 | 2022-02-01 | 中国电信股份有限公司 | 数据动态分片的存储方法、装置和系统 |
US11210211B2 (en) * | 2017-08-21 | 2021-12-28 | Western Digital Technologies, Inc. | Key data store garbage collection and multipart object management |
CN109639745A (zh) * | 2019-02-27 | 2019-04-16 | 同济汽车设计研究院有限公司 | 一种断点续传的无人车航线数据传输系统及其方法 |
CN110661727B (zh) * | 2019-08-14 | 2022-09-30 | 平安普惠企业管理有限公司 | 数据传输优化方法、装置、计算机设备和存储介质 |
CN111756646B (zh) * | 2020-07-08 | 2023-09-29 | 腾讯科技(深圳)有限公司 | 网络传输控制方法、装置、计算机设备及存储介质 |
-
2020
- 2020-10-14 CN CN202011099350.XA patent/CN112152759B/zh active Active
- 2020-12-10 WO PCT/CN2020/135265 patent/WO2021189957A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101114867A (zh) * | 2006-07-25 | 2008-01-30 | 深圳Tcl工业研究院有限公司 | 一种多信道同步传输的方法及系统 |
Non-Patent Citations (1)
Title |
---|
综合智能型电力实时监测系统;杨震祥;《新疆电力》;20040615(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112152759A (zh) | 2020-12-29 |
WO2021189957A1 (zh) | 2021-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112152759B (zh) | 一种数据传输方法、数据传输系统、设备及存储介质 | |
US9313236B2 (en) | Determining an efficient keep-alive interval for a network connection | |
CN110858843B (zh) | 业务请求处理方法、装置及计算机可读存储介质 | |
WO2010100859A1 (ja) | 分散システム | |
US20090248865A1 (en) | Load distribution method, load distribution device, and system including load distribution device | |
CN110460534B (zh) | 一种请求消息上报方法、装置、设备及存储介质 | |
CN112612618B (zh) | 接口限流方法、装置、计算机设备和存储介质 | |
CN108494788A (zh) | 数据的传输方法、数据传输装置及计算机可读存储介质 | |
CN109756464B (zh) | 一种通信方法及服务器、客户端 | |
CN111291252A (zh) | 一种每秒查询率的调整方法、装置、电子设备及存储介质 | |
CN112491951B (zh) | 对等网络中的请求处理方法、服务器及存储介质 | |
CN113467969A (zh) | 一种处理消息堆积的方法 | |
CN116031965B (zh) | 充电方法、装置、电源适配器和存储介质 | |
CN114826982B (zh) | 一种微服务场景下的自适应心跳包调节方法 | |
CN111949417A (zh) | 消息发送方法、存储介质 | |
US20050047418A1 (en) | Packet receiving method of mobile terminal | |
CN111309442A (zh) | 微服务容器数量的调整方法、装置、系统、介质及设备 | |
CN112395053A (zh) | 数据处理方法及装置 | |
CN114666318B (zh) | 流媒体数据的下载方法、装置、电子设备及存储介质 | |
CN109391682B (zh) | 一种信息处理方法及服务器集群 | |
CN110636104B (zh) | 一种资源请求方法、电子设备及存储介质 | |
JP2004179983A (ja) | ネットワーク機器制御システム | |
CN113805802A (zh) | 访问限流的方法、服务器及存储介质 | |
CN114500663B (zh) | 内容分发网络设备的调度方法、装置、设备及存储介质 | |
CN113873562B (zh) | 应用于双卡双通终端的编码控制方法、装置、系统和基站 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |