CN104519090B - 文件传输方法及装置 - Google Patents
文件传输方法及装置 Download PDFInfo
- Publication number
- CN104519090B CN104519090B CN201310452112.6A CN201310452112A CN104519090B CN 104519090 B CN104519090 B CN 104519090B CN 201310452112 A CN201310452112 A CN 201310452112A CN 104519090 B CN104519090 B CN 104519090B
- Authority
- CN
- China
- Prior art keywords
- document
- information
- fragment
- original document
- file
- 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
Classifications
-
- 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]
Abstract
一种文件传输方法,包括:发送端获取原始文件与原始文件的文件大小信息,将原始文件分割为多个文件分片;为多个文件分片分别生成对应的分片索引信息;将原始文件的文件大小信息、多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,以使接收端根据原始文件的文件大小信息与对应的分片索引信息,将接收的多个文件分片重组为原始文件。此外,本发明还提供一种文件传输装置。上述文件传输方法及装置可提高文件传输的效率。
Description
技术领域
本发明涉及计算机通信技术,尤其涉及一种文件传输方法及装置。
背景技术
现有的文件传输技术中,若想进行文件传输,例如:微信聊天时发送图片、视频等文件给朋友等等,通常的做法是先读取文件,然后对文件进行分片,接着按从前往后的顺序,通过串行的方式,首先上传第一片数据,等待返回;再上传接下来的第二片数据,等待返回……依此类推。然而,通过串行方式发送文件分片,文件传输较慢,并且一旦发生传输异常,文件分片需要全部重传,因此现有的文件传输技术效率比较低。
发明内容
有鉴于此,本发明提供一种文件传输方法及装置,可提高文件传输的效率。
一种文件传输方法,包括:发送端获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片;为所述多个文件分片分别生成对应的分片索引信息;将所述原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
一种文件传输方法,包括:接收端接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息;根据所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
一种文件传输装置,应用于发送端,包括:原始文件获取与分割模块,用于获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片;分片索引信息生成模块,用于为所述原始文件获取与分割模块分割后的所述多个文件分片分别生成对应的分片索引信息;发送模块,用于将所述原始文件获取与分割模块获取的所述原始文件的文件大小信息、所述多个文件分片以及所述分片索引信息生成模块生成的所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
一种文件传输装置,应用于接收端,包括:接收模块,用于接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息;重组模块,用于根据所述接收模块接收的所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
本发明实施例提供的文件传输方法及装置,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为本发明第一实施例提供的文件传输方法的流程图。
图2为本发明第二实施例提供的文件传输方法的流程图。
图3为本发明第三实施例提供的文件传输方法的流程图。
图4为本发明第四实施例提供的文件传输方法的流程图。
图5为本发明第四实施例提供的文件传输方法中获取异常文件分片的分片信息的示意图。
图6为本发明第五实施例提供的文件传输方法的流程图。
图7为本发明第六实施例提供的文件传输装置的结构示意图。
图8为本发明第七实施例提供的文件传输装置的结构示意图。
图9为本发明第八实施例提供的文件传输装置的结构示意图。
图10为本发明第九实施例提供的文件传输装置的结构示意图。
图11为本发明提供的文件传输系统的结构示意图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
本发明实施例所提供的文件传输方法可应用于实现发送端与接收端之间的文件传输。其中,发送端可以包括用户终端或服务器,接收端也可以包括用户终端或服务器。用户终端具体可以包括智能手机、平板电脑、电子书阅读器、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机等等。
第一实施例
图1为本发明第一实施例提供的文件传输方法的流程图。本实施例描述的是发送端的处理流程。如图1所示,本实施例的文件传输方法包括以下步骤:
步骤S11,发送端获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片。
具体地,发送端获取原始文件与该原始文件的文件大小信息,按照预置的分割规则,将该原始文件分割为大小均等、或大小不等的多个文件分片。预置的分割规则可以根据实际应用的情况来制定,本发明的具体实施方式并不以此为限。
步骤S12,为所述多个文件分片分别生成对应的分片索引信息。
具体地,发送端按照预置的生成规则,为分割出的每个分片文件分别生成对应的分片索引信息,也即有多少个文件分片就生成多少个分片索引信息。其中,分片索引信息可用于标识该分片索引信息对应的文件分片在原始文件中的位置或顺序,通过分片索引信息可将所有的文件分片有序编排起来,这样便于发送端对所有文件分片的发送情况进行监控,从而提高文件传输的效率。
步骤S13,将所述原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
多路并发是指将原始文件按预置的分割规则分割为多个文件分片,然后将分割的多个分片并发传输。可以理解的,发送端可首先与接收端建立多个线程,然后将多个文件分片通过建立的多个线程并行发送给接收端,也可在只建立单线程的情况下,按照预置的发送规则,将多个文件分片分批并行发送给接收端。由于是将多个文件分片并行发送给接收端,因此可提高文件传输的速度。
此外,由于发送端除了文件分片之外,还将原始文件的文件大小信息以及每个文件分片对应的分片索引信息也发送给接收端,接收端只需根据接收的分片索引信息以及原始文件的文件大小信息即可将所有的文件分片重组为原始文件,因此发送端可将文件分片按照任意顺序发送给接收端,从而可提高文件传输的灵活性。
本发明实施例提供的文件传输方法,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。
第二实施例
图2为本发明第二实施例提供的文件传输方法的流程图。本实施例描述的是发送端的处理流程。如图2所示,本实施例的文件传输方法包括以下步骤:
步骤S21,发送端获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片。
具体地,发送端可根据接收端发送的传输指令,从本地存储器或云端存储器获取原始文件及其文件大小信息,然后按照预置的文件分片大小,将原始文件分割为多个文件分片,或者根据网络带宽或网络处理数据速度,将原始文件分割为多个文件分片,其中,网络带宽越宽或网络处理数据速度越快,则文件分片越大。举例来说,假设发送端为服务器,接收端为用户终端,服务器接收用户终端发送的下载指令,根据该下载指令中包含的原始文件的IP地址信息,从本地存储器或云端存储器获取原始文件及其文件大小信息,然后按照预置的文件分片大小,将获取的原始文件分割为多个文件分片;或者假设发送端为用户终端,接收端为服务器,用户终端向服务器发送包含身份验证信息的原始文件上传请求,服务器在该身份验证信息通过验证后,向用户终端返回上传响应,用户终端根据该上传响应,读取本地存储的原始文件及其文件大小信息,然后按照预置的文件分片大小,将获取的原始文件分割为多个文件分片;或者假设发送端与接收端均为服务器或均为对等网中的用户终端,发送端根据接收端发送的传输指令,从本地存储器获取原始文件及其文件大小信息,然后根据网络处理数据速度,将原始文件分割为多个文件分片。
步骤S22,获取每个分片文件的大小信息,根据所述每个分片文件的大小信息,计算所述每个分片文件在所述原始文件中的起始偏移量与结束偏移量。
偏移量可用于标识每个分片文件在原始文件中的位置。具体的,发送端获取分割后的每个分片文件的文件大小信息,然后根据每个分片文件的文件大小,计算每个分片文件在原始文件中的起始偏移量与结束偏移量。例如:假设原始文件的大小为1M(兆),根据预置的分割规则,发送端将该原始文件分割为大小均等的100个文件分片,则每个文件分片的分片大小为10K(千),其中第一个文件分片的起始偏移量为1K,结束偏移量为10K,第二个文件分片的起始偏移量为11K,结束偏移量为20K,以此类推。
步骤S23,根据所述起始偏移量与所述结束偏移量,为所述多个文件分片分别生成对应的分片索引信息。
具体地,分片索引数据结构可定义如下:
发送端根据每个文件分片在原始文件中的起始偏移量与结束偏移量,为每个文件分片分别生成对应的分片索引信息,并将生成的所有分片索引信息保存在本地存储器或云端存储器中。
可以理解的,于本实施例一具体实施方式中,为便于检索,发送端也可根据生成的所有分片索引信息编制分片索引表单,该分片索引表单中记录所有文件分片的分片大小信息、所有分片索引信息中包含的起始偏移量与结束偏移量信息、以及文件分片与分片索引信息之间的对应关系。发送端将该分片索引表单存储于本地存储器或云端存储器中,并在向接收端发送原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息的同时,将该分片索引表单一并发送给接收端,以便接收端根据该分片索引表对文件分片接收情况进行监控,并当发生接收异常时,根据该分片索引表核对缺失的文件分片。
步骤S24,将所述原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
本步骤具体请参考第一实施例中的相应内容,此处不再赘述。
步骤S25,接收所述接收端发送的异常文件分片的分片信息,所述分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
步骤S26,根据所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息,获取所述异常文件分片,将所述异常文件分片发送给所述接收端。
具体地,发送端在本地存储的所有文件分片索引信息或文件分片索引单中,搜寻包含异常文件分片在原始文件中的起始偏移量与结束偏移量信息的文件分片索引信息,并根据搜寻到的文件分片索引信息查找对应的文件分片,也即异常文件分片,然后将查找到的异常文件分片发送给接收端。例如:假设接收到的分片信息中包含的异常文件分片在原始文件中的起始偏移量与结束偏移量信息分别为:(201K、300K),根据分片索引表单的记录或保存的已发送文件分片的分片索引信息,原始文件的文件大小为400K,该文件被分割为4个文件分片,每个文件分片的分片索引信息分别为:P1(1K,100K)、P2(101K,200K)、P3(201K,300K)、P4(301K,400K),发送端根据接收的分片信息(201K、300K),查询分片索引表单中的记录或保存的已发送文件分片的分片索引信息,可获得异常文件分片P3。又例如:假设接收到的分片信息中包含的异常文件分片在原始文件中的起始偏移量与结束偏移量信息分别为:(121K、480K),根据分片索引表单的记录,原始文件的文件大小为720K,该文件被分割为6个文件分片,每个文件分片的分片索引信息分别为:P1(1K,120K)、P2(121K,240K)、P3(241K,360K)、P4(361K,480K)、P5(481K,600K)、P6(601K,720K),发送端根据接收的分片信息(121K、480K),核对分片索引表单中的记录可知,异常文件分片为P2、P3、P4,并根据分片索引表单中记录的分片索引信息与文件分片的对应关系,获得上述3个异常文件分片并将其补发给接收端。
本发明实施例提供的文件传输方法,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。此外,由于通过分片索引信息,可在发送端与接收端之间形成对账机制,当发生文件传输异常时,发送端只需通过分片索引信息核对缺失的文件分片并将其补发给接收端即可,从而避免了文件分片的全部重传,因此可进一步提高文件传输的效率。
第三实施例
图3为本发明第三实施例提供的文件传输方法的流程图。本实施例描述的是接收端的处理流程。如图3所示,本实施例的文件传输方法包括以下步骤:
步骤S31,接收端接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息。
步骤S32,根据所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
分片索引信息中包含可用于标识该分片索引信息对应的文件分片在原始文件中的位置或顺序的索引信息。接收端根据分片索引信息,将接收到的所有文件分片进行排序,并重组为原始文件。
本发明实施例提供的文件传输方法,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。
第四实施例
图4为本发明第四实施例提供的文件传输方法的流程图。本实施例描述的是接收端的处理流程。如图4所示,本实施例的文件传输方法包括以下步骤:
步骤S41,接收端接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息。
分片索引信息中包含分片索引信息对应的文件分片在原始文件中的起始偏移量与结束偏移量信息。其中,起始偏移量与结束偏移量由发送端根据分割的文件分片的分片大小计算生成。通过起始偏移量与结束偏移量信息,可确定每个文件分片在原始文件中的起始位置与结束位置、以及每个文件分片之间的相邻关系。
步骤S42,所述接收端在监测到发生文件分片接收异常时,根据所述原始文件的文件大小信息,分析已接收的文件分片的分片索引信息,获取异常文件分片的分片信息。
文件分片接收异常指文件分片在传输过程中发送丢包或损坏的情况。当超过预置的接收时长,仍然未完成文件分片的接收,则可确认发送文件分片接收异常,或者虽然所有的文件分片均接收完毕,但根据分片索引信息,无法将接收到的所有文件分片重组为原始文件,或者所有分片索引信息中包含的总偏移量小于原始文件的大小,则可确认发送文件分片接收异常。当接收端监测到发生文件分片接收异常时,根据已接收的原始文件的文件大小信息,分析每个文件分片的分片索引信息,获取异常文件分片的分片信息。其中,分片信息中包括异常文件分片在原始文件中的起始偏移量与结束偏移量信息。例如,假设原始文件的文件大小为500K(千),超过预置的接收时长,监测到已接收到4个文件分片,其对应的文件索引信息中所包含的起始偏移量与结束偏移量分别为:(1K,100K)、(101K,200K)、(301K,400K)、(401K,500K),经过统计可知,已接收的分片索引信息中包含的总偏移量为400K,远远小于原始文件的文件大小500K,可确认文件分片接收异常。同时,如图5所示,根据已接收的每个文件索引信息所包含的起始偏移量与结束偏移量可知异常接收的(也即缺失的)文件分片的分片信息,也即该文件分片在原始文件中的起始偏移量与结束偏移量分别为:(201K,300K)。
可以理解的,于本实施例一具体实施方式中,除原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息之外,接收端还可从发送端获得分片索引表单,该分片索引表单中记录所有文件分片的分片大小信息、所有分片索引信息中包含的起始偏移量与结束偏移量信息、以及文件分片与分片索引信息之间的对应关系。接收端根据分片索引表单核对已接收到的文件分片的分片索引信息,获取异常文件分片的分片信息。
如上所述,通过分片索引信息可以使得接收端快速查找到发生接收异常的文件分片,获取该文件分片的起始偏移量与结束偏移量信息并发送给发送端,以便发送端根据该文件分片的起始偏移量与结束偏移量信息,将该文件分片重新发送给接收端,从而可提高接收端与发送端查找发生接收异常的文件分片的速度,进而提高文件传输的效率。
步骤S43,将所述分片信息发送给所述发送端,以使所述发送端根据所述分片信息获取所述分片信息对应的文件分片,并将所述文件分片发送给所述接收端。
接收端将获取的异常文件分片的分片信息发送到发送端进行核对,发送端根据该分片信息获取对应的文件分片,然后重新发送给接收端。
步骤S44,接收所述发送端发送的所述文件分片。
步骤S45,根据所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
本步骤具体请参考第二实施例的相应内容,此处不再赘述。
本发明实施例提供的文件传输方法,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。此外,由于通过分片索引信息,可在发送端与接收端之间形成对账机制,当发生文件传输异常时,接收端只需通过分片索引信息即可核对出缺失的文件分片,然后通过将该文件分片的分片信息发送给发送端,以便发送端将其补发给接收端即可,从而避免了文件分片的全部重传,因此可进一步提高文件传输的效率。
第五实施例
图6为本发明第五实施例提供的文件传输方法的流程图。如图6所示,本实施例的文件传输方法包括以下步骤:
步骤S51,发送端将原始文件分割为多个文件分片,为所述多个文件分片分别生成对应的分片索引信息,将所述原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息,以多路并发的方式传输给接收端。
本步骤具体请参考第一实施例与第二实施例中的相应内容,此处不再赘述。
步骤52,所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
本步骤具体请参考第三实施例与第四实施例中的相应内容,此处不再赘述。
可以理解的,发送端与接收端也可作为两个模块配置于同一个装置中,使得该装置在接收到对端的发送请求时,通过发送模块将发送请求指示发送的原始文件分割为多个文件分片,并为多个文件分片分别生成对应的分片索引信息,然后将原始文件的文件大小信息、多个文件分片以及对应的分片索引信息,以多路并发的方式传输给对端;或通过接收模块接收对端以多路并发的方式传输的原始文件的文件大小信息、多个文件分片以及对应的分片索引信息,然后根据接收的原始文件的文件大小信息与对应的分片索引信息,将接收的多个文件分片重组为原始文件。
本发明实施例提供的文件传输方法,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而提高文件传输的灵活性以及速度,进而提高文件传送的效率。
第六实施例
图7为本发明第六实施例提供的文件传输装置的结构示意图。本实施例提供的文件传输装置可以用于发送端中,实现上述实施例中的文件传输方法。如图7所示,文件传输装置60包括:原始文件获取与分割模块61、分片索引信息生成模块62、以及发送模块63。
其中,原始文件获取与分割模块61用于获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片。
分片索引信息生成模块62用于为所述原始文件获取与分割模块61分割后的所述多个文件分片分别生成对应的分片索引信息。
发送模块63用于将所述原始文件获取与分割模块61获取的所述原始文件的文件大小信息、所述多个文件分片以及所述分片索引信息生成模块62生成的所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。
本实施例对文件传输装置60的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的文件传输装置,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。
第七实施例
图8为本发明第七实施例提供的文件传输装置的结构示意图。本实施例提供的文件传输装置可以用于发送端中,实现上述实施例中的文件传输方法。如图8所示,文件传输装置70包括:原始文件获取与分割模块71、分片索引信息生成模块72、发送模块73、分片信息接收模块74以及异常文件分片获取模块75。
其中,原始文件获取与分割模块71用于获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片。
分片索引信息生成模块72用于为所述原始文件获取与分割模块71分割后的所述多个文件分片分别生成对应的分片索引信息。所述分片索引信息生成模块包括:计算单元721、以及生成单元722。计算单元721用于获取每个分片文件的大小信息,根据所述每个分片文件的大小信息,计算所述每个分片文件在所述原始文件中的起始偏移量与结束偏移量;生成单元722根据所述计算单元721计算的所述起始偏移量与所述结束偏移量,为所述多个文件分片分别生成对应的分片索引信息。
发送模块73用于将所述原始文件获取与分割模块71获取的所述原始文件的文件大小信息、所述多个文件分片以及所述分片索引信息生成模块72生成的所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件。还用于将所述异常文件分片获取模块获取的所述异常文件分片发送给所述接收端。
分片信息接收模块74用于接收所述接收端发送的异常文件分片的分片信息,所述分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
异常文件分片获取模块75用于根据所述分片信息接收模块74接收的所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息,获取所述异常文件分片。
本实施例对文件传输装置70的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的文件传输装置,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。此外,由于通过分片索引信息,可在发送端与接收端之间形成对账机制,当发生文件传输异常时,发送端只需通过分片索引信息核对缺失的文件分片并将其补发给接收端即可,因此可进一步提高文件传输的效率。
第八实施例
图9为本发明第八实施例提供的文件传输装置的结构示意图。本实施例提供的文件传输装置可以用于接收端中,实现上述实施例中的文件传输方法。如图9所示,文件传输装置80包括:接收模块81、以及重组模块82。
其中,接收模块81用于接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息。
重组模块82用于根据所述接收模块81接收的所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
本实施例对文件传输装置80的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的文件传输装置,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。
第九实施例
图10为本发明第九实施例提供的文件传输装置的结构示意图。本实施例提供的文件传输装置可以用于接收端中,实现上述实施例中的文件传输方法。如图10所示,文件传输装置90包括:接收模块91、重组模块92、分片信息获取模块93、以及分片信息发送模块94。
其中,接收模块91用于接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息。
重组模块92用于根据所述接收模块91接收的所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件。
分片信息获取模块93用于当监测到发生文件分片接收异常时,获取异常文件分片的分片信息。所述分片信息获取模块包括:分片信息获取单元931。分片信息获取单元931用于根据所述接收模块91接收的所述原始文件的文件大小信息,分析已接收的文件分片的分片索引信息,获取异常文件分片的分片信息。
优选地,所述分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
分片信息发送模块94用于将所述分片信息获取模块93获取的所述分片信息发送给所述发送端,以使所述发送端根据所述分片信息获取所述分片信息对应的文件分片,并将所述文件分片发送给所述接收端。
优选地,所述分片索引信息中包含所述分片索引信息对应的文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
本实施例对文件传输装置90的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的文件传输装置,通过为分割出的多个文件分片分别生成对应的分片索引信息,然后将多个文件分片以及对应的分片索引信息,以多路并发的方式传输给接收端,可实现文件分片的任意顺序的多路并发传输,从而可提高文件传输的灵活性以及速度,进而提高文件传送的效率。此外,由于通过分片索引信息,可在发送端与接收端之间形成对账机制,当发生文件传输异常时,接收端只需通过分片索引信息即可核对出缺失的文件分片,然后通过将该文件分片的分片信息发送给发送端,以便发送端将其补发给接收端即可,从而避免了文件分片的全部重传,因此可进一步提高文件传输的效率。
本发明实施例还提供了一种文件传输系统,请参阅图11,文件传输系统10包括:发送端11、接收端12。
本实施例中的文件传输系统中各装置实现功能的具体过程请参阅图1至图6对应实施例的方法,以及图7图至图10对应实施例的装置,此处不再赘述。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (12)
1.一种文件传输方法,其特征在于,包括:
发送端获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片;
为所述多个文件分片分别生成对应的分片索引信息;
将所述原始文件的文件大小信息、所述多个文件分片以及所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件;
在发生文件分片接收异常时,接收所述接收端发送的异常文件分片的分片信息,根据所述异常文件分片的分片信息获取所述异常文件分片,将所述异常文件分片发送给所述接收端。
2.根据权利要求1所述的方法,其特征在于,所述为所述多个文件分片分别生成对应的分片索引信息的步骤包括:
获取每个分片文件的大小信息,根据所述每个分片文件的大小信息,计算所述每个分片文件在所述原始文件中的起始偏移量与结束偏移量;
根据所述起始偏移量与所述结束偏移量,为所述多个文件分片分别生成对应的分片索引信息。
3.根据权利要求1所述的方法,其特征在于,所述异常文件分片的分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
4.一种文件传输方法,其特征在于,包括:
接收端接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息;
根据所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件;
所述接收端在监测到发生文件分片接收异常时,获取异常文件分片的分片信息;
将所述分片信息发送给所述发送端,以使所述发送端根据所述异常文件分片的分片信息获取所述分片信息对应的文件分片,并将所述分片信息对应的文件分片发送给所述接收端。
5.根据权利要求4所述的方法,其特征在于,所述分片索引信息中包含所述分片索引信息对应的文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
6.根据权利要求5所述的方法,其特征在于,所述获取异常文件分片的分片信息的步骤包括:
根据所述原始文件的文件大小信息,分析已接收的文件分片的分片索引信息,获取异常文件分片的分片信息,所述分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
7.一种文件传输装置,应用于发送端,其特征在于,包括:
原始文件获取与分割模块,用于获取原始文件与所述原始文件的文件大小信息,将所述原始文件分割为多个文件分片;
分片索引信息生成模块,用于为所述原始文件获取与分割模块分割后的所述多个文件分片分别生成对应的分片索引信息;
发送模块,用于将所述原始文件获取与分割模块获取的所述原始文件的文件大小信息、所述多个文件分片以及所述分片索引信息生成模块生成的所述对应的分片索引信息,以多路并发的方式传输给接收端,以使所述接收端根据所述原始文件的文件大小信息与所述对应的分片索引信息,将接收的所述多个文件分片重组为所述原始文件;
分片信息接收模块,用于接收所述接收端发送的异常文件分片的分片信息;
异常文件分片获取模块,用于根据所述分片信息接收模块接收的所述异常文件分片的分片信息,获取所述异常文件分片;
所述发送模块,还用于将所述异常文件分片获取模块获取的所述异常文件分片发送给所述接收端。
8.根据权利要求7所述的装置,其特征在于,所述分片索引信息生成模块包括:
计算单元,用于获取每个分片文件的大小信息,根据所述每个分片文件的大小信息,计算所述每个分片文件在所述原始文件中的起始偏移量与结束偏移量;
生成单元,根据所述计算单元计算的所述起始偏移量与所述结束偏移量,为所述多个文件分片分别生成对应的分片索引信息。
9.根据权利要求7所述的装置,其特征在于,
所述异常文件分片的分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
10.一种文件传输装置,应用于接收端,其特征在于,包括:
接收模块,用于接收发送端通过多路并发的方式发送的原始文件的文件大小信息、多个文件分片以及所述多个文件分片的对应的分片索引信息;
重组模块,用于根据所述接收模块接收的所述原始文件的文件大小信息与所述分片索引信息,将所述多个文件分片重组为所述原始文件;
分片信息获取模块,用于当监测到发生文件分片接收异常时,获取异常文件分片的分片信息;
分片信息发送模块,用于将所述分片信息获取模块获取的所述分片信息发送给所述发送端,以使所述发送端根据所述分片信息获取所述分片信息对应的文件分片,并将所述文件分片发送给所述接收端。
11.根据权利要求10所述的装置,其特征在于,所述分片索引信息中包含所述分片索引信息对应的文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
12.根据权利要求10所述的装置,其特征在于,所述分片信息获取模块包括:
分片信息获取单元,用于根据所述接收模块接收的所述原始文件的文件大小信息,分析已接收的文件分片的分片索引信息,获取异常文件分片的分片信息,所述分片信息包括所述异常文件分片在所述原始文件中的起始偏移量与结束偏移量信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310452112.6A CN104519090B (zh) | 2013-09-27 | 2013-09-27 | 文件传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310452112.6A CN104519090B (zh) | 2013-09-27 | 2013-09-27 | 文件传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104519090A CN104519090A (zh) | 2015-04-15 |
CN104519090B true CN104519090B (zh) | 2019-02-12 |
Family
ID=52793808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310452112.6A Active CN104519090B (zh) | 2013-09-27 | 2013-09-27 | 文件传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104519090B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110261554A (zh) * | 2019-07-15 | 2019-09-20 | 北京中孚豹科技有限公司 | 一种食品安全检测系统及方法 |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967663A (zh) * | 2015-05-12 | 2015-10-07 | 无锡天脉聚源传媒科技有限公司 | 一种文件传输方法及系统、文件发送装置与文件接收装置 |
CN104935650B (zh) * | 2015-06-03 | 2019-01-04 | 南京传唱软件科技有限公司 | 文件传输方法、系统及装置 |
CN104935858A (zh) * | 2015-06-03 | 2015-09-23 | 无锡天脉聚源传媒科技有限公司 | 一种处理视频文件的方法及装置 |
CN106302604B (zh) * | 2015-06-05 | 2020-09-11 | 腾讯科技(深圳)有限公司 | 数据传输方法及装置 |
CN105007322A (zh) * | 2015-07-21 | 2015-10-28 | 陈丹 | 一种文件传输方法及系统 |
CN106557518A (zh) * | 2015-09-29 | 2017-04-05 | 北大方正集团有限公司 | 一种用于传输文件的方法、装置以及终端 |
CN106603603A (zh) * | 2015-10-16 | 2017-04-26 | 北大方正集团有限公司 | 用于支持html5浏览器的多文件异步上传方法及系统 |
CN105897825A (zh) * | 2015-11-20 | 2016-08-24 | 乐视云计算有限公司 | 异步传输文件的方法及系统 |
CN105491132A (zh) * | 2015-12-11 | 2016-04-13 | 北京元心科技有限公司 | 文件服务器、终端及其文件分包传输方法 |
CN105450785B (zh) * | 2016-01-26 | 2019-12-06 | 青岛海信电器股份有限公司 | 一种文件传输方法和装置 |
CN105933037A (zh) * | 2016-06-07 | 2016-09-07 | Tcl移动通信科技(宁波)有限公司 | 一种基于蓝牙的移动终端文件传输方法及系统 |
CN106131131A (zh) * | 2016-06-24 | 2016-11-16 | 乐视控股(北京)有限公司 | 文件传输方法及装置 |
CN106331146A (zh) * | 2016-09-08 | 2017-01-11 | 四川大学 | 基于移动云计算的大容量数据下载方法及其系统 |
CN106790525A (zh) * | 2016-12-20 | 2017-05-31 | 广东小天才科技有限公司 | 一种文件下载方法及装置 |
CN108401002B (zh) * | 2017-02-07 | 2021-01-01 | 腾讯科技(深圳)有限公司 | 文件传输方法及设备 |
CN107360191B (zh) * | 2017-08-28 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 一种文件获取方法、装置及存储设备 |
CN107528926A (zh) * | 2017-10-11 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种文件上传方法和系统 |
CN111163118B (zh) * | 2018-11-07 | 2023-04-07 | 株式会社日立制作所 | 一种Kafka集群中的消息传输方法及装置 |
CN109587222A (zh) * | 2018-11-12 | 2019-04-05 | 厦门安胜网络科技有限公司 | 一种文件碎片化传输的方法、装置及存储介质 |
CN109981751B (zh) * | 2019-03-06 | 2022-06-17 | 珠海金山网络游戏科技有限公司 | 一种文件传输方法及系统、计算机设备及存储介质 |
CN110474992B (zh) * | 2019-09-25 | 2022-07-22 | 苏州浪潮智能科技有限公司 | 一种文件传输方法、装置、设备及存储介质 |
CN110795405B (zh) * | 2019-11-11 | 2022-07-15 | 厦门市美亚柏科信息股份有限公司 | 一种分片数据还原方法、终端设备及存储介质 |
CN111225021B (zh) * | 2019-11-13 | 2020-11-27 | 北京连山时代科技有限公司 | 一种基于文件破碎与重组的多链路并发传输方法和系统 |
CN111245748A (zh) * | 2020-01-03 | 2020-06-05 | 北京明略软件系统有限公司 | 文件传输方法及装置、系统、电子设备、存储介质 |
CN111459883B (zh) * | 2020-03-31 | 2023-08-18 | 潍柴动力股份有限公司 | 数据的处理方法及装置 |
CN112311902B (zh) * | 2020-12-23 | 2021-05-07 | 深圳市蓝凌软件股份有限公司 | 基于微服务的文件发送方法及装置 |
CN113141415B (zh) * | 2021-05-07 | 2023-05-12 | 广州小鹏汽车科技有限公司 | 车辆的远程驾驶系统、方法、电子设备及存储介质 |
CN113824771A (zh) * | 2021-08-25 | 2021-12-21 | 深圳市玩物科技有限公司 | 文件传输方法、装置、设备、存储介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980509A (zh) * | 2010-11-05 | 2011-02-23 | 北京云快线软件服务有限公司 | 一种文件分片传输方法及装置 |
CN102571966A (zh) * | 2012-01-16 | 2012-07-11 | 上海方正数字出版技术有限公司 | 一种大型xml文件的网络传输方法 |
CN102790771A (zh) * | 2012-07-25 | 2012-11-21 | 山东中创软件商用中间件股份有限公司 | 一种文件传输方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130046540A (ko) * | 2011-10-28 | 2013-05-08 | 삼성에스디에스 주식회사 | 데이터 전송 장치 및 방법 |
-
2013
- 2013-09-27 CN CN201310452112.6A patent/CN104519090B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980509A (zh) * | 2010-11-05 | 2011-02-23 | 北京云快线软件服务有限公司 | 一种文件分片传输方法及装置 |
CN102571966A (zh) * | 2012-01-16 | 2012-07-11 | 上海方正数字出版技术有限公司 | 一种大型xml文件的网络传输方法 |
CN102790771A (zh) * | 2012-07-25 | 2012-11-21 | 山东中创软件商用中间件股份有限公司 | 一种文件传输方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110261554A (zh) * | 2019-07-15 | 2019-09-20 | 北京中孚豹科技有限公司 | 一种食品安全检测系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104519090A (zh) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104519090B (zh) | 文件传输方法及装置 | |
US9462054B2 (en) | Systems and methods for providing a user with a set of interactivity features locally on a user device | |
CN107483627A (zh) | 一种文件分发、下载方法、分发服务器、客户端及系统 | |
CN110418376A (zh) | 数据传输方法及装置 | |
CN105450785B (zh) | 一种文件传输方法和装置 | |
CN106170968B (zh) | 一种数据压缩存储方法、装置,及分布式文件系统 | |
CN106156037B (zh) | 数据处理方法、装置及系统 | |
CN105721526B (zh) | 一种终端、服务器文件同步的方法及装置 | |
US8806051B2 (en) | Multimedia file sharing method and system thereof | |
CN105554081A (zh) | 一种文件差量的传输方法以及装置 | |
CN103369034A (zh) | 一种将照片发送到数码相框的方法、系统及装置 | |
CN105338421A (zh) | 一种hls流媒体传输方法及装置 | |
CN106294627A (zh) | 数据管理方法及数据服务器 | |
CN103368951A (zh) | 文件下载方法及系统 | |
CN108574717A (zh) | 一种跨终端文件上传方法、装置及系统 | |
CN105721520A (zh) | 一种文件同步方法及装置 | |
JP2019502182A (ja) | 共有コンテンツアイテムのランダム化ピアツーピア同期 | |
US20170134494A1 (en) | Method, apparatus, and system of data storage and acquisition | |
CN106453663B (zh) | 改进的基于云服务的存储扩容方法及装置 | |
CN104954324B (zh) | 一种Session容灾方法及装置 | |
CN110719526B (zh) | 视频播放方法及装置 | |
CN105897842A (zh) | 不同客户端间的视频推送方法、系统及服务器 | |
CN108234567A (zh) | 数字报文件的上传方法、客户端、云存储平台和服务器 | |
US11005497B2 (en) | Information processing device, information processing method, and program | |
CN106603977B (zh) | 基于Linux多核环境的视频采集方法及装置 |
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 |