CN101212490A - 储存装置控制器 - Google Patents
储存装置控制器 Download PDFInfo
- Publication number
- CN101212490A CN101212490A CNA2006101723164A CN200610172316A CN101212490A CN 101212490 A CN101212490 A CN 101212490A CN A2006101723164 A CNA2006101723164 A CN A2006101723164A CN 200610172316 A CN200610172316 A CN 200610172316A CN 101212490 A CN101212490 A CN 101212490A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- storage device
- module
- data
- logical volume
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种储存装置控制器集成了网络适配卡以及网络储存目的端模块于单一芯片。
Description
技术领域
本发明是有关于计算机技术,且特别有关于远程直接存储器存取(remotedirect memory access,简称RDMA)。
背景技术
目前市面上作为网络储存目的端(Target)的储存用计算机(Storage PC)都采用服务器级的主机板与处理器。网络储存目的端(Target)本身执行I/O为主的作业(即读写数据等传输作业),处理器所做的事情只有编/解网络储存的封包表头,并没有做复杂庞大的算术运算,用服务器级的处理器实在太浪费。
无论读取或写入数据至目的端时,同一笔数据需要在目的端的网络控制器、存储器与磁盘控制器间传输,如此一来数据重复在同一个总线上传送二次,也因此造成延迟(latency)。
图1显示传统利用(Internet SCSI,简称iSCSI,可以参照RFC 3720)协议的储存网络中的来源端100(Initiator)与目的端126(Target),该二者通过因特网协议(Internet protocol,简称IP)的网络130连接。
图1所示为目前以IP为基础的网络储存系统架构,左侧为来源端100,即提出网络储存需求的一端,它通常是一台执行着一般操作系统(operatingsystem,简称OS,例如图1中的OS 103)的个人计算机(personal computer,简称PC)。因为来源端100需要去请求储存空间所以操作系统103内会有一层文件系统(File system)来主管各个储存空间并且对应到正确的文件格式,如EXT2/3NTFS..等,而储存空间则是由来源端iSCSI驱动程序104来挂载网络储存目的端,为了让iSCSI存取具备远程直接存储器存取(remote directmemory access,简称RDMA)能力,IETF(因特网工作小组)定义出针对RDMA的iSCSI延伸标准(iSCSI Extension to RDMA,简称iSER)使iSCSI与RDMA能协同运作,所以来源端100如果需要执行iSCSI又同时享有RDMA的服务就必须在操作系统内加入iSER驱动程序105与安装远程网络适配卡(remotenetwork interface card,简称RNIC)108A。
图1的右侧为目的端(Target)126,即提供网络储存服务的一端。而传统做法上,目的端(Target)126通常是一台储存用的PC或是独立磁盘的冗余数组的刀峰系统(redundant array of independent disk blade,简称RAIDBlade),在硬件方面,本身具备磁盘控制芯片127接上储存装置128(例如多颗硬盘)做为储存空间用。控制芯片127则与主机板上的总线如协议控制数据(Protocol Control Information,简称PCI)总线107B相接。此外硬件部分有远程网络适配卡108B来与来源端100作RDMA传输用。而网络适配卡108B也会与主机板上的总线PCI总线107A相接。在软件部分,主存储器102B内有操作系统123、磁盘驱动器驱动程序124、储存管理程序125、iSCSI驱动程序113、逻辑容量管理(logical volume management简称LVM)程序、iSER驱动程序115、PCI驱动程序116与RNIC驱动程序。
在从储存装置128(例如硬盘)读取数据的过程中,控制芯片127驱动磁盘读写头,从储存装置128读取数据。经由DMA控制器(未图标)将数据经由主机板上的PCI总线107B传送到主机板上的存储器102B,再经由中央处理器(central processing unit,简称CPU)101B执行iSCSI管理程序125、iSCSI驱动程序113及iSER程序115以对上述数据进行网络储存协议的处理,如执行逻辑容量管理(logical volume management简称LVM)、iSCSI目的端包装与发出RDMA操作模块(RDMA Verb)的请求。CPU 101B接着会驱动网络卡108B的DMA控制器将网络储存协议处理后的数据再从主机板存储器102B经由PCI总线107B传送到网络卡,再传送至来源端100。
针对iSCSI目的端126的传输路径分析后可以得知:同一笔数据重复在同一个PCI总线107B上传送二次而造成严重的传输延迟。由于现今开发储存控制芯片、网络控制芯片的硬件厂商与开发储存软件的软件厂商这三者都是独立开发并提供给传统的PC平台上运作。上述各控制芯片在PCI总线中传输数据时需竞争总线的控制权。
传统技术的缺点为:
1.成本过高:因为需要一台服务器级的主机板、CPU与价格昂贵的储存管理软件。
2.传输延迟:同一数据在RNIC与磁盘储存控制器间传送就必须经过主机板上的PCI总线(如107B)二次,因而造成数据传输延迟。
3.安装不易:需要额外安装储存管理软件、相关储存通讯协议与RNIC适配卡。
4.占空间:服务器级主机板体积过于庞大。
发明内容
有鉴于此,本发明的目的在针对目前网络储存目的端采用储存用计算机的缺点,提出一套集成性的网络储存控制器作法来取代之。
基于上述目的,本发明实施例提供一种储存装置控制器,用以构成网络储存系统的目的端,包含储存媒体控制器、网络接口及目的端模块。上述储存媒体控制器连接并控制储存装置。上述网络接口通过网络耦接该网络储存系统中的来源端,并从该来源端接收请求。上述目的端模块,耦接于上述储存媒体控制器及网络接口,用以通过上述储存媒体控制器存取上述储存装置以响应上述来源端的该请求,其中,上述储存媒体控制器、网络接口及目的端模块集成在芯片中。
另外,本发明实施例提供一种储存装置控制器,用以构成网络储存系统的目的端,包含储存媒体控制器及逻辑容量管理(LVM)模块。上述储存媒体控制器连接并控制储存装置,并制作成芯片。上述逻辑容量管理(LVM)模块,集成于上述芯片中,并耦接于上述储存媒体控制器,用以将该储存装置的逻辑容量地址转换成该储存装置的物理容量地址。
另外,本发明实施例提供一种储存装置控制器,用以构成网络储存系统目的端,包含储存媒体控制器及目的端模块。上述储存媒体控制器连接并控制储存装置。上述目的端模块耦接于网络及上述储存媒体控制器,用以通过上述储存媒体控制器存取上述储存装置以响应上述网络中该网络储存系统的来源端的请求。输出队列及输入队列耦接于上述储存媒体控制器与上述目的端模块之间。上述输出队列暂存送出至上述目的端模块的数据,而上述输入队列暂存来自上述目的端模块接收的数据,其中,上述储存媒体控制器及目的端模块集成在芯片中。
附图说明
图1显示储存网络中的来源端与目的端;
图2显示RDMA储存装置控制器的架构示意图;
图3显示LVM模块的结构示意图;
图4显示iSCSI目的端模块架构示意图;
图5显示来源端读取目的端的数据的RDMA的程序;以及
图6显示来源端写数据至目的端RDMA的程序。
[主要元件标号说明]
C1~Cn~来源端装置;
S1~Sn~储存装置;
100~来源端;
101A,101B~CPU;
102A,102B~存储器;
103~操作系统;
104~iSCSI驱动程序;
105~iSER驱动程序;
106~PCI驱动程序;
107A,107B~PCI总线;
108A,108B~远程网络适配卡(RNIC);
109A,109B~RDMA模块;
110A,110B~DDP/MPA模块;
111A,111B~TCP/IP模块;
112A,112B~以太网络模块;
113~iSCSI驱动程序;
115~iSER驱动程序;
116~PCI驱动程序;
123~操作系统;
124~磁盘驱动器驱动程序;
125~iSCSI管理程序;
126~目的端;
127~控制芯片;
128~储存装置;
130~网络;
200~设定装置;
210~RDMA储存装置控制器;
211~网络物理层模块;
212~TCP/IP处理引擎(TOE);
213~iSCSI目的端模块;
214~LVM模块;
215~储存媒体控制器;
216~RDMA引擎;
217~传输线;
218~传输线;
219~iSCSI目的端;
220~网络交换器;
230~储存装置;
300~设定接口;
301~输出队列;
302~输入队列;
303~逻辑地址获取模块;
304~输出单元;
305~地址转换器;
401~iSCSI模块;
402~iSER模块;
403~RDMA操作模块;
404~传送队列;
405~接收队列;
406~完成队列(Complete Queue);
407~RDMAP模块;
408~DDP无卷标模块;
409~DDP STAG模块;
410~多任务解多工器;
411~MPA CRC模块;
412~STAG检视存储器;
413~STAG CAM;
421,422~双端口存储器。
具体实施方式
以下说明是本发明的实施例。其目的是要举例说明本发明一般性的原则,不应视为本发明的限制,本发明的范围当以申请专利范围所界定者为准。
本发明提出一种装置与方法以集成硬盘控制器、网络储存控制器及具有网络储存协议的处理能力电路,在IP储存局域网络(storage area network,简称SAN)中做为目的端的储存装置,用来取代传统储存用计算机或RAIDBlade。
在本发明中,我们提出网络储存目的端的硬盘控制器与RNIC做集成,提供目的端内部的最佳化的网络硬盘数据传输路径,此架构可以减少传统储存网络的目的端通过硬盘控制器将数据从硬盘搬到主计算机存储器时间、CPU包装数据成iSCSI封包的处理时间、以及从主存储器搬到RNIC适配卡,这三者所累积的延迟。此外本发明在RDMA Storage Controller中做加值,加入了LVM与iSCSI目的端功能,因此可大幅降低建置一个储存系统的成本省去使用服务器级的主机板与CPU来处理网络储存协议(LVM与iSCSI目的端功能),因此本发明提出的RDMA储存装置控制器只要接上硬盘与网络就可提供储存网络目的端。
本发明提出的RDMA储存装置控制器是经由网络储存需求而量身打造出给网络储存目的端使用。
如前言,本发明以RDMA模块嵌入储存设备控制器中,可以改进传统网络储存端(目的端)搭配RDMA时数据在储存媒体(各式硬盘机、光驱或可携式储存装置)、主存储器(Main Memory)、远程直接存储器存取适配卡(RNIC Adapter)三者之间传输,而造成的传输延迟且降低传输效能。因此,将现有先进技术附件(Advanced Technology Attachment,简称ATA)、小计算机系统接口(small computer system interface,简称SCSI)、序列ATA(serial ATA,简称SATA)、串连SCSI(Serial Attached SCSI,简称SAS)、RAID控制芯片集成至目的端RNIC,并让来源端通过RNIC连结至目的端,以远程直接存储器存取方式取得硬盘数据。
RDMA储存装置控制器210
图2显示RDMA储存装置控制器210的架构示意图。控制器210可以连接于设定装置200及多个储存装置S1~Sn,并通过网络交换器220耦接于多个来源端装置C1~Cn。其中n为正整数。本发明提出的RDMA储存装置控制器210由五个模块所组成:
211:
网络物理层模块211提供以太网络(Ethernet)媒体存取控制层(MAClayer)与物理层(Physical layer)的处理。
212:
TOE 212执行TCP/IP协议处理提供RDMA协议所需的网络传输协议处理。TOE 212与网络物理层模块211构成网络接口。
213:
iSCSI目的端模块213具备RDMA引擎216,主要是将逻辑容量对应到一个来源端,因此要将该逻辑容量的命令与数据包装成iSCSI目的端封包,并启动RDMA Verb请求,将iSCSI目的端封包加入RDMA协议(RDMAP)、直接数据配置(Direct Data Placement,简称DDP)与(Marker Protocol data unitAligned framing,简称MPA)表头并传送给TCP/IP处理引擎(TCP/IPOffloading Engine,TOE)212处理。对于从来源端经TOE 212送来的封包,iSCSI目的端模块213则施以反向的处理,解读并移除该封包的MPA、DDP、RDMAP及iSCSI表头。
214:
LVM模块214的功能是做物理容量(Physical Volume)与逻辑容量(Logical Volume)之间的转换,物理容量就是对物理硬盘能被硬盘控制器(例如储存媒体控制器215)依物理地址做读写的物理容量,而LVM模块214会将所有的物理容量集合起来成为一个很大的储存槽(Storage Pool),再去根据每位使用者所需的容量大小(Volume Size)分割成逻辑容量给每位使用者使用,而LVM模块214所做出来的一个逻辑容量有可能是跨物理硬盘的。
215:
储存媒体控制器215用来控制储存装置,例如可以是连接多个硬盘的硬盘控制器。
传输线217及218用以取代传统总线。传输线217用来传输LVM模块214外送至iSCSI目的端模块213的数据,而传输线218用来传输从iSCSI目的端模块213内送至LVM模块214的数据。
在上述五个模块当中,由于储存媒体控制器215、TOE 212与网络物理层模块211等三个模块为目前成熟的技术,可采用现有的电路设计或产品。因此本发明在具体的实现方面主要是加入LVM模块214与iSCSI目的端模块213等二个模块来结合上述三个模块以构成单一芯片,并提供RDMA储存装置控制器的功能。
LVM模块214
图3显示LVM模块214的结构示意图。LVM模块214提供设定接口(Configuration interface)300,让系统管理者能通过操作设定装置200来建立、删除、增大、缩小逻辑容量空间。
LVM模块214包含输出队列301,例如由暂存存储器构成的先进先出(first in first out,FIFO)队列,作为数据缓冲区用以暂存送出至iSCSI目的端模块213的数据。LVM模块214包含输入队列302,例如FIFO队列,作为数据缓冲区用以暂存从iSCSI目的端模块213接收的数据。
逻辑地址获取模块303能从输入队列302取出LVM数据并从中获取的逻辑容量地址,接着将上述逻辑容量地址及LVM数据传送至地址转换器305。
输出单元304由地址转换器305取出得到逻辑容量数据与响应消息(如读取或写入的完成消息)后写入输出队列301中传给iSCSI目的端模块213,藉此以送出被来源端请求读取的数据与响应工作完成消息。
地址转换器305能够将LVM模块214所识别的逻辑容量地址与储存媒体控制器215所识别的物理容量地址做地址转换。地址转换器305将来自逻辑地址获取模块303的逻辑容量地址转换成物理容量地址,也可以将来自储存媒体控制器215的物理容量地址转换成逻辑容量地址。
储存装置230中的多个物理硬盘S1~Sn被分配多个物理容量地址,使一个物理容量地址对应到以一个物理硬盘且不重迭。
LVM模块214的具体实行方法与步骤如下:
1)初始化LVM模块214,执行pvcreate操作由储存媒体控制器215写入LVM的特定信息至每一颗硬盘的物理容量空间中,再通过vgcreate将所有物理容量的储存空间结合(Group)起来。
2)系统管理者可以由设定装置200连接到设定接口300,以执行LVM指令lvcreate与传入所需要的参数来建立出逻辑容量,同时可执行lvremove来删除所建立的逻辑容量;此外,如果使用者觉得先前lvcreate的储存空间不够大,还可执行lvextend来扩增逻辑容量的空间,同理如果觉得逻辑容量空间过大,也可通过lvreduce来减少逻辑容量空间。
3)设定装置200完成逻辑容量的建立后,会在iSCSI目的端模块213中注册拥有该逻辑容量的使用者名称(CHAP_Name)与密码(CHAP_Secret),以完成iSCSI目的端与LVM的配对。
4)假设当有来源端连上RDMA储存装置控制器210,并进行数据写入操作,数据会由iSCSI目的端模块213解析完成,并通过输入队列302传送进LVM模块214,并交由逻辑地址获取模块303将输入队列302中的数据取出并送交地址转换器305处理。
5)地址转换器305会将逻辑容量地址转换出物理容量地址,最后将转换出来的物理容量地址与写入数据及命令送交储存媒体控制器215将数据写入硬盘S1~Sn中。
6)假设当有来源端连上RDMA储存装置控制器210,并进行数据读取请求,输入队列302内会有iSCSI目的端模块213所解出的逻辑容量地址,并将读取命令与逻辑容量地址送交地址转换器305处理。
7)地址转换器305会将收到逻辑容量地址与读取命令,转换出物理容量地址,最后将转换出来的物理容量地址与读取命令送交储存媒体控制器215将数据从硬盘中读取。
8)储存媒体控制器215会根据物理容量地址将数据从硬盘读出,并交给LVM模块214的地址转换器305处理。地址转换器305将读取数据的物理地址转换成逻辑地址。
9)输出单元304将收到的逻辑容量数据与响应消息(如完成消息)送入输出队列301中交给iSCSI目的端模块213处理。
iSCSI目的端模块213:
图4显示iSCSI目的端模块213架构示意图,其操作与具体的方法步骤为:
1)系统管理者可以经由设定装置200连接到iSCSI模块401设定iSCSI目的端219的使用者名称(CHAP_Name)及密码(CHAP_Secret),并分配出一个逻辑容量给该使用者。iSCSI模块401可供上述系统管理者建立、删除来源端使用者账号,设定目的端的名称(Target Name)、CRC解析(CRC Digest)、最大联机数(Maximum Connections)等目的端的参数。
2)iSCSI模块401层负责与来源端做协商(Negotiation),提供SCSI命令的请求及回复,并执行SCSI数据的数据交换,在与LVM模块214间通过输出队列301与输入队列302做数据传输接口。
3)iSER模块402提供iSCSI模块401具备RDMA的能力,并接受iSCSI模块401的RDMA请求,与接受RDMA引擎216传来的数据,在处理该数据后交由iSCSI模块401处理。双端口随机存取存储器(Dual-port Random-AccessMemory,简称Dual-port RAM)421及422分别耦接于输出队列301及输入队列302,分别用来暂存外送与内送封包。
4)RDMA操作模块403负责与RDMAP模块407注册并配置出传送队列404、接收队列405与完成队列(Complete Queue)406,作为iSER与RDMA操作的基本架构。
5)RDMAP模块407负责接收传送队列404里的RDMA命令与数据,与接收远程RDMA响应的命令与数据,并送至接收队列405,经由RDMA操作模块403转交iSER模块402,并且将RDMA完成消息回复至完成队列406中以通知iSER模块402该RDMA命令已完成。
6)导航标签(Steering TAG,简称Stag)检视存储器(Look-upMemory)412与STAG关联存储器(Content Addressable Memory,简称CAM)413中记录着RDMA封包以STAG模式传输时的STAG ID、对应iSCSI目的端逻辑地址、及容量大小(length)。DDP STAG模块409查询STAG CAM 413以快速的取得RDMA封包的iSCSI目的端逻辑地址。若在STAG CAM 413未找到RDMA封包的iSCSI目的端逻辑地址,DDP STAG模块409查询STAG检视存储器412。找到的iSCSI目的端逻辑地址输入至RDMA操作模块403。只要输入STAG ID至STAG CAM 413就可快速查出在STAG检视存储器412中所记录的逻辑容量地址给RDMA操作模块403层。401即可得知收进来的数据所对应的逻辑容量地址。
7)DDP STAG模块409与RDMA操作模块403一起建立STAG检视存储器412与STAG CAM 413中STAG ID、储存扇区(SECTOR)与容量大小(length)。明确地说,由RDMA操作模块403层写入iSCSI目的端地址与容量大小,而DDP STAG模块409负责建立STAG ID。
8)DDP无卷标(DDP UN-TAG)模块408接收RDMA封包为UN-TAG模式的命令与数据,不需建立STAG ID与储存扇区地址对应,直接将传送队列404所收到的RDMA数据加入UN-TAG表头,再传送给MPA循环冗余核对(CyclicalRedundancy Check,简称CRC)模块411。
9)MPA CRC模块411负责传送RDMA封包时计算MPA层的CRC,并比对该CRC是否正确。
MPA CRC模块411为RDMA层的最后一层级,并连接到TOE 212与网络物理层模块211,这二个模块在本发明中是被拿来应用,主要是为了提供RDMA储存装置控制器210具备连上IP网络并提供TCP/IP服务的能力。
RDMA储存装置控制器210可以其它协议的处理模块来取代iSCSI目的端模块213,例如网络上的芳邻等以文件为基础的网络传输协议。
来源端读取目的端数据:
图5显示来源端读取目的端219的数据的RDMA的程序。由来源端Ci(其中i为正整数,且1≤i≤n)发出数据读取请求(步骤S500)。该请求通过网络物理层模块211及TOE 212处理后,由iSCSI目的端模块213接收并处理(步骤S501-S503)。LVM模块214转换该请求中的逻辑地址成为物理地址(步骤S504)。储存媒体控制器215依据转换后的地址从储存装置230中获取数据(步骤S505)。LVM模块214转换该数据中的物理地址成为逻辑地址后,通过输出队列301将该数据送至iSCSI目的端模块213(步骤S506)。在iSCSI目的端模块213中,依序由iSCSI模块401、iSER模块402及RDMA引擎216处理该数据加入表头(步骤S507-S509),再由TOE 212及网络物理层模块211处理后(步骤S510-S511),发出RDMA写入数据(RDMA Write Data)到来源端Ci(步骤S512)。iSCSI模块401传送响应信息至来源端Ci(步骤S513)。上述不会有多余的二次数据搬移的操作。因本实施例是将RDMA、磁盘控制器与储存协议集成在单一装置中。
来源端写数据至目的端:
图6显示来源端写数据至目的端RDMA的程序,由来源端Ci传送数据到目的端,本申请则不会有多余的二次数据搬移的操作。因本申请是将RDMA、Disk Controller与储存协议集成在单一装置中。
由来源端Ci发出其数据写入请求至RDMA储存装置控制器210,其中包含来源端Ci的Stag数据(步骤S600)。该写入请求通过网络物理层模块211及TOE 212处理后,由iSCSI目的端模块213接收并处理(步骤S601-S603)。RDMA储存装置控制器210响应消息以接受该请求(步骤S604)。来源端Ci传送数据至RDMA储存装置控制器210(步骤S605)。该数据经过网络物理层模块211及TOE 212处理后(步骤S606及S607),送至iSCSI目的端模块213。在iSCSI目的端模块213中,依序由RDMA引擎216、iSER模块402及iSCSI模块401处理该数据,解读并去除表头(步骤S608-S610),再通过输入队列302送至LVM模块214(步骤S611)。由LVM模块214转换该数据中的逻辑地址成为物理地址后(步骤S612),储存媒体控制器215将该数据写入至储存装置230(步骤S613)。iSCSI模块401传送完成信息至来源端Ci(步骤S614)。
最后说明本发明实施例可以应用在二种场所,分别是家庭网络/家庭办公室(SOHO)的储存与企业的储存:
一、家庭网络/个人SOHO的储存:
经以太网络交换器(Ethernet Switch)连接上述RDMA储存装置控制器、个人计算机、家庭网络里的媒体服务器与数字家电,例如:打印机、个人数字助理(Personal Digital Assistant,简称PDA)、音响、多功能数字盘片(Digital Versatile Disc/Disk,简称DVD)播放器、录像机、各式机上盒(Set-Top-Box)等,并考虑这些装置将来都有上网的能力),此时的RDMA储存装置控制器可在家中扮演着数据储存与分享的重要角色,使用本发明的RDMA储存装置控制器于家用储存,不但体积小,且成本也低廉,远比使用一台储存用计算机来做家用储存来的有效益。
二、企业的储存:
本发明除了应用在经由一般以太网络交换器连接而成的来源端与目的端储存系统联机外,还可接上RDMA储存交换器(Storage Switch),由RDMA储存交换器的目的端端口与本发明的RDMA储存装置控制器连接,也就是提供给RDMA储存交换器一个目的端的储存空间,此时的RDMA储存交换器的角色面对RDMA储存装置控制器而言就是来源端,它对本发明提出的RDMA储存装置控制器下达储存联机要求与存取储存数据要求。而多数的RDMA储存装置控制器节点(Nodes)连接在同一个RDMA储存交换器内可建构成丛集式(Clustered)的网络储存架构。
RDMA储存装置控制器可经由RDMA储存交换器来提供虚拟化(Virtualization)、备份(Backup)、回复(Restoration)、复制(Replication)、搬动(Migration)、简单管理(Simple Management)与高可信度(HighReliability)等服务。各功能说明分析如下:
1)虚拟化:
虚拟化技术,即通过RDMA储存交换器可将RDMA储存装置控制器的所有储存空间结合成单一个很大的虚拟储存槽(Virtual storage pool),再依据来源端使用者的储存空间需求去分配储存装置的虚拟逻辑单位号码(logicalunit number,简称LUN)。
2)备份:
RDMA储存交换器可设定备分方案(Backup Policy)针对重要的逻辑单位号码进行备份,在设定的备份时间一到,RDMA储存交换器自行将来源的逻辑单位号码备份到目的逻辑单位号码。
3)回复:
还原机制,例如储存交换器将逻辑单位号码#2的数据还原到逻辑单位号码#1。
4)镜射/复制(Mirroring/Replication):
镜射复制机制中,储存交换器可将逻辑单位号码#1储存数据镜射复制到逻辑单位号码#2,由于逻辑单位号码是由储存交换器所虚拟化出来所以逻辑单位号码#1或逻辑单位号码#2是有可能跨RDMA储存装置控制器节点。
5)搬动:
储存交换器可将逻辑单位号码#1储存数据搬移到逻辑单位号码#2,
6)快照机制(Snapshots):
储存交换器可在不同时间点针对逻辑单位号码的数据异动部分进行快照操作,以让系统如果发生数据错误,可藉由快照所储存下来的异动数据回复到某个时间点的正确数据。
储存交换器可连接多个应用程序服务器(Application Server),例如Oracle服务器、邮件服务器、网页服务器文件服务器与其它需要用到大量数据储存的应用程序服务器。而Linux与Windows操作系统的来源端连接上应用程序服务器,它们只要通过一般的以太网络接口连上应用程序服务器即可,而应用程序服务器由于需要大量CPU资源处理许多来源端的服务请求,而且数据会持续的成长扩大,放在自己应用程序服务器里的硬盘扩充数量是有限的,所以应用程序服务器背后必须有一个储存空间扩充性高、传输速度快、具集成性管理能力、具有数据保护能力与容量分配能力的储存环境,诸如储存局域网络(Storage Area Network,简称SAN)。
而当应用程序服务器在存取储存装置时,为了降低CPU使用率与提升传输速率,会使用RDMA技术来存取储存装置,也就是在应用程序服务器端会插入RDMA适配卡,而RDMA主要技术是数据在传输时其数据传输路径不需经由操作系统核心层的数据复制处理来传送到网络接口,而是直接与控制器210的RNIC沟通将数据从存储器传送到RNIC上,并且由RNIC来处理TCP/IP与网络存储协议,如此一来就可卸载应用程序服务器的CPU负担,而目的端也会有RDMA接口来达成来源端与目的端的RDMA传输。此外目的端还需要对磁盘做读写,以传统储存用计算机而言,RDMA到目的端的数据必须DMA传送到主机板的存储器,再由磁盘控制芯片从存储器读出并写入磁盘区块,因而导致数据必须进出主机板上存储器2次而造成的传输延迟,因此本发明提出的RDMA储存装置控制器将iSCSI RDMA、LVM与磁盘控制芯片结合成单一装置。提供一个具有容量管理机制与网络储存服务的低延迟与低成本的网络储存设备。
此架构的特点为:
传统服务器级主机板体积过于庞大,若采用本发明提出的架构同样的机箱容量可装下数倍于传统储存用计算机的硬盘数量。
(1)降低成本:
降低建构一个网络储存设备的成本与体积,可不需要服务器级的CPU、存储器、主机板与操作系统)。
(2)减少传输延迟:
减少数据传输的传输延迟,提升目的端网络储存数据传输的速度与效能,并使远程使用者通过RDMA协议直接存取到自己的网络储存空间。
(3)应用面:
可应用在家庭网络/个人家庭办公室(SOHO)的储存或企业的储存。
RDMA储存装置控制器可结合网络、磁盘控制的IP地址并加入网络储存协议处理引擎于单一装置中。亦可组合该装置、硬盘、电源装置与机构形成网络储存目的端的产品。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保护范围当视所附的权利要求范围所界定者为准。
Claims (22)
1.一种储存装置控制器,用以构成网络储存系统,包含:
储存媒体控制器,用以连接并控制储存装置;
网络接口,用以通过网络耦接该网络储存系统中的来源端,并从该来源端接收请求;
目的端模块,耦接于上述储存媒体控制器及网络接口,用以通过上述储存媒体控制器存取上述储存装置以响应上述来源端的该请求,其中,上述储存媒体控制器以及目的端模块集成在芯片中。
2.根据权利要求1所述的储存装置控制器,其中上述目的端模块依据因特网小型计算机系统界面协议以响应该来源端。
3.根据权利要求1所述的储存装置控制器,还包含逻辑容量管理模块。
4.根据权利要求3所述的储存装置控制器,其中上述逻辑容量管理模块提供设定接口让系统管理者能建立、删除、增大或缩小该逻辑容量空间。
5.根据权利要求3所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输出队列,作为数据缓冲区用以暂存送出至上述目的端模块的数据。
6.根据权利要求3所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输入队列,作为数据缓冲区用以暂存从上述目的端模块接收的数据。
7.根据权利要求6所述的储存装置控制器,其中上述逻辑容量管理模块包含:
地址转换器,用以将来自上述目的端模块中的数据中的逻辑地址转换成物理地址,以及将来自上述储存媒体控制器的数据中的物理地址转换成逻辑地址。
8.根据权利要求7所述的储存装置控制器,其中上述逻辑容量管理模块包含:
逻辑地址获取模块,从上述输入队列取出第一逻辑容量管理数据并从中获取第一逻辑地址,接着将上述第一逻辑容量地址及第一逻辑容量管理数据传送至上述地址转换器。
9.根据权利要求8所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输出单元,由上述地址转换器取出得到第二逻辑容量数据与上述请求的响应消息后写入上述输出队列中,以传给上述目的端模块。
10.根据权利要求2所述的储存装置控制器,其中上述目的端模块还包含:
远程直接存储器存取引擎,以提供上述来源端远程直接存储器存取。
11.根据权利要求6所述的储存装置控制器,其中上述目的端模块还包含:
第一双端口随机存取存储器,耦接于上述输出队列;以及
第二双端口随机存取存储器,耦接于上述输入队列。
12.根据权利要求11所述的储存装置控制器,其中上述目的端模块还包含:
因特网小型计算机系统界面模块,供上述系统管理者建立、删除来源端使用者名称。
13.一种储存装置控制器,用以构成网络储存系统,包含:
储存媒体控制器,用以连接并控制储存装置,并制作成芯片;
逻辑容量管理模块,集成于上述芯片中,耦接于上述储存媒体控制器,用以将该储存装置的逻辑容量地址转换成该储存装置的物理容量地址。
14.根据权利要求13所述的储存装置控制器,其中上述逻辑容量管理模块提供设定接口让系统管理者能建立、删除、增大或缩小该计算机系统中的逻辑容量空间,并分配该逻辑容量空间给使用者。
15.根据权利要求13所述的储存装置控制器,还包含:
目的端模块,耦接于网络及上述逻辑容量管理模块,用以通过上述储存媒体控制器存取上述储存装置以响应上述网络中该网络储存系统的来源端的请求,其中,上述储存媒体控制器、逻辑容量管理模块及目的端模块集成在芯片中。
16.根据权利要求15所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输出队列,作为数据缓冲区用以暂存送出至上述目的端模块的数据。
17.根据权利要求16所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输入队列,作为数据缓冲区用以暂存从上述目的端模块接收的数据。
18.根据权利要求17所述的储存装置控制器,其中上述逻辑容量管理模块包含:
地址转换器,用以执行上述地址转换。
19.根据权利要求18所述的储存装置控制器,其中上述逻辑容量管理模块包含:
逻辑地址获取模块,从上述输入队列取出第一逻辑容量管理数据并从中获取第一逻辑地址,接着将上述第一逻辑容量地址及第一逻辑容量管理数据传送至上述地址转换器。
20.根据权利要求19所述的储存装置控制器,其中上述逻辑容量管理模块包含:
输出单元,由上述地址转换器取出得到第二逻辑容量数据与上述请求的响应消息后写入上述输出队列中,以传给上述目的端模块。
21.一种储存装置控制器,用以构成网络储存系统,包含:
储存媒体控制器,用以连接并控制储存装置;
目的端模块,耦接于网络及上述储存媒体控制器,用以通过上述储存媒体控制器存取上述储存装置以响应上述网络中该网络储存系统的来源端的请求;
输出队列,耦接于上述储存媒体控制器与上述目的端模块之间,用以暂存送出至上述目的端模块的数据;以及
输入队列,耦接于上述储存媒体控制器与上述目的端模块之间,用以暂存来自上述目的端模块接收的数据,其中,上述储存媒体控制器及目的端模块集成在芯片中。
22.根据权利要求21所述的储存装置控制器,其中上述目的端模块依据因特网小型计算机系统界面协议以响应该来源端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101723164A CN101212490A (zh) | 2006-12-30 | 2006-12-30 | 储存装置控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101723164A CN101212490A (zh) | 2006-12-30 | 2006-12-30 | 储存装置控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101212490A true CN101212490A (zh) | 2008-07-02 |
Family
ID=39612152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101723164A Pending CN101212490A (zh) | 2006-12-30 | 2006-12-30 | 储存装置控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101212490A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102844747A (zh) * | 2010-04-02 | 2012-12-26 | 微软公司 | 将rdma语义映射到高速存储 |
CN103257941A (zh) * | 2013-04-17 | 2013-08-21 | 浪潮(北京)电子信息产业有限公司 | 多协议存储控制器和系统 |
WO2013189009A1 (en) * | 2012-06-18 | 2013-12-27 | Qualcomm Incorporated | Adaptive offset synchronization of data based on ring buffers |
CN104283938A (zh) * | 2013-07-08 | 2015-01-14 | 英特尔公司 | 用于在存储服务器之间复制数据的技术 |
CN107145459A (zh) * | 2016-03-01 | 2017-09-08 | 华为技术有限公司 | 一种级联板、ssd远程共享访问的系统和方法 |
CN110309087A (zh) * | 2018-03-27 | 2019-10-08 | 纬颖科技服务股份有限公司 | 数据传输方法与使用此方法的主机系统 |
CN113127387A (zh) * | 2021-03-12 | 2021-07-16 | 山东英信计算机技术有限公司 | 一种存储器和服务器 |
-
2006
- 2006-12-30 CN CNA2006101723164A patent/CN101212490A/zh active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102844747A (zh) * | 2010-04-02 | 2012-12-26 | 微软公司 | 将rdma语义映射到高速存储 |
CN102844747B (zh) * | 2010-04-02 | 2016-06-29 | 微软技术许可有限责任公司 | 将rdma语义映射到高速存储 |
US9621331B2 (en) | 2012-06-18 | 2017-04-11 | Qualcomm Incorporated | Adaptive offset synchronization of data based on ring buffers |
WO2013189009A1 (en) * | 2012-06-18 | 2013-12-27 | Qualcomm Incorporated | Adaptive offset synchronization of data based on ring buffers |
CN103257941A (zh) * | 2013-04-17 | 2013-08-21 | 浪潮(北京)电子信息产业有限公司 | 多协议存储控制器和系统 |
CN103257941B (zh) * | 2013-04-17 | 2015-09-23 | 浪潮(北京)电子信息产业有限公司 | 多协议存储控制器和系统 |
CN104283938A (zh) * | 2013-07-08 | 2015-01-14 | 英特尔公司 | 用于在存储服务器之间复制数据的技术 |
CN104283938B (zh) * | 2013-07-08 | 2018-01-30 | 英特尔公司 | 用于在存储服务器之间复制数据的技术 |
US9986028B2 (en) | 2013-07-08 | 2018-05-29 | Intel Corporation | Techniques to replicate data between storage servers |
CN107145459A (zh) * | 2016-03-01 | 2017-09-08 | 华为技术有限公司 | 一种级联板、ssd远程共享访问的系统和方法 |
US10901638B2 (en) | 2016-03-01 | 2021-01-26 | Huawei Technologies Co., Ltd. | Cascading board and SSD shared remote access system and method |
CN107145459B (zh) * | 2016-03-01 | 2021-05-18 | 华为技术有限公司 | 一种级联板、ssd远程共享访问的系统和方法 |
CN110309087A (zh) * | 2018-03-27 | 2019-10-08 | 纬颖科技服务股份有限公司 | 数据传输方法与使用此方法的主机系统 |
CN110309087B (zh) * | 2018-03-27 | 2021-01-26 | 纬颖科技服务股份有限公司 | 数据传输方法与使用此方法的主机系统 |
CN113127387A (zh) * | 2021-03-12 | 2021-07-16 | 山东英信计算机技术有限公司 | 一种存储器和服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4632574B2 (ja) | 記憶装置およびファイルデータのバックアップ方法およびファイルデータのコピー方法 | |
CN101571815B (zh) | 信息系统及i/o处理方法 | |
CN104603739B (zh) | 对并行存储的块级访问 | |
JP4175764B2 (ja) | 計算機システム | |
US6907457B2 (en) | Architecture for access to embedded files using a SAN intermediate device | |
JP5026283B2 (ja) | 協調的共用ストレージアーキテクチャ | |
JP5603941B2 (ja) | 計算機システム及びデータ移行方法 | |
JP4559046B2 (ja) | 仮想テープライブラリ装置 | |
US11860791B2 (en) | Methods for managing input-output operations in zone translation layer architecture and devices thereof | |
CN101212490A (zh) | 储存装置控制器 | |
JP2003162377A (ja) | ディスクアレイシステム及びコントローラ間での論理ユニットの引き継ぎ方法 | |
JP2003248555A (ja) | 要素アドレスを利用するストレージエリアネットワーク関連データライブラリを分割するシステム | |
CN103620580A (zh) | 用于数据副本的迁移的系统和方法 | |
JP2008004120A (ja) | ダイレクトアクセスストレージシステム | |
JP2003216345A (ja) | 複数のパーティションを利用する可動媒体ライブラリとの通信を仲介する方法 | |
CN102147713B (zh) | 一种网络存储系统的管理方法及装置 | |
US20040024838A1 (en) | Intelligent data tunnels multiplexed within communications media directly interconnecting two or more multi-logical-unit-mass-storage devices | |
CN102065071A (zh) | 一种支持多传输协议的存储设备 | |
CN100471112C (zh) | 内存-网络内存-磁盘高速可靠存储系统lnd的读写方法 | |
US20090144463A1 (en) | System and Method for Input/Output Communication | |
US20210334025A1 (en) | Methods for handling storage devices with different zone sizes and devices thereof | |
JP2007004710A (ja) | ストレージアクセス方式、データ転送装置、ストレージアクセス方法、及びプログラム | |
WO2014077451A1 (ko) | Iscsi 스토리지 시스템을 이용한 네트워크 분산 파일 시스템 및 방법 | |
WO2014087465A1 (ja) | ストレージ装置及びストレージ装置移行方法 | |
JP5772443B2 (ja) | ストレージ装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20080702 |