OCP NVME SSD规范解读-3.NVMe管理命令-part1

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第1张图片

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第2张图片

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第3张图片

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第4张图片

4.4 NVMe Admin Command Set章节详细介绍了设备应支持的NVMe管理命令集,包括必需的和可选的命令。以下是一些关键要求和描述:

  1. NVMe-AD-2:识别命令除了支持所有必需的CNS值和相关的必需字段外,还应支持以下可选字段:

    • 格式进度指示器(FPI),更新粒度为1%。

    • I/O性能和耐久性提示:NSFEAT位4设置为1b。

  1. NVMe-AD-3和NVMe-AD-4:在一个NVMe设备中,可以创建多个命名空间,每个命名空间都有自己的LBA(逻辑块地址)范围、容量和其他特性,也就是nvme协议规定的multi-namespace。

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第5张图片

OCP详细规定了设备应支持的命名空间数量与设备可用容量之间的关系。具体来说:

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第6张图片

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第7张图片

  • 如果设备的可用容量小于或等于1TB,那么设备至少应支持16个命名空间。

  • 如果设备的可用容量大于1TB但小于或等于2TB,那么设备应支持至少32个命名空间。

  • 如果设备的可用容量大于2TB但小于或等于3TB,那么设备应支持至少48个命名空间。

  • 这种模式继续下去,每增加1TB的可用容量,所需的最小命名空间数量就会增加16个。

  • 当设备的可用容量大于7TB时,设备应支持至少128个命名空间。

  1. NVMe-AD-5和NVMe-AD-6:设备应支持格式NVM命令,并支持安全擦除设置值000b、001b和010b。

  2. NVMe-AD-7:设备应支持Sanitize命令,并支持Block Erase(010b)、Overwrite(011b)和Crypto Erase(100b)sanitize操作。从NVMe Spec 1.3开始,对数据安全方面增加了一个“Sanitize”功能

Sanitize清除的数据很彻底,对FTL映射表、User Data(包括已经写入NAND和仍在cache里的)、Meta Data、安全密匙、CMB中SQ/CQ相关信息、可能含有用户数据的log等等会全部清除。不过,sanitize操作不会改变RPMB、boot分区、不包含用户数据的cache等内容。

RPMB是Replay Protected Memory Block的缩写,它的存在目的是用来给系统存放一些特殊的、需要进行访问授权的数据。

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第8张图片

NVMe Spec中定义了三种Sanitize类型:Block Erase, Crypto Erase和Overwirte.

  • Block Erase:采用block级别清除所有的用户数据;

  • Crypo Erase: 擦除安全密匙;

  • Overwrite: 用特定的pattern数据覆盖用户数据。不过这个对NAND-based SSD不提倡,因为会降低NAND的使用寿命。

OCP NVME SSD规范解读-3.NVMe管理命令-part1_第9张图片

一旦启动了Sanitize操作,是不能中断的,除非fail了。即使power cycle或者controller level reset之后,santize会继续执行。

你可能感兴趣的:(OCP,linux,服务器,人工智能)