SCSI

DAS

直接连接存储(Direct Attached Storage,DAS)是一种存储设备与使用存储空间的服务器通过总线适配器和SCSI/FC线缆直接相连的技术。根据存储设备与服务器间的位置关系的不同,DAS可分为内部DAS和外部DAS两类。

而DAS通信的协议可以分为ATA、SCSI、FC

三种协议对应有不同的接口来封装和解封装

ATA对应的就是常见的IDE和SATA接口

SCSI对应SCSI接口

FC对应FC光纤接口

 

SCSI

SCSI

SCSI (Small Computer System Interface ) 小型计算机系统接口,它分为并行SCSI(内部DAS)和串行ISCSI(外部DAS)

使用SCSI是需要安装SCSI适配器通过ASPI的标准软件接口驱动SCSI;单个SCSI适配器的总线可以有8到16个SCSI设备SCSI设备连接。

SCSI

在网络中传输可以通过物理介质与中间的网络设备,而在计算机内部各部件的交互同样也需要有介质,而这个就是其实就是主板上的导线,有一条或多条组成的导线就组成传输介质总线,导线上的电位每个时刻都是想等的,也就是说这条总线是共享的,同一时刻只能有一个部件进行接受与发送,是半双工的模式。当总线想要执行时则发送中断或者仲裁来请求执行时间也就是获得CPU的时间片。

BUS

主板上的介质都是通过总线来进行传输的,在SCSI控制卡中有专门用来传输SCSI流量的SCSI总线,用Bus ID区分不同的总线

SCSI

SCSI ID和LUN ID

SCSI ID用来识别每个SCSI设备,也就是说接在用SCSI ID来表示SCSI总线上的硬盘

设想当带有RAID功能的SCSI接口阵列磁盘设备接入SCSI总线是,也就是说单个SCSI ID中不再是一个硬盘有多个硬盘。怎么来区别这些硬盘?答案是用LUN

LUN来标识(Logical Unit Number逻辑单元号),用来在SCSI上逻辑划分,当带有RAID功能的设备接入时,可以用LUN ID来进行寻址RAID中的不同硬盘,LUN对应本身SCSI物理设备本没有用因为物理SCSI本来就是一个单个的设备,当SCSI控制器在初始化的时候会发送一个Report LUN指令,用来收集每个SCSI ID设备上的LUN信息,当是物理设备时必须向控制器报告一个LUN0代表物理设备本身。

Windows查看Bus ID 、SCSI ID、LUN ID

此电脑——管理——存储——磁盘管理——磁盘——属性——常规

SCSI

 

 可以看到我的两块硬盘,一个是SATA接口的一个是M2接口的分别在不同的总线上所以一个Bus ID为1另一个Bus ID为0,Target ID这个就是标记总线上的设备,类似与SCSI ID都是,因为是物理设备所以LUN ID为0

SCSI协议

在网络通信中每个层有每个层存在的协议,当协议发送时发送端进行封装,而接送时只有符合条件的才可以执行解封装获得数据。SCSI协议也是一种负责由SCSI设备之间通信相互达成契合的一个约定

SCSI-3协议架构是由ANSI认可和发布的X.3.270-1996号标准,由三层组成,物理层、传输层、命令层

物理层

以网络总的物理层相似,通过物理媒介进行连接,约定采用标准范围类的接口,SCSI-3接口,IEEE串行接口,光纤通道。

传输层

定义了设备间互连和信息共享的标准规则,保障计算机生成的SCSI指令都能够成功的传送到目标端。

命令层

也称为应用层。它包括了适用于所有设备的通用指令和某一指定类型的设备专用的初级指令。

iSCSI协议栈

iSCSI节点将SCSI指令(即,命令描述符块CDB)和数据封装成iSCSI包(即,协议数据单元PDU)后传送给TCP/IP层,再由TCP/IP协议将iSCSI包封装成IP协议数据,然后发送到以太网上进行传输。 通过SCSI控制卡的使用可以连接多个设备,形成自己的“网络”,但是这个“网络”仅局限于与所附加的主机进行通信,并不能在以太网上共享。那么,如果能够通过SCSI协议组成网络,并且能够直接挂载到以太网上,作为网络节点和其它设备进行互联共享,那么SCSI就可以得到更为广泛的应用。所以,经过对SCSI的改进,就推出了iSCSI这个协议。

SCSI

 

 ISCSI传输过程

SCSI

 

 

由于iSCSI的通信体系仍然继承了SCSI的部分特性,因此在iSCSI通信中,需要一个发起I/O请求的启动器(Initiator)和一个响应并执行实际I/O操作的目标器(Target)(重点)。 在Initiator和Target建立连接后,Target在操作中作为主设备控制整个工作过程: 发起端(Initiator):SCSI层负责生成命令描述符块CDB,将CDB传给iSCSI层,iSCSI层负责生成iSCSI协议数据单元PDU,并通过IP网络将PDU发给Target。发起端可以是软件Initiator驱动程序,硬件的TOE网卡,或者是iSCSI HBA卡。 目标器(Target):与发起端的处理流程相反,Target端点通过TCP/IP收到iSCSI PDU后,执行解封装操作,并将解封后的CDB传给SCSI层,SCSI层负责解释CDB的意义,必要时发送响应。目标器可以是磁盘阵列、服务网上硬盘或磁带库。

上一篇:ISCSI 块存储简介


下一篇:云计算产品专用名词解释