CN104168081B - 一种文件传输方法及装置 - Google Patents

一种文件传输方法及装置 Download PDF

Info

Publication number
CN104168081B
CN104168081B CN201310186433.6A CN201310186433A CN104168081B CN 104168081 B CN104168081 B CN 104168081B CN 201310186433 A CN201310186433 A CN 201310186433A CN 104168081 B CN104168081 B CN 104168081B
Authority
CN
China
Prior art keywords
transmission
state
fragment
document
size
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
Application number
CN201310186433.6A
Other languages
English (en)
Other versions
CN104168081A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310186433.6A priority Critical patent/CN104168081B/zh
Priority to PCT/CN2014/076012 priority patent/WO2014187220A1/en
Priority to US14/461,525 priority patent/US9967315B2/en
Publication of CN104168081A publication Critical patent/CN104168081A/zh
Application granted granted Critical
Publication of CN104168081B publication Critical patent/CN104168081B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/189Transmission or retransmission of more than one copy of a message
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Abstract

本发明涉及一种文件传输方法,包括:获取文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;根据该传输参数计算速率变化指数;判断该速率变化指数是否小于第一阈值,若是,则更新当前传输状态为一个不同的状态;获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片进行传输。本发明还提供一种文件传输装置。利用本发明可以使分片大小适应网络质量和带宽的要求,从而提升网络在传输文件时的有效带宽和文件的传输速度。

Description

