一种分布式文件传输方法、服务器及私有云设备与流程

文档序号:12731162阅读:188来源:国知局
一种分布式文件传输方法、服务器及私有云设备与流程

本发明涉及文件传输技术领域,特别是涉及一种分布式文件传输方法、服务器及私有云设备。



背景技术:

随着计算机网络的发展,当用户需要使用数据计算资源和数据存储资源时,用户不再需要自己购买高性能的物理机并在该物理机上安装所需的应用程序,用户只需例如向云服务提供商申请计算资源和数据存储资源,并经由该用户本地的桌面系统来访问这些资源。但由于云服务其自身物理配置的限制,并不能无限制地向用户提供资源(例如,存储资源);且云服务虚拟环境是借助于网络实现的,随着云服务用户数量的增加及访问数据的增大,云服务虚拟环境对用户访问的响应效率和数据传输效率、数据的可靠性都会降低,从而不能满足用户的需求。



技术实现要素:

本发明主要解决的技术问题是提供一种分布式文件传输方法、服务器及私有云设备,以提高文件传输的效率和可靠性。

为解决上述技术问题,本发明采用的一个技术方案是:提供一种分布式文件传输方法。所述方法包括:位于公网上的公共服务器接收来自第一客户端的文件获取请求;获取所述公共服务器的群虚拟空间中的可用的传输节点;将所述可用的传输节点信息及所述文件的文件信息推送到第一传输节点,以使得所述第一传输节点与所述可用的传输节点中的至少一个建立中转传输信道,并通过所述中转传输信道将保存于所述可用的传输节点中的所述文件或其部分传给所述第一传输节点,以便于所述第一客户端下载。

其中,所述公共服务器接收来自第二客户端上传的所述文件信息;将所述文件信息、所述文件与所述可用的传输节点的地址的映射信息存储到所述群虚拟空间,便于根据所述映射信息查找并获取所述可用的传输节点信息。

其中,当所有所述可用的传输节点中没有所述第一传输节点时,所述公共服务器将所述第一传输节点注册成为一所述第二传输节点,以使下次对所述文件请求时,所述第一传输节点成为所述可用的传输节点,提供所述文件或其部分。

其中,在所述文件或其部分传输给所述第一传输节点的过程中,动态更新所述公共服务器的群虚拟空间中的所述可用的传输节点,并将新增的所述可用的传输节点信息推送给所述第一传输节点。

为解决上述技术问题,本发明采用的另一个技术方案是:提供一种分布式文件传输方法。所述方法包括:获得公共服务器根据客户端的文件获取请求返回的可用的传输节点信息及所述文件的文件信息,所述文件或其部分保存于所述可用的传输节点中;与所述可用的传输节点中的至少一个建立中转传输信道,通过所述中转传输信道从所述可用的传输节点中的获取所述文件或其部分。

其中,所述通过所述中转传输信道从所述可用的传输节点中的获取所述文件或其部分包括:根据所述可用的传输节点信息及所述文件信息对所述文件进行分片处理,并根据所述可用的传输节点中保存的所述文件的各数据片的完整度分别向所述可用传输节点拉取不同的数据片;合成所述不同的数据片以获得目标下载文件。

其中,根据所述可用的传输节点信息及所述文件信息对所述文件获取请求进行认证;所述认证通过后,解析所述可用的传输节点信息及所述文件信息,以与所述可用的传输节点中的至少一个建立所述中转传输信道,通过所述中转传输信道从所述可用的传输节点中的获取所述文件或其部分。

为解决上述技术问题,本发明采用的又一个技术方案是:提供一种分布式文件传输方法。所述方法包括:将所述文件的文件信息上传给位于公网的公共服务器,以使至少一传输节点通过所述公共服务器提供的中转传输信道从所述当前传输节点获得所述文件或其部分。

为解决上述技术问题,本发明采用的又一个技术方案是:提供一种服务器。所述服务器包括:通信电路,用于接收来自客户端的文件获取请求;处理电路,耦接所述通信电路,用于获取所述设备的群虚拟空间中的可用的传输节点,并控制所述通信电路将所述可用的传输节点信息及所述文件的文件信息推送到一传输节点,以使得所述一传输节点与所述可用的传输节点中的至少一个建立中转传输信道,通过所述中转传输信道将保存于所述可用的传输节点中的所述文件或其部分传给所述一传输节点,以便于所述客户端下载。

