2025/12/31 11:46:50
网站建设
项目流程
ui网站推荐,常州网站建设费用,天津市建设工程管理信息网,网站开发常用字体目录 第2章 IO大法——走进计算机IO世界
开篇#xff1a;数据的高速公路系统
2.1 IO的通路——总线#xff1a;计算机的血管网络
2.1.1 总线的本质#xff1a;共享的通信通道
2.1.2 总线的三层结构#xff1a;道路、交规与乘客
1. 物理层#xff1a;道路本身
2. 协议…目录第2章 IO大法——走进计算机IO世界开篇数据的高速公路系统2.1 IO的通路——总线计算机的血管网络2.1.1 总线的本质共享的通信通道2.1.2 总线的三层结构道路、交规与乘客1. 物理层道路本身2. 协议层交通规则3. 电气层车辆与动力2.1.3 计算机中的总线层级从毛细血管到主动脉层级详解2.1.4 总线技术的两大流派并行与串行并行总线人海战术串行总线精兵策略2.1.5 总线的仲裁红绿灯与交警1. 集中式仲裁——单一调度中心2. 分布式仲裁——民主协商3. 时分复用——固定时刻表4. 现代方案PCIe的交换架构2.1.6 总线的拓扑道路网形状共享总线型旧式星型/交换型现代树型/层次型复杂系统2.1.7 总线性能的关键指标带宽车流量延迟快递时间并发度同时处理的快递数2.1.8 现实案例你的游戏加载过程的总线之旅2.2 计算机内部通信2.2.1 IO总线是否可以看作网络2.2.2 CPU、内存和磁盘之间通过网络来通信第一层网络芯片内部的片上网络NoC第二层网络CPU与内存的协议栈第三层网络CPU与磁盘的SCSI协议栈2.3 网中之网存储的七层网络模型层次1应用网络层次2块存储网络层次3存储内部网络层次4芯片间网络层次5芯片内网络现实例子云盘文件访问的七层穿透2.3.1 存储网络的特殊挑战挑战一极低延迟要求挑战二极高可靠性挑战三顺序与一致性挑战四带宽与并发2.3.2 现代趋势全网络化存储栈NVMe-oF存储网络的终极进化智能网卡SmartNIC与DPU2.3.3 存储网络的拓扑演进第一阶段点对点直连第二阶段共享仲裁环第三阶段交换网络第四阶段网状网络第五阶段可编程网络2.3.4 存储网络协议大观1. 基于块的网络存储协议2. 基于文件的网络存储协议3. 基于对象的存储协议2.3.5 存储网络性能的数学带宽需求计算延迟的级联效应2.3.6 存储网络的安全考虑物理隔离时代逻辑隔离时代零信任时代2.3.7 存储网络的监控与排错关键监控指标排错工具箱典型问题与解决2.3.8 未来展望存储网络的终极形态愿景一全融合网络愿景二可编程数据平面愿景三存储与计算的深度融合愿景四全域存储网络本章结语从导线到智能网络第2章 IO大法——走进计算机IO世界开篇数据的高速公路系统想象一下你站在一个巨型物流枢纽的指挥塔上。下面有无数的包裹数据需要运送有些包裹要跨越大洋从硬盘到CPU有些只是隔壁仓库的调货从内存到CPU有些需要紧急加急显卡渲染数据有些可以慢慢排队文档保存这个物流系统如何不堵车如何确保每个包裹准时到达如何让加急包裹优先通过欢迎来到计算机的IOInput/Output输入/输出世界。这一章我们将化身交通规划师从纳米级的芯片内部到跨越全球的数据中心网络全面解密数据如何飞驰。2.1 IO的通路——总线计算机的血管网络2.1.1 总线的本质共享的通信通道一个生动的比喻办公室里的对话方式假设一个10人办公室需要互相传递消息方案A点对点专线每两人之间拉一根电话线10个人需要10×(10-1)/2 45根线优点私密可同时通话缺点布线复杂成本高方案B会议室广播所有人到会议室轮流发言只需一个共享空间优点布线简单缺点一次只能一人发言效率低方案C交换式电话系统每人一部电话通过总机连接可建立临时专线多对同时通话现代计算机采用的方式总线Bus就是方案B的电子版一条共享的物理通道所有设备连接在上面分时复用。2.1.2 总线的三层结构道路、交规与乘客任何总线都包含三个要素1. 物理层道路本身导线铜线或电路板走线宽度并行总线的“车道数”早期的ISA总线8条数据线8车道PCI总线32条数据线32车道内部总线可达512车道速度限制时钟频率好比道路的“最高时速”33MHz 每秒3300万次数据传输机会100MHz 1亿次机会2. 协议层交通规则寻址规则如何指定包裹送给谁内存地址0x0000 到 0xFFFF...IO端口号0x00 到 0xFF...仲裁机制谁先使用道路固定优先级CPU永远优先轮询每个设备轮流竞争式谁先申请谁用数据格式包裹如何包装起始标志 地址 数据 校验码 结束标志就像信封收件人信纸封条邮戳3. 电气层车辆与动力电压水平什么算“1”什么算“0”TTL电平5V10V0LVDS差分信号更抗干扰驱动能力信号能传多远芯片内部毫米级直接驱动主板总线厘米级需要增强外部电缆米级需要特殊驱动电路2.1.3 计算机中的总线层级从毛细血管到主动脉现代计算机不是一根总线通天下而是多层总线 hierarchy[CPU内部]|[L1/L2缓存总线] -- 最快私密道路仅CPU核心与缓存使用|[前端总线(FSB)或系统总线] -- 连接CPU与内存控制器高速公路|[内存总线] -- 专用连接内存|[芯片组内部总线]├── [PCIe总线] -- 连接显卡、高速设备├── [SATA总线] -- 连接硬盘、光驱├── [USB总线] -- 连接外设└── [传统总线] -- 连接低速设备层级详解第一层CPU内部总线——纳米级的神经束位置在CPU芯片内部宽度可达512位512条数据线并行速度与CPU核心同频可达5GHz距离几毫米比喻大脑神经元之间的连接以光速思维第二层内存总线——数据的高速专线技术演进SDRAM1993与系统总线同步DDR2000时钟上下沿都传输效率翻倍DDR52020速度达6400MHz带宽51.2GB/s关键设计双通道/四通道相当于并行的多条高速公路带宽计算频率×位宽÷8DDR4-3200双通道128位3200MHz×128bit÷8 51.2GB/s第三层扩展总线——设备的共享道路PCIe的革命2004年取代PCI/AGP串行代替并行看似退步实为飞跃点对点交换不再是共享总线而是每个设备有专用通道通道可聚合x1、x4、x8、x16PCIe 4.0 x1632GB/s双向相当于32车道高速公路2.1.4 总线技术的两大流派并行与串行并行总线人海战术原理多位数据同时发送每人拿一面旗子同时挥舞巅峰代表并行ATAPATA即IDE16条数据线同时传输理论快但遇到瓶颈时钟歪斜16条线的信号无法完全同步到达互相干扰线间电磁干扰插拔困难40/80针宽排线极限约133MB/sATA-7标准串行总线精兵策略原理一位一位发送但速度极快优势时钟歪斜问题消失干扰小线缆简单SATA只有7针秘诀高频率从1.5Gb/s到24Gb/sSATA到SAS-4编码效率8b/10b编码每8位数据用10位传输多通道聚合PCIe x4相当于4条串行通道并行有趣的对比并行像一队人并排走路步子要一致速度受最慢者限制串行像一个人百米冲刺虽然只有一人但速度极快2.1.5 总线的仲裁红绿灯与交警当多个设备都要用总线时谁先谁后仲裁机制大观1. 集中式仲裁——单一调度中心一个中央仲裁器通常在芯片组设备申请-仲裁器批准-使用总线优点调度简单缺点单点瓶颈2. 分布式仲裁——民主协商每个设备都有仲裁逻辑基于优先级竞争如PCI总线每个设备检查总线是否空闲按优先级使用3. 时分复用——固定时刻表每个设备分配固定时间片类似TDMA时分多址保证实时性但效率可能不高4. 现代方案PCIe的交换架构根本不是共享总线每个设备有专用通道交换机负责路由从根本上消除冲突2.1.6 总线的拓扑道路网形状共享总线型旧式CPU|[总线]/ | \内存 显卡 硬盘星型/交换型现代CPU|[内存控制器]|[芯片组/PCIe交换机]/ | \显卡 SSD 网卡中心交换点对点连接典型PCIe、SATA树型/层次型复杂系统CPU0 CPU1| |[快速互连总线]|[芯片组]/ | \内存通道0 PCIe根 其他2.1.7 总线性能的关键指标带宽车流量理论带宽频率 × 位宽DDR4-3200 双通道51.2GB/sPCIe 4.0 x1631.5GB/s单向有效带宽实际能用的部分通常为理论的60-80%开销、协议、争用延迟快递时间访问延迟从请求到开始接收的时间内存约100纳秒PCIe设备几百纳秒到微秒影响因素协议开销封装/解封装仲裁等待物理距离光速限制1米3.3纳秒并发度同时处理的快递数现代总线支持多个未完成请求PCIe的标签机制最多256个并发传输2.1.8 现实案例你的游戏加载过程的总线之旅当你启动《赛博朋克2077》时CPU从SSD读取数据CPU - 芯片组 - PCIe交换机 - NVMe SSD请求读取游戏文件第10000-20000块路径CPU发出PCIe TLP事务层包2. SSD返回数据SSD - PCIe交换机 - 芯片组 - 内存控制器 - 内存数据被DMA直接写入内存不经过CPU3. CPU处理数据CPU - 内存控制器 - 内存读取刚加载的数据4.传输到显卡内存 - 内存控制器 - CPU - PCIe - 显卡显存纹理、模型数据传输多总线并行工作SATA总线加载背景音乐USB总线读取手柄输入内存总线CPU与内存疯狂交换PCIe总线显卡与CPU通信关键洞察现代游戏是总线压力测试所有总线几乎满负荷。2.2 计算机内部通信2.2.1 IO总线是否可以看作网络答案完全可以而且越来越像。让我们对比特征传统总线现代总线计算机网络拓扑共享线路点对点交换交换网络寻址物理地址逻辑地址路由IP地址路由数据单元原始数据带头部的数据包数据包错误处理简单校验CRC重传等TCP重传等流控无或简单信用制等滑动窗口等PCIe就是芯片内部的以太网TLP事务层包 IP包路由 基于ID的路由表交换 多端口交换机流控 基于信用的流量控制关键区别网络米到千米距离毫秒级延迟总线毫米到厘米距离纳秒到微秒延迟但协议思想高度相似2.2.2 CPU、内存和磁盘之间通过网络来通信第一层网络芯片内部的片上网络NoC现代多核CPU内部已经不是简单总线而是微型互联网AMD Zen架构示例[核心0]---[L3缓存片]---[核心1]| | |[内存控制器] [PCIe控制器] [其他]| |[Infinity Fabric] -- AMD的片上网络Infinity Fabric的特点基于数据包的通信可扩展拓扑服务质量QoS支持本质是微型的计算机网络第二层网络CPU与内存的协议栈DDR内存访问不是简单读写CPU层生成内存请求虚拟地址↓MMU层虚拟地址-物理地址转换↓内存控制器生成具体命令- 激活ACT特定行- 读取RD或写入WR特定列- 预充电PRE关闭行↓DDR总线传输命令和地址↓内存颗粒执行操作返回数据这就像CPU客户下单要某本书内存控制器图书馆管理员内存颗粒书架系统过程找到对应书架激活行-取第几本读列-放回原处预充电第三层网络CPU与磁盘的SCSI协议栈一个SATA读请求的旅程应用层请求读取文件块↓文件系统转换为逻辑块地址(LBA)↓SATA驱动封装为FIS帧信息结构↓SATA链路层编码为8b/10b加入CRC↓物理层串行差分信号传输↓硬盘控制器解码执行寻道读取↓返回数据反向过程封装嵌套[文件数据]↓包在[文件系统元数据]↓包在[SATA FIS结构]↓包在[8b/10b编码流]↓转换为[差分电信号]就像快递物品数据放入小盒文件系统信息放入快递袋SATA FIS贴上运单CRC校验装上卡车电信号传输2.3 网中之网存储的七层网络模型存储通信事实上是多重网络嵌套层次1应用网络用户通过NFS/SMB访问文件协议TCP/IP over 以太网这是用户感知的网络层次2块存储网络服务器通过iSCSI/FC访问块设备协议SCSI over TCP/IP或FC这是操作系统感知的网络层次3存储内部网络存储控制器与硬盘柜通信协议SAS、FC-AL、SATA这是存储设备内部的网络层次4芯片间网络多控制器之间同步缓存协议InfiniBand、专用互连这是存储控制器的内部网络层次5芯片内网络SoC内部模块通信总线或NoC片上网络这是芯片级别的网络现实例子云盘文件访问的七层穿透你在北京访问广州云盘里的文档你的电脑北京 --HTTP over TCP/IP over 以太网-- 腾讯网关↓腾讯网关 --内部RPC over TCP/IP-- 广州数据中心负载均衡↓负载均衡 --iSCSI over TCP/IP over 以太网-- 存储服务器↓存储服务器 --SAS over 铜缆-- 硬盘扩展柜↓硬盘柜 --SATA over PCB走线-- 具体硬盘↓硬盘内部 --ATA over 内部总线-- 缓存芯片↓缓存芯片 --内部总线-- 磁头/闪存控制器每一层都有自己的寻址方案自己的错误检测自己的流量控制自己的安全机制2.3.1 存储网络的特殊挑战挑战一极低延迟要求网络ping1ms可接受内存访问100ns是网络延迟的10,000分之一解决方案专用协议如FC、内核旁路RDMA挑战二极高可靠性网页加载失败刷新即可存储写入失败可能丢数据解决方案端到端校验、原子操作、持久化日志挑战三顺序与一致性网络数据包可以乱序到达TCP会重排存储写入必须保持顺序文件系统依赖解决方案屏障指令、写入顺序保证挑战四带宽与并发4K视频流100Mb/s全闪存阵列40Gb/s400倍解决方案多路径、链路聚合、NVMe-oF2.3.2 现代趋势全网络化存储栈NVMe-oF存储网络的终极进化NVMe over Fabrics将PCIe总线协议扩展到网络直接通过网络访问SSD绕过所有中间层传统 vs NVMe-oF传统应用-文件系统-SCSI层-HBA驱动-FC网络-存储-RAID-SCSI-硬盘NVMe-oF应用-文件系统-NVMe驱动-以太网/RDMA-存储-NVMe SSD延迟对比传统SAN100-500微秒NVMe-oF over RDMA10-20微秒接近本地SSD的延迟智能网卡SmartNIC与DPU卸载存储协议处理CPU不再参与网络存储协议栈网卡直接与SSD对话效果CPU节省30-50%的存储相关开销延迟降低减少上下文切换吞吐提升专用硬件处理2.3.3 存储网络的拓扑演进第一阶段点对点直连服务器 --- 存储DAS直连存储简单但扩展性差第二阶段共享仲裁环服务器1|服务器2 --- FC仲裁环 --- 存储1| |服务器3 存储2FC-AL光纤通道仲裁环共享带宽类似令牌环网第三阶段交换网络[FC交换机]/ | \服务器1 服务器2 存储全交换点对点专用带宽现代SAN标准拓扑第四阶段网状网络服务器1 服务器2| \ / || \ / || 存储1 || / \ |存储2 存储3多路径高可用超融合基础架构第五阶段可编程网络服务器 -- [可编程交换机] -- 存储/ | \防火墙 负载均衡 加密交换机可运行存储逻辑存储感知网络2.3.4 存储网络协议大观1. 基于块的网络存储协议Fibre Channel (FC)专为存储设计低延迟8G/16G/32G速率专用硬件HBA卡、交换机iSCSISCSI over TCP/IP使用标准以太网成本低管理简单NVMe-oF下一代标准over RDMARoCEv2, iWARPover TCP正在标准化FCoEFC over 以太网融合网络尝试市场接受度有限2. 基于文件的网络存储协议NFS网络文件系统Unix/Linux标准v3无状态简单v4有状态支持锁、委托等SMB/CIFSWindows标准域集成好适合Windows环境pNFS并行NFSNFSv4.1扩展客户端直连存储设备绕过元数据服务器3. 基于对象的存储协议S3亚马逊Simple Storage Service协议RESTful HTTP接口键值存储无限扩展SwiftOpenStack对象存储协议类似S3开源实现2.3.5 存储网络性能的数学带宽需求计算例子备份1PB数据到磁带库数据量1PB 1,000TB 1,000,000GB可用备份窗口8小时 28,800秒所需持续带宽1,000,000GB / 28,800s ≈ 35GB/s网络带宽35GB/s × 8 280Gb/s结论需要至少3条100Gb以太网链路聚合延迟的级联效应传统SAN读取应用请求(1) - 文件系统(5μs) - 卷管理(2μs)- SCSI层(3μs) - HBA驱动(5μs) - 光纤网络(50μs)- 存储前端(10μs) - RAID处理(20μs) - 缓存查找(2μs)- 硬盘队列(5μs) - 硬盘寻道(8000μs) - 数据传输(100μs)- 返回路径(反向)总延迟~8,200μs8.2ms全闪存NVMe-oF读取应用请求(1) - 文件系统(5μs) - NVMe驱动(2μs)- RDMA网卡(5μs) - 网络(15μs) - 存储(5μs)- NVMe SSD(100μs) - 返回总延迟~133μs0.13ms性能提升60倍2.3.6 存储网络的安全考虑物理隔离时代存储网络专用FC SAN“空气隔离”安全但成本高不灵活逻辑隔离时代IP SANiSCSIVLAN隔离VPN加密通道零信任时代全加密传输端到端认证基于身份的访问控制现代安全实践传输加密IPsec for iSCSIFC-SP for FC静态加密磁盘级加密访问控制LUN MaskingZoning审计跟踪所有访问记录2.3.7 存储网络的监控与排错关键监控指标带宽利用率避免拥塞端口错误计数CRC错误、超时等延迟分布P50、P95、P99延迟队列深度设备忙闲程度IOPS每秒IO操作数排错工具箱协议分析仪解码FC/iSCSI/NVMe包性能分析工具IO路径跟踪交换机管理查看端口统计、路由表多路径软件检查路径状态、故障切换典型问题与解决问题突然的性能下降可能原因网络拥塞查带宽存储端瓶颈查存储性能多路径故障查路径状态主机端问题查CPU、内存排查步骤端到端延迟分析逐段排除法对比历史基线2.3.8 未来展望存储网络的终极形态愿景一全融合网络一张以太网承载计算网络MPI存储网络NVMe-oF管理网络基于优先级和服务质量区分愿景二可编程数据平面交换机可执行存储功能去重、压缩、加密快照、复制存储逻辑靠近数据愿景三存储与计算的深度融合计算靠近存储计算存储智能SSD可执行用户定义函数减少数据移动提升效率愿景四全域存储网络跨数据中心的统一存储视图数据跟随计算移动真正的云原生存储本章结语从导线到智能网络我们走完了这段从微观到宏观的旅程从简单的共享总线开始——像一条乡间小路所有车辆共用进化为分层总线架构——城市快速路系统不同级别道路演变为点对点交换网络——立交桥与定向匝道最终成为全网络化存储——智能交通系统车路协同核心演变逻辑从共享到专用消除竞争提升效率从并行到串行提升频率克服物理限制从简单到智能增加协议复杂度换取功能丰富从硬件到软件定义灵活性战胜固定设计存储IO的本质从未改变在正确的时间将正确的数据送到正确的位置。但实现这一目标的手段已经发生了天翻地覆的变化。今天的存储系统本质上是一个分层的、智能的、软件定义的、全球分布的数据运输网络。作为存储专家你需要理解每一层网络的特性与限制协议转换的开销与收益延迟的组成与优化点带宽的规划与扩展方法在下一章中我们将深入这个网络的终点站之一磁盘。看看数据如何在最经典的磁性介质上安家落户了解旋转的盘片和飞舞的磁头如何演绎数据的舞蹈。但在此之前请思考如果你的数据从CPU到硬盘要经过10层协议转换每层增加1微秒延迟总延迟是多少这对应用意味着什么为什么现代数据中心要追求“扁平化”网络减少层次真的那么重要吗当网络速度接近光速极限时存储架构下一步该向何处进化记住在存储的世界里光速是最终的上限协议是现实的枷锁而创新则是打破枷锁的钥匙。