CN103731451A - 一种文件上传的方法及*** - Google Patents

一种文件上传的方法及*** Download PDF

Info

Publication number
CN103731451A
CN103731451A CN201210387535.XA CN201210387535A CN103731451A CN 103731451 A CN103731451 A CN 103731451A CN 201210387535 A CN201210387535 A CN 201210387535A CN 103731451 A CN103731451 A CN 103731451A
Authority
CN
China
Prior art keywords
file
uploaded
server
client
fragmentation
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.)
Granted
Application number
CN201210387535.XA
Other languages
English (en)
Other versions
CN103731451B (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
Tencent Cloud Computing Beijing 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 CN201210387535.XA priority Critical patent/CN103731451B/zh
Priority to PCT/CN2013/084894 priority patent/WO2014056428A1/zh
Publication of CN103731451A publication Critical patent/CN103731451A/zh
Priority to US14/684,149 priority patent/US10681127B2/en
Application granted granted Critical
Publication of CN103731451B publication Critical patent/CN103731451B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种文件上传的方法及***,涉及通信网络技术领域,可以在上传文件过程中降低网络资源的占用,实现数据的共享,加快上传文件的速度。本发明实施例客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,计算文件分片的校验信息,根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传文件分片;客户端的上传组件上传文件分片时,上传逻辑服务器向索引接入服务器发送待上传文件的文件标记;根据待上传文件的文件标记,下载客户端将本地保存的待上传文件的文件分片上传到存储接口服务器。本发明实施例提供的方案适合进行文件上传时采用。

Description

一种文件上传的方法及***
技术领域
本发明涉及通信网络技术领域,尤其涉及一种文件上传的方法及***。 
背景技术
当需要将本地的文件上传到云存储服务器上时,为了加快文件的上传速度,可以采用点对点(Peer to Peer,P2P)技术。即将用户待上传文件的唯一标识HASH和当前正在进行P2P网络的节点关联,这样其他正在下载或者已经下载完成的P2P节点根据待上传文件的HASH可以协助原始上传节点上传对应的文件分片。在下载客户端P2P交互数据分片时,以及在存储接口服务器的统一调度下,下载客户端复制对应的数据分片进行上传,使得加快文件的上传进度。 
现有技术可以采用私有客户端和服务器将文件上传到云存储服务器上,通过上传逻辑服务器获取上传文件的接口地址,然后本地扫描文件,对文件进行分片以及计算每个分片的校验信息,同时采用多线程的方式将每个分片根据接口地址上传到存储接口服务器上。校验信息用于在下载时校验获得的数据是否正确。 
发明人发现现有技术中至少存在如下问题:由于在国内通常采用非对称数字用户环路(Asymmetric Digital Subscriber Line,ADSL)进行数据传输,ADSL的上传速度并不快,以及存在人为限制上传速度,这导致上传带宽资源缺乏;另外,上传相同文件时,无法直接实现上传过程中数据的共享,导致每个客户端都需要单独传输一部分数据,从而使得上传文件的速度较慢。 
发明内容
本发明的实施例提供一种文件上传的方法及***,可以在上传文件过程中降低网络资源的占用,以及实现数据的共享,加快上传文件的速度。 
一方面,本发明的实施例提供一种文件上传的方法,包括: 
客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息; 
所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片; 
所述客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成; 
当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
在本发明另一实施例中,在所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之前,还包括: 
所述下载客户端向所述索引接入服务器发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一节点; 
所述索引接入服务器向索引应用服务器发送所述查询信息; 
所述索引应用服务器根据所述查询信息查询到第一节点,并通过索引接入服务器发送给所述下载客户端; 
所述下载客户端从所述第一节点上获取所述待上传文件的文件分片。 
在本发明另一实施例中,所述下载客户端本地保存的所述待上传文件的文件分片包括从所述第一节点上获取所述待上传文件的文件分片,以及所述下载客户端已经下载的所述待上传文件的文件分片。 
在本发明另一实施例中,所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器包括: 
当下载客户端查询第一节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时,所述索引接入服务器向所述下载客户端发送上传所述待上传文件的信息,以及发送所述存储接口服务器的 地址; 
当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息以及所述存储接口服务器的地址时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
在本发明另一实施例中,所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片之前,还包括: 
所述客户端的上传组件向上传逻辑服务器查询所述待上传文件是否完成上传; 
所述上传逻辑服务器通过存储索引服务器查询所述待上传文件是否完成上传; 
当所述待上传文件已经完成上传时,则所述存储索引服务器通过所述上传逻辑服务器向所述客户端的上传组件发送所述待上传文件已经上传完成的消息; 
当所述待上传文件未上传时,则所述存储索引服务器向所述上传逻辑服务器返回所述待上传文件未上传的消息;所述上传逻辑服务器接收到所述待上传文件未上传完成的消息时,向所述客户端的上传组件发送存储接口服务器的地址。 
在本发明另一实施例中,当所述待上传文件完成上传一部分时,所述上传逻辑服务器根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。 
在本发明另一实施例中,在所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之后,还包括: 
当所述待上传文件的文件分片完成上传时,所述存储接口服务器校验上传的所述待上传文件的文件分片; 
当校验成功时,则将所述待上传文件的文件分片写入云存储服务器; 
向所述客户端的上传组件以及所述下载客户端发送所述待上传文件完成上传的消息; 
将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器,以便供所述上传逻辑服务器进行查询。 
在本发明另一实施例中,当校验不成功时,根据所述待上传文件的文件标识,所述客户端的上传组件或者所述下载客户端重新上传所述待上传文件中上传错误的文件分片。 
另一方面,本发明实施例还提供一种文件上传的***,包括: 
客户端的上传组件,用于对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息;以及根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片; 
所述上传逻辑服务器,用于在所述客户端的上传组件上传所述文件分片时,向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成; 
索引接入服务器,用于接收所述上传逻辑服务器发送的所述待上传文件的文件标记,以及在下载客户端查询节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时向所述下载客户端发送上传所述待上传文件的信息; 
所述下载客户端,用于当所述下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器; 
存储接口服务器,用于接收所述客户端的上传组件和/或所述下载客户端发送的所述待上传文件的文件分片。 
在本发明另一实施例中,所述下载客户端,还用于向所述索引接入服务器发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一节点; 
所述索引接入服务器,用于向索引应用服务器发送所述查询信息; 
所述索引应用服务器,用于根据所述查询信息查询到第一节点,并通过索 引接入服务器发送给所述下载客户端; 
所述下载客户端,还用于从所述第一节点上获取所述待上传文件的文件分片。 
在本发明另一实施例中,所述下载客户端本地保存的所述待上传文件的文件分片包括从所述第一节点上获取所述待上传文件的文件分片,以及所述下载客户端已经下载的所述待上传文件的文件分片。 
在本发明另一实施例中,所述索引接入服务器,还用于当下载客户端查询第一节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时,向所述下载客户端发送上传所述待上传文件的信息,以及发送所述存储接口服务器的地址; 
所述下载客户端,用于当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息以及所述存储接口服务器的地址时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
在本发明另一实施例中,所述客户端的上传组件,还用于向上传逻辑服务器查询所述待上传文件是否完成上传; 
所述上传逻辑服务器,用于通过存储索引服务器查询所述待上传文件是否完成上传; 
所述存储索引服务器,用于查询所述待上传文件是否完成上传;以及,当所述待上传文件已经完成上传时,向所述上传逻辑服务器发送所述待上传文件已经上传完成的消息;以及,当所述待上传文件未上传时,向所述上传逻辑服务器发送所述待上传文件未上传的消息; 
所述上传逻辑服务器,用于当所述待上传文件已经完成上传时,向所述客户端的上传组件发送所述待上传文件已经上传完成的消息;以及当所述待上传文件未上传时,向所述客户端的上传组件发送存储接口服务器的地址;以及当所述待上传文件完成上传一部分时,根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。 
在本发明另一实施例中,所述存储接口服务器,还用于: 
当所述待上传文件的文件分片完成上传时,校验上传的所述待上传文件的文件分片; 
当校验成功时,则将所述待上传文件的文件分片写入云存储服务器; 
向所述客户端的上传组件以及所述下载客户端发送所述待上传文件完成上传的消息; 
将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器,以便供所述上传逻辑服务器进行查询。 
在本发明另一实施例中,所述客户端的上传组件或者所述下载客户端,还用于当校验不成功时,根据所述待上传文件的文件标识,重新上传所述待上传文件中上传错误的文件分片。 
本发明实施例提供一种文件上传的方法及***,通过客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息;所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片;所述客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成;当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
与现有技术中上传文件时,由于在国内通常采用非对称数字用户环路ADSL进行数据传输,ADSL的上传速度并不快,以及存在人为限制上传速度,这导致上传带宽资源缺乏;另外,上传相同文件时,无法直接实现上传过程中数据的共享,导致每个客户端都需要单独传输一部分数据,从而使得上传文件的速度较慢相比,本发明实施例提供的方案可以将用户上传的文件和P2P下载技术关联起来,在用户上传文件时,使得下载客户端将自己本地保存的待上传文件进行上传,使得降低网络资源的占用,以及实现数据的共享,加快上传文件的速度。 
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。 
图1为本发明实施例1提供的一种文件上传的方法的流程图; 
图2为本发明实施例1提供的另一种文件上传的方法的流程图; 
图3为本发明实施例1提供的客户端的上传组件从上传逻辑服务器查询到的存储接口服务器的地址的流程图; 
图4为本发明实施例2提供的一种文件上传的***的示意图; 
图5为本发明实施例2提供的另一种文件上传的***的示意图。 
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 
实施例1 
本发明实施例提供一种文件上传的方法,如图1所示,该方法包括: 
步骤101,客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息; 
其中,客户端的上传组件可以Axtive控件实现,为安装在浏览器的插件或者扩展,从本地上传文件分片到存储接口服务器,并且支持断点续传文件。断点续传即在上传文件的过程中中断上传,此时仅完成文件的部分上传,之后再上传此文件时,可以继续上传未上传的部分文件。 
在本实施例中,客户端的上传组件对待上传文件进行分片,并计算所述文件分片的校验信息,具体包括:按照待上传文件的大小对文件进行分片,比如一个文件大小为T,按照分片大小P(T),将文件划分为N=(T+P(T)-1) /P(T)片。其中,分片大小通常和文件大小有关,例如分片后的文件可以是2M,1M,512KB,最小通常是32KB。当待上传文件非常大时,比如超过10G,为了避免分片太多,通常总的分片数目就固定,分片大小就不固定,即按照分片数目对待上传文件进行分片。 
每个独立的分片作为一个小文件计算文件内容的唯一标识HASH,这样每个分片对应一组HASH,把这一组HASH称为文件校验信息。在下载过程中,每得到一个完整分片的数据,就可以通过计算HASH和校验HASH比较确定下载的数据是否正确。 
步骤102,所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片; 
其中,上传逻辑服务器,用于与客户端的上传组件通讯,并判断客户端的上传组件上传的文件HASH在存储索引服务器中是否存在,当客户端的上传组件上传的文件HASH在存储索引服务器中不存在时,则向客户端的上传组件返回需要上传文件的存储接口服务器的地址;当客户端的上传组件上传的文件HASH在存储索引服务器中存在时,则所述上传逻辑服务器向所述客户端的上传组件发送所述待上传文件已经上传完成的消息,不再需要重新上传。 
步骤103,所述客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成; 
在本步骤中,客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记,目的为使得上传逻辑服务器和索引接入服务器之间建立文件上传HASH的同步,使得下载客户端可以通过索引接入服务器了解当前待上传文件的HASH,以便下载客户端可以在存储接口服务器的调度下上传自己本地保存的一部分文件分片,以加快文件上传的速度。 
步骤104,当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
进一步的,存储接口服务器接收到客户端的上传组件和/或至少一个下载客户端发送的待上传文件的文件分片时,写入到云存储服务器中。 
需要说明的是,由于上传通道的带宽是有限的,通常一个机器上需要连接网络访问的软件不止一个。如果一个软件占用上传通道的带宽过多,会影响其它软件的上传。通过本发明可以将上传文件的一部分工作让其他下载客户端协助完成,相当于降低了客户端的上传组件对网络资源的占用。 
本发明实施例提供一种文件上传的方法,通过将用户待上传的文件和P2P下载技术关联起来,在用户上传待上传文件时,下载客户端将自己本地保存的待上传文件进行上传,使得降低网络资源的占用,以及实现数据的共享,加快上传文件的速度。 
本发明实施例提供另一种文件上传的方法,如图2所示,该方法包括: 
步骤201,客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息; 
在本实施例中,客户端的上传组件可以Axtive控件实现,为安装在浏览器的插件或者扩展,从本地上传文件分片到存储接口服务器,并且支持断点续传文件。断点续传即在上传文件的过程中中断上传,此时仅完成文件的部分上传,之后再上传此文件时,可以继续上传未上传的部分文件。 
在本实施例中,客户端的上传组件对待上传文件进行分片,并计算所述文件分片的校验信息,具体包括:按照待上传文件的大小对文件进行分片,比如一个文件大小为T,按照分片大小P(T),将文件划分为N=(T+P(T)-1)/P(T)片。其中,分片大小通常和文件大小有关,例如分片后的文件可以是2M,1M,512KB,最小通常是32KB。当待上传文件非常大时,比如超过10G,为了避免分片太多,通常总的分片数目就固定,分片大小就不固定,即按照分片数目对待上传文件进行分片。 
每个独立的分片作为一个小文件计算文件内容的唯一标识HASH,这样每个分片对应一组HASH,把这一组HASH称为文件校验信息。在下载过程中,每得到一个完整分片的数据,就可以通过计算HASH和校验HASH比较确定下载的数据是否正确。 
步骤202,所述客户端的上传组件从上传逻辑服务器查询到的存储接口服务器的地址; 
本步骤中,客户端的上传组件从上传逻辑服务器查询到的存储接口服务器的地址具体包括以下步骤,如图3所示: 
步骤301,所述客户端的上传组件向上传逻辑服务器查询所述待上传文件是否完成上传; 
步骤302,所述上传逻辑服务器通过存储索引服务器查询所述待上传文件是否完成上传; 
在本步骤中,存储索引服务器,用于接收上传逻辑服务器发送的查询消息,其中,查询消息中用于查询所述待上传文件是否完成上传,所述查询消息中包括所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成。存储索引服务器中保存所有云存储户服务器上存在文件的HASH、各文件的大小、各文件的上传时间以及文件名称等文件信息。其中,存储索引服务器中保存的文件信息由存储接口服务器在将完成上传的文件写入云存储户服务器后发送的。 
步骤303,当所述待上传文件已经完成上传时,则所述存储索引服务器通过所述上传逻辑服务器向所述客户端的上传组件发送所述待上传文件已经上传完成的消息; 
上传逻辑服务器通过将待上传文件的HASH与其中保存的各个文件的HASH进行比较,当上传逻辑服务器中保存的各个文件的HASH中存在与待上传文件的HASH相同的文件时,则说明待上传文件在之前已经完成上传,此时直接进行秒传输,即上传逻辑服务器向所述客户端的上传组件发送所述待上传文件已经上传完成的消息。 
步骤304,当所述待上传文件未上传时,则所述存储索引服务器向所述上传逻辑服务器返回所述待上传文件未上传的消息; 
上传逻辑服务器通过将待上传文件的HASH与其中保存的各个文件的HASH进行比较,当上传逻辑服务器中保存的各个文件的HASH中不存在与待上传文件的HASH相同的文件时,则说明待上传文件未完成上传, 
步骤305,所述上传逻辑服务器接收到所述待上传文件未上传完成的消息时,向所述客户端的上传组件发送存储接口服务器的地址; 
此时上传逻辑服务器向所述客户端的上传组件发送存储接口服务器的地址,以便客户端的上传组件根据存储接口服务器的地址上传待上传文件的文件分片。 
需要说明的是,当所述待上传文件完成上传一部分时,所述上传逻辑服务器根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。 
客户端的上传组件可以支持断点续传文件,即待上传文件完成上传一部分中断时,在客户端的上传组件重新启动上传之前,会向上传逻辑服务器查询已经上传了多少内容,上传逻辑服务器会记录未上传完毕的所述待上传文件的续传信息,然后,客户端的上传组件根据此续传信息,继续上传所述待上传文件的文件分片。 
在客户端的上传组件从上传逻辑服务器查询到的存储接口服务器的地址之后,继续执行后续步骤。 
步骤203,所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片; 
步骤204,所述存储接口服务器接收所述客户端的上传组件上传的文件分片,并将上传成功的文件分片写入到云存储户服务器; 
存储接口服务器每接收到一个完整的文件分片,可以计算此文件分片的校验信息,校验上传的文件分片是否正确。当上传的文件分片正确时,将此文件分片写入到云存储户服务器,并且向所述客户端的上传组件以及所述下载客户端发送所述待上传文件完成上传的消息;进一步的,将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器,以便供所述上传逻辑服务器进行查询。当校验不成功时,根据所述待上传文件的文件标识,所述客户端的上传组件或者所述下载客户端重新上传所述待上传文件中上传错误的文件分片。其中,校验文件分片可以采用现有技术进行校验,本发明实施例不限制校验文件分片的方式。 
需要说明的是,由于上传通道的带宽是有限的,通常一个机器上需要连接网络访问的软件不止一个。如果一个软件占用上传通道的带宽过多,会影响其它软件的上传。通过本发明可以将上传文件的一部分工作让其他下载客户端协助完成,相当于降低了客户端的上传组件对网络资源的占用。 
步骤205,所述客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记; 
在本步骤中,所述待上传文件的文件标记由所述文件分片的校验信息构成。 
客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记的目的为,使得上传逻辑服务器和索引接入服务器之间建立文件上传HASH的同步,使得下载客户端可以通过索引接入服务器了解当前待上传文件的HASH,以便下载客户端可以在存储接口服务器的调度下上传自己本地保存的一部分文件分片,以加快文件上传的速度。 
步骤206,所述下载客户端向所述索引接入服务器发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一节点PEER; 
下载客户端可以从多源索引服务器查询希望下载的资源和文件校验信息,即查询多资源统一资源定位符(Uniform/Universal Resource Locator,UR)集合,然后从查询到的URL集合中下载文件分片,需要说明的是,这里的文件分片为下载客户端的用户希望下载的文件的文件分片,当然,此文件分片也可以为下载客户端的用户下载客户端的上传组件待上传的文件的文件分片。 
多源索引服务器接收到下载客户端发送的下载查询信息之后,向多源索引数据库查询是否存在下载客户端希望下载的资源。 
多源索引服务器用于接收下载客户端通过URL或者URL本身的HASH作为索引的入口查询文件分片HASH或者该文件所在文件集合的唯一标识;以及接收客户端通过URL或者URL本身的HASH作为索引的入口查询下载的多URL资源集合;还用于提供文件分片校验信息或者文件集合的统一分片校验信息,供下载客户端校验下载数据的有效性。多源索引数据库中保存文件分片的校验信息,可以为多源索引服务器提供多资源查询服务。多源索引数据库还用于保存URL到 HASH1,HASH2到URL集合,即URL是一个字符串,也可以作为输入,计算一个HASH1,即通过URI获得一个对应的HASH1;后面的HASH2是文件内容的HASH2,HASH1与HASH2可以一一对应。反过来,一个文件内容的HASH2可能有不同的链接URL,这个为一对多的关系,所以称为HASH2到URL的集合。 
在本步骤中,下载客户端向索引接入服务器查询是否存在PEER,PEER为与下载客户端已经下载完成或者正在下载的同一文件的下载客户端。下载客户端与PEER为P2P。 
索引接入服务器,用于与下载客户端维持节点上报、心跳、添加、删除文件的通讯。心跳指下载客户端和索引接入服务器的周期性通讯,通过这种方式确保节点在线,如果超于一定时间索引接入服务器没有收到客户端发送的心跳报文,就认为客户端下线了。 
步骤207,所述索引接入服务器向索引应用服务器发送所述查询信息; 
需要说明的是,索引应用服务器还用于接收索引接入服务器发送的节点信息注册,可以维持某一个文件在线PEER的信息别表。 
步骤208,所述索引应用服务器根据所述查询信息查询到第一PEER,并通过索引接入服务器发送给所述下载客户端; 
索引应用TrackerApp服务器接收索引接入服务器发送的查询消息,根据查询消息实现具体PEER选择算法和策略,为索引接入服务器提供PEER查询服务。 
步骤209,所述下载客户端从所述第一PEER上获取所述待上传文件的文件分片; 
下载客户端从所述第一PEER上获取所述待上传文件的文件分片即基于PPP协议进行点与点之间的数据传输。 
步骤210,当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器; 
在本步骤中,所述下载客户端本地保存的所述待上传文件的文件分片包括从所述第一PEER上获取所述待上传文件的文件分片,以及所述下载客户端由多源索引服务器以及多源索引数据库中已经下载完成的所述待上传文件的文件分 片。 
进一步的,当下载客户端查询第一PEER时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时,所述索引接入服务器向所述下载客户端发送上传所述待上传文件的信息,以及发送所述存储接口服务器的地址; 
当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息以及所述存储接口服务器的地址时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
当下载客户端将待上传文件的文件分片上传到存储接口服务器上之后,即继续执行步骤204。 
本发明实施例提供一种文件上传的方法,通过在客户端的上传组件上传文件时,其他正在下载或者已经下载完成的P2P的节点可以协助客户端的上传组件上传对应的文件分片,在下载客户端交换文件分片的时候,在存储接口服务器的统一调度下,复制对应的文件分片多上传一份,从而整体效果上突破本地上传物理带宽的限制,在上传文件过程中降低网络资源的占用,以及实现数据的共享,加快上传文件的速度。 
实施例2 
本发明实施例提供一种文件上传的***,如图4所示,该***包括:客户端的上传组件401,上传逻辑服务器402,索引接入服务器403,下载客户端404,存储接口服务器405; 
客户端的上传组件401,用于对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息;以及根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片; 
所述上传逻辑服务器402,用于在所述客户端的上传组件上传所述文件分片时,向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成; 
索引接入服务器403,用于接收所述上传逻辑服务器402发送的所述待上传文件的文件标记,以及在下载客户端404查询节点PEER时,或者所述下载客户 端404与所述索引接入服务器403心跳上报共享的所述待上传文件的文件标记时向所述下载客户端404发送上传所述待上传文件的信息; 
所述下载客户端404,用于当所述下载客户端接收到索引接入服务器403发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。 
存储接口服务器405,用于接收所述客户端的上传组件401和/或所述下载客户端404发送的所述待上传文件的文件分片。 
需要说明的是,由于上传通道的带宽是有限的,通常一个机器上需要连接网络访问的软件不止一个。如果一个软件占用上传通道的带宽过多,会影响其它软件的上传。通过本发明可以将上传文件的一部分工作让其他下载客户端协助完成,相当于降低了客户端的上传组件对网络资源的占用。 
进一步的,如图5所示,所述***还包括:存储索引服务器406; 
在所述客户端的上传组件401根据从上传逻辑服务器402查询到的存储接口服务器405的地址,向存储接口服务器上传所述文件分片之前,所述客户端的上传组件401,还用于向上传逻辑服务器402查询所述待上传文件是否完成上传; 
所述上传逻辑服务器402,用于通过存储索引服务器406查询所述待上传文件是否完成上传; 
所述存储索引服务器406,用于查询所述待上传文件是否完成上传;以及,当所述待上传文件已经完成上传时,向所述上传逻辑服务器发送所述待上传文件已经上传完成的消息;以及,当所述待上传文件未上传时,向所述上传逻辑服务器发送所述待上传文件未上传的消息; 
当所述待上传文件已经完成上传时,所述上传逻辑服务器402,用于向所述客户端的上传组件401发送所述待上传文件已经上传完成的消息;以及当所述待上传文件未上传时,向所述客户端的上传组件401发送存储接口服务器405的地址;以及当所述待上传文件完成上传一部分时,根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。 
进一步的,如图5所示,所述***还包括索引应用服务器407,多源索引服 务器408,多源索引数据库409; 
在所述当所述下载客户端404接收到索引接入服务器403发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端404将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之前,所述下载客户端404向所述索引接入服务器403发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一PEER; 
所述索引接入服务器403向索引应用服务器407发送所述查询信息; 
所述索引应用服务器407根据所述查询信息查询到第一PEER,并通过索引接入服务器403发送给所述下载客户端404; 
所述下载客户端404从所述第一PEER上获取所述待上传文件的文件分片。 
所述下载客户端404本地保存的所述待上传文件的文件分片包括从所述第一PEER上获取所述待上传文件的文件分片,以及所述下载客户端404已经下载的所述待上传文件的文件分片。其中,所述下载客户端404已经下载的所述待上传文件的文件分片具体为:下载客户端可以从多源索引服务器408查询希望下载的资源和文件校验信息,即查询多资源统一资源定位符(Uniform/Universal Resource Locator,UR)集合,然后从查询到的URL集合中下载文件分片,需要说明的是,这里的文件分片为下载客户端的用户希望下载的文件的文件分片,当然,此文件分片也可以为下载客户端的用户下载客户端的上传组件待上传的文件的文件分片。 
多源索引服务器408接收到下载客户端发送的下载查询信息之后,向多源索引数据库409查询是否存在下载客户端希望下载的资源。 
多源索引服务器408用于接收下载客户端通过URL或者URL本身的HASH作为索引的入口查询文件分片HASH或者该文件所在文件集合的唯一标识;以及接收客户端通过URL或者URL本身的HASH作为索引的入口查询下载的多URL资源集合;还用于提供文件分片校验信息或者文件集合的统一分片校验信息,供下载客户端校验下载数据的有效性。多源索引数据库409中保存文件分片的校验信息,可以为多源索引服务器408提供多资源查询服务。多源索引数据库409 还用于保存URL到HASH1,HASH2到URL集合,即URL是一个字符串,也可以作为输入,计算一个HASH1,即通过URI获得一个对应的HASH1;后面的HASH2是文件内容的HASH2,HASH1与HASH2可以一一对应。反过来,一个文件内容的HASH2可能有不同的链接URL,这个为一对多的关系,所以称为HASH2到URL的集合。 
进一步的,所述下载客户端404,用于当所述下载客户端404接收到索引接入服务器403发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器,具体包括:当下载客户端404查询第一PEER时,或者所述下载客户端404与所述索引接入服务器403心跳上报共享的所述待上传文件的文件标记时,所述索引接入服务器403向所述下载客户端404发送上传所述待上传文件的信息,以及发送所述存储接口服务器405的地址; 
当下载客户端404接收到索引接入服务器403发送的上传所述待上传文件的信息以及所述存储接口服务器405的地址时,根据所述待上传文件的文件标记,所述下载客户端404将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器405。 
进一步的,所述***还包括:云存储服务器410; 
在所述当所述下载客户端404接收到索引接入服务器403发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端404将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之后,当所述待上传文件的文件分片完成上传时,所述存储接口服务器405校验上传的所述待上传文件的文件分片; 
当校验成功时,所述存储接口服务器405则将所述待上传文件的文件分片写入云存储服务器410; 
所述存储接口服务器405向所述客户端的上传组件401以及所述下载客户端404发送所述待上传文件完成上传的消息; 
所述存储接口服务器405将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器406,以便供所述上传逻辑服务器进行查询。 
当校验不成功时,根据所述待上传文件的文件标识,所述客户端的上传组件401或者所述下载客户端404重新上传所述待上传文件中上传错误的文件分片。 
本发明实施例提供一种文件上传的***,通过客户端的上传组件向存储接口服务器上传待上传文件的文件分片时,下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器,使得在上传文件过程中降低网络资源的占用,以及实现数据的共享,加快上传文件的速度。 
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。 

Claims (15)

1.一种文件上传的方法,其特征在于,包括:
客户端的上传组件对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息;
所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片;
所述客户端的上传组件上传所述文件分片时,所述上传逻辑服务器向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成;
当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。
2.根据权利要求1所述的方法,其特征在于,在所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之前,还包括:
所述下载客户端向所述索引接入服务器发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一节点;所述索引接入服务器向索引应用服务器发送所述查询信息;
所述索引应用服务器根据所述查询信息查询到第一节点,并通过索引接入服务器发送给所述下载客户端;
所述下载客户端从所述第一节点上获取所述待上传文件的文件分片。
3.根据权利要求2所述的方法,其特征在于,所述下载客户端本地保存的所述待上传文件的文件分片包括从所述第一节点上获取所述待上传文件的文件分片,以及所述下载客户端已经下载的所述待上传文件的文件分片。
4.根据权利要求3所述的方法,其特征在于,所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器包括:
当下载客户端查询第一节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时,所述索引接入服务器向所述下载客户端发送上传所述待上传文件的信息,以及发送所述存储接口服务器的地址;
当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息以及所述存储接口服务器的地址时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述客户端的上传组件根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片之前,还包括:
所述客户端的上传组件向上传逻辑服务器查询所述待上传文件是否完成上传;
所述上传逻辑服务器通过存储索引服务器查询所述待上传文件是否完成上传;
当所述待上传文件已经完成上传时,则所述存储索引服务器通过所述上传逻辑服务器向所述客户端的上传组件发送所述待上传文件已经上传完成的消息;
当所述待上传文件未上传时,则所述存储索引服务器向所述上传逻辑服务器返回所述待上传文件未上传的消息;所述上传逻辑服务器接收到所述待上传文件未上传完成的消息时,向所述客户端的上传组件发送存储接口服务器的地址。
6.根据权利要求5所述的方法,其特征在于,当所述待上传文件完成上传一部分时,所述上传逻辑服务器根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。
7.根据权利要求5所述的方法,其特征在于,在所述当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,所述下载客户端将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器之后,还包括:
当所述待上传文件的文件分片完成上传时,所述存储接口服务器校验上传的所述待上传文件的文件分片;
当校验成功时,则将所述待上传文件的文件分片写入云存储服务器;
向所述客户端的上传组件以及所述下载客户端发送所述待上传文件完成上传的消息;
将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器,以便供所述上传逻辑服务器进行查询。
8.根据权利要求7所述的方法,其特征在于,
当校验不成功时,根据所述待上传文件的文件标识,所述客户端的上传组件或者所述下载客户端重新上传所述待上传文件中上传错误的文件分片。
9.一种文件上传的***,其特征在于,包括:
客户端的上传组件,用于对待上传文件进行分片,获得至少一个文件分片,并计算所述文件分片的校验信息;以及根据从上传逻辑服务器查询到的存储接口服务器的地址,向存储接口服务器上传所述文件分片;
所述上传逻辑服务器,用于在所述客户端的上传组件上传所述文件分片时,向索引接入服务器发送所述待上传文件的文件标记,所述待上传文件的文件标记由所述文件分片的校验信息构成;
索引接入服务器,用于接收所述上传逻辑服务器发送的所述待上传文件的文件标记,以及在下载客户端查询节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时向所述下载客户端发送上传所述待上传文件的信息;
所述下载客户端,用于当所述下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器;
存储接口服务器,用于接收所述客户端的上传组件和/或所述下载客户端发送的所述待上传文件的文件分片。
10.根据权利要求9所述的***,其特征在于,
所述下载客户端,还用于向所述索引接入服务器发送查询信息,所述查询信息为查询已经下载完成或者正在下载的所述待上传文件的文件分片的任一第一节点;
所述索引接入服务器,用于向索引应用服务器发送所述查询信息;
所述索引应用服务器,用于根据所述查询信息查询到第一节点,并通过索引接入服务器发送给所述下载客户端;
所述下载客户端,还用于从所述第一节点上获取所述待上传文件的文件分片。
11.根据权利要求10所述的***,其特征在于,
所述下载客户端本地保存的所述待上传文件的文件分片包括从所述第一节点上获取所述待上传文件的文件分片,以及所述下载客户端已经下载的所述待上传文件的文件分片。
12.根据权利要求11所述的***,其特征在于,
所述索引接入服务器,还用于当下载客户端查询第一节点时,或者所述下载客户端与所述索引接入服务器心跳上报共享的所述待上传文件的文件标记时,向所述下载客户端发送上传所述待上传文件的信息,以及发送所述存储接口服务器的地址;
所述下载客户端,用于当下载客户端接收到索引接入服务器发送的上传所述待上传文件的信息以及所述存储接口服务器的地址时,根据所述待上传文件的文件标记,将本地保存的所述待上传文件的文件分片上传到所述存储接口服务器。
13.根据权利要求9-12中任一项所述的***,其特征在于,
所述客户端的上传组件,还用于向上传逻辑服务器查询所述待上传文件是否完成上传;
所述上传逻辑服务器,用于通过存储索引服务器查询所述待上传文件是否完成上传;
所述存储索引服务器,用于查询所述待上传文件是否完成上传;以及,当所述待上传文件已经完成上传时,向所述上传逻辑服务器发送所述待上传文件已经上传完成的消息;以及,当所述待上传文件未上传时,向所述上传逻辑服务器发送所述待上传文件未上传的消息;
所述上传逻辑服务器,用于当所述待上传文件已经完成上传时,向所述客户端的上传组件发送所述待上传文件已经上传完成的消息;以及当所述待上传文件未上传时,向所述客户端的上传组件发送存储接口服务器的地址;以及当所述待上传文件完成上传一部分时,根据记录的未上传完毕的所述待上传文件的续传信息,继续上传所述待上传文件的文件分片。
14.根据权利要求12所述的***,其特征在于,所述存储接口服务器,还用于:
当所述待上传文件的文件分片完成上传时,校验上传的所述待上传文件的文件分片;
当校验成功时,则将所述待上传文件的文件分片写入云存储服务器;
向所述客户端的上传组件以及所述下载客户端发送所述待上传文件完成上传的消息;
将所述待上传文件的文件标记、所述待上传文件的大小、所述待上传文件的名称写入存储索引服务器,以便供所述上传逻辑服务器进行查询。
15.根据权利要求14所述的***,其特征在于,
所述客户端的上传组件或者所述下载客户端,还用于当校验不成功时,根据所述待上传文件的文件标识,重新上传所述待上传文件中上传错误的文件分片。
CN201210387535.XA 2012-10-12 2012-10-12 一种文件上传的方法及*** Active CN103731451B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201210387535.XA CN103731451B (zh) 2012-10-12 2012-10-12 一种文件上传的方法及***
PCT/CN2013/084894 WO2014056428A1 (zh) 2012-10-12 2013-10-09 一种文件上传的方法及***
US14/684,149 US10681127B2 (en) 2012-10-12 2015-04-10 File upload method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210387535.XA CN103731451B (zh) 2012-10-12 2012-10-12 一种文件上传的方法及***

Publications (2)

Publication Number Publication Date
CN103731451A true CN103731451A (zh) 2014-04-16
CN103731451B CN103731451B (zh) 2018-10-19

Family

ID=50455378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210387535.XA Active CN103731451B (zh) 2012-10-12 2012-10-12 一种文件上传的方法及***

Country Status (3)

Country Link
US (1) US10681127B2 (zh)
CN (1) CN103731451B (zh)
WO (1) WO2014056428A1 (zh)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104184740A (zh) * 2014-09-04 2014-12-03 中电长城网际***应用有限公司 可信传输方法、可信第三方和可信传输***
CN105282555A (zh) * 2014-06-26 2016-01-27 爱尔达科技股份有限公司 多媒体文件储存***与相关装置
CN105430034A (zh) * 2014-09-02 2016-03-23 纬创资通股份有限公司 存取云端储存空间数据的方法以及使用该方法的装置
CN106911751A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 文件获取方法、装置与***
CN106909591A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 文件获取方法、装置与***
CN107360233A (zh) * 2017-07-14 2017-11-17 世纪龙信息网络有限责任公司 文件上传的方法、装置、设备及可读存储介质
CN107426258A (zh) * 2016-05-23 2017-12-01 华为技术有限公司 一种镜像文件的上传和下载方法及装置
CN107483627A (zh) * 2017-09-12 2017-12-15 网宿科技股份有限公司 一种文件分发、下载方法、分发服务器、客户端及***
CN107872489A (zh) * 2016-09-28 2018-04-03 杭州海康威视数字技术股份有限公司 一种文件切片上传方法、装置及云存储***
CN107959695A (zh) * 2016-10-14 2018-04-24 北京国双科技有限公司 一种数据传输方法及装置
CN108234539A (zh) * 2016-12-14 2018-06-29 北京金山云网络技术有限公司 一种文件上传、下载、传输方法及装置
CN109144966A (zh) * 2018-07-06 2019-01-04 航天星图科技(北京)有限公司 一种海量时空数据的高效组织与管理方法
CN109660639A (zh) * 2018-12-11 2019-04-19 深圳市网心科技有限公司 一种数据上传方法、设备、***及介质
CN109658542A (zh) * 2018-11-16 2019-04-19 深圳市元征科技股份有限公司 诊断参数数据校验方法、装置、车辆诊断设备和存储介质
CN109714330A (zh) * 2018-12-24 2019-05-03 武汉烽火众智数字技术有限责任公司 一种跨网络的断点续传方法和***
CN105208135B (zh) * 2015-10-26 2019-06-14 天津书生云科技有限公司 一种文件传输方法和设备
CN110417890A (zh) * 2019-07-30 2019-11-05 深圳市瑞云科技有限公司 一种提升企业渲染客户端文件秒传校验的方法
CN111131450A (zh) * 2019-12-23 2020-05-08 北京奇艺世纪科技有限公司 文件上传方法、重组方法及装置
CN111367926A (zh) * 2020-02-27 2020-07-03 星辰天合(北京)数据科技有限公司 分布式***的数据处理方法和装置
CN111404990A (zh) * 2020-02-14 2020-07-10 Oppo(重庆)智能科技有限公司 文件传输方法、装置、客户端及存储介质
CN111770165A (zh) * 2020-06-28 2020-10-13 百度在线网络技术(北京)有限公司 用于上传文件的方法、装置、电子设备及可读存储介质
CN112351111A (zh) * 2020-12-30 2021-02-09 常州微亿智造科技有限公司 一种工业质检文件上传服务器端近实时进度监控方法
WO2021036228A1 (zh) * 2019-08-23 2021-03-04 深圳市鹰硕技术有限公司 文件上传方法、装置、终端、服务器、***及存储介质
CN112860729A (zh) * 2021-03-29 2021-05-28 中信银行股份有限公司 一种运算方法、装置、电子设备和可读存储介质
CN113273163A (zh) * 2020-05-26 2021-08-17 深圳元戎启行科技有限公司 文件上传方法、文件下载方法和文件管理装置
US11172023B2 (en) 2017-09-29 2021-11-09 Wangsu Science & Technology Co., Ltd. Data synchronization method and system
US11190576B2 (en) 2017-09-12 2021-11-30 Wangsu Science & Technology Co., Ltd. File distribution and download method, distribution server, client terminal and system
CN114363321A (zh) * 2021-12-30 2022-04-15 支付宝(杭州)信息技术有限公司 文件传输方法、设备及***
CN115004665A (zh) * 2020-01-21 2022-09-02 华为技术有限公司 文件分享方法、装置及***
CN116760819A (zh) * 2023-07-14 2023-09-15 中电长城网际***应用广东有限公司 计算机文件网络传送方法、计算机装置和装置介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107656695B (zh) * 2016-07-25 2020-12-25 杭州海康威视数字技术股份有限公司 一种数据存储、删除方法、装置及分布式存储***
US10616309B2 (en) * 2016-12-30 2020-04-07 Facebook, Inc. Systems and methods for resumable uploading of data in a social networking system
CN109525624B (zh) * 2017-09-20 2022-01-04 腾讯科技(深圳)有限公司 一种容器登录方法、装置及存储介质
CN109729120A (zh) * 2017-10-30 2019-05-07 北京国双科技有限公司 文件上传的方法及装置
CN111200479B (zh) * 2018-11-19 2022-04-12 福建天泉教育科技有限公司 传输数据的校验方法、存储介质
CN113824760B (zh) * 2021-08-03 2024-01-30 中债金科信息技术有限公司 文件并发分块上传方法、装置、电子设备及存储介质
CN116016549A (zh) * 2022-12-12 2023-04-25 中科南京软件技术研究院 数据文件动态分片上传的方法及其***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996843A (zh) * 2005-12-26 2007-07-11 北大方正集团有限公司 轻量级分布式文件存储***及文件上传的方法
CN101079709A (zh) * 2006-06-15 2007-11-28 腾讯科技(深圳)有限公司 单点对多节点并发下载***和方法
US20070288593A1 (en) * 2006-06-12 2007-12-13 Lucent Technologies Inc. Chargeable peer-to-peer file download system
CN101141476A (zh) * 2007-10-09 2008-03-12 创新科存储技术(深圳)有限公司 文件存储、下载方法以及装置
CN101674330A (zh) * 2009-10-09 2010-03-17 中兴通讯股份有限公司 业务交互方法及装置
CN101699822A (zh) * 2009-08-06 2010-04-28 腾讯科技(深圳)有限公司 一种文件上传方法、装置和海量存储***

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0993163A1 (en) * 1998-10-05 2000-04-12 Backweb Technologies Ltd. Distributed client-based data caching system and method
WO2001071992A2 (en) * 2000-03-22 2001-09-27 Omnipod, Inc. Integrated system and method of providing online access to files and information
US20030154284A1 (en) * 2000-05-31 2003-08-14 James Bernardin Distributed data propagator
JP2004528631A (ja) * 2001-02-28 2004-09-16 ミュージックレベリオン.コム・インコーポレーテッド デジタルオンライン交換
US7512676B2 (en) * 2001-09-13 2009-03-31 Network Foundation Technologies, Llc Systems for distributing data over a computer network and methods for arranging nodes for distribution of data over a computer network
US8041803B2 (en) * 2001-09-26 2011-10-18 Qurio Holdings, Inc. Method and system for delivering files in digital file marketplace
US7574488B2 (en) * 2002-05-31 2009-08-11 Hitachi, Ltd. Method and apparatus for peer-to-peer file sharing
US7739240B2 (en) * 2002-12-09 2010-06-15 Hewlett-Packard Development Company, L.P. Replication and replica management in a wide area file system
US20050007964A1 (en) * 2003-07-01 2005-01-13 Vincent Falco Peer-to-peer network heartbeat server and associated methods
US7570600B1 (en) * 2003-12-17 2009-08-04 Symantec Operating Corporation Overlay network with efficient routing and recovery
GB0402739D0 (en) * 2004-02-09 2004-03-10 Saviso Group Ltd Methods and apparatus for routing in a network
US7627328B2 (en) * 2004-08-03 2009-12-01 At&T Mobility Ii Llc Auditing of wireless network node databases
CA2486103A1 (en) * 2004-10-26 2006-04-26 Platespin Ltd. System and method for autonomic optimization of physical and virtual resource use in a data center
US20080034394A1 (en) * 2005-04-04 2008-02-07 Jacobs John S System and method for content distribution
DE102006021591B3 (de) * 2006-05-09 2007-04-05 Siemens Ag Verfahren und Anordnung zur Datenübertragung zwischen Peer-to-Peer-Netzwerken
WO2008064356A1 (en) * 2006-11-22 2008-05-29 Metis Enterprise Technologies Llc Real-time multicast peer-to-peer video streaming platform
US20080222236A1 (en) * 2006-11-27 2008-09-11 Christopher James Nason Method and system for processing data on a plurality of communication devices
US8131673B2 (en) * 2006-12-05 2012-03-06 International Business Machines Corporation Background file sharing in a segmented peer-to-peer file sharing network
US7814146B2 (en) * 2006-12-05 2010-10-12 International Business Machines Corporation File fragment trading based on rarity values in a segmented file sharing system
US7903652B2 (en) * 2006-12-14 2011-03-08 At&T Intellectual Property I, L.P. System and method for peer to peer video streaming
US20080235746A1 (en) * 2007-03-20 2008-09-25 Michael James Peters Methods and apparatus for content delivery and replacement in a network
US20090199250A1 (en) * 2007-08-08 2009-08-06 Harmonic Inc. Methods and System for Data Transfer Over Hybrid Fiber Cable Infrastructure
US9154552B2 (en) * 2007-09-06 2015-10-06 Microsoft Technology Licensing, Llc Method and apparatus for cooperative file distribution with receiver determined quality of services
US20090083132A1 (en) * 2007-09-20 2009-03-26 General Electric Company Method and system for statistical tracking of digital asset infringements and infringers on peer-to-peer networks
US8077602B2 (en) * 2008-02-01 2011-12-13 International Business Machines Corporation Performing dynamic request routing based on broadcast queue depths
TWI476610B (zh) * 2008-04-29 2015-03-11 Maxiscale Inc 同級間冗餘檔案伺服器系統及方法
CN101635737B (zh) * 2008-07-25 2013-09-18 阿里巴巴集团控股有限公司 下载方法、***、p2p服务器、客户端
US8594089B2 (en) * 2008-09-30 2013-11-26 France Telecom Method of broadcasting data by a multicast source with broadcasting of an identifier of the broadcasting strategy in a multicast signalling channel
US8832292B2 (en) * 2008-10-15 2014-09-09 Aster Risk Management Llc Source-selection based internet backbone traffic shaping
US20150006895A1 (en) * 2009-06-01 2015-01-01 Maidsafe Foundation Distributed network system
US8204791B2 (en) * 2009-07-13 2012-06-19 International Business Machines Corporation File fragment pricing in a segmented file sharing network
US9231768B2 (en) * 2010-06-22 2016-01-05 International Business Machines Corporation Utilizing a deterministic all or nothing transformation in a dispersed storage network
US20130031211A1 (en) * 2011-01-29 2013-01-31 Dustin Johnson Feedback oriented private overlay network for content distribution
US8510267B2 (en) * 2011-03-08 2013-08-13 Rackspace Us, Inc. Synchronization of structured information repositories
CN102420843B (zh) * 2011-06-24 2015-12-02 北京奇虎科技有限公司 一种基于云压缩链接的压缩和解压缩方法、装置及***
FR2989241B1 (fr) * 2012-04-05 2018-01-26 Easybroadcast Procede de diffusion d'un contenu dans un reseau informatique.
EP2864896A4 (en) * 2012-06-22 2016-07-20 Dan Maltbie SYSTEM AND METHOD FOR THE SAFE HIGH-SPEED TRANSMISSION OF HUGE FILES
US8473585B1 (en) * 2012-06-26 2013-06-25 Citrix Systems, Inc. Multi-threaded optimization for data upload

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1996843A (zh) * 2005-12-26 2007-07-11 北大方正集团有限公司 轻量级分布式文件存储***及文件上传的方法
US20070288593A1 (en) * 2006-06-12 2007-12-13 Lucent Technologies Inc. Chargeable peer-to-peer file download system
CN101079709A (zh) * 2006-06-15 2007-11-28 腾讯科技(深圳)有限公司 单点对多节点并发下载***和方法
CN101141476A (zh) * 2007-10-09 2008-03-12 创新科存储技术(深圳)有限公司 文件存储、下载方法以及装置
CN101699822A (zh) * 2009-08-06 2010-04-28 腾讯科技(深圳)有限公司 一种文件上传方法、装置和海量存储***
CN101674330A (zh) * 2009-10-09 2010-03-17 中兴通讯股份有限公司 业务交互方法及装置

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105282555A (zh) * 2014-06-26 2016-01-27 爱尔达科技股份有限公司 多媒体文件储存***与相关装置
CN105282555B (zh) * 2014-06-26 2018-03-30 爱尔达科技股份有限公司 多媒体文件储存***与相关装置
CN105430034A (zh) * 2014-09-02 2016-03-23 纬创资通股份有限公司 存取云端储存空间数据的方法以及使用该方法的装置
CN105430034B (zh) * 2014-09-02 2019-04-05 纬创资通股份有限公司 存取云端储存空间数据的方法以及使用该方法的装置
CN104184740B (zh) * 2014-09-04 2019-02-05 中电长城网际***应用有限公司 可信传输方法、可信第三方和可信传输***
CN104184740A (zh) * 2014-09-04 2014-12-03 中电长城网际***应用有限公司 可信传输方法、可信第三方和可信传输***
CN105208135B (zh) * 2015-10-26 2019-06-14 天津书生云科技有限公司 一种文件传输方法和设备
CN106911751A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 文件获取方法、装置与***
CN106909591A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 文件获取方法、装置与***
CN107426258A (zh) * 2016-05-23 2017-12-01 华为技术有限公司 一种镜像文件的上传和下载方法及装置
CN107872489B (zh) * 2016-09-28 2020-06-05 杭州海康威视数字技术股份有限公司 一种文件切片上传方法、装置及云存储***
CN107872489A (zh) * 2016-09-28 2018-04-03 杭州海康威视数字技术股份有限公司 一种文件切片上传方法、装置及云存储***
CN107959695A (zh) * 2016-10-14 2018-04-24 北京国双科技有限公司 一种数据传输方法及装置
CN108234539A (zh) * 2016-12-14 2018-06-29 北京金山云网络技术有限公司 一种文件上传、下载、传输方法及装置
CN107360233A (zh) * 2017-07-14 2017-11-17 世纪龙信息网络有限责任公司 文件上传的方法、装置、设备及可读存储介质
CN107483627B (zh) * 2017-09-12 2021-06-22 网宿科技股份有限公司 一种文件分发、下载方法、分发服务器、客户端及***
CN107483627A (zh) * 2017-09-12 2017-12-15 网宿科技股份有限公司 一种文件分发、下载方法、分发服务器、客户端及***
US11190576B2 (en) 2017-09-12 2021-11-30 Wangsu Science & Technology Co., Ltd. File distribution and download method, distribution server, client terminal and system
US11172023B2 (en) 2017-09-29 2021-11-09 Wangsu Science & Technology Co., Ltd. Data synchronization method and system
CN109144966A (zh) * 2018-07-06 2019-01-04 航天星图科技(北京)有限公司 一种海量时空数据的高效组织与管理方法
CN109658542A (zh) * 2018-11-16 2019-04-19 深圳市元征科技股份有限公司 诊断参数数据校验方法、装置、车辆诊断设备和存储介质
CN109660639A (zh) * 2018-12-11 2019-04-19 深圳市网心科技有限公司 一种数据上传方法、设备、***及介质
CN109660639B (zh) * 2018-12-11 2022-02-25 深圳市迅雷网络技术有限公司 一种数据上传方法、设备、***及介质
CN109714330A (zh) * 2018-12-24 2019-05-03 武汉烽火众智数字技术有限责任公司 一种跨网络的断点续传方法和***
CN109714330B (zh) * 2018-12-24 2021-07-23 武汉烽火众智数字技术有限责任公司 一种跨网络的断点续传方法和***
CN110417890A (zh) * 2019-07-30 2019-11-05 深圳市瑞云科技有限公司 一种提升企业渲染客户端文件秒传校验的方法
WO2021036228A1 (zh) * 2019-08-23 2021-03-04 深圳市鹰硕技术有限公司 文件上传方法、装置、终端、服务器、***及存储介质
CN111131450A (zh) * 2019-12-23 2020-05-08 北京奇艺世纪科技有限公司 文件上传方法、重组方法及装置
CN115004665A (zh) * 2020-01-21 2022-09-02 华为技术有限公司 文件分享方法、装置及***
CN115004665B (zh) * 2020-01-21 2024-04-09 华为技术有限公司 文件分享方法、装置及***
CN111404990A (zh) * 2020-02-14 2020-07-10 Oppo(重庆)智能科技有限公司 文件传输方法、装置、客户端及存储介质
CN111367926A (zh) * 2020-02-27 2020-07-03 星辰天合(北京)数据科技有限公司 分布式***的数据处理方法和装置
CN113273163A (zh) * 2020-05-26 2021-08-17 深圳元戎启行科技有限公司 文件上传方法、文件下载方法和文件管理装置
CN111770165A (zh) * 2020-06-28 2020-10-13 百度在线网络技术(北京)有限公司 用于上传文件的方法、装置、电子设备及可读存储介质
CN112351111A (zh) * 2020-12-30 2021-02-09 常州微亿智造科技有限公司 一种工业质检文件上传服务器端近实时进度监控方法
CN112351111B (zh) * 2020-12-30 2023-01-03 常州微亿智造科技有限公司 一种工业质检文件上传服务器端近实时进度监控方法
CN112860729A (zh) * 2021-03-29 2021-05-28 中信银行股份有限公司 一种运算方法、装置、电子设备和可读存储介质
CN114363321A (zh) * 2021-12-30 2022-04-15 支付宝(杭州)信息技术有限公司 文件传输方法、设备及***
CN116760819A (zh) * 2023-07-14 2023-09-15 中电长城网际***应用广东有限公司 计算机文件网络传送方法、计算机装置和装置介质
CN116760819B (zh) * 2023-07-14 2024-01-30 中电长城网际***应用广东有限公司 计算机文件网络传送方法、计算机装置和装置介质

Also Published As

Publication number Publication date
CN103731451B (zh) 2018-10-19
WO2014056428A1 (zh) 2014-04-17
US10681127B2 (en) 2020-06-09
US20150215400A1 (en) 2015-07-30

Similar Documents

Publication Publication Date Title
CN103731451A (zh) 一种文件上传的方法及***
US11297140B2 (en) Point of presence based data uploading
CN102037678B (zh) 分发在多个接收机处可用的内容的映射图的***和方法
JP5232876B2 (ja) フィードをベースにした移動端末へのコンテンツの自動送信技術
CN106656593B (zh) 流媒体直播录制冗余热备的方法及***
KR101573197B1 (ko) 피투피 기반 파일 전송 제어 방법 및 이를 위한 피투피 통신 제어 장치
CN105743945B (zh) 基于切换下载源的文件下载方法及***
CN111447248A (zh) 一种文件传输的方法及装置
CN103259866B (zh) 一种多点传输dns区文件的方法和***
CN103475682A (zh) 文件迁移方法及设备
JP2002268979A (ja) ダウンロード方法及び装置、ダウンロード用プログラム並びにそのプログラムを記録した記録媒体
US8103631B2 (en) Merging files on storage and retrieve
CN113572750B (zh) 视频数据传输方法及装置
US20150006622A1 (en) Web contents transmission method and apparatus
CN102170456A (zh) 对等网络中获取内容的方法、装置和***
US8984100B2 (en) Data downloading method, terminal, server, and system
US8984382B2 (en) Distributed data distribution
WO2016070566A1 (zh) 云终端升级方法、***、网管服务器及代理服务器
CN104581421A (zh) 一种点对点流媒体下载方法及节点终端装置
US9137331B2 (en) Adaptive replication
JP2007272540A (ja) データ配信方法及びデータ配信システム
CN111131498B (zh) Url信息更新方法、缓存服务器、设备及存储介质
US10108588B2 (en) Method and system for communicating between client pages
CN103731511A (zh) 一种p2p***中数据获取方法和装置
CN102098339A (zh) 一种音频文件传输方法及其***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190801

Address after: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403

Co-patentee after: Tencent cloud computing (Beijing) limited liability company

Patentee after: Tencent Technology (Shenzhen) Co., Ltd.

Address before: 518000 Guangdong city of Shenzhen province Futian District SEG Science Park 2 East Room 403

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.

TR01 Transfer of patent right