一、前言
(INTERNET SCSI)是由Internet Engineering Task Force(IETF)开发的网络存储标准,目的是为了用IP协议将存储设备连接在一起。通过在IP网上传送SCSI命令和数据,推动了数据在网际之间的传递,同时也促进了数据的远距离管理。由于其出色的数据传输能力,协议被认为是促进存储区域网(SAN)市场快速发展的关键因素之一。因为IP网络的广泛应用, 能够在LAN,WAN甚至INTERNET上进行数据传送,使得数据的存储不再受地域的现在。
计算机行业面临严峻的考验,信息数据呈几何级别地增长,迅速地填满了系统内一切可用的存储空间。传统的解决办法就是安装一套光纤存储区域网络( SAN)。在SAN环境下,所有的服务器将被整合到一个存储池内,共享所有的资源,用户可根据服务器的实际需求来分配资源。而且,用户还可以扩大逻辑分区的容量大小,为应用程序分配一个临时的磁盘分区,等任务结果之后,再将这部分资源重新收回来,归还存储池。然而成本昂贵,是部署光纤存储区域网络的最大缺点。如果用户想将一台服务器接入到 SAN当中,需要购买一个主机总线适配器(售价约在1,000美元左右),而且,光纤交换机每增加一个端口,需要花费800~4,000美元不等,具体数目视情况而定。这还不算什么,最糟糕的情况就是,当你花了一大笔钱之后,才发现你从A供应商那儿购买的主机总线适配器、B供应商那儿购买的磁盘阵列、C供应商那儿购买的交换机竟然是不兼容的,无法构筑一套光纤网络。众所周知,光纤设备的互操作性一向是不太稳定的。除非你按照厂商提供的SAN硬件兼容器件单去采购,否则,网络即使部署起来了,可能也无法正常运作。
技术横空出世,使情况大为改观,它的价格不仅较光纤系统便宜许多,而且管理起来更加方便。依然支持标准的TCP/IP协议,也就是说,用户可使用标准的千兆级以太网传输协议,通过Cat5线缆和任意的交换机产品,将服务器与磁盘阵列连接在一起,并且能够提供接近 SAN的性。
二、技术
1、的发展史
2、的技术细节
首先介绍一下SCSI的体系结构
SCSI-3 标准的SCSI模型
该模型定义了各层的概念,实体和他们之间的相互作用,他规定了服务/客户机模型中和target。
SCSI and Target Interaction
SCSI Command Descriptor Block (CDB)
术语
在中使用网络实体这个概念,网络实体指的是连接IP网络的设备或网关。网络实体必须包含一个或多个网络入口,在一个网络实体中的节点能够用其中的任意一个网络入口访问IP网络。节点实在网络实体中用名称标识的或target。一个SCSI设备就是该节点的名称。
网络入口也是网络实体的重要组成部分。对来说网络入口就是他的IP地址。对target来说,其IP地址和TCP端口就是他的网络入口
下图是服务器和客户端的组成部分
当和target通信时,他们之间通过网络端口建立连接,和target之间的多个连接建立一个会话。
命名和寻址
协议为和target定义了一套命名和寻址方法。所有的节点都是通过他的名称被标识的。这种命名方式使得名称不会与主机名混淆。共有两种命名格式:iqn ( qualifier name) 和 IEEE EUI。Iqn的格式如下:iqn.1987-05.com.Cisco.00.9f9ccf185aa2508c7a168967ccf96e0c.target1.
通过名称,可以做到:
1、 多个和target共享一个IP地址。
2、多个和target可以通过多个IP地址被访问。
3、 为节点通过防火墙进行访问提供了一种方式。
协议除了对名称进行区分大小写的比较外,对名称不做任何处理。
协议遵循标准的IP寻址规范 域名:端口号。域名可以使IPV4和IPV6地址,也可以是域名。对ISCSItarget,端口号可以随地址指定,如果不指定,默认为3260
协议
协议是将SCSI的远程过程调用(rpc)映射到IP协议的过程。协议提供了独立于他所携带的SCSI CDB的层的概念。请求传递SCSI命令,响应处理SCSI响应和状态。
与SCSI协议一样,也使用和target的概念。传送的信息被称为协议数据单元(PDUs)。同样的,对来说,传输方向是分别定义的。为了提高性能,允许命令或响应及其相关数据在单独的 PDU中传输。
会话
和target之间最高级别的通讯路径就是他们之间的会话。定义了两种方式的会话:正常的操作会话和发现target的发现会话。
会话是通过会话ID进行标识,他由和target组成。在一个会话中,TCP连接可以加入,也可以移出,所有的连接都是在同一个和target中。所有在一个会话中的连接都共享一个连接ID。
会话是通过登录建立的,该会话被用来标识到某个具体SCSI I_T连接的所有TCP连接。同一个会话里可能有一个或多个连接。当通过默认端口或指定端口与target建立连接时,登录过程就开始了,和target互相认证并建立安全协议。在登录阶段,ISCS Iinitiator和target会协商建立多种连接属性。
序列
协议使用多个寄存器来维护命令,状态和数据的顺序。每个寄存器是一个32位的无符号的整数计数器。寄存器的数量是由和target在 PDU中进行交流,和target还会用NOP-OUT/IN PDU去同步顺序和寄存器数量。
命令编号
在会话中,所有的命令都用命令序列号进行编号,命令序列号用来保证命令按顺序传送,而不管它是通过那个TCP连接传送的。命令序列开始于第一个登录命令,并随后续的命令而增加。目标层负责将命令按命令序列号的顺序送到层。除了需要立即传送的命令除外,在这种情况下,命令序列号不会增加,目标层会立即将他传送到层。
状态标号
与命令序列号一样,状态响应也用状态序列号进行编号。
数据顺序
数据和传输请求PDUs通过数据序列号寄存器和传输请求寄存器进行排序,以此来保证数据的顺序传送。对于读操作,数据序列号从0开始,以后每次增加1。对于写操作,数据序列号从0开始,以后每次增加1。
PDUs
TCP对于包的有效载荷是PDUs。所有的 PDUs都以一个或多个报头开始,其后跟着0或数据段。
第一个段为基本报头段,48字节,其他段跟在其后,基本报头段是必须的,其他是可选的
PDUs的类型包括的请求和响应,文本的请求和响应,登录的请求和响应等,以下是一个请求命令的头格式。
的错误处理
错误恢复的重要部分时保留足够的状态信心以此来恢复数据。用两种方式来处理错误:重做和再分派。会重复传送丢失的数据PDU。再分派指和targe之间的TCP连接中断的情况下的,通过一个新的连接发送再分配连接任务,使得targe能够在一个新的连接ID继续命令的传送。
过程
登录初始化
登录是在和targe之间建立会话,互相交换同意操作参数。
认证和参数协商
如果需要认证,协商将在交换操作参数前进行,当认证成功完成后,就能够进行参数协商,
连接
当targe接受的连接时,连接建立。
注销和关闭
注销是为了断开连接,由发起,targe也可因为内部错误而产生断开信息。注销后,将不再有请求和响应产生,
安全考虑
在中,存储信息是通过开放的IP网络进行传输,所以必须考虑安全问题,
认证
在中,target可能需要认证,而也可能需要认证target,共有以下几种认证方式:
• KRB5 Kerberos V5
• SPKM1 Simple public-key generic security service (GSS) application programming interface(API) mechanism
• SPKM2 Simple public-key GSS API mechanism
• SRP Secure Remote Password
• CHAP Challenge Handshake Authentication Protocol
• None 无认证
包保护
包保护是为了保证节点之间通信的完整,经过认证,保密。在IP层,通过IPSec提供交换的私密性。通过用3DES对IPSec 隧道进行加密,来提供通信的机密性。
的实现方式
技术的实现主要有三种方式:
1. 纯软件方式
服务器采用普通以太网卡来进行网络连接,通过运行上层软件来实现和TCP/IP协议栈功能层。
这种方式由于采用标准网卡,无需额外配置适配器,因此硬件成本最低。但是在这种方式中,服务器在完成自身工作的同时,还要兼顾网络连接,造成主机运行时间加长,系统性能下降。这种方式比较适合于预算较少,并且服务器负担不是很大的用户。
2. 智能网卡实现方式
在这种方式中,服务器采用特定的智能网卡来连接网络,TCP/IP协议栈功能由该智能网卡完成,而层的功能仍旧由主机来完成。这种方式较前一种方式,部分提高了服务器的性能。
3. HBA卡实现方式
使用存储适配器来完成服务器中的层和TCP/IP协议栈功能。这种方式使得服务器CPU无需考虑以及网络配置,对服务器而言,存储器适配器是一个HBA设备,与服务器采用何种操作系统无关。该方式性能最好,但是价格也最为昂贵。
为提高性能,主流存储厂商一般都采用第三种方式来实现。
三、与、的比较
成本投入小。所使用的适配卡、交换机和缆线这些产品的价格比 SAN所选用的硬件产品价格要低,并且可以在现有的网络上直接安装,并不需要更改企业的网络体系,这样就大量节约资金投入。
管理方便,维护成本低。 SAN由于需要专用的软件进行设置管理,因此需要对管理人员进行培训,并且培训的费用也比较高;而主要是通过IP网络实现存储资源共享,我们只需要现有的网络功能就可以进行管理,并且的设置非常简单,所以不需要对管理人员进行培训,因此更能节约成本。
无距离限制。由于是一种基于IP网络的存储技术,它会随着IP网络的延生而将存储距离不断扩大,因此是无距离限制的。
数据传输速度快。的数据传输速度是根据以太网络的速度而变化的,目前,1Gbps的以太网已经大量用于市场,而10Gbps的以太网也即将进入市场,当以太网的速度增加时,的数据传输速度也将不断加快。
组建方式灵活,可扩展性高。由于存储系统可以直接在现有的网络系统中进行组建,并不需要改变网络体系,加上运用交换机来连接存储设备,对于需要增加存储空间的企业用户来说,只需要增加存储设备就可完全满足,因此,存储系统的可扩展性高。