书签 分享 收藏 举报 版权申诉 / 32

存储系统及其控制方法.pdf

  • 上传人:b***
  • 文档编号:714841
  • 上传时间:2018-03-07
  • 格式:PDF
  • 页数:32
  • 大小:1.65MB
  • 摘要
    申请专利号:

    CN03164885.1

    申请日:

    2003.09.18

    公开号:

    CN1495619A

    公开日:

    2004.05.12

    当前法律状态:

    终止

    有效性:

    无权

    法律详情:

    未缴年费专利权终止 IPC(主分类):G06F 12/08申请日:20030918授权公告日:20060906终止日期:20140918|||授权|||实质审查的生效|||公开

    IPC分类号:

    G06F12/08; G06F13/00

    主分类号:

    G06F12/08; G06F13/00

    申请人:

    株式会社日立制作所;

    发明人:

    印南雅隆; 岛田朗伸; 田渕英夫; 中野俊夫

    地址:

    日本东京都

    优先权:

    2002.09.18 JP 271595/2002

    专利代理机构:

    中国专利代理(香港)有限公司

    代理人:

    程天正;王勇

    PDF完整版下载: PDF下载
    内容摘要

    公开了用于控制如下存储系统的方法,该存储系统包括主计算机、可通信地连接到主计算机的第一存储控制器,用于接收从主计算机传送的数据帧,并响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第一存储设备和从该第一存储设备输出数据,以及可通信地连接到第一存储控制器的第二存储控制器,包括在接收到从主计算机传送的数据帧后,响应在数据帧中描述的信息,由第一存储控制器将数据帧中继到第二存储控制器。

    权利要求书

    1: 一种用于控制存储系统的方法,包括: 主计算机; 可通信地连接到所述主计算机的第一存储控制器,用于接收从所述主 计算机传送的数据帧,以及响应在所述数据帧中描述的数据输入/输出请求, 执行将数据输入到第一存储设备和从第一存储设备输出数据;以及 可通信地连接到所述第一存储控制器的第二存储控制器,包括: 当接收到从所述主计算机传送的所述数据帧时,响应在所述数据帧中 描述的信息,由所述第一存储控制器将所述数据帧中继到所述第二存储控制 器。
    2: 如权利要求1所述的用于控制存储系统的方法,包括,由所述第二 存储控制器接收从所述主计算机传送到所述第一存储控制器并由所述第一 存储控制器中继的数据帧,并响应在所述数据帧中描述的所述数据输入/输 出请求,执行将数据输入到第二存储设备和从第二存储设备输出数据。
    3: 如权利要求1所述的用于控制存储系统的方法,其特征在于,所述 数据帧是符合光纤信道协议的数据帧,并且其中,所述中继是由包括在所述 第一存储控制器中的光纤信道开关实施的。
    4: 如权利要求3所述的用于控制存储系统的方法,其特征在于,所述 信息是下述的至少一个: 用于指定所述数据帧的来源的光纤信道端口的信息; 用于指定所述数据帧的目的地的光纤信道端口的信息;以及 用于指定所述存储设备的信息。
    5: 如权利要求3所述的用于控制存储系统的方法,其特征在于,所述 数据帧包括在其中作为所述信息加以描述的如下的至少一个: 用于指定所述数据帧的来源的光纤信道端口的信息; 用于指定所述数据帧的目的地的光纤信道端口的信息;以及 用于指定所述存储设备的信息,以及其中 所述第一存储控制器存储如下的存取限制信息,所述存储限制信息用 于表示来源的光纤信道端口对目的地的所述光纤信道端口或目的地的所述 存储设备进行存取的允许/拒绝,包括: 当由所述第一存储控制器从所述主计算机接收所述数据帧时,查阅所 述存取限制信息,以便检查是否允许所述数据帧的来源的所述光纤信道端口 对目的地的所述光纤信道端口或目的地的所述存储设备进行存取;以及 仅当允许所述存取时,由所述第一存储控制器将所述数据帧中继到所 述第二存储控制器。
    6: 如权利要求4所述的用于控制存储系统的方法,其特征在于, 所述数据帧包括在其中作为信息加以描述的如下信息: 用于指定所述数据帧的来源的光纤信道端口的信息; 用于指定所述数据帧的目的地的光纤信道端口的信息;以及其中 所述第一存储控制器通过与来源的光纤信道端口和目的地的光纤信道 端口的组合相关联,存储表示对应于所述数据帧的数据输入/输出过程的优 先级的信息,包括: 当由所述第一存储控制器从所述主计算机接收所述数据帧时,依照表 示所述优先级的信息,针对连接到所述数据帧的目的地的所述端口的所述存 储设备,执行数据输入/输出过程。
    7: 如权利要求6所述的用于控制存储系统的方法,其特征在于,表示 优先级的所述信息是表示针对所述存储设备执行数据输入/输出过程的定时 信息。
    8: 如权利要求4所述的用于控制存储系统的方法,其特征在于,用于 指定所述存储设备的所述信息是给予如下的逻辑存储区的标识符,所述逻辑 存储区在由所述存储设备提供的存储区中按区加以组织。
    9: 如权利要求8所述的用于控制存储系统的方法,其特征在于,所述 存储设备是磁盘驱动器。
    10: 一种存储系统,包括: 第一存储设备;以及 可通信地连接到主计算机的第一存储控制器,用于接收从所述主计算 机传送的数据帧,并响应在所述数据帧中描述的数据输入/输出请求,执行 将数据输入到第一存储设备和从第一存储设备输出数据; 其中所述第一存储控制器包括中继设备,当从所述主计算机传送的数 据帧是允许被中继到第二存储控制器的数据帧时,将从所述主计算机传送的 数据帧中继到所述第二存储控制器。
    11: 如权利要求10所述的存储系统,其特征在于, 所述第一存储控制器进一步包括处理器,用于查阅在从所述主计算机 传送的所述数据帧中描述的信息,并判断从所述主计算机传送的所述数据帧 是否是允许被中继到所述第二存储控制器的数据帧。
    12: 如权利要求11所述的存储系统,其特征在于,当从所述主计算机 传送的所述数据帧是不允许被中继到所述第二存储控制器的数据帧时,所述 处理器将从所述主计算机传送的所述数据帧传送到在所述第一存储控制器 中的另一处理器。
    13: 如权利要求10所述的存储系统,其特征在于, 所述第一存储控制器进一步包括存储器,用于存储被允许中继到所述 第二存储控制器的数据帧上的信息。
    14: 如权利要求13所述的存储系统,其特征在于, 所述第一存储控制器进一步包括处理器,用于查阅在从所述主计算机 传送的所述数据帧中描述的信息和在所述存储器中存储的信息,并判断从所 述主计算机传送的所述数据帧是否是允许被中继到所述第二存储控制器的 数据帧。
    15: 如权利要求14所述的存储系统,其特征在于, 当从所述主计算机传送的所述数据帧是不允许被中继到所述第二存储 控制器的数据帧时,所述处理器将从所述主计算机传送的所述数据帧传送到 在所述第一存储控制器中的另一处理器。
    16: 如权利要求10所述的存储系统,其特征在于,所述数据帧是符合 光纤信道协议的数据帧。
    17: 如权利要求10所述的存储系统,其特征在于,所述中继装置是光 纤信道开关。
    18: 如权利要求11所述的存储系统,其特征在于,在所述数据帧中描 述的所述信息包括以下任何一个: 用于指定所述数据帧的来源的光纤信道端口的信息; 用于指定所述数据帧的目的地的光纤信道端口的信息;以及 用于指定所述第一存储设备的信息。
    19: 如权利要求16所述的存储系统,其特征在于, 所述处理器检查从所述主计算机传送的所述数据帧是否被允许对目的 地的所述光纤信道端口或目的地的所述第一存储设备进行存取。
    20: 一种存储控制器,包括: 可通信地连接到主计算机的装置,用于接收从所述主计算机传送的数 据帧,以及响应在所述数据帧中描述的数据输入/输出请求,执行将数据输 入到第一存储设备和从第一存储设备输出数据; 可通信地连接到另一存储控制器的装置,用于接收数据帧,以及响应 在所述数据帧中描述的数据输入/输出请求,执行将数据输入到第二存储设 备和从第二存储设备输出数据; 用于在接收从所述主计算机传送的数据帧时,响应在所述数据帧中描 述的信息,将所述数据帧中继到所述另一存储控制器的装置, 其特征在于,所述数据帧是符合光纤信道协议的数据帧,所述中继由 包括在所述第一存储控制器中的光纤信道开关加以实施, 其中所述信息是下述的至少一个: 用于指定所述数据帧的来源的光纤信道端口的信息; 用于指定所述数据帧的目的地的光纤信道端口的信息;以及 用于指定所述存储设备的信息;以及其中 所述数据帧包括在其中作为信息加以描述的如下信息: 用于指定所述数据帧的来源的光纤信道端口的信息;和 用于指定所述数据帧的目的地的光纤信道端口的信息; 用于通过与来源的所述光纤信道端口和目的地的所述光纤信道端口的 组合相关联,存储表示对应于所述数据帧的数据输入/输出过程的优先级的 信息的装置;以及 用于在接收从所述主计算机传送的数据帧时,根据表示优先级的所述 信息,针对连接到所述数据帧的目的地的端口的所述存储设备执行数据输入 /输出过程的装置。

    说明书


    存储系统及其控制方法

        【技术领域】

        本发明涉及用于控制存储系统的方法、存储控制器和存储系统。

        背景技术

        本申请要求2002年9月18日在日本提交的日本专利申请No.2002-271595的优先权,在此将其引入以供参考。

        信息系统周围的环境正快速变化,诸如IT技术的进展,并且正转向宽带。伴随而来的是,迫切地需要相对于所处理的数据量的快速增加的措施。因此,正使在数据中心操作的存储系统快速转向较大容量和较高性能的存储控制器,诸如礠盘阵列装置。

        为增加存储区,例如,可另外提供磁盘阵列装置。然而,相应地,随着所安装的磁盘阵列装置的数量增加,也不可避免地增加主计算机端的管理负荷,这可能影响在主计算机端上的应用程序的运行。此外,用于有效地管理巨量存储区(huge storage area)而尽可能不让用户知道硬件配置地技术,即所谓的“虚拟化”正在发展中。然而,虚拟化会导致主计算机端上的处理负荷增加。

        鉴于这些情况,预计对用于降低主计算机端的处理负荷的技术的需要将变得越来越大。因此,正在探索确保更大容量和更高性能的存储控制器而不增加主计算机端的处理负荷的技术。

        【发明内容】

        基于上述问题构想了本发明,并且本发明的一个目的是提供用于控制存储系统的方法、存储控制器和存储系统。

        根据本发明的一个方面实现上述和其他目的存储系统包括主计算机;可通信地连接到主计算机上的第一存储控制器,用于接收从主计算机传送的数据帧以及响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第一存储设备和执行从第一存储设备输出数据;以及可通信地连接到第一存储控制器的第二存储控制器,用于接收从主计算机传送到第一存储控制器并由第一存储控制器中继的数据帧以及响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第二存储设备和执行从第二存储设备输出数据,其中当第一存储控制器接收从主计算机传送的数据帧时,第一存储控制器响应在数据帧内描述的信息,将数据帧中继到第二存储控制器。

        根据本发明,能提供用于控制存储系统的方法、存储控制器和存储系统。

        通过参考附图阅读本说明书的描述,除上述以外的本发明的特征和目的将变得清楚明白。

        【附图说明】

        为更全面地理解本发明及其优点,现在参考结合附图的下面的描述,其中:

        图1示例说明根据本发明的一个实施例的存储系统的配置;

        图2示例说明根据本发明的一个实施例的在光纤信道上的数据帧的结构;

        图3示例说明根据本发明的一个实施例的帧首部的结构;

        图4示例说明根据本发明的一个实施例的FCP_CMND的结构;

        图5是示例说明当将数据帧从主计算机传送到第一存储控制器时,根据本发明的一个实施例的存储系统的操作的流程图;

        图6表示根据本发明的一个实施例的LUN管理表;

        图7表示根据本发明的一个实施例的存取限制管理表;

        图8是示例说明根据本发明的一个实施例的存取限制功能的流程图;

        图9表示根据本发明的一个实施例的优先级管理表;

        图10是示例说明根据本发明的一个实施例的优先级管理功能的流程图;

        图11表示根据本发明的一个实施例的一对管理表;以及

        图12是示例说明当传送在其中描述对主逻辑卷(logic volume)的数据写请求的数据帧时,根据本发明的一个实施例的存储系统的处理的流程图。

        【具体实施方式】

        通过本说明书中的解释和附图的描述,将使至少下述主题变得清楚。

        [公开内容]

        用于控制存储系统的方法,存储系统包括主计算机;可通信地连接到主计算机的第一存储控制器,用于接收从主计算机传送的数据帧以及响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第一存储设备以及执行从第一存储设备输出数据;以及可通信地连接到第一存储控制器的第二存储控制器,用于接收从主计算机传送到第一存储控制器以及由第一存储控制器中继的数据帧,并响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第二存储设备以及执行从第二存储设备输出数据,其中当第一存储控制器接收从主计算机传送的数据帧时,第一存储控制器响应在数据帧中描述的信息,将该数据帧中继到第二存储控制器。

        在该方法中,第二存储控制器连接到第一存储控制器,以便使从主计算机传送的数据帧暂时由第一存储控制器接收并响应在该数据帧中描述的信息,由第一存储控制器将该数据帧传送到第二存储控制器。在这种配置中,主计算机不加区别地将数据帧传送到第一存储控制器,而不管主计算机将传送的数据帧指向第一存储控制器还是指向第二存储控制器。因此与主计算机执行和第二存储控制器的直接通信的方案相比,主计算机在传送数据帧时,不需要直接与第二存储控制器通信,并且能够把主计算机中的处理负荷减少由于直接通信所产生的量。

        通过例如在第一存储控制器上运行的程序,能够实现在已经接收到从主计算机传送的数据帧时,响应在数据帧中描述的信息,将数据帧中继到第二存储控制器的功能。

        数据帧是例如符合光纤信道协议的数据帧。通过包括在第一存储控制器内的光纤信道开关执行所述中继。

        信息是用于指定数据帧的来源的光纤信道端口的信息、用于指定数据帧的目的地的光纤信道端口的信息以及用于指定存储设备的信息中的至少一个。在它们之中,用于指定来源的光纤信道端口的信息是例如以后所述的Source_ID。用于指定目的地的光纤信道端口的信息是例如以后所述的Destination_ID。用于指定存储设备的信息是例如以后所述的FCP_LUN。

        存储设备是例如在由磁盘驱动器提供的存储区或由磁盘驱动器提供的物理存储区上的按区组织的逻辑卷。

        在该方法中,第一存储控制器更确切地讲是充当如下的网络开关,该网络开关亲自接收从主计算机传送的数据帧,或将数据帧中继到第二存储控制器。然后,因为第一存储控制器充当网络开关,所以能容易提供所应用的如下操作,在该操作下第一存储控制器所具有的信息和功能与作为网络开关的功能组合在一起。因此,能容易提供诸如以后所述的存取限制功能、优先级控制、数据的双重管理等功能。不限于这些功能,还能容易实现通过组合象网络开关的功能和第一存储控制器作为存储控制器最初所具有的功能而获得的各种功能。

        此外,当将虚拟化技术应用于存储系统时,将多个存储设备作为一个设备单一虚拟地加以管理和/或并入管理/操作功能,诸如远程拷贝和数据拷贝管理。通过提供这些功能,对主计算机端上的资源消耗和处理速率的影响是不可避免的。然而,通过使得提供如下功能可行,所述功能是通过将第一存储控制器作为存储控制器最初所具有的功能与通过给第一存储控制器提供与如以上所述的网络开关的功能一样的功能而具有的与网络开关一样的功能组合起来所形成的功能,而将最初包括在主计算机中的功能提供到第一存储控制器端,以便最小化主计算机端上的资源消耗和处理负荷以及提供支持虚拟化的系统是可能的。

        此外,当将通用开关诸如光纤信道开关用作网络开关时,可将第一存储控制器和第二存储控制器容易地的连接在一起,即使那些存储控制器是不同型号或来自不同制造商的。因此,能容易地配置存储系统并且能够对资源诸如现有的或过时的存储控制器进行充分的利用。另外,在(i)基本操作、(ii)存取限制功能、(iii)优先级控制、(iv)数据拷贝管理的实施例中,通过将配备这些功能的一个存储控制器连接到没有配备这些功能的多个存储控制器,能够进行对多个存储控制器的充分利用。

        在数据帧中,描述了作为信息的、用于指定数据帧的来源的光纤信道端口的信息、用于指定数据帧的目的地的光纤信道端口的信息以及用于指定存储设备的信息的至少一个。第一存储控制器存储存取限制信息,其表示允许或不允许来源的光纤信道端口对目的地的光纤信道端口或存储设备进行存取。因此,可以安排在第一存储控制器从主计算机接收数据帧时,第一存储控制器查阅存取限制信息,以便检查是否允许数据帧的来源的光纤信道端口存取目的地的光纤信道端口或目的地的存储设备,以及仅当允许所述存取时,第一存储控制器才将数据帧中继到第二存储控制器。

        用这种方式,第一存储控制器基于存取限制信息判断第一存储控制器是否应当将数据帧传送到第二存储控制器,并且因此,第一存储控制器代替第二存储控制器的角色,执行有关指向第二存储控制器的数据帧的存取限制的过程。因此,仅在第一存储控制器上实现用于处理存取限制的功能就足够了,并且能够从维护负荷中减少由于将这种机制提供到第二存储控制器所产生的量。通过例如在第一存储控制器上运行的程序,实现与存取限制有关的第一存储控制器的功能。

        由于不需要给第二存储控制器提供存取限制功能,所以能将具有比第一存储控制器更低的性能的存储控制器用作第二存储控制器,并且因此,能降低引入成本(introduction cost)和操作成本。而且,与新引入的存储控制器相比,具有较低性能的旧类型的存储控制器完全能被用作第二存储控制器。此外,仅将存取限制管理表存储在第一存储控制器中就足够了,因此,进一步降低由统一管理产生的维护负荷。

        可以按照如下安排:在数据帧中,描述了作为信息的、用于指定数据帧的来源的光纤信道端口的信息以及用于指定数据帧的目的地的光纤信道端口的信息;第一存储控制器存储通过与来源的光纤信道端口和目的地的光纤信道端口的组合相关联,存储表示对应于所述数据帧的数据输入/输出过程的优先级的信息;当第一存储控制器从主计算机接收数据帧时,该装置根据表示优先级的信息执行将数据输入到如下的存储设备和从该存储设备输出数据,所述存储设备被连接到数据帧的目的地的端口。表示优先级的信息例如是,表示用于执行将数据输入到存储设备和从该存储设备输出数据的定时信息,更具体地说,表示稍后将描述的延迟时间的信息。

        在该机制中,可以认为第一存储控制器代替第二存储控制器的角色,执行优先级控制功能。即,通过仅在第一存储控制器上实现优先级控制功能,还可以执行对指向第二存储控制器的数据帧的优先级控制,并能够从施加到第二存储控制器上的操作负荷中减少由于提供这种机制而产生的量。

        与优先级控制有关的第一存储控制器的功能通过例如在第一存储控制器上运行的程序加以实现。

        因为不需要给第二存储控制器提供优先级控制功能,所以能将具有比第一存储控制器更低处理性能的存储控制器用作第二存储控制器,并且因此,能降低引入成本和操作成本。此外,与新引入的存储控制器相比,具有更低性能的旧类型的存储控制器完全能用作第二存储控制器。此外,仅将优先级管理表存储在第一存储控制器中就足够了,从而达到降低用于统一管理的维护负荷。

        一种用于控制存储系统的方法,该存储系统包括主计算机;可通信地连接到主计算机的第一存储控制器,用于接收从主计算机传送的数据帧,并响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第一存储设备和从该存储设备输出数据;以及可通信地连接到第一存储控制器的第二存储控制器,用于接收从主计算机传送到第一存储控制器以及由第一存储控制器中继的数据帧,并响应在数据帧中描述的数据输入/输出请求,执行将数据输入到第二存储设备并执行从该存储设备输出数据,其中第一存储控制器,将存储在作为受第一存储控制器影响的数据输入/输出的对象的第一存储设备中的数据拷贝,存储到也作为受第二存储控制器影响的数据输入/输出的对象的第二存储设备中,数据帧具有在此描述的用于指定连接到数据帧的目的地的第一存储设备或第二存储设备的光纤信道端口的信息,以及用于指定存储设备的信息,其中,当第一存储控制器接收在其中描述对第一存储设备的数据写请求的数据帧时,第一存储控制器执行将那个数据帧上的数据写到第一存储设备,同时,第一存储控制器创建如下的数据帧,在该数据帧中,重写用于指定光纤信道端口的信息和用于指定在数据帧中描述的存储设备的信息以便使得对象是第二存储设备,第一存储控制器将所创建的数据帧传送到第二存储控制器,以及其中第二存储控制器接收数据帧以及执行将在那个数据帧上的数据写到第二存储设备上,以便将存储在第一存储设备中的数据的拷贝存储到也作为受第二存储控制器影响的数据输入/输出的对象的第二存储设备中。

        根据该方法,通过仅在第一存储控制器中提供如上所述的创建数据帧的机制,很容易实现用于将存储在第一存储设备中的数据同样存储到第二存储设备中的数据拷贝管理的机制。

        应注意,通过例如运行在第一存储控制器上的程序,实现与数据拷贝管理有关的第一存储控制器的功能。

        [存储系统的配置]

        如本发明的实施例描述的存储装置系统(存储系统)的配置如图1所示。在例如数据中心中操作存储系统。通过符合光纤信道协议的第一通信装置40连接主计算机5和第一存储控制器10。主计算机5是诸如个人计算机、工作站和通用计算机之类的计算机。通过符合光纤信道协议的第二通信装置50连接第一存储控制器10和第二存储控制器20。

        第一存储控制器10包括开关控制单元11以及存储设备控制单元12。通过诸如内部总线之类的内部通信路径13,连接开关控制单元11和存储设备控制单元12。

        开关控制单元11包括开关设备111、微处理器112和诸如ROM、RAM等等之类的控制存储器113。开关设备111被提供作为光纤信道开关(以下称为“FC开关”)的功能并具有预定数目的光纤信道端口。开关设备111接收从主计算机5传送的数据帧并将该数据帧中继到存储设备控制单元12或第二存储控制器20。另外,开关设备111还接收从存储设备控制单元12或第二存储控制器20传送的数据帧并将该数据帧中继到主计算机5。微处理器112提供开关控制单元11的各种功能。另外,微处理器112控制包含在开关控制单元11中的各种部件。此外,微处理器112控制在开关设备111实施的数据帧的传送/接收。控制存储器113被用来作为例如用于由微处理器112执行的过程的工作存储器,或用于各种数据诸如表或变量的存储区。

        存储设备控制单元12接收通过内部通信路径13传送的数据帧,并响应在该数据帧中描述的数据输入/输出请求,执行将数据输入到磁盘驱动器14和从该磁盘驱动器14输出数据。数据输入/输出过程包括数据写请求和数据读出请求。在下述描述中,数据输入和输出包括在其中包括数据写请求或数据读出请求,以及在其中既包括数据写请求又包括数据读出请求的情形。

        微处理器121提供存储设备控制单元12的各种功能,以及控制在存储设备控制单元12等等中包括的各种部件。存储控制器123被用来作为例如用于由微处理器121执行的过程的工作存储器和用于诸如表和变量的各种数据的存储区。高速缓存器124用作例如用于被输入到磁盘驱动器14的数据/从该磁盘驱动器14输出的数据的临时存储装置。驱动控制器125执行到磁盘驱动器14的数据输入/输出过程。驱动控制器125可操作在RAID(廉价磁盘冗余阵列)方案中的磁盘驱动器14。驱动控制器125管理通过将由磁盘驱动器14提供的物理存储区划分成在该物理存储区上组织的逻辑存储区的逻辑卷来管理它。将称为LUN(逻辑单元号)的特定标识符分别指定给每个逻辑卷。当已经指定LUN时,一个或多个磁盘驱动器14就被标识。此外,将至少一个或多个逻辑卷与一个光纤信道端口关联,以及通过指定一个光纤信道端口,标识与其相关的所有逻辑卷。能够将磁盘驱动器14保持在与第一存储控制器10相同的外壳中,或将其保持在不同于第一存储控制器10的外壳中。

        第二存储控制器20包括开关装置201、微处理器202、控制存储器203、高速缓存器204、磁盘控制器205和磁盘驱动器21。开关设备201被提供作为具有多个光纤信道端口的光纤信道开关(下文称为“FC开关”)的功能,而第二通信装置50连接到所述光纤信道端口上。

        微处理器202提供第二存储控制器20的各种功能以及控制包含在第二存储控制器20等等中的各种部件。控制存储器203被用来作为例如用于由微处理器202执行的过程的工作存储器、或用于各种数据诸如表和变量的存储区。高速缓存器204用作例如用于被输入到磁盘驱动器21的数据/被从该磁盘驱动器21输出的数据的临时存储装置。驱动控制器205执行到磁盘驱动器21的数据输入/输出过程。

        驱动控制器可操作在RAID(廉价磁盘冗余阵列)方案中的磁盘驱动器21。驱动控制器205通过将由磁盘驱动器21提供的物理存储区划分成在该物理存储区上组织的逻辑存储区的逻辑卷来管理它。将称为LUN(逻辑单元号)的特定标识符分别指定给每个逻辑卷。当已经指定LUN时,一个或多个磁盘驱动器21被标识。

        能将磁盘驱动器21保持在与第二存储控制器20相同的外壳中,或保持在不同于第二存储控制器20的外壳中。

        [数据帧]

        接着,将描述符合光纤信道协议的、在主计算机5、第一存储控制器10和第二存储控制器20间传送和接收的数据帧的结构。在例如由FiberChannel Technical Association,Ronsa-sha等等编著的“TechnicalInstruction on Fiber Channel”中描述了光纤信道协议和符合它的数据帧的详细情况。

        在图2中示例说明了光纤信道上的数据帧70的结构。在数据帧70的开头,放置四字节的SOF(帧的起始)(71),在SOF之后,提供24字节的帧首部(72)、2112字节的数据字段(73)和四字节的CRC(循环冗余校验)(74)。在数据帧的尾部,放置四字节的EOF(75)。

        图2所示的24字节的帧首部(72)的结构如图3所示。Destination_ID(81)是数据帧的目的地的光纤信道端口的标识符,以及在其中描述N_Port_ID、N_Port_Name或等等。Source_ID(82)是数据帧的来源的光纤信道端口的标识符,在其中描述N_Port_ID、N_Port_Name或等等。

        在图4中示例说明作为如图2所示的数据字段的有效载荷之一的FCP_CMND(对应SCSI命令的光纤信道协议)的结构。在FCP_LUN(FCP逻辑单元号)(91)中,将有效载荷中描述的SCSI命令所针对的逻辑卷的LUN加以应用。在FCP_CNTL(FCP控制)(92)中,描述命令控制参数。在FCP_CDB(FCP命令描述块)(93)中,描述SCSI命令CDB(命令数据块)。在FCP_DL(FCP数据长度)(94)中,描述了能在发起者和目标间转换的数据大小的上限。

        [基本操作]

        接着,将参考图5所示的流程图,描述在将数据帧从主计算机5传送到第一存储控制器10时的存储系统的操作。

        首先,通过第一通信装置40(S511),将数据帧从主计算机5到第一存储控制器10的开关设备111的光纤信道端口。当第一存储控制器10的开关设备111接收数据帧(S512)时,开关设备111将中断请求传送到微处理器112(S513)。当微处理器112接收该中断请求时,微处理器112将所接收的数据帧的Destination_ID(81)、Source_ID(82)和FCP_LUN(91)的内容存储在控制存储器113中(S514)。

        在第一存储控制器10的控制存储器113中,存储如图6所示的LUN管理表,在该表中,描述了FCP_LUN(91)是指向第一存储控制器10的逻辑还是第二存储控制器20的逻辑卷。微处理器112通过使存储在存储控制器113中的数据帧的FCP_LUN(91)指向LUN管理表,来检查该数据帧是指向第一存储控制器的逻辑卷还是第二存储控制器的逻辑卷(S515)。

        现在,如果该数据帧是指向第一存储控制器10的逻辑卷的,第一存储控制器10通过内部通信路径13将该数据帧传送到存储设备控制单元12(S516)。当存储设备控制单元12接收该数据帧时,存储设备控制单元12针对从数据帧的FCP_LUN(91)的内容所标识的逻辑卷执行数据输入和输出,所述数据输入和输出对应在数据帧中描述的SCSI命令(S517)。在执行数据输入/输出过程后,当必要时,第一存储控制器10将在其中描述了所述过程的结果和从逻辑卷读出的数据等等的数据帧传送到开关控制单元10(S518)。然后,当开关设备111接收该数据帧时,它将该数据帧传送到主计算机5(S519)。

        另一方面,在(S515),如果从主计算机5接收的数据帧指向第二存储控制器20的逻辑卷,微处理器112控制开关设备111以便使得开关设备111将数据帧中继到第二存储控制器20(S520)。当第二存储控制器20接收数据帧(S521)时,它针对从数据帧的FCP_LUN(91)的内容所标识的逻辑卷执行数据输入和输出,所述数据输入和输出对应在该数据帧中描述的SCSI命令(S522)。

        在执行数据输入/输出过程后,当必要时,第二存储控制器20通过第二通信装置,将在其中描述了完成报告、所述过程的结果或从该逻辑卷读出的数据的数据帧传送到第一存储控制器10(S523)。在数据帧的Destination_ID(81)中,描述用于指定主计算机5的光纤信道端口的信息。当第一存储控制器10的开关设备111接收数据帧(S524)时,它将该数据帧中继到主计算机5(S525)。

        如上所述,在开关控制单元11判断从主计算机5传送的并且输入到第一存储控制器10的开关设备111的数据帧是指向第一存储控制器10还是第二存储控制器20,以及如果它指向第二存储控制器20,将该数据帧从开关设备111中继到第二存储控制器20。换句话说,第一存储控制器10代替第二存储控制器20的角色接收主计算机5最初指向第二存储控制器20的数据帧。

        此外,通过由第一存储控制器10代替第二存储控制器20的角色接收数据帧,主计算机5仅需要与第一存储控制器10通信,从而将主计算机5的处理负荷减少由于在主计算机5和第二存储控制器20间通信所产生的量。

        此外,通过管理在第一存储控制器10统一的LUN管理表,能统一地管理第一存储控制器10和第二存储控制器20的逻辑卷,并且因此,能降低施用在工作诸如由操作员等等更新LUN管理表上的维护负荷。尤其在操作同时可视化的磁盘驱动器14和磁盘驱动器21时,这种统一管理方案相当有助于更有效操作和降低操作负荷。

        当磁盘阵列装置被配备有作为与主计算机5之间的连接接口的很常规的接口时,象如上所述的开关设备201,能将磁盘阵列装置用作所述实施例的第二存储控制器20,以及例如,在使用具有更高性能的磁盘阵列装置作为第一存储控制器101和使用具有比另一个更低性能的磁盘阵列装置作为第二存储控制器20的存储系统中,能产生可以将第一存储控制器10的功能应用于第二存储控制器20上的优点。

        [存取限制功能]

        接着,将描述包括在第一存储控制器10中的存取功能。第一存储控制器10存储在图7中示例的存取限制管理表。在存取限制管理表中,描述不允许任何数据输入/输出过程的Destination_ID、Source_ID和LUN的组合。存取限制功能是这样一种功能,在存取限制管理表中描述由第一存储控制器10从主计算机5接收的数据帧中描述的Destination_ID、Source_ID和LUN的组合时,该功能不允许对应在该数据帧中描述的数据输入/输出请求的任何数据输入/输出过程。可通过第一存储控制器10的功能自动记录或由操作员用手动操作记录存取限制管理表的内容。

        将参考图8所示的流程图详细地描述存取限制功能。该流程图描述在其中将描述指向第二存储控制器20的逻辑卷的数据输入/输出请求的数据帧从主计算机5传送到第一存储控制器10的情形。

        当第一存储控制器10接收从主计算机5传送(S811)的数据帧(S812)时,第一存储控制器10检查在存取限制管理表中是否描述数据帧中的Destination_ID(81)、Source_ID(82)和FCP_LUN(91)的组合(S813、S814)。如果在该存取限制管理表中未描述该组合,第一存储控制器10将该数据帧中继到第二存储控制器20(S815)。

        另一方面,如果该组合被描述了,将该数据帧从开关控制单元11传送到存储设备控制单元12(S816)。当存储设备控制单元12接收该数据帧时,存储设备控制单元12查阅该存储控制器113中的存取限制管理表(S817)。如果该数据帧中的Destination_ID(81)、Source_ID(82)和FCP_LUN(91)的组合是不允许存取的组合,存储设备控制单元12创建指向该主计算机5的在其中描述是不允许存取的数据帧,并且将该新创建的数据帧传送到开关设备111(S818)。然后,将该新创建的数据帧通过开关设备111传送到主计算机5。

        另一方面,如果所接收的数据帧是允许存取的数据帧,存储设备控制单元12将该数据帧传送到开关设备111(S819),并且该开关设备111将该数据帧中继到第二存储控制器20(S820)。

        当第二存储控制器20接收该数据帧时(S821),第二存储控制器20针对在该数据帧的FCP_LUN中描述的逻辑卷执行数据输入和输出,所述数据输入和输出对应在该数据帧的FCP_CDB中描述的SCSI命令(S822)。在执行该数据输入/输出过程后,当必要时,第二存储控制器20将在其中描述了所述过程的结果和从该逻辑卷读出的数据的数据帧传送到第一存储控制器10(S823)。

        在该实施例中,在存取限制管理表中描述不允许任何数据输入/输出过程的Source_ID、Destination_ID和LUN的组合,但相反,可在该表中描述允许数据输入/输出过程的Source_ID、Destination_ID和LUN的组合。可用各种形式设置存取限制,不仅包括对所有Source_ID、Destination_ID和LUN的组合执行存取限制的情形,而且包括对Source_ID、Destination_ID和LUN的任何一个或对这些的任何两个或多个的组合执行存取限制的情形。

        如上所述,第一存储控制器10代替第二存储控制器20的角色执行与存取限制有关的过程。因此,在第一存储控制器10上实现用于执行存取限制的功能就足够了。因此,能从与存取限制功能有关的维护负荷中减少由于将这种机制提供给第二存储控制器而产生的量。此外,因为在第二存储控制器20中不需要包括任何存取限制功能,所以能将具有比第一存储控制器10更低的处理能力的存储控制器用作第二存储控制器,并且因此,这对降低引入成本和操作成本来说是很有效。

        此外,与新引入的存储控制器相比,具有更低性能的旧类型的存储控制器完全能用作第二存储控制器20。此外,仅将存取限制管理表存储在第一存储控制器中就足够了,因此,进一步降低由统一管理产生的维护负荷。

        [优先级控制]

        接着,将描述包括在第一存储控制器10中的优先级控制。第一存储控制器10存储如图9所示的优先级管理表。在优先级管理表中,描述Destination_ID、Source_ID、和延迟时间的关系。延迟时间用作例如一个用于确定执行可能增加微处理器121的处理负荷的过程的起始时间的参数。优先级控制功能是这样一种功能,该功能根据在优先级管理表中设置的延迟时间,控制对应于由第一存储控制器10从主计算机5接收的数据帧的数据输入和输出的执行顺序。可由第一存储控制器10的功能自动记录或由操作员用手动操作记录优先级管理表的内容。

        将参考图10所示的流程图来详细地描述优先级控制功能。当第一存储控制器10接收从主计算机5传送(S1011)的数据帧A时(S1012),第一存储控制器10检查数据帧A中的Source_ID和Destination_ID的组合是否存在于优先级管理表中(S1013、S1014)。

        如果存在该组合,当在该组合中未设置延迟时间时,第一存储控制器10将该组合确定为用于存取优先级的对象(S1015),执行针对数据帧A的数据输入和输出(S1016),以及在执行后,将在其中描述了完成报告的数据帧传送到主计算机5(S1077)。

        如果在(S1015)中设置了延迟时间,第一存储控制器10检查在由存储设备控制单元12中的控制存储器123管理的队列中,是否存在等待处理的另一数据帧B(S1020),以及如果存在等待的数据帧B,使执行用于数据帧A的过程的开始等待在优先级管理表中对应于数据帧A的内容而设置的延迟时间段之久(S1021)。考虑施加在微处理器121上的处理负荷,适当地确定应当延迟的用于该数据帧的过程的起始时间,以便使数据输入/输出过程将根据用户需要以适当的顺序加以执行。可以这样安排,由存储系统自动确定使用延迟时间作为参数来执行各过程的顺序的控制或由用户通过连接到该存储系统的控制终端设置的顺序的控制。在过了延迟时间后,第一存储控制器10执行用于数据帧A的数据输入和输出(S1022)并将在其中描述了完成报告的数据帧传送到主计算机5(S1023)。

        另一方面,在(S1020)中,如果在队列中不存在等待的另一数据帧B,第一存储控制器10根据对上述基本操作中所描述的用于数据帧A的常规步骤执行各过程。即,如果数据帧A指向第一存储控制器10中的磁盘驱动器14,在第一存储控制器10中执行用于磁盘驱动器14的数据输入/输出过程,以及如果数据帧指向第二存储控制器20中的磁盘驱动器21,第一存储控制器10将该数据帧传送到第二存储控制器,而第二存储控制器20执行指向磁盘驱动器21的数据输入/输出过程(S1031)。在每种情况中,在完成数据输入/输出过程后,如果必要的话,传送完成报告(S1032)。

        在(S1014)中,如果在优先级管理表中不存在数据帧A的Source_ID、Destination_ID的组合,根据在上述基本操作中描述的步骤,第一存储控制器10检查数据帧A是指向第一存储控制器10中的磁盘驱动器14还是指向第二存储控制器20(S1041)。现在,如果该数据帧A指向第一存储控制器10,将该数据帧传送到存储设备控制单元12(S1042),并且存储设备控制单元12执行用于该数据帧A的数据输入/输出过程(S1043)并将在其中描述了完成报告的数据帧传送到主计算机5(S1044)。

        另一方面,如果数据帧A指向第二存储控制器20中的磁盘驱动器21,第一存储控制器10将数据帧A传送到第二存储控制器20(S1051)。当第二存储控制器20接收数据帧A时(S1052),它针对数据帧A执行指向磁盘驱动器21的数据输入/输出过程(S1053),并通过第一存储控制器10将在其中描述了完成报告的数据帧传送到主计算机5(S1054)。

        从上述描述可以理解,在第一存储控制器10中专门执行主计算机5中的数据帧的优先级控制。即,从另一观点看,第一存储控制器10代替第二存储控制器20的角色执行第二存储控制器20的优先级控制。即,在第一存储控制器10上实现优先级控制功能就足够了,并且第二存储控制器20能享有对应于优先级控制功能的功能,而无需具有用于这种功能的机制。

        此外,能从用于第二存储控制器20的操作负荷中减少由于提供用于优先级控制的机制而产生的量。此外,即使将具有比第一存储控制器10更低处理能力的存储控制器用作第二存储控制器20,也有可能采用将磁盘驱动器21包括在第二存储控制器20中的形式提供优先级控制功能,并且因此,能降低引入成本和操作成本。

        此外,与新引入的存储控制器相比,具有更低性能的旧类型的存储控制器完全能用作第二存储控制器,并且因此,能进一步有效使用资源和降低操作成本。另外,仅将优先级管理表存储在第一存储控制器10中就足够了,并且因此,进一步降低由统一管理产生的维护负荷。

        尽管如上已经描述了用于一个LUN的优先级控制功能,也可以这样安排,执行针对在一个数据帧中描述的过程中的多个LUN和物理端口的优先级控制。

        [数据拷贝控制]

        在本发明的存储系统中,是以如下的方式实施数据的拷贝管理的,按照所述方式,在第一存储控制器10执行数据输入/输出过程所针对的逻辑卷(以下称为“主逻辑卷”)中所存储的数据的拷贝也被存储在第二存储控制器20中的逻辑卷(以下称为“副逻辑卷”)中。主逻辑卷中的LUN和副逻辑卷中的LUN之间的关系被存储在第一存储控制器10的控制存储器113中,作为一对管理表。该对管理表的例子如图11所示。然而,可由第一存储控制器10的功能自动设置或由操作员等等手动操作设置该关系。

        现在,将参考图12的流程图,对把描述了指向主逻辑卷的数据写请求的数据帧从主计算机5传送到第一存储控制器10时的存储系统的过程进行描述。

        当第一存储控制器10接收从主计算机5传送(S1261)的数据帧时(S1262)时,它检查在数据帧中描述为FCP_LUN(91)的LUN是否存在于该对管理表中(S1263、S1264)。

        如果在该对管理表中不存在在该数据帧中描述为FCP_LUN(91)的LUN,第一存储控制器10将所接收的数据帧传送到存储设备控制单元12(S1265)。当存储设备控制单元12接收数据帧时(S1266),它针对适当的逻辑卷执行对应在该数据帧中描述的SCSI命令的数据写过程(S1267),以及当必要时,将在其中描述了完成报告的数据帧传送到主计算机5(S1268)。因此,在主逻辑卷中已经写入数据。

        在(S1264)中,如果在该对管理表中存在LUN,第一存储控制器10创建新数据帧,在该新数据帧中,数据帧的Destination_ID(81)和FCP_LUN(91)被改变,以便将副逻辑卷指定为拷贝的目的地(S1269)。以如下的方式执行新数据帧的创建,按照所述方式,在将所接收的数据帧存储在控制存储器113中后,将该数据帧的拷贝存储在控制存储器中,并改变在该数据帧的拷贝中的Destination_ID(81)和FCP_LUN(91)来创建新数据帧。

        接着,通过控制开关设备111以便使开关设备111这样操作,第一存储控制器10将所创建的新数据帧传送到第二存储控制器20(S1270)。当第二存储控制器20接收该数据帧时(S1271),它针对在数据帧的FCP_LUN中描述的副逻辑卷执行对应在该数据帧的FCP_CDB中描述的SCSI命令的数据写过程(S1272)。用这种方式,也已经把作为在主逻辑卷中所描述的数据的拷贝的数据写入副逻辑卷中。在执行数据写过程后,如果必要的话,第二存储控制器20将在其中描述了完成报告的数据帧传送到主计算机5。用这种方式,已经将数据写入主逻辑卷中,同时,将相同的数据写入副逻辑卷中。

        另一方面,在(S1264)中,如果在对管理表中不存在在数据帧中描述的作为FCP_LUN(91)的LUN,在如上的基本操作中描述的过程后,第一存储控制器10检查该数据帧是指向第一存储控制器10中的磁盘驱动器14还是指向第二存储控制器20(S1281)。如果该数据帧是指向第一存储控制器10,将该数据帧传送到存储设备控制单元12,并执行关于该数据帧的数据写过程(1282)。如果必要的话,将在其中描述了完成报告的数据帧传送到主计算机5(S1284)。

        如果该数据帧是指向第二存储控制器20中的磁盘驱动器21,第一存储控制器10将该数据帧传送到第二存储控制器20(S1285)。当第二存储控制器20接收数据帧时(S1286),它执行指向磁盘驱动器21的数据写过程(S1287)。然后,如果必要的话,第二存储控制器20通过第一存储控制器10将在其中描述了数据写过程的完成报告的数据帧传送到主计算机5(S1288)。

        在上述过程中,当第一存储控制器10接收在其中描述了指向主逻辑卷的数据写请求的数据帧时,第一存储控制器10创建用于拷贝该请求的数据帧,并将其传送到第二存储控制器20。

        根据该方法,仅通过向第一存储控制器10提供用于如上所述创建数据帧的机制,能够很容易实现将存储在第一存储控制器10的磁盘驱动器14中的数据也存储在第二存储控制器20的磁盘驱动器21中的数据拷贝管理的机制。

        有两种已知的用于数据拷贝管理的方案,诸如所谓的“同步方案”,其中已经接收数据帧的第一存储控制器10在确认用于主逻辑卷和副逻辑卷的写过程完成后,将完成报告告知主计算机5,以及所谓的“异步方案”,其中第一存储控制器10仅在针对主逻辑卷的写过程完成时,才将完成报告告知主计算机5,而不管是否已经完成针对副逻辑卷的写过程。然而,上述实施例的机制可应用于在“同步方案”或者“异步方案”中操作的情形。

        尽管通过几个实施例,已经阐述了根据本发明的存储系统控制方法等等,但是上述实施例仅用于方便理解本发明,而不是限定本发明。将意识到,在不背离本发明以及本发明所包含的等效的精神的情况下,可不同地改变或改进本发明。如仅应用如上所述的存取限制、优先级、数据拷贝控制中的一个或应用这些的两个或多个的任意组合。

        用于第一通信装置或第二通信装置的通信协议并不限于光纤信道协议,而是可使用其他协议。

        在上述实施例中,将磁盘阵列装置描述为存储装置的例子。然后,本发明可应用于除磁盘阵列装置外的其他存储装置上,诸如半导体磁盘装置。

        尽管基于实施例,已经描述了本发明,应注意到,本发明将不限于在此陈述的实施例,以及在不背离其精神的情况下,可做出各种改变。

    关 键  词:
    存储系统 及其 控制 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:存储系统及其控制方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-714841.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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