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

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详细规定了设备应支持的命名空间数量与设备可用容量之间的关系。具体来说:

  • 如果设备的可用容量小于或等于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的缩写,它的存在目的是用来给系统存放一些特殊的、需要进行访问授权的数据。

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

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

  • Crypo Erase: 擦除安全密匙;

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

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

相关推荐
Java中文社群1 分钟前
超实用!用FunctionCall实现快递AI助手
java·人工智能·后端
人猿泰飞5 分钟前
在Ubuntu-22.04.5中安装ONLYOFFICE DocSpace(协作空间)【注意:安装失败,谨慎参考!】
java·linux·运维·python·ubuntu·项目管理·onlyoffice
CAE虚拟与现实6 分钟前
修改wsl中发行版Ubuntu的主机名
linux·运维·ubuntu·wsl·wsl2·修改主机名
张焚雪9 分钟前
关于ResNet和FPN的一份介绍
人工智能·深度学习·神经网络·机器学习·cnn
开发小能手-roy9 分钟前
Ubuntu服务器性能调优指南:从基础工具到系统稳定性提升
linux·运维·服务器·ubuntu
爱喝奶茶的企鹅17 分钟前
Ethan独立开发产品日报 | 2025-04-16
人工智能·程序员·开源
潘yi.17 分钟前
Shell编程之正则表达式与文本处理器
linux·运维·正则表达式
涛涛讲AI24 分钟前
wkhtmltopdf 实现批量对网页转为图片的好工具,快速实现大量卡片制作
linux·服务器·windows·windows效率工具
OpenBayes贝式计算30 分钟前
教程上新丨媲美 o3-mini,开源代码推理模型 DeepCoder-14B-Preview 狂揽 3k stars
人工智能·开源·llm
破刺不会编程38 分钟前
什么是进程?
linux·运维·服务器