网络存储技术——以太网光纤通道技术

随着网络技术和存储技术的发展,数据中心的规模日益壮大。数据中心中存在着LAN、SAN和IPC三张网络,这些网络采用不同的接口技术和管理软件,这使得数据中心的管理变得非常复杂。

服务器必须具备多种类型的网络接口,以满足不同网络的服务需求,服务器与数据中心网络的连线也因此越来越多,这使得数据中心的能源消耗和制冷费随之增加,这些费用甚至超过了数据中心核心设备本身的价值。

这些问题的存在,使得数据中心网络的融合成为必然趋势。

##数据中心以太网DCB

  • 网络丢包对于存储业务影响很大。将FC业务搬移到以太网上,需要以太网不丢包。

  • 如何实现不丢包?

###DCB简介

  • DCB特别小组努力下,制定了IEEE 802.1Qbb、IEEE 802.1Qaz、IEEE 802.1Qau和DCBX协议。

  • 弥补了传统以太网的不足,经过增强的以太网也叫增强融合型以太网(CEE,Convergence Enhanced Ethernet)或数据中心以太网(DCE,Data Center Ethernet)

###IEEE 802.1Qbb

  • IEEE 802.1Qbb提出了一种新的流量控制机制——基于优先级的流控(PFC,Priority-based Flow Control)。

  • PFC提供的是链路层的流量控制机制,它和802.3x中定义的PAUSE功能非常相似,不同的是它根据数据的类型将数据流分为八种不同的优先级,它可以根据需要对不同优先级的数据流实现独立的流量控制。

  • 当网络中某一节点发生拥塞时,该节点可以要求数据源暂停发送相应优先级的数据,但不影响别的优先级数据的发送。

  • 该流量控制机制既保证了数据的无损传输,又不会因为一个数据源发送数据过快,而导致所有的数据源都暂停发送数据。

fcoe1.png

fcoe2.png

###IEEE802.1Qaz

  • EEE802.1Qaz协议提出了增强型传输(ETS,Enhanced Transmission Selection)的概念。主要目的是提高网络服务的公平性,前面介绍的PFC流量控制机制,其实在PFC之前已经有基于优先级的流量控制机制了,只不过当时该机制主要在网桥或路由器上实现,该机制虽然有效的区分了数据的优先级别,保证了以太网的不丢包功能,但在多种优先级数据争用链路的时候,它会让优先级高的数据先发送,之后才会发送低优先级的数据,这种机制通常会导致低优先级的数据出现“饿死”现象,这样是不公平的。

  • ETS根据数据的类型,将这些数据划分到不同的优先级组中,常见的划分方法是根据以前数据中心存在的三种网络来分组,即LAN、SAN和IPC,LAN中的数据只需要尽力传输的服务就够了,而SAN中的数据要求不丢包,IPC数据对延迟很敏感。划分好优先级组后,可以对不同的优先级组分配一定的带宽,这就可以防止低优先级的数据出现“饿死”的现象。

###IEEE802.1Qau

IEEE 802.1Qau协议是IEEE Std 802.1Q-2005的修订版本,目的是给LAN的虚拟桥接设备提供拥塞通知能力,从而支持对长期活跃在网络中的数据进行拥塞管理。拥塞通知(CN,Congestion Notification)为上层协议(例如FCoE协议,Fibre Channel over Ethernet)提供了端到端的拥塞管理机制。该机制将会帮助以太网成为一个真正的无损网络。

该协议中介绍了一种拥塞通知的算法——量化的拥塞通知协议(QCN,Quantized Congestion Norification protocol)。QCN的主要思路是在拥塞点(CP,Congestion Point)对数据进行采样,根据采样结果向数据源端发送拥塞通知,数据源端从拥塞通知中提取拥塞通知信息(CNM,Congestion Notification Message),来控制自己发送数据的速率,另外数据源端在没有收到拥塞通知时,会按照一定的机制提高数据发送的速率。通过拥塞通知和加速机制的配合,数据源就会逐渐找到一个数据发送速率的平衡点,这样既不会由于发送数据过快而导致链路拥塞,又有效的利用了链路带宽,不至于链路带宽的浪费。

