存储装置、存储控制器内部网络的数据路径故障切换方法

文档序号:6582397阅读:290来源:国知局
专利名称:存储装置、存储控制器内部网络的数据路径故障切换方法
技术领域
本发明涉及存储装置(也称为磁盘阵列装置等),尤其涉及存储控制器内部网络 的数据路径(data path)的故障切换(fail-over)的技术。
背景技术
存储装置一般具备存储控制器(也简称为控制器)和可以随机存取的非易失性记 录介质。该记录介质例如是具备大量硬盘驱动器(HDD)的磁盘阵列。存储控制器具备用 于连接上位装置(主机系统等)的前端接口 (front-endinterface :简称为FEI/F)、用于连 接磁盘阵列的后端接口 (back-end interface :简称为BEI/F)、临时保存上位装置对磁盘 阵列读写的数据的高速缓冲存储器(cache memory简称为CM)。存储控制器还具备用于控 制上位装置和高速缓冲存储器之间、以及磁盘阵列和高速缓冲存储器之间的数据转发的处 理器。 在要求高可靠性的存储装置中,将存储控制器内的处理器、FEI/F、 BEI/F以及CM 相互连接的网络被构成为在数据路径故障发生时可以进行故障切换。另外,在要求高性能 的存储装置中,将多个处理器连接在存储控制器内部网络(简称为CN)上,控制数据传输。
关于具备在发生数据路径故障时可以进行故障切换的内部网络(CN)的存储系 统,作为与其相关的公知技术,有特开2008-84066号公报(专利文献1)。
另外,作为与连接处理器和FEI/F或者BEI/F等的网络相关的、标准化的标准(基 本规范),已知有PCI E邓ress(简称为PCIe)。并且,用于由多个处理器共享I/O设备的 "Multi-Root 1/0 Virtualization and Sharing Specification"(以下称为MR-I0V)已 被标准化。由于MR-IOV是标准规范,因此考虑到将遵从MR-IOV的交换器(switch)等组件 进行商品化。 SP,若使用作为标准规范的MR-I0V来构成存储控制器内部网络(CN),则可以期待 存储控制器的低成本化。 此夕卜,"Single-Root 1/0 Virtualization and Sharing Specification"(以 下称为SR-I0V)也是公知技术。在SR-I0V中,多个SI (System Image)可以从一个根端口 (Root Port :简称为RP)向多个端点设备(Endpoint device :简称为EPD)进行访问。另外, 在MR-IOV中,把从一个RP观察端点而得到的树状拓扑称为虚拟层次(Virtual Hierarchy : 简称为VH)。在MR-I0V中,在网络内构成多个VH,在各VH中, 一个以上的SI可以从一个RP 对多个EPD进行访问。 在现有的MR-I0V规范中,关于RP和端点设备(EPD)之间的数据路径中发生了故 障时的数据路径的故障切换(从故障路径向代替路径的切换),未进行考虑,没有定义具体 的方法。 因此,在对存储控制器内部网络(CN)应用了 MR-I0V的存储装置中,存在无法执行
数据路径的故障切换的问题。专利文献1JP特开2008-84066号公报

发明内容
本发明是鉴于上述问题而提出的发明,其主要目的是,提供一种与对存储控制器内部网络(CN)应用了MR-IOV的存储装置相关的、可以执行数据路径的故障切换的技术。
以下,简单说明本申请中公开的发明中的代表性发明的概要。为了达成所述目的,本发明的代表性的实施方式,是具有通过PCI E邓ress(PCIe)连接了存储控制器(SC)内的组件的内部网络(CN)的存储装置(或系统)的技术,特征在于具有如下所示的结构。
本实施方式的存储装置的存储控制器(SC)以及其内部网络(CN)具备例如总体上具有多个RP的多个根联合体(Root complex :RC),每个根联合体具有一个以上(尤其多个)RP ;与每个所述RC连接的多个处理器;多个EPD,其是具有预定的接口 (任务虚拟功能(MVF))、并具有可以从所述多个(全体)RP的各个RP访问的多个虚拟功能(VF)的MRA (Multi-Root Aware)设备;以及交换器,其是将所述多个RP和所述多个EPD连接来构成数据路径、并具备多个端口的MRA交换器。并且,所述多个EPD中的至少一个,可以执行变更(转移)所述VF和所述预定的接口之间的映射(对应)的VF迁移(具备VF迁移功能)。并且,SC以及CN,以全部所述多个RP可以对全部所述多个EPD内的VF进行访问的方式,设定所述交换器以及所述EPD。并且,SC以及CN,作为当从所述多个RP中的一个经由所述交换器到所述多个EPD之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理,在从该故障状态的第1数据路径向用于代替的第2数据路径的切换中,进行以下处理切换该数据路径的访问源RP的处理(第1切换)、以及通过VF迁移来切换该访问目的地EPD的VF和所述预定的接口之间的映射的处理(第2切换)。 在本存储装置中,例如通过PCIe的MRA交换器连接存储控制器(SC)内的组件。MRA设备(MRA交换器)是遵从MR-IOV的装置。RC具有一个以上(尤其是多个)RP。从RC内的RP通过交换器构成访问EPD内的VF的数据路径,相对于EPD内的VF,作为MVF而映射了预定的接口 (功能)。并且,在以下这样的MRA设备(EPD)中构成前端接口 (FEI/F)以及后端接口 (BEI/F)等的功能。S卩,作为MRA设备(EPD),是具有可以从SC内的各个RP访问的VF,并且可以执行VF迁移(转移)的MRA设备。 另外,存储控制器内部网络(CN),作为MRA设备即EPD,包括具有FEI/F的第1EPD以及具有BEI/F的第2EPD。第1EPD以及第2EPD具有可以从SC内的各RP(多个)访问的多个VF,换言之,至少具有与VH(多个)数量相应的可以访问的VF资源。并且,该EPD被预先设定为可以执行VF迁移(例如具有设定VF迁移功能的有效/无效位的寄存器等,并且被设定为有效)。 另外,在具有可以从SC内的各个RP访问的VF的MRA设备中构成高速缓冲存储器接口 (CMI/F)等。存储控制器内部网络(CN),作为MRA设备即EPD,包括具有CMI/F的第3EPD。第3EPD具有可以从SC内的各RP (多个)访问的多个VF。 并且,以SC内的全部RP可以对FEI/F (第1EPD)或BEI/F (第2EPD)或CMI/F (第3EPD)等的各MRA设备(EPD)内的VF进行访问的方式,设定所述MRA交换器以及MRA设备。
并且,当从所述SC内的RP到EPD的功能的数据路径中发生了故障时,通过MR-PCIM等进行该数据路径的访问源RP的切换、和访问目的地MRA设备内VF和MVF之间的映射的基于VF迁移的切换,由此执行数据路径的故障切换。
7
在本实施方式中,针对每个RP使各个EPD具有可以访问的资源(VF)。例如,针对 4个RP,在多个EPD的各个EPD中具有4个VF。此外,VF是在CPU (处理器)侧虚拟可见的 存在,MVF是功能的实体。VF和MVF之间的对应(映射)基于MR-I0V的规范。
如上述结构那样,第l特征在于,在故障切换时不仅变更访问源RP,而且通过VF迁 移来变更访问目的地的VF-MVF的映射。 第2特征在于,作为针对VF迁移控制单元的、发生数据路径故障时的对策,设置 SR-PCIM以外的代替单元。使EPD具有作为该代替单元的功能。例如存在第l方法(基于 进入(inbound)通信的方法)、第2方法(基于外出(outbound)通信的方法)、第3方法 (基于自主功能的方法)。 以下,简单地说明通过本申请所公开的发明中的代表性发明而得到的效果。根据 本发明的代表性的实施方式,关于对存储控制器内部网络应用了 MR-I0V的存储装置,可以 执行数据路径的故障切换。在存储控制器(内部网络)中,即使从RP到EPD的数据路径中 发生了故障,也可以故障切换到其它数据路径,因此确保了高可靠性。


