一种分布式云存储系统中的中央控制节点的制作方法

文档序号:14683886发布日期:2018-06-12 22:57阅读:209来源:国知局
一种分布式云存储系统中的中央控制节点的制作方法

本发明涉及分布式云存储系统的管理控制技术领域,尤其涉及一种分布式云存储系统中的中央控制节点。



背景技术:

云存储是在云计算概念上延伸和发展出来的一个新的概念,是一种新兴的网络存储技术,是指通过集群应用、网络技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的系统。

当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。简单来说,云存储就是将储存资源放到云上供人存取的一种新兴方案。使用者可以在任何时间、任何地方,透过任何可连网的装置连接到云上方便地存取数据。

云存储系统的出现极大改变了当前数据存储的方式,使得个人或单位可靠地存储大容量的文件成为可能。当前主流的存储方式中,文件不再集中存储于某个数据中心,而是分散存储到多个数据中心。假如某几个数据中心出现数据丢失,用户所存文件仍能由其余健康的数据中心恢复。

目前市场上的云存储系统多采取两种方式进行数据的分散存储:1.简单增加文件拷贝数,每个数据中心均存有完整文件拷贝;2.采用reed-solomon码对源文件进行编码,将编码后的文件分割存于不同数据中心。对于方式1,其缺点在于存储效率过低,而且必须采用一定的加密算法才能保证数据不被泄漏;对于方式2,虽然存储效率有一定程度提高,但修复损坏节点以及恢复文件时的带宽占用仍离理论极限差距较大。安全分布式云存储系统可以很好解决这些问题。

而且在云存储系统中,对于整个系统的管理与控制必须高效安全且可靠,通过控制功能明确且具有安全及可靠性设计的中央控制节点实现此功能非常合适。因此,提出一种安全分布式云存储系统中央控制节点是十分有必要的。



技术实现要素:

本发明为了克服云存储系统中业务的复杂多变及外部网络攻击频繁的问题,通过只存储索引,提供数据的分配方式并加密来实现系统的安全性,并通过多主机及“定时报告信息”方法,实现云存储系统高效可靠运转。

为了实现上述目的,本发明采取了如下技术方案:

本发明提供了一种分布式云存储系统中的中央控制节点,其具体如下:

所述中央控制节点只存储索引,客户端的服务请求以及与存储节点的交互均由所述中央控制节点通过索引控制调度,所述中央控制节点对分布式云存储系统进行流程监控。

进一步地,所述中央控制节点将上传文件分配N个存储节点;

将上传文件分成k块,分块编码后存到所述N个存储节点中,每个存储节点存储α个符号,作为文件编码块。

进一步地,所述中央控制节点根据定时报告信息监控存储节点状态,当某个存储节点发生故障时,所述中央控制节点建立新存储节点,所述新存储节点向其它部分正常存储节点发送修复请求,具体如下:

在修复故障存储节点的单个文件编码块时,从所述N个存储节点中选取d个正常存储节点,所述d个正常节点各向新存储节点发送β个符号;

在重建源文件时,从所述N个存储节点中选取k个正常存储节点,所述k个正常存储节点各向文件请求端发送α个符号。

进一步地,重新生成故障节点单个文件编码块所需的总带宽为γ=dβ,存储节点参数满足如下关系:

其中,α和β为设定值,α表示每个存储节点中所存的符号数,β表示在修复故障节点的单个文件编码块时,从单个正常存储节点下载的符号数;k=(α+β)/β,k表示在重建源文件时需要连接的最少节点数和表示分块数量;d=2(α+β)/β-2,d表示修复损坏节点时需要连接的最少节点数;B=kα,B表示上传文件的大小,γ表示在修复故障节点的单个文件编码块时所需的总带宽。

进一步地,该中央控制节点为多主机模式,所述主机为控制服务器。

进一步地,该中央控制节点实时监控存储节点状态,当某个存储节点发生故障时,该中央控制节点自动建立新存储节点,并向其他正常存储节点发送修复请求,进行修复。