###思考题

查询QCN协议,说明数据源端是如何控制发送速率的。即具体上,速率如何增加、如何减少?

##DCBX

DCBX协议制定的主要目的有三个:

一、让DCB设备“弄清”与它直接相连的另一个DCB设备的基本能力,“弄清”与之对等的DCB设备是否具备某一特征,比如是否支持优先级组(PG)或优先级流量控制(PFC)等。

二、检测DCB设备的配置是否正确,两个互连的DCB设备的某些配置可能不同。

三、配置与本DCB互连的另一个DCB,通过DCBX协议可以实现本DCB对与之互连的DCB进行某些参数的配置。

##FCoE协议

T11组织制定的FC-BB-5中包含了FC-BB-E,这个协议规定了如何将FC帧映射到以太网帧。

fcoe3.png

##ENode功能模型

fcoe4.png

##FCF功能模型

fcoe5.png

##FCoE帧格式

fcoe6.png

###思考题

假设SCSI Payload长度一样,为X,分别计算iSCSI和FCoE的封装效率。

网络存储技术——iSCSI协议

正如每一个技术的革命都有市场在背后做推手,iSCSI的兴起也是一样。虽然存储网络早已成为存储业界的重心,但网络存储的天平却一直在SAN和NAS间摇摆,直到2002年7月,在IETF的推动下,基于IP协议的网络存储技术iSCSI才得以浮出水面。大公司的参与和领导往往是新技术得到推广的必不可少的条件。iSCSI一出现,马上得到了IBM,Cisco和HP三大业界巨头的鼎力支持,成为下一次技术浪潮的宠儿。

##什么是iSCSI

  • iSCSI:将SCSI命令和块状数据封装到TCP/IP包中发送、接收。

  • iSCSI优点:

    • 将存储网扩展到Internet。
    • 显著降低总体拥有成本。
  • iSCSI缺点:

    • 效率低于FC
    • 如果不使用硬件加速TCP处理,性能低。

##iSCSI操作过程

  • iSCSI登录:建立TCP连接给iSCSI使用。启动器向目标器发登录请求,经过相互认证,协商各种参数。完成后就进入全功能阶段。

  • iSCSI全功能阶段:启动器向目标器发送SCSI命令,目标器予以回复。

  • 连接的一致性:如果iSCSI请求在一个TCP连接中传输,回复也应该在同一个TCP连接中。出现错误时,可以在另一个TCP连接中传输。

##iSCSI协议数据单元

  • SCSI命令封装到iSCSI请求数据包,SCSI回答和状态在iSCSI回复数据包。

  • iSCSI的每一个数据单元有一个数据头,后面是一个或多个数据段。

  • 数据头分为基本数据头(BHS)和可选择的数据头(AHS)。BHS是每一个iSCSI数据包必需的,固定48Bytes。

ISCSI.png

###iSCSI基本数据头

ISCSI2.png

##思考题

  • SCSI能否不通过iSCSI层直接通过TCP传输?

  • 如果规定只能通过一个TCP连接传输iSCSI,iSCSI协议如何简化?

  • 有FC交换机,有没有iSCSI交换机?

网络存储技术——光纤通道(续)

最近筹划开始移动通信系列的整理,不过先把这一系列整理完再说,废话不多说,继续光纤通道。

##存储区域网

  • 存储区域网:Storage Area Network(SAN)就是连接主机和存储设备的网络。SAN可以采用FC协议,也可以采用iSCSI协议。中高端SAN一般采用FC协议。
  • FC SAN:由主机总线适配器(Host Bus Adaptor:HBA)、FC交换机、光纤连接而成。

  • 单独的SAN的好处:灵活、可靠、可扩展。特别适合有大量数据不断增加、服务器和存储设备有大量数据读写、可靠性要求很高的应用环境。例如银行数据中心等。

