再谈IP存储之(一):iSCSI的发展史与基础概念

再谈IP存储之(一):在各大厂的支持下,iSCSI已经成为IP SAN的主流,市场上也出现了多种类型的iSCSI解决方案。经过多年推广后,存储局域网络(Storage Area Network, SAN)的优势已经是众所皆知,可提供更方便的管理性能、更高的磁盘资源利用率与更大的扩充能力等。

但长期以来,SAN都必须通过光纤通道(Fibre Channel)协议来实现,由于FC交换器的价格昂贵,一台只有最基本功能的8端口FC交换器起价就要数万元,1个FC端口的平均成本高达数万甚至十多万元,且每部要连接FC SAN的服务器都必须安装1个价格1千美元上下的FC HBA,部署一套FC SAN的费用非常高昂。用户也必须具备FC协议相关知识才能有效管理,以致限制了FC SAN的普及。因此无论存储厂商如何宣扬SAN的好处,现实上能享用这些好处的企业相当有限。

为解决FC SAN的问题,有人便开始把脑筋动到以太网络与TCP/IP技术上,如能改用IP网络作为SAN的传输通道,就能利用既有的IP网络设备建置SAN,从而节省大笔费用。

从这个思路出发,早在5~6年前就有厂商提出了IP SAN解决方案,如NetApp在2001年推出的Virtual Local Disk(VLD),就能在Windows环境下利用IP网络传输块(Block)型态的数据,从而实现了以IP网络作为通道的SAN。同时期还出现了其他形形色色的IP-Block协议,如mFCP(metro FCP)、HyperSCSI等,但因缺乏统一标准,为这类型产品的开发与推广带来了不利的影响。

于是接下来便由互联网工程任务小组(Internet Engineer Task Force,IETF)加以整合,并在2003年2月通过了将SCSI指令包入TCP/IP的iSCSI(internet SCSI或SCSI over IP)协定,并陆续得到微软、IBM、EMC、HP等大厂的支持。经过4年多的发展后,现在iSCSI已成功取代早期众多的非标准IP SAN协议,成为IP SAN协议的主流,与FC并列为两大标准的块级传输协议。而支持iSCSI的存储设备也日益增加,除了各存储大厂都有iSCSI产品线外,甚至还出现了EqualLogic这类专注于iSCSI专用存储系统开发的厂商。

认识iSCSI协定基础

iSCSI协议定义了在TCP/IP网络发送、接收块级存储数据的规则与方法。发送端将SCSI指令与数据本体封装到TCP/IP封包中,然后通过以太网络发送。接收端收到TCP/IP封包后,将它们还原为SCSI指令与数据,并依指令执行。完成指令后,再将响应的SCSI指令与数据封装到TCP/IP封包,发回发送端。通过这种方式,存取远程存储设备时,就如同在本地端存取本机的SCSI硬盘一样。

iSCSI的封包

iSCSI协议是先将SCSI指令与数据封装进iSCSI PDU,再逐一封装进TCP/IP封包与以太网络讯框,因此原始数据会逐一加上iSCSI表头、TCP表头、IP表头与以太网络表头。接收时再从最外层的以太网络表头逐一卸除,以执行原始的SCSI指令与数据。

iSCSI的装置识别与存取

iSCSI SAN是通过iSCSI认证名称(iSCSI Qualifier Name,IQN)来识别iSCSI装置,当前端设备发起存取要求时,iSCSI设备即能按照映射设定,响应存取要求。

iSCSI的安全机制

由于IQN可自行窜改,因此只依赖IQN作为识别发起者身分的机制相当不安全,所以iSCSI又提供了握手认证协议(Challenge Handshake Authentication Protocol,CHAP)来认证iSCSI发起方的身分。只有通过CHAP认证的发起端才会被允许存取。当然CHAP亦有遭破解的可能,因此也能选用效果更好的IPsec等适用于IP网络的加密机制。