CN112256471A - 基于网络数据转发与控制层面分离的纠删码修复方法 - Google Patents
基于网络数据转发与控制层面分离的纠删码修复方法 Download PDFInfo
- Publication number
- CN112256471A CN112256471A CN202011121525.2A CN202011121525A CN112256471A CN 112256471 A CN112256471 A CN 112256471A CN 202011121525 A CN202011121525 A CN 202011121525A CN 112256471 A CN112256471 A CN 112256471A
- Authority
- CN
- China
- Prior art keywords
- data
- network
- nodes
- bandwidth
- forwarding
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Abstract
本发明属于分布式存储系统技术领域,具体涉及一种基于网络数据转发与控制层面分离的纠删码修复方法。与现有技术相比较,本发明采取了数据与转发平面分离的方式,实现将网络的数据转发的控制平面分开,实时监控节点间的流量,从而测得网络的实时带宽,可以选择出带宽最好的节点,实现基于带宽的数据修复算法,可以最终优化纠删码的修复方法。该基于带宽的数据修复算法,通过与传统的纠删码修复算法时间做比较,数据修复的速度提高了将近10%。纠删码的修复速度提高,分布式存储系统数据的可靠性和可用性也提高。
Description
技术领域
本发明属于分布式存储系统技术领域,具体涉及一种基于网络数据转发与控制层面分离的纠删码修复方法。
背景技术
纠删码是分布式存储系统的一种容错技术,可以用三元组(n,k,k')表示,主要思想为将原数据D分为k个大小相等的数据块,通过特定的编码算法对这k个数据块进行编码计算,产生n个编码块,其中n>k,从中取任意k'(k≤k'<n)个编码块都可以恢复出原数据对象D,如图1所示。当节点发生失效时,供应节点向新生节点发送数据,新生节点接收数据之后,根据使用的编码算法恢复出丢失的数据。
在分布式存储系统的修复模型中,可以将节点分为两种类型,供应节点与新生节点,供应节点是提供编码块的节点,新生节点是接收编码块恢复出丢失数据的节点,数据传输的路径形成修复树,如图2表示,其中V0为新生节点,V1-V3为供应节点。
为了提高纠删码的修复速度,提出了基于带宽的修复模型,基于带宽的修复模型是指,在进行路径选择时,优先选择带宽好的节点,以此提高数据传输的速度,从而提高纠删码修复的速度,如图3所示,可以将分布式存储节点抽象为拓扑图的其中一个节点,两个节点之间的边值代表节点间的带宽,选择带宽最大的节点即变成选择边值最大的节点。
中国专利“CN103729151一种基于改进型纠删码的失效数据修复方法”构建了一个由1个控制节点和N个存储节点组成的分布式存储系统,控制节点安装有数据写入管理程序和数据读取程序,存储节点安装有数据写入程序和数据读取程序,数据写入管理程序接收用户提交的数据对象,进行分块和编码计算,最终修复丢失的数据。
现有的专利关注点在减少纠删码数据的负载,然而纠删码的修复速度会影响数据的可靠性和可用性。基于带宽的纠删码修复算法只关注纠删码的修复速度,从而提高数据的可靠性和可用性。实时带宽极难测量,基于带宽的纠删码修复算法只停留在理论阶段,没有在实际环境中应用。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提供一种纠删码修复方法。
(二)技术方案
为解决上述技术问题,本发明提供一种基于网络数据转发与控制层面分离的纠删码修复方法,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;
所述纠删码修复方法包括如下步骤:
步骤1:通过在数据存储层部署分布式存储系统,构建分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;
步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,Vi,...,Vn;
步骤3:网络控制层向数据存储层其中一个节点Vi发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;
步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点Vi相连的端口可用带宽surp_bandwidth;
步骤5:重复步骤3及步骤4,直至计算出所有供应节点与新生节点到交换机的可用带宽;
步骤6:选择节点Vi到节点V0的带宽最大的k个节点,进行数据的传输,根据纠删码的编码算法修复失效的数据。
其中,所述步骤5中,节点之间进行数据传输可能会经过多个交换机端口,每个交换机端口的流量可能是不同的,会测出不同的数据的带宽,在计算节点之间的带宽时,以经过端口的最小带宽为准。
其中,所述数据存储层包括分布式存储系统的多个存储节点,其用于存储数据。
其中,所述网络转发层用于对接收到的数据进行转发和处理,其包括交换机。
其中,所述网络控制层用于制定数据转发策略,进行角色下发,对网络拓扑、状态信息进行管理。
(三)有益效果
与现有技术相比较,本发明采取了数据与转发平面分离的方式,实现将网络的数据转发的控制平面分开,实时监控节点间的流量,从而测得网络的实时带宽,可以选择出带宽最好的节点,实现基于带宽的数据修复算法,可以最终优化纠删码的修复方法。
该基于带宽的数据修复算法,通过与传统的纠删码修复算法时间做比较,数据修复的速度提高了将近10%。纠删码的修复速度提高,分布式存储系统数据的可靠性和可用性也提高。
附图说明
图1为纠删码编码示意图。
图2为基于带宽数据修复模型示意图。。
图3为基于带宽修复路径选择示意图。
图4为基于网络数据转发与控制平面分离的纠删码修复方案原理示意图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
为解决现有技术问题,本发明提供一种基于网络数据转发与控制层面分离的纠删码修复方法,如图4所示,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;
所述纠删码修复方法包括如下步骤:
步骤1:通过在数据存储层部署分布式存储系统,构建如图4所示的分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;
步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,Vi,...,Vn;
步骤3:网络控制层向数据存储层其中一个节点Vi发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;
步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点Vi相连的端口可用带宽surp_bandwidth;
步骤5:重复步骤3及步骤4,直至计算出所有供应节点与新生节点到交换机的可用带宽;确定节点间的带宽之后构造类似图2的数据模型;
步骤6:选择节点Vi到节点V0的带宽最大的k个节点,进行数据的传输,根据纠删码的编码算法修复失效的数据。
其中,所述步骤5中,节点之间进行数据传输可能会经过多个交换机端口,每个交换机端口的流量可能是不同的,会测出不同的数据的带宽,在计算节点之间的带宽时,以经过端口的最小带宽为准。
其中,所述数据存储层包括分布式存储系统的多个存储节点,其用于存储数据。
其中,所述网络转发层用于对接收到的数据进行转发和处理,其包括交换机。
其中,所述网络控制层用于制定数据转发策略,进行角色下发,对网络拓扑、状态信息等进行管理,是网络的控制核心部分。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (5)
1.一种基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,该方法基于包括纠删码修复系统来实施,所述纠删码修复系统包括:数据存储层、网络转发层、网络控制层;
所述纠删码修复方法包括如下步骤:
步骤1:通过在数据存储层部署分布式存储系统,构建分布式存储系统的网络模型,包括数据存储层、网络转发层与网络控制层;其中网络控制层控制交换机端口数据转发,网络转发层的交换机顺序连接,每台交换机与几台存储节点相连,为分布式存储系统配置纠删码的编码算法;
步骤2:当分布式存储系统的存储节点中有节点发生失效时,依据纠删码的编码算法,确定所有可提供数据的供应节点与新生节点,并将新生节点存储为V0,供应节点存储为V1,...,Vi,...,Vn;
步骤3:网络控制层向数据存储层其中一个节点Vi发送数据包,交换机端口一定时间内返回发送包数量sn、接收到的包数量rn、发收包的时间间隔T和交换机端口的带宽速率curr_bandwidth;
步骤4:根据步骤3中获得的数据,根据以下公式计算出交换机与节点Vi相连的端口可用带宽surp_bandwidth;
步骤5:重复步骤3及步骤4,直至计算出所有供应节点与新生节点到交换机的可用带宽;
步骤6:选择节点Vi到节点V0的带宽最大的k个节点,进行数据的传输,根据纠删码的编码算法修复失效的数据。
2.如权利要求1所述的基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,所述步骤5中,节点之间进行数据传输可能会经过多个交换机端口,每个交换机端口的流量可能是不同的,会测出不同的数据的带宽,在计算节点之间的带宽时,以经过端口的最小带宽为准。
3.如权利要求1所述的基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,所述数据存储层包括分布式存储系统的多个存储节点,其用于存储数据。
4.如权利要求1所述的基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,所述网络转发层用于对接收到的数据进行转发和处理,其包括交换机。
5.如权利要求1所述的基于网络数据转发与控制层面分离的纠删码修复方法,其特征在于,所述网络控制层用于制定数据转发策略,进行角色下发,对网络拓扑、状态信息进行管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121525.2A CN112256471A (zh) | 2020-10-19 | 2020-10-19 | 基于网络数据转发与控制层面分离的纠删码修复方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121525.2A CN112256471A (zh) | 2020-10-19 | 2020-10-19 | 基于网络数据转发与控制层面分离的纠删码修复方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112256471A true CN112256471A (zh) | 2021-01-22 |
Family
ID=74245439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011121525.2A Pending CN112256471A (zh) | 2020-10-19 | 2020-10-19 | 基于网络数据转发与控制层面分离的纠删码修复方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256471A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112260799A (zh) * | 2020-10-19 | 2021-01-22 | 北京京航计算通讯研究所 | 基于网络数据转发与控制层面分离的纠删码修复系统 |
CN113285985A (zh) * | 2021-04-30 | 2021-08-20 | 桂林电子科技大学 | 一种多数据中心背景下基于遗传算法的rs码节点修复方法 |
CN114296648A (zh) * | 2021-12-24 | 2022-04-08 | 天翼云科技有限公司 | 分布式云存储数据的维护方法、装置、设备和可读介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100218037A1 (en) * | 2008-09-16 | 2010-08-26 | File System Labs Llc | Matrix-based Error Correction and Erasure Code Methods and Apparatus and Applications Thereof |
US20120266044A1 (en) * | 2011-04-18 | 2012-10-18 | The Chinese University Of Hong Kong | Network-coding-based distributed file system |
CN103645861A (zh) * | 2013-12-03 | 2014-03-19 | 华中科技大学 | 一种纠删码集群中失效节点的重构方法 |
CN105159603A (zh) * | 2015-08-18 | 2015-12-16 | 福建省海峡信息技术有限公司 | 一种分布式数据存储系统的修复方法 |
US20160011939A1 (en) * | 2014-07-09 | 2016-01-14 | Qualcomm Incorporated | Systems and methods for reliably storing data using liquid distributed storage |
US20160211869A1 (en) * | 2015-01-20 | 2016-07-21 | International Business Machines Corporation | Multiple Erasure Codes for Distributed Storage |
US20170255510A1 (en) * | 2016-03-02 | 2017-09-07 | Yunshang company limited | System and method for regenerating codes for a distributed storage system |
US20170346897A1 (en) * | 2016-05-25 | 2017-11-30 | Cisco Technology, Inc. | Congestion Aware Load Balancing for Distributed Storage |
CN109067852A (zh) * | 2018-07-15 | 2018-12-21 | 中国人民解放军国防科技大学 | 一种基于纠删码的跨中心协同修复方法 |
CN110190926A (zh) * | 2019-04-26 | 2019-08-30 | 华中科技大学 | 基于网络计算的纠删码修复方法、纠删码更新方法及系统 |
CN110704232A (zh) * | 2019-10-10 | 2020-01-17 | 广东工业大学 | 一种分布式系统中失效节点的修复方法、装置和设备 |
CN112260799A (zh) * | 2020-10-19 | 2021-01-22 | 北京京航计算通讯研究所 | 基于网络数据转发与控制层面分离的纠删码修复系统 |
-
2020
- 2020-10-19 CN CN202011121525.2A patent/CN112256471A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100218037A1 (en) * | 2008-09-16 | 2010-08-26 | File System Labs Llc | Matrix-based Error Correction and Erasure Code Methods and Apparatus and Applications Thereof |
US20120266044A1 (en) * | 2011-04-18 | 2012-10-18 | The Chinese University Of Hong Kong | Network-coding-based distributed file system |
CN103645861A (zh) * | 2013-12-03 | 2014-03-19 | 华中科技大学 | 一种纠删码集群中失效节点的重构方法 |
US20160011939A1 (en) * | 2014-07-09 | 2016-01-14 | Qualcomm Incorporated | Systems and methods for reliably storing data using liquid distributed storage |
US20160211869A1 (en) * | 2015-01-20 | 2016-07-21 | International Business Machines Corporation | Multiple Erasure Codes for Distributed Storage |
CN105159603A (zh) * | 2015-08-18 | 2015-12-16 | 福建省海峡信息技术有限公司 | 一种分布式数据存储系统的修复方法 |
US20170255510A1 (en) * | 2016-03-02 | 2017-09-07 | Yunshang company limited | System and method for regenerating codes for a distributed storage system |
US20170346897A1 (en) * | 2016-05-25 | 2017-11-30 | Cisco Technology, Inc. | Congestion Aware Load Balancing for Distributed Storage |
CN109067852A (zh) * | 2018-07-15 | 2018-12-21 | 中国人民解放军国防科技大学 | 一种基于纠删码的跨中心协同修复方法 |
CN110190926A (zh) * | 2019-04-26 | 2019-08-30 | 华中科技大学 | 基于网络计算的纠删码修复方法、纠删码更新方法及系统 |
CN110704232A (zh) * | 2019-10-10 | 2020-01-17 | 广东工业大学 | 一种分布式系统中失效节点的修复方法、装置和设备 |
CN112260799A (zh) * | 2020-10-19 | 2021-01-22 | 北京京航计算通讯研究所 | 基于网络数据转发与控制层面分离的纠删码修复系统 |
Non-Patent Citations (5)
Title |
---|
SUJOY SAHA 等: "StorageFlow: SDN-enabled efficient data regeneration for distributed storage systems", 《2017 IEEE CONFERENCE ON COMPUTER COMMUNICATIONS WORKSHOPS (INFOCOM WKSHPS)》 * |
ZHENG-PING GUO 等: "REEFS: An SDN Hyper File System Based on Erasure Coding", 《 2018 IEEE 4TH INTERNATIONAL CONFERENCE ON COMPUTER AND COMMUNICATIONS (ICCC)》 * |
朱盼盼 等: "分布式存储系统中纠删码数据修复算法优化与实现", 《计算机应用研究》 * |
李慧等: "去中心化存储下分布式低带宽多节点修复方法", 《小型微型计算机系统》 * |
王勇 等: "基于软件定义网络和多属性决策的Ceph存储系统节点选择方法", 《计算机学报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112260799A (zh) * | 2020-10-19 | 2021-01-22 | 北京京航计算通讯研究所 | 基于网络数据转发与控制层面分离的纠删码修复系统 |
CN113285985A (zh) * | 2021-04-30 | 2021-08-20 | 桂林电子科技大学 | 一种多数据中心背景下基于遗传算法的rs码节点修复方法 |
CN114296648A (zh) * | 2021-12-24 | 2022-04-08 | 天翼云科技有限公司 | 分布式云存储数据的维护方法、装置、设备和可读介质 |
CN114296648B (zh) * | 2021-12-24 | 2023-08-08 | 天翼云科技有限公司 | 分布式云存储数据的维护方法、装置、设备和可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112256471A (zh) | 基于网络数据转发与控制层面分离的纠删码修复方法 | |
CN108521375B (zh) | 一种基于SDN的网络多业务流量QoS的传输及调度方法 | |
EP2148459B1 (en) | A method for establishing clock trace relationship and a system for computing clock trace relationship | |
CN105827419A (zh) | 一种转发设备故障处理的方法、设备和控制器 | |
CN109038794B (zh) | 一种面向QoS控制的特高压电网系统保护业务路径规划方法 | |
CN112260799A (zh) | 基于网络数据转发与控制层面分离的纠删码修复系统 | |
CN108075825B (zh) | 一种基于sdn的天基信息网络多控制器失效处理方法 | |
CN105743801A (zh) | 一种堆叠系统的流量转发的方法及装置 | |
CN101841482B (zh) | 一种数据中心网络节能路由方法及装置 | |
CN102959911A (zh) | 一种设备和方法 | |
CN112350949B (zh) | 软件定义网络中基于流调度的重路由拥塞控制方法及系统 | |
CN112866103B (zh) | 一种面向边缘计算的时间敏感移动前传网络保护方法 | |
CN110190926B (zh) | 基于网络计算的纠删码更新方法及系统 | |
Yang et al. | SolarCode: Utilizing erasure codes for reliable data delivery in solar-powered wireless sensor networks | |
US8165162B2 (en) | Method and system for optimizing fragment size for aggregation at the physical layer | |
CN112751644A (zh) | 数据传输方法、装置及系统、电子设备 | |
CN114745791B (zh) | 一种电力业务切片编排和资源配置方法及装置 | |
CN109889447B (zh) | 一种基于混合环组网和喷泉码的网络传输方法及系统 | |
CN113438182B (zh) | 一种基于信用的流量控制系统和流量控制方法 | |
Shacham | Packet recovery and error correction in high-speed wide-area networks | |
CN104471888B (zh) | 突发数据块中的空闲块idle的处理方法、设备及系统 | |
CN100433614C (zh) | 一种数据包恢复方法 | |
Garbinato et al. | An adaptive algorithm for efficient message diffusion in unreliable environments | |
CN108536555B (zh) | 一种基于BCube(n,b)数据中心的数据存取方法 | |
CN112445656A (zh) | 分布式存储系统中数据的修复方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210122 |