##SAN vs NAS

  • NAS:提供文件级服务。

  • SAN:提供存储块级服务。

  • FC速率vs NAS速率
    FC : 1G 2G 4G 8G 16G
    NAS: 100M 1000M 10G

  • FC效率高于NAS中的TCP/IP。

  • NAS比FC易于安装、管理和成本低。

##FC HBA卡软硬件模块划分

fchba.png

##FC交换机功能框图

fcswitch.png

##光纤通道路由选择

  • 当服务器到存储设备的路径不止一条,FC Switch就需要选择路径。FSPF(Fabric Shortest Path First)协议就是选择发起节点到目的节点代价最小的路径。

  • 如果多条路径具有相同代价,FC Switch就可以将数据平均分配到这几条路径上。

  • FSPF由四部分组成:
    Hello协议、网络拓扑结构数据库构造、路径选择算法、路由表更新

###Hello协议

用来建立相邻交换机之间的双向数据交换通道,发现交换机之间的链路故障,交换相邻交换机的一些参数。

###拓扑结构数据库构造

交换机之间通过LSR(Link State Records)信息的传播,每个交换机可以获得整个网络中所有的连接的状态信息。

###最短路径优先算法

  • 交换机根据拓扑结构数据库计算到其它交换机的最短路径。

  • 采用Dijikastra算法。

###路由表更新

交换机根据计算路径的结果,更新路由表,这是交换机的内部操作。

##存储分区

  • 一个存储区是SAN中能互相通信的一组设备。一个存储区中的设备只能和同一分区中的设备通信。一个设备可以属于多个存储区。

  • 存储分区的一个作用是安全性。

  • 软分区实现:通过域名服务器对查询节点隐藏非同一分区的其它节点的信息来实现。

  • 硬分区实现:通过在路由表中对不属于同一分区的禁止来实现。

网络存储技术——光纤通道

所谓通道,就是能传输物品的路径。在计算机技术中,要传输的是数据,但通道的概念仍然是一样:当把数据发送到通道的一端后,数据就被传输到通道的另一端。通道往往能实现很高的数据通信速度,数据通信时所涉及的协议也比较简单。通道一般用于一台计算机内部的数据交换,而两台计算机之间通信时,采用的是计算机网络。

####通道式数据交换与网络式数据交换的区别

  • 通道式数据交换:直通式(cut-through)数据交换。具有延时小、面向连接、短距离、可靠等特点。

  • 网络式数据交换:存储转发(store and forward)数据交换。具有延时大、无连接、长距离、不可靠(要丢包)等特点。

####光纤通道:延时小(cut-through) 、面向连接、长距离、可靠(不丢包)等特点。

###Cut-through和Store-and-Forward时延上的区别

一个节点A和另一个B之间有三个交换机,线路速率为1Gb/s,数据帧长度为1000Bytes。 Cut-through方式下,假设数据帧的头(4个Bytes)到了就可转发。 Store-and-Forward方式下,整个帧到了才转发。计算两种方式下的最小时延。

##光纤通道结构

  • 光纤通道网络结构分解为 通信节点、节点与连接接口、连接和交换结构。

  • 通信节点:服务器或存储设备。

  • 连接:光纤。

  • 交换结构:光纤通道交换机。

  • 节点与连接接口:主机总线适配器(Host Bus Adaptor : HBA)

##光纤通道端口类型

  • N端口:服务器或存储设备连接网络的端口。

  • L端口:NL口指服务器或存储设备与环连接的端口。FL口指光纤通道交换机与环连接的端口。

  • F端口:光纤通道交换机与服务器或存储设备连接的端口。

  • E端口:光纤通道交换机与其它光纤通道交换机连接的端口。

##光纤通道拓扑结构

  • 点到点直连

  • 环型结构:最多127个节点。适合于多个节点较少同时通信的场合。需要仲裁协议决定使用环通信的节点。

  • 交换结构:最大支持65000多个节点。

