一种文件传输方法及系统的制作方法

文档序号:9399353阅读:487来源:国知局
一种文件传输方法及系统的制作方法
【技术领域】
[0001]本发明涉及计算机通讯与传输技术领域,尤其涉及一种文件传输方法及系统。
【背景技术】
[0002]当前社会人类的数据大爆炸,信息数据越来越多,人们对信息数据处理能力的要求也越来越高。在集群中,如何将文件快速传输给每个目的节点是需要解决的技术问题。
[0003]现有技术中,集群中的文件传输为线性传输。按照预设通信顺序从一个节点到相邻的另一个节点逐个进行文件传输,或者,源节点将文件逐个传输给不同节点,直至整个集群中的节点全部传输完成。但是,集群中的节点按照该方法传输文件,会导致节点等待时间长,传输效率低下。

【发明内容】

[0004]本发明实施例提出一种文件传输方法及系统,能够提高集群中文件的传输效率。
[0005]本发明实施例提供一种文件传输方法,包括:
[0006]在定时循环检测到待传输文件时,从未传输列表中随机选取一个节点编号;所述未传输列表记载了集群中需要接收所述待传输文件的节点的节点编号;
[0007]从所述未传输列表中去除所选取的节点编号;
[0008]将所述待传输文件发送给所选取的节点编号相应的第一节点,使所述第一节点定时循环检测到所述待传输文件,并向需要接收所述待传输文件的第三节点发送所述待传输文件。
[0009]进一步地,所述在检测到待传输文件时,从未传输列表中随机选取一个节点编号,具体包括:
[0010]定时循环读取预设的传输标识;
[0011]若所述传输标识为真,则判定检测到待传输文件,从未传输列表中随机选取一个节点编号;
[0012]若所述传输标识为假,则判定未检测到待传输文件,继续等待读取传输标识。
[0013]进一步地,所述在检测到待传输文件时,从未传输列表中随机选取一个节点编号之后,还包括:
[0014]将所选取的节点编号添加到正在传输列表中;
[0015]在所述待传输文件发送成功后,从所述正在传输列表中去除所述节点编号。
[0016]进一步地,所述文件传输方法还包括:
[0017]在将所述待传输文件发送给所述第一节点时,检测剩余带宽是否超过预设的阈值;
[0018]若超过所述阈值,则向需要接收所述待传输文件的第二节点传输所述待传输文件;
[0019]若未超过所述阈值,则等待所述待传输文件的循环检测。
[0020]进一步地,所述文件传输方法还包括:
[0021]实时检测所述未传输列表和所述正在传输列表中的变化信息;
[0022]将所述变化信息发送给所述集群中的其他节点,使所述其他节点根据所述变化信息更新其未传输列表和正在传输列表。
[0023]进一步地,所述文件传输方法还包括:
[0024]当检测到所述未传输列表和所述正在传输列表中均无节点编号时,结束所述集群中所述待传输文件的传输。
[0025]进一步地,所述在定时循环检测到待传输文件时,从未传输列表中随机选取一个节点编号之前,还包括:
[0026]安装安全外壳协议SSH,并将公钥复制到所述集群的其他节点上;
[0027]获取并保存分配的节点编号。
[0028]相应的,本发明还提供一种文件传输系统,所述文件传输系统包括集群;所述集群中的每个节点均包括:
[0029]节点编号获取模块,用于在定时循环检测到待传输文件时,从未传输列表中随机选取一个节点编号;所述未传输列表记载了集群中需要接收所述待传输文件的节点的节点编号;
[0030]节点编号去除模块,用于从所述未传输列表中去除所选取的节点编号;以及,
[0031]发送模块,用于将所述待传输文件发送给所选取的节点编号相应的第一节点,使所述第一节点定时循环检测到所述待传输文件,并向需要接收所述待传输文件的第三节点发送所述待传输文件。
[0032]进一步地,所述每个节点还包括:
[0033]节点编号添加模块,用于将所选取的节点编号添加到正在传输列表中;以及,
[0034]去除模块,用于在所述待传输文件发送成功后,从所述正在传输列表中去除所述节点编号。
[0035]进一步地,所述每个节点还包括:
[0036]剩余带宽检测模块,用于在将所述待传输文件发送给所述第一节点时,检测剩余带宽是否超过预设的阈值;
[0037]传输模块,用于若超过所述阈值,则向需要接收所述待传输文件的第二节点传输所述待传输文件;以及,
[0038]等待检测模块,用于若未超过所述阈值,则等待所述待传输文件的循环检测。
[0039]实施本发明实施例,具有如下有益效果:
[0040]本发明实施例提供的文件传输方法及系统,能够设置未传输列表,将需要接受待传输文件的节点的节点编号存储其中,使每个具有待传输文件的节点均可从未传输列表中选取一个节点编号来进行传输,提高集群中的传输效率,并及时将已选取的待传输节点相应的节点编号从未传输列表中去除,避免重复传输。
[0041]而且,采用定时循环读取传输标识的方式来检测待传输文件,使待传输文件的检测自动化;采用多线程的传输方式,在向待传输的第一节点进行传输的过程中,检测剩余带宽,若剩余带宽超过预设的阈值,则继续向待传输的第二节点传输文件,既能有效防止大文件传输导致的网络堵塞,又能进一步提高传输效率。
【附图说明】
[0042]图1是本发明提供的文件传输方法的第一个实施例的流程示意图;
[0043]图2是本发明提供的文件传输方法的第二个实施例的流程示意图;
[0044]图3是本发明提供的文件传输系统的第一个实施例的结构示意图;
[0045]图4是本发明提供的文件传输系统的第二个实施例的结构示意图。
【具体实施方式】
[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]参见图1,是本发明提供的文件传输方法的第一个实施例的流程示意图,包括:
[0048]S1、在定时循环检测到待传输文件时,从未传输列表中随机选取一个节点编号;所述未传输列表记载了集群中需要接收所述待传输文件的节点的节点编号;
[0049]S2、从所述未传输列表中去除所选取的节点编号;
[0050]S3、将所述待传输文件发送给所选取的节点编号相应的第一节点,使所述第一节点定时循环检测到所述待传输文件,并向需要接收所述待传输文件的第三节点发送所述待传输文件。
[0051]文件传输时,每个节点均定时循环检测本节点中是否存在待传输文件,若不存在,则继续等待;若存在,在一个优选地实施方式中,则从未传输列表中随机选取一个节点编号,并将待传输文件发送给该节点编号相应的第一节点;在另一个优选地实施方式中,则随机生成一个节点编号,并判断该节点编号是否存在于未传输列表中,若存在于未传输列表中,则将待传输文件发送给该节点编号相应的第一节点,若不存在于未传输列表中,则重新生成一个节点编号,并继续判断该节点编号是否存在于未传输列表中。
[0052]本节点选取一个节点编号后,说明将向该节点编号相应的第一节点发送待传输文件,则需先将该节点编号从未传输列表中去除,以防止在发送过程中其他节点重复向该第一节点发送待传输文件。第一节点在接
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1