端到端NVMe?| NVMe-OF或FC-NVMe

news2024/11/25 11:02:29

声明

主页:元存储的博客_CSDN博客

依公开知识及经验整理,如有误请留言。

个人辛苦整理,付费内容,禁止转载


内容摘要

前言

NVMe全称是Nonvolatile Memory Express(非易失性内存标准),在它首次投放市场的时候,许多人认为它只是一个新的、速度更快的SSD。但实际上,NVMe是一种基于性能并从头开始创建新存储协议,它可以使我们能够充分利用SSD和存储类内存(SCM)的速度。


1 概念

什么是端到端NVMe?

当时的全闪存阵列大部分是在存储后端支持NVMe SSD,当时的全闪存阵列控制器架构也是为了适应机械硬盘而设计的,而在使用NVMe SSD时,这种控制器就成为了阻碍,为此,阵列控制器以及存储网络协议必须不断发展。

而NVMe over Fabrics(简称NVMe-OF)的出现,就是将NVMe应用到前端,作为存储阵列与前端主机连接的通道,取代过去的FC、iSCSI。由此,主机可以使用本机NVMe协议直接与NVMe SSD

通信,从而大幅降低了延迟。

NVMe-oF传输类型

对于NVMe-oF,传输类型有3种选择,分别是使用光纤通道的NVMe-oF、TCP的NVMe-oF和使用RDMA的NVMe-oF。

Fibre Channel

在光纤通道(FC)上使用NVMe的组合通常被称为FC-NVMe、NVMe over FC,有时也称为NVMe/FC。光纤通道是存储阵列和服务器之间传输数据的强大协议,大多数SAN存储系统都使用它。在FC-NVMe中,SCSI命令被封装在FC帧内。它基于标准的FC规则,与支持访问共享NVMe闪存的标准FC协议相匹配。

TCP

这种传输类型是NVMe-oF的最新发展之一。NVMe over TCP(传输控制协议)使用NVMe-oF和TCP传输协议在IP(以太网)网络上传输数据。NVMe通过以太网作为物理传输,在TCP数据报内进行传输。

尽管有RDMA和光纤通道,TCP提供了一个可能更便宜和更灵活的选择。此外,与同样使用以太网的RoCE相比,NVMe/TCP的表现更像FC-NVMe,因为它们在I/O中使用了消息语义。

RDMA

该规范采用远程直接内存访问(RDMA),使数据和内存能够在计算机和存储设备之间跨网络传输。RDMA是一种在网络中两台计算机的主存储器之间交换信息的方式,不涉及任何一台计算机的处理器、缓存或操作系统。由于RDMA避开了操作系统,因此它通常是网络传输数据的最快、开销最低的机制。

RDMA上的NVMe-oF使用TCP传输协议在IP网络上传输数据,典型的RDMA实现包括虚拟接口架构、聚合以太网上的RDMA(RoCE)、InfiniBand、Omni-Path和iWARP。RoCE、InfiniBand和iWARP是目前使用最多的。

将NVMe-oF与RDMA、光纤通道或TCP一起使用,就可以形成一个完整的端到端NVMe存储解决方案。这些解决方案提供了显著的高性能,同时保持了通过NVMe提供的极低延迟。

今天,NVMe由于其低延迟和高吞吐量的多任务处理速度而变得越来越受欢迎。虽然NVMe也用于个人计算机中以改进视频编辑,游戏和其他解决方案,但通过NVMe-oF在企业中可以看到真正的好处,特别是在分秒必争的企业场景。如实时客户互动,人工智能 (AI)、机器学习 (ML)、大数据和高级分析应用开发运营等。处理和访问数据的速度越快,对业务就越能带来价值。


 

参考

[1] https://baijiahao.baidu.com/s

免责声明

本文根据公开信息整理,旨在介绍更多的存储知识,所载文章仅为作者观点,不构成投资或商用建议。本文仅用于学习交流, 不允许商用。若有疑问或有侵权行为请联系作者处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/476129.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

( 字符串) 647. 回文子串 ——【Leetcode每日一题】

❓647. 回文子串 难度:中等 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使…

JSP 的本质原理解析:“编写的时候是JSP,心里想解读的是 java 源码“

JSP 的本质原理解析:“编写的时候是JSP,心里想解读的是 java 源码” 文章目录 JSP 的本质原理解析:"编写的时候是JSP,心里想解读的是 java 源码"每博一文案1. JSP 概述2. 第一个 JSP 程序3. JSP 的本质就是 Servlet4. J…

appium的手动安装步骤教程及appium-doctor报错解决集合

前言 相信你不少软件测试行业小伙伴应该在用npm安装appium或者是cpm安装appium途中也碰到下面一些报错吧,接下来Darren洋教你改为手动安装appium吧!整理不易,请点赞加关注后查看。 一、安装Node.js 下载地址: Previous Releases …

【五一创作】某头条参数破解并实现界面化搭建

某条参数破解并实现界面化搭建 前言效果展示难点参数逆向破解_signatureac_signatures_v_web_id 界面化实现总结 前言 趁着日常闲余时间,想着搞一搞某条的反爬,练练手,想到自己很久没开发过前端界面了,有点生疏,也趁此…

