SCSI-2的标准与SCSI-3的标准并没有本质的区别,只是SCSI-3的标准进行了全面的重写,组织更加合理。
SCSI-3标准组成
从SCSI-3开始,SCSI的标准主要有5大部分:
- 架构模型(SCSI Standards Architecture) - 负责制定SCSI的整体基础架构模型;
- 连接器(Interconnects) - 底层的物理电气接口标准;
- 传输协议(Transport Protocols) - 建立在相应连接器上的传输协议标准;
- 主要命令集(Primary Command Sets) - 所有SCSI共有的命令标准;
- 特定命令集(Device-Type Specific Command Sets) - 针对特性类型设备的命令标准。
(来源:SAM-4第18页。)
现有的SCSI-3标准体系
(来源:http://www.t10.org/scsi-3.htm。)
SCSI基础架构
服务模型
- 分布式服务模型(SAM-6 The SCSI Distributed Service Model)
(来源:SAM-6第33页。)
- 客户端-服务器模型 (SAM-6 The SCSI Client-Server Model)
(来源:SAM-6第34页。)
连接模型
SCSI中对连接的标识主要有两种I_T(二元组)和I_T_L(三元组)两种。
- I_T和I_T_L 连接事务(SAM-6 I_T And I_T_L Nexus Transaction)
(来源:SAM-6第34页。)
- I_T和I_T_L 连接属性(SAM-6 I_T And I_T_L Nexus Attribute)
(来源:SAM-6第70页。)
SCSI标准中“保留”和“释放”命令的变迁
SCSI-2
在SCSI-2中,出现了6字节的“RESERVE”和“RELEASE”命令。
(来源:SCSI-2第204页。)
SCSI-3
- 从SBC-1和SPC-2开始,新增10字节的“RESERVE”和“RELEASE”命令,“PERSISTENT RESERVE IN”和“PERSISTENT RESERVE OUT”命令。
(来源:SBC-1第45页。)
且要求这二者有相同的功能:
(来源:SBC-1第29页。)
- 从SBC-2和SPC-3开始,所有的“RESERVE”和“RELEASE”命令均被废弃,PRs命令全面替代,功能更强。
(来源:sg_persist man手册。)
(来源:SBC-2第11页。)
(来源:SBC-2第31页。)
总结:在最新的版本中,我们应该使用PRs命令,而不是“RESERVE”和“RELEASE”命令。