为解决上述技术问题,本发明采用的又一个技术方案是:提供一种私有云设备。所述私有云设备包括:通信电路;处理电路,耦接所述通信电路,用于通过所述通信电路获得所述公共服务器根据客户端的文件获取请求返回的可用的传输节点信息及所述文件的文件信息,所述文件或其部分保存于所述可用的传输节点中;进一步,通过所述通信电路与所述可用的传输节点中的至少一个建立中转传输信道,通过所述中转传输信道从所述可用的传输节点中获取所述文件或其部分。

本发明的有益效果是:区别于现有技术,第一传输节点可以通过中转传输通道从可用的传输节点中直接获得文件,而无需从公网中的公共服务器中获取该文件,从而能够提高文件的传输效率;同时,公共服务器通过群虚拟空间能提高该文件的可见范围及有效性,并能有效控制可用的传输节点的有效性及访问的安全性,能使第一传输节点与可用的传输节点快速有效的建立中转传输通道,因此,本发明能进一步提高文件传输效率及可靠性。

附图说明

图1是本发明分布式文件传输方法一实施例的流程示意图;

图2是本发明分布式文件传输方法另一实施例的流程示意图;

图3是本发明分布式文件传输方法又一实施例的流程示意图;

图4是本发明分布式文件传输方法在实际应用中一系统架构示意图;

图5是图4实施例分布式文件传输系统的工作流程示意图;

图6是本发明服务器一实施例的结构示意图;

图7是本发明私有云设备一实施例的结构示意图。

具体实施方式

参阅图1,本发明分布式文件传输方法一实施例包括位于公网上的公共服务器所需步骤。

步骤S101:位于公网上的公共服务器接收来自第一客户端的文件获取请求。

步骤S102:获取公共服务器的群虚拟空间中的可用的传输节点。

步骤S103:将可用的传输节点信息及该文件的文件信息推送到第一传输节点,以使得第一传输节点与可用的传输节点中的至少一个建立中转传输信道,并通过中转传输信道将保存于可用的传输节点中的文件或其部分传给第一传输节点,以便于第一客户端下载。

本实施例中,公共服务器为公有云服务器或一般的公共服务器。此处的公共服务器可以是一个相对的概念,比如位于一个小型网络中作为这个小型网络的公共服务器,又比如位于大型网络中比如互联网中的公共服务器。云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务;其管理方式比物理服务器更简单高效。云服务器能快速构建更稳定、安全的应用,降低开发运维的难度和整体IT成本。第一传输节点为私有云服务器,私有云服务器是为一个或一类客户端单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。私有云服务器可部署在企业数据中心的防火墙内,也可以部署在一个安全的主机托管场所,私有云服务器的核心属性是专有资源。

当然,在其它实施例中,可以用其它类型服务器代替云服务器,例如物理服务器等。

可选地,公共服务器接收来自第二客户端上传的文件信息;将文件信息、该文件与可用的传输节点的地址的映射信息存储到群虚拟空间,便于根据映射信息查找并获取所述可用的传输节点信息。

本实施例中,第二传输节点为私有云服务器,在其它实施例中还可以是但不局限于物理服务器等。

在一个应用场景中,文件信息为文件名称、文件大小、文件识别号等信息。

在另一应用场景中,该映射信息为可用的传输节点的地址与该文件名称和/或文件识别号等文件信息间的关联关系。

通过上述分析可知,公共服务器只存有该映射信息、文件信息及可用的传输节点信息等,而该文件的具体内容保存于可用的传输节点中,通过这种分布式文件存储方式,能够明显提高文件传输的效率;同时,公共服务器通过群虚拟空间的信息能提高该文件的可见范围及有效性,并能有效控制可用的传输节点的有效性及访问的安全性,能使第一传输节点与可用传输节点快速有效的建立中转传输通道,并完成文件的传输。

本实施例中,每一可用的传输节点为存有该文件或其部分的第一或第二传输节点。