一种文件传输方法及装置
技术领域
本发明涉及互联网技术领域,特别涉及一种文件传输方法及装置。
背景技术
目前,在互联网下进行文件传输时,对被传输文件的处理基本上都是将文件等分成若干个分片按顺序进行传输,或者不分片而直接将整个文件放在一个数据包里进行传输。若采用不分片的方式传输文件,在文件较大时,文件传输的失败率会增高,所带来的传输代价及重传代价也都会增大。而经大量测试发现,在不同质量和带宽的网络下,文件分片的大小只有达到某一个值时,传输速率才能达到该网络下的最大值。因此,采用固定大小的分片进行传输时,如果网络质量很好,而分片的大小相对较小时,就可能会限制传输速率。尤其是在网络带宽和质量经常变化的移动互联网中,若分片的大小不合适,就会使得网络不能发挥最大的传输能力,无法提升文件的传输速度。
发明内容
有鉴于此,有必要提供一种文件传输方法及装置,可以使文件的当前待传输分片的大小适应网络质量和带宽的要求,从而提升网络在传输文件时的有效带宽和文件的传输速度。
一种文件传输方法,该方法包括:获取步骤:获取待传输至接收端的文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;计算步骤:根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率;第一判断步骤:判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态;第一设定步骤:获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;及截取步骤:按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片进行传输。
一种文件传输装置,包括:获取模块,用于获取待传输至接收端的文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;计算模块,用于根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率;第一判断模块,用于判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态;第一设定模块,用于获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;及截取模块,用于按照所设定的该当前待传输分片的大小从该文件中获取当前待传输的分片进行传输。
相对于现有技术,本发明可以根据文件中已完成传输的分片的传输参数动态地设定文件当前待传输分片的大小,使该当前待传输分片的大小能够适应网络质量和带宽的要求,从而提升网络在传输文件时的有效带宽和文件的传输速度。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为本发明第一实施例提供的文件传输方法执行时的环境示意图。
图2为本发明第一实施例提供的文件传输方法的流程图。
图3为本发明第二实施例提供的文件传输方法的流程图。
图4为图3中检查文件是否已传输完成的方法的流程图。
图5为本发明第三实施例提供的文件传输方法的流程图。
图6为本发明第四实施例提供的文件传输方法的流程图。
图7为本发明第五实施例提供的文件传输方法的流程图。
图8为本发明第六实施例提供的文件传输方法的流程图。
图9为本发明第七实施例提供的文件传输方法的流程图。
图10为本发明第八实施例提供的文件传输装置的框图。
图11为本发明第九实施例提供的文件传输装置的框图。
图12为本发明第十实施例提供的文件传输装置的框图。
图13为本发明第十一实施例提供的文件传输装置的框图。
图14为本发明第十二实施例提供的文件传输装置的框图。
图15为本发明第十三实施例提供的文件传输装置的框图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
第一实施例
本发明第一实施例提供一种文件传输方法,其可由一发送端执行,用于将文件发送至一个接收端中。上述的发送端与接收端例如是计算机、移动电子终端或者其他类似的运算装置。参阅图1所示,其为上述的文件传输方法执行时的环境示意图。发送端110通过网络10与接收端120相连。该网络10可为任意的网络连接方式,例如互联网(Internet)、移动互联网(如电信运营商提供的2G、3G网络)、局域网(有线或者无线)等。
以下结合具体的实施例对上述的文件传输方法详细描述如下:
图2为第一实施例提供的文件传输方法的流程图,该文件传输方法包括以下步骤:
步骤S101,从待传输至接收端120的文件中提取一个分片;
步骤S102,将该分片提交至待传输队列,并监控该分片是否传输成功;
步骤S103,若该分片未传输成功,则判断该分片的重传次数是否达到预设的次数阈值;
步骤S104,若该分片的重传次数未达到该次数阈值,则在等待一段预设时间后重新执行所述步骤S102,并更新该分片的重传次数。
按照上述的文件传输方法,在文件的单个分片传输失败后,将等待一段时间再重传该分片,相比于传统的一旦传输失败就立刻重传分片的方式,该方法能够提高文件的单个分片的传输成功率,进而提升该文件的传输成功率。
在一些实例中,上述方法的各步骤的实现细节如下:
步骤S101所述的文件可以是图片、文档、视频等。在本实施例中,可以按照固定的分片大小从该文件中提取分片。若为首次传输该文件,则以该文件的首字节为首个分片的起点提取该首个分片,当该首个分片成功传输到该接收端120后,再根据该固定的分片大小设置下个分片的起点,依此类推。若为失败后重新传输该文件,则依然以该文件的首字节为首个分片的起点提取该首个分片。当该首个分片成功传输到该接收端120后,接收该接收端120返回的已成功接收的该文件的字节数,再将接收端120返回的该字节数设为下个分片的起点,以实现接在已成功传输的分片后继续传输该文件,即“断点续传”。
步骤S102中,该发送端110和该接收端120可以是基于传输控制协议(Transmission Control Protocol,TCP)连接的。相应的,所述的待传输队列可以是TCP的输出缓冲区。位于该输出缓冲区内的分片会交由操作系统完成物理层的发送。具体的物理层发送过程由操作系统进行控制,在此不再赘述。
在本实施例中,还可以先对该分片和该文件进行加密处理,例如使用MD5(Message-Digest Algorithm5,消息摘要算法第五版)加密算法处理,然后将该分片及其加密值与该文件的加密值封装成一个数据包提交至该待传输队列,以确保该分片和文件在传输过程中的完整性。
监控该分片是否传输成功可以采用设定未收到回复信息的超时时间的方法。在所设定的超时时间内,若未收到该接收端120返回的回复信息,则判断该分片传输失败。若在所设定的超时时间内收到该接收端120返回的回复信息,则根据该回复信息判断该分片是否传输成功。
步骤S103所述的重传次数为该分片每次传输失败后被再次提交至该待传输队列进行传输的次数。当一个分片首次被传输时,将该分片的重传次数初始化为零,之后每当该分片传输失败后再次进行传输时,将累计该分片的重传次数。若该分片的重传次数达到该次数阈值,则判断该文件传输失败,可以结束传输或重新传输该文件。
步骤S104所述的预设时间将随着该分片的重传次数的增加而延长。延长该预设时间可以采用指数回退的方法,例如先设置一个基准时间Ti,假设该分片的重传次数为C,而该预设时间为T0,则该T0的计算公式可以是:T0=Ti*2^(C-1)。在该分片首次传输失败后等待该基准时间Ti后再重传,如果这次重传后再传输失败,则再等待比该基准时间Ti多一倍的时间后再重传该分片,依此类推。由于在网络质量较差的互联网下从故障状态恢复到正常状态需要花费较多的时间,经过预设时间的等待后再重传该分片,可以使该分片的传输成功率相较于传输失败后立刻重传该分片更高。
第二实施例
为了实现文件的完整传输,参阅图3所示,第二实施例提供一种文件传输方法,其相比于第一实施例的文件传输方法,在所述步骤S102后进一步包括:
步骤S105,若该分片传输成功,则检查该文件是否已传输完成,若该文件未传输完成,则返回步骤S101,若该文件已传输完成,则判定该文件传输成功。具体而言,参阅图4所示,所述检查该文件是否已传输完成的步骤包括:
步骤S105.1,接收该接收端120返回的回复信息,该回复信息包括该接收端120已接收该文件所有分片大小的总和。
步骤S105.2,判断该接收端120已接收该文件所有分片大小的总和与该文件的大小是否相等,若是,则判定该文件已传输完成,若否,则判定该文件未传输完成。
经过上述流程,可以确定该文件是否传输完成,若该文件未传输完成,则继续从该文件中提取下一个分片进行传输,直至文件传输完成。
第三实施例
根据第一实施例提供的文件传输方法在互联网上传输文件,是按照固定的分片大小从该文件中提取分片依次进行传输。然而在不同质量和带宽的网络下,文件分片的大小只有达到某一个值时,传输速率才能达到该网络下的最大值。因此,采用固定大小的分片进行传输时,如果网络质量很好,而分片的大小相对较小时,就可能会限制传输速率。尤其是在网络带宽和质量经常变化的移动互联网中,若分片的大小不合适,就会使得网络不能发挥最大的传输能力,无法提升文件的传输速度。
为进一步解决上述问题,参阅图5所示,本发明第三实施例提供一种文件传输方法,其相比于第一实施例的文件传输方法,所述的步骤S101进一步包括:
步骤S201,获取该文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;
步骤S202,根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率;
步骤S203,判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态;
步骤S204,获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;
步骤S205,按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片进行传输。
按照上述的文件传输方法,根据文件中已完成传输的分片的传输参数动态地设定文件当前待传输分片的大小,可以使该当前待传输分片的大小能够适应网络质量和带宽的要求,从而提升网络在传输文件时的有效带宽和文件的传输速度。
在一些实例中,上述方法的各步骤的实现细节如下:
步骤S201所述的传输速率可以根据每个已经完成传输的分片的大小和传输时间计算得出。该传输时间是指相应分片从发送出去到接收到该接收端120回复的表示接收成功的信息之间的时间段。计算出该传输速率后,还可以对该传输速率使用预先设定的平滑因子进行平滑处理。
步骤S202所述的速率变化指数表征传输速率相对于该分片大小变化的速率,即在该至少一个已经完成传输的分片中,当分片大小变化时,分片的传输速率相应的变化情况。当分片大小以一定的增长速度增长时,该传输速率也有相应的提升,则说明此时分片大小的增长速度能满足该传输速率提升的要求。而当分片大小以该增长速度增长时,该传输速率没有相应的提升,则说明此时分片大小的增长速度已不能满足传输速率提升的要求,需要放慢分片大小的增长速度或保持分片大小不变。
步骤S203所述的第一阈值用于界定分片大小的增长速度是否能够满足传输速率提升的要求。所述的当前传输状态即表示该分片大小的增长速度。在本实施例中,该当前传输状态包括第一状态、第二状态和第三状态。每个状态对应一个用于表示分片大小的增长速度的系数。其中,该第一状态和第二状态对应的系数大于1,并且第一状态对应的系数大于第二状态对应的系数,表示第一状态下分片大小的增长速度要高于第二状态下分片大小的增长速度。该第三状态对应的系数为1,表示第三状态下分片大小保持不变。
具体而言,步骤S203还包括确定当前传输状态,若该速率变化指数小于该第一阈值,且当前传输状态为该第一状态,则更新当前传输状态为该第二状态,即放慢该分片大小的增长速度。若该速率变化指数小于该第一阈值,且当前传输状态为该第二状态,则更新当前传输状态为该第三状态,即进一步放慢该分片大小的增长速度。
步骤S204获取与更新后的该当前传输状态对应的系数,并设定当前待传输分片的大小为该最近完成传输的分片大小与该系数的乘积。若该当前传输状态为第一状态或第二状态,则在该最近完成传输的分片大小的基础上相应增大以设定待传输分片的大小。若该当前传输状态为第三状态,则设定待传输分片的大小与该最近完成传输的分片大小相同。
步骤S205按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片,再执行所述步骤S102以传输该分片。
第四实施例
参阅图6所示,本发明第四实施例提供一种文件传输方法,相比于第三实施例的文件传输方法,对该当前传输状态的更新条件作出了进一步限定,以使所设定的待传输分片的大小更加适应网络的传输能力,从而提升文件的传输速度。
相比于第三实施例的文件传输方法,本实施例的文件传输方法进一步包括:
步骤S200,在执行所述步骤S201前,判断当前待传输的分片是否为该文件的首个分片,若当前待传输的分片为该文件的首个分片,则执行步骤S206,若当前待传输的分片不为该文件的首个分片,则执行所述步骤S201。
步骤S206,设定当前待传输分片的大小为当前网络类型(例如电信运营商提供的2G/3G网络、WIFI网络等)下分片大小的默认值,并将该当前传输状态更新为该第一状态,然后执行步骤S205。
步骤S207,在执行所述步骤S203之前,确定该当前传输状态是否为该第一状态或第二状态。若当前状态为第一状态或第二状态,则执行步骤S208。若当前状态为第三状态,则执行步骤S209。
步骤S208,判断该至少一个已经完成传输的分片中,每种分片大小的使用次数是否分别达到预设的第二阈值(例如2次)。若该每种分片大小的使用次数达到该第二阈值,则执行所述步骤S203,若该每种分片大小的使用次数未达到该第二阈值,则执行所述步骤S204。
步骤S209,统计该至少一个已经完成传输的分片的传输速率连续超出预设范围的次数,并判断所统计的次数是否达到预设的第三阈值。若所统计的次数未达到该第三阈值,则执行所述步骤S204。若所统计的次数达到该第三阈值,则执行所述步骤S206。
值得注意的是,由于文件待发送部分的大小可能不足以按照所设定的当前待传输分片的大小从该文件中截取当前待传输的分片,或者在按照所设定的当前待传输分片的大小从该文件中截取当前待传输的分片后,文件待发送部分的大小较小,没必要再将文件待发送部分作为下一个分片进行传输,因此,所述步骤S204和步骤S206可以进一步包括:判断该文件待发送部分的大小是否小于预设的第四阈值。若该文件待发送部分的大小小于该第四阈值,则设定当前待传输分片的大小为该文件待发送部分的大小,然后再执行所述步骤S205。若该文件待发送部分的大小不小于该第四阈值,则直接执行该步骤S205。
按照本实施的文件传输方法,对该当前传输状态的更新条件作出了进一步限定,可以使所设定的待传输分片的大小更加适应网络的传输能力,从而提升文件的传输速度。
第五实施例
参阅图7所示,本发明第五实施例提供一种文件传输方法,其相比于第四实施例的文件传输方法,进一步对所述步骤S101提出一种具体的实现方案。先设所获取的该文件中至少一个已经完成传输的分片的传输参数包括:该文件的首个分片的大小S1,在该分片大小S1下的传输速率的平滑值V1,最近完成传输的分片大小Sn,在该分片大小Sn下的传输速率的平滑值Vs,与该分片大小Sn不同且在该分片大小Sn之前最近传输的分片大小S0,在该分片大小S0下的传输速率的平滑值V0。设该当前待传输分片的大小为Sn+1,则本实施例相比于第四实施例的文件传输方法,所述步骤S101进一步包括:
步骤S11,判断该Sn是否为0。若Sn不为0,则说明当前待传输的分片不为该文件的首个分片,进入步骤S12。若Sn为0,则说明当前待传输的分片为该文件的首个分片,进入步骤S25。
步骤S12,更新该Sn的使用次数N。
步骤S13,根据所获取的该S1、V1、Sn、Vs、S0和V0计算该速率变化指数S。计算该S的公式为:S=[(Vs-V0)/V1]/[(Sn-S0)/S1]。
步骤S14,确定当前传输状态。若当前传输状态为该第一状态,则进入步骤S15。若该当前传输状态为该第二状态,则进入步骤S18。若当前传输状态为该第三状态,则进入步骤S21。
步骤S15,判断是否该Sn的使用次数N等于预设的第二阈值Nmax,且所计算出的该速率变化指数S小于预设的第一阈值Smin。若是,则进入步骤S16,若否,则进入步骤S17。
步骤S16,更新当前传输状态为第二状态,设定Sn+1为第二状态对应的系数B与Sn的乘积,然后进入步骤S27。
步骤S17,设定Sn+1为第一状态对应的系数A与Sn的乘积,然后进入步骤S27。
步骤S18,判断是否该Sn的使用次数N等于预设的第二阈值Nmax,且所计算出的该速率变化指数S小于预设的第一阈值Smin。若是,则进入步骤S19,若否,则进入步骤S20。
步骤S19,更新当前传输状态为第三状态,设定Sn+1与Sn相等,然后进入步骤S27。
步骤S20,设定Sn+1为第二状态对应的系数B与Sn的乘积,然后进入步骤S27。
步骤S21,判断Vs与第三状态下的基准速率Vstable之间的差值是否小于预设的第三阈值。若否,说明该最近完成传输的分片的传输速率超出该预设范围,则进入步骤S22。若是,说明该最近完成传输的分片的传输速率未超出该预设范围,则进入步骤S23。该第三阈值可以为该基准速率Vstable与某百分比常量D的乘积。
步骤S22,更新该最近完成传输的分片的传输速率超出该预设范围的次数M,即在该M的基础上加1。
步骤S23,将该最近完成传输的分片的传输速率超出该预设范围的次数M清零。
步骤S24,判断该最近完成传输的分片的传输速率超出该预设范围的次数M是否达到预设的第四阈值Mmax。若是,则进入步骤S25。若否,则进入步骤S26。
步骤S25,更新当前传输状态为第一状态,设定Sn+1与S1相等,然后进入步骤S27。
步骤S26,设定Sn+1与Sn相等。
步骤S27,判断该文件待发送部分的大小Fs是否小于预设的第四阈值F。若是,则进入步骤S28。若否,则进入步骤S29。
步骤S28,设定Sn+1与Fs相等。
步骤S29,返回所设定的Sn+1,按照所设定的Sn+1的分片大小从该文件中截取当前待传输的分片以进行传输。
第六实施例
根据第一实施例提供的文件传输方法在互联网上传输文件,是采用设定未收到回复信息的超时时间来监控分片是否传输成功的。该超时时间一般是根据分片大小和不同互联网的平均带宽或最近的历史带宽实测数据所估算出来的一个固定值或动态值。
然而,由于移动互联网特别是非WIFI网络的网络质量变化非常快且幅度很大,远没有有线网络那么稳定,在绝大多数时候,某一种移动互联网下的实际带宽都与统计得到的平均带宽有很大的差距。因此使用根据分片大小和互联网的平均带宽估算出来的超时时间,在文件分片的实际传输过程中将非常容易超时。而由于移动互联网的网络质量变化快而且经常是“非连续”、“跳变”的,根据历史测量得到的前一刻的带宽很难作为一个依据去估计后一刻的带宽。因此,使用设定该超时时间来监控分片是否传输成功,容易导致文件单个分片的传输失败率很高。此外,由于达到超时时间而宣告文件的分片传输失败后,数据还是会经网络传输完毕才会结束该分片的传输过程,造成这个分片的整个发送过程所产生的流量都因为传输失败的结果而浪费掉了。
为进一步解决上述问题,参阅图8所示,本发明第六实施例提供一种文件传输方法,其相比于第一实施例的文件传输方法,所述的步骤S102进一步包括:
步骤S301,在一主进程内将从该文件中提取的分片提交至该待传输队列中;
步骤S302,持续等待中断信号;
步骤S303,监控该主进程在预定时间段内是否有上行数据流量产生,若否,则发出中断等待请求,并在该中断等待请求中附加该主进程在预定时间段内未产生上行数据流量的信息;
步骤S304,若接收到该中断等待请求或者该接收端返回的回复信息,则结束该步骤S302。
按照本实施例的文件传输方法,采用监控主进程未产生上行数据流量的持续时间来判断分片是否传输成功,相比于传统的发送超时的处理方式,能够更好地适应不稳定的网络环境如移动互联网,提高分片传输的成功率,并减少在分片传输过程中由于超时问题导致的流量浪费。
在一些实例中,上述方法的各步骤的实现细节如下:
步骤S301中所述的主进程是指要传输该分片的进程。例如,某一文件传输应用所在的进程。该分片可以按照超文本传输协议(HyperText Transfer Protocol,HTTP)封装成网络数据包。
步骤S302所述的中断信号包括所述的中断等待请求或者接收端120返回的回复信息等等。此外,在步骤S302执行的过程中,还可以中断主进程的执行。
步骤S303可以在不同于该主进程的一个新的监控进程中执行。所述的预定时间段是可以允许的网络超时时间,其可以按照具体的需要进行设定,例如可以选5秒。所述的上行数据流量是主进程将该分片提交给该待传输队列后,该待传输队列将该分片交由操作系统通过网络传输出去而产生的。
若主进程在该预定时间段内未产生上行数据流量,则说明主进程在该预定时间段内没有任何一个字节被通过网络传输出去,意味着本次该分片传输失败,因此需要发出该中断等待请求以使主进程停止等待中断信号。在发出该中断等待请求后,该步骤S303结束。
若主进程在该预定时间段内有上行数据流量产生,则说明主进程在该预定时间段内有数据被通过网络传输出去,意味着该分片正在发送过程中。为了避免用户由于等待而产生的焦虑心情,若主进程在该预定时间段内有上行数据流量产生,步骤S303还可以通过动画、文字等方式提示用户该文件正在发送中。
步骤S304中,若是由于接收到该中断等待请求而结束步骤S302,则根据该中断等待请求中附加的该主进程在预定时间段内未产生上行数据流量的信息,返回该分片传输失败的传输结果。若是由于接收到接收端120返回的回复信息而结束步骤S302,则根据该回复信息判断该接收端120是否成功接收该分片。若该接收端120未成功接收该分片,也返回该分片传输失败的传输结果。若该接收端120已成功接收该分片,则返回该分片传输成功的传输结果。当接收到该接收端120返回的回复信息后,触发步骤S303结束。
此外,在步骤S302后,还可以有一个监控是否发生网络异常,例如网络连接断开、网络连接受限制等网络异常的步骤。若发生该网络异常,则结束步骤S302和步骤S303,并返回该分片传输失败的传输结果。
第七实施例
参阅图9所示,本发明第七实施例提供一种文件传输方法,其相比于第六实施例的文件传输方法,进一步对所述步骤S303提出一种实现方案:通过周期性地监控该主进程的上行数据流量来判断主进程在预定时间段内是否有上行数据流量产生。具体而言,该步骤S303包括:
步骤S1,启动所述的监控进程,记录该主进程已产生的上行数据流量为TBo。启动一个计数器,将该计数器的值T的初始值赋为零,该计数器用于对主进程未产生上行数据流量的持续时间进行计时。启动一个定时器(Timer),该定时器用于每经过一段预设时间t触发一次步骤S2。
步骤S2,每当被该定时器触发时,记录主进程已产生的上行数据流量TBn,并获取上一次被该定时器触发时所记录的主进程已产生的上行数据流量TBo。若本次为第一次被该定时器触发,则获取该监控进程启动时所记录的主进程已产生的上行数据流量TBo。
步骤S3,判断在本次被定时器触发前的预设时间t内主进程产生的上行数据流量TB是否为零,该TB可以通过求解所述TBn与TBo之差值而得出。若该TB不为零,则执行步骤S4,若该TB为零,则执行步骤S5。
步骤S4,将计数器的值T清零,并提示用户该文件正在发送中。该TB不为零说明在本次被定时器触发前的预设时间t内主进程有上行数据流量产生,该文件正在发送中,因此需要将该计数器的值T清零,以便对该主进程未产生上行数据流量的持续时间重新进行计时。
步骤S5,将计数器的值T更新为T+t,并判断计数器更新后的值T是否小于预设上限阈值Tmax。该预设上限阈值Tmax为所述预设时间t的整数倍。若T小于该Tmax,则返回步骤S2。若T不小于该Tmax,则执行步骤S6。
步骤S6,发出该中断等待请求,并在该中断等待请求中附加该主进程在预定时间段内未产生上行数据流量的信息。该预定时间段即为从当前时间点起,刚刚过去的该预设上限阈值(例如5秒)的时间段。
综上所述,在第六实施例的文件传输方法的基础上,本实施例提供的文件传输方法可以进一步通过周期性地监控该主进程的上行数据流量来判断主进程在预定时间段内是否有上行数据流量产生。
第八实施例
参阅图10所示,本发明第八实施例提供一种文件传输装置100,包括提取模块101、传输模块102、判断模块103和重传模块104。可以理解,上述的各模块是指计算机程序或者程序段,用于执行某一项或多项特定的功能。此外,上述各模块的区分并不代表实际的程序代码也必须是分开的。
提取模块101,用于从待传输至接收端的文件中提取一个分片。
传输模块102,用于将该分片提交至待传输队列,并监控该分片是否传输成功。在本实施例中,还可以先对该分片和该文件进行加密处理,然后将该分片及其加密值与该文件的加密值封装成一个数据包提交至该待传输队列,以确保该分片和文件在传输过程中的完整性。
判断模块103,用于若该分片未传输成功,则判断该分片的重传次数是否达到预设的次数阈值。若该分片的重传次数达到该次数阈值,则判断该文件传输失败,可以结束传输或重新传输该文件。
重传模块104,用于若该分片的重传次数未达到该次数阈值,则在等待一段预设时间后重新执行该传输模块102,并更新该分片的重传次数。所述的预设时间将随着该分片的重传次数的增加而延长。
对于以上各模块的具体工作过程,可进一步参考本发明第一实施例提供的文件传输方法,在此不再重复。
综上所述,本实施例的文件传输装置100,在文件的单个分片传输失败后,将等待一段时间再重传该分片,相比于传统的一旦传输失败就立刻重传分片的方式,该方法能够提高文件的单个分片的传输成功率,进而提升该文件的传输成功率。
第九实施例
参阅图11所示,本发明第九实施例提供一种文件传输装置200,其相比于第八实施例的文件传输装置100,还包括:
检查模块105,用于若该分片传输成功,则检查该文件是否已传输完成。若该文件未传输完成,执行所述提取模块101。若该文件已传输完成,则判定该文件传输成功。
具体而言,该检查模块105先接收该接收端120返回的回复信息,该回复信息包括该接收端120已接收该文件所有分片大小的总和。然后,检查模块105判断该接收端120已接收该文件所有分片大小的总和与该文件的大小是否相等,若是,则判定该文件已传输完成,若否,则判定该文件未传输完成。
对于以上模块的具体工作过程,可进一步参考本发明第二实施例提供的文件传输方法,在此不再重复。
综上所述,本实施例的文件传输装置200,可以确定该文件是否传输完成,若该文件未传输完成,则继续从该文件中提取下一个分片进行传输,直至文件传输完成。
第十实施例
参阅图12所示,本发明第十实施例提供一种文件传输装置300,其相比于第八实施例的文件传输装置100,所述的提取模块101进一步包括:
获取模块301,用于获取该文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率。所述的传输速率可以根据每个已经完成传输的分片的大小和传输时间计算得出。计算出该传输速率后,还可以对该传输速率使用预先设定的平滑因子进行平滑处理。
计算模块302,用于根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率。
第一判断模块303,用于判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态。在本实施例中,该当前传输状态包括第一状态、第二状态和第三状态。每个状态对应一个用于表示分片大小的增长速度的系数。其中,该第一状态和第二状态对应的系数大于1,并且第一状态对应的系数大于第二状态对应的系数。该第三状态对应的系数为1。具体而言,若该速率变化指数小于该第一阈值,且当前传输状态为该第一状态,则更新当前传输状态为该第二状态。若该速率变化指数小于该第一阈值,且当前传输状态为该第二状态,则更新当前传输状态为该第三状态。
第一设定模块304,用于获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积。
截取模块305,用于按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片,再执行该传输模块102以传输该分片。
对于以上各模块的具体工作过程,可进一步参考本发明第三实施例提供的文件传输方法,在此不再重复。
综上所述,本实施例的文件传输装置300,根据文件中已完成传输的分片的传输参数动态地设定文件当前待传输分片的大小,可以使该当前待传输分片的大小能够适应网络质量和带宽的要求,从而提升网络在传输文件时的有效带宽和文件的传输速度。
第十一实施例
参阅图13所示,本发明第十一实施例提供一种文件传输装置400,其相比于第十实施例的文件传输装置300,所述的提取模块101进一步包括第二判断模块306、第二设定模块307、确定模块308、第三判断模块309和第四判断模块310。
第二判断模块306,用于在执行所述获取模块301之前,判断当前待传输的分片是否为该文件的首个分片。若当前待传输的分片为该文件的首个分片,则执行第二设定模块307。若当前待传输的分片不为该文件的首个分片,则执行获取模块301。
第二设定模块307,用于设定当前待传输分片的大小为当前网络类型下分片大小的默认值,并将该当前传输状态更新为该第一状态,然后执行截取模块305。
确定模块308,用于在执行第一判断模块303之前,确定当前传输状态是否为第一状态或第二状态。若该当前传输状态为该第一状态或第二状态,则执行第三判断模块309。若当前传输状态为第三状态,则执行第四判断模块310。
第三判断模块309,用于判断该至少一个已经完成传输的分片中,每种分片大小的使用次数是否分别达到预设的第二阈值。若该每种分片大小的使用次数达到该第二阈值,则执行第一判断模块303。若该每种分片大小的使用次数未达到该第二阈值,则执行第一设定模块304。
第四判断模块310,用于统计该至少一个已经完成传输的分片的传输速率连续超出预设范围的次数,并判断所统计的次数是否达到预设的第三阈值。若所统计的次数未达到该第三阈值,则执行第一设定模块304。若所统计的次数达到该第三阈值,则执行第二设定模块307。
此外,所述的第一设定模块304和第二设定模块307还用于进一步判断该文件待发送部分的大小是否小于预设的第四阈值,若是,则设定当前待传输分片的大小为该文件待发送部分的大小,然后再执行所述截取模块305。若否,则直接执行该截取模块305。
对于以上各模块的具体工作过程,可进一步参考本发明第四实施例提供的文件传输方法,在此不再重复。
综上所述,本实施的文件传输装置400对该当前传输状态的更新条件作出了进一步限定,可以使所设定的待传输分片的大小更加适应网络的传输能力,从而提升文件的传输速度。
第十二实施例
参阅图14所示,本发明第十二实施例提供一种文件传输装置500,其相比于第八实施例的文件传输装置100,所述的传输模块102进一步包括:
提交模块501,用于在一主进程内将从该文件中提取的分片提交至该待传输队列中。
等待模块502,用于持续等待中断信号。
第一监控模块503,用于监控该主进程在预定时间段内是否有上行数据流量产生,若否,则发出中断等待请求,并在该中断等待请求中附加该主进程在预定时间段内未产生上行数据流量的信息。
在发出该中断等待请求后,该第一监控模块503将停止监控该主进程在预定时间段内是否有上行数据流量产生。若监控到主进程在预定时间段内有上行数据流量产生,则第一监控模块503还可以通过动画、文字等方式提示用户该文件正在发送中。在本实施例中,该第一监控模块503可以在不同于该主进程的一个新的监控进程中执行。
第二监控模块504,用于若接收到该中断等待请求或者该接收端返回的回复信息,则触发该等待模块502停止等待该中断信号。
若是由于接收到该中断等待请求而触发该等待模块502停止等待中断信号,则根据该中断等待请求中附加的该主进程在预定时间段内未产生上行数据流量的信息,返回该分片传输失败的传输结果。
若是由于接收到接收端120返回的回复信息而触发该等待模块102停止等待中断信号,则根据该回复信息判断该接收端120是否成功接收该分片。若该接收端120未成功接收该分片,也返回该分片传输失败的传输结果。若该接收端120已成功接收该分片,则返回该分片传输成功的传输结果。此外,当接收到该接收端120返回的回复信息后,该第二监控模块504还将触发该第一监控模块503停止监控该主进程在预定时间段内是否有上行数据流量产生。
此外,该文件传输装置500还可以包括一个第三监控模块505,用于在等待模块502持续等待中断信号的过程中,监控是否发生网络异常。若监控到发生网络异常,则触发该等待模块502停止等待中断信号,以及触发该第一监控模块503结束监控该主进程在预定时间段内是否有上行数据流量产生,并返回该分片传输失败的传输结果。
对于以上各模块的具体工作过程,可进一步参考本发明第六实施例提供的文件传输方法,在此不再重复。
综上所述,本实施例的文件传输装置500,采用监控主进程未产生上行数据流量的持续时间来判断分片是否传输成功,相比于传统的发送超时的处理方式,能够更好地适应不稳定的网络环境如移动互联网,提高分片传输的成功率,并减少在分片传输过程中由于超时问题导致的流量浪费。
第十三实施例
参阅图15所示,本发明第十三实施例提供一种文件传输装置600,其相比于第十二实施例的文件传输装置500,所述的第一监控模块503包括:
启动子模块5031,用于启动所述的监控进程,记录该主进程已产生的上行数据流量为TBo,启动一个计数器,将该计数器的值T的初始值赋为零,启动一个定时器(Timer),该定时器用于每经过一段预设时间t触发一次获取子模块5032。
获取子模块5032,用于每当被该定时器触发时,记录主进程已产生的上行数据流量TBn,并获取上一次被该定时器触发时所记录的主进程已产生的上行数据流量TBo。若本次为第一次被该定时器触发,则获取该监控进程启动时所记录的主进程已产生的上行数据流量TBo。
判断子模块5033,用于判断在本次被定时器触发前的预设时间t内主进程产生的上行数据流量TB是否为零,该TB可以通过求解所述TBn与TBo之差值而得出。
提示子模块5034,用于若该TB不为零,则将计数器的值T清零,并提示用户该文件正在发送中。
更新子模块5035,用于若该TB为零,则将计数器的值T更新为T+t,并判断计数器更新后的值T是否小于预设上限阈值Tmax。若T小于该Tmax,则重新执行该获取子模块5032。
发送子模块5036,用于若T不小于该Tmax,则发出该中断等待请求,并在该中断等待请求中附加该主进程在预定时间段内未产生上行数据流量的信息。
对于以上各模块的具体工作过程,可进一步参考本发明第七实施例提供的文件传输方法,在此不再重复。
综上所述,相较于第十二实施例的文件传输装置500,本实施例提供的文件传输装置600可以进一步通过周期性地监控该主进程的上行数据流量来判断主进程在预定时间段内是否有上行数据流量产生。
此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的文件传输方法中的各种操作。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明,任何本领域技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简介修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (18)

