1. 存储协议
1.1 SCSI
- Small Computer System Interface,小型计算机系统接口,最初是一种为小型机研制的接口技术,用于主机与外部设备之间的连接
- SCSI ID
- 通过SCSI ID决定设备优先级,优先级高的能够优先使用SCSI总线
- 总线类型
- 8位总线,ID:0-7
- 7被主机适配器占用
- ID号可以判断通信的优先级之外还可以确定通信的双方是谁
- 因为只有8个ID,因此接入的设备是有限的
- 16位总线,ID:0-15,为了向下兼容,7仍然为最高权限
- 8位总线,ID:0-7
- SCSI寻址
- 总线号(Bus ID/Channel ID)
- 区分不同的SCSI总线,现在基本只有一条SCSI总线,Bus ID默认为0
- 设备ID(SCSI ID)
- 区分SCSI总线上不同的设备
- LUN ID
- 区分SCSI设备中的子设备
- 总线号(Bus ID/Channel ID)
- SCSI通信
- 主机通过拿着initiator ID向target验证,验证通过则将LUN挂载给主机使用
- initiator
- 启动器,即发起SCSI连接的客户端,一般主机提供initiator,有自己的initiator ID
- target
- 目标器,即接收SCSI连接的服务端,一般是存储的控制器,有自己的target ID
- 计算机与存储系统之间的通信是通过总线来完成的。
- 总线就是从源设备传输数据到目标设备的路径。
- 在最简单的情况下,控制器的高速缓存作为源,将数据传输给目标磁盘。控制器首先向总线处理器发出请求使用总线的信号。该请求被接受之后,控制器高速缓存就开始执行发送操作。在这个过程中,控制器占用了总线,总线上所连接的其它设备都不能使用总线。
- 由于总线具备中断功能,所以总线处理器可以随时中断这一传输过程并将总线控制权交给其它设备,以便执行更高优先级的操作。
- 计算机中布满了总线—从一个位置向另一个位置传输信息和电力的高速通道。
- 例如,将MP3或数码相机连接到计算机时,您可能会使用通用串行总线(USB)端口。
- 对于存储图片、音乐等的小型电子设备,USB端口完全可以胜任传输数据和充电的工作。但是,这种总线还不足以同时支持整台计算机和服务器以及其他许多设备。
- 在这种情况下,就需要使用SCSI这样的总线。
- SCSI直译为小型计算机系统专用接口(Small Computer System Interface)是一种连结主机和外围设备的接口,支持包括磁盘驱动器、磁带机、光驱、扫描仪在内的多种设备。
- 它由SCSI 控制器进行数据操作,SCSI 控制器相当于一块小型CPU,有自己的命令集和缓存。SCSI是一种特殊的总线结构,可以对计算机中的多个设备进行动态分工操作,对于系统同时要求的多个任务可以灵活机动地适当分配,动态完成。
1.2 iSCSI
- 将SCSI封装到IP中传输,在主机侧对SCSI进行封装成iSCSI,然后通过ip将iSCSI数据传输到存储侧进行解封装,暴露出SCSi数据。
- iSCSI通信
- 发起端(Initiator)SCSI层负责生成CDB(命令描述符块),将CDB传给iSCSI。iSCSI层负责生成iSCSI PDU(协议数据单元),并通过IP网络将PDU发给target。
- 目标器(Target)iSCSI层收到PDU,将CDB传给SCSI层。SCSI层负责解释CDB的意义,必要时发送响应。
- 通过SCSI控制卡的使用可以连接多个设备,形成自己的“网络”,但是这个“网络”仅局限于与所附加的主机进行通信,并不能在以太网上共享。
- 那么,如果能够通过SCSI协议组成网络,并且能够直接挂载到以太网上,作为网络节点和其它设备进行互联共享,那么SCSI就可以得到更为广泛的应用。
- 所以,经过对SCSI的改进,就推出了iSCSI这个协议。基于iSCSI协议的IP-SAN是把用户的请求转换成SCSI代码,并将数据封装进IP包内在以太网中进行传输。
- iSCSI方案最早是由Cisco和IBM两家发起,并且由Adaptec、Cisco、HP、IBM、Quantum等公司共同倡导。它提供基于TCP传输,将数据驻留于SCSI设备的方法。
- iSCSI标准草案在2001年推出,并经过多次论证和修改,于2002年提交IETF,在2003年2月,iSCSI标准正式发布。
- iSCSI技术的重要贡献在于其对传统技术的继承和发展:
- 其一,SCSI(Small Computer System Interface,小型计算机系统接口)技术是被磁盘、磁带等设备广泛采用的存储标准,从1986年诞生起到现在仍然保持着良好的发展势头;
- 其二,沿用TCP/IP协议,TCP/IP在网络方面是最通用、最成熟的协议,且IP网络的基础建设非常完善。这两点为iSCSI的无限扩展提供了坚实的基础。
- IP网络的普及性将使得数据可以通过LAN、WAN或者是通过Internet利用新型IP存储协议传输,iSCSI既是在这个思想的指导下进行研究和开发的。
- iSCSI是基于IP协议的技术标准,实现了SCSI和TCP/IP协议的融合,对众多的以太网用户而言,只需要极少的投资,就可以方便、快捷地对信息和数据进行交互式传输和管理。
1.2.1 ISCSI 的发起端和目标端
- 发起端(Initiator)
- SCSI层负责生成CDB(命令描述符块),将CDB传给iSCSI。
- iSCSI层负责生成iSCSI PDU(协议数据单元),并通过IP网络将PDU发给target。
- 目标器(Target)
- iSCSI层收到PDU,将CDB传给SCSI层。
- SCSI层负责解释CDB的意义,必要时发送响应。
- iSCSI的通信体系仍然继承了SCSI的部分特性,在iSCSI通信中,具有一个发起I/O请求的启动器设备(Initiator)和响应请求并执行实际I/O操作的目标器设备(Target)。
- 在Initiator和Target建立连接后,Target在操作中作为主设备控制整个工作过程。
- iSCSI Initiator:iSCSI启动器,可分为三种,
- 即软件Initiator驱动程序、硬件的TOE(TCP Offload Engine,TCP卸载引擎)卡以及iSCSI HBA卡。
- 就性能而言,软件Initiator驱动程序最差、TOE卡居中、iSCSI HBA卡最佳。
- iSCSI Target:iSCSI目标器,通常为iSCSI磁盘阵列、iSCSI 磁带库等。
- iSCSI协议为Initiator和Target定义了一套命名和寻址方法。
- 所有的iSCSI节点都是通过其iSCSI名称被标识的。这种命名方式使得iSCSI名称不会与主机名混淆。
- iSCSI使用iSCSI Name来唯一鉴别启动设备和目标设备。地址会随着启动设备和目标设备的移动而改变,但是名字始终是不变的。
- 建立连接时,启动设备发出一个请求,目标设备接收到请求后,确认启动设备发起的请求中所携带的
- iSCSI Name是否与目标设备绑定的iSCSI Name一致,如果一致,便建立通信连接。
- 每个iSCSI节点只允许有一个iSCSI Name,一个iSCSI Name可以被用来建立一个启动设备到多个目标设备的连接,多个iSCSI Name可以被用来建立一个目标设备到多个启动设备的连接。
1.3 FC协议与TCP协议的融合
-
从现有的情况来看,以太网技术和FC技术都在飞速发展,IP-SAN和FC-SAN在很长的一段时间内都将是并存且互为补充的。
-
TCP/IP网络承载FC信道方式:
- iFCP
- FCoE
-
FCIP:Fibre Channel over IP,基于IP的光纤通道,是连接TCP/IP网络链路上的光纤通道架构的一项IETF建议标准。
- 利用目前的IP协议和设施来连接两个异地FC SAN的隧道,用以解决两个FC SAN的互连问题。
-
iFCP:Internet Fibre Channel Protocol,Internet光纤信道协议,是一种网关到网关的协议,为TCP/IP网络上的光纤设备提供光纤信道通信服务。
- iFCP 使用 TCP提供拥塞控制、差错监测与恢复功能。
- iFCP主要目标是使现有的光纤信道设备能够在IP网络上以线速互联与组网。此协议及其定义的帧地址转换方法允许通过透明网关(transparent gateway)将光纤信道存储设备附加到基于IP的网络结构。
-
FCoE:Fibre Channel over Ethernet,利用以太网路,传送光纤通道(Fibre Channel)的信号,让光纤通信的资料可以在10 Gigabit以太网路网络骨干中传输,但仍然是使用光纤通道的协定。
-
IPFC:IP over Fiber Channel,在光纤通道上的IP。
- IPFC使用在两个服务器之间的光纤通道连接作为IP数据交换的媒介。
- 为此,IPFC定义了如何通过光纤通道网络传送IP分组。跟所有的应用协议一样,IPFC实现为在操作系统中的一个设备驱动器。对本地IP配置的连接使用“ifconfig”“或“ipconfig”。然后IPFC驱动器寻址光纤通道主机适配卡,就可以在光纤通道上发送IP分组。
1.4 iFCP 协议
- iFCP:Internet Fibre Channel Protocol,是一种网关到网关协议,为TCP/IP网络中的光纤通道设备提供光纤通道通信服务,实现端到端IP连接。
- iFCP:Internet Fibre Channel Protocol,是一种网关到网关协议,为TCP/IP网络中的光纤通道设备提供光纤通道通信服务,实现端到端IP连接。
- FC存储设备、HBA卡和交换机可以与iFCP网关直连。iFCP协议通过TCP协议提供流量控制、错误检测和错误恢复功能。iFCP的目的是使当前的光纤通道设备在IP网络上以线路速率互连和网络。
- iFCP协议定义的帧地址转换方法,允许FC存储设备通过透明网关加入到TCP/ IP网络中。
iFCP可以替代光纤通道,通过iFCP设备连接和分组光纤通道设备
。但iFCP不支持独立SAN的合并,因此无法形成逻辑SAN。- iFCP的突出之处在于支持SAN互联和网关分区,允许隔离故障区域,打破点对点隧道的限制。
- 同时,iFCP实现了光纤通道设备之间的端到端连接。因此,TCP连接中断只会对通信对产生影响。
- 采用iFCP的SAN能够实现故障隔离和安全管理,比采用FCIP的SAN具有更高的可靠性。
1.4.1 iFCP 协议栈
- iFCP协议位于光纤通道和TCP/IP之间,这意味着iFCP可以与光纤通道或TCP/IP进行交互。
- iFCP协议层的主要功能是在本地和远程连接的N_Ports之间传输光纤通道帧图像。
- 当传输帧到远程N_Port时,iFCP层封装并路由由每个光纤通道信息单元组成的光纤通道帧,通过预先确定的TCP连接在IP网络上传输。
- 在采用iFCP协议的IP SAN中,iFCP设备代替了光纤交换机,即iFCP交换机也可以作为iSNS(Internet Storage Name Server),为终端节点提供名称发现服务。
- iFCP交换机为每个FC终端节点分配一个4字节的IP地址。当光纤通道设备发送SNS名称查询请求时,iFCP交换机将截获请求,并由iSNS服务器进行解析。
1.5 FCoE 协议
- FCoE:Fibre Channel over Ethernet,以太网光纤通道。
- FCoE允许在一根通信线缆上传输LAN和FC SAN通信,融合网络可以支持LAN和SAN数据类型,减少数据中心设备和线缆数量,同时降低供电和制冷负载,收敛成一个统一的网络后,需要支持的点也跟着减少了,有助于降低管理负担。
- FCoE把FC帧封装在以太网帧中,允许LAN和SAN的业务流量在同一个以太网中传送。
- FCoE(Fibre Channel over Ethernet)可以提供标准的光纤通道原有服务,如发现、全局名称命名、分区等,而且这些服务都可以照标准原有的运作,保有FC原有的低延迟性、高性能。
- 从FC协议的角度来看,FCoE就是把FC承载在一种新型的链路上,即以太网二层链路;从以太网的角度来看,FCoE仅是其承载的另外一种上层协议(类似于IP/IPX)。
1.5.1 FCoE 协议封装
- FCoE将FC-2及以上层的内容封装成以太网报文进行传输
- 光纤通道协议栈有五层。
- FC-0定义了媒体类型,
- FC-1定义了帧编解码方式,
- FC-2定义了帧划分协议和流量控制机制,
- FC-3定义了通用业务,
- FC-4定义了上层协议到光纤通道的映射。
2. 缩略语
- FC ———————————— Fiber Channel,光纤通道
- FCIP ———————————— Fibre Channel over IP,基于IP的光纤通道
- FCoE ———————————— Fibre Channel over Ethernet,以太网光纤通道
- iFCP ———————————— Internet Fibre Channel Protocol,Internet光纤信道协议
- iSCSI ———————————— Internet Small Computer System Interface,Internet小型计算机系统接口
- IPFC —————————————— IP over Fiber Channel,在光纤通道上的IP
- IOPS —————————————— Input/Output Per Second,每秒的输入输出量或读写次数
- MTBF —————————————— Mean Time Between Failure,平均无故障工作时间
- NAS —————————————— Network Attached Storage,网络附加存储
- RAID —————————————— Redundant Array of Independent Disks,独立磁盘冗余阵列
- SAN —————————————— Storage Area Networks,存储区域网络
- SCSI —————————————— Small Computer System Interface,小型计算机系统接口
3. ❤️HCIP专栏——前文链接
- (云计算HCIP)价值8k的上万字学习笔记,考华为云计算HICP的有福啦!HCIP全笔记(一)本篇涵盖 云计算概述,谈及虚拟化、云计算的介绍、云服务模式、部署模式的区别和主流云计算技术
- (云计算HCIP)价值8k的上万字学习笔记,考华为云计算HICP的有福啦!HCIP全笔记(二)本篇介绍服务器基础、硬件结构、RAID冗余阵列
- (云计算HCIP)价值8k的上万字学习笔记,考华为云计算HICP的有福啦!HCIP全笔记(三)本篇介绍网卡、华为服务器网卡类型、电源和风扇、服务器关键技术:BIOS、IBMC、BMC、IPMI
- (云计算HCIP)价值8k的上万字学习笔记,考华为云计算HICP的有福啦!HCIP全笔记(四)本篇介绍 存储技术、硬盘类型、存储架构:DAS、SAN、NAS等
- (云计算HCIP)价值8k的上万字学习笔记,考华为云计算HICP的有福啦!HCIP全笔记(五)本篇介绍存储形态、RAID技术特点与工作原理、RAID的常见级别介绍