一文掌握RDMA、NVMe和NVMe-oF
曾几何时,对于基础架构工程师而言,基于网络的存储器革新并不会构成真正的问题:因为网速很快,硬盘驱动器转速很慢。自然网络只要升级至 10Gb、40Gb 和 100Gb 以太网,满足存储系统的联网需求就绰绰有余了。
但现如今,随着超快固态硬盘 (SSD) 和高速非易失性内存 (Non-Volatile Memory Express, NVMe) 的问世,形势已全盘颠覆。存储团队现在拥有的设备速度非常快,不消片刻就能令网络达到饱和。
基于网络的存储器 (SAN) 使用基于架构的非易失性内存 (NVMe over Fabric, NVMe-oF) 这一技术,给网络带来了巨大的挑战。基础架构工程师需要仔细了解这种新一代存储器,理解它与前几代存储器的差异,以及这些存储器如何满足真正高速的存储器的性能需求。
下载链接:
NVMe存储基于SPDK加速I/O性能
1、面向分布式AI智能网卡低延迟Fabric技术.pdf
2、RDMA参数选择.pdf
3、RDMA技术白皮书(中文版).pdf
4、RDMA技术在数据中心中的应用研究.pdf
5、华为面向AI时代的智能无损数据中心网络.pdf
1、超融合数据中心网络智能运维方案.pdf
2、IPv6+系列电子书确定性IP网络.pdf
3、NoF+存储网络解决方案.pdf
4、超融合数据中心网络.pdf"
1、运营商智能云网解决方案.pdf
2、华为云园区网络生态合作白皮书.pdf
3、华为云园区网络智能运维技术白皮书.pdf
4、华为云园区网络自动化技术白皮书.pdf
何谓 NVMe?
NVMe的来源以及与SCSI的区别
原先存储系统的基础是硬盘驱动器 (HDD) 旋转介质,其中有磁盘和持续移动的磁头,这项技术历经 60 余年沉淀发展而成,直至最近才彻底改变。随着设备尺寸越来越小且速度越来越快,驱动器技术不断演变,存储器行业围绕驱动器控制器模型逐渐融合,这种控制器使用并行总线或串行总线(如串行连接 SCSI “SAS” 或串行 ATA “SATA”)连接到 HDD。这种广为人知的可互操作技术链始于磁盘驱动器,按顺序连接到总线、控制器再到计算机,形成了性能平衡,前提是磁盘驱动器工作方式与传统 HDD 相似。
而固态驱动器 (SSD) 的问世彻底打破了存储器世界的这种平衡。突然之间,磁盘驱动器可以提供媲美 RAM 的性能,时延极短且传输速率超过 20 Gbps。这类 SSD 驱动器以传统存储系统中 HDD 的完美替代品的身份,实现了第一次真正的商用部署。SSD 速度更快、时延更低、发热更少且功耗更低,并且无需对广泛部署的现有硬件进行重新设计。对于存储行业而言,这意味着双赢。
但将 SSD 直接插入现有存储系统有一个缺点:它无法充分发挥出底层技术的性能提升潜力。为了真正发挥 SSD 设备的全部潜力,我们需要重新审视存储系统连接到服务器的方式。存储器供应商几经尝试,为基于 SSD 的存储器专门设计了多种方法,其中直连 PCI Express (PCIe) 总线的设计在业内引发热议。在构建多项专属设备后,存储器和服务器行业于 2011 年联手打造出了 NVMe。
NVMe 是一种协议,而并非外形规格或接口规范。NVMe 不同于其他存储协议,因为它对 SSD 设备的处理方式不同于硬盘处理方式,而更接近于内存。NVMe 协议的设计从一开始就以搭配 PCIe 接口使用为目标,因此几乎直接连接到服务器的 CPU 和内存子系统。
在多核环境内,NVMe 甚至更高效,因为它允许每个核心独立与存储系统进行交互。随着 NVMe 内队列数量和深度的双双增加,多核 CPU 能够使 SSD 保持忙碌状态,因此连性能的内部瓶颈也荡然无存。NVMe 属于非统一内存体系结构 (NUMA) 感知协议,能够充分发挥新型 CPU 中的内存子系统设计的发展成果。总之,相比使用 SATA 或 SAS 的 SSD,具有 SSD 和 NVMe 协议的存储器能够显著提升每秒输入输出 (IOPS) 并大大降低时延。
从 SCSI 到 NVMe 的发展历程简介
SCSI
SCSI 将存储器作为设备来处理,这些设备包括磁带机、磁盘驱动器、扫描仪等。
需要支持 SCSI 的适配器将 CPU 的意图“翻译”为设备功能。
在主机与存储器之间创建一对一关系。
在单一队列模型中运行:单一队列中最多包含 64 条命令。
随后,机械硬盘演变为固态硬盘 (SSD) 或闪存:
闪存将 SCSI 的短板暴露无遗,因为闪存并不旋转,不需要等待“机械”操作。因此,单命令/单队列系统中不再有时延,也就是滞后时间。
不仅如此,闪存所需的命令数量也远少于 SCSI 所提供的命令数量。
最终结果就是,闪存可以视为与 PCIe RAM 类似。NVMe 也正是由此而来。
NVMe
NVMe 将存储器作为内存来处理。
CPU 可以在内部与内存进行通信:无需适配器。
在主机与目标之间创建多对多关系。
能够在多队列模型中运行:64000 个队列,每个队列最多 64000 条命令。
总之,可以说 NVMe能够将现代化 SSD 允许的并行度发挥到极致。因此 NVMe 能够减少 I/O 开销,将先前逻辑设备接口相关的性能提升落到实处,包括支持多个长命令队列和降低时延。
SCSI 和其他先前的接口协议是围绕搭配硬盘驱动器使用而开发的,这些硬盘驱动器速度远低于 NVMe,并且在请求和数据传输之间存在着冗长的延迟(相对于 CPU 操作),其数据速度远低于 RAM 速度,再加上磁盘旋转和寻道时间,从而引发了进一步优化的需求。
NVMe 的定义与规范
您可在 NVM Express 组织官网上找到高速非易失性内存的官方定义,这里摘抄一段:
NVM Express™ (NVMe™) 规范旨在定义主机软件与整个 PCI Express® (PCIe®) 总线上的非易失性内存进行通信的方式。它是适用于各种 PCIe 固态硬盘 (SSD) 的业界标准,这些 PCIe SSD 具有多种不同外形规格(U.2、M.2、AIC 和 EDSFF)。NVM Express 是由技术行业领导者组成的非营利性联盟,负责 NVMe 技术的定义、管理和市场推广。
光纤通道 (NVMe/FC):具有 Broadcom / Emulex 或 Marvell / Cavium / QLogic 主机总线适配器 (HBA) 等设备的 NVMe 发起方(主机)可以通过专属光纤通道 (FC) 架构或者基于以太网的光纤通道 (FCoE) 架构来访问 NVMe 目标。光纤通道传输通过 FCP Exchange 使用基于光纤通道协议的 NVMe (FC-NVMe),将 NVMe 的“控制平面”封装体(命令和响应)和“数据平面”数据消息映射到光纤通道帧。
TCP (NVMe/TCP):NVMe 主机和控制器以交换 NVMe/TCP 协议数据单元(NVMe/TCP H2C 和 C2H PDU)的方式,通过 TCP 进行通信。NVMe/TCP PDU 可用于传输 NVMe 的“控制平面”封装体(命令和响应)和“数据平面”数据。对于 NVMe/FC,这种数据传输“仅含消息”。
远程直接内存访问(InfiniBand 或以太网网络上支持的 NVMe/RDMA):RDMA 是主机卸载、主机旁路技术,支持包括存储器在内的应用程序与另一个应用程序的存储空间之间直接执行双向往来数据传输。支持 RDMA 的以太网 NIC (rNIC) 或者 InfiniBand 领域内的 HCA(不包括主机)均负责管理 NVMe 源与目标之间的可靠连接。凭借 RDMA,即可使用消息来传输 NVMe“控制平面”封装体(命令和响应),并使用存储器语义(如 RDMA 读/写操作)来传输“数据平面”(数据)。您必须将数据平面部分视为类似 PCIe 的直接内存操作。
推荐阅读:
文章链接:
https://aboutnetworks.net/nvme-and-nvmeof/
申明:感谢原创作者的辛勤付出。本号转载的文章均会在文中注明,若遇到版权问题请联系我们处理。
推荐阅读
1、全店内容持续更新,现下单“架构师技术全店资料打包汇总(全)”一起发送服务器基础知识全解(终极版)和存储系统基础知识全解 pdf及ppt版本,后续可享全店内容更新“免费”赠阅,价格仅收249元(原总价439元)。
2、随着电子书数量增加及内容更新,价格会随之增加,所以现在下单最划算,购买后续可享全店内容更新“免费”赠阅。
温馨提示:
扫描二维码关注公众号,点击阅读原文链接获取“架构师技术全店资料打包汇总(全)”电子书资料详情。
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。