欢迎来到天天文库
浏览记录
ID:24786610
大小:50.50 KB
页数:6页
时间:2018-11-11
《iscsi协议在opnet中的实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、iSCSI协议在OPNET中的实现摘要iSCSI是一种先进的网络存储技术,利用该技术能通过IP网络访问远程存储设备。介绍分析了iSCSI协议模型和iSCSI会话管理,给出了在协议实现过程中设备所处的状态,在此基础上给出了利用iSCSI协议规定的特性和参数在OP8.0上实现iSCSI协议的方法,重点提出了iSCSI层的实现的方法,最后给出了该层在OP中的实现过程。关键字iSCSI,;OP;网络仿真;SAN1引言快速增长的存储容量使得企业需要采用网络存储解决方案。目前网络存储技术采用的连接技术主要有光纤通道
2、和TCP/IP。基于IP的网络存储能解决基于光纤通道的网络存储中存在的兼容性和传输距离问题,而且能提供相对廉价的解决方案。iSCSI(InterSCSI)协议是IP存储网络协议之一,它将广泛应用的两种工业标准SCSI和TCP/IP结合起来,为存储设备提供面向数据块级的连接服务。由于iSCSI协议对存储网络的性能有很大的影响,所以如果能够建立iSCSI的模型用于仿真,将能够更清楚的了解iSCSI对存储网络性能的影响,但在OP上还没有iSCSI的模型,本文给出了在OP上实现iSCSI的方法。2iSCSI协议
3、分析2.1iSCSI协议模型iSCSI使用TCP/IP协议在不稳定网络上进行可靠的数据传输。iSCSI层和标准SCSI集在协议栈中的位置如图1所示。iSCSI层包括了已封装的SCSI命令、数据和状态。就是说若Initiator端的操作系统或应用程序需要进行数据写操作,SCSI的CDB(mandDescriptionBlock命令描述块)必须被封装以便能够在串行千兆位链接上传输到Target端。图1iSCSI协议栈iSCSI属于端到端的会话层协议,它定义的是SCSI到TCP/IP的映射,即Initiato
4、r将SCSI指令和数据封装成iSCSI协议数据单元,向下提交给TCP层,最后封装成IP数据包在IP网络上传输,到达Target后通过解封装还原成SCSI指令和数据,再由存储控制器发送到指定的驱动器,从而实现SCSI命令和数据在IP网络上的透明传输。它整合了现有的存储协议SCSI和网络协议TCP/IP,实现了存储与TCP/IP网络的无缝融合。iSCSI数据包作为TCP的有效载荷被封装到TCP包中,在经过了整个网络协议栈到达物理层时,数据包封装格式如图2所示图2iSCSI数据包格式iSCSI协议监测块数据的
5、传输并完成I/O操作,这些需要在Initiator端和Target端的TCP连接上进行。在实际应用中,IP网内一个Initiator端可以有多个Target端资源,所以同时有多个活动的TCP连接。2.2iSCSI会话管理会话指的是两个节点通过某一应用进行通讯,iSCSI会话由一个二元组<<ISID,TSID>标识,它表示Initiator和Target之间的联系,该联系在SCSI协议中称为I-TNexus(I-T联结)。在iSCSIInitiator:端向Target端发送iSCSI命
6、令之前,首先必须与Target端建立一个iSCSI会话,iSCSI会话通过一个iSCSI登录进程来启动,登录过程中协商双方的变量参数,并调用一个安全例程来对许可的连接进行认证.iSCSI会话生存期包括登录阶段和全工阶段,登录阶段又可细分为初始化阶段、安全认证阶段和参数协商阶段。Initiator端在发起每次TCP连接时先向系统注册该连接,在连接能够被用于传输SCSI命令之前,连接的注册阶段必须完成。iSCSI注册是一种在Initiator端和Target端之间建立TCP连接的机制。它将鉴别连接双方,就会
7、话间的各种参数进行磋商,并设置相应的安全关联,还要为属于相应iSCSI会话的连接做上标记。Initiator:端通过连接一个已知的TCP端口开始注册程序,Target端也透过这个端口来监听进入的连接。一个TCP连接被建立后,可以用来传输SCSI命令、数据和状态信息,完成Initiator端和Target端之间的通信任务。在Initiator:和Target之间可能会产生一个或多个这样的TCP连接。具有相同会话标识的TCP连接就组成了一个会话。这个会话也可以用来鉴别Target端与给定Initiator端
8、的所有连接,TCP连接可以从会话中被添加或删除。iSCSI登录交换使用文本字段来协商Initiator:和Target之间的允许参数,如安全协议、最大数据有效载荷大小、是否支持主动数据、主动数据的长度和超时值等。作为注册程序的一部分,Initiator端和Target端会彼此鉴别对方,并为这个会话设置相应的安全关联。一旦注册程序结束,iSCSI会话将进入全工阶段。此时,Initiator端可以通过已建立的iSCSI会话将SCSI命令和数据打
此文档下载收益归作者所有