##光纤通道协议堆栈

  • FC-0定义了物理连接的特性。例如信号速度、电缆种类、通信距离等。
  • FC-1: 传输信号的编码和解码方式。
  • FC-2:帧协议/流控制
  • FC-3:保留扩展。
  • FC-4:定义上层协议到FC的映射方式。

###FC-0层

  • 完成光电转换,时钟恢复功能。为FC-1层提供传输基本二进制0或1信号的功能。

  • 包含光电转换器和串行解串器(SerDes)。

###FC-1层

  • 为FC-2提供传输字的功能。

  • 包含字节对齐电路、8b/10b编解码等。

###FC-2层

  • 发送和接收帧、帧序列、帧交换。

  • FC的帧结构中,有OX_ID 、SEQ_ID和SEQ_CNT,分别标识一个帧交换、一个帧交换中的一个帧序列、一个帧序列中的一个帧的编号。

FC的帧结构和以太网/IP报的结构的主要区别是什么?

###FC-3层

提供公共服务给同一节点的多个上层

###FC-4映射层

  • 将高层协议的信息单元映射成帧序列;将帧序列映射成高层协议的信息单元。

  • 高层协议:

    • SCSI、IP等
    • SCSI的一个单独的命令被映射成FC的一个帧序列。组成一个SCSI交易的几个命令为映射成FC的一个帧交换。

##光纤通道流控制

  • 端到端流控

  • 缓存到缓存流控

##服务类型

  • 1类服务:面向连接的服务,提供专用的物理通道。不需缓存到缓存的流控制,只需端到端的流控制。

  • 2类服务:无连接服务。同时使用端到端和缓存到缓存的流控制。

  • 3类服务:只使用缓存到缓存的流控制。由上层协议实现出错重传。

##FC地址

  • 目的ID: 3Byte。域名+端口号+虚拟机号

  • 源ID: 3Byte。域名+端口号+虚拟机号

  • 不同交换机的域名不一样。

##FC登录

  • 端口登录:两个N端口之间的连接初始化过程。

  • 交换机登录:N端口和交换机F端口的连接初始化过程。

##FLOGI

FLOGI通常被发送它的N端口用于传送服务参数,也是N端口设备做Fabric Login的一种方法。在进行Fabric Login过程中所发送的FLOGI的目的地址是0xFFFFFE,源地址通常是0x000000。之所以源地址为空,是因为N端口设备总是首先假设存在Fabric并且希望Fabric能给自己分配一个未被用到的地址。如果发送FLOGI的N端口在发送FLOGI之前就希望自己被分配某个地址,那么它就应该将这个地址填在FLOGI中。在FLOGI帧中,包含了一些重要的参数。例如BBCredit。

##FC通用服务

包括目录服务、别名服务、时间服务等。

未完待续。内容比较多,分两部分进行。

RAID 10 和RAID 01 (RAID 1+0 和RAID 0+1)

关于RAID10和RAID01的问题,我其实很是纠结,因为网上现有的资料和我教科书上的说法是完全相反的,我也不知道该信谁。姑且按照公认的比较权威的维基百科的说法来吧。不过我考试的时候还是照着书上的来了,毕竟考试时书才是王道。

RAID 10是先镜射再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。

RAID 01则是跟RAID 10的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。

当RAID 10有一个硬盘受损,其余硬盘会继续运作。RAID 01只要有一个硬盘受损,同组RAID 0的所有硬盘都会停止运作,只剩下其他组的硬盘运作,可靠性较低。如果以六个硬盘建RAID 01,镜射再用三个建RAID 0,那么坏一个硬盘便会有三个硬盘脱机。因此,RAID 10远较RAID 01常用,零售主板绝大部份支持RAID 0/1/5/10,但不支持RAID 01。

raid10.png

raid01.png

上面的资料参考了维基百科,页面传送。下面的资料参考了存储人生的一篇文章,页面传送

##RAID 01 VS RAID 10

性能与可用空间始终是相同的。从数据存储的逻辑位置来看,在正常的情况下RAID01和RAID10是完全一样的,而且每一个读写操作所产生的IO数量也是一样的,所以在读写性能上两者没什么区别。而当有磁盘出现故障时,这两种情况下,在读的性能上面也将不同,RAID10的读性能将优于RAID01。

最主要的区别是容错性。RAID 01容错性要差一点,因为只有2组RAID 0来保护。RAID 10由于有多组RAID 0,虽然每个组只有2块盘,因此可以允许3块盘同时坏掉的情况。我们可以计算RAID 01与RAID 10允许坏2块盘与3块盘的情况,故障率RAID10是低于RAID01的。 raid10可以损坏任意一块磁盘,而整体的数据仍然是可用的.我们暂且说这个系统的冗余度为2.而raid01只允许损坏特定的一块磁盘.左边的raid0中有一块盘损坏,此时左边的raid0便没有作用了.所有的io会切到右边的raid0,而这个时候,只能允许左边剩余的盘损坏,如果右边任何一块盘损坏的话,则整体数据将不可用,所以这个系统冗余度就变成了1.

以下讨论disk failure 的 case

####Case 1. 任何一个硬盘损坏

RAID 0+1 : 另一个 stripe 可继续工作, 但本身成为 SPOF.
RAID 1+0 : 两个 segments 均可继续运作, 所以无 SPOF 的 concern. (胜)

####Case 2. 每个 stripe/segment 各损坏一个硬盘

RAID 0+1 : 每个 stripes 都无法继续运作.
RAID 1+0 : 每个 segments 均可继续运作, 所以无 SPOF 的 concern. (胜)

####Case 3. 同一个 stripe/segment 损坏两个硬盘

RAID 0+1 : 另一个 stripe 可继续运作, 但本身成为 SPOF.
RAID 1+0 : 若损坏的两个,属于同一mirror set, 则无法继续运作(败);若属于不同 mirror set, 则两个 segments 均可继续运作, 所以无 SPOF 的 concern. (胜)

综合以上分析, RAID 1+0 不是在所有的情況下, 它的 reliability 都优于 RAID 0+1, 但是在大部分的情況, RAID 1+0 的 reliability 是优于 RAID 0+1 的. 所以 RAID 0+1 适用于对 performance 的需求高于 reliability 的环境;RAID 1+0 则相反。

另外在 recovery 的情況, RAID 0+1 要重新 mirror 整个 stripe; 而 RAID 1+0 只要重新 mirror 一个硬盘即可。

网络存储技术——SCSI

今天网络存储已考完试,我在纠结要不要把这一系列写完。想了想还是慢慢写下去,不能虎头蛇尾。那么我们接着看SCSI。

SCSI产生于1981年,目前T10负责SCSI(small computer system interface)的标准化。协议集包括SAM(SCSI Architecture Model)和SCSI命令集(SPC-3、SBC、SSC-3等)。

ULTRA320:16位数据总线宽度、最多16个设备、最大总线长度为12米,速率为320MB/s。

##SCSI系统与设备

  • SCSI发起端:生成和发送SCSI命令和任务管理请求的SCSI端口。

  • SCSI目标端:接受和处理SCSI命令和任务管理请求的SCSI端口。目标端又可分为任务管理单元和逻辑单元。

  • 尽管多个SCSI设备挂在同一总线上,同一时刻在SCSI总线上只允许两个设备间的数据交换。

##SCSI分层通信协议结构

  • 分为SCSI应用层(SCSI Application Layer : SAL),SCSI传输协议层和SCSI互联层。

  • SBC、SSC、SPC和SPI的部分属于传输层。数据的传递大概分为三个阶段:命令的执行、数据的传递和命令的确认。

  • SPI的一部分和SCSI-3光纤通道协议(FCP)属于互联层,完成SCSI设备间发起端和目标端的选择和连接等功能。

###SPC基本命令

SCSI基础命令集SPC定义的是所有SCSI目标器设备支持的命令。

###SBC基本命令

SCSI块设备命令集是基础命令集的延伸,以方便对SCSI块设备的操作。块设备的共同属性是数据都是按逻辑块进行组织。每个逻辑块都有一个逻辑块长度,块长度一般都是长于字节的且可能是512字节的倍数。其中最重要的命令是READ命令和WRITE命令

###READ命令

READ命令是SCSI客户端用来向SCSI目标端块设备请求读取一个或者一组连续逻辑块中所存储的数据。SCSI目标服务器块设备在接收到READ命令后,会将指定的逻辑块中所存储的数据发送给SCSI客户端的data-in缓冲区中。LBA指定了读命令读取数据的逻辑块位置。第七和八字节指定了需要传送的数据的连续的逻辑块数目,当为0时表示没有数据要传送。

###WRITE命令

SCSI客户端发送WRITE命令请求向SCSI目标端指定的逻辑块写入数据。SCSI目标端接收命令后,将接收SCSI客户端传送的数据,并存储到指定的逻辑块中。LBA指定了写命令数据存放取的逻辑块位置。第七和八字节指定了需要传送的数据的连续的逻辑块数目,当为0时表示没有数据要写入。

##串行SCSI

  • 串行SCSI的优点:连线简单、传输速率高、地址空间大、多点并行传送。

  • 采用SAS交换机实现多点连接,而不是采用总线结构。

  • SAS: 目前广泛使用6Gb/s,将来会到12Gb/s。

  • 通过Finisar Bus Doctor的抓包理解SAS协议。

网络存储技术——独立冗余磁盘阵列(RAID)

RAID(redundant array of independent disks)开始于20世纪80年代美国加州大学伯克利分校的一个研究项目。不过,那时RAID是廉价冗余磁盘阵列的简称。近年来,由于大部分磁盘驱动器都可谓是“廉价”的,RAID咨询委员会决定用“独立”替代“廉价”一词,但这只是名字改变,实质内容并没有改变。

RAID由RAID控制器和多个独立的磁盘驱动器组成,简称为磁盘阵列。其外部接口为FC、iSCSI、SAS、SATA。从外部看来,就像单个大容量的虚拟磁盘。

##RAID的内部I/O结构

分为下列三种:

  • 单控制器/单磁盘接口
  • 双控制器/单磁盘接口
  • 双控制器/双磁盘接口

##RAID的基本特性

  • 容量可扩展:可用容量是成员磁盘容量的50%~90%
  • 可管理:对用户而言,只是单个虚拟磁盘。
  • 高性能:通过分块访问成员磁盘提高了读写性能。分块访问又分为并行访问和独立访问两种方式。
  • 并行访问:成员磁盘在同一时间执行相同的、短时间的操作。
  • 独立访问:成员磁盘在同一时间可以执行独立的I/O操作。
  • 可靠性:通过数据冗余可以承受成员磁盘的失效。数据冗余又分为镜像冗余和校验冗余。

##RAID的数据组织

###分区和阵列

一组地址连续的成员磁盘存储块就可以是一个分区。单个成员磁盘可以被划分成多个分区。不同成员磁盘上的多个分区可被组织成阵列。一个阵列中的分区的大小应相等。

###分块和分条

一个分区可被划分为多个大小相等、地址相邻的分块。同一阵列中分块的大小相同。

分条是磁盘阵列中多个分区上的一组位置相关的分块。即,每个分区上的第一个分块属于第一个分条,每个分区上的第二个分块属于第二个分条,以此类推。

阵列中的分条被映射为虚拟磁盘中连续的块。

##RAID级别

###RAID 0

无数据校验的数据分条化技术。将所有硬盘条带化后组成大容量的存储空间,将数据分散存储在所有硬盘上,以独立访问方式实现多块硬盘的并发读写。

具有低成本、极高读写性能、高存储空间利用率的特性。

适用于对速度要求高、对可靠性要求不高的应用。例如Video/Audio信号等。

###RAID 1

是两块硬盘数据呈完全镜像的技术。有以下特点:

  • 任何一个磁盘都有一个对应的镜像盘。一对镜像盘的写操作同步。读操作可以针对一对镜像盘中任何一个。
  • 磁盘容量是成员磁盘容量总和的一半。
  • 只要任何一对镜像盘中至少一块硬盘可以使用,系统就可以正常工作。