由上述本发明提供的技术方案可以看出,本发明通过只存储索引,提供数据的分配方式并加密来实现系统的安全性,并通过多主机及“定时报告信息”方法,实现系统高效可靠运转。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的分布式云存储系统的架构图;

图2为本发明实施例提供的分布式云存储系统中存储参数计算步骤流程图;

图3为本发明实施例提供的分布式云存储系统中定时报告消息算法流程图;

图4为本发明实施例提供的分布式云存储系统中定时报告消息检测结果示意图;

图5为本发明实施例提供的分布式云存储系统中多主机模式的中央控制节点布局示意图。

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。

实施例一

本发明实施例提供一种安全分布式云存储系统,在该系统中加入中央控制节点,客户端的不同用户的不同文件存储于大量的存储节点之中。客户文件结构复杂,客户端与不同存储节点通信频繁。为了克服系统中业务的复杂多变及外部网络攻击频繁的问题,本发明实施例通过只存储索引,提供数据的分配方式并加密来实现系统的安全性,并通过多主机及“定时报告信息”方法,实现系统高效可靠运转。本发明实施例所述系统的具体架构如图1所示。

本发明实施例具有两种安全性设计,两种设计相互作用,使中央控制节点在系统的安全体系搭建方面有着举足轻重的作用。

安全性设计一:本发明实施例通过只存储索引,完成对系统整个业务流程的控制,并提升系统安全性,

1、客户端的服务请求以及与存储节点的交互都经由控制节点通过索引控制调度,实现了对整个系统的流程监控。

2、控制节点只存储索引,与具体文件数据分离,使得外界对于控制节点的攻击无法获取具体数据,从而实现了客户数据安全。

安全性设计二:本发明实施例可以提供数据存储分布方式,并对存储分布方式进行加密提升系统安全性。首先本发明实施例通过客户端提供的文件大小信息,计算存储参数,以此作为客户端编码的参考,实现数据的分布式存储,图2为存储参数计算步骤流程图,如图2所示,

该功能由以下步骤实现:

步骤一:接收客户端的上传文件;

步骤二:中央控制节点为上传文件智能分配N个存储节点;

步骤二、文件分成k块,分块编码后存到N个存储节点中,每个存储节点存储α个符号。在修复损坏节点单个文件编码块时,需要从d个正常存储节点各下载β个符号。在重建源文件时,需要从k个正常存储节点各下载α个符号。重新生成故障节点所需的总带宽为γ=dβ。根据存储可靠性需要,确定所需参数k,d后,根据如下公式,

可得k=(α+β)/β,d=2(α+β)/β-2。根据存储可靠性需要,调整α和β值,确定所需参数k,d后,即可计算出上传文件大小B,B=kα。

通过将参数及相应存储节点信息返回,客户端可直接进行文件编码并将文件存储至各存储节点中。

在步骤二中,中央控制节点可以根据当前系统负载状态,智能分配N个存储节点,这些存储节点存储分块编码后的数据。中央控制节点对于分配存储节点的信息进行加密,网络攻击将无法获取具体数据各个的存储位置。不知晓数据存储分布信息的网络攻击只能针对存储节点进行不定向攻击,由于分块编码后的单块数据本身就具有加密特性,这种攻击将毫无意义,从而实现系统安全性。

由于本发明实施例在整个系统中起到核心控制作用,存储节点及自身的工作状态至关重要,因此在提升系统整体可靠性和自身可靠性方面还具有两种设计:“定时报告信息”与多主机方式。

本发明实施例通过“定时报告信息”完成对存储节点的运行状态的监测,将中央控制节点与存储节点通信,监测各个存储节点运行状态。图3为定时报告消息”算法流程图,如图3所示,该功能的实现基于以下判定算法:

1.中央控制节点主动向N个存储节点发出“定时报告信息”请求,存储节点收到请求后将同样的“定时报告信息”每隔5s返回给中央控制节点一次。存储节点成功返回消息,判定该存储节点为正常运行。

2.中央控制节点连续没有收到某个存储节点返回消息的次数为Mi,当Mi>5则向该存储节点发送主动询问请求,要求该存储节点返回自身存储状态并继续发送“定时报告信息”。Mi>10则再次向该存储节点发送主动询问请求。

