一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf

上传人:1** 文档编号:1281727 上传时间:2018-04-12 格式:PDF 页数:15 大小:554.06KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010229310.2

申请日:

2010.07.19

公开号:

CN101964030A

公开日:

2011.02.02

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 21/00申请公布日:20110202|||著录事项变更IPC(主分类):G06F 21/00变更事项:发明人变更前:汪东升 生拥宏 郭松柳 王朝阳 鞠秀芳变更后:汪东升 生拥宏 郭松柳 徐涛 牟宏磊|||实质审查的生效IPC(主分类):G06F 21/00申请日:20100719|||公开

IPC分类号:

G06F21/00; G06F17/30

主分类号:

G06F21/00

申请人:

北京兴宇中科科技开发股份有限公司

发明人:

汪东升; 生拥宏; 郭松柳; 王朝阳; 鞠秀芳

地址:

100101 北京市朝阳区大屯路科学园南里风林绿洲I甲2201室

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

一致点插入与恢复支持的卷级连续数据保护系统包括应用程序层模块、一致点插入驱动模块、文件系统模块、镜像驱动模块、本地逻辑卷模块、连续数据保护系统服务器。捕获文件级一致点操作信息并封装至一个IO数据包和插入到正常数据流中,连续数据保护服务器区分IO数据,普通IO数据则存储至连续数据存储池,包含一致点信息IO数据则提取一致点信息并写入一致点信息文件,如果需要恢复则查找一致点索引文件,生成恢复时间列表,将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端。本发明通用性强,能恢复支持不同粒度连续数据保护一致性。

权利要求书

1: 一种一致点插入与恢复支持的卷级连续数据保护系统, 包括以下模块 : 应用程序层模块, 用于对存储在磁盘上的数据进行读写操作 ; 一致点插入驱动模块, 用于对指定的目录夹和文件进行一致性操作捕获, 并将一致点 信息封装成普通的输入输出数据包 ; 文件系统模块, 用于实现文件级逻辑地址到卷级逻辑地址的转换 ; 镜像驱动模块, 用于将写入被保护磁盘的数据发送到连续数据保护服务器 ; 本地逻辑卷模块, 连续数据保护系统可为该模块的逻辑卷提供任意点的数据恢复 ; 连续数据保护系统服务器, 用于区分普通的输入输出数据和包含一致点信息的输入输 出, 如果是普通数据输入输出则将数据存储至连续数据存储池, 如果是包含一致点信息的 输入输出数据, 则提取一致点信息并写入一致点信息文件中。
2: 根据权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统, 其特 征在于, 所述一致点信息至少包括捕获、 创建或修改信息。
3: 根据权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统, 其特 征在于, 所述一致点封装至普通的输入输出数据包的格式为微软文件系统中的输入输出请 求包格式。
4: 根据权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统, 其特 征在于, 所述镜像驱动模块安装有网络小型计算机系统接口发起端模块, 是用于根据客户 端和服务器端的数据传输协议启动输入输出数据传输的模块。
5: 根据权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统, 其特 征在于, 所述连续数据保护系统服务器安装有网络小型计算机系统接口接受端模块, 是用 于根据客户端和服务器端的数据传输协议接受镜像驱动模块网络小型计算机系统接口发 起端模块传输的输入输出数据的模块。
6: 根据权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统, 其特 征在于, 所述镜像驱动模块拥有一个写输入输出请求包的队列, 通过异步方式将写输入输 出请求包发送至连续数据保护系统服务器。
7: 实现权利要求 1 所述的一种一致点插入与恢复支持的卷级连续数据保护系统的方 法, 包括以下步骤 : 步骤 1、 一致点捕获驱动模块捕获文件级一致点操作信息 ; 步骤 2、 将一致点信息封装至至少一个输入输出数据包中 ; 步骤 3、 将包含一致点输入输出数据的输入输出数据包插入到正常的数据流中 ; 步骤 4、 连续数据保护服务器区分普通的数据输入输出和包含一致点信息的输入输出, 如果是普通数据输入输出则将数据存储至连续数据存储池, 如果是包含一致点信息的输入 输出数据则提取一致点信息并写入一致点信息文件。 步骤 5、 判断是否需要恢复一致点, 如果需要恢复则查找一致点索引文件, 生成恢复时 间列表, 将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端, 否则转至 步骤 1。
8: 根据权利要求 7 所述的一种一致点插入与恢复支持的卷级连续数据保护实现方法, 其特征在于, 所述步骤 2 一致点捕获驱动模块捕获文件级一致点操作信息具体包括以下步 骤: 2 步骤 1、 等待上层写入输入输出请求包 ; 步骤 2、 分析输入输出请求包操作类型, 如果是一致点关心的输入输出请求包类型, 则 创建新的写输入输出请求包, 并将一致点信息封装至新创建的写输入输出请求包, 并将新 创建的包含一致点信息的写输入输出请求包插入至镜像驱动模块的正常输入输出请求包 数据流中 ; 步骤 3、 转回继续等待新的输入输出请求包。
9: 根据权利要求 7 所述的一种一致点插入与恢复支持的卷级连续数据保护实现方法, 其特征在于, 所述步骤 2 中的将一致点信息封装至至少一个输入输出数据包中进一步包括 以下步骤 : 步骤 1、 创建至少一新的写类型输入输出请求包 ; 步骤 2、 设置输入输出请求包中写逻辑卷为镜像卷, 设置写逻辑卷偏移地址 ; 步骤 3、 将一致点信息写入新创建的输入输出请求包的数据区。

说明书


一致点插入与恢复支持的卷级连续数据保护系统及方法

    技术领域 本发明属于计算机数据存储技术领域, 尤其是一致点插入与恢复支持的卷级连续 数据保护系统其实现方法, 为卷级连续数据保护系统一致性恢复提供辅助支持手段。
     技术背景 连续数据保护是一种数据的连续时间点保护技术, 其作用是能在故障瞬间完成任 何时间点的故障恢复, 从根本上解决传统备份技术中低恢复能力和非精细时间策略等先天 弱点问题。连续数据保护系统能够捕捉被保护系统一切数据改动, 并提供记录着所有历史 数据状态的数据变化。例如, 如果物理上的同一地址的数据变化 10 次, 连续数据保护系统 将这 10 次数据变化全部记录下来, 并发送到远程的备份服务器。这样在被保护系统发生故 障时, 连续保护系统能够通过远程数据备份设备保证被保护系统在任意时间点恢复。
     从操作上来看, 连续数据保护系统的实现方法可以分为基于块、 基于文件和基于 应用的系统与方法三种类型。基于块的实现方法是位于物理储存或逻辑卷管理层之上的。 当数据块被写入主存储器时, 写入的数据副本就被连续数据保护系统捕获并存储到一个独 立地点中。与此类似的是, 基于文件的连续数据保护系统的实现方法正好位于文件系统之 上, 它可以捕获文件系统数据和元数据事件, 如文件创建、 修改或删除等。基于应用的连续 数据保护系统的实现方法则直接位于受保护的特定应用之中, 与具体应用紧密耦合。
     数据一致性是关系到连续数据保护恢复数据可用性的关键指标, 只有保证数据一 致性的连续数据保护方案, 才能保证数据快速可用。连续数据保护为用户提供了大量的任 意点恢复, 但不能保证每一个时间点恢复出的磁盘数据是一致的。 当然要保证数据一致, 无 论是文件系统还数据库系统都提供了很好的检查机制, 但这些检查机制都是事后检查。为 此, 美国商业机器公司 (IBM) 的阿克沙特·福尔玛 (Akshat Verma) 等人在 2008 年美国加 利福尼亚圣约瑟举行的第六届文件和存储技术年会论文集上发表了一遍 “一种有效的灾害 恢复点鉴别机制” 的论文, 该文提出了一种有效的恢复点鉴别机制 SWEEPER, SWEEPER 通过建 立系统事件, 如软件更新、 防火墙设置和更新启动项等事件数据库, 并建立系统事件和系统 故障之间的概率关系。 在恢复时, SWEEPER 提供的快速扫描算法可根据用户选择的 RPO 目标 参数, 通过概率估算方法提供一致点快速辅助支持功能。但 SWEEPER 需定义许多系统事件 以及事件与系统故障的概率关系, 而在实际应用中, 很难建立系统事件和故障之间的概率 关系, 并且恢复的准确性不高。 2008 年在意大利拿波里举办的 2008 可信分配系统学术研讨 会上, 陆茂华 (Lu Maohua)、 阙志克 (Tzi-cker Chiueh) 和林施彪 (Lin Shibiao) 发表了一 篇名为 “一种通过分析文件系统元数据写操作的增量式文件系统一致性检查方法” 的论文, 该文提出了一种通过分析文件系统元数据的写操作并插入一致恢复点的方法, 该方法基于 公开格式的文件系统 ext2(second extended file system, 第二扩展文件系统 ) 实现, 通用 性不强, 强依赖于文件系统的元数据结构, 对像美国微软公司的 NTFS 文件系统格式则不适 合。
     发明内容 为克服现有技术的不足, 本发明的目的在于提供一种一致点插入与恢复支持的卷 级连续数据保护系统及方法。
     为实现上述目的, 本发明采取的总体技术方案为一致点插入与恢复支持的卷级连 续数据保护系统, 包括以下模块 :
     应用程序层模块, 用于对存储在磁盘上的数据进行读写操作 ;
     一致点插入驱动模块, 用于对指定的目录夹和文件进行一致性操作捕获, 并将一 致点信息封装成普通的输入输出数据包 ;
     文件系统模块, 用于实现文件级逻辑地址到卷级逻辑地址的转换 ;
     镜像驱动模块, 用于将写入被保护磁盘的数据发送到连续数据保护服务器 ;
     本地逻辑卷模块, 连续数据保护系统可为该模块的逻辑卷提供任意点的数据恢 复;
     连续数据保护系统服务器, 用于区分普通的输入输出数据和包含一致点信息的输 入输出, 如果是普通数据输入输出则将数据存储至连续数据存储池, 如果是包含一致点信 息的输入输出数据, 则提取一致点信息并写入一致点信息文件中。
     所述一致点信息至少包括捕获、 创建或修改信息。
     所述一致点封装至普通的输入输出数据包的格式为微软文件系统中的输入输出 请求包格式。
     所述镜像驱动模块安装有网络小型计算机系统接口发起端模块, 是用于根据客户 端和服务器端的数据传输协议启动输入输出数据传输的模块。
     所述连续数据保护系统服务器安装有网络小型计算机系统接口接受端模块, 是用 于根据客户端和服务器端的数据传输协议接受镜像驱动模块网络小型计算机系统接口发 起端模块传输的输入输出数据的模块。
     所述镜像驱动模块拥有一个写输入输出请求包的队列, 通过异步方式将写输入输 出请求包发送至连续数据保护系统服务器。
     一致点插入和恢复支持的卷级连续数据保护方法, 包括以下步骤 :
     步骤 1、 一致点捕获驱动模块捕获文件级一致点操作信息 ;
     步骤 2、 将一致点信息封装至至少一个输入输出数据包中 ;
     步骤 3、 将包含一致点输入输出数据的输入输出数据包插入到正常的数据流中 ;
     步骤 4、 连续数据保护服务器区分普通的数据输入输出和包含一致点信息的输入 输出, 如果是普通数据输入输出则将数据存储至连续数据存储池, 如果是包含一致点信息 的输入输出数据则提取一致点信息并写入一致点信息文件。
     步骤 5、 判断是否需要恢复一致点, 如果需要恢复则查找一致点索引文件, 生成恢 复时间列表, 将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端, 否则 转至步骤 1。
     所述步骤 2 一致点捕获驱动模块捕获文件级一致点操作信息具体包括以下步骤 :
     步骤 1、 等待上层写入输入输出请求包 ;
     步骤 2、 分析输入输出请求包操作类型, 如果是一致点关心的输入输出请求包类 型, 则创建新的写输入输出请求包, 并将一致点信息封装至新创建的写输入输出请求包, 并
     将新创建的包含一致点信息的写输入输出请求包插入至镜像驱动模块的正常输入输出请 求包数据流中 ;
     步骤 3、 转回继续等待新的输入输出请求包。
     所述步骤 2 中的将一致点信息封装至至少一个输入输出数据包中进一步包括以 下步骤 :
     步骤 1、 创建至少一新的写类型输入输出请求包 ;
     步骤 2、 设置输入输出请求包中写逻辑卷为镜像卷, 设置写逻辑卷偏移地址 ;
     步骤 3、 将一致点信息写入新创建的输入输出请求包的数据区。
     本发具有明显的优点和积极效果, 具体包括 : 1、 本发明提出的一致点辅助决策方 法无需定义许多系统事件, 仅通过捕获特定类型的输入输出 (IO, input and output) 就可 插入一致的时间点。本发明能够捕获文件层的一致点操作, 并能将一致点信息插入至正常 的数据 IO 流中。本发明通过在文件系统之上插入一致点捕获驱动来捕获文件操作语义信 息, 然后将一致点信息封装成特殊的 IRP 发送给镜像驱动, 亦即在普通的 IO 流中插入了一 致点信息的 IO 块数据。2、 本发明后台存储系统能够区分一致点 IO 和普通 IO, 并将一致点 信息写入特定的文件中。在连续数据保护后台存储系统中区分普通的数据 IO 和一致点信 息 IO, 如果是一致点信息 IO 则将一致点信息写入独立的文件中, 该方法为连续数据保护系 统的恢复提供了便捷和有效手段。 3、 本发明能够为连续数据保护一致性恢复提供辅助决策 支持, 通过用户自定义插入策略, 本系统可以弱化为连续快照保护方法。 4、 满足不同粒度一 致性要求, 可提供不同粒度的一致点恢复支持。 本发明可定制不同的捕获事件, 可以提供弱 一致、 强一致和强制一致等 3 种手段, 分别能满足单文件、 目录和逻辑卷不同粒度一致性恢 复的需要。5、 通用性强。该设计方法在文件系统上层实现, 通过捕获文件的关闭、 刷新等 关键事件, 在正常的 IO 流中插入辅助一致点信息, 为连续数据保护一致性恢复提供辅助手 段, 与上层应用无关, 具有很强的通用性。 附图说明
     图 1 为本发明的一致点插入和恢复支持的卷级连续数据保护系统结构图 ;
     图 2 为本发明一致点插入和恢复支持的卷级连续数据保护方法的主流程图 ;
     图 3 为本发明一致点捕获时刻示意图 ;
     图 4 为本发明一致点插入的封装流程图 ;
     图 5 为本发明一致点插入的存储流程图 ;
     图 6 为本发明的一致点输入输出请求包处理流程图 ;
     图 7 为本发明卷级连续数据保护恢复流程图。 具体实施方式
     下面结合说明书附图来说明本发明的具体实施方式。
     参考图 1, 本发明的一致点插入和恢复支持的卷级连续数据保护系统包括以下模 块:
     应用程序层模块 1, 该模块为操作系统上实际运行的程序, 它会对存储在磁盘上的 数据进行读写操作。一致点插入驱动模块 2, 该模块可根据用户的策略定义, 对指定的目录夹和指定的 文件类型进行一致性操作捕获, 并将将一致点信息封装成特定的输入输出请求包 (IRP, IO Request Package)。
     文件系统模块 3, 为操作系统上的文件系统模块。 本发明中采用视窗 (Windows) 操 作系统中的新技术文件系统 (NTFS, New Technology FileSystem)。文件系统模块主要实 现了文件级逻辑地址到卷级逻辑地址的转换。如文件系统中 1 个写请求需要将 8K 字节内 容从文件某偏移处写如入文件 A。 如果文件系统块大小为 4K 字节, 则经过文件系统处理后, 会产生 2 个写 IRP 发送给镜像驱动, 每个 IRP 中指定了 4K 字节写入逻辑卷的偏移地址。
     镜像驱动模块 4, 卷级连续数据保护为了捕获所有的对保护磁盘的读写操作, 加入 了镜像驱动, 其主要作用是将写入被保护磁盘的数据发送到至连续数据保护服务器。在镜 像驱动模块 4 上有一个网络小型计算机系统接口发起端模块 (iSCSI initiator, internet Small Computer SystemInterface initiator)7, 本发明采用 iSCSI 协议作为客户端和服 务器端的数据传输协议, 客户端安装了 iSCSI 发起端模块 7 iSCSI initiator。 所有写入被 保护磁盘的数据通过 iSCSI 协议发送至远程连续数据保护服务器。镜像驱动模块 5 维护一 个写 IRP 的队列, 通过异步方式将写 IRP 发送至连续数据保护后台模块的连续数据保护服 务器上。一致点 IRP 只插入写往 ( 请给出中文含义 ) 连续数据保护服务器的 IRP 队列, 对 写入本地逻辑卷的 IRP 没有任何影响。 本地逻辑卷模块 5, 该模块是被保护的逻辑卷模块, 连续数据保护系统可以为该卷 提供任意点的数据恢复。
     连续数据保护系统服务器 6, 该服务器上 iSCSI target 模块。该模块区分普通的 IO 数据和包含一致点信息的 IO。如果是普通数据 IO, 则将数据存储至连续数据存储池, 如 果是包含一致点信息的 IO 数据, 则提取一致点信息并写入一致点信息文件中。连续数据保 护系统服务器 6 上安装了网络小型计算机系统接口接受端模块 (iSCSI target, internet SmallComputer System Interface target)8, 用于接受镜像驱动模块 5 的 iSCSIinitiator 模块 7 通过异步方式发送的写 IRP。
     请参阅图 2, 本发明通过在文件系统上层和下层分别插入 “一致点插入驱动” 和 “镜 像驱动” 来实现在正常的块级 IO 流中插入一致点信息。本发明的基于一致点插入和恢复 的卷级连续数据保护方法包括以下步骤 : 首先, 启动应用程序层, 应用程序层模块 1 开始对 存储在磁盘上的文件系统模块 3 上的数据进行读写操作, 一致点捕获驱动模块 2 根据指令 对指定的目录夹和指定的文件类型进行一致性操作捕获, 然后, 将一致点信息封装成特定 的输入输出请求 IO 数据包。镜像驱动模块 4 将包含一致点 IO 数据的 IO 数据包插入到正 常的数据流中, 并发送至连续数据保护服务器 6。连续数据保护服务器 6 区分普通的数据 IO 和包含一致点信息的 IO, 如果是普通数据 IO 则将数据存储至连续数据存储池, 如果是包 含一致点信息的 IO 数据则提取一致点信息并写入一致点信息文件。之后, 判断是否需要 恢复一致点, 如果需要则根据用户强一致点恢复或者弱一致点恢复选择查找一致点索引文 件, 生成恢复时间列表, 返回给用户并等待用户选择其期望的时间点, 然后根据用户选择的 时间点, 将该时间点之前的数据块进行合并, 生成该时间点的数据镜像, 并将数据发送到客 户端进行数据恢复, 否则应用程序层模块 1 继续对存储在磁盘上的文件系统模块 3 上的数 据进行读写操作。
     本发明的一致点捕获时机可根据用户策略定义。一致点捕获驱动捕获所有文件 层的 IRP, 通过 IRP 中操作类型来决定一致点插入时机和一致点内容。IRP 是 Windows 内 核中的一种非常重要的数据结构。上层应用程序与底层驱动程序通信时, 应用程序会发出 I/O 请求, 操作系统将相应的 I/O 请求转换成相应的 IRP, 不同的 IRP 会根据类型被分派到 不同的派遣例程中进行处理。文件 I/O 的相关函数, 例如创建文件 (CreateFile)、 读文件 (ReadFile)、 写文件 (WriteFile)、 ( 关闭文件句柄 CloseHandle) 等分别会引发操作系统产 生创建文件型 IRP(IRP_MJ_CREATE)、 读文件型 IRP(IRP_MJ_READ)、 写文件型 IRP(IRP_MJ_ WRITE)、 关闭文件型 IRP(IRP_MJ_CLOSE) 等不同类型的 IRP, 这些 IRP 会被传送到驱动程序 的相应派遣例程中进行处理。
     请参阅图 3, 本发明处理的一致点 IRP 分为 3 类, 捕获时机说明示意见图 3 :
     1、 弱一致检查点 IRP(Checkpoint IRP)。 在单个文件关闭、 删除和重命名等操作时 写入, 一致性的支持粒度为文件。 弱一致 Checkpoint IRP 通过分析 IRP_MJ_CLOSE 和设为文 件信息型 IRP(IRP_SET_INFORMATION) 两种类型的 IRP 产生。上层应用在关闭文件句柄时 调用系统调用 CloseHandle 方法, CloseHandle 向文件系统发送 IRP_MJ_CLOSE 类型的 IRP。 一致点插入驱动通过分析 IRP_MJ_CLOSE 类型 IRP 中关联的文件信息判断是用户感兴趣的 文件类型或文件保护目录, 如果是则插入一个封装弱一致 IRP 后随同上层 IRP_MJ_CLOSE 类 型的 IRP 发往文件系统。 对 IRP_SET_INFORMATION 类的 IRP, 一致点捕获驱动只对次功能类 型为删除、 重命名和修改属性的 IRP 产生弱一致 Checkpoint IRP, 而对次功能类型为剪切 和修改文件指针的操作不产生弱一致 Checkpoint IRP。本发明处理的 IRP 类型见表 1。
     表 1 一致点 Checkpoint IRP 类型
     操作 IRP_MJ_CREATE来源 创建、 打开文件上层调用 CreateFile捕获 一致点捕获驱动处 理IRP_MJ_CLEANU P在关闭句柄时取消悬挂的 IRPCloseHandle不处理IRP_MJ_CLOSE 关闭文件句柄 CloseHandle 一致点捕获驱动处 理 一致点捕获驱动部 分处理 镜像驱动处理 不处理IRP_SET_INFOR MATION IRP_MJ_WRITE IRP_MJ_FLUSH_ BUFFERS删除、 重命名、 修改属性、 剪切、 修改文件指针。 写入数据 写输出缓冲区或丢弃输入缓冲 区SetFileLengthWriteFile FlushFileBuff ers2、 强一致 Checkpoint IRP。在被保护的目录所有打开的文件都关闭时写入, 一致 性支持粒度为目录。弱一致 Checkpoint IRP 指示了文件的一致点, 而强一致 Checkpoint IRP 则指示了目录的一致点。强一致 CheckpointIRP 通过计数器实现。对用户指定的被保 护目录, 上层应用打开目录下的文件时会往文件系统发送 IRP_MJ_CREATE 类型的 IRP。 与该 目录关联的计数器加 1, 在关闭某个文件时计数器减 1。如果计数器为零, 则表明该目录下 所有打开的文件全部关闭。此时, 一致点捕获驱动插入一个封装强一致信息的 Checkpoint IRP
     3、 强制一致 Checkpoint IRP。按用户定义的策略强制性写入, 一致性支持粒度 为逻辑卷。强制一致 Checkpoint IRP 则根据用户预先定义的策略生成。例如, 用户要求 1 小时生成一个强制一致视图, 则系统每 1 小时插入一个强制一致 Checkpoint IRP。系 统插入强制一致 Checkpoint IRP 时调用操作系统的 Flush 命令强制将文件系统中的缓 存数据刷新到磁盘上。通过插入强制一致 Checkpoint IRP, 系统只能提供崩溃一致性 (Crash-consistency) 级别的数据一致性保证, 而不能提供类似于 Windows 卷影复制服务 提供的应用级一致性 (Application-level consistency) 的快照视图。
     一致点捕获驱动根据 IRP 类型捕获一致点信息具体包括以下步骤。首先等待上层 写入 IRP, 然后分析 IRP 操作类型, 如果是一致点关心的 IRP 类型, 则创建新的写 IRP, 并将 一致点信息封装至新创建的写 IRP, 并将新创建的包含一致点信息的写 IRP 插入镜像驱动 的正常的 IRP 数据流中, 否则将原始 IRP 发送至文件系统, 最后转回继续等待新的 IRP。
     本发明设计的一致点 IRP 设计为写类型的 IRP, 写地址为逻辑卷的 0x1CE 处, 即写 到主引导扇区 (MBR) 的第 2 个磁盘分区表处。一个 MBR 记录包含 4 个磁盘分区信息。由于 连续数据保护系统服务器通过一个逻辑单元号 (LUN, Logical Unit Number) 和本地被保护 的逻辑卷进行镜像。在实际使用中, 连续数据保护系统的一个 LUN 只用了第一个分区, 因此 连续数据保护系统服务器镜像 LUN 的 MBR 的第 2-4 个分区的信息没有实际意义。1 个分区 记录包含 16 个字节, 因此本系统中可用 MBR 的 3 个空闲分区信息, 共计 48 个字节来传送和 表达一致点的信息
     请参阅图 4。 一致点捕获驱动模块 2 将一致点封装至包含一致点信息的 IRP 中, 具 体包括以下步骤 : 首先, 创建一新的写类型 IRP, 然后, 设置 IRP 中写逻辑卷为镜像卷, 接下 来, 设置写逻辑卷偏移地址为 0x1CE, 并将一致点信息写入新创建的 IRP 的数据区, 最后结 束。
     请参阅图 5 和图 6, 连续数据保护服务器模块 6 在接受到前端 7 发送的 IRP 时需要 区分正常的数据 IO 和一致点数据 IO, 具体包括以下步骤。首先, 分析是普通写 IRP, 还是一 致点 IRP, 如果是普通写操作 IRP, 则提取写地址偏移和写内容, 结合服务器当前时间封装 成最小日志单元格式, 并转移至缓存等候处理 ; 如果是一致点 IRP, 则先对缓存中等候写入 的最小日志单元进行去除重复写处理, 即在两个一致点时间间隔内重复写往同一地址的数 据只保留最后一份, 之后启动将缓存数据写入日志, 写入成功后将一致点信息写入特定的 一致点索引文件。
     一致点 IRP 到达是缓存数据写入日志的触发条件, 但不是充分条件。本发明引入 了 3 种写触发条件 : 基于时间的触发、 基于缓存空间的触发和一致点 IRP 触发。为安全起 见, 当缓存数据在内存中滞留时间, 或缓存使用率到达预设的阈值后也触发写日志事件。请参阅图 7, 在用户恢复时, 本发明为用户提供了一致点恢复支持, 具体包括以下 步骤。首先, 用户选择恢复种类, 是强一致点的恢复或者弱一致点恢复。然后, 根据用户的 选择, 查找一致点索引文件, 生成恢复的时间列表返回给用户, 等待用户选择其期望的时间 点。之后, 根据用户选择的时间点, 将该时间点之前的数据块进行合并, 生成该时间点的数 据镜像。最后, 将数据发送到客户端进行数据恢复。
     以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修 改、 等同替换、 改进等, 均应包含在本发明的权利要求范围之内。

一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf_第1页
第1页 / 共15页
一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf_第2页
第2页 / 共15页
一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf_第3页
第3页 / 共15页
点击查看更多>>
资源描述

《一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf》由会员分享,可在线阅读,更多相关《一致点插入与恢复支持的卷级连续数据保护系统及方法.pdf(15页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN101964030A43申请公布日20110202CN101964030ACN101964030A21申请号201010229310222申请日20100719G06F21/00200601G06F17/3020060171申请人北京兴宇中科科技开发股份有限公司地址100101北京市朝阳区大屯路科学园南里风林绿洲I甲2201室72发明人汪东升生拥宏郭松柳王朝阳鞠秀芳54发明名称一致点插入与恢复支持的卷级连续数据保护系统及方法57摘要一致点插入与恢复支持的卷级连续数据保护系统包括应用程序层模块、一致点插入驱动模块、文件系统模块、镜像驱动模块、本地逻辑卷模块、连续数据保护系统服务。

2、器。捕获文件级一致点操作信息并封装至一个IO数据包和插入到正常数据流中,连续数据保护服务器区分IO数据,普通IO数据则存储至连续数据存储池,包含一致点信息IO数据则提取一致点信息并写入一致点信息文件,如果需要恢复则查找一致点索引文件,生成恢复时间列表,将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端。本发明通用性强,能恢复支持不同粒度连续数据保护一致性。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书7页附图5页CN101964031A1/2页21一种一致点插入与恢复支持的卷级连续数据保护系统,包括以下模块应用程序层模块,用于对存储在磁盘上的数据进。

3、行读写操作;一致点插入驱动模块,用于对指定的目录夹和文件进行一致性操作捕获,并将一致点信息封装成普通的输入输出数据包;文件系统模块,用于实现文件级逻辑地址到卷级逻辑地址的转换;镜像驱动模块,用于将写入被保护磁盘的数据发送到连续数据保护服务器;本地逻辑卷模块,连续数据保护系统可为该模块的逻辑卷提供任意点的数据恢复;连续数据保护系统服务器,用于区分普通的输入输出数据和包含一致点信息的输入输出,如果是普通数据输入输出则将数据存储至连续数据存储池,如果是包含一致点信息的输入输出数据,则提取一致点信息并写入一致点信息文件中。2根据权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统,其特征在于。

4、,所述一致点信息至少包括捕获、创建或修改信息。3根据权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统,其特征在于,所述一致点封装至普通的输入输出数据包的格式为微软文件系统中的输入输出请求包格式。4根据权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统,其特征在于,所述镜像驱动模块安装有网络小型计算机系统接口发起端模块,是用于根据客户端和服务器端的数据传输协议启动输入输出数据传输的模块。5根据权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统,其特征在于,所述连续数据保护系统服务器安装有网络小型计算机系统接口接受端模块,是用于根据客户端和服务器端的数据传输协。

5、议接受镜像驱动模块网络小型计算机系统接口发起端模块传输的输入输出数据的模块。6根据权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统,其特征在于,所述镜像驱动模块拥有一个写输入输出请求包的队列,通过异步方式将写输入输出请求包发送至连续数据保护系统服务器。7实现权利要求1所述的一种一致点插入与恢复支持的卷级连续数据保护系统的方法,包括以下步骤步骤1、一致点捕获驱动模块捕获文件级一致点操作信息;步骤2、将一致点信息封装至至少一个输入输出数据包中;步骤3、将包含一致点输入输出数据的输入输出数据包插入到正常的数据流中;步骤4、连续数据保护服务器区分普通的数据输入输出和包含一致点信息的输入输。

6、出,如果是普通数据输入输出则将数据存储至连续数据存储池,如果是包含一致点信息的输入输出数据则提取一致点信息并写入一致点信息文件。步骤5、判断是否需要恢复一致点,如果需要恢复则查找一致点索引文件,生成恢复时间列表,将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端,否则转至步骤1。8根据权利要求7所述的一种一致点插入与恢复支持的卷级连续数据保护实现方法,其特征在于,所述步骤2一致点捕获驱动模块捕获文件级一致点操作信息具体包括以下步骤权利要求书CN101964030ACN101964031A2/2页3步骤1、等待上层写入输入输出请求包;步骤2、分析输入输出请求包操作类型,如果是一致点关心。

7、的输入输出请求包类型,则创建新的写输入输出请求包,并将一致点信息封装至新创建的写输入输出请求包,并将新创建的包含一致点信息的写输入输出请求包插入至镜像驱动模块的正常输入输出请求包数据流中;步骤3、转回继续等待新的输入输出请求包。9根据权利要求7所述的一种一致点插入与恢复支持的卷级连续数据保护实现方法,其特征在于,所述步骤2中的将一致点信息封装至至少一个输入输出数据包中进一步包括以下步骤步骤1、创建至少一新的写类型输入输出请求包;步骤2、设置输入输出请求包中写逻辑卷为镜像卷,设置写逻辑卷偏移地址;步骤3、将一致点信息写入新创建的输入输出请求包的数据区。权利要求书CN101964030ACN101。

8、964031A1/7页4一致点插入与恢复支持的卷级连续数据保护系统及方法技术领域0001本发明属于计算机数据存储技术领域,尤其是一致点插入与恢复支持的卷级连续数据保护系统其实现方法,为卷级连续数据保护系统一致性恢复提供辅助支持手段。技术背景0002连续数据保护是一种数据的连续时间点保护技术,其作用是能在故障瞬间完成任何时间点的故障恢复,从根本上解决传统备份技术中低恢复能力和非精细时间策略等先天弱点问题。连续数据保护系统能够捕捉被保护系统一切数据改动,并提供记录着所有历史数据状态的数据变化。例如,如果物理上的同一地址的数据变化10次,连续数据保护系统将这10次数据变化全部记录下来,并发送到远程的。

9、备份服务器。这样在被保护系统发生故障时,连续保护系统能够通过远程数据备份设备保证被保护系统在任意时间点恢复。0003从操作上来看,连续数据保护系统的实现方法可以分为基于块、基于文件和基于应用的系统与方法三种类型。基于块的实现方法是位于物理储存或逻辑卷管理层之上的。当数据块被写入主存储器时,写入的数据副本就被连续数据保护系统捕获并存储到一个独立地点中。与此类似的是,基于文件的连续数据保护系统的实现方法正好位于文件系统之上,它可以捕获文件系统数据和元数据事件,如文件创建、修改或删除等。基于应用的连续数据保护系统的实现方法则直接位于受保护的特定应用之中,与具体应用紧密耦合。0004数据一致性是关系到。

10、连续数据保护恢复数据可用性的关键指标,只有保证数据一致性的连续数据保护方案,才能保证数据快速可用。连续数据保护为用户提供了大量的任意点恢复,但不能保证每一个时间点恢复出的磁盘数据是一致的。当然要保证数据一致,无论是文件系统还数据库系统都提供了很好的检查机制,但这些检查机制都是事后检查。为此,美国商业机器公司IBM的阿克沙特福尔玛AKSHATVERMA等人在2008年美国加利福尼亚圣约瑟举行的第六届文件和存储技术年会论文集上发表了一遍“一种有效的灾害恢复点鉴别机制”的论文,该文提出了一种有效的恢复点鉴别机制SWEEPER,SWEEPER通过建立系统事件,如软件更新、防火墙设置和更新启动项等事件数。

11、据库,并建立系统事件和系统故障之间的概率关系。在恢复时,SWEEPER提供的快速扫描算法可根据用户选择的RPO目标参数,通过概率估算方法提供一致点快速辅助支持功能。但SWEEPER需定义许多系统事件以及事件与系统故障的概率关系,而在实际应用中,很难建立系统事件和故障之间的概率关系,并且恢复的准确性不高。2008年在意大利拿波里举办的2008可信分配系统学术研讨会上,陆茂华LUMAOHUA、阙志克TZICKERCHIUEH和林施彪LINSHIBIAO发表了一篇名为“一种通过分析文件系统元数据写操作的增量式文件系统一致性检查方法”的论文,该文提出了一种通过分析文件系统元数据的写操作并插入一致恢复点。

12、的方法,该方法基于公开格式的文件系统EXT2SECONDEXTENDEDFILESYSTEM,第二扩展文件系统实现,通用性不强,强依赖于文件系统的元数据结构,对像美国微软公司的NTFS文件系统格式则不适合。说明书CN101964030ACN101964031A2/7页5发明内容0005为克服现有技术的不足,本发明的目的在于提供一种一致点插入与恢复支持的卷级连续数据保护系统及方法。0006为实现上述目的,本发明采取的总体技术方案为一致点插入与恢复支持的卷级连续数据保护系统,包括以下模块0007应用程序层模块,用于对存储在磁盘上的数据进行读写操作;0008一致点插入驱动模块,用于对指定的目录夹和文。

13、件进行一致性操作捕获,并将一致点信息封装成普通的输入输出数据包;0009文件系统模块,用于实现文件级逻辑地址到卷级逻辑地址的转换;0010镜像驱动模块,用于将写入被保护磁盘的数据发送到连续数据保护服务器;0011本地逻辑卷模块,连续数据保护系统可为该模块的逻辑卷提供任意点的数据恢复;0012连续数据保护系统服务器,用于区分普通的输入输出数据和包含一致点信息的输入输出,如果是普通数据输入输出则将数据存储至连续数据存储池,如果是包含一致点信息的输入输出数据,则提取一致点信息并写入一致点信息文件中。0013所述一致点信息至少包括捕获、创建或修改信息。0014所述一致点封装至普通的输入输出数据包的格式。

14、为微软文件系统中的输入输出请求包格式。0015所述镜像驱动模块安装有网络小型计算机系统接口发起端模块,是用于根据客户端和服务器端的数据传输协议启动输入输出数据传输的模块。0016所述连续数据保护系统服务器安装有网络小型计算机系统接口接受端模块,是用于根据客户端和服务器端的数据传输协议接受镜像驱动模块网络小型计算机系统接口发起端模块传输的输入输出数据的模块。0017所述镜像驱动模块拥有一个写输入输出请求包的队列,通过异步方式将写输入输出请求包发送至连续数据保护系统服务器。0018一致点插入和恢复支持的卷级连续数据保护方法,包括以下步骤0019步骤1、一致点捕获驱动模块捕获文件级一致点操作信息;0。

15、020步骤2、将一致点信息封装至至少一个输入输出数据包中;0021步骤3、将包含一致点输入输出数据的输入输出数据包插入到正常的数据流中;0022步骤4、连续数据保护服务器区分普通的数据输入输出和包含一致点信息的输入输出,如果是普通数据输入输出则将数据存储至连续数据存储池,如果是包含一致点信息的输入输出数据则提取一致点信息并写入一致点信息文件。0023步骤5、判断是否需要恢复一致点,如果需要恢复则查找一致点索引文件,生成恢复时间列表,将用户期望时间点之前数据块进行合并并生成数据镜像发送到客户端,否则转至步骤1。0024所述步骤2一致点捕获驱动模块捕获文件级一致点操作信息具体包括以下步骤0025步。

16、骤1、等待上层写入输入输出请求包;0026步骤2、分析输入输出请求包操作类型,如果是一致点关心的输入输出请求包类型,则创建新的写输入输出请求包,并将一致点信息封装至新创建的写输入输出请求包,并说明书CN101964030ACN101964031A3/7页6将新创建的包含一致点信息的写输入输出请求包插入至镜像驱动模块的正常输入输出请求包数据流中;0027步骤3、转回继续等待新的输入输出请求包。0028所述步骤2中的将一致点信息封装至至少一个输入输出数据包中进一步包括以下步骤0029步骤1、创建至少一新的写类型输入输出请求包;0030步骤2、设置输入输出请求包中写逻辑卷为镜像卷,设置写逻辑卷偏移地。

17、址;0031步骤3、将一致点信息写入新创建的输入输出请求包的数据区。0032本发具有明显的优点和积极效果,具体包括1、本发明提出的一致点辅助决策方法无需定义许多系统事件,仅通过捕获特定类型的输入输出IO,INPUTANDOUTPUT就可插入一致的时间点。本发明能够捕获文件层的一致点操作,并能将一致点信息插入至正常的数据IO流中。本发明通过在文件系统之上插入一致点捕获驱动来捕获文件操作语义信息,然后将一致点信息封装成特殊的IRP发送给镜像驱动,亦即在普通的IO流中插入了一致点信息的IO块数据。2、本发明后台存储系统能够区分一致点IO和普通IO,并将一致点信息写入特定的文件中。在连续数据保护后台存。

18、储系统中区分普通的数据IO和一致点信息IO,如果是一致点信息IO则将一致点信息写入独立的文件中,该方法为连续数据保护系统的恢复提供了便捷和有效手段。3、本发明能够为连续数据保护一致性恢复提供辅助决策支持,通过用户自定义插入策略,本系统可以弱化为连续快照保护方法。4、满足不同粒度一致性要求,可提供不同粒度的一致点恢复支持。本发明可定制不同的捕获事件,可以提供弱一致、强一致和强制一致等3种手段,分别能满足单文件、目录和逻辑卷不同粒度一致性恢复的需要。5、通用性强。该设计方法在文件系统上层实现,通过捕获文件的关闭、刷新等关键事件,在正常的IO流中插入辅助一致点信息,为连续数据保护一致性恢复提供辅助手。

19、段,与上层应用无关,具有很强的通用性。附图说明0033图1为本发明的一致点插入和恢复支持的卷级连续数据保护系统结构图;0034图2为本发明一致点插入和恢复支持的卷级连续数据保护方法的主流程图;0035图3为本发明一致点捕获时刻示意图;0036图4为本发明一致点插入的封装流程图;0037图5为本发明一致点插入的存储流程图;0038图6为本发明的一致点输入输出请求包处理流程图;0039图7为本发明卷级连续数据保护恢复流程图。具体实施方式0040下面结合说明书附图来说明本发明的具体实施方式。0041参考图1,本发明的一致点插入和恢复支持的卷级连续数据保护系统包括以下模块0042应用程序层模块1,该模。

20、块为操作系统上实际运行的程序,它会对存储在磁盘上的数据进行读写操作。说明书CN101964030ACN101964031A4/7页70043一致点插入驱动模块2,该模块可根据用户的策略定义,对指定的目录夹和指定的文件类型进行一致性操作捕获,并将将一致点信息封装成特定的输入输出请求包IRP,IOREQUESTPACKAGE。0044文件系统模块3,为操作系统上的文件系统模块。本发明中采用视窗WINDOWS操作系统中的新技术文件系统NTFS,NEWTECHNOLOGYFILESYSTEM。文件系统模块主要实现了文件级逻辑地址到卷级逻辑地址的转换。如文件系统中1个写请求需要将8K字节内容从文件某偏移。

21、处写如入文件A。如果文件系统块大小为4K字节,则经过文件系统处理后,会产生2个写IRP发送给镜像驱动,每个IRP中指定了4K字节写入逻辑卷的偏移地址。0045镜像驱动模块4,卷级连续数据保护为了捕获所有的对保护磁盘的读写操作,加入了镜像驱动,其主要作用是将写入被保护磁盘的数据发送到至连续数据保护服务器。在镜像驱动模块4上有一个网络小型计算机系统接口发起端模块ISCSIINITIATOR,INTERNETSMALLCOMPUTERSYSTEMINTERFACEINITIATOR7,本发明采用ISCSI协议作为客户端和服务器端的数据传输协议,客户端安装了ISCSI发起端模块7ISCSIINITIA。

22、TOR。所有写入被保护磁盘的数据通过ISCSI协议发送至远程连续数据保护服务器。镜像驱动模块5维护一个写IRP的队列,通过异步方式将写IRP发送至连续数据保护后台模块的连续数据保护服务器上。一致点IRP只插入写往请给出中文含义连续数据保护服务器的IRP队列,对写入本地逻辑卷的IRP没有任何影响。0046本地逻辑卷模块5,该模块是被保护的逻辑卷模块,连续数据保护系统可以为该卷提供任意点的数据恢复。0047连续数据保护系统服务器6,该服务器上ISCSITARGET模块。该模块区分普通的IO数据和包含一致点信息的IO。如果是普通数据IO,则将数据存储至连续数据存储池,如果是包含一致点信息的IO数据,。

23、则提取一致点信息并写入一致点信息文件中。连续数据保护系统服务器6上安装了网络小型计算机系统接口接受端模块ISCSITARGET,INTERNETSMALLCOMPUTERSYSTEMINTERFACETARGET8,用于接受镜像驱动模块5的ISCSIINITIATOR模块7通过异步方式发送的写IRP。0048请参阅图2,本发明通过在文件系统上层和下层分别插入“一致点插入驱动”和“镜像驱动”来实现在正常的块级IO流中插入一致点信息。本发明的基于一致点插入和恢复的卷级连续数据保护方法包括以下步骤首先,启动应用程序层,应用程序层模块1开始对存储在磁盘上的文件系统模块3上的数据进行读写操作,一致点捕获。

24、驱动模块2根据指令对指定的目录夹和指定的文件类型进行一致性操作捕获,然后,将一致点信息封装成特定的输入输出请求IO数据包。镜像驱动模块4将包含一致点IO数据的IO数据包插入到正常的数据流中,并发送至连续数据保护服务器6。连续数据保护服务器6区分普通的数据IO和包含一致点信息的IO,如果是普通数据IO则将数据存储至连续数据存储池,如果是包含一致点信息的IO数据则提取一致点信息并写入一致点信息文件。之后,判断是否需要恢复一致点,如果需要则根据用户强一致点恢复或者弱一致点恢复选择查找一致点索引文件,生成恢复时间列表,返回给用户并等待用户选择其期望的时间点,然后根据用户选择的时间点,将该时间点之前的数。

25、据块进行合并,生成该时间点的数据镜像,并将数据发送到客户端进行数据恢复,否则应用程序层模块1继续对存储在磁盘上的文件系统模块3上的数据进行读写操作。说明书CN101964030ACN101964031A5/7页80049本发明的一致点捕获时机可根据用户策略定义。一致点捕获驱动捕获所有文件层的IRP,通过IRP中操作类型来决定一致点插入时机和一致点内容。IRP是WINDOWS内核中的一种非常重要的数据结构。上层应用程序与底层驱动程序通信时,应用程序会发出I/O请求,操作系统将相应的I/O请求转换成相应的IRP,不同的IRP会根据类型被分派到不同的派遣例程中进行处理。文件I/O的相关函数,例如创建。

26、文件CREATEFILE、读文件READFILE、写文件WRITEFILE、关闭文件句柄CLOSEHANDLE等分别会引发操作系统产生创建文件型IRPIRP_MJ_CREATE、读文件型IRPIRP_MJ_READ、写文件型IRPIRP_MJ_WRITE、关闭文件型IRPIRP_MJ_CLOSE等不同类型的IRP,这些IRP会被传送到驱动程序的相应派遣例程中进行处理。0050请参阅图3,本发明处理的一致点IRP分为3类,捕获时机说明示意见图300511、弱一致检查点IRPCHECKPOINTIRP。在单个文件关闭、删除和重命名等操作时写入,一致性的支持粒度为文件。弱一致CHECKPOINTIR。

27、P通过分析IRP_MJ_CLOSE和设为文件信息型IRPIRP_SET_INFORMATION两种类型的IRP产生。上层应用在关闭文件句柄时调用系统调用CLOSEHANDLE方法,CLOSEHANDLE向文件系统发送IRP_MJ_CLOSE类型的IRP。一致点插入驱动通过分析IRP_MJ_CLOSE类型IRP中关联的文件信息判断是用户感兴趣的文件类型或文件保护目录,如果是则插入一个封装弱一致IRP后随同上层IRP_MJ_CLOSE类型的IRP发往文件系统。对IRP_SET_INFORMATION类的IRP,一致点捕获驱动只对次功能类型为删除、重命名和修改属性的IRP产生弱一致CHECKPOIN。

28、TIRP,而对次功能类型为剪切和修改文件指针的操作不产生弱一致CHECKPOINTIRP。本发明处理的IRP类型见表1。0052表1一致点CHECKPOINTIRP类型0053操作来源上层调用捕获IRP_MJ_CREATE创建、打开文件CREATEFILE一致点捕获驱动处理IRP_MJ_CLEANUP在关闭句柄时取消悬挂的IRPCLOSEHANDLE不处理IRP_MJ_CLOSE关闭文件句柄CLOSEHANDLE一致点捕获驱动处理IRP_SET_INFORMATION删除、重命名、修改属性、剪切、修改文件指针。SETFILELENGTH一致点捕获驱动部分处理IRP_MJ_WRITE写入数据WR。

29、ITEFILE镜像驱动处理IRP_MJ_FLUSH_BUFFERS写输出缓冲区或丢弃输入缓冲区FLUSHFILEBUFFERS不处理说明书CN101964030ACN101964031A6/7页900542、强一致CHECKPOINTIRP。在被保护的目录所有打开的文件都关闭时写入,一致性支持粒度为目录。弱一致CHECKPOINTIRP指示了文件的一致点,而强一致CHECKPOINTIRP则指示了目录的一致点。强一致CHECKPOINTIRP通过计数器实现。对用户指定的被保护目录,上层应用打开目录下的文件时会往文件系统发送IRP_MJ_CREATE类型的IRP。与该目录关联的计数器加1,在关闭。

30、某个文件时计数器减1。如果计数器为零,则表明该目录下所有打开的文件全部关闭。此时,一致点捕获驱动插入一个封装强一致信息的CHECKPOINTIRP00553、强制一致CHECKPOINTIRP。按用户定义的策略强制性写入,一致性支持粒度为逻辑卷。强制一致CHECKPOINTIRP则根据用户预先定义的策略生成。例如,用户要求1小时生成一个强制一致视图,则系统每1小时插入一个强制一致CHECKPOINTIRP。系统插入强制一致CHECKPOINTIRP时调用操作系统的FLUSH命令强制将文件系统中的缓存数据刷新到磁盘上。通过插入强制一致CHECKPOINTIRP,系统只能提供崩溃一致性CRASHC。

31、ONSISTENCY级别的数据一致性保证,而不能提供类似于WINDOWS卷影复制服务提供的应用级一致性APPLICATIONLEVELCONSISTENCY的快照视图。0056一致点捕获驱动根据IRP类型捕获一致点信息具体包括以下步骤。首先等待上层写入IRP,然后分析IRP操作类型,如果是一致点关心的IRP类型,则创建新的写IRP,并将一致点信息封装至新创建的写IRP,并将新创建的包含一致点信息的写IRP插入镜像驱动的正常的IRP数据流中,否则将原始IRP发送至文件系统,最后转回继续等待新的IRP。0057本发明设计的一致点IRP设计为写类型的IRP,写地址为逻辑卷的0X1CE处,即写到主引导。

32、扇区MBR的第2个磁盘分区表处。一个MBR记录包含4个磁盘分区信息。由于连续数据保护系统服务器通过一个逻辑单元号LUN,LOGICALUNITNUMBER和本地被保护的逻辑卷进行镜像。在实际使用中,连续数据保护系统的一个LUN只用了第一个分区,因此连续数据保护系统服务器镜像LUN的MBR的第24个分区的信息没有实际意义。1个分区记录包含16个字节,因此本系统中可用MBR的3个空闲分区信息,共计48个字节来传送和表达一致点的信息0058请参阅图4。一致点捕获驱动模块2将一致点封装至包含一致点信息的IRP中,具体包括以下步骤首先,创建一新的写类型IRP,然后,设置IRP中写逻辑卷为镜像卷,接下来,。

33、设置写逻辑卷偏移地址为0X1CE,并将一致点信息写入新创建的IRP的数据区,最后结束。0059请参阅图5和图6,连续数据保护服务器模块6在接受到前端7发送的IRP时需要区分正常的数据IO和一致点数据IO,具体包括以下步骤。首先,分析是普通写IRP,还是一致点IRP,如果是普通写操作IRP,则提取写地址偏移和写内容,结合服务器当前时间封装成最小日志单元格式,并转移至缓存等候处理;如果是一致点IRP,则先对缓存中等候写入的最小日志单元进行去除重复写处理,即在两个一致点时间间隔内重复写往同一地址的数据只保留最后一份,之后启动将缓存数据写入日志,写入成功后将一致点信息写入特定的一致点索引文件。0060。

34、一致点IRP到达是缓存数据写入日志的触发条件,但不是充分条件。本发明引入了3种写触发条件基于时间的触发、基于缓存空间的触发和一致点IRP触发。为安全起见,当缓存数据在内存中滞留时间,或缓存使用率到达预设的阈值后也触发写日志事件。说明书CN101964030ACN101964031A7/7页100061请参阅图7,在用户恢复时,本发明为用户提供了一致点恢复支持,具体包括以下步骤。首先,用户选择恢复种类,是强一致点的恢复或者弱一致点恢复。然后,根据用户的选择,查找一致点索引文件,生成恢复的时间列表返回给用户,等待用户选择其期望的时间点。之后,根据用户选择的时间点,将该时间点之前的数据块进行合并,生。

35、成该时间点的数据镜像。最后,将数据发送到客户端进行数据恢复。0062以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。说明书CN101964030ACN101964031A1/5页11图1说明书附图CN101964030ACN101964031A2/5页12图2说明书附图CN101964030ACN101964031A3/5页13图3图4图5说明书附图CN101964030ACN101964031A4/5页14图6说明书附图CN101964030ACN101964031A5/5页15图7说明书附图CN101964030A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1