一块硬盘出现故障的概率为P。含有4块硬盘的RAID 1出现故障的概率是多少?

###RAID 3

  • 使用一个专门的校验盘存放所有的校验值,把数据分散到其余的磁盘上,采用并行访问分块方式。
  • 某个数据磁盘失效更换后,其上的数据信息必须借助校验信息和其它数据磁盘上的信息建立。
  • 校验磁盘失效更换后,其上的数据信息必须借助所有数据磁盘上的信息建立。

###RAID 5

  • 校验数据被分布在所有磁盘上,采用独立访问分块方式。
  • 对于外部不同的写操作,其数据和校验数据可能同时发生在完全不同的磁盘上,消除了单个校验盘带来的瓶颈。
  • 可以支持很大的磁盘数,是市场上最常见的产品。

###RAID 6

保证即使阵列中出现两个磁盘故障,阵列仍然能够工作。

###RAID组合级别

  • RAID 0+1:先用物理硬盘建立多个镜像对(RAID1),在此基础上做条带化(RAID0)。

  • RAID10:先用多个物理磁盘做条带化(RAID0),产生多个虚拟磁盘。用虚拟磁盘建立镜像对(RAID1)。

关于RAID组合级别,我会在另外的一篇文章中详细说明。

网络存储技术——存储技术原理简介

存储系统模型经历了内嵌式存储系统(ES)、直接存储系统(DAS)、联网存储系统(NAS)以及目前的存储区域网络(SAN)几个阶段。无论采用何种模式,都涉及存储设备及其与外界的接口两方面的技术要考虑。此外,对于SAN来说,存储设备需要SAN路由器、交换机等以组成其自身的网络。

##存储设备

###磁带库设备

####细分类

  • 自动加载磁带机
  • 磁带库
  • 虚拟磁带库

####代表厂家

  • HP
  • EMC

####价格

  • 磁带库 HP MSL6060 52万
  • 虚拟磁带库 EMC DD630 30万

###光盘存储设备

####细分类

  • 光盘塔
  • 光盘库
  • 光盘网络镜像服务器

####代表厂家

  • 清华紫光

###磁盘存储设备

####细分类

  • RAID
  • JBOD

####代表厂家

  • EMC
  • IBM
  • HP

####价格

  • EMC CLARiiON CX3 675万
  • JBOD 几万

##存储设备接口技术

存储设备通过标准化的I/O接口技术与服务器或SAN交换机/路由器通信,以实现开放式的系统互联。在存储系统应用中,目前最主要的接口技术包括SCSI(小型机系统接口)及其变种iSCSI(internet SCSI),光纤通道(fibre channel, FC)。

###SCSI

  • 可以作为不同类型的外围设备提供统一的数据交换平台,占用CPU资源少,支持高速数据传输。

  • SCSI总线速度已由开始的5MB/s发展到现在的SCSI ULTRA320的320MB/s,增加了64倍,并仍在不断提高。

  • 由T10标准化。

  • SCSI各种操作都是在一定的范围内进行。

  • 系统中,每个SCSI设备都需要设置独特的编号,称为SCSI ID。

  • 串行SCSI(Serial Attached SCSI, SAS)速率为3Gb/s-12Gb/s,通过SAS扩展器连接的磁盘数可以超过10000.

###iSCSI

  • 在TCP/IP包中传送SCSI。
  • 标准以太网接口,易用、成本低。
  • TCP/IP协议传送SCSI效率低,需要采用硬件来加速iSCSI处理。

###光纤通道(Fibre Channel, FC)

  • 一种利用光纤进行信息传送的网络协议。包括物理层FC-0、编码解码层FC-1、帧协议/流控制层FC-2、通用服务层FC-3、上层协议FC-4。
  • SCSI作为FC-4层的一种。
  • 连接距离长,速率高,误码率低。

##SAN互连设备

san.png

###SAN交换机

