存储 频道

存储系统控制器浅析

  【IT168 资讯】存储系统作为网络后台的核心设备,为各类信息应用提供网络存储,离可用数据库集群、离性能计算、数据备份,复制、容灾。迁移等各类服务。存储系统是一种将多个磁盘驱动器组织在—起,以提供较高的数据读写、传输性能和桴储安全特性的计算机设备,是典型的嵌入式系统,其控制器是所有功能的实现者,决定着系统体系结构。存储系统的控制器,类似于服务器内部的PCI RAID控制器,又有较大的差别,这里以浪潮的NS8800为例,来谈一谈存储系统控制器,以使读者能够窥一斑而知全豹,对存储设备有较全面的了解。

  存储器系统控制器架构

  存储系统控制器和PCI RAID卡具有相同的逻辑构成,有I/处理器、高速缓存、硬盘接口控制器、高速总线、储存嵌入式软件的闪存、内外连接接口等。


图1:采用双路PCI-X总线的光纤通道磁盘阵列控制器

  硬件构成上,和PCI RAID卡不同,存储控制器还有用于连接主机的磁盘控制器,以及更多的协同处理和管理的功能芯片。物理上,为了能够实现各类芯片的布局,存储控制器通常分为控制器板卡、I/0接口卡、管理模块卡等几大部分。

  任何硬件功能的发挥,离不开软件。存储控制器软件实现如下三个功能:管理和控制磁盘集合(阵列)、传送I/0操作进/出磁盘、为数据冗余计算校验值或使用校验值恢复丢失的数据。在软件构成上包括3个部分:阵列控制软件,板支持包及接口驱动软件,操作系统及设备接口。


图2:控制器软件示意图

  荐储控制器软件的各模块功能如下:

  ◆系统初始化模块:负责系统初始阶段的系统自举、设备自检、参数设定、资源分配等。
  ◆命令分解模块:负责服务器命令的分解、应答等。
  ◆数据分块重组模块:负责服务器数据的分块和底层数据的重组。
  ◆缓存管理:负责命令及数据缓存的分配、聚散、释放等。
  ◆I/0调度模块:负责上层与底层I/0命令的并行、流水调度等。
  ◆校验信息计算模块:负责校验信息的计算。
  ◆数据重构模块:负责降级模式下的数据提供。
  ◆数据恢复模块:负责磁盘出错时的数据自动恢复。
  ◆RCR模块:实现RAID Cache RAID功能,提供阵列性能。

  仅仅控制器是远远不够的,还要辅以下列系统设计方法,方可构建一个高可用的存储系统:

  ◆采用模块化技术,研究开发磁盘阵列的磁盘子系统、控制器、电源、结构件、连接件等模块,并在存储设备内部采用无电缆连接技术,提高系统的集成度和可靠度。
  ◆采用全冗余热拔插技术,实现存储设备模块内主要工作子系统,例如散热子系统、电源子系统、控制器子系统的容错能力,提高可用性。
  ◆采用结构一体化设计技术,为存储设备和整个海量存储系统提供足够的散热能力,提高系统的稳定性和可靠性:合理的结构设计,将保证电源、风扇、硬盘、控制器模块的无电缆连接,并保证冗余热拔插功能的实现。

  存储系统控制器的高性能

  与一般的PCI RAID卡相比,存储系统的控制器控制软件除了实现基本的RAID功能,支持RAID 0、1、0+1、3、5、30、50等级别外,还通过以下技术提高存储设备的传输性能:

  ◆实现存储设备与系统的均衡。在分析磁盘阵列的随机Petri网模型和计算硬件组成环节运行时间的基础上,利用Petri网模型计算主要环节的利用率,选择合适的通信机制,利用运行时间的计算结果合理地确定硬件配置,来解决主从通道与磁盘通道的速度匹配、各级缓冲存储器的容量匹配和通信方式的选择等影响性能的关键问题,使系统结构趋于合理,达到负载均衡的目的。

0
相关文章