NVMe协议中对NVMe SSD进行管理的Admin Command Set

电子说

1.3w人已加入

描述

在NVMe协议中,专门定义了一套Admin Command Set用于对NVMe SSD进行管理,但这套管理命令集走的是带内通道,整个带内通道打通需要主机和盘两边的硬件与软件共同配合完成,任意一个环节出问题都可能导致此路不通,这套管理命令集也就成了摆设。而不管是AIC或者U.2的盘,硬件接口上都保留了SMBus管脚,这样主机和盘之间就能通过带外通道进行通信,因此通过带外通道对盘进行一些基本管理是一个非常好的选择,既不需要带内通道那么复杂的依赖关系,又能和数据业务分离。

随着NVMe SSD的发展至今,当前NVMe SSD的带外管理总共有4种机制,在《Enterprise SSD Form Factor》和《NVM Express Management Interface》里面定义。

1)VPD

每个盘都有一个FRU信息设备用来保存盘的基本信息,普遍是一个eeprom器件,器件里面保存的信息就是VPD(Vital Product Data),在不同规范里面信息定义的格式不一样,但里面主要都是盘的厂商信息,SN和MN这些出厂信息。NVMe-MI协议VPD格式遵循IPMI平台管理FRU信息存储定义,推荐使用NVMe-MI协议定义的格式。

SSD

 图一:《Enterprise SSD Form Factor》VPD 格式定义

SSD

图二:NVMe-MI协议VPD格式定义

2)温度传感器

主机可通过带外从传感器直接获取盘的温度信息,用于辅助主机管理,主要是防止高温对盘造成故障。

3)NVMe Basic Management Command

这个方式是主机作为master,盘作为slave进行数据交互完成的。首先主机给盘下发一个CmdOpcode,然后再向盘发起SMBus Read,盘收到读请求后根据协议定义按照Opcode返回数据给主机。这种方式最大支持256个字节的数据,协议定义了前32字节,主要包括critical warning,temperature,PDLU,SN这些信息。后面字节用于厂商自定义,但扩展性依旧比较差,在最新的NVMe-MI协议中也明确不推荐该方式,建议舍弃。

4)NVMe MI Command

为了大一统带外管理,协议标准制定者们基于MCTP协议定义了一套完整的带外管理协议,即NVMe-MI协议。NVMe-MI协议定义了一套类似于NVMe命令集的管理接口命令,功能更全,扩展性强,甚至还可以模拟发送NVMe Admin Cmd和PCIe Cmd。

SSD

 图三:NVMe-MI协议管理接口命令集

根据NVMe SSD的发展趋势来看,NVMe-MI协议将会逐步成为NVMe SSD带外管理的标准。能够给主机端提供更多样,更可靠的管理机制,尤其适用于服务器厂商的BMC硬盘管理。

Dapustor的Haishen 系列NVMe SSD对于前述4种带外管理机制已经全部支持,能在各大服务器厂商的BMC服务器上完美显示。

 

 

原文标题:NVMe SSD 带外管理

文章出处:【微信公众号:大普微】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • SSD

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分