CN101272354B - 一种文件传输方法、装置和系统 - Google Patents
一种文件传输方法、装置和系统 Download PDFInfo
- Publication number
- CN101272354B CN101272354B CN2007100874725A CN200710087472A CN101272354B CN 101272354 B CN101272354 B CN 101272354B CN 2007100874725 A CN2007100874725 A CN 2007100874725A CN 200710087472 A CN200710087472 A CN 200710087472A CN 101272354 B CN101272354 B CN 101272354B
- Authority
- CN
- China
- Prior art keywords
- file
- items
- addresses
- 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.)
- Expired - Fee Related
Links
Images
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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种文件传输方法、装置和系统,所述方法包括:将一个文件分成多段,通过多个起始邮件和/或多个目标邮件地址完成文件的分段发送与接收并组合成一个完整的文件,在至少一个文件分段发送完成后即通过即时消息通知接收端接收,从而做到一边发送,一边接收,达到以邮件技术、文件分段传输和即时通讯技术相结合模拟文件的即时传输的效果。这样,接收端能够通过即时消息及时获知该文件的传输状态,在传输出现异常时及时做出反馈,保证了文件传输的可靠性。并且,由于接收端能够在第一时间获知文件是否传输完成,因此能够及时地获取该文件,提高文件传输的效率。
Description
技术领域
本发明涉及文件传输领域,特别是涉及一种利用邮件和即时通讯技术传输文件的方法、装置和系统。
背景技术
随着互联网及数码技术的普及,越来越多的普通用户拥有了数码相机、数码摄像机等数码产品,用户一般需要与家人、朋友分享拍摄的图片、影像等文件。文件传输是互联网实现文件分享的重要应用之一。在现有的文件传输技术中,通过Email传输文件最为广大用户所接受。
图1是一种被广泛应用的使用Email传输文件的原理示意图。例如,若用户11向用户14发送文件,首先,用户11将要发送的文件上传至该用户使用的发送邮件服务器12(SMTP);然后,发送邮件服务器12将该文件和邮件信息转发至用户14的接收邮件服务器13(POP3);最后,由用户14从接收邮件服务器13下载文件完成文件传输。
上述文件传输过程中,传输故障导致的用户无法正常接收邮件的情况时有发生,如网络通信故障,接收邮件服务器异常等,由于现有技术中,用户无法及时获知该异常情况,因此也就无法对该异常及时做出响应处理。并且,在发送邮件服务器12将文件发送至接收邮件服务器13这一过程结束之前,用户14只能处于等待状态。在整个过程中,用户14必须定期向服务器查询是否有新邮件,待发送过程完全结束之后,才能开始接收该邮件,其中,大量的无效的查询请求不但占用了用户计算机以及网络的资源,而且也增加了邮件服务器的负荷,降低了其处理性能。
发明内容
本发明的目的在于解决现有技术采用邮件传输文件时接收端无法及时获知文件的传输状态获,并进一步导致无法及时对传输异常做出反馈,无法及时获取文件的问题。
为解决上述问题,本发明公开了一种文件传输方法,包括下列步骤:
确定用于发送目标文件的目的邮件地址;
将目标文件发送至所述目的邮件地址;
利用即时通讯向接收端发送即时消息,所述即时消息包括用于接收该目标文件的控制指令;
若接收端收到包含所述控制指令的即时消息,从所述目的邮件地址获取相应的目标文件。
优选的,所述将目标文件发送至目的邮件地址包括:
将目标文件按预置规则分割为多个文件分段;
将所述文件分段发送至所述目的邮件地址;
利用即时通讯向接收端发送即时消息,该即时消息包括用于接收文件分段的控制指令;
所述接收端从目的邮件地址获取目标文件包括:
判断是否收到包含所述控制指令的即时消息,若收到,从所述目的邮件地址获取文件分段;
将获取到的文件分段组合成为目标文件。
优选的,所述利用即时通讯向接收端发送的即时消息是在将一个或多个文件分段发送至所述目的邮件地址之后发送。
优选的,还包括:
利用即时通讯将文件分段作为即时消息发送至接收端;
接收端从该即时消息中获取文件分段;
所述接收端获取到的用于组合成目标文件的文件分段包括从目的邮件地址中获取的文件分段以及从所述即时消息中获取的文件分段。
优选的,所述将文件分段作为即时消息发送至接收端包括:
判断当前即时通讯的传输速率,若大于预定阀值,将文件分段作为即时消息发送至接收端。
优选的,在将文件分段发送至所述目的邮件地址之前还包括:
确定起始邮件地址;
所述将文件分段发送至所述目的邮件地址是使用该起始邮件地址将文件分段发送至所述目的邮件地址。
优选的,所述起始邮件地址和/或目的邮件地址是利用即时通讯获得。
优选的,所述向接收端发送的即时消息还包括文件分段所在的目的邮件地 址信息;所述接收端用于获取文件分段的目的邮件地址是从该即时消息中获取。
优选的,所述起始邮件地址和/或目的邮件地址是从预置的邮件地址列表中按预定规则选择。
优选的,所述起始邮件地址的个数为多个;所述使用起始邮件地址将文件分段发送至目的邮件地址通过以下步骤实现:
将所述多个文件分段通过不同的起始邮件地址并发传输至所述目的邮件地址。
优选的,所述目的邮件地址的个数为多个,所述将文件分段发送至目的邮件地址是将所述多个文件分段通过不同的起始邮件地址并发传输至相应的多个目的邮件地址。
优选的,还包括:
对所述多个起始邮件地址和/或目的邮件地址按传输速度设置优选级;选择优先级高的邮件地址发送文件分段。
优选的,还包括:
接收端校验获取到的文件分段和/或合并后的目标文件,若校验失败,则向发送端发送传输失败的即时消息,该即时消息包括用于重发文件分段和/或目标文件的控制指令;若发送端收到该控制指令,重新发送相应的文件分段或目标文件。
为解决上述问题,本发明还公开了一种件传输装置,包括发送模块和接收模块,
所述发送模块包括:
第一即时通讯单元,用于发送和/或接收即时消息;
目的邮件地址确定单元,用于确定发送目标文件的目的邮件地址;
目标文件发送单元,用于将目标文件发送至所述目的邮件地址;
发送控制单元,用于控制目标文件发送单元发送目标文件,以及通知第一即时通讯单元发送即时消息,所述即时消息包括用于接收目标文件的控制指令;
所述接收模块包括:
第二即时通讯单元,用于发送和/或接收即时消息;
目标文件获取单元,用于从目的邮件地址获取目标文件;
获取控制单元,用于判断第二即时通讯单元是否收到包含有接收目标文件控制指令的即时消息,若收到,通知目标文件获取单元获取目标文件。
优选的,所述目标文件发送单元包括:
文件分割单元,用于将目标文件按预置规则分割为多个文件分段;
文件分段发送单元,用于将文件分段发送至目的邮件地址;
所述发送控制单元包括:
文件分段发送控制单元,用于控制文件分段发送单元发送文件分段,以及通知第一即时通讯单元发送即时消息,该即时消息包含用于接收文件分段的控制指令;
所述目标文件获取单元包括:
文件分段获取单元,用于从目的邮件地址获取文件分段;
文件分段组合单元,用于将获取到的文件分段组合为目标文件;
所述获取控制单元包括:
文件分段获取控制单元,用于判断第二即时通讯单元是否收到包含有接收文件分段控制指令的即时消息,若收到,通知文件分段获取单元获取文件分段。
优选的,所述文件分段发送控制单元通知第一即时通讯单元发送所述即时消息是在文件分段发送单元将一个或多个文件分段发送至目的邮件地址之后进行。
优选的,所述目标文件发送单元还包括:
即时文件发送单元,用于利用第一即时通讯单元发送包含文件分段的即时消息;
所述目标文件获取单元还包括:
即时文件接收单元,用于从第二即时通讯单元接收到的包含文件分段的即时消息中获取文件分段,
所述文件分段组合单元用于组合目标文件的文件分段包括文件分段获取单元所获取的文件分段以及即时文件接收单元获取的文件分段。
优选的,所述目标文件发送单元还包括:
速率比较单元,用于比较当前第一即时通讯单元的传输速率,若大于预定阀值,通知即时文件发送单元发送文件分段。
优选的,其特征在于,所述发送模块还包括:
起始邮件地址确定单元,用于确定起始邮件地址;
所述邮件发送单元包括:
传输单元,用于将文件分段从起始邮件地址发送至目的邮件地址。
优选的,所述目的邮件地址确定单元利用第一即时通讯单元获得目的邮件地址,所述起始邮件确定单元利用第二即时通讯单元获得起始邮件地址。
优选的,所述第一即时通讯单元发送的即时消息中还包括文件分段所在的目的邮件地址信息;所述文件分段获取单元用于获取文件分段的目的邮件地址是从该即时消息中获取。
优选的,还包括:
存储单元,用于存储预置的邮件地址列表;
所述目的地址确定单元包括:
目的邮件地址选择单元,用于按预定规则从存储单元的邮件地址列表中选择目的邮件地址;
所述起始邮件地址确定单元包括:
起始邮件地址选择单元,用于按预定规则从存储单元的邮件地址列表中选择起始邮件地址。
优选的,所述发送控制单元还包括:
第一并发控制单元,用于控制文件分段发送单元将所述多个文件分段通过不同的起始邮件地址并发传输至所述目的邮件地址。
优选的,所述发送控制单元还包括:第二并发控制单元,用于控制文件分段发送单元将所述多个文件分段通过不同的起始邮件地址并发传输至多个目的邮件地址。
优选的,所述发送模块还包括,
邮件地址优选单元,用于对所述起始邮件地址和/或目的邮件地址按传输速度设置优先级;
所述文件分段发送单元按照邮件地址优选单元选择的高优先级的邮件地 址发送文件分段。
优选的,所述接收模块还包括,
校验单元,用于校验收到的文件分段或合并后的目标文件,若校验失败,通过第二即时通讯单元发送传输失败的即时消息;
所述发送控制单元还包括:
重发控制单元,用于判断第一即时通讯单元是否收到传输失败的即时消息,若收到,则通知文件分段发送单元发送相应的文件分段。
为解决上述问题,本发明还公开了一种文件传输系统,包括:
邮件服务器、即时消息服务器、起始客户端和目的客户端,
所述起始客户端包括起始发送模块和起始接收模块,其中起始发送模块包括:
第一即时通讯单元,用于发送和/或接收即时消息;
目的邮件地址确定单元,用于确定发送目标文件的目的邮件地址;
目标文件发送单元,用于将目标文件发送至所述目的邮件地址;
发送控制单元,用于控制目标文件发送单元发送目标文件,以及通知第一即时通讯单元发送即时消息,所述即时消息包括用于接收目标文件的控制指令;
所述目的客户端包括目的接收模块和目的发送模块,其中目的接收模块包括:
第二即时通讯单元,用于发送和/或接收即时消息;
目标文件获取单元,用于从目的邮件地址获取目标文件;
获取控制单元,用于判断第二即时通讯单元是否收到包含有所述控制指令的即时消息,若收到,通知目标文件获取单元获取目标文件。与现有技术相比,本发明具有以下优点:
本发明在使用邮件发送文件的同时,使用即时通讯向接收端发送用于接收文件的控制指令,当文件传输完成后,接收端能够及时地获取该文件。由于采用即时消息发送控制指令或通知消息,因此接收端能够随时了解该文件的传输状态。例如,若接收端收到文件已发送的即时消息,如果超过预定的延时期限后接收端仍未收到该邮件,则可认为该邮件传输过程异常,并可将该异常信息 通过即时通讯及时反馈给发送端,发送端也可据此做出响应和处理,保证了文件传输的可靠性。
进一步的,本发明将待发送的文件分割为多个文件分段,在将一个文件分段发送至邮件地址后,向文件接收端发送即时消息通知接收该文件分段,实现了文件发送和接收的同步处理,与传统的整个文件发送完毕后才能开始接收的邮件传输方案比较,发送和送达之间延迟小,总的传输时间显著缩短。假定用户a发送1个10M的文件到用户b,按照常规方法,我们假设用户a的发送邮件地址是a@server1.com,用户b的接收邮件地址是b@server2.com,发送和接收数据的速度为1M/1分钟,server1到server2之间的转发延时固定为1分钟,则用户a通过其该邮件账号发送文件到server1.com需要10分钟,延时一分钟后,用户b的邮件账号可以开始接收,10分钟后接收完毕,整个传输过程耗时21分钟,这里如果考虑邮件接收端没有轮询可接收信息的情况,则总的传输过程所耗时间还将更长。而利用本发明,假定把文件分作10段来传输,每传输一段后即通知b开始接收,假定采用同一个帐号同时只能传输1段(很多邮件服务器会限制同一用户同时与服务器建立多个连接),则a传输完第一段需要1分钟,一分钟延时后b可以开始接收,1分钟后接收完毕,完成1段文件的传输时间是3分钟,而a发送完第一段后紧接着发送第2段,类似的,延时1分钟后b又开始接收第2段,依次类推直到发送和接收完最后一段,接受完后的文件组合过程所耗时间可以忽略,则总耗时为12分钟,比传统技术提高了80%的效率。此外,如果a同时利用多个帐号向b传输文件(假定每个帐号的传输速度相等并且只受邮件服务器分配的带宽限制而不受用户计算机到其网络服务商之间连接带宽的限制),例如每一段用一个帐号传输,则被分成10段的文件可以在1分钟内全部传输完毕,1分钟延时后,b可以开始接收,1分钟接收完毕,则传输1个10M的文件总耗时仅需3分钟,总速度提升达6倍之多;更进一步,如果接收端直接利用发送者的接收帐号登录接收邮件的话,则邮件服务器的转发延迟的1分钟也将不存在,发送和接收的总时间还可以提升。
公知的点对点(P2P)传输技术,如BT,要实现高速文件传输,一个前提条件就是网络上存在大量同一资源的多个副本(全部或部分内容),其分布 的计算机越多,能够实现的传输速度越快,众所周知,这种技术由于存在大量的尝试性连接以及每个连接实现的有效传速速度和其所占用的带宽比起来有很大的差距,其带来的网络通讯带宽资源浪费是很严重的,已经开始受到很多运营商的限制;而现有即时通讯技术要实现高速文件传输,需要进一步扩大可供客户端连接的带宽,这意味着投资的增加。本发明充分利用用户已有的邮箱资源和即时通信工具,在几乎不需要额外成本的情况下实现了文件的高速传输。另取,邮件发送后接收端依据收到的即时消息通知启动接收过程,避免了现有技术中接收端不知邮件何时送达而浪费等待时间,也无需接收端在邮件可接收前持续不停尝试性与邮件服务器连接,有效的降低了无谓网络通讯负担。
可靠性更高。发送端完成一个文件分段的发送后,依据接收端反馈的即时消息检验该文件分段发送是否成功,若失败,则重新发送该文件分段,避免了现有技术中使用邮件传输文件的过程中,若文件发送过程中任意部分出现传输故障就必须重新发送整个文件的问题,提高了文件传输的可靠性,也降低了处理文件传输异常所需的成本和资源;另外,在通过邮件发送文件分段的同时,可通过发送即时消息发送文件分段,对于邮件传输失败的文件分段能够得到即时补救,进一步保证了文件传输的可靠性。
附图说明
图1是现有技术使用电子邮件传输文件的原理示意图;
图2是基于本发明的文件传输方法的实施例2的步骤流程图;
图3a和图3b是基于本发明所述文件传输方法实施例4的步骤流程图;
图4是基于本发明的文件传输装置的实施例的结构框图;
图5是基于本发明所述文件传输系统的实施例的系统结构框图。
具体实施方式
在介绍本发明的具体实施方式之前,首先介绍一下本发明涉及的一些相关概念:
本发明所指的即时通讯既包括似于微软MSN、windows live messenger、腾讯QQ、雅虎通等使人们能在网上识别在线用户并与他们实时交换消息的技术,也包括为实现在用户间完成专用信息实时交换的系统,其系统包括至少一个服务器和多个客户端,客户端与服务器端保持连接,各客户端可以通过服务 器的调度建立直接的连接互发消息或者通过服务器实时转发的形式向其它客户端发送消息。
本发明所述的即时消息是指各客户端与客户端及服务器之间的实时交互内容,包括以明文可读形式向所述客户端的用户展示的信息,也包括各客户端之间、客户端与服务器之间传输的一些控制命令,所述控制指令包括动作指令、状态反馈信息、执行动作指令所需参数,还可以包括各种文件传输状态,如所述文件的总段数、文件分段的校验和、所有文件分段是否已经传输完毕等,这些信息能够使接收端和发送端的动作相互协调,往往对用户而言是不可见的。因此,当接收端收到包含所述控制指令的即时消息后,即可自动从该指令中或依据该指令获得目的邮件相关信息,如目的邮件地址及其登录帐号信息、文件分段参数、文件校验数据等,从而顺利完成从目的邮件地址获取目标文件,而且在不需要用户主动进入邮件接收界面做任何处理就可将目标文件接收并呈现给用户,极大地方便了用户,提高了文传输的效率。
本发明所述“通过起始邮件地址发送文件”的操作均是指用与起始邮件地址对应的登录帐号登录到与起始邮件地址对应的邮件服务器后执行文件发送操作,本发明所述“从邮件地址获取文件”或“从邮件地址获取邮件”也是指用与所述邮件地址对应的邮件帐号登录到相应的邮件服务器后执行接收操作。
下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明的实施例1公开了一种文件传输方法,包括:确定用于发送目标文件的目的邮件地址;将要传输的目标文件发送至所述目的邮件地址,然后利用即时通讯向接收端发送即时消息,该即时消息包括用于接收该目标文件的控制指令;若接收端收到该控制指令,从目的邮件地址中获取该目标文件。
在本例中,文件的收发双方使用具有即时通讯功能和邮件收发功能的通讯终端建立通信连接。目的邮件地址是接收端用来获取目标文件的邮件地址,其既可以是发送方的,也可以是接收方或者是第三方的邮件地址。例如,若选择发送方的邮件地址作为目的邮件地址,发送方只需将目标文件传输至该邮件地址所在的服务器中,接收端直接利用发送方的邮件地址对应的登录帐号登录到该邮件地址对应的邮件服务器获取目标文件,由于省略了邮件在不同邮件服务器之间传输的过程,因此减少了文件分段从发送到接收所耗费的时间,对于整 个文件传输所耗费的时间也大大减少。
在将目标文件发送至目的邮件地址的过程中,将目标文件作为邮件发送至目的邮件地址是本发明优选的方法。例如,可将目标文件作为邮件的组成部分,以一封可以直接通过通用协议下载的标准邮件格式发送至目的邮件地址。另外,也可以将目标文件以预定格式存储至目的邮件地址所属存储空间的任意位置,例如以草稿格式存储,只要接收端能够按照该预定格式从目的邮件地址获取邮件内容即可。但是,无论选用哪种方式,其实质都是将目标文件从用户的客户端本地传输至邮件服务器,再从该服务器将目标文件下载到接收端,而不需要邮件服务器之间的转发。
所述目的邮件地址及帐号信息可以存储在发送方和/或接收方的通讯终端本地,也可以按用户建档存储在服务器上,例如即时消息服务器。这样,收发双方能够方便的从本地或者从网络上获得可用的共享邮件地址及其帐号信息用于文件的传输,提高了邮件帐号的使用效率,具体实施时可以通过加密、授权等形式增加安全性。所述存储的与每个用户对应的邮件地址及其帐号信息可以是1个也可以是多个,若为多个,则可以建立并存储邮件地址列表,在发送文件时从该邮件地址列表中选择所需邮件地址作为本次传输的目的邮件地址。
由于发送方需要将目标文件发送至目的邮件地址,因此对于发送和接收双方来讲,都需要知道目的邮件地址。本发明优选的,接收双方利用即时通讯获得邮件帐号信息:例如,若发送文件时使用接收端的邮件地址作为目的邮件地址,可由接收端使用的通讯终端从本地存储的邮件地址列表中选择一个邮件地址利用即时通讯按一定格式发送至发送端,发送端收到该信息后自动将其设置为目的邮件地址。优选的,为了保证涉及邮件地址信息的即时消息在传输过程中的安全性,可对使用即时通讯传输的信息进行加密。
另外,还可同时存储与每个目的邮件地址相应的传输速度信息。该传输速度信息可以预先设置,也可以在历次传输过程中记录并设置。这样,可以按照邮件地址的传输速度设置优先级,然后选择优先级高的地址作为本次传输所使用的目的邮件地址。当然,上述设置地址优先级以及选择目的邮件地址的方法只是本发明优选的方法,本领域的技术人员当然可以使用其它方法确定目的邮件地址。例如根据其它参数综合分析来确定邮件地址的优先级别,包括记录接 收及发送方所在的骨干网络、运营商和地理位置信息等。
参见图2,是基于本发明的文件传输方法的实施例2的步骤流程图,在该实施例中,首先将目标文件按预置规则分割为多个文件分段,然后将文件分段发送至目的邮件地址,并且利用即时通讯向接收端发送含有用于接收文件分段控制指令的即时消息;若接收端收到该控制指令,从目的邮件地址获取文件分段,并将文件分段合并为目标文件。具体描述如下:
步骤201,将待发送的目标文件按预置规则分割为多个文件分段。
将要发送的文件分割为多个文件分段,文件分段的大小,可以按照预先设定的规则进行,例如,可以设定为500k或者700k字节,对于小于此设定大小的文件,可以直接发送,大于此设定的文件,可以先分割为多个文件分段,各文件分段可能需要附加一些额外的信息(如文件分段的总数、本分段的序号等);分段的大小也可以按照目的邮件地址的有效容量进行选择,例如可以设定为邮箱有效容量的1/10,或者是剩余空间的1/5等,这样可以防止由于邮箱剩余空间不足而造成发送失败。
步骤202,确定本次文件传输要使用的目的邮件地址。
步骤203,将一个文件分段作为邮件发送至目的邮件地址中。
在将文件分段传发送至目的邮件地址的过程中,将文件分段作为邮件发送至目的邮件地址是本发明优选的方法。当然,也可以如实施例1所述,将文件分段以预定格式发送至目的邮件地址。
发送时,文件分段可以做为邮件的附件或者正文来发送。文件分段发送的顺序可以是按照文件分段的序号发送,也可以不按照序号顺序进行发送。是否按照序号来发送并不影响接收端的接收,接收端可以根据邮件或者文件分段以及下面所提到的即时消息,判断所接收的分段的序号,等全部文件分段都接收完成后,组装合并文件。
步骤204,向接收端发送即时消息,该即时消息包括用于接收文件分段的控制指令。
向接收端发送的即时消息包含用于接收文件分段的控制指令,该控制指令可按照双方约定的格式进行设置,并且该控制指令的执行可完全在计算机内部自动完成,而不用显示给用户或需要用户的参与,当然,如有必要,指令的执 行过程也可以融入用户的交互,比如需要用户的确认等。优选的,所述即时消息还可以包括所述文件分段总段数、每一文件段的标识信息、所述文件分段所在的目的邮件地址信息等,根据需要,所述邮件地址信息既可以只包括邮件地址,也可以包括该邮件地址的帐户信息如邮件收发服务器、登录用户名、密码等,同样,这些帮助文件分段正常重组的信息也可以附加在邮件的特定部分进行传输:比如附加在邮件主题、正文、附件上等都是可选的。
是否需要将目的邮件地址信息以即时消息发送给接收端可由本领域技术人员在实施本发明时自行决定,本发明对此没有限制。在本例中,若使用发送方的邮件地址作为目的邮件地址,则可以在即时消息中包含目的邮件地址信息以便接收端能够知道从哪里接收,为了接收方顺利登录邮件服务器完成邮件接收,本例所述目的邮件地址信息应该包含相应的登录帐号信息。当然,若每个文件分段都发送至相同的目的邮件地址,该信息只发送一次即可;若每个文件分段可能使用不同的目的邮件地址,则可以在每次给接收端的通知信息中包含目的邮件地址信息。又例如,若接收双方已经建立了信任关系,则可以按预定原则选用约定的邮件地址,这样则不必再发送目的邮件地址信息。更进一步的,还可将文件分段加密后发送,以提高传输过程中的安全性。
步骤205:接收端接收即时消息,并从目的邮件地址中获取相应的文件分段。
由于接收端是在一个文件分段发送完成后立即开始接收该文件分段,而不必等待发送端发送完所有的文件分段后才开始接收,因此,大大减少了文件传输所需的时间。其中,从目的邮件地址中提取文件分段可以按预置规则处理,如规定文件分段位于邮件正文或者邮件附件中,另外,发送方也可以在发送的即时消息中附带提取文件分段的规则。例如,从目的邮件地址中获取文件分段可按以下步骤:首先,将邮件从目的邮件地址中下载到本地,然后从该邮件或附件中提取相应的文件分段。当然,也可以直接从邮件地址中获取文件分段,例如文件分段作为邮件附件,则直接取得该附件即可。由于邮箱中可能还存在有其它的邮件,可以通过即时消息确定只接收特定的邮件主题的邮件,不接收其它的主题的邮件。
步骤206,重复步骤203至205,直到发送和获取完所有的文件分段。
步骤207,将接收到的文件分段组合成为目标文件。将得到的文件分段根据其标识信息组合成为目标文件。
需要说明的是,上述实施例所述的步骤流程并非本发明唯一的实现方式,本领域的技术人员在实施本发明时可对其调整或组合,本发明对此不作限制。例如,确定目的邮件地址既可以在分割文件之前也可以在分割文件之后进行。
在本发明文件传输方法的实施例3中,首先确定一个发送文件使用的起始邮件地址,然后将所述文件分段利用该起始邮件地址发送至目的邮件地址。一般情况下,可选择发送方自己拥有的邮件地址作为起始邮件地址,选择接收端自己的邮件地址作为目的地址,这样,发送方只需知道目的邮件地址的地址名即可,而不需要了解其登录信息,双方不必交换彼此的登录帐号信息,因此,在使用各自地址的前提下,保证了双方地址的安全和隐私,此外,也可以按照实施例1所述的利用即时通讯获取或从预置的邮件地址列表中选择目标邮件地址类似的方法,选择起始邮件地址,相关内容可参考上述实施例,这里不再赘述。
在本发明文件传输方法的实施例4中:选择多个邮件地址作为起始邮件地址,将所述多个文件分段通过不同的起始邮件地址并发传输至所述目的邮件地址。采用并发传输可最大可能的利用用户本地和网络的带宽资源,这样,将文件分段发送至目的邮件地址的时间显著减少,也进一步减少了整个文件传输所耗费的时间,提高了文件传输的即时性。所述并发传输既可以采用多进程传输也可以采用多线程传输,也可以采用其它并发传输方式。下面,以多线程为例并结合图3a对该实施例进行描述。
步骤301:将待发送的目标文件分割为多个文件分段。
步骤302:确定本次文件传输要使用的起始邮件地址。
步骤303:确定本次文件传输要使用的目的邮件地址。
步骤304:启动一个线程。
步骤305:使用线程选择一个尚未发送的文件分段利用一个起始邮件地址将该文件分段传输至目的邮件地址。
步骤306:重复执行步骤304,直到启动了预定的线程个数。
步骤307:判断所述线程的传输状态,若某个线程的传输过程已结束,执 行步骤308。
步骤308:向接收端发送即时消息,该即时消息含有用于接收文件分段的控制指令。
步骤309:判断所有的文件分段是否已发出,若没有,执行步骤305。
当然,以上所述的利用多个线程发送文件分段的方法只是一种优选的实现方式,另外,也可以按以下方式实现:
a)按预定规则启动多个线程。
线程的个数可按一定规则设定,例如网络环境、设备性能等。
b)每一个线程利用一个起始邮件地址将一个文件分段传输至目的邮件地址,传输结束后,仍由该线程选择其他文件分段继续传输,而不必重新启动新的线程。
下面参见图3b对接收端在本例中的步骤流程进行描述:
步骤3101:判断是否接收到新的包含接收文件分段控制指令的即时消息,若有,执行步骤3092。
步骤3102:从目的邮件地址中获取与所述控制指令相应的文件分段。
步骤3103:是否获取到所有的文件分段,若没有执行步骤3101,否则执行步骤3104。
步骤3104:将获取到的文件分段合并为目标文件。
以上介绍了本发明基于文件传输方法的实施例4,本发明的实施例5与实施例4的区别在于目的邮件地址为多个。在该例中,每一个目的邮件地址对应一个或多个起始件地址。对于每一个线程都是将文件分段通过起始邮件地址发送至对应的目的邮件地址;相应的,接收端从不同的目的邮件地址中获得文件分段,并组合为目标文件。容易看出,由于文件分段被分散到不同的目的邮件地址,因此也分散了目的邮件地址所在邮件服务器的压力,与实施例3比较,避免了从同一个目的邮件地址获取文件分段给服务器造成的负荷,也进一步提高了接收端获取文件分段的效率,提高了整个文件传输的速度。实施例4的其它内容请参见上述实施例,这里不再赘述。
需要说明的是,在上述几个实施例中,向接收端发送含有控制指令的即时消息既可以在一个文件分段发送至目的邮件地址之后进行,另外,在将多个文 件分段发送至目的邮件地址之后再发送该即时消息也是可以的。二者的区别在于,若选择后者,则该即时消息中应该含有接收所述多个文件分段的控制指令。选择哪种发送方式可在实施本发明时自行决定。
优选的,还可计算并在所发送的邮件中加入文件分段的校验和信息。接收端校验收到的文件分段或合并后的目标文件,若校验失败,则向发送方发送传输失败的即时消息;若发送方收到该即时消息,重新发送相应的文件分段。
在文件分段中,按照一定的校验和算法得到文件分段的校验和数据,并把校验和数据与该文件分段组成数据包作为邮件发送,或者将校验和数据作为即时消息发送至接收端。这样做,可避免在邮件发送过程中,由于网络传输等原因,造成的数据传输错误。例如,接收端得到文件分段后,根据校验和数据判断文件分段是否出错,如果出错,则校验数据失败,此时接收端可向发送方发送即时消息,要求重发出错的文件分段。另外,接收端也可以再次从邮件地址中接收出错的邮件,并重新校验文件分段,若校验通过,则删除邮件地址中接收过的邮件,若重新从邮件地址中接收邮件的次数超过预设的次数,例如5或者10次,则要求发送方重发相应的邮件。采用本步骤的好处是,当发现有文件分段数据错误时,只需要重新发送或获取发生错误的文件分段即可,避免了现有技术中,若文件传输错误则需要重新传输整个目标文件的问题,节约了成本和资源。
进一步的,还可以在整个目标文件中加入校验和数据,或者在发送最后一个文件分段时,附带发送目标文件的校验和数据,在接收端合并得到目标文件后,再校验整个文件,判断是否出错,这样可以避免文件分割和合并时造成的错误。如果接收端发现校验和错误,可以向发送方发送即时消息,要求重新发送相应的文件分段。
另外需要说明的是,在上述几个实施例中,将全部文件分段作为邮件发送至接收端只是本发明优选的方法,另外,还可以选择将文件分段作为即时消息发送至接收端,例如,判断即时通讯的传输速率,若大于预定阀值,则利用即时通讯将文件分段以即时消息的方式发送至接收端。这样,通过综合比较邮件传输与即时通讯传输,让二者进行优化组合,以提高文件传输的速度。又比如,在使用邮件发送文件分段出现异常时,可通过即时消息发送该文件分段,这样 可以避免在邮件传输出现异常时造成的传输中断,使整个文件传输的过程变得更加可靠。相应的,若使用即时消息发送文件分段,接收端也需要从该即时消息中获取文件分段,并将从目的邮件地址获取的文件分段一起合并为目标文件。
以上描述了本发明的文件传输方法,下面结合具体的应用环境,从用户使用的角度对本发明所述的文件传输方法做进一步进行详细描述。
实施例6是基于本发明的文件传输方法的具体应用实施例的描述,在该实施例中,
用户A需要将文件F发送给用户B,用户A拥有两个由邮件服务器Sa提供的邮件地址s1@mail1.com和s2@mail2.com;用户B拥有两个由邮件服务器Sb提供的邮件地址:r1@mail3.com,r2@mail4.com。用户A和用户B使用具有即时消息和邮件收发功能的通讯终端建立通信连接,并使用即时消息服务器Sc实现即时通讯。
该实施例采用用户A的一个邮件地址s1@mail1.com作为目的邮件地址,用户A直接将文件分段从本地传输至目的邮件地址s1@mail1.com,在将文件分段传输至目的邮件地址的过程中,用户A既可以选择将s1@mail1.com作为发送地址将文件分段作为邮件的组成部分,以一封可以直接通过通用协议下载的标准邮件格式发送至s1@mail1.com,也可以采用特定格式将文件分段存储至s1@mail1.com所属存储空间的任意位置,只要用户B能够按照该预定格式从s1@mail1.com获取邮件内容即可。该实施例具体实现方式如下:
步骤401,首先用户A启动文件发送过程,用户A选择一个文件,选择接收用户B,然后发出开始传送的命令,则用户A所在的即时通讯终端(以下简称发送端A)自动通过即时消息向用户B所使用的即时通讯终端(以下简称接收端B)发送一些本次传输的基本信息,如要传输的文件名称,文件大小,及用于校验文件的校验值等信息。
步骤402,判断用户B是否确认接收,若是,执行步骤403,若否,停止传送。
步骤403,用户B确认接收后,设置发送端和接收端使用的目的邮件地址。
可预先在即时消息服务器中建立用户A和用户B与其各自可使用邮件地 址的邮件地址列表。当双方确认传输文件后,由即时消息服务器从所存储的邮件地址列表中为双方用户选择一个高优先级的邮件地址作为目的邮件地址,并将该地址信息通知接收双方或者由接收双方自行从即时消息服务器上获取。所述邮件地址列表的格式示意如下:
用户标识 | 邮件地址 | 地址信息(用户名、接收服务器、发送服务器、登录密码) | 优先级 |
A | S1@mail1.com | S1@mail1.com、pop3.mail1.com; | 3 |
smtp.mail1.com;1234 | |||
A | S2@mail2.com | S2@mail2.com | 1 |
B | R1@mail3.com | ... | 1 |
B | R2@mail4.com | .... | 2 |
以用户A的邮件地址列表为例,其S1@mail1.com向服务器公开的地址信息包括邮件地址及其登录权限信息,而S2@mail2.com则仅公开了独立的地址,没有帐户信息,表示前者可以授权特定用户用于邮件发送,而后者仅用于自己接收。
当然,所述邮件地址列表的格式及内容只是为了便于说明该实施例的实现过程,本领域技术人员在实施本发明时可综合多种因素来管理用户邮件地址信息。例如,对邮件地址优先级的设定就可结合用户所在位置、邮件服务器所在位置综合考虑。比如,若用户在北京使用北京电信的一个邮件地址作为目的邮件地址给位于重庆的用户发送时速度较快,但如果用户在重庆仍用该北京电信的邮件账户做为目的邮件地址,则发送速度就会比较慢,因此邮件地址优先级的设置可根据用户所在位置、邮件服务器所在位置等多种因素进行设置。对于公开的地址信息能够被哪些用户用作起始或目的邮件地址,则可以由用户自行设定信赖的好友清单列表由系统执行过滤。
另外,邮件地址列表也可以存储在用户终端的本地。例如,当用户B确认传输后,从接收端B或计算机中所存储的邮件地址列表中选择一个邮件地址经加密后,使用即时通讯的方式传输至发送端A;发送端A在收到该即时信息后,对其解密并提取出邮件地址然后自动将其设置为目的邮件地址。
从本发明这一实施例的描述可知,无论双方的邮件地址以何种方式存储,所述确定目的邮件地址的过程均可自动完成,而不需要用户的参与。正如前文所述,采用何种方式确定目的邮件地址可根据收发双方选择的传输规则决定,本发明对此不作限制。
步骤404,发送端A将文件F分割为多个文件分段。
步骤405,取第i个文件分段,i的取值范围是1到文件分段的总数。
步骤406,计算文件分段i的内容校验值。
步骤407,将文件分段i的内容校验值作为邮件的一部分,文件分段i的内容作为附件或邮件内容发送到选择的目的邮件地址S1@mail1.com中。
步骤408,向接收端B发送即时消息,该即时消息包括用于接收分段i的控制指令。
可选的,可在向接收端B发送的即时消息中包含该目的邮件地址信息。
步骤409:统计在当前时段邮件的发送速度,更新统计结果。
统计结果最终会被更新到邮件地址列表中。保存统计结果目的是在有多个地址可供选择时,选择最快的地址发送。
步骤410,重复执行步骤405,直至所有的分块发送完毕。
在接收端A发送文件分段的同时,接收端B执行以下处理过程:
步骤411:判断是否收到包含接收文件分段i的控制指令的即时消息,若收到执行以下步骤。
步骤412:从即时消息中获得目的邮件地址信息。
从即时消息中获得该目的邮件地址s1@mail1.com的地址信息,包括:接收服务器、发送服务器、登录用户名、登录密码等。本步骤为可选步骤,例如,收发双方已经建立规则可以正确获知本次发送操作所使用的目标邮件地址,如在好友信息中记载、从即时通讯服务器料中获取、目的邮件地址在开始传输之前由接收端B自动提供给发送端A并且做了记录等等,则该步骤不必执行。
步骤413:接收端B从目的邮件地址s1@mail1.com中下载邮件。如果下载失败,则等待一定时间后重新下载,如果重复一定次数仍不能下载成功,则通知用户A重新发送文件分段i。
步骤414:成功下载邮件后,向发送端A发送通知。
用户A可根据需要决定是否删除目的邮件账户中的邮件。
步骤415:从邮件中提取文件分段i,并校验该文件分段。
首先从邮件中得到文件分段i的数据和校验和数据,然后按预定算法计算下载的文件块i内容的校验值,并与接收到的校验和数据进行比较,若相同,则表示分块i接收成功。否则从目的邮件地址重新下载文件分段i的内容,如果重复指定的次数之后仍不成功,则通知发送端A重新发送文件分段i。
步骤416:判断是否收到所有的文件分段,若收到,执行步骤417。
步骤417:按预定算法,将所有的文件分段合并为目标文件。
采用与文件分割相应的算法合并文件分段。
步骤418:校验合并后的目标文件,若失败,向发送端A发送通知信息,重发该文件。
步骤419:统计当前时段邮件的接收速度,将统计结果更新到服务器上的邮件地址列表。
以上结合具体应用环境对本发明所述方法进行了描述,在下面的实施例6中,发送端A首先将文件分段传输至起始邮件地址,然后由该起始邮件地址所对应的邮件服务器Sa将该邮件发送至邮件服务器Sb,最后接收端B从邮件服务器Sb的邮件地址中获得邮件以及文件分段。为了更好的理解本发明,下面的描述中,发送端A将两个文件分段分别通过邮件地址s1@mail1.com和s2@mail2.com并发传输至收端B的邮件地址r1@mail3.com和r2@mail4.com,接收端B从r1@mail3.com和r2@mail4.com接收邮件及相应的文件分段。
其中,目的邮件地址和起始邮件地址可由服务器按照双方邮件地址的传输速度等因素进行综合比较,给出最佳起始和目的邮件地址对,当然,也可以由接收端B提供地址信息给发送端A,再由用户A结合自己地址的传输速度进行比较选择,采用这种方式,接收端B可以不必提供本地邮件地址的登录密码。
开始实际的文件数据传输前,接收端A将要传输的文件分割为多块,对每一个分块i,执行如下操作:
a)计算分块i的内容校验值。
b)启动第一线程。
c)启动第二线程。
d)第一线程将分块i的内容校验值作为Email的标题,分块i的内容作为附件,通过s1@mail1.com发送邮件到r1@mail3.com中。
e)第二线程将分块i的内容校验值作为Email的标题,分块i的内容作为附件,通过s2@mail2.com发送邮件到r3@mail4.com中。
f)分别判断上述两个线程的传输过程是否已完成,若完成,向接收端B发送开始接收文件分段的即时消息,然后重复执行d)或者e)直到发送完所有的文件分段。当然,在一个线程传输完成后,结束该线程,并重新启动一个线程也是可以的。
关于接收端B如何从获取文件分段以及将文件分段合并为目标文件请参见上述实施例,这里不再赘述。
在上述过程中,使用多少个线程并发传输文件分段可根据用户的网络情况在实施本发明时自行决定。假设用户A的网络带宽最大可以达到100KB/s的上传速率,此时可选择三个平均传输速率分别为40KB/s,30KB/s,30KB/s的邮件地址作为起始邮件地址,启动三个线程,以使传输速率之和接近用户最大上传带宽,当某一个线程完成发送时,根据所有传输速率之和接近用户最大上传带宽的算法,重新选择一个或多个邮件地址,在新的线程中发送其他的分块,如此重复直至所有的分块发送完毕。
以上对本发明所述方法进行了详细介绍,下面结合具体的实施例对本发明所述装置进行描述。参见图4,是本发明的文件传输装置实施例框图,包括发送模块4100和接收模块4200,
所述发送模块4100包括:
第一即时通讯单元4101,用于发送和/或接收即时消息;
目的邮件地址确定单元4102,用于确定发送目标文件的目的邮件地址;
目标文件发送单元4103,用于将目标文件发送至所述目的邮件地址;
发送控制单元4104,用于控制目标文件发送单元发送目标文件,以及通知第一即时通讯单元4101发送即时消息,所述即时消息包括用于接收目标文件的控制指令;
所述接收模块4200包括:
第二即时通讯单元4201,用于发送和/或接收即时消息;
目标文件获取单元4202,用于从目的邮件地址获取目标文件;
获取控制单元4203,用于判断第二即时通讯单元4201是否收到包含有接收目标文件控制指令的即时消息,若收到,通知目标文件获取单元4202获取目标文件。
优选的,所述目标文件发送单元4103包括:文件分割单元41031,用于将目标文件按预置规则分割为多个文件分段;文件分段发送单元41032,用于将文件分段发送至目的邮件地址;所述发送控制单元4104包括:文件分段发送控制单元41041,用于控制文件分段发送单元发送文件分段,以及通知第一即时通讯单元4101发送即时消息,该即时消息包含用于接收文件分段的控制指令;所述目标文件获取单元包括4202:文件分段获取单元42021,用于从目的邮件地址获取文件分段;文件分段组合单元42022,用于将获取到的文件分段组合为目标文件;所述获取控制单元包括4203:文件分段获取控制单元42031,用于判断第二即时通讯单元4201是否收到包含有接收文件分段控制指令的即时消息,若收到,通知文件分段获取单元42021获取文件分段。
优选的,所述文件分段发送控制单元41041通知第一即时通讯单元4101发送所述即时消息是在文件分段发送单元41041将一个或多个文件分段发送至目的邮件地址之后进行。
优选的,所述目标文件发送单元4103还包括:即时文件发送单元41033,用于利用第一即时通讯单元发送包含文件分段的即时消息;所述目标文件获取单元4202还包括:即时文件接收单元42023,用于从第二即时通讯单元4201接收到的包含文件分段的即时消息中获取文件分段,所述文件分段组合单元42022用于组合目标文件的文件分段包括文件分段获取单元42021所获取的文件分段以及即时文件接收单元42023获取的文件分段。该即时文件发送单元和文件分段发送单元均可用于发送文件分段,但如何使用,本发明对此不作限制,例如若邮件发送单元出现异常时,使用即时文件发送单元发送文件分段。
优选的,所述目标文件发送单元还包括:速率比较单元41034,用于比较当前第一即时通讯单元的传输速率,若大于预定阀值,通知即时文件发送单元发送文件分段。当然,使用该即时文件发送单元直接发送目标文件也是可以的。
优选的,所述发送模块还包括:起始邮件地址确定单元4105,用于确定起始邮件地址;所述目标文件发送单元还包括:传输单元41035,用于将文件分段从起始邮件地址发送至目的邮件地址。
优选的,所述目的邮件地址确定单元利用第一即时通讯单元获得目的邮件地址,所述起始邮件确定单元利用第二即时通讯单元获得起始邮件地址。
优选的,所述第一即时通讯单元发送的即时消息中还包括文件分段所在的目的邮件地址信息;所述文件分段获取单元用于获取文件分段的目的邮件地址是从该即时消息中获取。
优选的,所述文件传输装置还包括:存储单元4106,用于存储预置的邮件地址列表;所述目的地址确定单元4102还包括:目的邮件地址选择单元41021,用于按预定规则从存储单元4106的邮件地址列表中选择目的邮件地址;所述起始邮件地址确定单元4105还包括:起始邮件地址选择单元41051,用于按预定规则从存储单元4106的邮件地址列表中选择起始邮件地址。
优选的,所述发送控制单元4104还包括:第一并发控制单元41042,用于控制文件分段发送单元41041将所述多个文件分段通过不同的起始邮件地址并发传输至所述目的邮件地址。
优选的,所述发送控制单元4104还包括:第二并发控制单元41042,用于控制文件分段发送单元41041将所述多个文件分段通过不同的起始邮件地址并发传输至多个目的邮件地址。
优选的,所述发送模块4100还包括,邮件地址优选单元4107,用于对所述起始邮件地址和/或目的邮件地址按传输速度设置优先级;所述文件分段发送单元41032按照邮件地址优选单元41021选择的高优先级的邮件地址发送文件分段。
邮件地址优选单元可按以下方式对账户进行优选:统计所使用的邮件地址的发送速度,并记录邮件地址的数据传输速度。另外,传输速度可以结合其它因素进行描述,例如发送方所在的骨干网络、运营商和地理位置信息,以更准确的描述邮件地址在不同情况下的传输速度。邮件地址优选单元根据这些数据设置地址优先级,邮件发送单元选择优先级高的邮件发送文件分段。
优选的,所述接收模块420还包括,校验单元4204,用于校验收到的文 件分段或合并后的目标文件,若校验失败,通过第二即时通讯单元4201发送传输失败的即时消息;所述发送控制单元4104还包括:重发控制单元41044,用于判断第一即时通讯单元4101是否收到传输失败的即时消息,若收到,则通知文件分段发送单元41032发送相应的文件分段。
参见图5,图5是应用本发明所述文件传输装置的文件传输系统的实体结构图,包括邮件服务器510、即时消息服务器520、起始客户端530和目的客户端540。
起始客户端和目的客户端中均可包含发送模块和接收模块,这样可以使两个客户端之间能够互相发送文件。容易得知,若限制文件传输的过程为单向,例如,只允许起始客户端向目的客户端发送文件,则起始客户端中只包含发送模块,目的客户端中只包含接收模块即可。下面以起始客户端向目的客户端发送文件为例,对该系统进行介绍。
首先,在开始文件传输之前,由目的地址确定单元确定本次传输使用的目的邮件地址。可以使用一个邮件地址作为目的邮件地址,即该邮件地址既是发送客户端的发送邮件地址也是目的客户端的接收邮件地址。本发明不但可以将一个完整的文件发送至目的客户端,而且,还可以将文件分割为多个文件段,使用起始邮件地址将文件分段传输至目的邮件地址;进一步的,可由第一并发控制单元控制邮件发送单元将多个文件分段通过不同的起始邮件地址并发传输至目的邮件地址;更进一步的,可通过第二并发控制单元控制邮件发送单元将所述多个文件分段通过不同的起始邮件地址并发传输至多个目的邮件地址。
当使用多个起始邮件地址和/或多个目的邮件地址时,或从多个起始邮件地址或多个目的邮件地址中选择一个或一对邮件地址传输文件时,可在存储单元预先设置邮件地址列表,邮件地址优选单元可对该邮件地址列表中的邮件地址按传输速度设置优先级。需要说明的是,所述预置有邮件地址列表的存储单元可以是在客户端和/或即时消息服务器中,当起始客户端发起传输请求后,目的地址选择单元或起始地址选择单元从该存储单元中按优先级选择目的邮件地址或起始邮件地址,然后起始客户端或目的客户端利用即时通讯获得该邮件地址。结合上文实施例的描述容易得知,本发明所述系统采用何种邮件地址作为起始或目的邮件地址传输文件,以及起始或目的客户端如何获得起始或目 的邮件地址信息可由本领域技术人员根据本发明上述内容在实施本发明时自行确定,本发明对此不作限制。
下面以多个起始邮件地址和多个目的邮件地址为例,对该系统的传输过程进行描述。
文件分割单元将待发送的目标文件分割为多个文件分段;然后,第二并发控制单元控制文件分段发送单元将所述多个文件分段通过不同的起始邮件地址并发传输至多个目的邮件地址,在该过程中,每完成一个文件分段的发送,发送控制单元通知第一即时通讯单元向目的客户端发送即时消息,该即时消息包括用于接收文件分段的控制指令。进一步的,该即时消息中还可以包括与所述控制指令相应的目的邮件地址信息,如收发邮件服务器地址、登录用户名、密码等。该邮件地址信息在每一个文件分段发送后通知目的客户端,这样可根据实际的传输情况随时调整邮件地址,当然也可以只通知一次,经确认后就不再变更。另外,还可以将多个文件分段并发传输至目的邮件地址后,向目的客户端发送一个即时消息,该即时消息中包括接收所述多个文件分段的控制指令。所述在一个或多个文件分段发送至目的邮件地址后发送该即时消息是本发明优选的方法,当然也可以选择其它时间发送,例如在文件分段发送过程中,或即将发送完成时发送。
目的客户端的文件分段获取控制单元判断第二即时通讯单元是否收到包含有接收文件分段控制指令的即时消息,若收到,通知文件分段获取单元从该控制指令相应的目的邮件地址获取文件分段。文件分段组合单元将获取到的文件分段组合成为目标文件。
其中,文件分段获取单元在获取文件分段的过程中,校验单元校验收到的文件分段或合并后的目标文件,若校验失败,通过第二即时通讯单元发送传输失败的即时消息;起始客户端的重发控制单元判断第一即时通讯单元是否收到传输失败的即时消息,若收到,则通知文件分段发送控制单元发送相应的文件分段。
优选的,在文件分段发送单元发送文件分段的同时,速率比较单元比较当前第一即时通讯单元的传输速率,若大于预定阀值,通知即时文件发送单元将文件分段作为即时消息发送至目的客户端,并由即时文件接收单元从该即时消 息中获取文件分段,最后,该文件分段与文件分段获取单元获得的其他文件分段共同组合为目标文件。
上述关于本发明文件传输装置和文件传输系统的未详尽之处请参考方法实施例所述内容。
以上描述仅为本发明的具体实施个例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (16)
1.一种文件传输方法,其特征在于,包括下列步骤:
确定起始邮件地址;
确定用于发送目标文件的目的邮件地址;
将目标文件按预置规则分割为多个文件分段;
使用所述起始邮件地址将所述多个文件分段发送至所述目的邮件地址;
在将一个或多个文件分段发送至所述目的邮件地址之后,利用即时通讯向接收端发送即时消息,该即时消息包括用于接收文件分段的控制指令,所述控制指令包括目的邮件地址及其登录帐号信息、文件分段参数和文件校验数据;
接收端判断是否收到包含所述控制指令的即时消息,若收到,从所述目的邮件地址获取文件分段;
接收端将获取到的文件分段组合成为目标文件;
所述起始邮件地址和/或目的邮件地址的个数为多个。
2.根据权利要求1所述的文件传输方法,其特征在于,还包括:
利用即时通讯将文件分段作为即时消息发送至接收端;
接收端从该即时消息中获取文件分段;
所述接收端获取到的用于组合成目标文件的文件分段包括从目的邮件地址中获取的文件分段以及从所述即时消息中获取的文件分段。
3.根据权利要求2所述的方法,其特征在于,所述将文件分段作为即时消息发送至接收端包括:
判断当前即时通讯的传输速率,若大于预定阀值,将文件分段作为即时消息发送至接收端。
4.根据权利要求1所述的方法,其特征在于,所述起始邮件地址和/或目的邮件地址是利用即时通讯获得。
5.根据权利要求4所述的方法,其特征在于,所述向接收端发送的即时消息还包括文件分段所在的目的邮件地址信息;所述接收端用于获取文件分段的目的邮件地址是从该即时消息中获取。
6.根据权利要求1所述的方法,其特征在于,所述起始邮件地址和/或目的邮件地址是从预置的邮件地址列表中按预定规则选择。
7.根据权利要求1所述的方法,其特征在于,还包括:
对所述多个起始邮件地址和/或目的邮件地址按传输速度设置优选级;选择优先级高的邮件地址发送文件分段。
8.根据权利要求7所述的方法,其特征在于,还包括:
接收端校验获取到的文件分段和/或合并后的目标文件,若校验失败,则向发送端发送传输失败的即时消息,该即时消息包括用于重发文件分段和/或目标文件的控制指令;若发送端收到该控制指令,重新发送相应的文件分段或目标文件。
9.一种文件传输装置,其特征在于,包括发送模块和接收模块,
所述发送模块包括:
起始邮件地址确定单元,用于确定起始邮件地址;
第一即时通讯单元,用于发送和/或接收即时消息;
目的邮件地址确定单元,用于确定发送目标文件的目的邮件地址;
目标文件发送单元,用于将目标文件发送至所述目的邮件地址;
发送控制单元,用于控制目标文件发送单元发送目标文件,以及通知第一即时通讯单元发送即时消息,所述即时消息包括用于接收目标文件的控制指令;
所述接收模块包括:
第二即时通讯单元,用于发送和/或接收即时消息;
目标文件获取单元,用于从目的邮件地址获取目标文件;
获取控制单元,用于判断第二即时通讯单元是否收到包含有接收目标文件控制指令的即时消息,若收到,通知目标文件获取单元获取目标文件;
所述目标文件发送单元包括:
文件分割单元,用于将目标文件按预置规则分割为多个文件分段;
文件分段发送单元,用于将文件分段发送至目的邮件地址;
所述发送控制单元包括:
文件分段发送控制单元,用于控制文件分段发送单元将所述多个文件分段通过所述起始邮件地址发送至所述目的邮件地址,以及在文件分段发送单元将一个或多个文件分段发送至目的邮件地址之后通知第一即时通讯单元发送即时消息,该即时消息包含用于接收文件分段的控制指令,所述控制指令包括目的邮件地址及其登录帐号信息、文件分段参数和文件校验数据;
所述目标文件获取单元包括:
文件分段获取单元,用于从目的邮件地址获取文件分段;
文件分段组合单元,用于将获取到的文件分段组合为目标文件;
所述获取控制单元包括:
文件分段获取控制单元,用于判断第二即时通讯单元是否收到包含有接收文件分段控制指令的即时消息,若收到,通知文件分段获取单元获取文件分段;
所述起始邮件地址和/或目的邮件地址的个数为多个。
10.根据权利要求9所述的装置,其特征在于,所述目标文件发送单元还包括:
即时文件发送单元,用于利用第一即时通讯单元发送包含文件分段的即时消息;
所述目标文件获取单元还包括:
即时文件接收单元,用于从第二即时通讯单元接收到的包含文件分段的即时消息中获取文件分段,
所述文件分段组合单元用于组合目标文件的文件分段包括文件分段获取单元所获取的文件分段以及即时文件接收单元获取的文件分段。
11.根据权利要求10所述的装置,其特征在于,所述目标文件发送单元还包括:
速率比较单元,用于比较当前第一即时通讯单元的传输速率,若大于预定阀值,通知即时文件发送单元发送文件分段。
12.根据权利要求9所述的装置,其特征在于,所述目的邮件地址确定单元利用第一即时通讯单元获得目的邮件地址,所述起始邮件确定单元利用第二即时通讯单元获得起始邮件地址。
13.根据权利要求9所述的装置,其特征在于,还包括:
存储单元,用于存储预置的邮件地址列表;
所述目的邮件地址确定单元包括:
目的邮件地址选择单元,用于按预定规则从存储单元的邮件地址列表中选择目的邮件地址;
所述起始邮件地址确定单元包括:
起始邮件地址选择单元,用于按预定规则从存储单元的邮件地址列表中选择起始邮件地址。
14.根据权利要求9所述的装置,其特征在于,所述发送模块还包括,
邮件地址优选单元,用于对所述起始邮件地址和/或目的邮件地址按传输速度设置优先级;
所述文件分段发送单元按照邮件地址优选单元选择的高优先级的邮件地址发送文件分段。
15.根据权利要求14所述的项装置,其特征在于,所述接收模块还包括,
校验单元,用于校验收到的文件分段或合并后的目标文件,若校验失败,通过第二即时通讯单元发送传输失败的即时消息;
所述发送控制单元还包括:
重发控制单元,用于判断第一即时通讯单元是否收到传输失败的即时消息,若收到,则通知文件分段发送单元发送相应的文件分段。
16.一种文件传输系统,其特征在于,包括:
邮件服务器、即时消息服务器、起始客户端和目的客户端,
所述起始客户端和目的客户端均是根据权利要求9所述的文件传输装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100874725A CN101272354B (zh) | 2007-03-20 | 2007-03-20 | 一种文件传输方法、装置和系统 |
PCT/CN2008/070524 WO2008113296A1 (fr) | 2007-03-20 | 2008-03-18 | Procédé, dispositif et système pour distribuer des fichiers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100874725A CN101272354B (zh) | 2007-03-20 | 2007-03-20 | 一种文件传输方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101272354A CN101272354A (zh) | 2008-09-24 |
CN101272354B true CN101272354B (zh) | 2012-05-02 |
Family
ID=39765400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100874725A Expired - Fee Related CN101272354B (zh) | 2007-03-20 | 2007-03-20 | 一种文件传输方法、装置和系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101272354B (zh) |
WO (1) | WO2008113296A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102255941A (zh) * | 2011-03-22 | 2011-11-23 | 苏州阔地网络科技有限公司 | 一种设置优先级的批量处理文件的传输方法及系统 |
CN103138871B (zh) * | 2011-11-23 | 2015-09-30 | 毕书清 | 移动通讯系统中应用程序的服务器数据处理系统和方法 |
CN103177019B (zh) * | 2011-12-23 | 2016-06-01 | 联想(北京)有限公司 | Usb存储设备及其驱动方法 |
CN102722474A (zh) * | 2012-03-20 | 2012-10-10 | 华为终端有限公司 | 信息处理方法及终端 |
CN103023755B (zh) * | 2012-12-07 | 2015-12-23 | 东莞宇龙通信科技有限公司 | 数据传输的方法及电子设备 |
CN103116546B (zh) * | 2013-02-21 | 2015-08-19 | 北京控制工程研究所 | 一种卫星在轨大规模程序修改的地面自动验证系统 |
CN105743765B (zh) | 2014-12-09 | 2020-04-14 | 华为技术有限公司 | 一种获取邮件的方法、终端及系统 |
CN106202082B (zh) * | 2015-04-30 | 2020-01-14 | 菜鸟智能物流控股有限公司 | 组装基础数据缓存的方法及装置 |
US10334017B2 (en) * | 2015-12-18 | 2019-06-25 | Accenture Global Solutions Limited | Tracking a status of a file transfer using feedback files corresponding to file transfer events |
CN105871706A (zh) * | 2016-06-13 | 2016-08-17 | 珠海佳米科技有限公司 | 文件传输方法及系统 |
CN109753849B (zh) * | 2017-11-03 | 2021-08-17 | 杭州海康威视数字技术股份有限公司 | 处理视频分析任务的方法和装置 |
CN109672718A (zh) * | 2018-09-26 | 2019-04-23 | 深圳平安财富宝投资咨询有限公司 | 系统间的文件传递方法、服务器、存储介质及装置 |
CN109857545B (zh) * | 2018-12-29 | 2021-09-14 | 华为技术有限公司 | 一种数据传输方法及装置 |
CN110275721B (zh) * | 2019-06-18 | 2020-10-02 | 珠海格力电器股份有限公司 | 多联空调系统及其升级方法、升级装置和空调设备 |
CN111045850A (zh) * | 2019-12-26 | 2020-04-21 | 天津芯海创科技有限公司 | 一种维护包发送失败的处理方法以及主控软件 |
CN111245934A (zh) * | 2020-01-10 | 2020-06-05 | 深圳壹账通智能科技有限公司 | 文件传输的反馈方法、装置、设备和存储介质 |
CN114124925B (zh) * | 2020-08-25 | 2023-05-12 | 华为技术有限公司 | 一种电子邮件的同步方法及电子设备 |
CN112333235A (zh) * | 2020-09-26 | 2021-02-05 | 深圳市星谷科技有限公司 | 一种多运营商多网聚合的文件传输方法、系统及智能终端 |
CN112330268B (zh) * | 2020-10-21 | 2023-08-22 | 中国南方电网有限责任公司 | 一种区域电力现货市场数据交互校验方法及系统 |
CN112491990B (zh) * | 2020-11-17 | 2021-08-10 | 中科三清科技有限公司 | 混合云网络数据传输方法、装置、电子设备及存储介质 |
CN112905550A (zh) * | 2021-03-25 | 2021-06-04 | 武汉悦学帮网络技术有限公司 | 一种数据导出方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1461132A (zh) * | 2003-06-13 | 2003-12-10 | 腾讯科技(深圳)有限公司 | 即时通信系统中电子邮件处理方法和系统 |
CN1602002A (zh) * | 2003-09-25 | 2005-03-30 | 佳能株式会社 | 通信装置以及通信装置的控制方法 |
CN1606296A (zh) * | 2003-10-09 | 2005-04-13 | 国际商业机器公司 | 使发件人能够控制电子邮件的未来收件人 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7243127B2 (en) * | 2000-10-11 | 2007-07-10 | Swiftview, Inc. | Network-based document delivery system with receipt and display verification |
KR20040015784A (ko) * | 2004-02-02 | 2004-02-19 | 장중혁 | 파일 전송 기능을 가진 인스턴트 메신저의 파일 전송 기능을 이용한 파일 전송 시스템 및 그 시스템을 이용한 파일 전송 방법 |
US7512659B2 (en) * | 2004-12-16 | 2009-03-31 | International Business Machines Corporation | Enabling interactive electronic mail and real-time messaging |
-
2007
- 2007-03-20 CN CN2007100874725A patent/CN101272354B/zh not_active Expired - Fee Related
-
2008
- 2008-03-18 WO PCT/CN2008/070524 patent/WO2008113296A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1461132A (zh) * | 2003-06-13 | 2003-12-10 | 腾讯科技(深圳)有限公司 | 即时通信系统中电子邮件处理方法和系统 |
CN1602002A (zh) * | 2003-09-25 | 2005-03-30 | 佳能株式会社 | 通信装置以及通信装置的控制方法 |
CN1606296A (zh) * | 2003-10-09 | 2005-04-13 | 国际商业机器公司 | 使发件人能够控制电子邮件的未来收件人 |
Also Published As
Publication number | Publication date |
---|---|
CN101272354A (zh) | 2008-09-24 |
WO2008113296A1 (fr) | 2008-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101272354B (zh) | 一种文件传输方法、装置和系统 | |
US6505237B2 (en) | Method and system for management of message attachments | |
US9491003B2 (en) | Method and apparatus for keeping orders among messages of discrete media type in CPM session | |
US20100017523A1 (en) | Communication control apparatus and communication control method | |
US20150215291A1 (en) | Secure decentralized content management platform and transparent gateway | |
US9442925B2 (en) | Regulated texting solution for mobile devices | |
CN111917562B (zh) | 广播消息转发方法、装置、设备及存储介质 | |
CN107734076A (zh) | 消息推送方法、装置及存储介质 | |
CN101594318A (zh) | 一种实现邮件和即时消息互通的方法和系统 | |
JP2008507782A (ja) | コンテンツ適合及びメッセージ失敗の結果を送信者に通知するためのシステム及び方法 | |
CN101136870A (zh) | 基于符号的消息传送方法及系统 | |
CN102801644B (zh) | 邮件行为阻断方法、装置及网关 | |
US9559995B1 (en) | System and method for broadcasting contents from web-based browser to a recipient device using extensible messaging and presence protocol (XMPP) | |
US8650313B2 (en) | Endpoint discriminator in network transport protocol startup packets | |
US7103635B2 (en) | Really simple mail transport protocol | |
CN1853176B (zh) | 基于数据链路特征的邮件客户端的同步程度 | |
US7734766B2 (en) | Communication device utilizing email for remote procedure calls | |
US20110161446A1 (en) | Apparatus and method for synchronizing data between instant messaging clients in communication system | |
KR20080043103A (ko) | 통합 ip 메시지 서비스와 단문 메시지 서비스 간에인터워킹 시스템 및 방법 | |
JP2019527490A (ja) | メッセージデータを選択的に適合して送信するための方法、システム、およびコンピュータプログラム製品 | |
JP2009212796A (ja) | 送信装置、データ転送システム、データ転送方法およびデータ転送プログラム | |
US20150195231A1 (en) | System and Method for Avoiding Loops in Automatic Message Processing | |
CN103095554B (zh) | 媒体消息发送方法、装置及系统 | |
US10623365B2 (en) | Message redirection protocol | |
EP1143673A1 (en) | Client server system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120502 Termination date: 20150320 |
|
EXPY | Termination of patent right or utility model |