PCL学习二:PCL基础应用教程

参考引用 PCL Basic UsagePCL 点云库官网教程 1. pcl_viewer 基本使用 1.1 pcl_viewer 安装测试 pcl_data 源码克隆$ git clone https://github.com/PointCloudLibrary/data.git进入 /pcl_data/tutorials(如下图)$ cd ~/pcl_data/tutorials # 此处为重…

IDEA常用提升效率的操作小记

IDEA目前是使用最广泛的Java开发工具之一了,虽然是收费的,但是也提供了免费的社区版,并且收费版也支持使用github的开源项目,使用免费license,虽然每年都要续,我用的就是开源项目申请的免费license。 开发…

【Pytorch基础教程39】torch常用tensor处理函数

note 文章目录 note一、tensor的创建二、tensor的加减乘除三、torch.argmax()函数四、gathter函数小栗子1小栗子2:如果每行需要索引多个元素: 四、针对某一维度的操作五、改变维度、拼接、堆叠等操作Reference 一、tensor的创建 torch.tensor会复制data…

STM32配置ADC2(DMA)进行采集 DAC 输出-2

0.一定要先看上一节:STM32配置ADC2(DMA)进行采集 DAC 输出-2 1.实验目标 在上一节的基础上,我们把 DAC(三角波)给集成进来,实现按下按键输出三角波,通过串口发送数据给电脑&#x…

Apache Zeppelin系列教程第二篇——整体架构

Zeppelin 架构: 首先我们来了解下 Zeppelin的架构, Zeppelin 主要分3层。 Web前端 Zeppelin Server Interpreter Zeppelin前端负责前端页面的交互,通过Rest API 和WebSocket的方式与Zeppelin Server进行交互。 Zeppelin Server是一个Web server&…

【python 基础语法一】注释,变量与运算符

一、注释 注释: 就是对代码的解释,方便阅读,被注释的代码不执行 分类 单行注释 # 1.单行注释 以#号开头 ,右边的所有东西都被当做说明文字 ,程序不进行编译运行。 print(hello world)多行注释 # 2.多行注释 三个单引号 或…

Sentinel源码分析学习

文章目录 前言Sentinel源码分析1.Sentinel的基本概念1.1.ProcessorSlotChain1.2.Node1.3.Entry1.3.1.自定义资源1.3.2.基于注解标记资源 1.4.Context1.4.1.什么是Context1.4.2.Context的初始化1.4.2.1.自动装配1.4.2.2.AbstractSentinelInterceptor1.4.2.3.ContextUtil 2.Proce…

django显示echart图表:柱状图、折线图、饼图、地图、词云

django显示echart图表 效果: 示例demo 点我查看 1、urls.py 其中关键代码: urlpatterns = [path("book_chart/", views.book_chart, name="book_cha

LINUX压缩和解压和磁盘管理与维护命令

文章目录 一、压缩和解压命令二、磁盘管理与维护命令总结 一、压缩和解压命令 Linux zip命令:压缩文件或目录 Linux unzip命令:解压文件或目录 Linux tar命令:归档工具 二、磁盘管理与维护命令 Linux df命令:显示磁盘空间使用情况 Linux mount命令:挂载文件系统 Linux quota命…

APK文件结构

文件结构 assets文件用来存放需要打包到Android 应用程序的静态资源文件,例如图片资源文件,JSON配置文件,渠道配置文件,二进制数据文件,HTML5离线资源文件等 与res/raw目录不同的数,assets目录支持任意深度…

数位dp。

一,思想: 在处理1e9甚至1e18,1e100的问题时,因为在统计情况下有很多重复的计算,数位dp实现了相同状态只计算一次,从而大幅减少运算时间,思想就是对每一位进行dp,计算时记忆化每一位可以有的状态…

HashMap机制

反思 HashMap之前只是面试时会看下面试题,但实际从没有撸过源码,对于工作多年的菜鸟来说,对技术不尊重,整理了篇文档,记忆加深一下 原理 假如让我们来设计HashMap实现,我们如何设计一个key->value键值…

4.7排序(C语言)

1.八大排序 加一个计数排序(时间复杂度为O(n), 空间复杂度为O(max(n, range),非比较排序)。 2.希尔排序 3.三个O(n^2)的排序的比较 4.归并排序和快速排序 非递归: 5.排序比较 注意: 下面4种高效排序中&…

【Git】篇一

文章目录 一、Git概述1、版本控制器的方式2、Git的工作流程图 二、Git的安装与常用命令1、Git环境安装2、Git环境基本配置3、获取本地仓库4、基础操作指令 三、分支 一、Git概述 开发中,代码备份、代码还原回滚、追溯、协同开发等场景必不可少,由此&…

特征可视化技术(CAM)

https://zhuanlan.zhihu.com/p/269702192 CAM技术可以帮助我们理解CNN在图像中寻找目标对象的过程,并且可以用于可视化CNN的中间层特征,以及对图像分类结果的解释和可视化。CAM技术的实现比较简单,可以使用常用的深度学习框架如PyTorch和Te…