1.一种文件传输方法,其特征在于,该方法包括以下步骤:
获取步骤:获取待传输至接收端的文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;
计算步骤:根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率,即在所述至少一个已经完成传输的分片中,当分片大小变化时,分片的传输速率相应的变化情况;
第一判断步骤:判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态;其中,所述第一阈值用于界定分片大小的增长速度是否能够满足传输速率提升的要求;所述当前传输状态用于表示分片大小的增长速度;
第一设定步骤:获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;及
截取步骤:按照所设定的该当前待传输分片的大小从该文件中截取当前待传输的分片进行传输。
2.如权利要求1所述的文件传输方法,其特征在于,所述获取步骤还包括:
对该传输速率进行平滑处理。
3.如权利要求1所述的文件传输方法,其特征在于,所述当前传输状态包括第一状态、第二状态和第三状态,其中第一状态和第二状态对应的系数大于1,并且第一状态对应的系数大于第二状态对应的系数,第三状态对应的系数为1。
4.如权利要求3所述的文件传输方法,其特征在于,在所述获取步骤前还包括:
第二判断步骤:判断当前待传输的分片是否为该文件的首个分片,若是,则执行第二设定步骤,若否,则执行该获取步骤;及
所述第二设定步骤:设定当前待传输分片的大小为当前网络类型下分片大小的默认值,并将当前传输状态更新为该第一状态,然后执行该截取步骤。
5.如权利要求4所述的文件传输方法,其特征在于,在所述第一判断步骤前还包括确定步骤:
确定当前传输状态,若该当前传输状态为该第一状态或第二状态,则执行该第一判断步骤。
6.如权利要求5所述的文件传输方法,其特征在于,在所述第一判断步骤前还包括第三判断步骤:
若该当前传输状态为该第一状态或第二状态,则判断该至少一个已经完成传输的分片中,每种分片大小的使用次数是否分别达到预设的第二阈值,若是,则执行该第一判断步骤,若否,则执行该第一设定步骤。
7.如权利要求5所述的文件传输方法,其特征在于,所述第一判断步骤包括:
若该速率变化指数小于该第一阈值,且当前传输状态为该第一状态,则更新当前传输状态为该第二状态;及
若该速率变化指数小于该第一阈值,且当前传输状态为该第二状态,则更新当前传输状态为该第三状态。
8.如权利要求5所述的文件传输方法,其特征在于,该方法还包括第四判断步骤,若该当前传输状态为该第三状态,则执行该第四判断步骤,该第四判断步骤包括:
统计该至少一个已经完成传输的分片的传输速率连续超出预设范围的次数,并判断所统计的次数是否达到预设的第三阈值,若否,则执行该第一设定步骤,若是,则执行该第二设定步骤。
9.如权利要求8所述的文件传输方法,其特征在于,所述第一设定步骤和第二设定步骤还包括:
判断该文件待发送部分的大小是否小于预设的第四阈值,若是,则设定当前待传输分片的大小为该文件待发送部分的大小。
10.一种文件传输装置,其特征在于,该装置包括:
获取模块,用于获取待传输至接收端的文件中至少一个已经完成传输的分片的传输参数,该传输参数包括分片大小以及传输速率;
计算模块,用于根据该至少一个已经完成传输的分片的传输参数计算速率变化指数,该速率变化指数表征传输速率相对于该分片大小变化的速率,即在所述至少一个已经完成传输的分片中,当分片大小变化时,分片的传输速率相应的变化情况;
第一判断模块,用于判断该速率变化指数是否小于预设的第一阈值,若是,则更新当前传输状态为一个不同的状态;其中,所述第一阈值用于界定分片大小的增长速度是否能够满足传输速率提升的要求;所述当前传输状态用于表示分片大小的增长速度;
第一设定模块,用于获取与该当前传输状态对应的系数,并设定当前待传输分片的大小为该文件中最近完成传输的分片大小与该系数的乘积;及
截取模块,用于按照所设定的该当前待传输分片的大小从该文件中获取当前待传输的分片进行传输。
11.如权利要求10所述的文件传输装置,其特征在于,所述获取模块还用于对该传输速率进行平滑处理。
12.如权利要求10所述的文件传输装置,其特征在于,所述当前传输状态包括第一状态、第二状态和第三状态,其中第一状态和第二状态对应的系数大于1,并且第一状态对应的系数大于第二状态对应的系数,第三状态对应的系数为1。
13.如权利要求12所述的文件传输装置,其特征在于,还包括:
第二判断模块,用于在执行所述获取模块之前,判断当前待传输的分片是否为该文件的首个分片,若是,则执行第二设定模块,若否,则执行该获取模块;及
所述第二设定模块,用于设定当前待传输分片的大小为当前网络类型下分片大小的默认值,并将当前传输状态更新为该第一状态,然后执行该截取模块。
14.如权利要求13所述的文件传输装置,其特征在于,还包括:
确定模块,用于确定当前传输状态,若该当前传输状态为该第一状态或第二状态,则执行该第一判断模块。
15.如权利要求14所述的文件传输装置,其特征在于,还包括:
第三判断模块,用于若该当前传输状态为该第一状态或第二状态,则判断该至少一个已经完成传输的分片中,每种分片大小的使用次数是否分别达到预设的第二阈值,若是,则执行该第一判断模块,若否,则执行该第一设定模块。
16.如权利要求14所述的文件传输装置,其特征在于,所述第一判断模块用于:
若该速率变化指数小于该第一阈值,且当前传输状态为该第一状态,则更新当前传输状态为该第二状态;及
若该速率变化指数小于该第一阈值,且当前传输状态为该第二状态,则更新当前传输状态为该第三状态。
17.如权利要求14所述的文件传输装置,其特征在于,还包括第四判断模块,用于当该当前传输状态为该第三状态时执行,该第四判断模块用于:
统计该至少一个已经完成传输的分片的传输速率连续超出预设范围的次数,并判断所统计的次数是否达到预设的第三阈值,若否,则执行该第一设定模块,若是,则执行该第二设定模块。
18.如权利要求17所述的文件传输装置,其特征在于,所述第一设定模块和第二设定模块还用于:
判断该文件待发送部分的大小是否小于预设的第四阈值,若是,则设定当前待传输分片的大小为该文件待发送部分的大小。
CN201310186433.6A 2013-05-20 2013-05-20 一种文件传输方法及装置 Active CN104168081B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310186433.6A CN104168081B (zh) 2013-05-20 2013-05-20 一种文件传输方法及装置
PCT/CN2014/076012 WO2014187220A1 (en) 2013-05-20 2014-04-23 Electronic device, storage medium and file transferrting method
US14/461,525 US9967315B2 (en) 2013-05-20 2014-08-18 Electronic device, storage medium and file transferring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310186433.6A CN104168081B (zh) 2013-05-20 2013-05-20 一种文件传输方法及装置

