Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 14776-412:2007(对应的加拿大采标编号为CAN CSA ISO/IEC 14776-412-07,IEC版本为IEC 14776-412-07)是SCSI架构模型的第四版,通常简称为SAM-4(SCSI Architecture Model – 4)。该标准由ISO/IEC JTC 1/SC 25(信息技术互连设备)制定,于2007年正式发布,目前仍是SCSI系列标准的核心基础文档之一。
适用范围:本标准定义了SCSI接口协议体系的通用架构模型,包括命令执行模型、任务管理机制、数据传输模型以及设备服务器与任务路由器的行为规范。它独立于具体的传输层协议,适用于所有基于SCSI命令集的传输协议,例如并行SCSI(SPI系列)、光纤通道协议(FCP)、iSCSI、串行连接SCSI(SAS)以及串行存储架构(SSA)等。任何实现SCSI启动器(Initiator)或目标器(Target)的系统,都应当遵循SAM-4中定义的架构约束,以确保互操作性。
SAM-4是SAM-3(ISO/IEC 14776-113:2002)的后继版本,并被SAM-5(ISO/IEC 14776-115:2014)所取代。但截至2026年,许多既有产品仍基于SAM-4或SAM-5,且SAM-4在兼容性设计上仍是参考基准。下表简要对比了各版本的核心变化:
| 版本 | 标准编号 | 发布年份 | 主要新增/改进 |
|---|---|---|---|
| SAM-3 | ISO/IEC 14776-113 | 2002 | 引入任务管理功能、命令队列模型规范化 |
| SAM-4 | ISO/IEC 14776-412 | 2007 | 新增Autonomous Sense、任务管理优先级细化、隐式命令排序(Implicit Ordering) |
| SAM-5 | ISO/IEC 14776-115 | 2014 | 逻辑单元并发访问增强、附加Sense数据扩展 |
SAM-4围绕SCSI架构的三个核心实体——设备服务器(Device Server)、任务路由器(Task Router)和应用客户端(Application Client)——定义了以下关键技术要素:
标准将物理或虚拟的SCSI设备细分为若干个逻辑单元(Logical Unit,LU),每个LU由唯一的逻辑单元号(LUN)标识。每个LU内部包含一个设备服务器,对外通过一个或多个传输端口(Port)与启动器通信。 SAM-4规定设备服务器必须处理来自不同启动器的命令并发,并维护任务集(Task Set)和任务队列的完整性。
SAM-4定义了完整的命令生命周期:从命令接收(CDB解析)到数据传送(Data Phase)、状态返回(Status Phase)以及可选的自发Sense通知。其中关键的状态机包括:
每个命令都关联一个任务属性(Task Attribute),用于控制队列中的顺序行为:
| 属性 | 描述 | 典型使用场景 |
|---|---|---|
| Simple(简单) | 按顺序执行,但允许某些优化 | 批量读写 |
| Ordered(有序) | 严格按接收顺序执行 | 日志刷新、屏障命令 |
| Head of Queue(队首) | 插到队列最前面 | 紧急控制命令 |
| ACA(自动控制警报) | 预留用于错误恢复序列 | 错误恢复流程 |
SAM-4进一步明确了任务管理请求(Task Management Function)的优先级与作用域。主要功能包括:
SAM-4创新性地引入了自主Sense(Autonomous Sense)能力。传统的SCSI协议中,Sense数据只有启动器明确请求时才会返回。SAM-4允许逻辑单元在检测到特定条件(如设备不可用、阈值告警)时主动向启动器发送Sense数据,无需启动器命令。这一机制显著提升了事件响应速度,尤其适用于高可用阵列和实时监控场景。
SAM-4被设计为向后兼容SAM-3。然而,对于使用了SAM-4特有特性(Autonomous Sense、新的任务管理行为)的启动器,需要相应的目标器支持。实施者在固件或驱动开发时应遵循如下建议:
命令队列的深度和排序策略直接影响存储性能。SAM-4允许使用“Implicit Command Ordering”(隐式排序),即启动器可以在命令描述块中暗示排序关系,减少显式的Ordered命令。实现时可以借此优化并发度,但必须确保不会违反数据依赖。例如:
验证SAM-4符合性需要覆盖以下场景:
建议采用SCSI一致性测试工具(如Canoon、UL扫描器)进行半自动化验证。
SAM-4是SCSI协议体系中至关重要的“伞式”架构标准,它不直接规定命令格式或传输协议,而是为其他具体标准提供一致的上下文。核心的依赖与配套标准包括:
因此,了解SAM-4是理解任何现代SCSI接口技术的基础。在存储行业,无论开发硬件控制器、驱动软件还是管理中间件,都必须参考本标准的架构定义。
更新至2026年。本文仅供参考,正式设计应参阅最新版标准全文。