一、iscsi的概念
iscsi,即internet SCSI,是IETF制订的一项标准,用于将SCSI数据块映射为以太网数据包。iscsi技术最初由cisco和ibm两家公司开发,并且得到了广大IP存储技术爱好者的大力支持,这几年得到迅速的发展壮大。
iscsi的优势主要表现为:首先,iscsi没用tcp/ip协议,而tcp/ip是在网络方面最通用、最成熟的协议,且ip网络的基础建设非常完善,同时,scsi技术是被磁盘和磁带等设备广泛采用的存储标准,这两点使iscsi的建设费用和维护成本非常低廉;其次,iscsi支持一般的以太网交换机而不是特殊的光纤通道交换机,从而减少了异构网络带来的麻烦;还有,iscsi是通地ip封包传输存储命令,因此可以在整个internet上传输数据,没有距离的限制。
二、iscsi的组成
一个简单的iscsi系统大致由以下部分组成:
a、iscsi initiator或者iscsi hba
b、iscsi target
c、以太网交换机
d、一台或者多台服务器
iscsi initiator是一个安装在计算机上的软件或硬件设备,它负责与iscsi存储设备进行通信。
iscsi服务器与iscsi存储设备之间的连接方式有两种:第一种是基于软件的方式,即iscsi initiator软件。
第二种是硬件iscsi hba卡方式,即iscsi initiator硬件。这种方式需要先购买iscsi hba卡,然后将其安装在iscsi服务器上,从而实现iscsi服务器与交换机之间、iscsi服务器与存储设备之间的高效数据传输。
iscsi initiator软件一般都是免费的,centos和rhel对iscsi initiator的支持都非常不错,现在的linux发行版本都默认自带了iscsi initiator.
iscsi target,一个可以用于存储数据的iscsi磁盘阵列或者是具有iscsi功能的设备都可以被称为iscsi target,因为大多数操作系统都可以利用一些软件将系统转变为一个iscsi target。
利用iscsi target软件,可以将服务器的存储空间分配给客户机使用,客户机可以像使用本地硬盘一样使用iscsi磁盘,包括对其进行分区、格式化及读写等。而且每个客户端都可以向iscsi磁盘写数据,互不干扰,并且不会破坏存储到服务器中的数据。同时,iscsi target软件对用户权限控制非常灵活,支持配置文件。
三、iscsi的工作原理
iscsi的协议自顶向下一共可以分为三层:
scsi层:根据客户端发出的请求建立 scsi cdb,并传给iscsi层。同时接收来自iscsi层的cdb(命令描述块),并向应用返回数据。
iscsi层:对sicsi cdb进行封装,以便能够在基于tcp/ip协议的网络上进行传输,完成scsi到tcp/ip的协议映射。这一层是iscsi协议的核心层。
tcp/ip层:对IP报文进行路由和转发,并且提供端到端的透胆可靠的传输。
转载于:https://blog.51cto.com/htc2012/1147390