一种基于并行处理的多主机接口冗余san控制器的制作方法

文档序号:6481135阅读:175来源:国知局
专利名称:一种基于并行处理的多主机接口冗余san控制器的制作方法
技术领域
本发明涉及一种控制器,具体地说是一种基于并行处理的多主机接口冗余 SAN控制器。
背景技术
在当今网络时代,存储技术正在发生革命性的变化。导致这一革命性 变化的原因首先表现在存储容量的急剧膨胀。在数字化和互联网时代,大 规模应用系统的广泛部署对网络存储系统的性能和功能提出了巨大挑战, 主要表现为高性能、可扩展性、可共享性、自适应性、可管理性,以及高 可靠性。
SAN (Storage Area Network)是为充分利用存储资源而建立的存储共享 网络,增加和方便了存储和主机的连接性。就像我们所熟知的LAN—样, SAN大幅度提高了存储资源和主机的连接的扩展性和稳定性,使原本昂贵 的存储资源变得廉价和易于管理。传统的存储资源都是直接连接到后端主 机(称为DAS, Direct Attached Storage), SAN的出现彻底打破了这种模
式,将专用的网络直接插入到主机和存储设备之间,在保持原有的应用体
系结构的前提下,大大改善了存储的应用模式,为海量存储的管理和应用
奠定了坚实的基石。
SAN存储控制器(也叫SAN磁盘阵列控制器)则是专门基于SAN网络的磁
盘阵列控制器,由于其基于高性能的SAN存储网络,因此在高性能、大容量、
高可靠领域的应用日益广泛。受价格、体积、可靠性等方面的制约目前SAN磁盘阵列控制器作为一种高性价比高可靠的存储专用设备多采用嵌入式的软硬 件系统,因此在性能提升方面存在着一定的瓶颈。如何改善现有架构,提升整
机性能是现在SAN控制器开发中的一大难题。

发明内容
本发明的技术任务是针对上述现有技术的不足,提供一种基于并行处理的 多主机接口冗余SAN控制器。
本发明的技术任务是按以下方式实现的,结构包括控制器冗余模块A、控 制器冗余模块B及背板模块C,其中控制器冗余模块A与控制器冗余模块B 通过高速PCIE总线Pl连接,控制器冗余模块A与背板模块C通过非高速互 联通路PA连接,控制器冗余模块B与背板模块C通过非高速互联通路PB连 接;控制器冗余模块A及控制器冗余模块B结构相同,控制器冗余模块A包 括主机接口A0、 RAID控制器A1、 RAID控制器A2以及磁盘控制器A3;控 制器冗余模块B包括主机接口 B0、 RAID控制器Bl、 RAID控制器B2以及磁 盘控制器B3;背板模块C包括硬盘接口、电源接口、磁盘阵列以及冗余控制 切换电路;控制器冗余模块A和控制器冗余模块B的切换是通过背板模块C 中的冗余控制切换电路实现。
控制器冗余模块A内的RAID控制器Al和RAID控制器A2设置在主机 接口 A0和磁盘控制器A3中间,四者通过高速PCIE总线联接在一起;控制器 冗余模块B内的RAID控制器Bl和RAID控制器B2设置在主机接口 BO和磁 盘控制器B3中间,四者通过高速PCIE总线连接在一起。
RAID控制器Al 、 RAID控制器A2、 RAID控制器Bl和RAID控制器 B2结构相同,均包括DMA通道和SDRAM。
控制器冗余模块A与控制器冗余模块B为冗余模式,控制器冗余模块A 工作,控制器冗余模块B待机作为备用模块。
工作流程为
(1)、来自主机的数据流Sl、 S2首先通过主机接口 AO进入到RAID控制器Al ,该RAID控制器Al负责将一部分数据流SI通过其DMA通道传输 到SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速 PCIE总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过 其DMA通道传输到SDRAM中进行后续的RAID数据处理;
(2) 、RAID控制器A1将数据流S1处理完毕后得到RAID数据S3,RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;
(3) 、RAID控制器Al通过高速PCIE总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PCIE 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;
(4) 、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内。
冗余模式下的控制器冗余模块A和控制器冗余模块B通过高速PCIE总线 PI互联来实现冗余模^下缓存的镜像;待机的控制器冗余模块B通过高速 PCIE总线PI实时将正在工作的控制器冗余模块A的缓存复制下来,以备工作 的控制器冗余模块A宕机后接管其工作;同时高速PCIE总线PI还为心跳检 测通路,可以检测控制器冗余模块A和控制器冗余模块B的工作状态,以便 向背板模块C中的冗余控制切换电路发出接管切换命令实现工作的接管。
控制器冗余模块A和控制器冗余模块B之间进行数据的并行处理;来自 主机的数据流S1、 S2、 S6、 S7分别在控制器冗余模块A和控制器冗余模块B 之间进行并行处理,然后将处理完的RAID数据S5、 RAID数据S10写入到磁 盘阵列内。
控制器冗余模块A工作流程为 (1)、来自主机的数据流Sl、 S2通过主机接口 AO进入到RAID控制器 Al,该RAID控制器Al负责将一部分数据流SI通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速PCIE 总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过其DMA通道传输到SDRAM中进行后续的RAID数据处理;
(2)、RAID控制器Al将数据流SI处理完毕后得到RAID数据S3, RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;
(3 )、RAID控制器Al通过高速PCIE总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PCIE 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;
(4)、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内;
控制器冗余模块B工作流程为-
(1) 、来自主机的数据流S6、 S7通过主机接口 BO进入到RAID控制器 Bl,该RAID控制器Bl负责将一部分数据流S6通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S7通过高速PCIE 总线传送到RAID控制器B2, RAID控制器B2将这部分数据流S7通过其DMA 通道传输到SDRAM中进行后续的RAID数据处理;
(2) 、RAID控制器Bl将数据流S6处理完毕后得到RAID数据S8, RAID 控制器B2对数据流S7进行RAID运算完后得到RAID数据S9;
(3 )、RAID控制器Bl通过高速PCIE总线将RAID数据S8传递到RAID 控制器B2, RAID控制器B2将RAID数据S8、 RAID数据S9通过高速PCIE 总线传递到磁盘控制器B3进行数据的磁盘操作,形成RAID数据S10;
(4)、磁盘控制器B3将RAID数据S10通过非高速互联通路PB写入到 磁盘阵列内。
本发明的一种基于并行处理的多主机接口冗余SAN控制器具有以下优

并行结构的SAN控制器区别于现有的以单控制器为处理核心的存储控制 器架构,采用双控制器双DMA通道并行处理,架构配备两个冗余控制器模块, 在每个控制器冗余模块内部以及两个控制器冗余模块之间可以进行RAID等数
8据的并行处理,在不失可靠性的前提下可以大大提高控制器的整机性能。