图1是表示本发明的实施方式1的存储装置的块结构的图。 图2是表示实施方式1中的端点设备(EDO)的块结构的图。 图3是表述实施方式1中的端点设备(EDI)的块结构的图。 图4是实施方式1中的交换器端口类型管理表的说明图。 图5是实施方式1中的VH以及VF映射策略管理表的说明图。 图6是实施方式1中的交换器(SWOO)管理表的说明图。 图7是实施方式1中的交换器(SW01)管理表的说明图。 图8是实施方式1中的交换器(SW10)管理表的说明图。 图9是实施方式1中的交换器(SW11)管理表的说明图。 图10是实施方式1中的交换器(SW12)管理表的说明图。 图11是实施方式1中的EDO的VF映射管理表的说明图。 图12是实施方式1中的EDI的VF映射管理表的说明图。 图13是实施方式1中的ED2的VF映射管理表的说明图。 图14是实施方式1中的内部网络的虚拟拓扑的说明图。 图15是实施方式1中的故障切换管理表的说明图。 图16是实施方式1中的故障切换动作(向代替数据路径的切换)的说明图。 图17是实施方式1中的故障切换动作(VF迁移)的说明图。 图18是表示实施方式1中的故障切换处理的流程图。 图19是实施方式1中的EDO的VF映射管理表(之二 )的说明图。 图20是实施方式1中的ED2的VF映射管理表(之二 )的说明图。 图21是表示本发明的实施方式2的存储装置中的端点设备的块结构的图。 图22A是表示实施方式2中的第1方法中的VF迁移处理(之一 )的流程图。 图22B是表示实施方式2中的第1方法中的VF迁移处理(之二 )的流程图。 图23是表示实施方式2中的第2方法中的VF迁移处理的流程图。
图24是表示实施方式2中的第3方法中的VF迁移处理的流程图。 图25是与基于MR-I0V规范的VF迁移相伴的VF的状态迁移的说明图。 图26是表示一个实施方式中的存储装置的利用例(之一 )的说明图。 图27是表示一个实施方式中的存储装置的利用例(之二 )的说明图。 图28是表示一个实施方式中的存储装置的利用例(之三)的说明图。 符号说明 10 :存储装置;15 :磁盘阵列(DA) ;20 :存储控制器(SC)及其内部网络(CN) ;21 :
处理器(CPUO、 CPU1) ;22 :存储器(MEMO、 MEM1) ;23 :高速缓冲存储器(CM) ;30 :根联合体(RC) (RC0、RC1) ;40 :交换器(SWOO、 SWOl、 SWIO、 SWll、 SW12) ;50、51 :端点设备(EPD) (EDO、ED1、ED2) ;102:前端接口 (FEI/F) ;103、105、107 :组件;104 :高速缓冲存储器接口 (CMI/F) ;106 :后端接口 (BEI/F) ;108 :程序(MR-PCM以及SR-PCIM) ;109 :程序(MR-PCIM) ;110 :
故障切换控制程序(FP) ;111 :故障切换控制表(FT) ;190 :维护终端(SVP) ;191 :管理端口 ;201、301 :端口 ;202、302 :基本功能(BF) ;203 ;303 :物理功能(PF) ;204、304 :虚拟功能
(VF) ;205、305 :内部路由控制部;206、306 :VF映射(VF Mapping)控制部;207、307 :任务虚拟功能(MVF) ;208、30S :管理端口 ;400 :交换器端口类型管理表;500 :VH及VF映射策略管理表;600、700、800、900、1000 :交换器管理表;1100、1200、1300、1100b、1300b :VF映射(VFMapping)管理表;1401 :根端口 ;1402 :虚拟交换器架构(VSF) ; 1403、 1404、 1405 :MR-Link ;1406 :VF ;1407 :VF映射(VF Mapping) ;1500 :故障切换管理表;1701 :MVF ;1702、 1703 :VF ;
1704、 1705 :VF映射;2102 :BF ;2103 :PF :2104 :VF状态控制部;2105 :管理端口 ;RPO、 RPl、
RP2、RP3 :根端口 ;P000、P001、P002、P003、P004、P010、P011、P012、P013、P014、P100、P101、P102、P110、P111、P112、P120、P121、P122 :端口 ;NOO :网络;C00、D00 :通道;VS0、VS1 :虚拟交换器(VS) ;K1、K2、K3、K4 :数据路径;L1、 L2、 L3、 L4、 L5 :链路(交换器间链路)
具体实施例方式
以下,根据附图详细说明本发明的实施方式。此外,在用于说明实施方式的全部附
图中,对于相同部分原则上赋予相同符号,省略其重复的说明。(实施方式1) 使用图1 图20等,说明本发明的实施方式1的存储装置(换言之,存储系统)。在实施方式1中,作为概要,根据图1、图2等的结构,如图16、图17等所示,在存储控制器的内部网络中从正常数据路径(故障状态)向代替数据路径的故障切换动作时,变更访问源的根端口 (例如RPO — RP1),并且通过变更端点设备的虚拟功能(VF)和任务虚拟功能(MVF)之间的映射(VF映射)(例如EDO的"VF O:O,l"- "MVF 0:0"—"VF l:O,l"- "MVF0:0")来实现VF迁移的控制。
〈存储装置> 图1表示作为本发明的实施方式的存储装置10的块结构。存储装置10具备存储控制器(SC)20和磁盘阵列(DA)15。 DA15由多个硬盘驱动器(HDD)或半导体存储器驱动器等存储装置群构成。另外,对于SC20,经由通道C00连接外部的上位装置(主机系统)等。另外,对于SC20,经由网络N00连接维护终端(maintenance terminal :设为SVP) 190。
存储控制器(SC)20及其内部网络(CN)具备2个处理器21 (CPU0、CPU1) ;2个存储器22(MEM0、MEM1) ;2个根联合体(RC) 30 (RC0、RC1) ;3个端点设备(EPD) 50 (ED0、ED1、ED2);1个高速缓冲存储器(CM) 23 ;以及多个(5个)交换器40(SW00、 SWOl、 SWIO、 SWll、 SW12)。通过上述组件的基于交换器(switch)的相互连接(PCIe架构)而构成了内部网络(CN)。
此外,在SC20以及CN中,将处理器21、存储器22等至少二重化,相同符号组件是左右对称的结构。另外,构成SC20(以及CN)的组件(交换器等)的数量也可以不限于图1的结构例。例如可以增加RC30、 SW40、 EPD50的数量。 作为处理器21的CPUO (CPU1)通过执行在作为存储器22的MEMO (MEM1)中存储的程序来进行各种处理。具体而言,CPU0(CPU1)控制与SC20相连的上位装置(主机系统)和DA15之间的数据转发。作为存储器22的MEMO (MEM1),存储通过作为处理器21的CPU0(CPU1)执行的程序、或者被参照的表的数据等。 在本例中,在各存储器22中存储了 单根PCI管理程序(SR-PCM)以及多根PCI管理程序(MR-PCM)双方的程序108、故障切换控制程序(FP)110、和各种管理信息的表(后述)。另外,在CM23的一部分区域中也存储包含故障切换控制表(FT) 111的各种管理信息的表。另外,在维护终端(SVP) 190中也存储MR-PCIM的程序109等程序或表。
各种表的信息可以由管理者(Administrator)设定或变更等。管理者例如可以操作维护终端(SVP)190来进行包含该设定等的维护"管理系列的操作。在这种情况下,管理者将与表的设定等相关的信息输入SVP190。 SVP190将输入的信息经由网络NOO发送至处理器21(CPU0(CPU1))。该处理器21根据接收到的信息,生成对象表或对其进行变更等。然后,该处理器21将该表存储在存储器22 (MEMO (MEM1))等中。 第1根联合体30 (RCO)与第1处理器21 (CPUO)连接,并且具备2个PCIe基本规范的根端口 (第1RP、第2RP)即RP0、RP1。同样地,第2根联合体30(RC1)与第2处理器21(CPU1)连接,并且具备2个根端口 (第1RP、第2RP)即RP2、RP3。 第1根端口 (RPO),经由第1交换器40(SW00)以及第3交换器40(SW10)与第1端点设备50 (EDO)相连。另夕卜,RPO经由SWOO以及第4交换器40(SW11)与第3端点设备50(ED1)相连。而且,RPO经由SWOO以及第5交换器40(SW12)与第2端点设备50 (ED2)相连。 第2根端口 (RP1),经由第2交换器40(SW01)以及第3交换器40 (SW10)与第1端点设备50 (EDO)相连。另外,RP1经由SW01以及第4交换器40(SW11)与第3端点设备50(ED1)相连。而且,RP1经由SW01以及第5交换器40(SW12)与第2端点设备50 (ED2)相连。 第3根端口 30 (RP2) (RC1内的第1RP),经由第1交换器40 (SWOO)以及第3交换器40(SW10)与第1端点设备50 (EDO)相连。另外,RP2经由SWOO以及第4交换器40(SW11)与第3端点设备50 (ED1)相连。而且,RP2经由SWOO以及第5交换器40 (SW12)与第2端点设备50(ED2)相连。 第4根端口 (RP3)(RC1内的第2RP),经由第2交换器40 (SW01)以及第3交换器40(SW10)与第1端点设备50 (EDO)相连。另外,RP3经由SW01以及第4交换器40(SW11)与第3端点设备50(ED1)相连。而且,RP3经由SW01以及第5交换器40(SW12)与第2端点设备40(ED2)相连。 交换器(SWOO、 SWOl、 SWIO、 SWll、 SW12)是遵从MR-I0V规范的多根已知(MRA :Multi-RootAware)交换器。另外,端点设备50 (ED0、ED1、ED2)是MRA设备。第1和第2交 换器(SWOO、 SW01)与RC30侧相连。第3 第5交换器(SWIO、 SWll、 SW12)与EPD50侧相连。 第1交换器40(SW00)具备用于构成数据路径的端口 POOO、 POOl、 P002、 P003、 P004,还具备可以与网络N00连接的管理端口 (management port) 191。同样地,第2交换器 40(SW01)具备端口 P010、P011、P012、P013、P014和管理端口 191。经由网络NOO将SVP190 与交换器40的管理端口 191连接,由此,管理者可以设定、管理PCIe架构。
第3交换器40(SW10)具备用于构成数据路径的端口 PIOO、 PlOl、 P102。同样地, 第4交换器40(SW11)具备端口 PllO、 Plll、 P112。第5交换器40(SW12)具备端口 P120、 P121、P122。 3个交换器40(SW10、SW11、SW12)与两个交换器40 (SW00、SW01)同样经由网络 NOO与SVP190相连。 第1端点设备50 (EDO)经由通道COO与外部的上位装置相连。上位装置例如是在 本存储装置10内读写数据的计算机。EDO具备前端接口 (FEI/F)102。 FEI/F102对通道COO 上与SC20内的数据转发协议进行相互变换。此外,SWIO和EDO可以集中作为1个组件103 被安装。 第2端点设备50(ED2)经由通道D00与DA15相连。ED2具备后端接口 (BEI/F)106。 BEI/F106对通道DOO上与SC20内的数据转发协议进行相互变换。此外,SW12和ED2可以 集中作为1个组件107被安装。 第3端点设备50 (EDI)具备用于与高速缓冲存储器(CM) 23连接的高速缓冲存储 器接口 (CMI/F) 104。 CM23临时存储(高速缓冲存储)从第1端点设备50 (EDO)以及第2 端点设备50 (ED2)等接收到的数据(在与FEI/F102或BEI/F106之间的转发数据)。CM23 被共用于SC20内的数据或信息的存储。另外,在CM23内的存储区域的一部分中确保的共 享存储区域中,存储控制信息等。此外,SW11和ED1也可以集中作为1个组件105被安装。
EPD50(ED0、 ED1、 ED2)经由网络NOO与SVP190相连。SVP190将通过存储装置10 的管理者输入的设定信息发送至EPD50 (EDO、 ED1、 ED2)。 此外,SC20可以代替2个作为端点设备50的EDO (搭载了 FEI/F102)以及ED2 (搭 载了 BEI/F106),而具备1个端点设备。在这种情况下,该1个端点设备进行该两个EPD (EDO 以及ED2)的对应处理。 MR-PCIM(Multi-Root PCI Manager)具有设定、管理PCIe架构(内部网络(CN)) 等功能。另外,与本特征相关,MR-PCIM具有控制数据路径的故障切换等功能。
MR-PCIM的程序,例如被存储在存储器22中(程序108),在处理器21上运行。或 者,MR-PCM的程序可以在SVP190上运行(程序109),并经由网络N00和交换器40的管理 端口 191来设定、管理PCIe架构。 SR-PCM(Single-Root PCI Manager)在每个根端口的虚拟层次 (VirtualHierarchy :VH)内运行。SR-PCIM的程序例如被存储在存储器22中(程序108), 在处理器21上运行。 控制SC20(CN)中的数据路径的故障切换的故障切换控制程序(FP) 110,例如被存 储在存储器22中,在处理器21上运行。FP110,可以作为MR-PCM的功能而通过内置的方 式被安装,或者也可以作为独立的程序被安装。但是,将FP110安装为可以直接或间接地与
11MR-PCIM以及SR-PCIM通信。 在本系统(SC20)中,运行MR-PCIM和SR-PCIM两者。SR-PCIM(在各VH内运行), 管理EPD的SR-I0V特性。MR-PCIM,管理EPD的MR-I0V特性。VF和MVF之间的对应(映 射)由MR-PCM管理。MR-PCIM和SR-PCIM协作来控制VF迁移。 MR-PCIM基于MR-IOV规范。在本例中,在两个处理器21 (CPU0、CPU1)以及SVP190 这3个位置分别配置MR-PCIM的程序(108、 109)。根据情况,其中一个活动地(Active)运 行,其它两个用于备份运行。 作为在CM23的一部分中设置的共享存储区域中存储的信息之一,有故障切换控 制表(FT)lll。从处理器21(故障切换控制程序(FP)llO)访问、参照FT111。在处理器21 侧的RP间无法通信,因此作为可以从双方处理器21 (CPU0、CPU1)侧的RP访问的位置,故障 切换控制程序(FR)110在本例中被配置在CM23内。关于故障切换动作,由故障切换控制程 序(FP) 110参照FT111来自动执行。
〈端点设备EDO〉 图2表示第1端点设备50(ED0)的i央结构。EDO具备可以与MR-Link(Multi-Root Link)(交换器40侧)连接的端口 201 ;内部路由控制部(internalrooting controller) 205、各功能(BF202、 PH203、 VF204) ;VF映射(VF Ma卯ing)控制部206 ;FEI/ F102的任务虚拟功能(MVF) 207 ;以及可以经由网络NOO与SVP190通信的管理端口 208等。
EDO具备功能号码0的一个基本功能202 ("BF 0:0")(基本功能简称为BF)。另 外,ED0具备BF202( "BF 0:0")附带的多个(4个)物理功能203( "PF O:O","PF 1:0", "PF 2:0","PF 3:0")(物理功能简称为PF)。而且,EDO针对每个PF,具备各PF附带的多 个(4个)虚拟功能204( "VF 0:0,1","VF 1:0,1","VF 2:0,1","VF 3: 0, 1")(虚拟功能 简称为VF)。通过这些功能(BF、PF、VF)支持4个VH,由此,EDO可以设定为能够从SC20内 设置的全部4个根端口 (RP0、RP1、RP2、RP3)进行访问。例如,"PF O:O"和"VF 0:0, l"对 应于第1VH(VH0)。 BF202存储了基本的设定。VF204与MVF107被映射。VF204等是用于与存储装置 10的数据读出或写入等相关联的数据转发等的功能。BF是管理与MRA设备的MR-IOV相关 的特性的功能,还保持VF和MVF的映射信息。PF是管理与SR-IOV规范相关的设备的特性 的功能。VF是PF附带的功能,附带的PF以及相同PF附带的其它VF共享1个以上的链路 等物理资源。在本例的端点设备中,功能号码O的BF、PF、VF负责端点设备的FEI/F等接口 功能。 多个(2个)MVF207("MVF O,O","MVF 0, 1")是FEI/F102的功能的实体(任务虚 拟功能简称为MVF) 。 EDO在本例中具备2个MVF207,由此可以同时并行地执行最多2个 接口 (FEI/F)功能。 VF映射控制部206,根据在BF202中存储的设定,将多个VF204 ( "VFO:0, 1", "VF 1:0,1","VF 2:0,1","VF 3:0, 1")中最多2个VF204与MVF207 ( "MVF O,O","MVF 0, 1") 1
对1地连接(映射)。 说明从端口 201至通道COO的数据流。EDO将端口 201接收到的数据向内部路由 控制部205转发。内部路由控制部205按照接收到的数据的发送目的地,向各功能进行路 径变更。VF映射控制部206从VF204向MVF207传输数据。MVF207向通道COO转发数据。从通道COO至端口 201的数据流是上述的反方向。 此外,关于第2端点设备50(ED2)的结构,除了 MVF的功能是与通道D00连接的 BEI/F106以外,与图2的ED1的结构大体相同。 此夕卜,关于功能的表述,例如在"BF a:b"中,a是VH号码,b是功能号码。另外,在 "PF a:b"中,a是VH号码,b是功能号码。另外,在"VF a:b, c"中,a是VH号码,b是功能 号码,c是VF号码。另夕卜,在"MVF a,b"中,a是功能号码,b是MVF号码。
〈端点设备ED1〉 图3表示第3端点设备50(ED1)的块结构。ED1具备可以与MR-Link(交换 器40侧)连接的端口 301、内部路由控制部305、各功能(BF302、 PF303、 VF304) 、 VF映射 (VF Mapping)控制部306、 CMI/F104的任务虚拟功能(MVF) 307、以及可以经由网络NOO与 SVP190通信的管理端口 308等。 ED1具备功能号码0的1个BF302("BF 0:0")。另外,ED1具备BF302 ("BF 0:0") 附带的多个(4个)PF303( "PF 0:0","PF1:0","PF 2:0", "PF3:0")。而且,ED1针对每个 PF具备各PF附带的多个(4个)VF304( "VF 0:0,1","VF 1:0,1","VF 2:0,1","VF 3:0, 1")。通过它们支持4个VH,由此,ED1可以设定为能够从SC20内设置的4个根端口 (RPO、 RP1、RP2、RP3)进行访问。 MVF307( "MVF O,O","MVF O,l","MVF 0,2","MVF 0, 3"是CMI/F104的功能的实 体。ED1具备4个MVF307,由此可以同时并行地执行最多4个接口 (CMI/F)功能。
VF映射控制部306根据在BF302中存储的设定,将多个VF304 ( "VFO:0, 1", "VF 1:0,1","VF 2:0,1","VF 3:0,1")中最多4个VF304与MVF307 ( "MVF O,O","MVF 0, 1", "MVF 0,2","MVF 0,3") 1对1地连接。在搭载CMI/F104的ED1中,可以将全部的VF304与 MVF307映射。 说明从端口 301至CM23连接通道的数据流。ED1将端口 301接收到的数据转发至 内部路由控制部305。内部路由控制部305按照接收到的数据的发送目的地,向各功能进行 路径变更。VF映射控制部306从VF304向MVF307传输数据。MVF307向CM23连接通道转 发数据。从CM23连接通道至端口 301的数据流是上述的反方向。 作为映射到VF的MVF(对应了 CMI/F104)的数量(x) , ED1具有访问ED1的RP的 数量(y :在本例中是4)以上(在本例中,x = y = 4)。
〈初始设定〉 接下来,顺次说明存储了构成SC20的内部网络(CN)的PCIe架构的初始设定信息 等的各种表。各种表包括图4的交换器端口类型管理表400 ;图5的VH以及VH映射策略 管理表500 ;图6 图IO的每个交换器(SW00 SW12)的交换器管理表600、700、800、900、 1000 ;图11 图13的每个EPD50(ED0、ED1、ED2)的VF映射管理表1100、 1200、 1300。
〈交换器端口类型管理表> 图4是交换器端口类型管理表400的说明图。交换器端口类型管理表400,作为项 目(列)而存储SC20内的交换器端口 ( "Switch Port")a(所述交换器400的端口号码、 例如"POOO"等)与其端口类型("PCM C即able")b(PCM能够)的对应。MR-PCM经由 端口类型b为"Yes"(是)的交换器端口将PCIe架构初始化。仅连接EPD50的交换器端口 a的端口类型b为"No"(否)。
13
〈VH以及VF映射策略管理表> 图5是VH以及VF映射策略管理表500的说明图。VH以及VF映射策略管理表500, 作为项目而具有"VH"a、"Authorized(认可)"b、"VH Mapping" (VH映射)c { "VS in"d、 "Inter-SW Link"e、"VH in"f}、"VF Mapping" (VF映射)g。 将各VH的RP (RP号码)存储在a中。在a中存储的RP上,若MR-PCIM运行,则将 "Authorized" b设为"Yes"。在本实施方式中,为了确保冗余性,设定为MR-PCIM可以在全 部RP上运行。 c存储VH映射(VH M即ping)设定信息。d存储各VH中使用的交换器40内虚拟交 换器(VS)。在本例中,在全部VH中使用EPD50连接侧的3个交换器40(SW10、 SWll、 SW12) 内的虚拟交换器(VS)。例如,在RPO的VH中设定了 SWOO和3个交换器(SW10、SW11、SW12) 的VS。 此外,虚拟交换器(VS)是基于MR-IOV规范的术语。在交换器设备40内对应设置 了 1个以上VS。例如在SWOO内具有VSO、 VS1这两个VS。 e存储在各VH中使用的交换器间链路(inter-switch link)的一览。在本例中,各 VH使用EPD50连接侧的3个交换器40 (SWIO、 SW11 、 SW12)各自具有的2条交换器间链路中的 1条的链路。例如在RPO的VH中,作为交换器间链路,设定了 P002-P100的链路(SW00-SW10 间的路径)、P003-P110的链路(SW00-SW11间的路径)、P004-P120的链路(SW00-SW12间的
路径)。 f存储属于各VH的EPD50的一览。在本例中,全部EPD50(ED0、 ED1、 ED2)属于各 VH内。 g存储VF映射(VF Mapping)设定信息。在本例中,在各VH中对每个EPD50分配 了1个VF。此夕卜,分配给各VH的每个EDP50的VF的个数不限于1个,是1个以上即可。在 本例中,各EPD50支持VH的个数(连接的根端口数)以上的VF。
〈每个交换器的交换器管理表> 图6 图10是5个交换器40(SW00 SW12)的各自的交换器管理表的说明图。图 6是第1交换器40 (SWOO)的交换器管理表600。图7是第2交换器40 (SW01)的交换器管 理表700。 交换器管理表,作为项目而具有"Slot(时隙)"a、"Root(根)"b、"VS"c、 "Bridge (桥)"d、"Enable (使能)"e、"M即ped(映射)"f、"Port(端口 ) "g、"Port VHN(端 口 VH号码)"h。 在本例中,如行601 、 603 、 701 、 703所示,4个RP (RPO 、 RP1 、 RP2 、 RP3)是PCIe基本规 范的RP,因此各交换器40中与RP连接的端口的"PortVHN" h (端口 VH号码)成为"VHO"。 端口 VH号码是与交换器40的各端口连接的链路中使用的VH号码(基于MR-IOV的规范的 术语)。 在本例中,在SWOO的交换器管理表600中,与RPO连接的虚拟交换器VSO的下游 (downstream)侧端口的"Port VHN" h被映射为"VHO" (602)。另外,与RP2连接的虚拟交 换器VS1的下游侧端口的"Port VHN" h被映射为"VH1" (604)。 在本例中,在SW01的交换器管理表700中,与RP1连接的虚拟交换器VSO的下游 侧端口的"Port VHN"h被映射为"VHO" (702)。另外,与RP3连接的虚拟交换器VS1的下游侧端口的"Port VHN" h被映射为"VH1" (704)。 此外,关于"Bridge"d,所谓下游侧,在图1中是指SW00、SW01的端点设备侧,所谓 上游(upstream)侧,在图1中是指SWOO、 SW01的根端口侧。 图8是第3交换器40(SW10)的交换器管理表800。在本例中,在将EPD50和交换 器40(SW10, SWll, SW12)连接的链路中,把与将RPO设为根端口的VH相对应的VH号码设 为VHO。同样地,对应于RPl设为VH1,对应于RP2设为VH2,对应于RP3设为VH3。在本例 中,SW10的下游侧端口 P102,在RP为RPO时将"Port VHN"h映射为"VHO" (801)。另夕卜, 端口 P102的"Port VHN"h,在RP为RPl时被映射为"VHl" (802),在RP为RP2时被映射为 "VH2" (803),在RP为RP3时被映射为"VH3" (804)。 图9是第4交换器40 (SWll)的交换器管理表900。在本例中,SWll的下游侧端 口 P112,在RP为RPO时将"Port VHN"h映射为"VHO" (901)。另夕卜,端口 P112的"Port VHN" h,在RP为RPl时被映射为"VH1" (902),在RP为RP2时被映射为"VH2" (903),在RP 为RP3时被映射为"VH3" (904)。 图10是第5交换器40 (SW12)的交换器管理表1000。在本例中,SW12的下游侧端 口 P122,在RP为RPO时,将"Port VHN"h映射为"VHO" (1001)。另外,端口 P122的"Port VHN"h,在RP为RPl时被映射为"VH1" (1002),在RP为RP2时被映射为"VH2" (1003),在 RP为RP3时被映射为"VH3" (1004)。 到图10为止的设定,是系统硬件初始设定的值,在本系统的设计、制造阶段已被 预先设定。另外,管理者根据具体的系统利用例,设定图11以后的表的必要项目的值。 [O123]〈每个EPD的VF映射管理表(1) > 图11 图13是每个EPD50(ED0、ED1、ED2)的VF映射(VF Mapping)管理表(1100、 1200、 1300)的说明图。这些VF映射管理表被存储在每个EPD50的BF内,通过MR-PCI被设 定、管理。 图11是第1EPD50(ED0)(搭载FEI/F102)的VF映射管理表llOO的说明图。VF映 射管理表1100,作为项目而具有"PF"a、"LVFft"b、"VF State (VF状态)"c、"VF"d、"MVF"e。 d和e表示VF和MVF的映射。"LVF#"b中的LVF是逻辑VF (基于MR-IOV规范的术语)。在 BF内,VF作为LVF被管理。根据MR-IOV规范,"LVFft"b、"VF State (VF状态)"c、 "MVF" e 的对应,作为LVF表被存储在BF内。LVF表不保存与VH相关的信息。为了进行VF迁移控 制,虽然LVF表的信息充分,但在本系统中通过在LVF表中追加"PF"a以及"VF" d的项目, 将LVF表扩展成追加了 VH信息的VF映射管理表。其结果是,本例可以容易地判断LVF以 及MVF可以从哪个根端口来访问。 属于VHO的VF( "VF 0:0,1"),其"VF State"c为"Active. Available (A. A)"(活 动.可用),被映射到MVF("MVF O,O")(llOl)。属于VH1的VF("VF1:0, 1"),其"VF State"c 为"Inactive. Unavailable (I. U)"(不活动 不可用),没有被映射到MVF( "none"(无)) (1102)。属于VH2的VF("VF 2:0,1"),其"VF State" c为"A. A",被映射到MVF( "MVF 0,1")(1103)。属于VH3的VF("VF 3:0,1"),其"VF State" c为"I. U",没有被映射到 MVF( "none") (1104)。这些VF映射的结果是,EDO在初始状态下可以从RPO以及RP2进行 访问,不可以从RPl以及RP3进行访问。 图12是第3EPD50(ED1)(搭载CMI/F104)的VF映射管理表1200的说明图。属于VH0的VF( "VF 0:0,1"),其"VF State" c为"A. A",被映射到MVF (MVF 0,0)(1201)。属于 VH1的VF( "VF 1:0,1"),其"VF State"c为"A. A",被映射到MVF( "MVF 0, 1") (1202)。属 于VH2的VF( "VF 2:0,1"),其"VF State"c为"A. A",被映射到MVF( "MVF 0,2") (1203)。 属于VH3的VF( "VF 3:0, 1"),其"VFState"c为"A. A",被映射到MVF( "MVF 0,3") (1204)。 这些VF映射的结果是,EDI在初始状态下可以从全部4个RP(RPO、 RP1、 RP2、 RP3)进行访 问。 在搭载CMI/F104的EDI的表设定中,特别地,VF状态全部为"A. A"。在CMI/F104 中与FEI/F102以及BEI/F106不同,因为成为具有可以从全部RP访问的VF资源的结构。
图13是第2EPD50 (ED2)的VF映射管理表1300的说明图。基本上,与EDI的情况 相同。属于VHO的VF("VF 0:0,1"),其"VF State"c为"I. U",未被映射到MVF(1301)。属 于VH1的VF( "VF 1:0,1"),其"VF State"c为"A. A",被映射到MVF( "MVF O,O") (1302)。 属于VH2的VF("VF 2:0,1"),其"VF State"c为"I. U",未被映射到MVF(1303)。属于VH3 的VF( "VF3:0, 1"),其"VF State" c为"A. A",被映射到("MVF 0,1")(1304)。这些VF 映射的结果是,ED2在初始状态下可以从RP1以及RP3进行访问,不可以从RPO以及RP2进 行访问。〈设定以及利用例〉 在本实施方式中,根据以上初始设定,通过管理者进行的设定,作为利用例,在RPO 和RP2为RP的VH中执行EDO (搭载FEI/F102)和ED1 (搭载CMI/F104)之间的数据转发, 在RP1和RP3为RP的VH中执行ED2 (搭载BEI/F106)和ED1 (搭载CMI/F104)之间的数据 转发。图26等表示上述那样的利用例。 在图26的利用例中,在内部网络(CN)中,作为数据路径,将ED0的MVF(FEI/F102) 和ED1的MVF(CMI/F104)设定为可以从相同RP(例如RPO)访问,并且将ED2的MVF(BEI/ F106)和ED1的MVF(CMI/F104)设定为可以从相同RP(例如RP3)访问。因此,ED1具备访 问ED1的根端口数以上的MVF,EDO和ED2具备访问ED1的根端口数的半数以上的MVF。结 果,EDO的MVF(FEI/F102)和ED1的MVF (CMI/F104)之间,以及ED2的MVF (BEI/F106)禾PED1 的MVF(CMI/F104)之间可以进行数据转发。 另外,在内部网络(CN)中,分别与处理器21连接的2个RC30(RC0、RC1)分别具有
2个RP (第1RP、第2RP),作为数据路径,各RC30的第1RP (RP0、RP2)被设定为可以对EDO的
MVF(FEI/F102)以及ED1的MVF(CMI/F104)进行访问,并且,各RC30的第2RP(RP1、RP3)被
设定为可以对ED2的MVF(BEI/F106)以及ED1的MVF(CMI/F104)进行访问。例如,在与CPUO连接的RCO中,可以从RPO对FEI/F102 (EDO)和CMI/F104(ED1)
进行访问,可以从RP1对BEI/F106(ED2)和CMI/F104(ED1)进行访问。 通过本利用例,可以同时并行地、高效地处理使用了 FEI/F102和CMI/F104的数据
转发(例如来自上位装置的数据输入输出)、和使用了 BEI/F106和CMI/F104的数据转发
(例如针对DA15的数据输入输出)。 在本利用例的存储装置10中,经由CM23进行FEI/F102和BEI/F106之间的数据转 发。因此,在FEI/F102侧和BEI/F106侧应用VH不同的所述设定例那样的VH的分配。另 外,CPUO使用RCO的两个RP(RP0、RP1),另外,CPU1使用RC1的两个RP(RP2、RP3),由此,各 处理器21可以控制FEI/F102侧和BEI/F106侧的双方的数据转发。在负荷分散以及冗余性方面,也将其应用于存储装置。
〈内部网络的拓扑〉 图14中表示了以上说明的PCIe架构的初始设定后的、SC20内部网络(CN)的 虚拟拓扑。全部RP1401经由虚拟交换器架构(VS Fabric) 1402 (对应于交换器40 (VS)) 与EPD50(ED0、 ED1、 ED2)内的、分配给各个VH的VF1406 (面向RPO的VF、面向RP1的VF、 面向RP2的VF、面向RP3的VF)连接。VSW Fabricl402和各EPD50 (VF1406)之间,通过 MR-Link(1403、 1404、 1405)连接。VF1406通过VF映射(VF Mapping) 1407与各EPD50的 MVF1408("MVF O,O","MVF O,l"等)连接。在本例的PCIe架构中,针对每个EPD50具备 分配给各RP的(分配给各VH)的VF,各RP可以独立地访问各EPD50内VF。但是实际上能 够使用EPD50的功能的VF仅仅是通过VF映射与MVF连接的VF。
〈故障切换管理表〉 图15是故障切换管理表1500 (所述FT111)的说明图。故障切换管理表1500如 前所述,由故障切换控制程序(FP) 110参照,被存储在CM23的一部分中设置的共享存储区 域中。FP110可以从各RP(RPO RP3)参照故障切换管理表1500,使用在本表中设定为可 以使用("E":Enable)的数据路径,访问EPD50 (EDO ED2)。连接存储了故障切换管理表 1500的CM23的ED1,在本表内存储的数据中发生了变更的情况下,向全部RP(RPO RP3) 发送中断。接收到中断的各RP确认本表的变更内容,并根据需要变更访问各EPD50的数据 路径。 故障切换管理表1500,作为项目而具有"正常时数据路径"A(a d)、"代替数据 路径"B(e h)、"VF迁移"C(i)、"连累数据路径(第1级链路故障)"D(j i)、"连累 数据路径(第2级链路故障)"E (m o)。关于"正常时数据路径"A,具有"S"(状态)a、 "Root" (RP)b、"ED" (EPD)c、"VF"d。同样地,关于"代替数据路径"B,具有"S"e、"Root"f 、 "ED"g、"VF"h。关于"连累数据路径(第1级链路故障)"D,具有"Root" (RP) j、"ED" (EPD) k、"VF"l。同样地,关于"连累数据路径(第2级链路故障)"E,具有"Root"m、"ED"n、 "VF,,o。 在图15的设定例中,故障切换前的正常时(通常时候)的数据路径成为图26(例 如数据路径K1)所示那样。"正常时数据路径"A(a d)存储各RP为了对各EPD50进行访问而使用的、正常 时(或初始状态)的数据路径("正常时数据路径":第l数据路径)及其状态。正常时数 据路径中的b存储访问源RP, c存储访问目的地EPD50, d存储访问目的地EPD50内VF, a存 储该数据路径的状态。状态a是"E"为有效(Enable) 、"D"为无效(Disable)。
在"代替数据路径"B(e h)存储当A(a d)中存储的正常时(或初始状态)的 数据路径中发生了故障时,作为该数据路径的替代而使用的数据路径("代替数据路径": 第2数据路径)及其状态。代替数据路径中的f存储访问源RP,g存储访问目的地EPD50, h存储访问目的地EPD50内VF, e存储该数据路径的状态。 与正常数据路径对应的状态a和代替数据路径的状态e,在数据路径相同的情况 下存储相同值。 "VF迁移"C(i),存储是否需要用于执行数据路径的故障切换(从第1向第2数据 路径的切换)的VF迁移(VF Migration) (yes/no)的信息。关于访问目的地EPD50为ED1的数据路径,将VF迁移设定为不需要(no)。 在本实施方式中,作为特征之一,是使用VF迁移来执行数据路径的故障切换。例 如,ED0在初始状态下,可以从RP0和RP2访问(图26,数据路径K1、K3)。初始状态的数据 路径中发生了故障时,访问源RP的变更(以及访问目的地VF的变更)和VF迁移的执行的 结果是,例如以可以从RP1或RP2向EDO进行访问的方式变更数据路径,从而可以回避故障 链路(图16、图17、图26、图27、从K1向K2的故障切换的情况)。 图27表示与图15的设定对应的各个代替数据路径(省略到ED1的路径)。例如 与Kl对应的K2、与K3对应的K4。在正常时数据路径和代替数据路径中经由不同的链路。
另外,ED1针对来自全部RP(4个)的访问,映射了MVF(4个),因此,即使在从某RP 向ED1的访问中发生了故障时,仅通过变更访问源RP(不需要"VF迁移"),可以从其它RP 向ED1访问(ED1中不需要将VF迁移控制功能设为有效)。"连累数据路径(第1级链路故障)"D(j 1)以及"连累数据路径(第2级链路 故障)"E (m o)存储当A中存储的数据路径中发生了故障时,有可能同时发生故障的数据 路径(连累数据路径)。例如,考虑到连接RPO和SWOO的链路上发生了故障时,除了从RPO 向EDO访问的数据路径以外,从RPO向ED1、 ED2进行访问的数据路径上也发生故障。
在将各RP和作为RP连接侧交换器的第1交换器40(SW00)或第2交换器40(SW01) 连接的链路(第1级链路、上游侧链路)上发生了故障时(第1级链路故障),关于被正常 时数据路径连累而发生故障的数据路径(连累数据路径),j存储访问源RP, k存储访问目 的地EPD50, 1存储访问目的地EPD50内VF。 在将作为RP连接侧交换器的SWOO或SW01、作为EPD50连接侧交换器的第3交换 器40 (SW10)、第4交换器40 (SW11)或第5交换器(SW12)连接的链路(第2级链路)上发 生了故障时(第2级链路故障),关于被正常时数据路径连累而发生故障的数据路径(连累 数据路径),m存储访问源RP, n存储访问目的地EPD50, o存储访问目的地EPD50内VF。
另外,在本例中,具备FEI/F102的EDO和具备CMI/F104的ED1通过相同VH进行 数据转发,并且,具备BEI/F106的ED2和具备CMI/F104的ED1通过相同VH进行数据转发。 存储装置10的管理者,以使该转发条件在正常时数据路径以及代替数据路径的双方中成 立的方式设定故障切换管理表1500。
〈故障切换动作〉 图16以及图17是故障切换动作的说明图。是根据所述图1的结构,从第1数据 路径Kl向第2数据路径K2的故障切换的情况。 首先,在图16中,作为正常时数据路径,具有例如从RCO内的RPO通过第l交换器 40 (SWOO)和第3交换器40 (SW10)对EDO进行访问的第1数据路径Kl (经由链路L1、L2、L5 的路径)。并且,考虑第1数据路径Kl上的、例如SWOO和SW10之间的链路L2中发生了故 障的情况。此时,当参照故障切换管理表1500时可知,与发生了故障的数据路径(Kl)对应 的代替数据路径,是从RCO内的RP1通过第2交换器40 (SW01)和第3交换器40 (SW10)对 EDO进行访问的第2数据路径K2 (经由链路L3、 L4、 L5的路径)。因此,进行从第1数据路 径Kl向第2数据路径K2的故障切换动作。 图17是关于图14中所示的CN的虚拟拓扑中的数据路径变更(以及用于实现故障 切换的VF迁移的动作)的说明图。左侧是从RP0看到的拓扑,右侧是从RP1看到的拓扑。
图16的第1数据路径Kl (正常一故障状态),相当于图17中从RC0内的RPO经由 VS Fabric(VS)到EDO内的第1VF1702( "VF0:0,1")的数据路径。在正常时,通过VF映射 (VF M即ping) 1704将第1VF1702( "VF0:0,1")禾PMVF1701( "MVFO,O")连接(映射)。
另外,图16的第2数据路径K2(代替),相当于图17中从RC0内的RP1经由VS Fabric(VS)到EDO内的第2VF1703( "VF1:0,1")的数据路径。 如前所述,为了从K1向K2进行故障切换,将访问源RP从RP0变更为RP1,而且进 行VF迁移(变更VF和MVF的映射)。此外,与VF迁移联动地变更访问目的地VF。 MR-PCIM 为了将第2VF1703( "VF1:0,1")和MVF1701( "MVFO,O")连接(映射)而执行VF迁移(VF Migration)。该VF迁移的执行结果是,解除了基于所述VF映射1704的MVF1701 ( "MVFO, 0")和第1VF1702( "VF0:0,1")的连接,通过新的VF映射1705将MVF1701 ( "MVFO,O") 和第2VF1703( "VF1:0,1")连接。通过本例的VF迁移,访问目的地VF被从"VFO:O, l"变 更为"VF 1:0, 1 ",从VF映射1704的状态变更为VF映射1705的状态。结果,第2数据路径 K2成为可以使用。 如上所述,在本实施方式中,通过访问源RP变更和VF迁移来实现数据路径的故障 切换。〈数据路径故障切换方法> 图18是本实施方式的存储装置10中的、数据路径故障切换方法以及处理(1800) 的流程(S表示处理步骤)。作为处理的概要,MR-PCIM检测数据路径上的错误(故障), FP110参照FT111来确认故障切换的条件,MR-PCIM以及SR-PCIM进行VF迁移控制。
在S1801中,当MR-PCIM检测出RP和EPD50之间、或者2个EPD50间的数据转发 (EPD50访问)中的超过预定次数的错误时,将其结果通知给故障切换控制程序(FP)llO。
在S1802中,FP110参照故障切换管理表(FT) 1500 (111),确认发生了故障的数据 路径的故障切换条件(所述代替数据路径、是否需要VF迁移、连累数据路径等)。
在S1803中,FP110参照FT1500的"VF迁移"C的项目,判定是否需要VF迁移。当 需要(yes)时进入S1804。 在S1804中,FP110将FT1500的故障状态的数据路径("正常时数据路径"A)的 状态a设定为"D" (Disable)。 在S1805中,FP110对MR-PCM请求执行针对对象EPD50内VF的、从"VF h:f, s" 向"VF a:f, c"的VF迁移(VF Migration) (h, f, s, a, c等是数值)。 在S1806中,MR-PCM执行VF迁移(VF Migration),并更新EPD50的VF映射(VF Ma卯ing)管理表。 在S1807中,FP110将FT1500的代替数据路径("代替数据路径"B)的状态e设 定为"E,, (Enable)。 在S1808中,判定有无未处理的连累数据路径。在有未处理的连累数据路径的情 况下,返回S1802,在没有的情况下结束。例如,在将RP和交换器40连接的链路(上游侧) 中发生了故障时,在向多个EPD50的访问中发生故障,需要执行多次的数据路径故障切换。 在这种情况下,成为进行数据路径故障切换的对象的连累数据路径,被存储在FT1500的 "连累数据路径"D、E中。 另一方面,在所述S1803中,当VF迁移为否(no)时进入S18Q9。在S1809中判定故障数据路径是否是正在使用的数据路径。关于正在使用的数据路径,FT1500的状态变 为"E" (Enable)。当状态为"E" (Enable)时进入S1810,当状态为"D" (Disable)时进入 S1808。本例中的图15的FT1500的设定中,不需要数据路径故障切换时的VF迁移的、从各 RP向EDI (搭载CMI/F104)的访问的数据路径的状态为"E" (Enable)。
在S1810中,FP110将FT1500的故障数据路径的状态设定为"D" (Disable)。
在S1811中,MR-PCM使发生了访问故障的VF从"Active. Availabel状态(A. A)" 迁移到"Active. MigrateOut状态(A. M)"(活动 迁出)。 在S1812中,在故障VH内工作的SR-PCM或其代替单元,使发生了访问故障的VF 从"A. M"迁移至lj" Inactive. Unavailable状态(I. U)"。该代替单元,在SR-PCM和VF之间 的通信故障时,代替SR-PCIM来控制VF状态迁移(作为实施方式2,在后面叙述)。
〈每个EPD的VF映射管理表(2) > 图19表示EDO (搭载FEI/F102)的VF映射管理表(1100b)的一例(变更后)。在 图19的状态下,对应于图11的VF映射管理表1100的状态,将EDO的MVF("MVF 0, 1")的 映射从VH2(VF"VF 2:0, 1")向VH3(VF "VF 3:0, 1")变更(行1901U902)。如图12所 示,EDI (搭载CMI/F104)与EDO同样地可以通过VH3来访问("VF状态"为"A. A"),因此 即使是图19的映射状态,EDO和EDI也可以在相同VH3内工作。但是,如图13所示,正在 由ED2使用VH3,因此FEI/F102侧和BEI/F106侧的数据转发在相同VH3内发生。 [O178] 图20表示ED2 (搭载BEI/F106)的VF映射管理表(1300b)的一例。在图20的状 态下,对应于图13的VF映射管理表1300的状态,正在将ED2的MVF( "MVF 0, 1")的映射 从VH3( "VF 3:0, 1")向VH2 ( "VF 2:0, 1")变更(行2001、2002)。 这些VF迁移(图19、图20)的结果是,具备FEI/F102的EDO和具备CMI/F104的 EDI通过VHO和VH3进行数据转发,并且,具备BEI/F106的ED2和具备CMI/F104的EDI通 过VH1和VH2进行数据转发。如此,将在FEI/F102和BEI/F106的数据转发中使用的VH分 离,可以有效地实现处理器负荷以及架构(fabric)(内部网络(CN))内通信量的分散等。
图28表示图19和图20的VF映射应用时的数据路径的例子(省略到EDI的路 径)。 此外,不限于故障发生时,未发生故障的数据路径可以与故障数据路径的故障切 换同样地,执行从图13到图20那样的数据路径变更。
(实施方式2) 接下来,使用图21以后说明实施方式2。实施方式2是在实施方式1上追加了功 能(VF状态迁移单元)的结构。
〈VF状态迁移单元〉 说明与基于所述SR-PCIM的VF状态迁移对应的代替单元(VF状态迁移单元)。VF 迁移(VF Migration)由MR-PCIM执行,但VF迁移中必需的VF状态迁移的一部分由SR-PC頂 执行。但是,考虑到当数据路径故障发生时等,SR-PCIM和VF之间的通信变得困难。因此, 在实施方式2中代替SR-PCIM而设置使VF进行状态迁移的VF状态迁移单元。
图21表示可以代替SR-PCM使VF进行状态迁移的EPD51(例如ED0)的块结 构。EPD51,对应于图2中所示的EPD50(ED0)的结构,首先,追加了功能号码1的一个 BF2102("BF O,l")。 BF2102("BF 0:1")的冒号后的功能号码1,表示用于VF的状态控制。EPD51还具备BF2102附带的4个PF2103("PF 0:1"、"PF 1:1"、"PF 2:1"、"PF 3:1")。 另外,追加了 VF状态(VF State)控制部2104。 VF状态控制部2104,与PF2103以及VF204 以及管理端口 2105连接。VF状态控制部2104,可以使功能号码0的4个VF204("VF 0:0, 1"、"VF 1:0,1"、"VF 2:0,1"、"VF 3:0, 1")进行状态迁移。 BF2102以及PF2103是可以控制与VF204等关联的VF的状态迁移的功能。BF2102 与EPD51的MR-IOV规范相关,管理与功能号码1的功能相关的特性。针对每个VH而具备 PF2103,以便可以从各RP访问,PF2103与VF状态控制部2104相连。各RP可以经由分配 给各VH的功能号码1的PF,与VF状态控制部2104通信。 在实施方式2中,作为使用了 EPD51的VF状态迁移以及控制的方法(结构),有以 下3种。是可以通过设定等来选择性地使用它们的结构。此外,也可以成为仅具备某一种 方法的结构。 第l方法(基于进入(inbound)通信的方法)VF状态控制部2104,通过与PF2103 连接,通过来自SC20内动作的程序(例如,与该EPD51正常连接的数据路径中的RP上的处 理器21执行的FP110)的指令,可以使VF204( "VF 0:0,1"、"VF 1:0,1"、"VF 2:0,1"、"VF 3:0, 1")进行状态迁移。 当无法进行基于某VH(RP)中的SR-PCIM的、向EPD51内VF的访问时,在可以正常 访问的其它VH (RP)中,经由功能号码1的PF,向EPD51内的VF状态控制部2104进行访问。 例如,对于ED0,不从RP0、而从RP1进行访问(利用PF 2103("PF l:l"))。此外,在成为 仅第1方法的结构时,不需要管理端口 2105。 第2方法(基于外出(outbound)通信的方法)另外,VF状态控制部2104经由管 理端口 2105和网络NOO与SVP190连接,由此,可以接收基于来自在PCIe架构外工作的程 序的外出通信的命令,使VF204( "VF0:0,1"、"VF 1:0, 1"、"VF2:0, 1"、"VF3:0, 1")进行状 态迁移。此外,在采用仅第2方法的结构时,不需要BF2102、PF2103。 第3方法(基于自主功能的方法)另外,VF状态控制部2104,通过自主功能(通 过自身进行与VF状态迁移相关的判断*控制的功能),可以使VF204("VF 0:0, 1"、"VF1:0, 1"、"VF2:0,1"、"VF3:0,1")进行状态迁移。此时,与BF202( "BF 0:0")相连的VF状态控 制部2104,更新BF202( "BF 0:0")内的VF映射管理表。此外,在采用仅第3方法的结构 时,不需要管理端口 2105。 如上所述,VF状态控制部2104,关于功能号码0的VF的状态控制,有3个方法,
但关于选择使用哪个方法,例如可以由管理者经由管理端口2105针对每个EPD51预先设定等。 〈VF迁移处理(l)〉 图22(A) 、 (B)表示使用第1方法,在EPD51中使用功能号码1的功能使功能号码 0的VF进行状态迁移,执行VF迁移(VF Migration)的处理(2200)的流程。
在S2201中,实施方式2中的FP110等的高级别软件对MR-PCM请求从作为发生 了访问故障的EPD51内VF的"VF h:f, s"向"VF a:f, c"的VF迁移(VF Migration)。
用于执行VF迁移的必要条件是转移目的地VF的状态为"Inactive. Unavailable状态(I. U)",并且转移源VF的状态为"Active. Available状态(A. A)"或者 "Dormant. Migration状态(D. M)"(休目民.迁移)。
在S2202中,MR-PCIM判定转移目的地VF "VF a:f, c"是否是"I.U"。在"是"的 情况下进入S2203。在"否"的情况下,由于VF迁移的必要条件不成立,因此进行错误结束。
在S2203中,MR-PCIM判定转移源VF "VF h:f, s"是否是"A.A"。在"是"的情况 下进入S2204。在"否"的情况下进入S2221。 在S2204中,MR-PCM,通过改写VF状态条目(VF State entry)(与VF映射管理 表的"VF State" c的条目同值),使作为发生了访问故障的EPD51内VF的"VF h:f, s"的 VF状态(VF State)从"A. A"向"A. M"迁移(在"VHh"中,启动向"A. M"的迁移操作)。在 该迁移中将SR VF迁移状态位(SR VFMigration Status bit)进行置位(set)(向图22(B) 的S2205接续)。此外,该动作与图25的(1)对应。 图22 (B),在S2205中,MR-PCM等(MR-PCM或者可以与MR-PCM通信的软件 (FP110等)),选定可以与发生了访问故障的EPD51通信的VH、即"VH n" (n # h)。
在S2206中,MR-PCM等经由PF2103"PF n: l"与发生了访问故障的EPD51内的VF 状态控制部2104通信,使VF状态控制部2104对VF"VF h:f , s"发行FLR(Function Level Reset)(功能等级复位)。此外,该动作与图25的(2)对应。 在S2207中,MR-PCIM等经由PF2103"PF n:l"(n^h)与发生了访问故障的EPD51 的VF状态控制部2104通信,使VF "VF h:f, s"的VF状态从"A. M"向"I. U"迁移。在该迁 移中将MR VF迁移状态位进行置位,启动向MR-PCM的中断。此外,该动作与图25的(3) 对应。 在S2208中,接收了上述中断的MR-RCM,为了确定中断的原因,浏览发生了访问 故障的EPD51的VF映射管理表,查找从"A.M"迁移到"I.U"的VF( "VF h:f, s")。此夕卜, 该动作与图25的(4)对应。 在S2224中,MR-PCIM保存与VF "VF h:f, s"关联的VF映射条目(VF M即entry) 的值。另外,该动作与图25的(5)对应。在S2225中,MR-PCIM在与VF "VF h:f, s"关联 的VF M即entry中设置表示"empty slot"(空时隙)的0。另外,该动作与图25的(6) 对应。在S2226中,MR-PCIM在与VF "VFa:f, c"关联的VF映射条目中设置在S2224中保 存的值。另外,该动作与图25的(7)对应。 在S2227中,MR-PCIM通过改写与VF "VF a:f,c"关联的VF M即entry,对于 VF "VF a:f,c" ( "VH a")启动从"I. U"向"D. M"的迁移操作。在该迁移中将SR VF迁移 状态位进行置位。另外,该动作与图25的(8)对应。 在S2228中,在与VF "VF a:f, c"关联的"VH a"内运行的SR-PCIM,浏览VF状态 阵列(VF State array)来确定迁移到"D. M"的VF "VF a:f, c",并且对该VF "VF a:f, c" 发行FLR。另外,该动作与图25的(9)对应。 在S2229中,在"VH a"中运行的SR-PCM,在开始使用VF"VF a: f , c"前,使VF"VF a:f, c"的VF状态从"D.M"向"A.A"迁移。由此,正常地结束VF转移。另外,该动作与图 25的(10)对应。 另一方面,在图22(A)的S2221中,判定转移源VF "VF h: f , s"是否是"D. M"。在 "是"的情况下进入S2222。在"否"的情况下,由于VF迁移的必要条件不成立,因此结束。
在S2222中,MR-PCIM改写与VF"VF h:f,s"关联的VF State entry,撤销VF "VF h:f,s"的迁移操作。其结果是,VF "VF h: f , s"从"D. M"向"I. U"迁移(此后,向图23(B)的S2224接续)。另外,该动作与图25的(11)对应。 此外,在与MR-I0V规范中的S2205 S2207相当的处理中,首先在作为与VF "VF h: f , s"关联的VH的"VH h"中运行的SR-PCIM浏览VF State arrray,确定向"A. M"迁移 的VF "VF h:f, s",并中止VF "VF h:f, s"的使用,并对VF "VF h:f, s"发行FLR。接着, SR-PCIM使VF "VF h:f, s"的VF状态从"A. M"向"I. U"迁移,并且在该迁移中将MR VF迁 移状态位进行置位,启动向MR-PCIM的中断。 如上所述,在实施方式2 (第1方法)的故障切换方法以及VF迁移处理中,特征在 于,在S2205 S2207的处理中使用在EPD51内设置的VF状态控制部2104来处理在上述 MR-IOV规范中应该由SR-PCIM处理的步骤。
〈VF迁移处理(2)〉 图23是使用第2方法,在EPD51中MR-PCIM使用经由管理端口 2105和网络N00 的外出通信,通过功能号码1的功能使功能号码O的VF进行状态迁移,执行VF迁移的处理 (2300)的流程。 在第2方法中,首先,最初与图22(A)的S2201 S2204等的处理相同,接着在图 23中,作为与第1方法不同的部分而具有S2305、S2306。 在S2305中,MR-PCIM等(MR-PCIM或可以与MR-PCIM通信的软件(故障切换控制 程序等)),与发生了访问故障的EPD51内VF状态控制部2104,进行经由网络00的外出通 信。使VF状态控制部2104对VF( "VF h:f,s")发行FLR。 在S2306中,MR-PCIM等与发生了访问故障的EPD51的VF状态控制部2104进行 经由网络OO的外出通信,使VF( "VF h:f,s")的VF状态从"A. M"向"I. U"迁移。在该迁 移中,将MR VF迁移状态位进行置位,并且启动向MR-PCIM的中断。以后的处理与前文所述 的相同。 如上所述,在实施方式2 (第2方法)的故障切换方法以及VF迁移处理中,特征在 于,在S2305 S2306中使用在EPD51内设置的VF状态控制部2104和外出通信,来处理在 MR-IOV规范中应该由SR-PCIM处理的步骤。
〈VF迁移处理(3)〉 图24是使用第3方法,在EPD51中由VF状态控制部2104的自主控制功能使功能 号码0的VF进行状态迁移,执行VF迁移的处理(2400)的流程。 在第3方法中,首先,最初与图22(A)的S2201 S2204等处理相同,另外,S2221 S2222、图22(B)的S2224 S2229等处理也相同,接着,在图24中,作为与第1方法不同的 部分而具有S2405 S2410。 在S2405中,发生了访问故障的EPD51的VF状态控制部2104确认是否可以与发 生了故障的VH的SR-PCIM通信。例如,在从RP3向端点设备内的VF(VF3:0, 1)访问的数据 路径上发生了故障的情况下,VF状态控制部2104控制与VF(VF3:0, 1)属于相同VH的功能 号码1的PF(PF3, 1) 。 VF状态控制部2104实施从PF(PF3, 1)向RP3的访问测试,该访问测 试与从RP3对VF(VF3:0,1)的访问使用相同的物理数据路径。根据其结果,判定在VH3内 运行的SR-PCIM是否可以与VF(VF3:0,1)通信。 在S2406中,判定发生了访问故障的EPD51是否可以与故障VH内SR-PCIM通信。 若可以,则进入S2409。若不可以,则进入S2407。
在S2407中,发生了访问故障的EPD51的VF状态控制部2104,对于迁移到"A. M" 的VF "VF h:f, s"发行FLR。 在S2408中,发生了访问故障的EPD51的VF状态控制部2104使VF "VFh:f,s"从 "A.M"向"I.U"迁移。在该迁移中,将MR VF迁移状态位进行置位,启动向MR-PCIM的中断。
另一方面,在S2409中,在与VF "VF h:f, s"关联的"VH h"中运行的SR-PCIM浏 览VF State array来确定迁移到"A. M"的VF "VF h:f,s",中止该VF "VF h:f,s"的使用, 并对VF "VF h:f, s"发行FLR。 在S2410中,SR-PCIM使VF "VF h:f , s"从"A. M"迁移至lj "I. U"。在该迁移中,将 MRVF迁移状态位进行置位,启动向MR-PCIM的中断。 在S2411中,接收到中断的MR-PCIM为了确定中断的原因,查找从"A.M"迁移到 "I.U"的VF( "VF h:f,s")。以后的处理与前文所述的相同。 如上所述,在实施方式2 (第3方法)的故障切换方法以及VF迁移处理中,特征在 于,在S2405 S2410中,通过在EPD51内设置的VF状态控制部2104的自主控制,来处理 在MR-IOV规范中应该由SR-PCIM处理的步骤。
〈VF迁移的状态迁移> 图25为了补充而表示与基于MR-IOV规范的VF迁移有关的状态迁移。VF具有4个 状态("A. A Active. Available状态","A. M(Active. MigrateOut状态)","I. U(Inactive. Unavailable状态)","D. M(Dormant. Migrateln状态(休眠 迁入))")。实线的箭头表示 MR-PCIM的状态迁移。虚线的箭头表示SR-PCIM的状态迁移。"A. A","A. M",是VF active (完 全可由SR使用),"I. U"是VF inavtive (不可由SR使用),"D. M"是VF Dormant (对应于 SR)。 在故障切换动作时,作为与VF迁移相伴的VF状态迁移控制,在(1)中,通过 MR-PCIM的控制,从"A. A"向"A. M"迁移,在(3)中,通过SR-PCM的控制,从"A. M"向"U. U" 迁移。但是在(3)中从"A.M"向"U.U"迁移时,由于数据路径故障等,有时不可能进行 SR-PCIM的控制(VF状态迁移控制)。因此,如前所述设置了VF状态迁移控制的代替单元。
如上所述,根据各实施方式,在对SC20的内部网络(CN)应用了 MR-IOV的存储装 置10中,通过MR-PCIM等,根据该数据路径中的访问源RP变更和访问目的地EPD内VF的 VF迁移的动作,可以执行从RP到EPD的数据路径的故障切换。因此,在使用了本存储装置 IO的系统中,即使在数据路径中发生了故障时,也可以故障切换到其它数据路径,确保了高 可靠性。 以上,根据实施方式具体说明了本发明人做出的发明,但本发明不限定于所述实 施方式,在不脱离其主旨的范围内,当然可以进行各种变更。
产业上的可利用性 本发明不仅可以应用于具有内部网络的存储装置,也可以广泛应用于刀片型服务 器(blade server)等计算机及其内部网络技术等。
2权利要求
一种存储装置,具有通过PCI Express连接了存储控制器内的组件的内部网络,其特征在于,所述存储控制器及其内部网络具有总体上具有多个根端口的多个根联合体,每个根联合体具有一个以上根端口;与每个所述根联合体连接的多个处理器;多个端点设备,其是具备预定的接口、并具有可以从所述多个根端口的各个根端口访问的多个虚拟功能的多根已知设备;以及交换器,其是将所述多个根端口和所述多个端点设备连接来构成数据路径、并具备多个端口的多根已知交换器,所述多个端点设备中的至少一个,可以执行变更所述虚拟功能和所述预定的接口之间的映射的虚拟功能迁移,所述存储控制器及其内部网络,以全部所述多个根端口可以对全部所述多个端点设备内的虚拟功能进行访问的方式,设定所述交换器以及所述端点设备,所述存储控制器及其内部网络,作为当从所述多个根端口之一经由所述交换器到所述多个端点设备之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理,在从该故障状态的第1数据路径向用于代替的第2数据路径的切换中,进行以下处理切换该数据路径的访问源根端口的处理、以及通过所述虚拟功能迁移来切换该访问目的地端点设备的虚拟功能和所述预定的接口之间的映射的处理。
2. 根据权利要求l所述的存储装置,其特征在于, 作为所述端点设备,具有具备用于连接上位装置的前端接口、并可以执行所述虚拟功能迁移的第1端点设备;和具备用于连接存储装置群的后端接口、并可以执行所述虚拟功能迁移的第2端点设备,所述交换器将所述多个根端口和所述第1以及第2端点设备连接, 所述存储控制器及其内部网络,以全部所述多个根端口可以对全部所述多个端点设备 内的虚拟功能进行访问的方式,设定所述交换器以及所述第1以及第2端点设备,所述存储控制器及其内部网络,作为当从所述多个根端口之一到所述第1或第2端点 设备之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理,在从该故障 状态的第l数据路径向用于代替的第2数据路径的切换中,进行以下处理切换该数据路径 的访问源根端口的处理、以及通过所述虚拟功能迁移来切换该访问目的地端点设备的虚拟 功能和所述预定的接口之间的映射的处理。
3. 根据权利要求2所述的存储装置,其特征在于,作为所述端点设备具有第3端点设备,该第3端点设备具备用于连接高速缓冲存储器 的高速缓冲存储器接口,所述交换器将所述多个根端口和所述第1、第2以及第3端点设备连接,以全部所述多个根端口可以对全部所述多个端点设备内的虚拟功能进行访问的方式, 设定所述交换器以及所述第1、第2以及第3端点设备,作为当从所述多个根端口之一到所述第1或第2或第3端点设备之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理,在从该故障状态的第1数据路径向用 于代替的第2数据路径的切换中,进行以下处理切换该数据路径的访问源根端口的处理、 以及通过所述虚拟功能迁移来切换该访问目的地端点设备的虚拟功能和所述预定的接口 之间的映射的处理。
4. 根据权利要求3所述的存储装置,其特征在于,所述第3端点设备具备对应于所述虚拟功能而被映射的任务虚拟功能,并针对所述任 务虚拟功能对应附加了所述高速缓冲存储器接口,该第3端点设备中具备的任务虚拟功能 的数量在访问该第3端点设备的根端口的数量以上。
5. 根据权利要求3所述的存储装置,其特征在于, 在所述存储控制器及其内部网络中,把成为所述第1端点设备的任务虚拟功能的所述前端接口、和成为所述第3端点设备 的任务虚拟功能的所述高速缓冲存储器接口设定为可以从相同根端口进行访问,把成为所述第2端点设备的任务虚拟功能的所述后端接口、和成为所述第3端点设备 的任务虚拟功能的所述高速缓冲存储器接口设定为可以从相同根端口进行访问。
6. 根据权利要求3所述的存储装置,其特征在于, 所述多个根联合体分别具有第1根端口和第2根端口, 在所述存储控制器及其内部网络中,把各个根联合体的所述第1根端口设定为可以对成为所述第1端点设备的任务虚拟功 能的所述前端接口 、以及成为所述第3端点设备的任务虚拟功能的所述高速缓冲存储器接 口进行访问,把各个根联合体的所述第2根端口设定为可以对成为所述第2端点设备的任务虚拟功 能的所述后端接口 、以及成为所述第3端点设备的任务虚拟功能的所述高速缓冲存储器接 口进行访问。
7. 根据权利要求l所述的存储装置,其特征在于,所述端点设备具备用于与该存储装置的数据读出或写入相关的数据转发的第1功 能、可以对与所述第1功能相伴的虚拟功能的状态迁移进行控制的第2功能。
8. 根据权利要求7所述的存储装置,其特征在于,在所述存储控制器或者与其连接的维护终端装置中,具备多根PCI管理器的程序, 在从所述根端口到端点设备的虚拟层次的结构中,所述端点设备,通过从所述多根PCI管理器的程序向所述第2功能的、未发生数据路径 故障的虚拟层次中的进入通信,使所述第1功能的虚拟功能进行状态迁移。
9. 根据权利要求7所述的存储装置,其特征在于,在所述存储控制器或者与其连接的维护终端装置中,具备多根PCI管理器的程序, 所述端点设备,通过从所述多根PCI管理器的程序向所述第2功能的外出通信,使所述 第1功能的虚拟功能进行状态迁移。
10. 根据权利要求7所述的存储装置,其特征在于, 在所述存储控制器中具备单根PCI管理器的程序, 在从所述根端口到端点设备的虚拟层次的结构中,所述端点设备,通过自主功能判定可否进行发生了数据路径故障的虚拟层次中的所述单根PCI管理器的程序与所述第2功能之间的通信,当不可进行通信时,使所述第1功能的 虚拟功能进行状态迁移。
11. 根据权利要求l所述的存储装置,其特征在于, 所述存储控制器及其内部网络管理以下多个表 管理所述根端口和端点设备内虚拟功能的对应关系的表、 管理所述虚拟功能和所述预定的接口之间的映射的表、以及 管理所述故障切换时的所述虚拟功能的迁移的表,所述存储控制器及其内部网络,在执行所述数据路径的故障切换的处理时,参照所述 多个表来进行以下处理切换所述数据路径的访问源根端口的处理、和通过所述虚拟功能 迁移来切换所述访问目的地端点设备的虚拟功能和所述预定的接口之间的映射的处理。
12. —种通过PCI E邓ress连接了存储控制器内的组件的存储控制器内部网络的数据 路径故障切换方法,其特征在于,所述存储控制器的内部网络具有总体上多个根端口 ;与具有所述根端口的根联合体 连接的处理器;具备预定的接口、并具有可以从所述多个根端口的各个根端口访问的多个 虚拟功能的多个端点设备;将所述多个根端口和所述多个端点设备连接来构成数据路径、 并具备多个端口的交换器,所述多个端点设备中的至少一个,可以执行变更所述虚拟功能和所述预定的接口之间 的映射的虚拟功能迁移,所述存储控制器的内部网络,以全部所述多个根端口可以对全部所述多个端点设备内 的虚拟功能进行访问的方式,设定所述交换器以及所述端点设备,所述存储控制器的内部网络,作为当从所述多个根端口之一经由所述交换器到所述多 个端点设备之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理步骤, 在从该故障状态的第l数据路径向用于代替的第2数据路径的切换中,具有以下处理步骤 切换该数据路径的访问源根端口的处理步骤;通过所述虚拟功能迁移来切换该访问目的地 端点设备的虚拟功能和所述预定的接口之间的映射的处理步骤。
13. 根据权利要求12所述的存储控制器内部网络的数据路径故障切换方法,其特征在于,在所述存储控制器的内部网络中具备单根PCI管理器的程序、以及故障切换控制程序,在所述存储控制器的内部网络或者与其连接的维护终端装置中具备多根PCI管理器 的程序,所述存储控制器的内部网络,作为当从所述多个根端口之一经由所述交换器到所述多 个端点设备之一的数据路径之一中发生了故障时、执行数据路径的故障切换的处理,具有 以下处理步骤所述多根PCI管理器的程序向所述故障切换控制程序通知发生数据路径故障的处理 步骤;所述故障切换控制程序参照所述内部网络内的故障切换管理表,并根据上述所通知的 信息,向所述多根PCI管理器的程序请求所述虚拟功能迁移的处理步骤;所述多根PCI管理器,针对上述请求执行所述虚拟功能迁移,并更新对所述内部网络内的虚拟功能和所述预定的接口之间的映射进行管理的表的处理步骤;以及所述故障切换控制程序,伴随着所述虚拟功能迁移的执行,更新所述故障切换管理表 的处理步骤。
14. 根据权利要求13所述的存储控制器内部网络的数据路径故障切换方法,其特征在于,具有以下处理步骤关于所述数据路径中的未发生故障的数据路径,所述多根PCI管理器的程序执行所述 虚拟功能迁移,并更新所述虚拟功能映射管理表的处理步骤;以及所述故障切换控制程序,伴随着上述虚拟功能迁移的执行,更新所述故障切换管理表 的处理步骤。
15. 根据权利要求12所述的存储控制器内部网络的数据路径故障切换方法,其特征在于,所述端点设备具备用于与该存储装置的数据读出或写入相关的数据转发的第1功 能、以及可以对与所述第1功能相伴的虚拟功能的状态迁移进行控制的第2功能,具有所述端点设备根据从所述单根PCI管理器的程序或者所述多根PCI管理器的程 序向所述第2功能的通信,使所述第1功能的虚拟功能进行状态迁移的处理步骤。
全文摘要
本发明涉及存储装置、存储控制器内部网络的数据路径故障切换方法。对存储控制器内部网络应用了MR-IOV的存储装置,可以执行数据路径的故障切换。在存储控制器内部网络中构成为,可以从根端口“RP0”访问各端点设备(ED0~ED2)的虚拟功能(VF)“VF 0:0,1”。同样地,构成为可以从根端口“RP1”访问各端点设备的“VF 1:0,1”。正常时,在从“RP0”至“ED0”的第1数据路径中,通过VF映射将“VF 0:0,1”和“MVF 0,0”连接。当第1数据路径上发生故障时,通过由MR-PCIM执行VF迁移,在从“RP1”至“ED0”的第2数据路径中,通过VF映射将“VF 1:0,1”和“MVF 0,0”连接。结果,实现向第2数据路径的故障切换。
文档编号G06F3/06GK101727297SQ20091020311
公开日2010年6月9日 申请日期2009年5月27日 优先权日2008年10月30日
发明者岛田健太郎, 田中胜也 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1