基于网络数据转发与控制层面分离的纠删码修复方法技术

技术编号:27126884 阅读:19 留言:0更新日期:2021-01-25 19:48
本发明专利技术属于分布式存储系统技术领域,具体涉及一种基于网络数据转发与控制层面分离的纠删码修复方法。与现有技术相比较,本发明专利技术采取了数据与转发平面分离的方式,实现将网络的数据转发的控制平面分开,实时监控节点间的流量,从而测得网络的实时带宽,可以选择出带宽最好的节点,实现基于带宽的数据修复算法,可以最终优化纠删码的修复方法。该基于带宽的数据修复算法,通过与传统的纠删码修复算法时间做比较,数据修复的速度提高了将近10%。纠删码的修复速度提高,分布式存储系统数据的可靠性和可用性也提高。性和可用性也提高。性和可用性也提高。

【技术实现步骤摘要】
基于网络数据转发与控制层面分离的纠删码修复方法


[0001]本专利技术属于分布式存储系统
,具体涉及一种基于网络数据转发与控制层面分离的纠删码修复方法。

技术介绍

[0002]纠删码是分布式存储系统的一种容错技术,可以用三元组(n,k,k')表示,主要思想为将原数据D分为k个大小相等的数据块,通过特定的编码算法对这k个数据块进行编码计算,产生n个编码块,其中n>k,从中取任意k'(k≤k'<n)个编码块都可以恢复出原数据对象D,如图1所示。当节点发生失效时,供应节点向新生节点发送数据,新生节点接收数据之后,根据使用的编码算法恢复出丢失的数据。
[0003]在分布式存储系统的修复模型中,可以将节点分为两种类型,供应节点与新生节点,供应节点是提供编码块的节点,新生节点是接收编码块恢复出丢失数据的节点,数据传输的路径形成修复树,如图2表示,其中V0为新生节点,V
1-V3为供应节点。
[0004]为了提高纠删码的修复速度,提出了基于带宽的修复模型,基于带宽的修复模型是指,在进行路径选择时,优先选择带宽好的节点,以此提高数据传输的速度,从而提高纠删码修复的速度,如图3所示,可以将分布式存储节点抽象为拓扑图的其中一个节点,两个节点之间的边值代表节点间的带宽,选择带宽最大的节点即变成选择边值最大的节点。
[0005]中国专利“CN103729151一种基于改进型纠删码的失效数据修复方法”构建了一个由1个控制节点和N个存储节点组成的分布式存储系统,控制节点安装有数据写入管理程序和数据读取程序,存储节点安装有数据写入程序和数据读取程序,数据写入管理程序接收用户提交的数据对象,进行分块和编码计算,最终修复丢失的数据。
[0006]现有的专利关注点在减少纠删码数据的负载,然而纠删码的修复速度会影响数据的可靠性和可用性。基于带宽的纠删码修复算法只关注纠删码的修复速度,从而提高数据的可靠性和可用性。实时带宽极难测量,基于带宽的纠删码修复算法只停留在理论阶段,没有在实际环境中应用。

技术实现思路

[0007](一)要解决的技术问题
[0008]本专利技术要解决的技术问题是:如何提供一种纠删码修复方法。
[0009](二)技术方案
[0010]为解决上述技术问题,本专利技术提供一种基于网络数据转发与控制层面分离的纠删码修复方法,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;
[0011]所述纠删码修复方法包括如下步骤:
[0012]步骤1:通过在数据存储层部署分布式存储系统,构建分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转
发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;
[0013]步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,V
i
,...,V
n

[0014]步骤3:网络控制层向数据存储层其中一个节点V
i
发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;
[0015]步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点V
i
相连的端口可用带宽surp_bandwidth;
[0016][0017]步骤5:重复步骤3及步骤4,直至计算出所有供应节点与新生节点到交换机的可用带宽;
[0018]步骤6:选择节点V
i
到节点V0的带宽最大的k个节点,进行数据的传输,根据纠删码的编码算法修复失效的数据。
[0019]其中,所述步骤5中,节点之间进行数据传输可能会经过多个交换机端口,每个交换机端口的流量可能是不同的,会测出不同的数据的带宽,在计算节点之间的带宽时,以经过端口的最小带宽为准。
[0020]其中,所述数据存储层包括分布式存储系统的多个存储节点,其用于存储数据。
[0021]其中,所述网络转发层用于对接收到的数据进行转发和处理,其包括交换机。
[0022]其中,所述网络控制层用于制定数据转发策略,进行角色下发,对网络拓扑、状态信息进行管理。
[0023](三)有益效果
[0024]与现有技术相比较,本专利技术采取了数据与转发平面分离的方式,实现将网络的数据转发的控制平面分开,实时监控节点间的流量,从而测得网络的实时带宽,可以选择出带宽最好的节点,实现基于带宽的数据修复算法,可以最终优化纠删码的修复方法。
[0025]该基于带宽的数据修复算法,通过与传统的纠删码修复算法时间做比较,数据修复的速度提高了将近10%。纠删码的修复速度提高,分布式存储系统数据的可靠性和可用性也提高。
附图说明
[0026]图1为纠删码编码示意图。
[0027]图2为基于带宽数据修复模型示意图。。
[0028]图3为基于带宽修复路径选择示意图。
[0029]图4为基于网络数据转发与控制平面分离的纠删码修复方案原理示意图。
具体实施方式
[0030]为使本专利技术的目的、内容、和优点更加清楚,下面结合附图和实施例,对本专利技术的
具体实施方式作进一步详细描述。
[0031]为解决现有技术问题,本专利技术提供一种基于网络数据转发与控制层面分离的纠删码修复方法,如图4所示,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;
[0032]所述纠删码修复方法包括如下步骤:
[0033]步骤1:通过在数据存储层部署分布式存储系统,构建如图4所示的分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;
[0034]步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,V
i
,...,V
n

[0035]步骤3:网络控制层向数据存储层其中一个节点V
i
发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;
[0036]步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点V
i
相连的端口可用带宽surp_bandwidth;
[0037][0038]步骤5:重复本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;所述纠删码修复方法包括如下步骤:步骤1:通过在数据存储层部署分布式存储系统,构建分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,V
i
,...,V
n
;步骤3:网络控制层向数据存储层其中一个节点V
i
发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点V
i<...

【专利技术属性】
技术研发人员:朱盼盼张永静石春刚周羽郑宇宁李静
申请(专利权)人:北京京航计算通讯研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1