CN110609659A - 用于执行读取命令的NVMeoF RAID实现方法 - Google Patents
用于执行读取命令的NVMeoF RAID实现方法 Download PDFInfo
- Publication number
- CN110609659A CN110609659A CN201910129096.4A CN201910129096A CN110609659A CN 110609659 A CN110609659 A CN 110609659A CN 201910129096 A CN201910129096 A CN 201910129096A CN 110609659 A CN110609659 A CN 110609659A
- Authority
- CN
- China
- Prior art keywords
- fabric
- based high
- high speed
- target devices
- volatile memory
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000003999 initiator Substances 0.000 claims abstract description 67
- 238000012546 transfer Methods 0.000 claims abstract description 25
- 239000004744 fabric Substances 0.000 claims description 74
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 239000007787 solid Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明描述了用于执行读取命令的NVMeoF RAID实现方法和一种NVMeoF RAID控制器。NVMeoF RAID控制器包括包括NVMeoF RAID目标模块、NVMeoF RAID实现模块、以及NVMeoF RAID发起器模块。NVMeoF RAID目标模块适于从一个或多个计算主机接收一个或多个NVMeoF命令。NVMeoF RAID实现模块适于从NVMeoF RAID目标模块接收一个或多个NVMeoF命令,并对接收的一个或多个NVMeoF命令执行RAID功能。NVMeoF RAID发起器模块从NVMeoF RAID实现模块接收一个或多个NVMeoF命令,并将所述一个或多个NVMeoF命令传输到一个或多个存储目标装置,以便建立一个或多个虚拟队列对连接并实现所述一个或多个计算主机与所述一个或多个存储目标装置之间的直接数据传输。
Description
技术领域
本发明一般涉及存储系统,更具体地说,本发明涉及用于通过基于NVMeoF以太网的SSD中的虚拟连接队列对,执行读取命令的高效RAID实现的系统和方法。
背景技术
RAID(独立磁盘冗余阵列)是一种将多个磁盘驱动器组件组合成逻辑单元的存储技术。数据以取决于冗余和性能级别的、被称为“RAID级别”的多种方式中的一种方式分布在驱动器上。固态驱动器(SSD)或固态磁盘是使用集成电路装配件作为存储器以持久地存储数据的固态存储装置。SSD技术主要使用与传统块输入/输出(I/O)硬盘驱动器(HDD)兼容的电子接口,其允许在常见应用中进行简单替换。
现有存储系统通常是具有一个或多个硬盘驱动器(HDD)或一个或多个固态驱动器(SSD)的物理服务器(存储盒节点)。现有存储系统也可以是可访问一个或多个HDD和/或SSD的虚拟机或虚拟逻辑单元构件。现有存储系统可具有PCIe(外围组件快速互连)扩展限制。如图1所示,现有的存储系统因为其需要CPU、价格昂贵的具有RAID硬件的复杂主板而具有庞大的体积。此外,现有存储系统使用多个直接存储器访问(DMA)数据复制来执行数据传输。这些多个DMA数据事务导致更多延迟并消耗更多功率。
图1是根据现有技术的示出了具有用于数据传输的存储盒节点106的现有架构的示意图。根据现有技术,一个或多个计算机主机102_1至102_M连接到40G/100G以太网交换机104,以太网交换机104又连接到存储盒节点106。存储盒节点106包括具有RAID硬件的一个或多个SSD 108_1至108_N并具有PCIe扩展限制。存储盒节点106还包括CPU、具有RAID硬件的主板,这种主板价格昂贵并且使存储盒节点106体积庞大。此外,存储盒节点106与一个或多个计算主机102_1至102_M之间的数据传输是利用多个数据事务执行的,这些数据事务创建数据流量、消耗功率和增加延迟。
因此,需要一种解决本文中的上述问题和难题并提供解决方案的系统和方法。因此,仍然需要一种系统来解决可扩展性(除了PCIe以外的以太网SSD可扩展方式)、功率和延迟的问题,并且开辟在存储节点和计算主机之间直接传输数据的可能性。
发明内容
本文的各种实施例描述了一种NVMeoF独立磁盘冗余阵列(RAID)控制器,其用于在计算主机和基于结构的一个或多个存储目标装置之间执行直接数据传输。NVMeoF独立磁盘冗余阵列(RAID)控制器包括NVMeoF RAID目标模块、NVMeoF RAID实现模块、以及NVMeoFRAID发起器模块。所述NVMeoF RAID目标模块适于与所述计算主机交互并从所述计算主机接收一个或多个基于结构的高速非易失性存储器(non-volati le memory express overfabrics,NVMeoF)命令。所述NVMeoF RAID实现模块适于从所述NVMeoF RAID目标模块接收所述一个或多个NVMeoF命令,并对接收到的所述一个或多个NVMeoF命令执行RAID功能。所述NVMeoF RAID发起器模块适于与所述一个或多个存储目标装置交互。所述NVMeoF RAID发起器模块从所述NVMeoF RAID实现模块接收所述一个或多个NVMeoF命令,并将所述一个或多个NVMeoF命令传输到所述一个或多个存储目标装置并在所述计算主机与所述一个或多个存储目标装置之间建立一个或多个虚拟队列对连接,以实现所述计算主机和所述一个或多个存储目标装置之间的所述直接数据传输。
根据一个实施例,所述计算主机与所述一个或多个存储目标装置之间的所述直接数据传输是通过以下连接实现的:由所述计算主机在所述计算主机与所述NVMeoF RAID目标模块之间建立的计算端物理连接、由所述NVMeoF RAID发起器模块在所述NVMeoF RAID发起器模块与所述一个或多个存储目标装置之间建立的存储端物理连接,以及由所述NVMeoFRAID发起器模块在所述一个或多个存储目标装置与所计算主机之间建立的一个或多个虚拟队列对连接。
根据一个实施例,所述RAID功能包括识别一个或多个相应的存储目标装置,其中由所述计算主机传输用于所述一个或多个相应的存储目标装置的所述NVMeoF命令。
在一方面,提供了一种在计算主机与NVMeoF RAID目标模块之间建立计算端物理连接的方法,所述方法包括:由所述计算主机将一个或多个NVMeoF连接命令发出到所述NVMeoF RAID目标模块,以建立所述计算端物理连接;由所述NVMeoF RAID目标模块接收从所述计算主机发出的所述一个或多个NVMeoF连接命令,以在所述NVMeoF RAID目标模块内创建管理和输入/输出(I/O)队列;由所述NVMeoF RAID目标模块将一个或多个NVMeoF连接命令完成传输到所述计算主机;并且当所述计算端物理连接被建立时,由所述计算主机从所述NVMeoF RAID目标模块接收所述一个或多个NVMeoF连接命令完成。
在另一方面,提供了一种在NVMeoF RAID发起器模块与一个或多个存储目标装置之间建立一个或多个存储端物理连接的方法,所述方法包括:由所述NVMeoF RAID发起器模块将一个或多个NVMeoF连接命令发出到所述一个或多个存储目标装置,以建立所述一个或多个存储端物理连接;由所述一个或多个存储目标装置从所述NVMeoF RAID发起器模块接收所述一个或多个NVMeoF连接命令,以在所述一个或多个存储目标装置中创建管理并实现一个或多个I/O队列;由所述一个或多个存储目标装置将一个或多个NVMeoF连接命令完成传输到所述NVMeoF RAID发起器模块;并且当所述一个或多个存储端物理连接被建立时,由所述NVMeoF RAID发起器模块从所述一个或多个存储目标装置接收所述一个或多个NVMeoF连接命令完成。
在又一方面,提供了一种建立一个或多个虚拟队列对连接的方法,所述一个或多个虚拟队列对连接用于实现一个或多个计算主机与一个或多个存储目标装置之间的直接数据传输,所述方法包括:由NVMeoF RAID发起器模块将一个或多个供应商连接命令发出到所述一个或多个存储目标装置,其中所述一个或多个供应商连接命令包括关于用于在所述一个或多个计算主机与所述一个或多个存储目标装置之间建立所述一个或多个虚拟队列对连接的一个或多个计算主机的信息;由所述一个或多个存储目标装置接收所述一个或多个供应商连接命令以在所述一个或多个计算主机与所述一个或多个存储目标装置之间创建虚拟管理并实现I/O队列连接;当所述一个或多个虚拟队列对连接被建立时,由所述一个或多个存储目标装置将一个或多个供应商连接命令完成传输到NVMeoF RAID发起器模块;并且由所述NVMeoF RAID发起器模块从所述一个或多个存储目标装置接收所述一个或多个供应商连接命令完成。
根据一个实施例,通过在所述一个或多个计算主机与所NVMeoF RAID控制器之间创建一个和多个计算端物理连接并在所述NVMeoF RAID控制器与所述一个或多个存储目标装置之间创建一个或多个存储端物理连接,来建立所述一个或多个虚拟队列对连接。
在另一方面,提供了一种用于在计算主机与一个或多个存储目标装置之间读取输入/输出(I/O)数据的方法,所述方法包括:由所述计算主机将一个或多个NVMeoF读取命令发送到NVMeoF RAID目标模块,用于读取针开始逻辑块地址(sLBA)开始的n个逻辑块(nLB)的所述一个或多个存储目标装置中的数据;由NVMeoF RAID实现模块识别存储来自所述nLB的数据的所述一个或多个存储目标装置;由NVMeoF RAID发起器模块将所述一个或多个NVMeoF读取命令发起到所识别的包括来自相应的sLBA和nLB的数据的所述一个或多个存储目标装置;通过使用一个或多个虚拟队列,由所述一个或多个存储目标装置将RDMA_WRITE事务直接发起到所述计算主机;由一个或多个存储目标装置将一个或多个成功读取命令完成传输到所述NVMeoF RAID发起器模块;并且由所述NVMeoF RAID目标模块将来自所述一个或多个存储目标装置的所述一个或多个成功读取命令完成作为合并的单个命令完成传输到所述计算主机。
在另一方面,本文描述了一种用于在计算主机与一个或多个存储目标装置之间执行输入/输出(I/O)读取容错数据的方法。所述方法包括:由所述计算主机将一个或多个NVMeoF读取命令传输到NVMeoF RAID目标模块,用于读取从一个sLBA开始的nLB的所述一个或多个存储目标装置中的数据;由NVMeoF RAID控制器模块识别存储来自从所述sLBA开始的所述nLB的数据的所述一个或多个存储目标装置;由NVMeoF RAID发起器模块基于一个或多个存储端物理连接将所述一个或多个NVMeoF读取命令发起到所识别的包括来自相应的sLBA和nLB的数据的一个或多个注册的存储目标装置;通过使用一个或多个虚拟队列对连接,由所述一个或多个存储目标装置将一个或多个RDMA_WRITE事务直接发起到所述计算主机;通过使用所述一个或多个存储端物理连接,由一个或多个存储目标装置将一个或多个读取命令完成传输到所述NVMeoF RAID发起器模块;由所述NVMeoF RAID发起器模块基于所述一个或多个存储器端物理连接获取读取完成失败并识别原因,以针对所述读取完成失败重建数据;由所述NVMeoF RAID发起器模块基于所述一个或多个存储端物理连接将所述一个或多个NVMeoF读取命令重新发出到所述一个或多个注册的存储目标装置;由所述一个或多个存储目标装置基于所述一个或多个存储端物理连接通过所述一个或多个RDMA_WRITE事务,将相应的条带和奇偶校验条带传输到所述NVMeoF RAID发起器模块;由所述NVMeoFRAID控制器从接收到的条带和奇偶校验条带检索缺失的条带;由所述一个或多个存储目标装置将一个或多个成功NVMeoF读取完成传输到所述NVMeoF RAID发起器模块;由所述NVMeoF RAID目标模块将检索到的条带作为RDMA_WRITE事务传输到所述计算主机;并且由所述NVMeoF RAID控制器的所述NVMeoF RAID目标模块将合并的NVMeoF命令完成发送到所述计算主机。
上文已经概述了本发明的各个方面,并且用于帮助更好地理解随后的更完整的详细描述。参照这些,应清楚地理解本发明不限于本文描述和说明的方法或应用。从本文包含的详细描述或说明中明显或显而易见的本发明的任何其他优点和目的都在本发明的范围内。
附图说明
根据以下优选实施例的描述和附图,本领域技术人员将想到其他目的、特征和优点,其中:
图1是示出根据现有技术的具有用于数据传输的存储盒节点的现有架构的示意图。
图2是示出根据本发明实施例的用于通过存储目标装置中的虚拟连接队列对进行高效RAID实现的示例性方法的示意图。
图3是示出根据本发明实施例的利用NVMeoF RAID控制器在计算主机和一个或多个存储目标装置之间建立一个或多个虚拟队列对连接的方法的示意流程图。
图4是示出根据本发明实施例的对计算主机与一个或多个存储目标装置之间的输入/输出(I/O)数据流进行读取的示意流程图。
图5是示出根据本发明实施例的在计算主机和一个或多个存储目标装置之间执行输入/输出(I/O)读取容错数据的示意流程图。
尽管在一些附图中示出了本发明的具体特征而在其他附图中没有示出,但这仅仅是为了方便,因为每个特征可以与根据本发明的任何或所有其他特征组合。
具体实施方式
本发明描述了一种用于通过基于以太网的存储目标装置中的虚拟连接队列对,执行读取命令的高效RAID实现的系统和方法。在本发明实施例的以下详细描述中,对构成本文一部分的附图进行参照,并且附图通过图示的方式示出了可以实施本发明的特定实施例。足够详细地描述了这些实施例以使本领域技术人员能够实施本发明,并且应该理解,可以利用其他实施例,并且可以在不脱离本发明的范围的情况下做出改变。因此,以下详细描述不应被视为具有限制意义,并且本发明的范围仅由所附权利要求限定。
说明书可以在指代若干位置参照“一”、“一个”或“一些”实施例。这并不一定意味着每一这种参照是针对相同的实施例,或者该特征仅适用于单个实施例。还可以组合不同实施例的单个特征以提供给其他实施例。
如本文所使用的,单数形式“一”、“一个”和“所述”旨在也包括复数形式,除非另有明确说明。将进一步理解,当在本说明书中使用术语“包括”、“包含”、“包括有”和/或“包含有”时,指所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除存在或添加本说明书的一个或多个其他特征、整数、步骤、操作、元素、组件和/或组。如本文所使用的,术语“和/或”包括一个或多个相关所列项目的任何和所有组合和布置。
除非另外定义,否则本文使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。将进一步理解,诸如在常用词典中定义的那些术语应当被解释为具有与其在相关领域的上下文中的含义一致的含义,并且将不被理解为理想化或过于正式的含义,除非在本文中有明确限定。
通过参照在附图中示出并在下文描述中详述的非限制性实施例,将更全面地解释本文的实施例及其各种特征和优点。对众所周知的组件和处理技术的描述已被省略,以免不必要地模糊本文的实施例。本文使用的示例仅旨在便于理解本文中的实施例可以实施的方式,并且进一步使本领域技术人员能够实施本文的实施例。因此,这些实施例不应被解释为限制本文实施例的范围。
在本发明实施例的以下详细描述中,参照构成本文一部分的附图,并且其中通过图示的方式示出了可以实施本发明的具体实施例。足够详细地描述了这些实施例以使本领域技术人员能够实施本发明,并且应该理解,可以利用其他实施例,并且可以在不脱离本发明的范围的情况下进行改变。因此,以下详细描述不应被视为具有限制意义,并且本发明的范围仅由所附权利要求限定。
图2是示出根据本发明的实施例的用于通过存储目标装置208_1至208_N中的虚拟连接队列对来高效RAID实现的示例性方法的示意图。根据本实施例,直接使用由NVMeoFRAID控制器204创建的虚拟连接队列对来执行在一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间的数据传输。NVMeoF RAID控制器204、一个或多个计算主机202_1至202_M以及一个或多个存储目标装置208_1至208_N连接至以太网交换机206。NVMeoF RAID控制器204包括NVMeoF RAID目标模块210、NVMeoF RAID实现模块212和NVMeoF RAID发起器模块214。NVMeoF RAID目标模块210适于与一个或多个计算主机202_1至202_M交互并且从一个或多个计算主机202_1至202_M接收一个或多个基于结构的高速非易失性存储器(NVMeoF)命令。NVMeoF RAID实现模块212适于从NVMeoF RAID目标模块210接收一个或多个NVMeoF命令,并对一个或多个接收到的NVMeoF命令执行RAID功能。
NVMeoF RAID发起器模块214从NVMeoF RAID实现模块212接收一个或多个NVMeoF命令,并将一个或多个NVMeoF命令传输到一个或多个存储目标装置208_1到208_N。NVMeoFRAID发起器模块214在一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间建立一个或多个虚拟队列对连接,从而能够在一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间实现直接数据传输。一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间的直接数据传输是通过以下连接实现的:在一个或多个计算主机202_1至202_M与NVMeoF RAID目标模块210之间建立的一个或多个计算端物理连接、在NVMeoF RAID发起器模块214与一个或多个存储目标装置208_1至208_N之间建立的一个或多个存储端物理连接、以及一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间的一个或多个虚拟队列对连接。
图3是示出根据本发明的实施例的利用NVMeoF RAID控制器204在计算主机202_1与一个或多个存储目标装置208_1至208_N之间建立一个或多个虚拟队列对连接的方法的示意流程图。在该图中未示出计算主机202_1和以太网206之间的连接、NVMeoF RAID控制器204和以太网206之间的连接、存储目标装置208_1至208_N和以太网206之间的连接。根据该图,在步骤0处,计算主机202_1执行探索并发现NVMeoF RAID控制器204。在步骤1处,计算主机202_1将NVMeoF连接命令发送到NVMeoF RAID控制器204。在步骤2处,NVMeoF RAID目标模块210将NVMeoF连接命令的完成发送到计算主机202_1。在步骤3处,计算主机202_1与NVMeoF RAID控制器204建立计算端物理连接。NVMeoF RAID实现模块212将注册的存储目标的信息提供给NVMeoF RAID发起器模块214。在步骤4(即,4a-4n)处,NVMeoF RAID发起器模块214将(a)具有NVMeoF RAID发起器模块214的传送上下文信息的一个或多个NVMeoF连接命令和(b)具有计算主机202_1的传送上下文信息的一个或多个供应商(vendor)连接命令发送到注册的一个或多个存储目标装置208_1至208_N,以建立一个或多个存储端物理连接。在实施例中,通过NVMeoF RAID发起器模块214传送到注册的一个或多个存储目标装置208_1至208_N的一个或多个供应商连接命令中的每个供应商连接命令,是彼此不同/唯一的命令。
在步骤5(即,5a-5n)处,在内部存储NVMeoF RAID发起器模块214和计算主机202_1的传送上下文信息之后,一个或多个存储目标装置208_1至208_N将NVMeoF连接命令完成和供应商连接命令完成发送到NVMeoF RAID发起器模块214。在步骤6(即,6a-6n)处,NVMeoFRAID发起器模块214与注册的一个或多个存储目标装置208_1至208_N建立一个或多个存储端物理连接。在步骤7(即,7a-7n)处,一个或多个存储目标装置208_1至208_N与计算主机202_1建立一个或多个虚拟队列对连接。一个或多个虚拟队列对连接允许执行一个或多个存储目标装置208_1至208_N与计算主机202_1之间的直接数据传输。在实施例中,在一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间建立一个或多个虚拟队列对连接。通过一个或多个计算端物理连接、一个或多个存储端物理连接以及通过将计算主机202_1至202_M的传送上下文信息和NVMeoF RAID发起器模块214的传送上下文信息存储在一个或多个存储目标装置208_1至208_N中,来建立一个或多个虚拟队列对连接。
图4是示出根据本发明的实施例的读取计算主机202_1与一个或多个存储目标装置208_1至208_N之间的输入/输出(I/O)数据的示意流程图。在该图中未示出计算主机202_1与以太网206之间的连接、NVMeoF RAID控制器204与以太网206之间的连接、存储目标装置208_1至208_N与以太网206之间的连接。根据该图,在步骤1处,计算主机202_1将NVMeoF读取命令发送到计算端物理连接上的NVMeoF RAID目标模块210,用于从开始逻辑块地址(sLBA)开始读取n个逻辑块(nLB)的数据。在步骤2处,NVMeoF RAID实现模块212识别存储来自nLB的数据的一个或多个存储目标装置208_1至208_N。在步骤3(即,3a-3n)处,NVMeoFRAID发起器模块214发起以下传输:将一个或多个存储端物理连接上的一个或多个NVMeoF读取命令传输到所识别的包括来自相应的sLBA和nLB的数据的一个或多个存储目标装置208_1至208_N(例如,注册的一个或多个存储目标装置)。在步骤4(即,4a-4n)处,一个或多个存储目标装置208_1至208_N通过使用建立的一个或多个虚拟队列对连接将RDMA_WRITE事务直接发起到计算主机202_1。在步骤5(即,5a-5n)处,一个或多个存储目标装置208_1至208_N将一个或多个成功读取完成传输到一个或多个存储端物理连接上的NVMeoF RAID发起器模块214。最后,在步骤6处,NVMeoF RAID目标模块210将合并的(consol idate)单个命令完成传输到计算端物理连接上的计算主机202_1。在实施例中,利用NVMeoF RAID控制器204经由上述步骤,在一个或多个计算主机202_1至202_M与一个或多个存储目标装置208_1至208_N之间执行一个或多个NVMeoF读取命令。
图5是示出根据本发明的实施例的在计算主机202_1和NVMeoF RAID控制器204之间执行输入/输出(I/O)NVMeoF读取容错数据的示意流程图。在该图中未示出计算主机202_1至202_M与以太网206之间的连接、NVMeoF RAID控制器204和以太网206之间的连接、存储目标装置208_1至208_N和以太网206之间的连接。在步骤1处,计算主机202_1将NVMeoF读取命令发送到NVMeoF RAID目标模块210,以从开始逻辑块地址(sLBA)开始读取n个逻辑块(nLB)的数据。在步骤2处,NVMeoF RAID实现模块212识别存储nLB的数据的一个或多个存储目标装置208_1至208_N。在步骤3(即,3a-3n)处,NVMeoF RAID发起器模块214发起以下传输:将一个或多个存储终端物理连接上的一个或多个NVMeoF读取命令传输到所识别的包括来自相应的sLBA和nLB的数据的一个或多个存储目标装置208_1至208_N。
在步骤4(即,4a-4n)处,一个或多个存储目标装置208_1至208_N通过使用用于对应逻辑块的数据传输的一个或多个虚拟队列对连接,将一个或多个RDMA_WRITE事务直接发起到计算主机202_1。在步骤5(即,5a-5n)处,一个或多个存储目标装置208_1至208_N还将一个或多个读取命令完成传输到一个或多个存储端物理连接上的NVMeoF RAID发起器模块214。NVMeoF RAID发起器模块214通过一个或多个存储端物理连接中的一个获得读取完成失败命令,并识别原因以针对读取完成失败重建数据。
在步骤6(即,6a-6n)处,NVMeoF RAID发起器模块214将一个或多个NVMeoF读取命令重新发出到注册的(先前发送成功完成的)一个或多个存储目标装置208_1至208_N。重新发出一个或多个NVMeoF读取命令以请求一个或多个存储目标装置208_1至208_N基于一个或多个存储端物理连接将数据发送到NVMeoF RAID发起器模块214。在步骤7(即,7a-7n)处,一个或多个存储目标装置208_1至208_N通过用于相应逻辑块的数据传输的一个或多个存储端物理连接,将一个或多个RDMA_WRITE事务发起到NVMeoF RAID发起器模块214。在步骤8(即,8a-8n)处,一个或多个存储目标装置208_1至208_N将一个或多个成功的NVMeoF读取完成传输到NVMeoF RAID发起器模块214。在步骤9处,NVMeoF RAID控制器204从接收到的条带和奇偶校验条带中检索缺失的条带(针对该数据NVMeoF RAID发起器模块214之前接收到失败完成)。在步骤10处,NVMeoF RAID目标模块210将检索到的条带作为RDMA_WRITE事务传输到计算主机202_1。最后,在步骤11处,NVMeoF RAID控制器204的NVMeoF RAID目标模块210将合并的NVMeoF命令完成发送到计算主机202_1。在实施例中,经由上述步骤在一个或多个计算主机之间202_1至202_M与NVMeoF RAID控制器204之间处理一个或多个NVMeoF读取命令的容错。
尽管本说明书已经关于本发明的特定实施例进行了详细描述,但是应当理解,本领域技术人员在理解了前述内容后,可以容易地想到对这些实施例的改变、变化和等同物。在不脱离本发明的范围的情况下,本领域普通技术人员可以实施对本发明的这些和其他修改和变化。此外,本领域普通技术人员将理解,前面的描述仅是示例性的,并不意图限制本发明。因此,本主题旨在涵盖这些修改和变化。
Claims (9)
1.一种基于结构的高速非易失性存储器独立磁盘冗余阵列控制器,其用于在计算主机和基于结构的一个或多个存储目标装置之间执行直接数据传输,所述基于结构的高速非易失性存储器独立磁盘冗余阵列控制器包括:
基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块,其中所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块适于与所述计算主机交互并从所述计算主机接收一个或多个基于结构的高速非易失性存储器命令;
基于结构的高速非易失性存储器独立磁盘冗余阵列实现模块,其中所述基于结构的高速非易失性存储器独立磁盘冗余阵列实现模块适于从所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块接收所述一个或多个基于结构的高速非易失性存储器命令,并对接收到的所述一个或多个基于结构的高速非易失性存储器命令执行独立磁盘冗余阵列功能;以及
基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块,其中所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块适于与所述一个或多个存储目标装置交互,其中所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块从所述基于结构的高速非易失性存储器独立磁盘冗余阵列实现模块接收所述一个或多个基于结构的高速非易失性存储器命令,并将所述一个或多个基于结构的高速非易失性存储器命令传输到所述一个或多个存储目标装置并在所述计算主机与所述一个或多个存储目标装置之间建立一个或多个虚拟队列对连接,以实现所述计算主机和所述一个或多个存储目标装置之间的所述直接数据传输。
2.根据权利要求1所述的基于结构的高速非易失性存储器独立磁盘冗余阵列控制器,其中,所述计算主机与所述一个或多个存储目标装置之间的所述直接数据传输是通过以下连接实现的:由所述计算主机在所述计算主机与所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块之间建立的计算端物理连接、由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块在所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块与所述一个或多个存储目标装置之间建立的一个或多个存储端物理连接,以及由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块在所述一个或多个存储目标装置与所计算主机之间建立的一个或多个虚拟队列对连接。
3.根据权利要求1所述的基于结构的高速非易失性存储器独立磁盘冗余阵列控制器,其中,所述独立磁盘冗余阵列功能包括识别一个或多个相应的存储目标装置,其中由所述计算主机传输用于所述一个或多个相应的存储目标装置的所述一个或多个基于结构的高速非易失性存储器命令。
4.一种在计算主机与基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块之间建立计算端物理连接的方法,所述方法包括:
由所述计算主机将一个或多个基于结构的高速非易失性存储器连接命令发出到所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块,以建立所述计算端物理连接;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块接收从所述计算主机发出的所述一个或多个基于结构的高速非易失性存储器连接命令,以在所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块内创建管理和输入/输出队列;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块将一个或多个基于结构的高速非易失性存储器连接命令完成传输到所述计算主机;并且
当所述计算端物理连接被建立时,由所述计算主机从所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块接收所述一个或多个基于结构的高速非易失性存储器连接命令完成。
5.一种在基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块与一个或多个存储目标装置之间建立一个或多个存储端物理连接的方法,所述方法包括:
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块将一个或多个基于结构的高速非易失性存储器连接命令发出到所述一个或多个存储目标装置,以建立所述一个或多个存储端物理连接;
由所述一个或多个存储目标装置从所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块接收所述一个或多个基于结构的高速非易失性存储器连接命令,以在所述一个或多个存储目标装置中创建管理并实现一个或多个输入/输出队列;
由所述一个或多个存储目标装置将一个或多个基于结构的高速非易失性存储器连接命令完成传输到所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块;并且
当所述一个或多个存储端物理连接被建立时,由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块从所述一个或多个存储目标装置接收所述一个或多个基于结构的高速非易失性存储器连接命令完成。
6.一种建立一个或多个虚拟队列对连接的方法,所述一个或多个虚拟队列对连接用于实现一个或多个计算主机与一个或多个存储目标装置之间的直接数据传输,所述方法包括:
由基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块将一个或多个供应商连接命令发出到所述一个或多个存储目标装置,其中所述一个或多个供应商连接命令包括关于用于在所述一个或多个计算主机与所述一个或多个存储目标装置之间建立所述一个或多个虚拟队列对连接的一个或多个计算主机的信息;
由所述一个或多个存储目标装置接收所述一个或多个供应商连接命令以在所述一个或多个计算主机与所述一个或多个存储目标装置之间创建虚拟管理并实现输入/输出队列连接;
当所述一个或多个虚拟队列对连接被建立时,由所述一个或多个存储目标装置将一个或多个供应商连接命令完成传输到基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块;并且
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块从所述一个或多个存储目标装置接收所述一个或多个供应商连接命令完成,以建立所述一个或多个虚拟队列对连接。
7.根据权利要求6所述的方法,其中通过在所述一个或多个计算主机与所基于结构的高速非易失性存储器独立磁盘冗余阵列控制器之间创建一个和多个计算端物理连接并在所述基于结构的高速非易失性存储器独立磁盘冗余阵列控制器与所述一个或多个存储目标装置之间创建一个或多个存储端物理连接,来建立所述一个或多个虚拟队列对连接。
8.一种用于在计算主机与一个或多个存储目标装置之间读取输入/输出数据的方法,所述方法包括:
由所述计算主机将一个或多个基于结构的高速非易失性存储器读取命令发送到基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块,用于读取从开始逻辑块地址开始的n个逻辑块的所述一个或多个存储目标装置中的数据;
由基于结构的高速非易失性存储器独立磁盘冗余阵列实现模块识别存储来自所述n个逻辑块的数据的所述一个或多个存储目标装置;
由基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块将所述一个或多个基于结构的高速非易失性存储器读取命令发起到所识别的包括来自相应的开始逻辑块地址和n个逻辑块的数据的所述一个或多个存储目标装置;
通过使用一个或多个虚拟队列,由所述一个或多个存储目标装置将RDMA_WRITE事务直接发起到所述计算主机;
由所述一个或多个存储目标装置将一个或多个成功读取命令完成传输到所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块;并且
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块将来自所述一个或多个存储目标装置的所述一个或多个成功读取命令完成作为合并的单个命令完成传输到所述计算主机。
9.一种用于在计算主机与一个或多个存储目标装置之间执行输入/输出读取容错数据的方法,所述方法包括:
由所述计算主机将一个或多个基于结构的高速非易失性存储器读取命令传输到基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块,用于读取从开始逻辑块地址开始的n个逻辑块的所述一个或多个存储目标装置中的数据;
由基于结构的高速非易失性存储器独立磁盘冗余阵列控制器模块识别存储来自从所述开始逻辑块地址开始的所述n个逻辑块的数据的所述一个或多个存储目标装置;
由基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块基于一个或多个存储端物理连接将所述一个或多个基于结构的高速非易失性存储器读取命令发起到所识别的包括来自相应的开始逻辑块地址和n个逻辑块的数据的一个或多个注册的存储目标装置;
通过使用一个或多个虚拟队列对连接,由所述一个或多个存储目标装置将一个或多个RDMA_WRITE事务直接发起到所述计算主机;
通过使用所述一个或多个存储端物理连接,由一个或多个存储目标装置将一个或多个读取命令完成传输到所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块基于所述一个或多个存储器端物理连接获取读取完成失败并识别原因,以针对所述读取完成失败重建数据;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块基于所述一个或多个存储端物理连接将所述一个或多个基于结构的高速非易失性存储器读取命令重新发出到所述一个或多个注册的存储目标装置;
由所述一个或多个存储目标装置基于所述一个或多个存储端物理连接通过所述一个或多个RDMA_WRITE事务,将相应的条带和奇偶校验条带传输到所述基于结构的高速非易失性存储器独立磁盘冗余阵列控制器;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列控制器从接收到的条带和奇偶校验条带检索缺失的条带;
由所述一个或多个存储目标装置将一个或多个成功基于结构的高速非易失性存储器读取完成传输到所述基于结构的高速非易失性存储器独立磁盘冗余阵列发起器模块;
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块将检索到的条带作为RDMA_WRITE事务传输到所述计算主机;并且
由所述基于结构的高速非易失性存储器独立磁盘冗余阵列目标模块将合并的基于结构的高速非易失性存储器命令完成发送到所述计算主机。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201841022546 | 2018-06-15 | ||
IN201841022546 | 2018-06-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110609659A true CN110609659A (zh) | 2019-12-24 |
Family
ID=68839945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910129096.4A Pending CN110609659A (zh) | 2018-06-15 | 2019-02-21 | 用于执行读取命令的NVMeoF RAID实现方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11157204B2 (zh) |
KR (1) | KR102646616B1 (zh) |
CN (1) | CN110609659A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022028208A1 (zh) * | 2020-08-07 | 2022-02-10 | 华为技术有限公司 | 独立磁盘冗余阵列卡,处理命令的方法,存储装置和系统 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11016911B2 (en) * | 2018-08-24 | 2021-05-25 | Samsung Electronics Co., Ltd. | Non-volatile memory express over fabric messages between a host and a target using a burst mode |
US11561871B2 (en) * | 2019-12-18 | 2023-01-24 | GRAID Technology Inc. | Data transmission and protection system and method thereof |
CN111475111A (zh) * | 2020-04-01 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种避免破坏硬盘数据的raid组配对方法及装置 |
US20200319812A1 (en) * | 2020-06-03 | 2020-10-08 | Intel Corporation | Intermediary for storage command transfers |
US11561698B2 (en) * | 2021-04-20 | 2023-01-24 | EMC IP Holding Company LLC | NVMEoF flow control from initiator based on transaction latency |
US11983421B2 (en) | 2022-02-07 | 2024-05-14 | Hewlett Packard Enterprise Development Lp | Configuration of frontend services in storage nodes |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8078787B2 (en) * | 2007-06-22 | 2011-12-13 | Apple Inc. | Communication between a host device and an accessory via an intermediate device |
US8565269B2 (en) | 2008-04-15 | 2013-10-22 | Broadcom Corporation | Method and system for MAC and PHY synchronization for energy efficient networking |
US9298648B2 (en) | 2013-05-08 | 2016-03-29 | Avago Technologies General Ip (Singapore) Pte Ltd | Method and system for I/O flow management using RAID controller with DMA capabilitiy to directly send data to PCI-E devices connected to PCI-E switch |
US9384093B1 (en) * | 2014-05-28 | 2016-07-05 | Microsemi Storage Solutions (U.S.), Inc. | Raid enabled NVME device |
EP4202705A1 (en) * | 2016-04-04 | 2023-06-28 | Marvell Asia Pte, Ltd. | Methods and systems for accessing host memory through non-volatile memory over fabric bridging with direct target access |
US10346041B2 (en) * | 2016-09-14 | 2019-07-09 | Samsung Electronics Co., Ltd. | Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host |
CN107820693B (zh) * | 2016-12-28 | 2020-11-06 | 华为技术有限公司 | NVMe over Fabric中转发报文的方法、设备和系统 |
US10444722B2 (en) * | 2017-09-29 | 2019-10-15 | Intel Corporation | Techniques to direct access requests to storage devices |
US10481834B2 (en) * | 2018-01-24 | 2019-11-19 | Samsung Electronics Co., Ltd. | Erasure code data protection across multiple NVME over fabrics storage devices |
JP7180078B2 (ja) * | 2018-02-21 | 2022-11-30 | セイコーエプソン株式会社 | 三次元造形物の製造方法および造形装置 |
US11748278B2 (en) * | 2019-06-20 | 2023-09-05 | Intel Corporation | Multi-protocol support for transactions |
-
2018
- 2018-07-30 KR KR1020180088272A patent/KR102646616B1/ko active IP Right Grant
-
2019
- 2019-02-21 CN CN201910129096.4A patent/CN110609659A/zh active Pending
- 2019-06-14 US US16/441,507 patent/US11157204B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022028208A1 (zh) * | 2020-08-07 | 2022-02-10 | 华为技术有限公司 | 独立磁盘冗余阵列卡,处理命令的方法,存储装置和系统 |
CN114063892A (zh) * | 2020-08-07 | 2022-02-18 | 华为技术有限公司 | 独立磁盘冗余阵列卡,处理命令的方法,存储装置和系统 |
CN114063892B (zh) * | 2020-08-07 | 2024-03-26 | 华为技术有限公司 | 独立磁盘冗余阵列卡,处理命令的方法,存储装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
KR102646616B1 (ko) | 2024-03-11 |
US11157204B2 (en) | 2021-10-26 |
KR20190142178A (ko) | 2019-12-26 |
US20190384532A1 (en) | 2019-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110609659A (zh) | 用于执行读取命令的NVMeoF RAID实现方法 | |
KR101455016B1 (ko) | 고가용성 솔리드 스테이트 드라이브를 제공하는 방법 및 장치 | |
US9285995B2 (en) | Processor agnostic data storage in a PCIE based shared storage environment | |
CN108292196B (zh) | 数据写入方法、装置和计算机可读存储介质 | |
US9298648B2 (en) | Method and system for I/O flow management using RAID controller with DMA capabilitiy to directly send data to PCI-E devices connected to PCI-E switch | |
KR101744465B1 (ko) | 데이터를 저장하기 위한 방법 및 장치 | |
US10540307B1 (en) | Providing an active/active front end by coupled controllers in a storage system | |
WO2016135872A1 (ja) | ストレージ装置及び記憶デバイス | |
TW202416147A (zh) | 具有啟動器模式的固態硬碟 | |
US9213500B2 (en) | Data processing method and device | |
JP5903801B2 (ja) | 通信装置およびid設定方法 | |
CN108064374B (zh) | 一种数据访问方法、装置和系统 | |
US20110145452A1 (en) | Methods and apparatus for distribution of raid storage management over a sas domain | |
US8583992B2 (en) | SAS-based semiconductor storage device memory disk unit | |
US9189418B2 (en) | Computer system, server module, and storage module | |
US7958302B2 (en) | System and method for communicating data in a storage network | |
KR20200008483A (ko) | PCIe EP 및 네트워크 인터페이스를 통해 동시에 듀얼 라인 SSD 장치에 액세스하는 방법 | |
TWI512477B (zh) | 組配記憶體組件之資料寬度的方法、記憶體組件及相關之非暫時性電腦可讀取儲存媒體 | |
US10275388B2 (en) | Simultaneous inbound multi-packet processing | |
CN201444642U (zh) | 一种传输数据链路冗余切换的装置 | |
US11662917B1 (en) | Smart disk array enclosure race avoidance in high availability storage systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |