前言

本文章主要对华为存储系统的组件进行介绍,包括控制框、硬盘框、硬盘、接口模块等组件,以及框间级联的方式。介绍了存储介质控制框、硬盘框、硬盘及接口模块的结构、工作原理及特点。

华为存储产品形态

2U盘控一体

4U盘控分离

整机柜

控制框

控制框形态

l控制框采用部件模块化设计,主要由系统插框、控制器(内含风扇模块)、BBU模块、电源模块、管理模块和接口模块等组成。控制框是承载了控制器的机框,对外提供存储服务,它是存储系统中的核心组件,主要包括:

  • 系统插框:通过背板为各种接口模块提供可靠的连接,实现各个模块之间的信号互连与电源互连。
  • BBU模块:能够在系统外部供电失效的情况下,提供后备电源支持,以保证存储阵列中业务数据的安全性。
  • 管理模块:主要提供管理接口,包括管理网口、串口和维护网口。
  • 电源模块:PSU(Power Supply Unit)电源模块为交流电源模块,可以支持控制框在最大功耗模式下正常运行。
  • 接口模块:IM,承载业务或管理接口的现场可更换模块。

控制框后视图详解

编号说明
1管理口
2维护口
3串口
4接口模块
5电源、BBU一体模块
6SAS级联口
7接口模块
8管理板
9电源

控制器

控制器是设备中的核心部件,主要负责处理存储业务、接收用户的配置管理命令、保存配置信息、接入硬盘和保存关键信息到保险箱硬盘。

控制器:存储系统中承载业务处理的核心模块。

  • 控制器上的CPU和Cache共同实现对来自主机系统I/O请求的操作和对磁盘阵列的RAID管理。
  • 每个控制器可内置多个硬盘,用于保存存储系统的数据和系统掉电后Cache中的数据。控制器间的硬盘互相冗余。

前端端口,FE(Front End):用于应用服务器和存储设备进行业务通信,即对主机I/O进行处理。

后端端口,BE(Back End):负责连接控制框和硬盘框,是数据从硬盘读写的通道。

缓存(Cache):是硬盘控制器上的一块内存芯片,具有极快的存取速度,它是硬盘内部存储和外界接口之间的缓冲器。

引擎(Engine):引擎(Engine)是电子平台上开发程序或系统的核心组件。通常是一个程序或一套系统的支持部分。

BBU模块和风扇模块

风扇模块为系统提供散热功能,可以支持控制框在最大功耗下的正常运行。

BBU能够在系统外部供电失效的情况下,提供后备电源支持,以保证存储阵列中业务数据的安全性。

在系统电源输出正常时处于备份状态,当外部电源断开时,BBU能够继续给系统供电。BBU支持失效隔离,当BBU出故障时不会影响系统的正常运行。当系统掉电时BBU能确保系统将Cache数据写入控制器内置硬盘,保证数据不丢失。在系统外部电源故障恢复时,驱动软件将保存在控制器内置硬盘上的数据读出恢复至Cache中。使用锂电池备电的系统,都需要通过对电池进行充放电来刷新和检测电池容量,用于提前发现电池部件在网长时间不使用导致容量衰减,无法满足系统备电应用,导致数据备份失败的问题,提升系统掉电数据保护的可靠性。

前视图

风扇模块

BBU模块

保险箱盘

保险箱盘用于保存存储系统的数据、系统配置信息和日志、系统掉电后Cache中的数据。

存储系统中存在两种保险箱盘:内置的保险箱盘和外置的保险箱盘。

内置的保险箱盘:

  • Huawei OceanStor Dorado V6每个控制器内置1块或2块SSD硬盘作为保险箱盘,详细配置请参考产品文档。

外置的保险箱盘:

  • 存储系统会自动选择系统中的4块硬盘规划为保险箱盘,每块硬盘各取2GB空间组成RAID1,保险箱盘上的其他容量可以用来存储业务数据。当保险箱盘故障时,为保障冗余性,系统会自动从其余硬盘中选择状态正常的盘来替代故障保险箱盘。

电源模块

  • 电源模块为交流电源模块,可以支持控制框在最大功耗模式下正常运行。
  • 4控制器存储产品每个4U控制框有4个电源模块(PSU,Power Supply Unit),分别为PSU 0、PSU 1、PSU 2、PSU 3。分为两个电源平面,PSU 0与PSU 1为一个电源平面且互为冗余,为A、C控制器供电。PSU 2和PSU 3为另外一个电源平面且互为冗余,为B、D控制器供电。为保障电源模块供电的可靠性,建议PSU 0和PSU 2插入一个PDU,PSU 1和PSU 3插入另外一个PDU。
  • 2控制器存储产品每个控制框有2个电源模块(PSU,Power Supply Unit),分别为PSU 0、PSU 1,组成一个电源平面且互为冗余,为A、B控制器供电。为保障电源模块供电的可靠性,建议PSU 0和PSU 1分别插入不同的PDU。

硬盘框

硬盘框形态

硬盘框采用部件模块化设计,主要由系统插框、级联模块、电源模块和硬盘模块等组成。各模块作用如下:

  • 系统插框:通过背板为各种接口模块提供可靠的连接,实现各个模块之间的信号互连与电源互连。
  • 级联模块:通过级联端口来级联控制框和其他硬盘框,实现与控制框和其他硬盘框的通信,是控制框与硬盘框之间、硬盘框与硬盘框之间进行数据传输的连接点。
  • 电源模块:可以支持硬盘框在最大功耗模式下正常运行。
  • 硬盘模块:为存储系统提供存储容量,可作为系统保险箱,并且可以实现业务数据、系统数据和缓存数据的存储作用。

硬盘框正视图

华为OceanStor Dorado V6 系列全闪存存储系统提供了三种硬盘框:SAS硬盘框、智能SAS硬盘框和智能NVMe硬盘框。

2U 25盘位 智能SAS硬盘框
2U 36盘位 智能NVMe硬盘框

硬盘框上电后,可以通过观察指示灯初步检查硬盘框当前的工作状态。

硬盘框后视图

智能硬盘框对外提供RoCE(RDMA over Converged Ethernet)接口用于和控制框的互联,内部通过配置鲲鹏CPU和DDR内存获得了计算能力。

智能硬盘框提供智能SAS硬盘框(2U25盘位)和智能NVMe硬盘框(2U36盘位)。

2U 智能SAS硬盘框
2U 智能NVMe硬盘框
编号说明
1串口
2Mini SAS HD级联端口
3硬盘框ID显示器
4级联模块
5电源模块
6板载级联口
7板载管理口
8电源模块

级联模块

每个级联模块提供1个级联端口“P0”和1个级联端口“P1”。级联模块通过级联端口来级联控制框或硬盘框,实现与控制框或硬盘框的通信,是控制框与硬盘框之间进行数据传输的连接点。

2U SAS硬盘框中级联模块,通过级联端口级联控制框
2U 智能NVMe硬盘框中级联模块,通过级联端口级联控制框与其他硬盘框

CE交换机

CE交换机是面向数据中心、高端园区网络以及企业级应用设计的核心交换机产品,广泛应用于数据中心网络及大型企业网络。其性能特点是具有高性能交换,支持全端口速率转发,每秒钟至少能够达到TB级别。同时,CE交换机使用华为自研芯片,支持虚拟化,集群交换系统。

FC交换机

FC交换机(Fibre Channel Switch)是一种高速网络传输设备,主要用于光纤通道(Fibre Channel,FC)网络,为存储区域网络(SAN)提供高性能、低延迟的数据传输支持。

设备线缆

串口线

mini SAS HD电缆

mini SAS HD光缆

AOC线

100G QSFP 28线缆

25G SFP 28线缆

FDR线缆

MPO-4*DLC光纤

光纤

  1. 串口线缆用来连接设备的系统串口到维护终端。
  2. mini SAS HD线缆:存储系统中mini SAS HD线缆用于连接级联端口,连接控制框到硬盘框。mini SAS HD线缆分为mini SAS HD电缆和mini SAS HD光缆。
  3. AOC线缆(Active Optical Cable):用于连接存储系统控制框上控制器的PCIe接口至数据交换机。
  4. 100G QSFP28线缆:100G QSFP28线缆主要用于多控间直连组网或连接智能硬盘框。
  5. 25G SFP28线缆:25G SFP28线缆主要用于前端主机组网。
  6. FDR线缆(Fourteen Data Rate):是56Gb IB接口模块专用线缆。
  7. 光纤:设备通过光纤与光纤交换机进行通信。光纤的一端可连接FC(Fibre Channel ) HBA(Host Bus Adapter)卡,另一端连接光纤交换机或存储。光纤两端都为LC(Lucent Connector)连接器。存储到光纤交换机可以使用MPO-4*DLC光纤线连接,MPO-4*DLC光纤是8Gb FC接口模块(8端口)和16Gb FC接口模块(8端口)专用线缆。

硬盘

固态硬盘概述

相对于HDD而言,固态硬盘SSD在性能、可靠性、能耗、轻便性方面有着绝对的优势,目前已经在各领域得到广泛应用。

SSD特点:

  • 使用flash技术存储信息,数据传输速度比HDD快。
  • 内部没有机械结构因此耗电量更小、散热小、噪音小。
  • SSD盘使用寿命受擦写次数影响。
  • SSD的可靠性更高、平均无故障时间更长。
  • SSD的单位容量更密集,单盘容量更大。

SSD结构

SSD主要由控制单元和存储单元(当前主要是Flash闪存颗粒)组成。

  • 存储单元:NAND FLASH颗粒。
  • 控制单元:SSD控制器、主机接口、DRAM等;
主机接口:主机访问SSD的协议和物理接口,如SATA、SAS和PCIe。
SSD控制器:负责主机到后端介质的读写访问和协议转换,表项管理、数据缓存及校验等,是SSD的核心部件。
DRAM:FTL(Flash translation layer,闪存转换层)表项和数据的缓存,以提供数据访问性能。
NAND FLASH:数据存储的物理器件,是一种非易失性随机访问存储介质。
多通道并发,通道内Flash颗粒复用时序。支持TCQ/NCQ,一次响应多个IO请求。

NAND Flash

NAND Flash内部存储单元组成包括:LUN、Plane、Block、Page、Cell。

对NAND Flash的读写数据的操作主要涉及擦除(Erase)、编程(Program)和读(Read)。

NAND Flsh是非易失性介质,在写入新数据之前必须保证Block被擦除过。对Block擦除一次后再写入一次称为一次P/E Cycle。

•NAND Flash存储原理:

NAND Flash采用浮栅晶体管存储数据,其工作原理是利用浮栅上是否储存有电荷或储存电荷的多少来改变晶体管的阈值电压,通过读取到的晶体管阈值电压来实现数据信息的表征。

  • LUN:能够独立封装的最小物理单元,通常包含多个plane。
  • Plane:拥有独立的Page寄存器,通常LUN包含1K或2K奇数Block或偶数Block。
  • Block:能够执行擦除操作的最小单元,通常由多个Page组成。
  • Page:能够执行编程和读操作的最小单元,通常大小为16KB等。
  • Cell:Page中的最小操作擦写读单元,对应一个浮栅晶体管,可以存储1bit或多bit。

编程和读的基本操作单位是Page,擦除的基本单位是Block。擦写过程会对浮栅晶体管的绝缘层造成一定程度的损坏,在擦除失败或编程失败后会置操作的Block为坏块,厂商定义当坏块数量达到一定程度(4%以内)的时候,则认为NAND Flash达到使用寿命上限。

FTL缓存

FTL缓存是固态硬盘(SSD)中用于临时存储FTL表的高速存储区域,其核心目的是通过减少存储在NAND种的FTL表的直接访问次数来提升整体读写性能。

闪存颗粒

SLC、MLC、TLC和QLC

NAND Flash的颗粒可根据Cell储存bit数据位的不同分为四类:

  • SLC (Single Level Cell),单层式存储单元,在SLC中,1个cell能够存储1位数据:0或1。
  • MLC (Multi Level Cell),多层式存储单元,在MLC中,1个cell能够存储2位数据:00,01,10和11。
  • TLC (Triple Level Cell),三层式存储单元,在TLC中,1个cell可以存储3位数据:000,001,010,011,100,101,110和111。
  • QLC(Quad Level Cell),四层式存储单元,在QLC中,1个cell可以存储4位数据:0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111。

四种不同的类型的cell,虽然存储的数据量不同,但是成本却是大致相同的,这也是SSD的容量不断增大的一个原因。最初的SSD只有64GB或更小,而现在最大TLC型的SSD单盘可以存储多达60TB的数据。不过,不同类型的SSD盘的抗磨损的能力不同,导致硬盘的可靠性不同。SSD盘的抗磨损能力也是选择SSD盘的一个重要参数。

SLC

1、可擦写次数和可靠性最好的,一般5w-10w间;
2、但是存储容量相对较少;
3、成本也最高。

MLC

1、可擦写次数较少,一般3K左右;
2、2bit数据读写使得MLC速度比SLC慢;
3、存储容量较大;
4、价格比较便宜。

TLC

1、数据密度更大,可擦写次数只有几百次到上千次;
2、可靠性和性能很低;
3、具有成本优势,一般用在个人消费产品中,不能满足企业产品要求。

QLC

1、容量增加了33%;

2、与TLC相比较,写入性能、P/E寿命再次减少。

闪存颗粒数据关系

如图,以一片Flash芯片(Toshiba 3D-TLC)逻辑图为例:

  • 每18336*8=146688个Cell逻辑上形成一个Page,每个Page中可以存放16KB的内容和1952B的ECC校验数据,Page也是Flash芯片IO的最小单位。
  • 每768个Page组成一个Block。每1478个Block组成一个区域Plane。
  • 一整片Flash芯片由两个区域组成,一个区域存储奇数序号的Block,另一个存储偶数序号的Block,两个Plane可以并行操作。

考虑到要对存入NAND FLASH中的数据做ECC,NAND FLASH中的Page大小并非16KB整数,而是多出一部分Bytes。如16K Page实际大小为16384+1952Bytes,16384Bytes是用于存储数据,而1952Bytes则用于存放ECC数据校验码。

FTL闪存转换层

主控制器 FTL映射表:存放在内部SRAM/DRAM或者外部DRAM还有NAND颗粒里

操作系统扇区(512B),文件系统用512B为单位读/写操作。

FTL映射操作,主控制按照映射表地址来映射地址。

NAND物理地址上的地址数据,是根据映射表的安排来存放。

SSD的工作原理

SSD数据写入过程 (1)

以8通道为例,分析Host怎么写SSD。

主控通过8通道连接8个Flash DIE,为方便解释,这里只画了每个DIE里的一个Block,其中每个小方块表示一个Page(假设大小为4KB)。

  • Host写入4KB数据:往channel 0的Block里写入了一个4KB(占1Page);
  • Host继续写入16KB数据:往channel 1-4的Block里各写入4KB;
  • Host继续写入,最后整个Block都写满。

当所有Channel上的Block都写满的时候,SSD主控会挑选下一个Block以同样的方式继续写入。

SSD数据写入过程 (2)

绿色方块代表有效数据,红色方块代表无效数据。Block中的数据变老或者无效,是指没有任何映射关系指向它们,用户不会访问到这些FLASH空间,它们被新的映射关系所取代。

比如有一个Host Page A,开始它存储在FLASH空间的X,映射关系为A->X。后来,HOST重写了该Host Page,由于FLASH不能覆盖写,SSD内部必须寻找一个没有写过的位置写入新的数据,假设为Y,这个时候新的映射关系建立:A->Y,之前的映射关系解除,位置X上的数据变老失效,我们把这些数据叫垃圾数据。

随着HOST的持续写入,FLASH存储空间慢慢变小,直到耗尽。如果不及时清除这些垃圾数据(GC回收、Trim指令),HOST就无法写入。

SSD数据读取过程

速度是不是8倍提升取决于要读的数据是不是平均分布在每个channel的Block里,如果32KB数据是存储在图中channel1-4的Block的,那么读取就最多只有4倍的提升了,这也就是为什么文件越小传输率越低的。

SSD性能优势

SSD在存储中的应用

A级应用:以高并发随机读写为主,如数据库应用

B级应用:顺序读写的大容量文件、图片、流媒体等

C级应用:已备份数据为主,或减少使用的数据

接口模块

GE接口模块

传统以太网(Ethernet)接口。

GE电口模块:GE电接口模块提供4个传输速率为1Gbit/s的电端口,可用作双活仲裁。

40GE接口模块:40GE接口模块提供2个传输速率为40Gbit/s的光口,主要用于设备与应用服务器之间的连接。

100GE接口模块:100GE接口模块提供2个传输速率为100Gbit/s的光口,主要用于存储设备与应用服务器之间的连接。

SAS级联模块和RDMA接口模块

使用RDMA(内存直接访问技术),无需通过系统内核、CPU,应该可直接访问内存中数据。

25Gb RDMA接口模块:提供4个速率为25Gbit/s的光口,用于直连组网中控制柜之间的连接。

100Gb RDMA接口模块:提供2个传输速率为100Gbit/s的光口,用于控制柜与Scale-out交换机相连,或控制柜与智能硬盘柜之间的连接。

12Gb SAS级联模块:提供4个传输速率为4*12Gbit/s的mini SAS HD级联接口,通过级联接口连接控制柜和2U SAS硬盘柜,是控制柜和2U SAS硬盘柜之间进行数据传输的连接点。

SmartIO接口模块

SmartIO接口模块是存储设备(华为)中用于前端业务连接和存储设备间复制链路连接的关键组件。支持FC、iSCSI、FCoE等多种协议。

SmartIO接口模块:支持32Gbit/s传输速率

SmartIO接口模块:支持25Gbit/s传输速率。

PCIe接口模块和56Gb IB接口模块

PCIe接口模块提供2个PCIe接口,是控制柜与数据交换机之间的业务接口,用于控制柜之间交换控制流和数量流信息。

  1. 模块电源指示灯。
  2. PCIe端口Link/Speed指示灯。
  3. PCIe端口。
  4. 模块拉手。

56Gb IB(InfinBand)接口模块提供2个传输速率为4x14Gbit/s的IB接口

  1. 模块电源指示灯/热插拔按钮。
  2. 56Gb IB端口Link指示灯。
  3. 56Gb IB端口Active指示灯。
  4. 56Gb IB端口。
  5. 模块拉手。

FC接口和FCoE接口模块

16Gb FC接口模块(8端口)提供2个物理接口,通过专用线缆转换为8个16Gb FC光纤端口,每个光纤端口传输速率为16Gbit/s,是应用服务器与存储系统的业务接口,用于接收应用服务器发出的数据交换命令。

10Gb FCoE接口模块提供2个传输速率为10Gbit/s的端口,是应用服务器与存储系统之间的业务接口,用于接收应用服务器发出的数据读写指令。

10Gb FCoE接口模块(2端口)只支持直连组网。

练习

二次元!不是的?喜欢数码科技吗?我来带你了解。
最后更新于 2025-04-22