下面结合附图对本发明进一步说明。
附图1为一种基于并行处理的多主机接口冗余SAN控制器的结构框图; 附图2为一种基于并行处理的多主机接口冗余SAN控制器的控制器冗余
模块A与控制器冗余模块B为冗余模式时控制器冗余模块A工作流程框图; 附图3为一种基于并行处理的多主机接口冗余SAN控制器的控制器冗余
模块A和控制器冗余模块B之间进行数据的并行处理时的工作流程框图。
具体实施例方式
参照说明书附图和具体实施例对本发明的一种基于并行处理的多主机接 口冗余SAN控制器作以下详细地说明。 实施例1:
下面结合附图1和附图2对本发明的一种基于并行处理的多主机接口冗余 SAN控制器的控制器冗余模块A与控制器冗余模块B为冗余模式时,进行详 细说明。
本发明的一种基于并行处理的多主机接口冗余SAN控制器,其结构包括 控制器冗余模块A、控制器冗余模块B及背板模块C,其中控制器冗余模块A 与控制器冗余模块B通过高速PCIE总线PI连接,控制器冗余模块A与背板 模块C通过非高速互联通路PA连接,控制器冗余模块B与背板模块C通过非 高速互联通路PB连接;控制器冗余模块A及控制器冗余模块B结构相同,控 制器冗余模块A包括主机接口 A0、 RAID控制器Al、 RAID控制器A2以及 磁盘控制器A3;控制器冗余模块B包括主机接口 B0、 RAID控制器Bl、 RAID 控制器B2以及磁盘控制器B3;背板模块C包括硬盘接口、电源接口、磁盘阵 列以及冗余控制切换电路;控制器冗余模块A和控制器冗余模块B的切换是 通过背板模块C中的冗余控制切换电路实现。
控制器冗余模块A内的RAID控制器Al和RAID控制器A2设置在主机接口 A0和磁盘控制器A3中间,四者通过高速PCIE总线联接在一起;控制器 冗余模块B内的RAID控制器Bl和RAID控制器B2设置在主机接口 BO和磁 盘控制器B3中间,四者通过高速PCIE总线连接在一起。
RAID控制器Al 、 RAID控制器A2、 RAID控制器Bl和RAID控制器 B2结构相同,均包括DMA通道和SDRAM。
控制器冗余模块A与控制器冗余模块B为冗余模式,控制器冗余模块A 工作,控制器冗余模块B待机作为备用模块。
工作流程为
(1) 、来自主机的数据流S1、 S2首先通过主机接口 AO进入到RAID控 制器Al ,该RAID控制器Al负责将一部分数据流SI通过其DMA通道传输 到SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速 PCIE总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过 其DMA通道传输到SDRAM中进行后续的RAID数据处理;
(2) 、RAID控制器Al将数据流SI处理完毕后得到RAID数据S3, RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;
(3) 、RAID控制器Al通过高速PCIE总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PCIE 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;
(4) 、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内。
冗余模式下的控制器冗余模块A和控制器冗余模块B通过高速PCIE总线 PI互联来实现冗余模式下缓存的镜像;待机的控制器冗余模块B通过高速 PC正总线PI实时将正在工作的控制器冗余模块A的缓存复制下来,以备工作 的控制器冗余模块A宕机后接管其工作;同时高速PCIE总线PI还为心跳检 测通路,可以检测控制器冗余模块A和控制器冗余模块B的工作状态,以便 向背板模块C中的冗余控制切换电路发出接管切换命令实现工作的接管。
10实施例2:
下面结合附图1和附图3对本发明的一种基于并行处理的多主机接口冗余
SAN控制器的控制器冗余模块A与控制器冗余模块B之间进行数据的并行处 理时,进行详细说明。
本发明的一种基于并行处理的多主机接口冗余SAN控制器,结构包括控 制器冗余模块A、控制器冗余模块B及背板模块C,其中控制器冗余模块A 与控制器冗余模块B通过高速PCIE总线PI连接,控制器冗余模块A与背板 模块C通过非高速互联通路PA连接,控制器冗余模块B与背板模块C通过非 高速互联通路PB连接;控制器冗余模块A及控制器冗余模块B结构相同,控 制器冗余模块A包括主机接口 A0、 RAID控制器Al、 RAID控制器A2以及 磁盘控制器A3;控制器冗余模块B包括主机接口 B0、 RAID控制器Bl、 RAID 控制器B2以及磁盘控制器B3;背板模块C包括硬盘接口 、电源接口 、磁盘阵 列以及冗余控制切换电路;控制器冗余模块A和控制器冗余模块B的切换是 通过背板模块C中的冗余控制切换电路实现。
控制器冗余模块A内的RAID控制器Al和RAID控制器A2设置在主机 接口 A0和磁盘控制器A3中间,四者通过高速PCIE总线联接在一起;控制器 冗余模块B内的RAID控制器Bl和RAID控制器B2设置在主机接口 BO和磁 盘控制器B3中间,四者通过高速PCIE总线连接在一起。
RAID控制器Al、 RAID控制器A2、 RAID控制器Bl和RAID控制器 B2结构相同,均包括DMA通道和SDRAM。
控制器冗余模块A和控制器冗余模块B之间进行数据的并行处理;来自 主机的数据流S1、 S2、 S6、 S7分别在控制器冗余模块A和控制器冗余模块B 之间进行并行处理,然后将处理完的RAID数据S5、 RAID数据S10写入到磁 盘阵列内。
控制器冗余模块A工作流程为 (1)、来自主机的数据流Sl、 S2通过主机接口 AO进入到RAID控制器Al,该RAID控制器Al负责将一部分数据流SI通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速PCIE 总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过其DMA 通道传输到SDRAM中进行后续的RAID数据处理;
(2) 、RAID控制器A1将数据流S1处理完毕后得到RAID数据S3,RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;
(3) 、RAID控制器Al通过高速PCIE总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PC正 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;
(4) 、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内;
控制器冗余模块B工作流程为
(1) 、来自主机的数据流S6、 S7通过主机接口 BO进入到RAID控制器 Bl,该RAID控制器Bl负责将一部分数据流S6通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S7通过高速PCIE 总线传送到RAID控制器B2, RAID控制器B2将这部分数据流S7通过其DMA 通道传输到SDRAM中进行后续的RAID数据处理;
(2) 、RAID控制器Bl将数据流S6处理完毕后得到RAID数据S8, RAID 控制器B2对数据流S7进行RAID运算完后得到RAID数据S9;
(3) 、RAID控制器Bl通过高速PCIE总线将RAID数据S8传递到RAID 控制器B2, RAID控制器B2将RAID数据S8、 RAID数据S9通过高速PC正 总线传递到磁盘控制器B3进行数据的磁盘操作,形成RAID数据S10;
(4) 、磁盘控制器B3将RAID数据S10通过非高速互联通路PB写入到 磁盘阵列内。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
权利要求
1、一种基于并行处理的多主机接口冗余SAN控制器,其特征在于结构包括控制器冗余模块A、控制器冗余模块B及背板模块C,其中控制器冗余模块A与控制器冗余模块B通过高速PCIE总线P1连接,控制器冗余模块A与背板模块C通过非高速互联通路PA连接,控制器冗余模块B与背板模块C通过非高速互联通路PB连接;控制器冗余模块A及控制器冗余模块B结构相同,控制器冗余模块A包括主机接口A0、RAID控制器A1、RAID控制器A2以及磁盘控制器A3;控制器冗余模块B包括主机接口B0、RAID控制器B1、RAID控制器B2以及磁盘控制器B3;背板模块C包括硬盘接口、电源接口、磁盘阵列以及冗余控制切换电路;控制器冗余模块A和控制器冗余模块B的切换是通过背板模块C中的冗余控制切换电路实现。
2、 根据权利要求书1所述的一种基于并行处理的多主机接口冗余SAN控 制器,其特征在于控制器冗余模块A内的RAID控制器Al和RAID控制器 A2设置在主机接口 AO和磁盘控制器A3中间,四者通过高速PCIE总线联接 在一起;控制器冗余模块B内的RAID控制器Bl和RAID控制器B2设置在 主机接口 BO和磁盘控制器B3中间,四者通过高速PCIE总线连接在一起。
3、 根据权利要求书1所述的一种基于并行处理的多主机接口冗余SAN控 制器,其特征在于RAID控制器Al、 RAID控制器A2、 RAID控制器Bl和 RAID控制器B2结构相同,均包括DMA通道和SDRAM。
4、 根据权利要求书1所述的一种基于并行处理的多主机接口冗余SAN控 制器,其特征在于控制器冗余模块A与控制器冗余模块B为冗余模式,控制 器冗余模块A工作,控制器冗余模块B待机作为备用模块。
5、 根据权利要求书1或4所述的一种基于并行处理的多主机接口冗余SAN 控制器,其特征在于工作流程为(1)、来自主机的数据流Sl、 S2首先通过主机接口 AO进入到RAID控制器Al ,该RAID控制器Al负责将一部分数据流Sl通过其DMA通道传输 到SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速 PCIE总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过 其DMA通道传输到SDRAM中进行后续的RAID数据处理;(2) 、RAID控制器Al将数据流SI处理完毕后得到RAID数据S3, RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;(3) 、RAID控制器Al通过高速PC正总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PCIE 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;(4) 、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内。
6、 根据权利要求书1或4所述的一种基于并行处理的多主机接口冗余SAN 控制器,其特征在于冗余模式下的控制器冗余模块A和控制器冗余模块B通 过高速PCIE总线PI互联来实现冗余模式下缓存的镜像;待机的控制器冗余模 块B通过高速PCIE总线PI实时将正在工作的控制器冗余模块A的缓存复制 下来,以备工作的控制器冗余模块A宕机后接管其工作;同时高速PCIE总线 PI还为心跳检测通路,可以检测控制器冗余模块A和控制器冗余模块B的工 作状态,以便向背板模块C中的冗余控制切换电路发出接管切换命令实现工作 的接管。
7、 根据权利要求书1所述的一种基于并行处理的多主机接口冗余SAN控 制器,其特征在于控制器冗余模块A和控制器冗余模块B之间进行数据的并 行处理;来自主机的数据流S1、 S2、 S6、 S7分别在控制器冗余模块A和控制 器冗余模块B之间进行并行处理,然后将处理完的RAID数据S5、 RAID数据 SIO写入到磁盘阵列内。
8、 根据权利要求书1或7所述的一种基于并行处理的多主机接口冗余SAN 控制器,其特征在于控制器冗余模块A工作流程为(1) 、来自主机的数据流Sl、 S2通过主机接口 AO进入到RAID控制器 Al,该RAID控制器Al负责将一部分数据流SI通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S2通过高速PCIE 总线传送到RAID控制器A2, RAID控制器A2将这部分数据流S2通过其DMA 通道传输到SDRAM中进行后续的RAID数据处理;(2) 、RAID控制器Al将数据流SI处理完毕后得到RAID数据S3,RAID 控制器A2对数据流S2进行RAID运算完后得到RAID数据S4;(3) 、RAID控制器Al通过高速PCIE总线将RAID数据S3传递到RAID 控制器A2, RAID控制器A2将RAID数据S3、 RAID数据S4通过高速PCIE 总线传递到磁盘控制器A3进行数据的磁盘操作,形成RAID数据S5;(4) 、磁盘控制器A3将RAID数据S5通过非高速互联通路PA写入到磁 盘阵列内。
9、根据权利要求书1或7所述的一种基于并行处理的多主机接口冗余SAN 控制器,其特征在于控制器冗余模块B工作流程为(1) 、来自主机的数据流S6、 S7通过主机接口 BO进入到RAID控制器 Bl,该RAID控制器Bl负责将一部分数据流S6通过其DMA通道传输到 SDRAM中进行后续的RAID数据处理,同时还将其余数据流S7通过高速PCIE 总线传送到RAID控制器B2, RAID控制器B2将这部分数据流S7通过其DMA 通道传输到SDRAM中进行后续的RAID数据处理;(2) 、RAID控制器Bl将数据流S6处理完毕后得到RAID数据S8, RAID 控制器B2对数据流S7进行RAID运算完后得到RAID数据S9;(3) 、RAID控制器Bl通过高速PCIE总线将RAID数据S8传递到RAID 控制器B2, RAID控制器B2将RAID数据S8、 RAID数据S9通过高速PCIE 总线传递到磁盘控制器B3进行数据的磁盘操作,形成RAID数据S10;(4) 、磁盘控制器B3将RAID数据S10通过非高速互联通路PB写入到 磁盘阵列内。
全文摘要
本发明公开了一种基于并行处理的多主机接口冗余SAN控制器,属于一种控制器,其结构包括控制器冗余模块A、控制器冗余模块B及背板模块C,其中控制器冗余模块A与控制器冗余模块B通过高速PCIE总线P1连接,控制器冗余模块A与背板模块C通过非高速互联通路PA连接,控制器冗余模块B与背板模块C通过非高速互联通路PB连接。本发明的一种基于并行处理的多主机接口冗余SAN控制器和现有技术相比,采用双控制器双DMA通道并行处理,架构配备两个冗余控制器模块,在每个控制器冗余模块内部以及两个控制器冗余模块之间可以进行RAID等数据的并行处理,在不失可靠性的前提下可以大大提高控制器的整机性能。
文档编号G06F13/40GK101576805SQ20091001615
公开日2009年11月11日 申请日期2009年6月12日 优先权日2009年6月12日
发明者强 刘, 伟 李, 凯 田, 金长新 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1