iSCSI虚拟化的模型
2010-04-17李晟
李 晟
英业达集团(天津)技术有限公司,天津 300192
1 iSCSI 主要由4个部分组成
1)iSCSI 地址和命名规则。在网络实体中,iSCSI 节点是SCSI 设备在网络中可用的标识符,每个 iSCSI 节点都有一个独一无二的名称(其长度最多可以达 255 个字节),这种名称是根据 Internet 节点的命名规则进行命名的。
2)iSCSI 会话管理。iSCSI 会话由登录阶段(Login Phase)和工作阶段(Full Feature Phase)两部分构成,由特殊命令完成。
3)iSCSI 差错处理。由于在 IP 网络,特别是在 WAN 中实施 iSCSI 会经常出现数据传输错误现象,iSCSI 协议可以提供错误处理方法。
4)iSCSI 安全性。由于 iSCSI 工作在数据可能被非法访问的网络,该协议允许使用不同安全性途径。
2 iSCSI PDU 结构
在TCP/IP网络上实现的iSCSI协议通信就是在发送端把SCSI命令和SCSI数据封装在iSCSI协议数据单元(iSCSI Protocol Data Unit,iSCSI PDU)中,然后再将iSCSI PDU依次经过TCP封装、IP封装和数据链路层封装,最后发送到IP网络上进行传输;而在接收端执行相反的操作。所有iSCSI协议层的操作都是通过在两个对应的iSCSI结点之间交换iSCSI协议数据单元来完成的。iSCSI PDU包括一个基本报头,0~n个附加报头,0~1个报头校验,0~1个数据段,0~1个数据校验。其中,数据校验的存在以数据段的存在为前提。RFC3720标准共定义了18种不同类型的iSCSI协议数据单元。
3 多节点空间的整合方式
1)在多个节点(Node)上的分别输出(export)本地的存储设备,而在initiator 端通过这些ip 分别连接到这些存储设备上,此时我们可在initiator 端看到一个完整的存储空间,如图1所示。
图1 多空间整合
所有输出的存储设备是相同类型和大小的磁盘。每个target端上提供的信息为合并后的完整存储空间信息。
2)在访问存储空间时,initiator会分别往这n 个存储设备上访问数据。即整合后的存储空间构成如图2所示。
图2 组合空间的组成
3)访问数据块的校验
在每一个Node节点上有整合后的空间映射表,当接收到Initiator端的通信请求时,需要验证该数据块是否存放在本地,如果不是,发送重试信息给Initiator。此时,Initiator就会将信息发送到下一个节点中。
不同节点的ip加入顺序与空间分配顺序相关,这样可以避免反复的数据包重发过程。另外,iSCSI包的大小在通信前需要指定为统一的大小,每次访问按照这个大小发送信息包。
4 结论
通过以上论述,我们就可以实现一个iSCSI空间的扩展。它实现了多个Node上空间的整合和多个Node上的数据并发访问,减少了计算机系统的最大瓶颈磁盘的影响,提高了存储设备的性能。本文所阐述的只是一个模型的样本,具体使用时还有许多需要完善的地方。