信息处理设备和复制控制方法

文档序号:6506765阅读:147来源:国知局
信息处理设备和复制控制方法
【专利摘要】信息处理设备包括生成单元和控制单元。在接收到卸载式数据传输指令时,生成单元生成用于将数据从传输源存储器设备的传输源存储器区域传输到传输目的地存储器设备的传输目的地存储器区域的复制会话。在没有检测到由异步执行控制引起的过载时,控制单元确定要在异步执行控制下执行所生成的复制会话的数据传输,其中,在异步执行控制下与卸载式数据传输指令不同步地执行数据传输。另一方面,在检测到由异步执行控制引起的过载时,控制单元确定要在同步执行控制下执行所生成的复制会话的数据传输,其中,在同步执行控制中与卸载式数据传输指令同步地执行数据传输。
【专利说明】信息处理设备和复制控制方法
【技术领域】
[0001]本文中所讨论的实施方式涉及信息处理设备和复制控制方法。
【背景技术】
[0002]为了实现由主机(服务器)提供的文件复制功能或文件迁移功能,通常,主机本身从存储设备读取数据并且将数据写入存储设备。这给主机的中央处理器(CPU)带来了高的负荷和/或引起了主机与存储设备之间的高的通信负荷。
[0003]有鉴于此,提出了使得在主机从存储设备读取数据并且将数据写入存储设备时所施加的负荷减少的一些技术。
[0004]日本公开特许公报第2006-53737号
[0005]日本公开特许公报第2006-236019号
[0006]日本公开特许公报第2008-250695号
[0007]另一方面,存在减少主机的CPU负荷以及主机与存储设备之间的通信负荷的技术,该技术被称为卸载式数据传输(offloaded data transfer, 0DX)功能。该卸载式数据传输功能使与主机的文件复制和迁移操作相关联的负荷能够被转移(卸载)到存储设备。
[0008]因此,支持卸载式数据传输功能便于减少主机的CPU负荷以及主机与存储设备之间的通信负荷。然而,存储设备会承受来自主机的过多的负荷,因而总地来说仅支持卸载式数据传输功能并不总是提供高效的复制控制。

【发明内容】

[0009]根据各个方面,实施方式旨在提供一种支持卸载式数据传输功能并且能够提高复制控制的效率的信息处理设备和复制控制方法。
[0010]根据一个实施方式,提供有一种信息处理设备,所述信息处理设备包括:生成装置,用于在接收到卸载式数据传输指令时生成用于将数据从传输源存储器设备的传输源存储器区域传输到传输目的地存储器设备的传输目的地存储器区域的复制会话;以及控制装置,用于基于由异步执行控制引起的负荷来控制异步执行控制与同步执行控制之间的切换,所述异步执行控制是如下数据传输控制,在该数据传输控制下在完成生成的复制会话的数据传输之前进行对卸载式数据传输指令的完成响应并且随后进行数据传输,而所述同步执行控制是如下数据传输控制,在该数据传输控制下在完成生成的复制会话的数据传输之后进行对卸载式数据传输指令的完成响应。
【专利附图】

