随着企业级的数据呈指数增长,传统的集中式存储方案已无法满足其存储要求,因而存储区域网(storage area network,SAN)技术被广泛应用,但其存在距离短、价格贵和构建复杂等不足。基于iSCSI协议的IP存储技术是一种新兴的网络存储技术,它将IP网络技术集成到存储I/O之中,在构建异构的存储网络方面具有其它数据访问协议无法比拟的优势?,已经成为当前网络存储技术的研究热点。
使用iSCSI协议来组建存储网络,具有低廉、开放、大容量、兼容性好等特点,而其主要缺点首先是存储和网络使用同一个物理接口,其次是需要频繁地将SCSI命令封装到IP包中以及从IP包中解析出SCSI命令,它们都将加重网络带宽和处理器的负担,影响了系统的响应速度,从而限制了iSCSl技术的发展。
访问iSCSI Target设备的典型I/O流程为:
①当用户向一个iSCSItarget设备发出访问请求时,应用程序通过系统调用访问文件系统:
②文件系统解释这个I/O命令,分析I/O命令所在的设备和地址,然后将请求发送给SCSI上层驱动程序:
③SCSI上层驱动程序将相应的I/O命令转换为SCSI命令,并发送给iSCSI Initiator;
④iSCSI Initiator将SCSI命令封装打包,通过网络发送到iSCSI Target模块;
⑤iSCSl Target模块收到iSCSI命令包后,将iSCSI命令包中的SCSI命令发送给SCSI底层驱动程序;
⑥由SCSI底层驱动程序完成I/O请求,将数据按原路径返回给用户。
以iSCSI读操作为例,其具体处理流程为:
①发送iSCSI命令;
②缓存调度;
③读取数据;
④使用iSCSI协议对数据进行封装;
⑤传输iSCSI协议封装的数据。