SAN交换机在SAN网络中的作用与传统交换机在IP网络中的作用相似。SAN交换机连接多个存储设备,交换机与每个存储设备之间有专用的光纤通道。

###SAN路由器

SAN路由器在SAN网络中的作用与传统路由器在IP网络中的作用相似。SAN路由器负责把数据从服务器传送到存储设备或从存储设备传送到服务器。与传统路由器不同的是,SAN路由器使用光纤通道协议而不是TCP/IP协议。

网络存储技术——存储模型的发展

网络存储技术马上就要考试了,就当是一个复习和总结吧。

存储区域网络(SAN)的设计把数据存储从应用服务器中分离出来并组成独立的网络,这使得提供巨大的存储容量成为可能。SAN采用高速分布式结构,存储容量的增加不会严重影响系统的响应速度。另外,SAN本身作为一个网络系统,可对其进行统一化的增加、删除、备份、恢复等管理。

了解存储模型所经历的几个阶段对更好的理解SAN有所裨益。这些存储模型包括内嵌式存储系统、直接存储系统、联网存储系统以及存储区域网络。目前仍在大量使用这些存储技术。

内嵌式存储系统(Embedded Storage, ES)

存储器件内嵌于服务器,存储容量一般在几个硬盘数量级。

###优点

简单易用。

###缺点

  • 存储容量和存取速度受服务器性能限制;
  • 服务器故障导致存储系统不可用。

##直接存储系统(Direct Attached Storage, DAS)

采用独立机箱式外接存储设备,如RAID,JBOD等,和服务器采用SCSI、SAS(串行SCSI)、SATA(串行ATA)等标准接口连接。多个接口可以连接多个服务器。

容量一般可以到十几块硬盘。

###优点

  • 易用;
  • 容量大于内嵌式存储系统;
  • 可以和多个服务器(一般4个以内)连接。

###缺点

  • 不易扩展存储容量;
  • 存储速度受服务器性能限制。

##联网存储系统(Network Attached Storage, NAS)

NAS把数据看作一种网络资源,并由一种称为NAS设备的专用器件来管理。

存储设备直接连接在网上,采用诸如网络文件系统(Network File System, NFS)等协议和服务器相连。

###优点

  • 减轻服务器I/O操作负担;
  • 可靠性不依赖特定服务器;
  • 数据备份不影响服务器;
  • 易于扩容和管理。

###缺点

  • 只适合中小型网络;
  • 由于应用和存储共用一个网络,并且NFS的协议效率不够高,NAS对大型网络力不从心。

##存储区域网络(Storage Area Network, SAN)

存储设备和服务器采用存储网络协议例如FC(Fibre Channel:光纤通道)、ISCSI连接而构成的专用网络,与应用网络分离。

###优点

  • 减轻服务器I/O操作负担;
  • 可靠性不依赖特定服务器;
  • 易于扩容和管理;
  • FC适用于大型网络,性能高。 ISCSI适合中小型网络。

###缺点

  • FC价格较贵。

##SAN技术最新进展–FCoE

  • 以太网上的光纤通道(Fibre Channel over Ethernet, FCoE)
    在10G以太网上传输光纤通道协议的网络。可以将应用网络和存储网络物理上合并为一个网络,同时保持高性能。

  • FCoE的底层以太网是数据中心以太网(Data Center Ethernet, DCE)

##云计算数据中心存储架构

  • 采用虚拟机的云计算数据中心对存储的需求:每个虚拟机的镜像文件平均为10GB,假设有2000台服务器,每台上有20个虚拟机,所有虚拟机镜像文件大小为400TB。虚拟机运行时还会产生其它文件。因此,存储需求巨大。如何存取?

  • Google搜索的存储架构?

  • 云存储的存储架构?

##网络存储中最新技术动向

  • Cisco 用于数据中心的 Application Centric Infrastructure,目标之一是将数据中心网络管理和存储管理集中,使得彼此可以协同。

  • 存储软件定义网络:Storage SDN(Software Defined Network)。Jeda Networks 正在做有关产品,取名为Software Defined Storage Network。