分享
 
 
 

基于linux的iSCSI设计与实现(三)

王朝system·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

第三章 iSCSI和SCSI

3.1 iSCSI概述

iSCSI 协议是一个Internet 草案标准,用来定义在TCP/IP协议上传送SCSI命令。2001年1月IBM和Cisco首先提出了iSCSI的草案标准。于同年8月提交给IETF的IP Storage(IPS)工作组进行标准化。2001年7月IETF第一次定义了iSCSI草案标准。根据草案,许多公司已开发了该类产品。

iSCSI允许在使用TCP/IP协议的网络上传输SCSI I/O命令和数据,就像将SCSI命令映射到光纤通道、并行SCSI和SSA介质上一样。在服务器端安装iSCSI设备驱动器,接收应用程序的I/O请求,再使用iSCSI协议将它们在LAN上传输。目标器存储设备可以直接附着于LAN,也可以使用路由器(协议,转换器)来连接到LAN。第二种方法中,在LAN的另一端存在一个光纤通道端口,可以连接到一个支持光纤通道附件的存储设备。这种方案允许不带有iSCSI端的存储产品通过iSCSI协议被访问到,也允许服务器在没有光纤通道主机总线适配卡的情况下访问设备。与其它解决方案相比,iSCSI有一下一些优点:

1.可连接性:在NAS和SAN连接到设备时可以使用iSCSI。ISCSI设备可放于现有的包含多种应用的LAN上,或专用于存储I/O的LAN上,或只连接到一个处理器(DAS)的LAN上。TCP/IP是一种已经比较成熟的协议,许多IT人员对它已经很熟悉,这就降低了大量的管理和培训费用。

2.介质:iSCSI附着于IP网络,与单纯的光纤通道SAN比较起来,可以支持更长的传输距离。

3.I/O协议:iSCSI使用SCSI I/O协议,因此它是基于块的I/O,避免了不合适数据库或者其它不使用文件协议的应用的尴尬。可连接多个独立的网络,可使用一般的交换机,不像光纤通道那样要特定的交换机。

4.管理:iSCSI的管理与其它直接附着的SCSI设备的管理是一样的。从处理器的角度看,连接到iSCSI的磁盘卷是可见的。任何支持附着于SCSI卷的数据备份方法对于iSCSI同样是可行的。与光纤通道SAN相比,iSCSI可以利用已经促步完善的网络管理工具和人力技能的优势。

5.性能:同样基于Ethernet,iSCSI的性能要优于NAS,因为它直接对SCSI设备进行操作,而不需要在文件I/O协议和SCSI协议之间进行转换。速度可以达到10Gigabit,可以和OC-192 SONET(同步光纤网络)相媲美。

6.费用:一般而言,同样情况下,一个iSCSI SAN的费用要低于光纤通道SAN的费用,从硬件角度看,以太网主机适配器一般要比光纤通道主机适配器便宜,如果iSCSI直接附着与SAN,那就根本不需要新的主机适配卡了。iSCSI SAN的建立要比光纤通道SAN的建立快,所需的新技术也少一些。由于不需要支持文件系统、文件共享协议和其它集成到NAS产品中的应用,同等条件下,iSCSI盘设备要比一个NAS设备便宜。

在I/O操作频繁的情况下,iSCSI的优势尤其明显。

3.2 iSCSI协议分层

下图简易给出了iSCSI协议的分层:

3.3 SAN和iSCSI的关系

就如同在LAN和WAN上,客户机和服务器要进行通信,必须由相应的通信机制(常见的有TCP/IP协议等),在服务器和存储设备通过SAN通信时,也需要相应的机制,iSCSI就是其中一种很有发展潜力的协议。由于iSCSI从本质上来讲就是SCSI命令封装在TCP/IP协议中,在详细讲述iSCSI之前,有必要先介绍SCSI及相关内容。

3.4 SCSI

在最高层,SCSI是向I/O设备请求服务的接口族,它包括了硬件驱动器、磁带驱动器、CD和DVD驱动器、打印机和扫描仪。在SCSI术语中,一个I/O设备被称为一个“逻辑单元”(LU,logical Unit).SCSI采用客户机---服务器结构。一个SCSI接口的客户机被称为“启动器”。启动器发出“命令”向一个逻辑单元请求服务。在逻辑单元上的“设备服务器”接收SCSI命令并处理它。一个“SCSI传输”将客户机---服务器SCSI协议映射到一个特有的交互连接。启动器是SCSI传输的一个终点。一个目标器包含多个逻辑单元。每个逻辑单元在目标器内有一个地址,称为逻辑单元号。一个SCSI任务是一个SCSI命令或者一个SCSI命令的逻辑集。一些逻辑单元支持多个挂起(排队)任务,任务队列由目标器管理。目标器使用启动器提供的“任务标签”来区分任务。在任意给定时刻,只有一个任务的一条命令可以被执行。每个SCSI命令导出一个可选的数据阶段和一个必须的应答阶段。在数据阶段,信息能从启动器到目标器(比如写操作),也能从目标器到启动器(比如读操作),或者双向。在应答阶段,目标器送回操作的最终状态,包括任何错误。一个应答中止一个SCSI命令。一个命令描述块是一个数据结构,包含了从启动器到目标器要处理的命令参数。

SCSI是一种通用的支持块级别访问的技术,它的瓶颈在于SCSI总线

的长度。目前由一些协议用来扩展SCSI总线长度:光纤通道,SCSI封装协议和iSCSI。一根SCSI总线上最多带有16个设备,它们可以是任意

多个启动器和目标器的组合,但是一个可用的系统至少要有一个启动器和一个目标器。SCSI协议为每一个SCSI设备指定了一个ID号(地址),用来唯一识别设备,在带有16个SCSI设备的系统中,ID号从0编号到15。每一个目标器又可以细分为多个逻辑单元,每个设备上最多有8个逻辑单元。

3.5 SCSI命令描述块

从应用客户端到设备服务器的通信命令的数据结构称为命

令描叙块(CDB)。一条SCSI命令或者一组相关的命令称为“任务”。任何时候,一个任务中只有一条命令被执行。SCSI命令执行后的结果是一个可选的数据阶段和一个状态阶段。在数据阶段,写命令中数据从启动器到目标器,读命令中数据从目标器到启动器;在状态阶段,目标器回送操作的最后状态。状态应答中止一条SCSI命令或任务。SCSI驱动的基本功能是根据应用程序提出的请求建立SCSI命令描叙块(CDB),并将CDB发送到iSCSI层,SCSI驱动也从iSCSI层接收CDB并将数据转发到应用层。CDB分为6字节、10字节和12字节3种,下图是一个基本的16字节SCSI CDB。

其中,对于操作码部分,我在附录中给出了所有SCSI设备的通用命令,请参看。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有