【附图说明】
[0011]图1示出了根据第一实施方式的信息处理设备的配置示例;
[0012]图2示出了根据第二实施方式的存储设备的连接的示例;
[0013]图3示出了根据第二实施方式的存储设备的配置示例;
[0014]图4示出了根据第二实施方式的卸载式数据传输的同步复制操作的示例;[0015]图5示出了根据第二实施方式的卸载式数据传输的异步复制操作的示例;
[0016]图6示出了根据第二实施方式在卸载式数据传输期间发生的卸载式读取过程的序列图;
[0017]图7示出了根据第二实施方式在卸载式数据传输期间发生的卸载式写入过程的序列图;
[0018]图8示出了根据第二实施方式的会话管理表的示例;
[0019]图9示出了根据第二实施方式的同步/异步操作切换控制过程的流程图;以及
[0020]图10示出了根据第二实施方式的同步操作监测过程的流程图。
【具体实施方式】
[0021 ] 下面将参考附图对若干实施方式进行描述。
[0022](a)第一实施方式
[0023]首先,参考图1来描述根据第一实施方式的信息处理设备。图1示出了根据第一实施方式的信息处理设备的配置示例。信息处理设备I被设置用于存储装置(存储器装置)8的复制控制,并且与存储装置8 一起组成存储设备。存储装置8能够记录所需的信息,并且硬盘驱动器(HDD)和固态驱动器(SSD)是存储装置8的示例。
[0024]信息处理设备I连接到主机2以彼此进行通信。主机2将文件服务器功能提供给例如操作终端(未示出)。信息处理设备I从主机2接收卸载式数据传输的指令(被称为“卸载式数据传输指令”)。卸载式数据传输是在同一存储设备内或在两个不同的存储设备之间传输数据的令牌化操作。使用表示数据传输的控制信息的令牌消除了缓冲的数据移动,即消除了主机2读取和写入要传输的数据的需要。注意,此处所提及的数据传输包括数据复制和数据迁移,并且可以以任意单元例如逐个文件地或逐卷地来传输数据。
[0025]信息处理设备I包括生成单元3和控制单元7。在接收到卸载式数据传输指令时,生成单元3生成用于将数据13从传输源存储器设备9的传输源存储器区域10传输到传输目的地存储器设备11的传输目的地存储器区域12的复制会话4。
[0026]信息处理设备I能够进行异步执行控制5,在异步执行控制5下,在完成复制会话4的数据传输之前进行对卸载式数据传输指令的完成响应,并且随后进行数据传输。也就是说,通过使用异步执行控制5,信息处理设备I进行逻辑数据传输,并且将对卸载式数据传输指令的完成响应发送给主机2,然后在发送了完成响应之后进行物理数据传输。
[0027]信息处理设备I能够进行同步执行控制6,在同步执行控制6下,在完成复制会话4的数据传输之后进行对卸载式数据传输指令的完成响应。也就是说,通过使用同步执行控制6,信息处理设备I进行物理数据传输,并且然后在物理数据传输完成之后将对卸载式数据传输指令的完成响应发送给主机2。
[0028]因此,异步执行控制5使主机2能够迅速地完成数据传输。另一方面,由于与卸载式数据传输指令和完成响应不同步地进行物理数据传输,所以信息处理设备I可能负担与来自主机2的卸载式数据传输指令对应的大量积压的异步数据传输。换言之,在进行异步数据传输的情况下,信息处理设备I会在队列中具有复制会话4的大量积累。由于信息处理设备I根据复制会话4的建立来消耗资源(例如,存储器资源),所以异步数据传输的积压的增加导致由异步数据传输引起的负荷的增加。[0029]另一方面,在同步执行控制6下,直到物理数据传输完成为止,信息处理设备I才将对卸载式数据传输指令的完成响应发送给主机2。这限制了来自主机2的卸载式数据传输指令的输入。
[0030]控制单元7检测由异步执行控制5导致的过载。对过载的检测可以通过将预定阈值与由异步执行控制5引起的负荷的状态进行比较来实现。例如,控制单元7可以通过将在异步执行控制5下数据传输的复制会话4的数目相对于预定阈值进行比较来检测过载。
[0031]基于所检测的负荷,控制单元7将由生成单元3所生成的复制会话4的数据传输在异步执行控制5与同步执行控制6之间进行切换。具体地,在检测到没有由异步执行控制5引起的过载的情况下,控制单元7使所生成的复制会话4的数据传输在异步执行控制5下进行。另一方面,如果检测到由异步执行控制5引起的过载,则控制单元7使所生成的复制会话4的数据传输在同步执行控制6下进行。
[0032]由此,信息处理设备I能够作为使用异步执行控制5来有效地利用信息处理设备I的资源,进行数据传输。另外,信息处理设备I能够作为使用同步执行控制6防止信息处理设备I的资源耗尽,来进行数据传输。以这种方式,可以与由主机2支持的卸载式数据传输功能适当地配合来提高复制控制(数据传输)的效率。
[0033](b)第二实施方式
[0034]参考图2,下面描述根据第二实施方式的存储设备的连接的示例。图2示出了根据第二实施方式的存储设备的连接的示例。
[0035]存储设备20经由网络17连接到主机15以彼此进行通信。网络17是其中将一个或更多个存储设备20和一个或更多个主机15彼此连接的存储区域网络(storage areanetwork, SAN)。
[0036]存储设备20a经由网络17a连接到主机15a以彼此进行通信,而存储设备20b、20c、20d和20e经由网络17b连接到主机15b以彼此进行通信。另外,存储设备20a、20b、20c、20d和20e经由网络18连接以彼此进行通信。网络18例如是专用于存储设备的网络。
[0037]主机15a经由网络16连接到操作终端14以彼此进行通信。网络16是其中将一个或更多个主机15和一个或更多个操作终端14彼此连接的局域网(LAN)或广域网(WAN)。
[0038]各存储设备20都具有在由存储设备20控制的存储装置中进行本地复制操作的能力,并且还具有与另外的存储设备20进行远程复制操作的能力。各主机15被配置成指示存储设备20进行本地复制操作或远程复制操作。在提供这种关于本地复制操作或远程复制操作的指令时,主机15还可以指示存储设备20来实施卸载式数据传输。
[0039]参考图3,下面描述根据第二实施方式的存储设备。图3示出了根据第二实施方式的存储设备的配置示例。各个存储设备20包括通道适配器26、远程适配器27、控制器模块21和HDD25。多个HDD25被组合以形成廉价磁盘冗余陈列(RAID)。HDD25将用户数据和控制信息(例如稍后描述的一个或更多个会话管理表)存储在其中。
[0040]单独的控制器模块21是用于控制对HDD25的访问的信息处理设备。由控制器模块21中的每个控制器模块提供的对HDD25的访问控制包括对下述数据传输的控制,在所述数据传输中HDD25是数据传输源或数据传输目的地。
[0041]存储设备20包括两个控制器模块21,标示为21a和21b。控制器模块21a和21b中的每一个控制器模块通过磁盘适配器24连接到其控制目标HDD25。控制器模块21a和21b彼此连接。尽管根据本实施方式的存储设备20包括两个控制器模块21,但是配置不限于此,并且因此存储设备20可以包括控制器模块21a和21b中的任一个控制器模块。可替代地,存储设备20可以包括三个或更多个控制器模块21,例如,四个或八个控制器模块21。
[0042]存储设备20通过通道适配器26连接到主机15。为每个控制器模块21都设置通道适配器26。另外,控制器模块21可以与多个(例如,两个)通道适配器26相关联,这使得控制器模块21能够通过使用多个路径与主机15连接。存储设备20通过远程适配器27连接到其他存储设备20。为每个控制器模块21都设置远程适配器27。
[0043]控制器模块21包括CPU22、存储器23和磁盘适配器24。CPU22控制从传输源存储器设备的存储器区域到传输目的地存储器设备的存储器区域的数据传输。存储器23在数据从相关联的HDD25被读取时保存数据,并且还在数据待被写入相关联的HDD25时用作缓冲器。另外,存储器23将用户数据和控制信息存储在存储器23中。各个磁盘适配器24中的每一个磁盘适配器控制与其对应的HDD25的接口(即对其对应的HDD25的访问)。
[0044]具有上述配置的存储设备20能够控制与由控制器模块21控制的HDD25相关联的数据传输。
[0045]注意,每个控制器模块21的整体由该控制器模块21的CPU22控制。相应的存储器23经由总线(未示出)连接到CPU22。另外,外围设备(未示出)经由总线(未示出)连接到或者可连接到CPU22。CPU22是处理器的示例并且可以例如是微处理器(MPU)、数字信号处理器(DSP)、专用集成电路(ASIC)或可编程逻辑器件(PLD)。另外,CPU22可以是单个或多个处理器。此外,CPU22可以形成为CPU、MPU、DSP、ASIC和PLD中的两个或更多个的组合。
[0046]存储器23由随机访问存储器(RAM)和非易失性存储器组成。RAM用作控制器模块21的主存储器设备。RAM将待由CPU22执行的操作系统(OS)程序、OS固件和应用程序中的至少一部分临时存储在RAM中。RAM还存储由CPU22进行其处理所需要的各种类型的数据。非易失性存储器在电力从存储设备20切断连接时保存存储器内容。非易失性存储器例如是半导体存储器器件,如电可擦除可编程只读存储器(EEPROM)和闪存,或是HDD。另外,非易失性存储器用作控制器模块21的辅存储器设备。非易失性存储器将OS程序和固件、应用程序以及各种类型的数据存储在非易失性存储器中。
[0047]待经由总线连接到CPU22的外围设备包括输入/输出接口和通信接口。输入/输出接口与输入/输出设备例如HDD连接,以进行输入/输出操作。输入/输出接口将由存储器设备如HDD发送的信号和数据传送到CPU22或高速缓存(存储器23)。通信接口将数据传送到同一存储设备20中设置的不同的控制器模块21并且从该不同的控制器模块21接收数据。
[0048]根据本实施方式,上述的硬件配置实现控制器模块21的处理功能。注意,主机15以及第一实施方式的信息处理设备I可以被构造成具有相同的硬件配置。
[0049]参考图4,下面描述根据第二实施方式由CPU22实施的卸载式数据传输的同步操作。图4示出了根据第二实施方式的卸载式数据传输的同步复制操作的示例。
[0050]主机15响应于由操作终端14做出以指示文件复制操作的操作来实施卸载式数据传输。例如,如图4所示出的那样,主机15将包括有卷31和卷34的逻辑图像30提供给操作终端14。此处假定操作终端14将卷31和卷34分别识别为C驱动器和D驱动器,那么操作终端14发布例如文件复制指令33,该文件复制指令33指示对C驱动器上的文件32进行复制,以在D驱动器上生成所复制的文件35。在接收到文件复制指令33时,主机15将OFFLOAD READ (卸载式读取)请求发送给与卷31对应的存储设备20。OFFLOAD READ请求包括使得传输源数据能够被标识的信息(也被称为“传输源数据可标识信息”)。
[0051]响应于OFFLOAD READ请求,存储设备20产生了包括传输源数据可标识信息的令牌50。传输源数据可标识信息包括关于例如传输源逻辑单元编号(logical unit number,LUN)36、传输源存储器区域37和传输数据尺寸的信息。存储设备20将所产生的令牌50发送给主机15。
[0052]主机15将OFFLOAD WRITE (卸载式写入)请求发送给与卷34对应的存储器设备
20。OFFLOAD WRITE请求包括使得传输目的地存储器区域能够被标识的信息(也被称为“传输目的地存储器区域可标识信息”)和从存储设备20接收的令牌50。
[0053]响应于OFFLOAD WRITE请求,存储设备20获取关于待被传输的数据(有时被称为“传输目标数据”)的信息和传输目的地存储器区域可标识信息。由此,存储设备20能够标识传输源LUN36、传输源存储器区域37、传输数据尺寸、传输目的地LUN39和传输目的地存储器区域40。存储设备20基于所标识的信息来生成复制会话45。根据复制会话45,存储设备20将传输数据46从传输源LUN36的传输源存储器区域37传输到传输目的地LUN39的传输目的地存储器区域40。在对传输数据46的传输完成时,存储设备20将STATUS (状态)通知给主机15。STATUS表示对卸载式数据传输的完成响应。
[0054]以上述方式,主机15响应于OFFLOAD READ请求来获取令牌50作为使得存储设备20的传输目标数据能够被标识的信息。另外,在发送OFFLOAD WRITE请求时,主机15向存储设备20发布令牌50作为使得存储设备20的传输目标数据能够被标识的信息。
[0055]以这种方式使用令牌50消除了主机15读取和写入传输数据46的需要。这还减少了主机15的CPU负荷以及连接主机15与存储设备20的网络17上所引起的负荷。
[0056]这种数据传输、即存储设备20中的与给主机15的STATUS通知同步的数据传输被称为“卸载式数据传输的同步操作”。
[0057]注意,即使在多个主机15连接到网络16并且数据传输在由单独的主机15识别的卷之间发生的情况下,不是传输数据46而是令牌50在网络16上被传送。由于存储设备20不将传输数据46提供给网络16,所以可以防止无意的信息泄露。
[0058]参考图5,下面描述根据第二实施方式由CPU22实施的卸载式数据传输的异步操作。图5示出了根据第二实施方式的卸载式数据传输的异步复制操作的示例。
[0059]主机15响应于由操作终端14做出以指示文件复制操作的操作来实施卸载式数据传输。例如,如图5所示出的那样,主机15将包括有卷31和卷34的逻辑图像30提供给操作终端14。此处假定操作终端14将卷31和卷34分别识别为C驱动器和D驱动器,那么操作终端14发布例如文件复制指令33,该文件复制指令33指示对C驱动器上的文件32进行复制以在D驱动器上生成所复制的文件35。在接收到文件复制指令33时,主机15将OFFLOAD READ请求发送给与卷31对应的存储设备20。OFFLOAD READ请求包括传输源数据可标识信息。
[0060]响应于OFFLOAD READ请求,存储设备20产生了包括传输源数据可标识信息的令牌50。存储设备20将所产生的令牌50发送给主机15。
[0061]主机15将OFFLOAD WRITE请求发送给与卷34对应的存储器设备20。OFFLOADWRITE请求包括使得传输目的地存储器区域能够被标识的信息(也被称为“传输目的地存储器区域可标识信息”)和从存储设备20接收的令牌50。
[0062]响应于OFFLOAD WRITE请求,存储设备20获取关于传输目标数据的信息和传输目的地存储器区域可标识信息。由此,存储设备20能够标识传输源LUN36、传输源存储器区域37、传输数据尺寸、传输目的地LUN39和传输目的地存储器区域40。存储设备20基于所标识的信息来生成复制会话45。
[0063]尽管到这里为止采用了与卸载式数据传输的同步操作的步骤相同的步骤,但是卸载式数据传输的异步操作在下述方面是不同的。
[0064]存储设备20在不等待传输数据46传输完成的情况下将STATUS通知给主机15。由此,主机15能够接收STATUS,而不等待将传输数据46传输到传输目的地LUN39的传输目的地存储器区域40的时间。
[0065]注意,存储设备20在通知STATUS之前生成复制会话45,然而,复制会话45可以在通知STATUS之后被生成。可替代地,存储设备20可以在与通知STATUS无关的时刻生成复制会话45。
[0066]以上述方式,通过使用令牌50,主机15实施卸载式数据传输的异步操作,其中,与在卸载式数据传输的同步操作的情况下一样,不需要对传输数据46的读取和写入。与在卸载式数据传输的同步操作的情况下一样,这种卸载式数据传输的异步操作还减少了主机15的CPU负荷和连接主机15与存储设备20的网络17上所引起的负荷。
[0067]另一方面,存储设备20与通知STATUS不同步地对传输数据46进行传输。正因为如此,存储设备20可以在对传输数据46的传输完成之前接收下一个OFFLOAD WRITE请求,这会导致复制会话45在队列中的大量积累。
[0068]这种数据传输、即在存储设备20中的与给主机15的STATUS通知(即完成响应)不同步的数据传输被称为“卸载式数据传输的异步操作”。
[0069]存储设备20将复制会话45排入排程队列51中,从而在排程队列51中积累多个复制会话45。存储设备20在安排的时刻将复制会话45从排程队列51中排出。根据所排出的复制会话45,存储设备20将传输数据46从传输源LUN36的传输源存储器区域37传输到传输目的地LUN39的传输目的地存储器区域40。
[0070]在完成了 一个复制会话45的数据传输或者实施了对预定尺寸的数据的传输之后,存储设备20进行下一个复制会话45的数据传输。因而,直到完成了各个复制会话45的数据传输,存储设备20作为在排程队列51中积累复制会话45,循环地重复数据传输操作。
[0071]每次生成复制会话45,存储设备20还生成用于管理复制会话45的管理信息。管理信息可以包括例如会话管理表和位图。会话管理表是针对每个复制会话45生成以管理复制会话45的表。位图是用于确保到检查点的数据传输的控制信息。
[0072]排程队列51中所积累的复制会话45的数目的增加导致存储设备20的保存与所积累的复制会话45对应的管理信息的存储器资源的消耗增加。因此,在进行卸载式数据传输的异步操作的情况下,存储设备20管理用于存储管理信息的存储器资源的消耗量,以防止由于存储器资源的耗尽所导致的故障。由不能生成新的复制会话45导致的卸载式数据传输功能的失败是由于存储器资源耗尽所导致的这种故障的示例。
[0073]注意,可用于存储设备20的任何存储器可以用作用于存储管理信息的存储器源,并且可以是存储器23或HDD25。可替代地,用于存储管理信息的存储器资源可以限于在可用于存储设备20的存储器中的预先保留的区域。存储设备20的管理目标不限于存储器资源,并且存储设备20可以使用其他的硬件资源如CPU资源作为其管理目标,只要资源的消耗随着排程队列51中积累的复制会话45的数目的增加而增加即可。另外,存储设备20可以使用一个或更多个类型的资源作为管理目标。
[0074]接下来参考图6来描述与图4和图5中所描述的从主机15到存储设备20的OFFLOAD READ请求的发布和从存储设备20到主机15的令牌50的通知相关的详细的命令序列。图6示出了根据第二实施方式在卸载式数据传输期间发生的卸载式读取过程的序列图。
[0075]卸载式读取过程由主机15响应于接收由操作终端14做出以指示文件复制操作的操作而开始。OFFLOAD READ请求通过使用小型计算机系统接口(SCSI)标准中所定义的EXTENDED COPY (扩展复制)命令和RECEIVE COPY RESULTS (接收复制结果)命令而实施。这种情况的EXTENDED COPY命令和RECEIVE COPY RESULTS命令分别被称为增加令牌(Populate Token,PT)命令和接收 Rod 令牌信息(Receive Rod Token Information, RRTI)命令。
[0076][步骤Sll]主机15将增加令牌命令传送给与复制源(即传输源)卷31相关联的存储设备20 (在下文中,也被称为“复制源相关联存储设备20”)。复制源相关联存储设备20从主机15接收增加令牌命令。
[0077][步骤S12]主机15将复制源区域信息传送给复制源相关联存储设备20,随后,复制源相关联存储设备20从主机15接收复制源区域信息。复制源区域信息(即,传输源数据可标识信息)是包含由传输源LUN36和传输源存储器区域37组成的信息的、列表形式的信
肩、O
[0078][步骤S13]复制源相关联存储设备20产生数据表示(Representationof Data,ROD)令牌(即令牌50)。存储设备20以稍后可搜索的方式保存所产生的ROD令牌。
[0079][步骤S14]复制源相关联存储设备20将增加令牌命令响应传送给主机15,随后主机15从复制源相关联存储设备20接收增加令牌命令响应。
[0080][步骤S15]主机15将RRTI命令传送给复制源相关联存储设备20,随后复制源相关联存储设备20从主机15接收RRTI命令。
[0081][步骤S16]复制源相关联存储设备20将ROD令牌传送给主机15,随后,主机15从复制源相关联存储设备20接收ROD令牌。
[0082][步骤S17]复制源相关联存储设备20将RRTI命令响应传送给主机15,随后,主机15从复制源相关联存储设备20接收RRTI命令响应。
[0083]与增加令牌命令、复制源区域信息和增加令牌命令响应相关的步骤对应于与图4和图5中所示出的OFFLOAD READ请求相关的通信。与RRTI命令、ROD令牌和RRTI命令响应相关的步骤对应于与图4和图5中所示出的令牌50相关的通信。
[0084]注意,为了简化上面的说明,OFFLOAD READ请求和令牌50的通信被描述成由与复制源卷31相关联的存储设备20进行。然而,通信实际上由存储设备20的相应的控制器模块21来处理。
[0085]接下来参考图7来描述与图4和图5中所描述的从主机15到存储设备20的OFFLOAD WRITE请求的发布和从存储设备20到主机15的STATUS的通知相关的详细的命令序列。图7示出了根据第二实施方式在卸载式数据传输期间发生的卸载式写入过程的序列图。
[0086]卸载式写入过程由主机15开始。OFFLOAD WRITE请求通过使用SCSI标准中所定义的EXTENDED COPY命令和RECEIVE COPY RESULTS命令而实施。这种情况的EXTENDEDCOPY命令和RECEIVE COPY RESULTS命令分别被称为使用令牌写入(Write Using Token,WUT)命令和RRTI命令。
[0087][步骤S21]主机15将WUT命令传送给与复制目的地(即传输目的地)卷34相关联的存储设备20 (在下文中,也被称为“复制目的地相关联存储设备20”)。复制目的地相关联存储设备20从主机15接收WUT命令。
[0088][步骤S22]主机15将复制目的地区域信息和ROD令牌传送给复制目的地相关联存储设备20,随后,复制目的地相关联存储设备20从主机15接收复制目的地区域信息和ROD令牌。复制目的地区域信息(即,传输目的地数据可标识信息)是包含由传输目的地LUN39和传输目的地存储器区域40组成的信息的、列表形式的信息。
[0089][步骤S23]复制目的地相关联存储设备20从由与复制源卷31相关联的存储设备20保存的ROD令牌中搜索与所接收的ROD令牌相同的ROD令牌。复制目的地相关联存储设备20将所接收的ROD令牌与搜索中发现的ROD令牌比较并且验证所接收的ROD令牌,并且在所接收的ROD令牌与所发现的ROD令牌彼此匹配的情况下基于复制目的地区域信息和ROD令牌来建立复制会话45。
[0090][步骤S24]复制目的地相关联存储设备20将WUT命令响应传送给主机15,随后,主机15从复制目的地相关联存储设备20接收WUT命令响应。
[0091][步骤S25]主机15将RRTI命令传送给复制目的地相关联存储设备20,随后,复制目的地相关联存储设备20从主机15接收RRTI命令。
[0092][步骤S26]复制目的地相关联存储设备20将STATUS传送给主机15,随后,主机15从复制目的地相关联存储设备20接收STATUS。
[0093]注意,在对卸载式数据传输进行异步操作的情况下,复制目的地相关联存储设备20立刻将STATUS传送给主机15。另一方面,在同步操作的情况下,复制目的地相关联存储设备20在完成复制操作之后传送STATUS。
[0094][步骤S27]复制目的地相关联存储设备20将RRTI命令响应传送给主机15,随后,主机15从复制目的地相关联存储设备20接收RRTI命令响应。
[0095]与WUT命令、复制目的地区域信息和ROD令牌以及WUT命令响应相关的步骤对应于与图4和图5中所示出的OFFLOAD WRITE请求相关的通信。与RRTI命令、STATUS和RRTI命令响应相关的步骤对应于与图4和图5中所示出的STATUS相关的通信。
[0096]注意,为了简化上面的说明,OFFLOAD WRITE请求和STATUS的通信被描述成由与复制目的地卷34相关联的存储设备20进行。然而,通信实际上由存储设备20的相应的控制器模块21来处理。
[0097]参考图8,下面描述会话管理表55。图8示出了根据第二实施方式的会话管理表的示例。会话管理表55包括会话标识(ID)、复制源LUN、复制目的地LUN、会话状态、会话阶段以及复制执行的必要性。会话管理表55还包括复制源开始逻辑块地址(logical blockaddress, LBA)(即传输源存储器区域)、复制目的地开始LBA (传输目的地存储器区域)和复制尺寸(传输尺寸)。
[0098]会话ID是专门标识复制会话的标识信息。会话ID例如是按照复制会话建立的顺序分配给各个会话的序列号之一。每个LUN是专门标识通过逻辑划分RAID群而生成的卷的标识信息,并且例如是序列号。复制源LUN是标识复制源卷的编号,而复制目的地LUN是标识复制目的地卷的编号。注意,针对单一 RAID群设置由各个LUN标识的一个或更多个卷(逻辑单元)。因此,如果RAID群由多个HDD25组成,那么卷可以跨越HDD25中的两个或更多个。
[0099]会话状态是指示复制会话的状态即复制操作的当前状态的信息。用于表示会话状态的状态包括“使用中”、“中止”、“误中止”以及“预约”。状态“使用中”指示复制操作正被执行,而状态“中止”指示复制操作被暂时中止。另外,状态“误中止”指示复制操作以失败告终并且例如复制操作的执行已经被停止。状态“保留”指示在复制操作开始之前的临时状态。会话阶段是指示复制操作的进展状态的信息。用于表示会话阶段的状态包括“复制”和“等同”。状态“复制”指示复制操作正在进展中,而状态“等同”指示复制操作已经完成并且复制目的地的数据已经变得等同于复制源的数据。复制执行的必要性是用于确定是否执行复制操作的信息。复制源开始LBA是指示复制源卷的逻辑块地址的信息。复制目的地开始LBA是复制目的地卷的逻辑块地址。复制尺寸是指示待被复制的数据的尺寸的信息。
[0100]参考图9,下面描述根据第二实施方式由与复制目的地卷34相关联的存储设备20执行的同步/异步操作切换控制。图9示出了根据第二实施方式的同步/异步操作切换控制过程的流程图。同步/异步操作切换控制过程在卸载式写入过程期间被执行。
[0101][步骤S31]与复制目的地卷34相关联的存储设备20获取异步操作中的复制会话的数目。异步操作中的复制会话的数目根据排程队列51中所积累的复制会话45的数目而算出。
[0102][步骤S32]复制目的地相关联存储设备20确定异步操作中的复制会话的数目是否等于或大于预定阈值。如果确定是肯定的,则复制目的地相关联存储设备20前进到步骤S33,如果确定是否定的,则前进到步骤S35。
[0103]由于异步操作中的复制会话的数目与由存储设备20使用以管理复制会话45的资源的量相关,所以异步操作中的复制会话的数目可以被认为是由异步操作引起的负荷的量。因此,存储设备20监测异步操作中的复制会话的数目,从而检测由异步操作引起的负荷。
[0104][步骤S33]由于检测到由异步操作引起的过载,所以复制目的地相关联存储设备20生成用于同步操作的复制会话45。
[0105][步骤S34]根据同步复制会话45,复制目的地相关联存储设备20执行对指定区域的复制。
[0106][步骤S35]由于没有检测到由异步操作引起的过载,所以复制目的地相关联存储设备20生成用于异步操作的复制会话45。
[0107][步骤S36]复制目的地相关联存储设备20对相应的0FFL0ADWRITE指令做出响应并且结束同步/异步操作切换控制过程。换言之,复制目的地相关联存储设备20传送RRTI命令响应并且然后传送STATUS。在传送RRTI命令响应和STATUS之后,复制目的地相关联存储设备20结束同步/异步操作切换控制过程。
[0108]以这种方式,关于同步复制会话45,复制目的地相关联存储设备20在执行对指定区域的复制之后对OFFLOAD WRITE指令做出响应。另一方面,关于异步复制会话45,复制目的地相关联存储设备20在执行对指定区域的复制之前对OFFLOAD WRITE指令做出响应。
[0109]注意,为了简化上面的说明,同步/异步操作切换控制过程被描述成由与复制目的地卷34相关联的存储设备20进行。然而,切换控制过程实际上由存储设备20的相应的控制器模块21来处理。
[0110]参考图10,下面描述根据第二实施方式由与复制目的地卷34相关联的存储设备20执行的同步操作监测过程。图10示出了根据第二实施方式的同步操作监测过程的流程图。同步操作监测过程通过监测定时器而周期性地进行。然而,注意,同步操作监测过程可以响应于诸如异步复制会话45中复制操作完成这样的事件而不规律地进行。
[0111][步骤S41]与复制目的地卷34相关联的存储设备20获取异步操作中的复制会话的数目。
[0112][步骤S42]复制目的地相关联存储设备20确定异步操作中的复制会话的数目是否等于或大于预定阈值。如果确定是肯定的,则复制目的地相关联存储设备20结束同步操作监测过程,如果确定是否定的,则前进到步骤S43。
[0113]注意,同步操作监测过程中所使用的阈值可以与同步/异步操作切换控制过程的步骤S32中用于确定的阈值相同,或者可以单独被设置。
[0114][步骤S43]复制目的地相关联存储设备20确定是否存在同步操作中的复制会话45。如果确定是肯定的,则复制目的地相关联存储设备20前进到步骤S44,而如果确定是否定的,则结束同步操作监测过程。
[0115][步骤S44]复制目的地相关联存储设备20从同步操作中的复制会话45之中选择最旧的复制会话45。
[0116][步骤S45]复制目的地相关联存储设备20将所选择的同步操作中的复制会话45更新为异步复制会话45。
[0117][步骤S46]复制目的地相关联存储设备20对相应的0FFL0ADWRITE指令做出响应并且前进到步骤S41。
[0118]以这种方式,存储设备20根据由异步操作引起的负荷,将曾经确定以同步操作运行的复制会话45变成异步复制会话45。这使得存储设备20能够进一步提高复制控制的效率。
[0119]注意,上述处理功能可以由计算机来实现。在此情况下,设置了下述程序,在程序中描述了信息处理设备I和存储设备20 (生成单元3、控制单元7等)需要具有的功能的处理内容。通过在计算机上执行程序,上述处理功能在计算机上被实现。其中描述了处理内容的程序可以被记录在计算机可读取记录介质中。这种计算机可读取记录介质包括磁存储装置、光盘、磁光记录介质和半导体存储器。磁存储装置的示例是HDD、软盘(FD)和磁带。光盘的示例是数字多功能盘(DVD )、DVD-RAM、光盘只读存储器(⑶-ROM)和可重写⑶(⑶-RW)。磁光记录介质的示例是磁光盘(MO)。
[0120]在分发程序的情况下,销售其中记录有程序的便携式记录介质如DVD和⑶-ROM。另外,程序可以被存储在服务器计算机的存储器装置中并且然后从服务器计算机经由网络被传输到另一个计算机。
[0121]用于执行程序的计算机在其自身的存储器装置中存储最初被记录在便携式记录介质或从服务器计算机传输的程序。随后,计算机从其自身的存储装置中读取程序并且根据该程序执行处理。注意,计算机能够从便携式记录介质中直接读取程序并且根据该程序执行处理。另外,计算机能够在每次程序从经由网络而连接的服务器计算机被传输时根据该所接收的程序顺序地执行处理。
[0122]另外,上述的处理功能中的至少一部分可以由电子电路如数字信号处理器(DSP)、专用集成电路(ASIC)和可编程逻辑器件(PID)来实现。
[0123]根据各个方面,提供有支持卸载式数据传输功能并且能够提高复制控制的效率的信息处理设备和复制控制方法。
【权利要求】
1.一种信息处理设备,包括: 生成装置,用于在接收到卸载式数据传输指令时生成用于将数据从传输源存储器设备的传输源存储器区域传输到传输目的地存储器设备的传输目的地存储器区域的复制会话;以及 控制装置,用于基于由异步执行控制引起的负荷来控制所述异步执行控制与同步执行控制之间的切换,所述异步执行控制是如下数据传输控制:在该数据传输控制下在完成所述生成的复制会话的数据传输之前进行对所述卸载式数据传输指令的完成响应,并且随后进行数据传输,而所述同步执行控制是如下数据传输控制,在该数据传输控制下在完成所述生成的复制会话的数据传输之后进行对所述卸载式数据传输指令的所述完成响应。
2.根据权利要求1所述的信息处理设备,其中,所述控制装置在生成所述复制会话时确定所述复制会话的数据传输要在所述异步执行控制与所述同步执行控制中的哪种控制下被执行。
3.根据权利要求2所述的信息处理设备,其中,所述控制装置在没有检测到由所述异步执行控制引起的过载时确定要在所述异步执行控制下执行所述生成的复制会话的数据传输,并且在检测到由所述异步执行控制引起的过载时确定要在所述同步执行控制下执行所述生成的复制会话的数据传输。
4.根据权利要求3所述的信息处理设备,其中,所述控制装置基于在所述异步执行控制下执行的所述复制会话的计数与预定阈值之间的比较来检测所述过载。
5.根据权利要求2至4中任一项所述的信息处理设备,其中,所述控制装置基于由所述异步执行控制引起的负荷来将所述复制会话的数据传输控制从所述同步执行控制更新为所述异步执行控制。
6.一种由计算机执行的复制控制方法,所述复制控制方法包括: 在检测到由异步执行控制引起的过载的情况下,将对复制会话的数据传输的控制从所述异步执行控制切换成同步执行控制,其中,在所述异步执行控制下进行对卸载式数据传输指令的完成响应并且随后进行所述复制会话的数据传输,在所述同步执行控制下在完成所述复制会话的数据传输之后进行对所述卸载式数据传输指令的所述完成响应。
【文档编号】G06F3/06GK103677659SQ201310329637
【公开日】2014年3月26日 申请日期:2013年7月31日 优先权日:2012年8月30日
【发明者】植田明宏 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1