ISCSI的概念
1.存储的一些概念和术语
SCSI:小型计算机系统接口(Small Computer System Interface)
FC:光纤通道(Fibre Channel)
DAS:直连式存储(Direct Attached Storage)
NAS:网络接入存储(Network At tached Storage)
SAN:存储区域网络(Storage Area Network)
2:认识ISCSI
iSCSI = internet Small Computer System Interface
iSCSI是一种在Internet协议上,特别是以太网上进行数据块传输的标准,它是一种基于IP Storage理论的新型存储技术,该技术是将存储行业广泛应用的SCSI接口技术与IP网络技术相结合,可以在IP网络上构建SAN存储区域网,简单地说,iSCSI就是在IP网络上运行SCSI协议的一种网络存储技术。
3.ISCSI技术优势
与传统的SCSI技术比较起来,iSCSI技术有三个革命性的变化:
- 把原来只用于本机的SCSI透过TCP/IP网络传送,使连接距离可作无限的地域延伸;
- 连接的服务器数量无限(原来的SCSI- 3的上限是15) ;
- 由于是服务器架构,因此也可以实现在线扩容以至动态部署。
4.ISCSI架构
1.控制器架构
采用专用的数据传输芯片、专用的RAID数据校验芯片、专用的高性能cache缓存和专用的嵌入式系统平台,是一个核心全硬件的设备。
优点:具有较高的安全性和和稳定性。
缺点:核心处理器全部采用硬件,制造成本较高,因而售价也很高。
适用环境:可以用于对性能的稳定性和高可用性具有较高要求的在线存储系统,例如:中小型数据库系统、大型数据库备份系统、远程容灾系统等。
2.pc架构
5.iSCSI存储连接方式
1、以太网卡+ initiator软件方式
服务器、工作站等主机使用标准的以太网卡,通过以太网线直接与以太网交换机连接,iSCSI存储也通过以太网线连接到以太网交换机上,或直接连接到主机的以太网卡上。在主机上安装Initiator软件。
优点:在现有网络基础上即可完成,成本很低。
缺点:消耗客户端主机部分资源
适用环境:在低I/0和低带宽性能要求的应用环境中。
2、硬件TOE网卡+initiator软件方式
具有TOE (TCP Offload Engine)功能的智能以太网卡可以将网络数据流量的处理工作全部转到网卡的集成硬件中完成。客户端主机可以从繁忙的协议出来中解脱出来。
优点:采用TOE卡后可以大幅度提高数据的传输速率,降低了客户端主机的资源消耗。
缺点:書要购买TOE功能的网卡,成本较高。
3、iSCSI HBA卡连接方式
也就是在客户端主机上安装专业的iSCSI HBA适配卡,从而实现主机与交换机之间、主机与存储之间的高效数据交换。
优点:数据传输性能最好三种方式最好。
缺点:罱要购买iSCSI HBA适配卡,成本较高。
TOE网卡和iSCSI HBA的市场价格都比较贵,如果主机较少的话还可以接受,如果网络主机较多,成本消耗很大。
6.ISCSI系统的组成
1、ISCSI系统组成
一个简单的iSCSI系统大致有以下部分组成:
1.iSCSI initiator或者iSCSI HBA
2.iSCSI target
3.以太网交换机
4.一台或者多台服务器
6、iSCSltarget概念
一个可以被用于存储数据的iSCSI磁盘阵列或者具有iSCSI功能的设备都可以被称为“iSCSI target"。
利用iSCSI target软件,可以将服务器的存储空间分配给客户机使用,客户机就可以像使用本地硬盘一样使用iSCSI磁盘。
目前大多数iSCSI target软件都是收费的,不过,也有一些linux平台开源的iSCSI target软件。
例如iSCSI Enterpri se Target.
ISCSI系统的组成
7.iSCSI initiator概念
iSCSI initiator是一个安装在计算机上的一个软件或是一个硬件设备,它负责处理同iSCSI存储设备进行通信。
iSCSI服务器与iSCSI存储设备之间的连接方式有两种:
第一种是基于软件的方式,即软件iSCSI initiator
第二种是基于硬件的方式,即硬件SCSI initiator
iSCSI initiator软件一般都是免费的,Centos和RHEL.对iSCSIInitiator支持非常不错,现在的Linux发行版本都默认已经自带了iSCSI Initiator.
8.ISCSI系统工作原理
基本实现过程:
iSCSI协议定义了在TCP/IP网络发送、接收block (数据块)级的存储数据的规则和方法:
发送端将SCSI命令和数据封装到TCP/IP包中再通过网络转发,接收端收到TCP/IP包之后,将其还原为SCSI命令和数据并执行,完成之后将返回的SCSI命令和数据再封装到TCP/IP包中再传送回发送端。
整个过程在用户看来:使用远端的存储设备就象访问本地的SCSI设备一样简单。