CN104243197A - 数据传输方法、系统及虚拟存储网关 - Google Patents
数据传输方法、系统及虚拟存储网关 Download PDFInfo
- Publication number
- CN104243197A CN104243197A CN201310250241.7A CN201310250241A CN104243197A CN 104243197 A CN104243197 A CN 104243197A CN 201310250241 A CN201310250241 A CN 201310250241A CN 104243197 A CN104243197 A CN 104243197A
- Authority
- CN
- China
- Prior art keywords
- virtual memory
- gateway
- memory gateway
- reading
- writing data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据传输方法、系统及虚拟存储网关,属于数据传输领域。所述方法包括:第一虚拟存储网关接收第一主机发送的第一数据读写请求,第一数据读写请求包括第一逻辑块寻址地址;根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二逻辑块寻址地址;通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。本发明实施例提供的技术方案,避免了两个数据中心间业务数据链路出现故障时数据中心间不能进行读写数据的传输,保证了主机业务正常运行。
Description
技术领域
本发明涉及数据传输领域,特别涉及一种数据传输方法、系统及虚拟存储网关。
背景技术
存储虚拟化是指,把多个和/或多种存储设备通过一定的方式统一管理起来,提供大容量、高数据传输性能的存储系统。目前,存储虚拟化主要包括以下三种类型:基于主机的虚拟化、基于存储设备的虚拟化以及基于存储网络的虚拟化。其中,基于存储网络的虚拟化通过在存储域网中添加大量的虚拟存储网关实现,每台虚拟存储网关都通过交换机与主机及存储设备连接,这些虚拟存储网关形成虚拟存储网关集群。每一台主机都可以通过虚拟存储网关集群节点,访问所有的存储设备。
双数据中心是基于存储网络的虚拟化的一种主要应用场景,在双数据中心的应用场景中,第一数据中心和第二数据中心之间设有用于传输读写请求和读写数据的业务数据链路,第一数据中心的主机能够通过虚拟存储网关集群访问第二数据中心的存储设备,第二数据中心的主机也能够通过虚拟存储网关集群访问第一数据中心的存储设备。例如,当第一数据中心的主机需要从第二数据中心的存储设备读取数据时,第一数据中心的主机将读取请求发送给一个第一数据中心的虚拟存储网关集群节点,由该虚拟存储网关集群节点将读取请求通过业务数据链路发往相应地第二数据中心的存储设备,第二数据中心的存储设备根据读取请求将相应地数据发送给第一数据中心的虚拟存储网关集群节点,第一数据中心的虚拟存储网关集群节点再将该数据发送给第一数据中心的主机。从而实现了第一数据中心和第二数据中心间的数据传输。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
如果两个数据中心间业务数据链路出现故障,就会导致两个数据中心间数据不能正常传输,进而导致系统异常、影响主机业务。
发明内容
为了解决现有技术中,两个数据中心间业务数据链路出现故障时,两数据中心间数据不能互通的问题,本发明实施例提供了一种数据传输方法、系统及虚拟存储网关。所述技术方案如下:
一方面,本发明实施例提供了适用于第一数据中心和第二数据中心之间的数据传输,其中,所述第一数据中心包括:第一存储设备、第一主机和第一虚拟存储网关,所述第二数据中心包括:第二存储设备、第二主机和第二虚拟存储网关,所述方法包括:
所述第一虚拟存储网关接收所述第一主机发送的第一数据读写请求,所述第一数据读写请求包括第一逻辑块寻址地址;
根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将所述第一数据读写请求修改为第二数据读写请求,所述第二数据读写请求包括所述第二逻辑块寻址地址;
通过所述第一虚拟存储网关和所述第二虚拟存储网关之间的心跳网络,将所述第二数据读写请求发送给所述第二虚拟存储网关,使得所述第二虚拟存储网关将所述第二数据读写请求发送到所述第二存储设备。
在本发明实施例的一种实现方式中,所述方法还包括:
判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅。
在本发明实施例的另一种实现方式中,所述判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅,包括:
根据所述第二虚拟存储网关的广播信息,获取所述第二虚拟存储网关能够访问的存储设备信息;
判断所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备是否相同,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备不相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
在本发明实施例的另一种实现方式中,所述判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅,包括:
当所述第一虚拟存储网关访问所述第二存储设备超时或发生错误时,所述第一虚拟存储网关向所述第二虚拟存储网关发送测试消息,所述测试消息用于指示所述第二虚拟存储网关测试能否访问所述第二存储设备;
接收所述第二虚拟存储网关发送的测试结果,当所述测试结果表示所述第二虚拟存储网关能访问所述第二存储设备时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
在本发明实施例的另一种实现方式中,当所述第一虚拟存储网关和所述第二虚拟存储网关之间不存在所述心跳网络时,所述方法还包括:
在所述第一虚拟存储网关和所述第二虚拟存储网关之间搭建所述心跳网络。
另一方面,本发明实施例还提供了一种虚拟存储网关,适用于第一数据中心和第二数据中心之间的数据传输,其中,所述第一数据中心包括:第一存储设备、第一主机和第一虚拟存储网关,所述虚拟存储网关为所述第一虚拟存储网关,且所述虚拟存储网关包括:
接收模块,用于接收所述第一主机发送的第一数据读写请求,所述数据读写请求包括第一逻辑块寻址地址;
处理模块,用于根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将所述第一数据读写请求修改为第二数据读写请求,所述第二数据读写请求包括所述第二逻辑块寻址地址;
发送模块,用于通过所述第一虚拟存储网关和所述第二虚拟存储网关之间的心跳网络,将所述第二数据读写请求发送给所述第二虚拟存储网关,使得所述第二虚拟存储网关将所述第二数据读写请求发送到所述第二存储设备。
在本发明实施例的一种实现方式中,所述网关还包括:
判断模块,用于判断所述第一虚拟存储网关与所述第二虚拟存储网关的业务数据链路是否通畅。
在本发明实施例的另一种实现方式中,所述判断模块,包括:
获取单元,用于根据所述第二虚拟存储网关的广播信息,获取所述第二虚拟存储网关能够访问的存储设备信息;
判断单元,用于判断所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备是否相同,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备不相同时,则判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
在本发明实施例的另一种实现方式中,所述判断模块包括:
发送单元,用于当所述第一虚拟存储网关访问所述第二存储设备超时或发生错误时,所述第一虚拟存储网关向所述第二虚拟存储网关发送测试消息,所述测试消息用于指示所述第二虚拟存储网关能否访问所述第二存储设备;
所述判断单元还用于,接收所述第二虚拟存储网关发送的测试结果,当所述测试结果表示所述第二虚拟存储网关测试能访问所述第二存储设备时,所述业务数据链路不通畅,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅。
在本发明实施例的另一种实现方式中,所述网关还包括:
连接模块,用于当所述第一虚拟存储网关和所述第二虚拟存储网关之间不存在所述心跳网络时,在所述第一虚拟存储网关和所述第二虚拟存储网关之间搭建所述心跳网络。
另一方面,本发明实施例还提供了一种数据传输系统,所述系统包括:第一数据中心,所述第一数据中心包括:第一存储设备、第一主机以及如上所述的虚拟存储网关。
本发明实施例提供的技术方案带来的有益效果是:
通过根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了主机业务正常运行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的数据传输方法的流程图;
图2是本发明实施例二提供的基于虚拟存储网关的双数据中心的网络架构图;
图3是本发明实施例二提供的数据传输方法的流程图;
图4是本发明实施例三提供的数据传输方法的流程图;
图5是本发明实施例四提供的虚拟存储网关的结构示意图;
图6是本发明实施例五提供的虚拟存储网关的结构示意图;
图7是本发明实施例六提供的虚拟存储网关的结构示意图;
图8是本发明实施例四、五或六提供的虚拟存储网关的具体实施方式的结构示意图;
图9是本发明实施例七提供的数据传输系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种数据传输方法,适用于第一数据中心和第二数据中心之间的数据传输,第一数据中心包括:第一存储设备、第一主机和第一虚拟存储网关,第二数据中心包括:第二存储设备、第二主机和第二虚拟存储网关,参见图1,该方法包括:
步骤101:第一虚拟存储网关接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA(Logical Block Addressing,逻辑块寻址)地址。
其中,第一虚拟存储网关可以是第一数据中心的虚拟存储网关集群节点,第二虚拟存储网关可以是第二数据中心的虚拟存储网关集群节点。
步骤102:根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址。
步骤103:通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
本发明实施例通过根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了主机业务正常运行。
实施例二
下面以第一数据中心和第二数据中心构成的双数据中心为例,对本发明实施例提供的数据传输方法做进一步说明,参见图2,下面先对双数据中心的架构做简单说明:
在双数据中心场景中,第一数据中心10和第二数据中心20通过业务数据链路30连接。其中,业务数据链路30可以采用光纤。
具体地,第一数据中心10包括至少一个第一主机11、第一存储设备12、第一虚拟存储网关13、以及第一交换机14,第一虚拟存储网关13通过第一交换机14与所有的第一存储设备12连接,第一虚拟存储网关13通过第一交换机14与所有的第一主机11连接。第一存储设备12可以为同一种类型的存储设备,也可以为不同类型的存储设备。类似地,第二数据中心20包括至少一个第二主机21、第二存储设备22、第二虚拟存储网关23、以及第二交换机24,第二数据中心20内部架构与第一数据中心10相同。第一交换机14与第二交换机24通过业务数据链路30连接。因此,第一虚拟存储网关13通过第一交换机14以及第二交换机24与所有的第二存储设备22连接,第一虚拟存储网关13通过第一交换机14以及第二交换机24与所有的第二主机21连接。
上述双数据中心的工作过程如下:
第一虚拟存储网关和第二虚拟存储网关中都存储有第一LBA地址和第二LBA地址的对应关系,第二LBA地址是指存储设备的LBA地址,第一LBA地址是虚拟存储网关中定义的存储设备、主机和虚拟存储网关本身的LBA地址,主机发送IO命令给存储设备进行数据访问时,需要先将第一LBA地址转化为第二LBA地址,再根据第二LBA地址进行数据的读取和写入。
当第一主机11需要从第一存储设备12中读取数据时,第一主机11将读取请求发送给第一交换机14,第一交换机14将该读取请求转发给第一虚拟存储网关13,第一虚拟存储网关13根据读取请求中的第一LBA地址,生成新的读取请求,新的读取请求包括:与上述第一LBA地址对应的第二LBA地址、存储设备的物理地址等,将新的读取请求发送到第一交换机14,第一交换机14根据存储设备的物理地址进行转发,即将新的读取请求发送到相应的第一存储设备12,第一存储设备12根据读取请求将相应地数据,通过第一交换机14发送给第一虚拟存储网关13,第一虚拟存储网关13再将该数据通过第一交换机14,发送给第一主机11。
当第一主机11需要从第二存储设备22中读取数据时,第一主机21将读取请求通过第一交换机14发送给第一虚拟存储网关13,第一虚拟存储网关13根据读取请求中的第一LBA地址生成新的读取请求,并通过第一交换机14和第二交换机将24该新的读取请求发送到相应的第二存储设备22,第二存储设备22根据新的读取请求将相应地数据,通过第二交换机24和第一交换机14发送给第一虚拟存储网关13,第一虚拟存储网关13再通过第一交换机14,将该数据发送给第一主机11。
在本发明实施例中,第一数据中心可以包括第一虚拟存储网关集群,第一虚拟存储网关集群中设有多个第一虚拟存储网关,第一虚拟存储网关可以为第一虚拟存储网关集群中的主节点(下文中称为第一主节点)。同样地,第二数据中心可以包括第二虚拟存储网关集群,第二虚拟存储网关集群中设有第二多个虚拟存储网关,第二虚拟存储网关可以为第二虚拟存储网关集群中的主节点(下文中称为第二主节点)。第一主节点产生的方式如下:每个第一虚拟存储网关获得所有第一虚拟存储网关的节点标号,将节点标号最小的节点作为第一主节点;第二主节点产生的方式如下:每个第二虚拟存储网关获得所有第二虚拟存储网关的节点标号,将节点标号最小的节点作为第二主节点。
数据的写入与上述读取过程类似,这里不再赘述。
进一步地,在双数据中心场景下,第一虚拟存储网关13和第二虚拟存储网关23之间还设有心跳网络40,心跳网络40用来对两个数据中心的虚拟存储网关进行配置同步,该配置包括映射配置和主节点配置。其中,映射配置是指存储设备的第二LBA地址与第一LBA地址的对应关系,主节点配置包括第一数据中心的虚拟存储网关集群主节点和第二数据中心的虚拟存储网关集群主节点。上述配置通过在集群中进行广播,从而实现同步。心跳网络通常采用以太网连接。
基于上述场景,本发明实施例提供了一种数据传输方法,参见图3,本实施例提供的方法包括:
步骤201:第一虚拟存储网关接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA地址。
步骤202:第一虚拟存储网关判断第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路是否通畅,若第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,则执行步骤203,若第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅,则依次执行步骤204和205。
具体地,步骤202可以通过两种方式实现。
第一种方式,步骤202包括:
步骤一、根据第二虚拟存储网关的广播信息,获取第二虚拟存储网关能够访问的存储设备信息。
其中,第二虚拟存储网关的广播信息包括:第二虚拟存储网关的集群标识、节点标识、以及能够访问的存储设备信息。
步骤二、判断第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备是否相同,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备相同时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备不相同时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅。
其中,在每个虚拟存储网关中均存储有可以访问的存储设备的列表,该列表包括可以访问的存储设备的标识或地址、访问路径等信息。
第二种方式,步骤202包括:
步骤一、当第一虚拟存储网关访问第二存储设备超时或发生错误时,第一虚拟存储网关向第二虚拟存储网关发送测试消息,测试消息用于指示第二虚拟存储网关测试能否访问第二存储设备。
其中,测试消息包括:第二虚拟存储网关的集群标识和节点标识、第二存储设备标识以及指令,指令用于请求第二虚拟存储网关测试能否访问第二存储设备标识对应的第二存储设备。
步骤二、接收第二虚拟存储网关发送的测试结果,当测试结果表示第二虚拟存储网关能访问第二存储设备时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅,当测试结果表示第二虚拟存储网关不能访问第二存储设备时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅。
具体地,第一虚拟存储网关判断访问第二存储设备是否超时,包括:当第一虚拟存储网关从第二存储设备读取数据,并在预定时间内没有得到第二存储设备应答时,则确定访问第二存储设备超时。
第一虚拟存储网关判断访问第二存储设备是否发生错误,包括:
当第一主机收到虚拟存储网关集群节点发送的数据后,第一主机对收到的数据进行校验,当校验结果为数据错误时,第一主机就会向第一虚拟存储网关报告错误信息;当第一虚拟存储网关收到错误信息,则确定访问第二存储设备发生错误。
进一步地,该方法还包括:当第一虚拟存储网关访问第二存储设备超时或发生错误,且第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅时,向网管系统发送第二存储设备故障信息,故障信息包括第二设备的LBA地址。
由于第一虚拟存储网关访问第二存储设备超时或发生错误,说明可能是第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路故障或者第二存储设备故障,但由于第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,那么确定是第二存储设备出现故障。通过向网管系统发送第二存储设备故障信息,使得第二存储设备故障时,能够及时得到修复。
步骤203:第一虚拟存储网关采用业务数据链路传输第一数据读写请求。
步骤204:第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址。
步骤205:第一虚拟存储网关通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
在另一种实现方式中,上述步骤204和205还可以采用以下方式实现:
通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第一数据读写请求发送给第二虚拟存储网关,第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,并将第二数据读写请求发送到第二存储设备,第二数据读写请求包括第二LBA地址。
上述通过心跳网络实现第二数据读写请求的传输,在具体实现时,可以由第一虚拟存储网关创建一个虚拟内存空间,该虚拟内存空间用于将数据通过心跳网络传输到第二虚拟存储网关。
其中,虚拟内存空间可以是一个虚拟盘。
步骤206:第二虚拟存储网关接收第二存储设备发送的第一数据读写响应,该第一数据读写响应包括第二LBA地址。
当第二存储设备根据收到的第二数据读写请求执行读写操作后,会产生第一数据读写响应,并将第一数据读写响应发送给第二虚拟存储网关。
步骤207:第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写响应修改为第二数据读写响应,第二数据读写响应包括第一LBA地址。
在步骤207之前,该方法还可以包括:判断第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否通畅,当第一虚拟存储网关和第二虚拟存储网关之间业务数据链路不通畅时,执行步骤207。
步骤208:第二虚拟存储网关通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写响应发送给第一虚拟存储网关,使得第一虚拟存储网关将第二数据读写响应发送到第一主机。
步骤209:第一虚拟存储网关定时检测第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否恢复通畅,当业务数据链路恢复通畅时,采用业务数据链路传输第一数据读写请求。
步骤209检测第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否恢复通畅的方法,与步骤202判断第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否通畅的方法相同,这里不再赘述。
在步骤202中判断第一虚拟存储网关和第二虚拟存储网关之间业务数据链路不通时,会向网管系统发送业务数据链路故障信息,管理员在收到故障信息后会对业务数据链路进行检修,因此,当业务数据链路重新恢复通畅时,即可继续用于传输第一数据读写请求。
需要说明的是,上述步骤202、203和209均为可选步骤。且步骤209与步骤206-208之间没有先后顺序。
容易知道,第一虚拟存储网关和第二虚拟存储网关的结构和功能相同。
本发明实施例通过在双数据中心的场景中,当判断第一虚拟存储网关和第二虚拟存储网关之间的业务数据链路不通时,第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输;定时检测第一虚拟存储网关和第二虚拟存储网关间业务数据链路是否恢复通畅,当业务数据链路恢复通畅时,采用上述业务数据链路传输第一数据读写请求,实现了传输链路的及时切换,保证了业务质量。
实施例三
下面对本发明实施例提供的一种数据传输方法做进一步说明,本实施例的应用场景为,第一数据中心和第二数据中心之间不存在业务数据链路,为两个独立的数据中心,但是由于业务需要,需要快速将第一数据中心和第二数据中心构建为双数据中心,临时在第一数据中心和第二数据中心之间传输数据,参见图4,该方法包括:
步骤301:第一虚拟存储网关和第二虚拟存储网关间搭建心跳网络。
由于第一数据中心和第二数据中心为两个独立的数据中心,所以初始情况下,第一虚拟存储网关和第二虚拟存储网关间之间不存在心跳网络,需要第一虚拟存储网关和第二虚拟存储网关间搭建心跳网络。
上述搭建网络可以采用以下方式进行:在第一数据中心和第二数据中心存在通路的情况下,将第一虚拟存储网关的集群标识设置成与第二虚拟存储网关的集群标识相同,从而实现第一数据中心与第二数据中心自动融合成一个集群,进而在第一虚拟存储网关和第二虚拟存储网关间生成心跳网络,在融合后的集群中,可以根据虚拟存储网关所在的数据中心不同进行逻辑区分,将虚拟存储网关分为第一虚拟存储网关和第二虚拟存储网关。
步骤302:第一虚拟存储网关接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA地址。
步骤303:第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址。
步骤304:第一虚拟存储网关通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
在另一种实现方式中,上述步骤303和304还可以采用以下方式实现:
通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第一数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址,并将第二数据读写请求发送到第二存储设备。
步骤305:第二虚拟存储网关接收第二存储设备发送的第一数据读写响应,该第一数据读写响应包括第二LBA地址。
步骤306:第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写响应修改为第二数据读写响应,第二数据读写响应包括第一LBA地址。
步骤307:第二虚拟存储网关通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写响应发送给第一虚拟存储网关,使得第一虚拟存储网关将第二数据读写响应发送到第一主机。
上述通过心跳网络实现第二数据读写请求的传输,在具体实现时,可以由第一虚拟存储网关创建一个虚拟内存空间,该虚拟内存空间用于将数据通过心跳网络传输到第二虚拟存储网关。
其中,虚拟内存空间可以是一个虚拟盘。
本发明实施例通过当第一数据中心和第二数据中心之间不存在业务数据链路,在第一虚拟存储网关和第二虚拟存储网关之间搭建心跳网络,第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了业务质量。
实施例四
本发明实施例提供了一种虚拟存储网关,该网关适用于实施例一提供的数据传输方法,参见图5,该网关包括:
接收模块401,用于接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA地址;
处理模块402,用于根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址;
发送模块403,用于通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
其中,第一虚拟存储网关可以是第一数据中心的虚拟存储网关集群节点,第二虚拟存储网关可以是第二数据中心的虚拟存储网关集群节点。
本发明实施例通过根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了主机业务正常运行。
实施例五
本发明实施例提供了一种虚拟存储网关,该网关适用于实施例二提供的数据传输方法,参见图6,该网关包括:
接收模块501,用于接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA地址;
判断模块502,用于判断第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路是否通畅;
处理模块503,用于根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址;
发送模块504,用于当判断模块第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅时,通过业务数据链路将第一数据读写请求传输给第二虚拟存储网关,当判断模块第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅时,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
接收模块501,还用于接收第一存储设备发送的第一数据读写响应,该第一数据读写响应包括第二LBA地址;
处理模块503,还用于根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写响应修改为第二数据读写响应,第二数据读写响应包括第一LBA地址;
发送模块504,还用于通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写响应发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写响应发送到第二主机。
具体地,判断模块502包括:
获取单元,用于根据第二虚拟存储网关的广播信息获取第二虚拟存储网关能够访问的存储设备信息。
其中,第二虚拟存储网关的广播信息包括:第二虚拟存储网关的集群标识、节点标识、以及能够访问的存储设备信息。
判断单元,用于判断第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备是否相同,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备相同时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备不相同时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅。
其中,在每个虚拟存储网关中均存储有可以访问的存储设备的列表,该列表包括可以访问的存储设备的标识或地址、访问路径等信息。
在另一种实现方式中,判断模块502包括:
发送单元,用于当第一虚拟存储网关访问第二存储设备超时或发生错误时,第一虚拟存储网关向第二虚拟存储网关发送测试消息,测试消息用于指示第二虚拟存储网关测试能否访问第二存储设备。
其中,测试消息包括:第二虚拟存储网关的集群标识和节点标识、第二存储设备标识以及指令,指令用于请求第二虚拟存储网关测试能否访问第二存储设备标识对应的第二存储设备。
判断单元,用于接收第二虚拟存储网关发送的测试结果,当测试结果表示第二虚拟存储网关能访问第二存储设备时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅,当测试结果表示第二虚拟存储网关不能访问第二存储设备时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅。
具体地,判断访问第二存储设备是否超时,包括:当第一虚拟存储网关从第二存储设备读取数据,并在预定时间内没有得到第二存储设备应答时,则确定访问第二存储设备超时。
判断访问第二存储设备是否发生错误,包括:
当第一主机收到虚拟存储网关集群节点发送的数据后,第一主机对收到的数据进行校验,当校验结果为数据错误时,第一主机就会向第一虚拟存储网关报告错误信息;当第一虚拟存储网关收到错误信息,则确定访问第二存储设备发生错误。
进一步地,该网关还包括:上报模块,用于当第一虚拟存储网关访问第二存储设备超时或发生错误,且第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅时,向网管系统发送第二存储设备故障信息,故障信息包括第二设备的LBA地址。
由于第一虚拟存储网关访问第二存储设备超时或发生错误,说明可能是第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路故障或者第二存储设备故障,但由于第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,那么确定是第二存储设备出现故障。通过向网管系统发送第二存储设备故障信息,使得第二存储设备故障时,能够及时得到修复。
在另一种实现方式中,上述处理模块503直接将第一数据读写请求传输给发送模块504,发送模块504通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第一数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址,并将第二数据读写请求发送到第二存储设备。
上述通过心跳网络实现第二数据读写请求的传输,在具体实现时,可以由第一虚拟存储网关创建一个虚拟内存空间,该虚拟内存空间用于将数据通过心跳网络传输到第二虚拟存储网关。
其中,虚拟内存空间可以是一个虚拟盘。
进一步地,该网关还包括检测模块505,用于定时检测第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否恢复通畅,当业务数据链路恢复通畅时,采用业务数据链路传输第一数据读写请求。
检测模块505在检测第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否恢复通畅的方法,与判断模块502判断第一虚拟存储网关和第二虚拟存储网关之间业务数据链路是否通畅的方法相同,这里不再赘述。
判断模块502判断第一虚拟存储网关和第二虚拟存储网关之间业务数据链路不通时,会向网管系统发送业务数据链路故障信息,管理员在收到故障信息后会对业务数据链路进行检修,因此,当业务数据链路重新恢复通畅时,即可继续用于传输第一数据读写请求。
本发明实施例通过在双数据中心的场景中,当判断第一虚拟存储网关和第二虚拟存储网关之间的业务数据链路不通时,第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输;定时检测第一虚拟存储网关和第二虚拟存储网关间业务数据链路是否恢复通畅,当业务数据链路恢复通畅时,采用上述业务数据链路传输第一数据读写请求,实现了传输链路的及时切换,保证了业务质量。
实施例六
本发明实施例提供了一种虚拟存储网关,该网关适用于实施例三提供的数据传输方法,参见图7,该网关包括:
连接模块601,用于在第一虚拟存储网关和第二虚拟存储网关间搭建心跳网络;
接收模块602,用于接收第一主机发送的第一数据读写请求,该第一数据读写请求包括第一LBA地址;
处理模块603,用于根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址;
发送模块604,用于通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
接收模块602,还用于接收第一存储设备发送的第一数据读写响应,该第一数据读写响应包括第二LBA地址;
处理模块603,还用于根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写响应修改为第二数据读写响应,第二数据读写响应包括第一LBA地址;
发送模块604,还用于通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写响应发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写响应发送到第二主机。
由于第一数据中心和第二数据中心为两个独立的数据中心,所以初始情况下,第一虚拟存储网关和第二虚拟存储网关间之间不存在心跳网络,需要第一虚拟存储网关和第二虚拟存储网关间搭建心跳网络。
上述搭建网络可以采用以下方式进行:在第一数据中心和第二数据中心存在通路的情况下,将第一虚拟存储网关的集群标识设置成与第二虚拟存储网关的集群标识相同,从而实现第一数据中心与第二数据中心自动融合成一个集群,进而在第一虚拟存储网关和第二虚拟存储网关间生成心跳网络,在融合后的集群中,可以根据虚拟存储网关所在的数据中心不同进行逻辑区分,将虚拟存储网关分为第一虚拟存储网关和第二虚拟存储网关。
在另一种实现方式中,上述处理模块603直接将第一数据读写请求传输给发送模块604,发送模块604通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第一数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二LBA地址,并将第二数据读写请求发送到第二存储设备。
上述通过心跳网络实现第二数据读写请求的传输,在具体实现时,可以由第一虚拟存储网关创建一个虚拟内存空间,该虚拟内存空间用于将数据通过心跳网络传输到第二虚拟存储网关。
其中,虚拟内存空间可以是一个虚拟盘。
本发明实施例通过当第一数据中心和第二数据中心之间不存在业务数据链路,在第一虚拟存储网关和第二虚拟存储网关之间搭建心跳网络,第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了业务质量。
在具体的实施方式中,前述图5、6以及7中的虚拟存储网关可以是第一虚拟存储网关,如图8所示。其一般包括存储器81、处理器82、网络接口83等部件。本领域技术人员可以理解,图8中所示出的结构并不构成对本网关的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图8对计算机80的各个构成部件进行具体的介绍:
存储器81可用于存储软件程序以及应用模块,处理器82通过运行存储在存储器81的软件程序以及应用模块,从而执行计算机80的各种功能应用以及数据处理。存储器81可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据计算机80的处理所创建的数据。此外,存储器81可以包括高速RAM(RandomAccess Memory,随机存取存储器),还可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器82是计算机80的控制中心,利用各种接口和线路连接整个计算机的各个部分。
具体地,处理器82通过运行或执行存储在存储器81内的软件程序和/或应用模块,以及调用存储在存储器81内的数据,处理器82可以实现,通过网络接口83接收第一主机发送的第一数据读写请求,数据读写请求包括第一逻辑块寻址地址;
根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将第一数据读写请求修改为第二数据读写请求,第二数据读写请求包括第二逻辑块寻址地址;
通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备。
进一步地,处理器82还可以实现,判断第一虚拟存储网关与第二虚拟存储网关的业务数据链路是否通畅。
进一步地,处理器82还可以实现,
根据第二虚拟存储网关的广播信息获取第二虚拟存储网关能够访问的存储设备信息;
判断第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备是否相同,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备相同时,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅,当第二虚拟存储网关能够访问的存储设备,与第一虚拟存储网关能够访问的存储设备不相同时,则判断第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路不通畅。
进一步地,处理器82还可以实现,
当第一虚拟存储网关访问第二存储设备超时或发生错误时,第一虚拟存储网关向第二虚拟存储网关发送测试消息,测试消息用于指示第二虚拟存储网关能否访问第二存储设备;
第二虚拟存储网关发送的测试结果,当测试结果表示第二虚拟存储网关测试能访问第二存储设备时,业务数据链路不通畅,则确定第一虚拟存储网关与第二虚拟存储网关之间的业务数据链路通畅。
进一步地,处理器82还可以实现,
当第一虚拟存储网关和第二虚拟存储网关之间不存在心跳网络时,在第一虚拟存储网关和第二虚拟存储网关之间搭建心跳网络。
实施例七
本发明实施例提供了一种数据传输系统,参见图9,该系统包括:第一数据中心,第一数据中心包括:第一存储设备701、第一主机702以及如实施例四或五或六描述的虚拟存储网关703。
本发明实施例通过当第一数据中心和第二数据中心之间不存在业务数据链路,在第一虚拟存储网关和第二虚拟存储网关之间搭建心跳网络,第一虚拟存储网关根据保存的第一LBA地址与第二LBA地址的对应关系,将接收到的第一数据读写请求修改为第二数据读写请求,通过第一虚拟存储网关和第二虚拟存储网关之间的心跳网络,将第二数据读写请求发送给第二虚拟存储网关,使得第二虚拟存储网关将第二数据读写请求发送到第二存储设备,避免了当两个数据中心间业务数据链路出现故障时,两个数据中心间不能进行读写数据的传输,保证了业务质量。
需要说明的是:上述实施例提供的虚拟存储网关在进行数据通道保护时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的虚拟存储网关与数据传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种数据传输方法,适用于第一数据中心和第二数据中心之间的数据传输,其中,所述第一数据中心包括:第一存储设备、第一主机和第一虚拟存储网关,所述第二数据中心包括:第二存储设备、第二主机和第二虚拟存储网关,其特征在于,所述方法包括:
所述第一虚拟存储网关接收所述第一主机发送的第一数据读写请求,所述第一数据读写请求包括第一逻辑块寻址地址;
根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将所述第一数据读写请求修改为第二数据读写请求,所述第二数据读写请求包括所述第二逻辑块寻址地址;
通过所述第一虚拟存储网关和所述第二虚拟存储网关之间的心跳网络,将所述第二数据读写请求发送给所述第二虚拟存储网关,使得所述第二虚拟存储网关将所述第二数据读写请求发送到所述第二存储设备。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅。
3.根据权利要求2所述的方法,其特征在于,所述判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅,包括:
根据所述第二虚拟存储网关的广播信息,获取所述第二虚拟存储网关能够访问的存储设备信息;
判断所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备是否相同,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备不相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
4.根据权利要求2所述的方法,其特征在于,所述判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的业务数据链路是否通畅,包括:
当所述第一虚拟存储网关访问所述第二存储设备超时或发生错误时,所述第一虚拟存储网关向所述第二虚拟存储网关发送测试消息,所述测试消息用于指示所述第二虚拟存储网关测试能否访问所述第二存储设备;
接收所述第二虚拟存储网关发送的测试结果,当所述测试结果表示所述第二虚拟存储网关能访问所述第二存储设备时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
5.根据权利要求1-4任一项所述的方法,其特征在于,当所述第一虚拟存储网关和所述第二虚拟存储网关之间不存在所述心跳网络时,所述方法还包括:
在所述第一虚拟存储网关和所述第二虚拟存储网关之间搭建所述心跳网络。
6.一种虚拟存储网关,适用于第一数据中心和第二数据中心之间的数据传输,其中,所述第一数据中心包括:第一存储设备、第一主机和第一虚拟存储网关,所述第二数据中心包括:第二存储设备、第二主机和第二虚拟存储网关,其特征在于,所述虚拟存储网关为所述第一虚拟存储网关,且所述虚拟存储网关包括:
接收模块,用于接收所述第一主机发送的第一数据读写请求,所述数据读写请求包括第一逻辑块寻址地址;
处理模块,用于根据保存的第一逻辑块寻址地址与第二逻辑块寻址地址的对应关系,将所述第一数据读写请求修改为第二数据读写请求,所述第二数据读写请求包括所述第二逻辑块寻址地址;
发送模块,用于通过所述第一虚拟存储网关和所述第二虚拟存储网关之间的心跳网络,将所述第二数据读写请求发送给所述第二虚拟存储网关,使得所述第二虚拟存储网关将所述第二数据读写请求发送到所述第二存储设备。
7.根据权利要求6所述的网关,其特征在于,所述网关还包括:
判断模块,用于判断所述第一虚拟存储网关与所述第二虚拟存储网关的业务数据链路是否通畅。
8.根据权利要求7所述的网关,其特征在于,所述判断模块,包括:
获取单元,用于根据所述第二虚拟存储网关的广播信息,获取所述第二虚拟存储网关能够访问的存储设备信息;
判断单元,用于判断所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备是否相同,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备相同时,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅,当所述第二虚拟存储网关能够访问的存储设备,与所述第一虚拟存储网关能够访问的存储设备不相同时,则判断所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路不通畅。
9.根据权利要求7所述的网关,其特征在于,所述判断模块包括:
发送单元,用于当所述第一虚拟存储网关访问所述第二存储设备超时或发生错误时,所述第一虚拟存储网关向所述第二虚拟存储网关发送测试消息,所述测试消息用于指示所述第二虚拟存储网关能否访问所述第二存储设备;
所述判断单元还用于,接收所述第二虚拟存储网关发送的测试结果,当所述测试结果表示所述第二虚拟存储网关测试能访问所述第二存储设备时,所述业务数据链路不通畅,则确定所述第一虚拟存储网关与所述第二虚拟存储网关之间的所述业务数据链路通畅。
10.根据权利要求6所述的网关,其特征在于,所述网关还包括:
连接模块,用于当所述第一虚拟存储网关和所述第二虚拟存储网关之间不存在所述心跳网络时,在所述第一虚拟存储网关和所述第二虚拟存储网关之间搭建所述心跳网络。
11.一种数据传输系统,其特征在于,所述系统包括:第一数据中心,所述第一数据中心包括:第一存储设备、第一主机和如权利要求6-10任一项所述的虚拟存储网关。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310250241.7A CN104243197B (zh) | 2013-06-21 | 2013-06-21 | 数据传输方法、系统及虚拟存储网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310250241.7A CN104243197B (zh) | 2013-06-21 | 2013-06-21 | 数据传输方法、系统及虚拟存储网关 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104243197A true CN104243197A (zh) | 2014-12-24 |
CN104243197B CN104243197B (zh) | 2017-12-15 |
Family
ID=52230597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310250241.7A Active CN104243197B (zh) | 2013-06-21 | 2013-06-21 | 数据传输方法、系统及虚拟存储网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104243197B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743694A (zh) * | 2015-06-29 | 2016-07-06 | 巫立斌 | 一种虚拟化存储的自恢复方法 |
CN106681650A (zh) * | 2015-11-10 | 2017-05-17 | 中国电信股份有限公司 | 虚拟卷访问方法和虚拟化系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7609619B2 (en) * | 2005-02-25 | 2009-10-27 | Cisco Technology, Inc. | Active-active data center using RHI, BGP, and IGP anycast for disaster recovery and load distribution |
CN101383778B (zh) * | 2008-10-27 | 2011-04-13 | 杭州华三通信技术有限公司 | 基于网络双出口的报文传输方法和出口路由器 |
CN102237929A (zh) * | 2011-07-15 | 2011-11-09 | 北京星网锐捷网络技术有限公司 | 一种基于光纤通信网络的设备切换方法、装置及系统 |
CN101674331B (zh) * | 2009-10-21 | 2012-11-07 | 成都市华为赛门铁克科技有限公司 | 集群存储系统及其脑裂处理方法 |
-
2013
- 2013-06-21 CN CN201310250241.7A patent/CN104243197B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7609619B2 (en) * | 2005-02-25 | 2009-10-27 | Cisco Technology, Inc. | Active-active data center using RHI, BGP, and IGP anycast for disaster recovery and load distribution |
CN101383778B (zh) * | 2008-10-27 | 2011-04-13 | 杭州华三通信技术有限公司 | 基于网络双出口的报文传输方法和出口路由器 |
CN101674331B (zh) * | 2009-10-21 | 2012-11-07 | 成都市华为赛门铁克科技有限公司 | 集群存储系统及其脑裂处理方法 |
CN102237929A (zh) * | 2011-07-15 | 2011-11-09 | 北京星网锐捷网络技术有限公司 | 一种基于光纤通信网络的设备切换方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
孙一晴: "利用存储网关实现基于网络存储的企业私有云", 《机电工程》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743694A (zh) * | 2015-06-29 | 2016-07-06 | 巫立斌 | 一种虚拟化存储的自恢复方法 |
CN106681650A (zh) * | 2015-11-10 | 2017-05-17 | 中国电信股份有限公司 | 虚拟卷访问方法和虚拟化系统 |
CN106681650B (zh) * | 2015-11-10 | 2021-04-30 | 中国电信股份有限公司 | 虚拟卷访问方法和虚拟化系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104243197B (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100581172C (zh) | 一种对目的磁盘进行访问的方法和扩展磁盘容量的系统 | |
CN104077199B (zh) | 基于共享磁盘的高可用集群的隔离方法和系统 | |
CN105556930A (zh) | 针对远程存储器访问的nvm express控制器 | |
CN103051470B (zh) | 一种集群及其磁盘心跳的控制方法 | |
CN102223394A (zh) | 远程直接存储设备访问 | |
CN103164523A (zh) | 数据一致性检查方法、装置及系统 | |
CN104503965A (zh) | PostgreSQL高弹性的高可用及负载均衡实现方法 | |
CN107666493B (zh) | 一种数据库配置方法及其设备 | |
CN104021069A (zh) | 基于分布式虚拟机系统的软件性能测试的管理方法和系统 | |
US20170090793A1 (en) | Devices and methods for a data storage device | |
CN104750428A (zh) | 块储存存取和网关模块、储存系统和方法与内容递送装置 | |
CN110177010B (zh) | 一种链路切换方法及装置 | |
US9424892B2 (en) | Storage device to which memory device are connectable in multiple stages | |
CN104170307B (zh) | 失效切换方法、装置和系统 | |
CN111988169B (zh) | 一种云平台异常磁盘清理修复的方法、系统、设备及介质 | |
CN110012111B (zh) | 一种数据服务集群系统及数据处理方法 | |
CN113259273B (zh) | 交换机的控制方法、交换机、计算机设备和存储介质 | |
US10623383B2 (en) | Symmetric multiprocessing management | |
CN114024922A (zh) | 一种针对光纤交换机的镜像端口冗余处理方法及装置 | |
US20150095530A1 (en) | Dynamic port naming in a chassis | |
CN104243197A (zh) | 数据传输方法、系统及虚拟存储网关 | |
CN1543135A (zh) | San系统中基于负载自适应的异步远程镜像方法 | |
CN113051428B (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN104780123A (zh) | 一种网络包收发处理装置及其设计方法 | |
CN112104729A (zh) | 一种存储系统及其缓存方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |