当前位置: 首页 > news >正文

存储硬件与协议

存储硬件与协议

  • 存储设备的历史轨迹
  • 存储介质的进化
    • 3D NAND
    • 3D XPoint
    • Intel Optane
  • 存储接口协议的演变
    • NVMe
    • NVMe-oF
  • 网络存储技术
    • 1)DAS
    • 2)NAS
    • 3)SAN
    • 4)iSCSI
      • iSCSI层次结构

存储设备的历史轨迹

  • 1.穿孔卡
  • 2.磁带
  • 3.硬盘
  • 4.磁盘(软盘)
  • 5.CD/DVD
  • 6.U盘/移动硬盘
  • 7.固态硬盘

硬盘的两个重要性能参数是IOps和吞吐量。

存储介质的进化

3D NAND

NAND制程的升级都能将NAND存储密度提升到一个新的高度,容量提升、成本降低的同时可靠性及性能都在下降,因为工艺越先进,NAND的氧化层越薄,可靠性也越差
在这里插入图片描述

3D XPoint

3D XPoint的市场定位很清晰,就是一种比机械硬盘更高级的数据存储方案。3D XPoint的定位介于DRAM与3D NAND之间,它的速度与耐久性能够达到内存的水平,密度与非易失性则偏向3D NAND,成本也介于两者之间
在这里插入图片描述

3D XPoint摒弃了之前存储结构中的电容、晶体管设计,只保留内存单元(存数据的地方)、选择器和读/写总线。原有的“闲杂人等”(电容、晶体管)被统统“踢”走,腾出来的空间塞进了更多的内存单元,因此存储容量得到了大幅度的扩展

Intel Optane

英特尔基于3D XPoint技术分别开发出Optane Memory(傲腾内存)和Optane SSD(傲腾固态盘)

存储接口协议的演变

通信协议,则可以分为上层协议传输协议两个方面的演变
在这里插入图片描述
SATA接口最为原始,只支持SATA传输协议与AHCI上层协议。
M.2则能够兼容AHCI和NVMe两种上层协议,理论上一个M.2插槽既可以使用M.2 SATA传输协议的固态硬盘,也可以使用PCIe传输协议、NVMe上层协议的固态硬盘。M.2 SATA传输协议兼容性更好,而M.2 NVMe上层协议性能更佳

AHCI能够改善传统硬盘的性能,它设计之初面向的就是机械硬盘,针对的是高延迟的机械磁盘的优化。因此AHCI不能完全发挥固态硬盘的优势
因为非易失性存储是存储硬件的发展趋势,所以需要一种新的协议来突破AHCI的局限,于是NVMe顺势而生。

NVMe

NVMe或称NVMHCIS(Non-Volatile Memory Host Controller Interface Specification,非易失性存储主机控制器接口标准)最早是由英特尔公司于2007年提出的
固态硬盘产品已经通过NVMe来取代AHCI发挥出极高的性能优势。

更好的方式将固态硬盘连接到主机,而这正是NVMe的用武之地。
NVMe的主要特点:

  • PCIe:NVMe使用PCIe总线来提供更大的带宽和更低的延迟连接
  • 并行性:NVMe SSD在很大程度上实现了并行性,极大地提高了吞吐量
  • 限速:SATA和SAS连接有比较低的速度限制,对于SATA理论上最大传输速度为6.0Gbps

NVMe-oF

随着NVMe SSD的普及,本地的计算能力可能已经不能完全发挥固态硬盘的全部性能计算或软件成为了性能瓶颈

有两条途径:
一是减少软件的开销,因此出现了SPDK
二是将计算与存储分离,把固态硬盘放到单独设备里面,把存储独立出来供很多主机共享。但是计算和存储分离了以后,却带来了带宽和延迟上的挑战,而这就是NVMe-oF要解决的问题

NVMe-oF只 是 在 NVMe 协 议 中 的 NVMe Transport 部 分 进 行 了 扩 展 , 来 支 持
InfiniBand、以太网及光纤通道等

关于NVMe-oF,目前有两种类型的传输正在开发,使用RDMA的NVMe-oF 和 使 用 FC-NVMe 的 NVMe-oF 。 这 里 的 RDMA 包 括 了InfiniBand、RoCE(RDMA over Converged Ethernet)和iWARP(internet Wide Area RDMA Protocol),RDMA支持在不涉及处理器的情况下将数据传输到两台计算机的内存,并提供低延迟和快速的数据传输。从逻辑架构上看,与NVMe over PCIe相比,NVMe over RDMA在软件开销上的增加很小,可以近似地认为跨网络访问和本地访问的延迟几乎是一样的

网络存储技术

目前网络存储技术主要有DAS(Direct Attached Storage)、NAS、SAN、iSCSI**(Internet SCSI)**。
在这里插入图片描述

1)DAS

DAS是指通过SCSI接口或光纤通道将存储设备直接连接到一台服务器上。当服务器在地理上比较分散很难通过远程进行互联时,DAS是比较好的解决方案。对DAS来说,存储只能通过与之连接的主机进行访问,数据不能与其他主机共享。同时,DAS会占用CPU、I/O等服务器的操作系统资源,并且数据量越大,占用系统资源越严重。

2)NAS

NAS是指通过某一网络协议把多个存储设备和一群计算机相连接。NAS通过网络交换机连接存储系统和服务器,用户通过TCP/IP访问专门用于数据存储的私有网络,采用网络文件系统、HTTP、CIFS等标准的文件共享来实现文件级的数据共享。NAS为那些需要共享大量文件数据的企业提供了一个高效的、高可靠的、高性价比的解决方案。NAS的局限性在于,它会受到网络带宽和网络拥堵的影响。

3)SAN

SAN是一种独立于TCP/IP网络之外的专用存储网络,目前一般提供2~4Gb/s的传输速率。由于其基础是一个专用网络,SAN的扩展性很强,不管是在一个SAN系统中增加一定的存储空间,还是增加几台服务器都非常方便。SAN的维护成本高昂,需要投入很多硬件成本,如FC交换机。

4)iSCSI

SCSI最初是一种专门为小型计算机系统设计的I/O技术,SCSI通信模式
在这里插入图片描述

为了降低使用SAN的成本,可以利用普通的数据网络来传输SCSI数据,实现和SAN相似的功能,同时系统的灵活性也得到了提高。iSCSI就是这样一种技术,它利用普通的TCP/IP网络来传输SCSI数据块

iSCSI是IETF制定的一项标准,用于将SCSI数据块映射为以太网数据包。iSCSI将存储行业广泛应用的SCSI接口技术与IP技术相结合,简单来说,**iSCSI就是在IP网络上运行SCSI协议的一种网络存储技术。**一般来讲,就是在TCP/IP上传输SCSI命令,实现SCSI和TCP/IP的连接。

在iSCSI技术出现之后,SAN也出现了两种不同的实现方式,即光纤存储网络(FC SAN)和IP存储网络(IP SAN),我们通常所说的SAN指的就是FC SAN。相对FC SAN来说,IP SAN的成本要低很多,而且随着千兆网甚至万兆网的发展,iSCSI的速度相对SAN来说并没有太大的劣势。

iSCSI层次结构

SCSI层会建立**SCSI CDB(命令描述块)**并传给iSCSI层,iSCSI层对SCSI CDB进行封装,以便其能够在TCP/IP网络上进行传输,完成SCSI到TCP/IP的协议映射。
在这里插入图片描述

推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,立即学习

相关文章:

存储硬件与协议

存储硬件与协议存储设备的历史轨迹存储介质的进化3D NAND3D XPointIntel Optane存储接口协议的演变NVMeNVMe-oF网络存储技术1)DAS2)NAS3)SAN4)iSCSIiSCSI层次结构存储设备的历史轨迹 1.穿孔卡2.磁带3.硬盘4.磁盘(软盘…...

智能物流半导体发展

智能物流半导体在国内的发展,国内巨大的人口基数,这将会不断促进智慧物流的发展。智能物流在未来发展的潜力巨大。 关于触屏的设计是界面越简单,越清晰越好,最近设计一个小车控制触屏软件。把小车当前所在信息通过图像显示出来。…...

SAP S/4HANA 概述

智能企业业务技术平台Business Technology Platform提供数据管理和分析,并支持应用程序开发和集成。它还允许我们的客户使用人工智能、机器学习和物联网等智能技术来推动创新。业务网络Business network帮助客户实现跨公司业务流程的数字化。该网络建立在我们的采购…...

太上感应篇

太上感应篇原文 太上曰。祸福无门。惟人自召。善恶之报。如影随形。 是以天地有司过之神。依人所犯轻重。以夺人算。算减则贫耗。多逢忧患。人皆恶之。刑祸随之。吉庆避之。恶星灾之。算尽则死。 又有三台北斗神君。在人头上。录人罪恶。夺其纪算。又有三尸神。在人身中。每…...

FPGA入门系列17--task

文章简介 本系列文章主要针对FPGA初学者编写,包括FPGA的模块书写、基础语法、状态机、RAM、UART、SPI、VGA、以及功能验证等。将每一个知识点作为一个章节进行讲解,旨在更快速的提升初学者在FPGA开发方面的能力,每一个章节中都有针对性的代码…...

React学习笔记(番外二)——列表多选批量处理复合组件

React学习笔记(番外二)——列表多选批量操作复合组件前言〇、Show you the code一、 任务分析及拆解表头行的Checkbox——总开关记录行的Checkbox——行级开关二、 基础实现表头行的文件——header-row.js记录行的文件——record-row.js页面的文件App.js…...

Pom.xml详解

目录 1、Maven的下载安装 2、什么是pom? 3、较完整的pom元素 4、默认生成Maven工程的pom内容 5、自定义的属性变量 6、依赖管理 6.1、整体依赖关系列表 6.2、依赖关系的传递性 6.3、依赖传递可能造成的问题 6.3.1、scope依赖范围 6.3.2、依赖调节 6.3.3…...

浅谈软件测试需求管理

什么是需求管理? 需求管理,指对产品、系统或工程的开发需求的搜集、定义、分析、评审、整理、维护、追溯和复用等相关的管理工作和流程。通常特指应用程序或软件系统的研发需求。需求管理和配置管理、测试管理、缺陷管理、风险管理、变更管理等管理流程…...

面试题复盘

Vuex与本地存储的区别Vuex是一个专门为Vue.js应用程序开发的状态管理模式和库。它提供了一个中央存储库,用于存储应用程序的所有组件之间共享的状态【组件间通信的一种方法,一般用于中大型应用】。Vuex的主要目的是在Vue.js应用程序中管理复杂的状态逻辑…...

Telerik UI for WPF 2023 R1

Telerik UI for WPF 2023 R1 之 WPF 的 Telerik 用户界面,WPF 控件库开发人员信任,快速构建美观、高性能的 WPF 业务应用程序。现在支持 .NET 6 和 7.0。 概述部分背景图像 主要特征 现代专业主题图标,现代专业主题 通过各种受 Office、Wind…...

基于 CentOS7 的 KVM 部署 + 虚拟机创建

目录一、实验环境二、部署 KVM三、创建虚拟机四、远程管理 KVM 虚拟机FAQ一、实验环境 实验环境:VMware Workstation 16 Pro 打开虚拟机之前,首先开启 VMware Workstation Pro 16 上的硬件辅助虚拟化功能,如下图所示: 二、部署 …...

Python自动化测试实战篇(5)优化selenium+unittest+ddt,搞定100条测试用例只执行前50条

这些是之前的文章,里面有一些基础的知识点在前面由于前面已经有写过,所以这一篇就不再详细对之前的内容进行描述 Python自动化测试实战篇(1)读取xlsx中账户密码,unittest框架实现通过requests接口post登录网站请求&…...

C语言--数据的存储2

目录前言练习有符号类型与无符号类型char类型的取值范围有符号char无符号char有符号与无符号类型混合运算有符号无符号类型形成的bugchar类型取值范围应用浮点型在内存中的存储浮点数的存储浮点数存储规则浮点数取出规则前言 上篇文章我们讲解了数据类型,类型的基本…...

Ubuntu 安装 Qt5.7.0

下载 地址:https://download.qt.io/https://download.qt.io/ 文件夹说明: snapshots:预览版,该文件夹中包含最新的测试版本。 online:在线安装包。 official_releases:最终发布版。 new_archive&#…...

“世界”的伊利,“三难”的潘刚

(图片来源于网络,侵删) 来源 | 螳螂观察 文 | 叶小安 一棵草,一头牛,到一杯牛奶,乳品如何守住舌尖上的安全? 央视财经频道专访中,伊利集团董事长兼总裁潘自信满满地介绍了现代智…...

【新】华为OD机试 - 开心消消乐(Python)

开心消消乐 题目 给定一个 N 行 M 列的二维矩阵,矩阵中每个位置的数字取值为 0 或 1,矩阵示例如: 1 1 0 0 0 0 0 1 0 0 1 1 1 1 1 1现需要将矩阵中所有的 1 进行反转为 0,规则如下: 当点击一个 1 时,该 1 被反转为 0,同时相邻的上、下、左、右,以及左上、左下、右上…...

山东大学2022-2023数据仓库挖掘期末考题回忆

2023.2.14 一、 1.数据预处理的过程和解决问题 2.什么是离群点,检测离群点的四个方法 3.数据仓库的四个特点,画出数据仓库结构图 4.维度归约的两个方法及区别。 二、 两个模型用来预测新冠病毒的阳性和阴性 1.分别求准确率,精确率&#xff0c…...

SSM整合

SSM整合 ContextLoaderListener Spring提供了监听器ContextLoaderListener,实现ServletContextListener接口,可监听 ServletContext的状态,在web服务器的启动,读取Spring的配置文件,创建Spring的IOC容器。 web 应用中…...

Android平台版本所对应的 API 级别

平台版本API级别版本号备注Android 1333TIRAMISU平台亮点Android 1232S_V2平台亮点31S平台亮点Android 1130R平台亮点Android 1029Q平台亮点Android 928P平台亮点Android 8.127O_MR1平台亮点Android 8.026O平台亮点Android 7.1.1Android 7.125N_MR1平台亮点Android 7.024N平台亮…...

入职字节外包一个月,我离职了

有一种打工人的羡慕,叫做“大厂”。 真是年少不知大厂香,错把青春插稻秧。 但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂…...

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

回溯算法学习

一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)

目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 ​编辑​编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...

6.计算机网络核心知识点精要手册

计算机网络核心知识点精要手册 1.协议基础篇 网络协议三要素 语法:数据与控制信息的结构或格式,如同语言中的语法规则语义:控制信息的具体含义和响应方式,规定通信双方"说什么"同步:事件执行的顺序与时序…...

【Zephyr 系列 16】构建 BLE + LoRa 协同通信系统:网关转发与混合调度实战

🧠关键词:Zephyr、BLE、LoRa、混合通信、事件驱动、网关中继、低功耗调度 📌面向读者:希望将 BLE 和 LoRa 结合应用于资产追踪、环境监测、远程数据采集等场景的开发者 📊篇幅预计:5300+ 字 🧭 背景与需求 在许多 IoT 项目中,单一通信方式往往难以兼顾近场数据采集…...

OCC笔记:TDF_Label中有多个相同类型属性

注:OCCT版本:7.9.1 TDF_Label中有多个相同类型的属性的方案 OCAF imposes the restriction that only one attribute type may be allocated to one label. It is necessary to take into account the design of the application data tree. For exampl…...