访问手机版页面
你的位置:老古开发网 > 其他 > 正文  
走向未来的存储新技术 ——iSCSI
内容导读:

1 引言
2003年2月,IETF(Internet Engineering Task Force,互联网工程任务组)通过了由IBM和Cisco共同发起的iSCSI(Internet Small Computer System Interface)标准,使这项历经三年、修改了20个版本的技术标准终于尘埃落定。该技术将存储设备、服务器同采用普通的互联网协议(IP)的网络连接起来,以取代快速、昂贵的光纤技术。并且由于iSCSI技术所具有的优势,其未来的发展已经被许多厂商看好,并先后推出了相关的产品,以表明对iSCSI标准的支持。标准的通过,无疑将吸引更多的厂商参与到iSCSI相关产品的研发中,同时也将促使更多的用户采用iSCSI解决方案构建自己的存储系统。
iSCSI是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集。简单的说,iSCSI可以实现在IP网络上运行SCSI协议,特别是以太网上进行数据块(block)传输的标准,使其能够在诸如高速千兆以太网上进行路由选择。它是由IBM下属的两大研发机构:加利福尼亚Almaden和以色列Haifa研究中心共同开发的现今,许多网络存储提供商致力于将SAN(Storage Area Networking 存储区域网络)中使用的光纤通道设定为一种实用标准,但是其架构需要高昂的建设成本,远非一般企业所能够承受。与之相比较,NAS(Network Attached Storage 网络接入存储)技术虽然成本低廉,但是却受到带宽消耗的限制,无法完成大容量存储的应用,而且系统难以满足开放性的要求。而且随着可视电话、无线视频通信等各种应用对计算机I/O带宽需求的不断增长,传统的并行SCSI(Small Computer System Interface)总线的长度限制,使我们不得不考虑如何通过某种串行化模式来克服并行SCSI总线的这种局限性。
iSCSI的使用正好使上述问题迎刃而解,其基于IP协议,却拥有SAN大容量集中开放式存储的品质。这对于一边要面对信息爆炸,另一边却身处"数据孤岛"的众多中小企业无疑具有巨大的吸引力。依仗目前被广泛采用的SCSI存储标准和成熟的TCP/IP协议,iSCSI标准的出现和它的优越性和经济性,使其有着广泛的市场和应用前景,势必引发一场通信网络存储系统的变革。

2 iSCSI的体系结构与工作状态概况
2.1 iSCSI的体系结构
iSCSI的目标是建立完全同构的IP SAN,让客户利用完全相同的网络基础设施--以太网和IP,同时满足网络通信和存储骨干方面的应用需求。
iSCSI存储网主要由iSCSI请求方(如文件服务器)和iSCSI目标方(如磁盘阵列和磁带子系统)组成,体系结构如图1。
2.2 iSCSI的简要工作原理
iSCSI协议最大的优势在于它是依托于TCP/TP协议栈的,从理论上来说,任何两台具有TCP/IP主机都可以通过iSCSI协议实现设备级共享。也就是说,无论距离多远、无论中间是何种网络介质,也无论连接的两端主机运行的是何种操作系统,iSCSI都可以实现跨平台的设备级共享。iSCSI发起端和目标端都有自己的命名规范,每一个发起端和目标端都有一个WWUI(世界唯一标识符),WWUI是独立于发起端和目标端的位置的。iSCSI目标端拥有名字和地址,iSCSI地址唯一标识了到达iSCSI目标端的路径,WWUI是地址的一部分。iSCSI地址形式规定位和URL一样,如:<domain-name>[:<port>]/<wwui>.iSCSI发起端和目标端之间的会话(session)必须经过iSCSI登录过程才能够建立。iSCSI登录阶段用于两iSCSI实体间协商变量参数,也可能会引起某种安全验证,以确保连接的安全性。若iSCSI登录阶段成功,目标端会发出“接受登录”给发起端,否则拒绝登录并关闭TCP连接。登录完成之后,iSCSI会话就进入全双工阶段(FullFeaturePhase),开始正常的SCSI交互。并且iSCSI在系统之间的连接是通过标准的IP网络基础设施实现的,而不是通过SCSI线缆或Fibre Channel。SCSI命令的生成表示可以通过启动器上的软件以标准的TCP/IP和现成的NIC完成。但是,由于处理TCP/IP协议时需要占用很多CPU资源,所以这样的“软”实现方法在性能上会有缺陷。有了iSCSI HBA(Host Bus Adapter,主机总线适配器)后,这个问题就解决了,HBA可以分担协议的处理,放入千兆以太网HBA的固件中。这样可以大大降低对CPU资源的占用率,为应用程序的处理释放出了更多的CPU周期。图2展示出了iSCSI、TCP和IP堆栈分别在千兆以太网HBA上驻存的位置。用TCP/IP卸载引擎实现的HBA有可能在CPU资源占用率不到10%的情况下达到线路速率。
2.3 iSCSI的工作流程
iSCSI的工作是按以下流程进行工作的:
1) 应用程序或用户发出对数据、文件或应用程序的请求;操作系统生成SCSI命令和数据请求;命令和请求被封装起来并加上信息包标题;信息包在以太网连接线路上发送;
2) 在接收端,将信息包分解,或者如果信息包原来是经过加密的话就对其解密,把SCSI命令和数据分离;
3) 将SCSI命令和数据发送给存储设备。同样,将数据返回,以响应使用iSCSI协议的请求。
图3为其工作流程示意图。
2.4 iSCSI的协议模型
我们知道,任何一个协议都有其层次性架构,iSCSI也不例外,它也有一个清晰的层次结构。根据OSI模型,iSCSI的协议栈如图4所示。
图5则显示了数据通过iSCSI协议传输的封装情况,从图5可以看出,iSCSI协议对数据封装与TCP/IP协议对数据的封装区别不大,惟一的区别只是在数据域之前增加了一层封装,这种封装就是iSCSI封装。
2.5 iSCSI协议功能组件划分
iSCSI协议规范确定了iSCSI协议在IP网络上的可靠传输,包括寻址和命名惯例、会话管理、差错处理和安全。
1) 寻址和命名惯例
iSCSI设备有独立的网络实体,因为它是IP网络的参与者,这种网络实体可以有一个或几个iSCSI节点,如图6所示。
在网络实体中,iSCSI节点是SCSI设备的标识符,每个iSCSI节点都有一个独一无二的名称(其长度最多可以达255个字节),这种名称是根据Internet节点的命名规则进行组织的,并可由DNS系统处理。iSCSI名称提供了一个iSCSI设备物理位置的正确标识,从而可以更方便地将IP地址和TCP端口进行绑定,同时可以处理设备之间的数据传送。iSCSI协议和iSCSI命名机制支持别名的使用,这样系统管理员就可以更好地管理iSCSI设备。
2) 会话管理
通过特殊的命令,iSCSI会话包括两个阶段:登录阶段和工作阶段。
iSCSI的登录阶段等同于Fibre Channel端口登录过程,该过程是用来在两个网络实体调节中调整各种参数并确认启动器的访问权限。如果iSCSI登录阶段成功完成,目标器将确认启动器的登录,否则登录将不被确认,同时TCP连接中断。
登录一旦确认,iSCSI会话将进入正常工作阶段。如果建立了多个TCP连接,iSCSI将要求每个命令/响应对应一个TCP连接。但是,不同的数据传输可以在一个会话中通过不同的TCP连接。
在数据传送端,启动器发送/接收最新的数据,而目标器在完成数据传输后发送确认响应。iSCSI注销命令用来完成一个会话,它也会发送在出现连接错误的时候,实现连接中断处理。
3) 差错处理
在IP网络,特别是在WAN中,数据传输的错误是经常出现的,iSCSI协议需要提供错误处理机制。要实现错误的处理与恢复,启动器和目标器在命令确认前,都要有命令缓冲的功能。各终端要保证在协议数据单元丢失或损坏后可以恢复原来的数据。
4) 安全性
因为iSCSI是用来在网络中传输数据,所以iSCSI协议规范考虑到了许多安全性方法。iSCSI的加密是在下层实现,从而不需要iSCSI终端设备之间建立特别的握手协议,这些对上层是透明的。对于其他认证的实现,如公有/私有密钥的交换,iSCSI登录阶段就提供了终端设备之间都支持的握手协议的文本域。如果握手成功,iSCSI设备之间的PDUs交换将按照适当的安全要求格式实现。

3 iSCSI亟待解决的问题
iSCSI标准刚刚获得批准,在今后的发展道路上肯定还存在许多亟待解决的问题。首先,iSCSI的发展需要时间。iSCSI技术诞生的时间不长,标准不是很清晰,还没有100%获得认同,技术还要进一步成熟;技术上,iSCSI要求不同的操作系统有内置的支持,而不是目前这种通过软件来实现的方式;性能上,iSCSI加速网卡目前还没有实现规模市场化,价格很高,无法普及。这些都需要一个发展过程。
iSCSI技术的兼容性是业界目前关注的一个问题,是iSCSI发展的关键。
目前iSCSI支持的前端服务器平台相对有限,FC的支持平台及产品较多,而iSCSI支持平台较少,可选择的产品也不多,实施较复杂;解决了这一障碍,iSCSI技术就会快速发展。
在试用中,发现了这样一个问题:虽然iSCSI能在普通IP网络上传输SCSI控制命令,但对远端的存储设备进行访问时,即使在100Mbps的网络上仍然达不到我们所期望的速度。如果要发挥出SCSI设备的高速度,还需要更宽的网络环境。iSCSI的性能,网络带宽是影响iSCSI性能的直接因素,所以建立基于Iscsir 网络存储环境同时也增加了对千兆以太网的需求。在高速的网络上采用iSCSI这样的分布式数据存储,可以有效地提高网络的使用率,提高系统的整合性,便于集中管理,降低运行成本。

4 应用前景
iSCSI是网络存储领域最活跃的研究方向之一,它建立在存储领域和网络领域应用最广泛的两个协议的基础上,因此,可以利用已有的大量的研究成果来实现一个高性能的存储网络。同时,iSCSI可以利用现有的Ethernet网络实现基于TCP/IP存储网络,将大大地减少企业在存储方面的开支,特别是在需要用到大量存储设备的电信系统网络,在现有设备的基础上应用iSCSI,将能大幅度提高电信网络的通信质量和安全性能,极大地降低营运成本。虽然iSCSI尚存在上述问题,而随着深入研究和技术的进步,这些问题将很快地完全解决,在走向未来将广泛应用的存储新技术——iSCSI的前面,必将是一条飞速发展的光明大道。

标签:
来源:今日电子 作者:湖南工程学院 胡俊达 时间:2003/12/1 0:00:00
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