Publications (2)

Publication Number Publication Date
CN104168081A CN104168081A (zh) 2014-11-26
CN104168081B true CN104168081B (zh) 2018-09-07

Family

ID=51911738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310186433.6A Active CN104168081B (zh) 2013-05-20 2013-05-20 一种文件传输方法及装置

Country Status (3)

Country Link
US (1) US9967315B2 (zh)
CN (1) CN104168081B (zh)
WO (1) WO2014187220A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160057199A1 (en) * 2014-08-21 2016-02-25 Facebook, Inc. Systems and methods for transmitting a media file in multiple portions
CN105812402B (zh) * 2014-12-29 2020-04-03 腾讯科技(深圳)有限公司 基于物联网的文件传输方法和装置
CN105872001A (zh) * 2015-12-21 2016-08-17 乐视云计算有限公司 基于p2p网络的数据传输方法及装置
CN106231440A (zh) * 2016-07-22 2016-12-14 华为技术有限公司 一种流媒体文件分片下载方法、装置及终端
KR102065958B1 (ko) 2017-11-13 2020-02-11 유한회사 이노릭스 파일 전송 방법 및 이를 수행하는 시스템
CN108881454B (zh) * 2018-06-28 2021-12-14 北京珠穆朗玛移动通信有限公司 文件传输方法、移动终端及存储介质
CN112398655B (zh) * 2019-08-19 2022-06-03 中移(苏州)软件技术有限公司 一种文件传输方法、服务器及计算机存储介质
CN111314483A (zh) * 2020-03-04 2020-06-19 武汉联影医疗科技有限公司 文件归档方法、装置、计算机设备和存储介质
CN113765945A (zh) * 2020-06-01 2021-12-07 深圳兆日科技股份有限公司 文件动态分片传输方法、装置、设备和存储介质
CN112153681B (zh) * 2020-09-22 2024-02-23 北京达佳互联信息技术有限公司 资源切分方法、装置、电子设备和存储介质
CN112203322B (zh) * 2020-09-30 2023-06-30 中国联合网络通信集团有限公司 一种信道资源利用率的统计方法和装置
CN113518108A (zh) * 2021-04-23 2021-10-19 北京奇艺世纪科技有限公司 分片上传的方法、装置、设备及存储介质
CN115442312A (zh) * 2022-03-17 2022-12-06 北京车和家信息技术有限公司 车辆远程升级方法、装置、介质及设备
CN115242782B (zh) * 2022-09-21 2023-01-03 之江实验室 一种超算中心间的大文件分片传输方法和传输架构
CN115550246A (zh) * 2022-10-11 2022-12-30 缀初网络技术(上海)有限公司 基于多路径的文件传输方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101860479A (zh) * 2010-05-11 2010-10-13 杭州电子科技大学 一种改进网格环境中数据传输效率的方法
CN102170475A (zh) * 2011-04-22 2011-08-31 中兴通讯股份有限公司 一种基于p2p的文件分发系统及分片方法
CN102571966A (zh) * 2012-01-16 2012-07-11 上海方正数字出版技术有限公司 一种大型xml文件的网络传输方法
CN102801690A (zh) * 2011-05-25 2012-11-28 华为技术有限公司 流媒体的处理方法、分发服务器、客户端及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6747993B2 (en) * 2001-02-01 2004-06-08 Motorola, Inc. Method and apparatus for adjusting a communication timer in a communication network
JP2003087172A (ja) * 2001-09-07 2003-03-20 Toshiba Corp 情報通信装置、無線通信端末、情報通信プログラム
US7840646B2 (en) * 2003-10-08 2010-11-23 Yahoo! Inc. Learned upload time estimate module
US7937379B2 (en) * 2005-03-09 2011-05-03 Vudu, Inc. Fragmentation of a file for instant access
US7921196B2 (en) * 2005-04-07 2011-04-05 Opanga Networks, Inc. Adaptive file delivery with transparency capability system and method
US7500010B2 (en) * 2005-04-07 2009-03-03 Jeffrey Paul Harrang Adaptive file delivery system and method
US8438301B2 (en) * 2007-09-24 2013-05-07 Microsoft Corporation Automatic bit rate detection and throttling
US8259811B2 (en) * 2007-11-30 2012-09-04 Olympus Imaging Corp Method for determining a number of items of encoded data that can be stored in a memory, and method for controlling sizes of items of encoded image data to be stored in a memory
CN101741890B (zh) * 2008-11-19 2012-11-21 华为技术有限公司 一种实现速率控制的方法、系统和设备
US8400918B2 (en) * 2009-08-06 2013-03-19 Georgia Tech Research Corporation Video traffic smoothing
US9203892B2 (en) * 2011-04-19 2015-12-01 Accenture Global Services Limited Content transfer accelerator
CN103188622A (zh) * 2011-12-30 2013-07-03 富泰华工业(深圳)有限公司 文件收发系统和方法及其文件收发装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101860479A (zh) * 2010-05-11 2010-10-13 杭州电子科技大学 一种改进网格环境中数据传输效率的方法
CN102170475A (zh) * 2011-04-22 2011-08-31 中兴通讯股份有限公司 一种基于p2p的文件分发系统及分片方法
CN102801690A (zh) * 2011-05-25 2012-11-28 华为技术有限公司 流媒体的处理方法、分发服务器、客户端及系统
CN102571966A (zh) * 2012-01-16 2012-07-11 上海方正数字出版技术有限公司 一种大型xml文件的网络传输方法