可选地,当可用传输节点中没有上述第一传输节点时,可以理解为该第一传输节点不存有该文件或其部分,应将该第一传输节点注册为一个第二传输节点,便于下次对该文件请求时,可以将该第一传输节点作为可用的传输节点,提供该文件或其部分。

可选地,在该文件或其部分传输给第一传输节点的过程中,动态更新公共服务器的群虚拟空间中的可用的传输节点,并将新增的可用的传输节点信息推送给第一传输节点。可以理解为,当有新的存有该文件或其部分的传输节点上线时,第一传输节点也可以从该新的传输节点上获取该文件或部分。

在一个应用场景中,第二客户端为可用的传输节点的远程控制端。

本实施例中,第一传输节点与第二传输节点位于不同的网络;在其它应用场景中,二者可以位于同一网络,具体不做限定。

可选地,本实施例中,为提高文件传输的可靠性及各传输节点、中转传输信道的可控性,公共服务器与各传输节点、中转传输信道间利用传输控制协议(Transmission Control Protocol,TCP)保持连接。

可选地,本实施例中,为使提高传输节点的文件传输速度,可为传输节点提供动态域名服务(Dynamic Domain Name Server,DDNS)及超文本传输协议(HyperText Transfer Protocol,HTTP)服务或用户数据报协议(User Datagram Protocol,UDP)服务。

可选地,本实施例中,公共服务器为第一传输节点的文件获取请求分配一个全网唯一的任务标识,以使文件通过中转传输信道进行传递。

参阅图2,本发明分布式文件传输方法另一实施例包括传输节点所需步骤。

步骤S201:获得公共服务器根据客户端的文件获取请求返回的可用的传输节点信息及文件的文件信息,文件或其部分保存于可用的传输节点中。

步骤S202:与可用的传输节点中的至少一个建立中转传输信道,通过中转传输信道从可用的传输节点中的获取文件或其部分,以便于客户端下载。

本实施例中,当前传输节点、公共服务器及可用传输节点与上述实施例的第一传输节点对应、公共服务器及可用传输节点相同,且其工作原理及连接关系均与上述实施例相同,这里不重复叙述。

可选地,本实施例先根据可用的传输节点信息及文件信息对文件进行分片处理,然后根据可用传输节点中保存的文件的各数据片的完整度分别向可用传输节点拉取不同的数据片,然后将这些不同的数据片合成为目标下载文件,以便于客户端下载。这种方式不仅能够提高文件的获取速度,还能提高整个目标下载文件的完整度。

在一个应用场景中,可以根据数据片的大小来判断数据片的完整度;在其它应用场景中,还可以但不局限于根据数据片的可靠度来判断数据片的完整度。

当然,在其它实施例中,还可以但不局限于根据各数据片的获取速度选择性的从可用的传输节点来获取不同的数据片。

可选地,本实施例中,在拉取数据片之前,先根据可用的传输节点信息及文件信息对文件获取请求进行认证。该认证主要是认证该文件信息及可用传输节点信息的合法性,在一个应用场景中,具体可以通过在文件获取请求信息中加入请求标识,该请求标识随着文件信息一同返回给当前传输节点,当前传输节点可以根据该请求标识来认证文件信息及可用传输节点信息的合法性,通过这种方式,可以提高文件传输的可靠性,当然在其它应用场景中,可以采用其它认证方式实现认证,在认证的同时,也可以给该请求标识进行加密解密处理。

上述认证通过后,解析可用的传输节点信息及文件信息,以与可用的传输节点中的至少一个建立中转传输信道,通过中转传输信道从可用的传输节点中获取文件或其部分。其中,该解析可以为数据传输处理的一般工作,如解压缩、解密、除噪等,具体不做限定。

具体地,参阅图3,本发明分布式文件传输方法又一实施例包括传输节点所需步骤。

步骤S301:将文件的文件信息上传给位于公网的公共服务器,以使至少一传输节点通过公共服务器提供的中转传输信道从当前传输节点获得文件或其部分。

本实施例中,当前传输节点、公共服务器及可用传输节点与上述实施例的第二传输节点对应、公共服务器及可用传输节点相同,且其工作原理及连接关系均与上述实施例相同,这里不重复叙述。

在上述实施例中,公共服务器为至少两个传输节点提供中转传输信道,以使传输节点间实现文件传输;同一网络可以设置至少两个传输节点;客户端与传输节点可以采用一对一、或一对多的方式设置。如图4所示,在本发明分布式文件传输系统中,公共服务器为至少两个传输节点1、2提供中转传输信道;同一网络中可以设置2个或多个传输节点。

下面将结合图5对图4实施例的工作流程做详细的叙述。

在本实施例中,传输节点1及传输节点2位于同一或不同的网络中,且传输节点2存有文件1或其部分;客户端1为传输节点1的远程控制端;客户端2为传输节点2的远程控制端;为提高数据传输的可靠性及各传输节点与中转传输信道的可控性,公共服务器与传输节点1、2间、公共服务器与中转传输信道间保持TCP长连接。当然,一般情况下,客户端1的数量不止一个,本实施例不一一画出。

客户端1将文件1的信息上传给公共服务器,公共服务器将文件1的信息及文件1与传输节点1的映射信息保存于公共服务器的群虚拟空间,当然公共服务器中存有传输节点1的信息;客户端2向公共服务器发出对文件1的获取请求后,公共服务器会在映射信息中查找能为传输节点2提供文件1或其部分的可用的传输节点1,并将文件1的信息及传输节点1的信息返回给传输节点2;传输节点2根据文件1的信息及传输节点1的信息进行认证,认证通过后进行解析,并与传输节点1建立连接,此时,传输节点2就与传输节点1间建立了中转传输信道,通过该中转传输信道实现文件1的传输。传输节点2可以根据文件1的数据片的情况,从不同的传输节点1中获取不同的数据片,当所有数据片获取完成后,关闭中转传输信道,并合成目标下载文件。

本实施例中,当传输节点2本身不包含文件1或其部分时,应将传输节点2注册为一传输节点1,主要用于在后续的对文件1的获取时,传输节点2也可以作为存有文件1或其部分的可用的传输节点给文件获取请求的传输节点提供文件1或其部分。

当然,在本实施例中,可以根据网络状况和/或网络资源选择性的建立中转传输信道、或其它信道,以实现传输节点1及传输节点2间的文件1传输。其中,其它信道可以是但不局限于点对点技术(peer-to-peer,P2P)信道或DDNS信道。

参阅图6,本发明实施例还提供了一种服务器,该服务器包括:通信电路601,用于接收来自客户端的文件获取请求;处理电路602,耦接通信电路601,用于获取该服务器的群虚拟空间中的可用的传输节点,并控制通信电路601将可用的传输节点信息及文件的文件信息推送到一传输节点,以使得该传输节点与可用的传输节点中的至少一个建立中转传输信道,通过该中转传输信道将保存于可用的传输节点中的文件或其部分传给该传输节点,以便于客户端下载。

本实施例的具体实施过程可参照图1方法实施例。

本实施例可以是但不局限于公有云服务器。

参阅图7,本发明实施例还提供了一种私有云设备,该私有云设备包括:通信电路701及与其耦接的处理电路702,用于通过通信电路701获得公共服务器返回的根据客户端的文件获取请求得到的可用的传输节点信息及文件的文件信息,文件或其部分保存于可用的传输节点中;进一步地,通过通信电路701与可用的传输节点中的至少一个建立中转传输信道,通过该中转传输信道从可用的传输节点中获取文件或其部分,以便于客户端下载。

本实施例的具体实施过程可参照图2、图3方法实施例。

本实施例可以是但不局限于私有云服务器。

需要指出的是,本发明实施例的同一网络可以同一局域网,如WiFi网络,也可以是同一FDD-LTE、TDD-LTE、WCDMA、TDSCDMA、CDMA2000等4G制式的无线通信网络,也可以是其他网络,具体不做限定。

区别于现有技术,上述实施例的第一传输节点可以通过中转传输通道从可用的传输节点中直接获得文件,而无需从公网中的公共服务器中获取该文件,从而能够提高文件的传输效率;同时,公共服务器通过群虚拟空间能提高该文件的可见范围及有效性,并能有效控制可用的传输节点的有效性及访问的安全性,能使第一传输节点与可用传输节点快速有效的建立中转传输通道,因此,本发明能进一步提高文件传输效率及可靠性。

以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1