3.i>20则认定该存储节点故障,中央控制节点将更新索引中该存储节点的状态,并利用该存储节点的文件编码信息,启动修复程序。

这种“定时报告信息”可实时监控所有存储节点并对故障节点进行快速确认和修复,该方法将有效地提升系统可靠性。本发明实施例采用检测准确率Pa与检测误报率Pe评估“定时报告消息”。Pa为故障点被检测出来的概率,Pe为非故障点被检测为故障点的概率。检测效果图4所示。

本发明实施例对于自身可靠性的提升,采取了多主机方式。如图5所示,中央控制节点是由多个控制服务器和一个“智能分配节点”组成,每个控制服务器功能相同且分配本地专用地址,“智能分配节点”拥有全球IP地址。客户端与中央控制节点之间的通信会先通过“智能分配节点”,它将接收所有来自客户端的数据包,并将数据包智能分配给控制服务器,该功能由以下步骤实现:

步骤一、“智能分配节点”建立多个控制服务器的索引,记录每个控制服务器的本地IP地址与当前连接数。

步骤二、接收客户端的数据包,记录客户端的IP地址。

步骤三、选择当前连接数Li最少的控制服务器i,作目的地址NAT(Netwo rk Address Translation,网络地址转换),并将数据包分配至控制服务器i。

步骤四、控制服务器i返回的消息,经NAT地址转换表,根据步骤二记录的IP地址转发给客户端。

“智能分配节点”也使用本发明实施例的“定时报告信息”方法检测所有控制服务器。当控制服务器i失去连接,则从控制服务器索引中删除控制服务器i,不再对控制服务器i进行数据连接分配。多主机的这种设计能有效避免控制服务器的单点失效,解决了网络拥塞问题,提高中央控制节点响应速度。

实施例二

本发明实施例提供了一种分布式云存储系统中的中央控制节点,所述中央控制节点只存储索引,客户端的服务请求以及与存储节点的交互均由所述中央控制节点通过索引控制调度,所述中央控制节点对分布式云存储系统进行流程监控。

在一个具体的实施例中,所述中央控制节点根据当前系统负载状态,智能分配N个存储节点;

将所述上传文件分成k块,进行分块编码后存到所述N个存储节点中,每个存储节点存储α个符号。

在一个具体的实施例中,所述中央控制节点根据定时报告信息监控存储节点状态,当某个存储节点发生故障时,所述中央控制节点建立一个新存储节点,该新存储节点向其它部分正常存储节点发送修复请求,具体如下:

在修复故障存储节点的单个文件编码块时,所述N个存储节点中选取d个正常存储节点,所述d个正常节点各发送β个符号至新存储节点;

在重建源文件时,从所述N个存储节点中选取k个正常存储节点,所述k个正常存储节点各发送α个符号至文件请求端。

在一个具体的实施例中,重新生成故障存储节点的单个文件编码块所需的总带宽为γ=dβ,存储节点参数满足如下关系:

其中,α和β为设定值,α表示每个存储节点中所存的符号数,β表示在修复故障节点的单个文件分编码块,从单个正常存储节点下载的符号数;

k=(α+β)/β,k表示在重建源文件时需要连接的最少节点数和表示分块数量;

d=2(α+β)/β-2,d表示修复损坏节点时需要连接的最少节点数;B=kα,B为上传文件的大小。实际使用过程中,若上传文件大小大于B,则将该文件分为多个大小为B的子文件,对每个子文件根据专利中的算法分别进行处理。γ表示在修复故障节点的单个文件分码块时所需的总带宽。

在一个具体的实施例中,该中央控制节点为多主机方式,所述主机为控制服务器,即客户端可连接多个控制服务器,可以保证无单点故障,保证了中央控制节点的可靠性。

综上所述,本发明实施例通过只存储索引,提供数据的分配方式并加密来实现系统的安全性,并通过多主机及“定时报告信息”方法,实现系统高效可靠运转。

本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

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