Also Published As

Publication number Publication date
CN104168081A (zh) 2014-11-26
WO2014187220A1 (en) 2014-11-27
US20140359084A1 (en) 2014-12-04
US9967315B2 (en) 2018-05-08

Similar Documents

Publication Publication Date Title
CN104168081B (zh) 一种文件传输方法及装置
CN104184753B (zh) 一种文件传输方法及装置
CN104168093B (zh) 一种文件传输方法及装置
US10462707B2 (en) Data transmission method and apparatus
US11064330B2 (en) Methods for enabling delay-awareness in the constrained application protocol (CoAP)
CN104158760B (zh) 一种广域网tcp单边加速的方法及系统
WO2020134755A1 (zh) 数据传输方法和装置
EP2661029B1 (en) Avoiding Delayed Data
CN109951546B (zh) 基于智能合约的事务请求处理方法、装置、设备和介质
WO2023179538A1 (zh) 数据传输方法、装置、电子设备和存储介质
CN104486243A (zh) 数据传输方法、设备及系统
CN115868184A (zh) 加速面向ble连接的服务上的控制过程
EP2548359A2 (en) Method and apparatus for detecting active and orphan session-based connections
CN111478826A (zh) 丢包率确定方法、数据传输控制方法和数据传输系统
US20170171082A1 (en) Method and electronic device for updating client data
WO2021092859A1 (zh) 建立iso链路的方法和ble设备
US10425508B1 (en) System for identifying idle time of a protocol to facilitate communication using multiple protocols
US9544249B2 (en) Apparatus and method for aligning order of received packets
CN113852445B (zh) 一种提高数据传输可靠性的方法、系统、设备和存储介质
US20090106445A1 (en) Method and apparatus for model-based pageview latency management
CN113747218B (zh) 一种智能设备的控制方法、装置及存储介质和终端设备
WO2022141711A1 (zh) 区块链中交易异步执行方法、系统及相关设备
CN111222882A (zh) 基于区块链的数据传输方法、装置、设备及可读存储介质
CN111698176A (zh) 数据传输方法、装置、电子设备和计算机可读存储介质
US20180034681A1 (en) Transmission control device, transmission control method, and transmission control program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant