Napatech 缩略图

IPU 可减少存储工作负载的计算开销

Napatech 将基于英特尔® IPU 的 F2070X IPU 与其 Link-Storage* 软件集成,以分载 NVMe over TCP 工作负载,从而减少计算开销。

总结

  • 由于 NVMe/TCP 存储技术在性能、延迟、可扩展性、管理和资源利用率等方面的优势,企业和云数据中心正在越来越多地采用 NVMe/TCP 存储技术。但是,在服务器的主机 CPU 上实现所需的存储启动器工作负载会带来巨大的计算开销,并且会限制可用于运行各种服务和应用程序的 CPU 内核数量。

  • Napatech 的集成式硬件加软件解决方案包括在 F2070X IPU 上运行的 Link-Storage 软件堆栈,可通过将存储工作负载从主机 CPU 分载到 IPU 来解决该问题,同时在应用程序级别保持软件完全兼容。

  • Napatech 的存储分载解决方案可释放存储功能本来会消耗的主机 CPU 内核。它的性能显著优于基于软件的实施,从而降低了数据中心的资本支出、运营支出和能耗。它还在系统中引入了安全隔离,从而增强了对网络攻击的防护。

author-image

作者

nvm express 标志该解决方案简要说明了 Napatech 的集成式硬件加软件解决方案如何将 NVMe/TCP 存储工作负载从主机 CPU 分载到 IPU,从而显著降低资本支出、运营支出和能耗。它还在系统中引入了安全隔离,从而增强了对网络攻击的防护。

什么是 NVMe over TCP?

NVMe/TCP 是一种存储技术,允许使用标准数据中心结构通过网络访问 Non-Volatile Memory Express (NVMe) 存储设备。 请参见图1。

现代云和企业数据中心正在越来越多地采用 NVME/TCP,因为与互联网小型计算机系统接口 (iSCSI) 光纤通道等较早的存储协议相比,它具有无可争辩的优势:

图 1。分解式存储架构

 

  • 性能提升:NVMe 旨在充分利用基于 NAND 的现代高速固态硬盘 (SSD),并可提供显著高于传统存储协议的数据传输速率。NVMe/TCP 将这些优势扩展到网络存储环境,使数据中心能够通过该结构实现高性能存储访问。

  • 延迟减少: NVMe/TCP 的低延迟特性对于数据密集型应用程序和实时工作负载至关重要。NVMe/TCP 可以最大限度减少通信开销并消除对协议转换的需要,从而帮助减少存储访问延迟并提升应用程序整体性能。

  • 可扩展性: 数据中心经常处理大规模存储部署,而 NVMe/TCP 可以通过网络提供灵活高效的存储访问解决方案,从而实现无缝扩展。随着 NVMe 设备数量的增长,数据中心可以保持较高的性能水平,而不会出现严重的瓶颈。

  • 共享存储池:NVMe/TCP 支持创建可供多个服务器和应用程序同时访问的共享存储池。这种共享存储架构提高了资源利用率并简化了存储管理,从而显著节省了成本。

  • 传统基础架构兼容性:数据中心通常拥有基于以太网、InfiniBand 或光纤通道网络构建的现有基础架构。NVMe/TCP 使数据中心能够利用其当前的结构投资,同时集成较新的基于 NVMe 的存储技术,而无需全面改造整个网络基础架构。

  • 高效的资源利用:NVMe/TCP 可以通过减少对每台服务器上专用存储资源的需求,改善资源利用率。多台服务器可以通过网络访问共享 NVMe 存储设备,从而优化昂贵的 NVMe 存储资源的使用情况。

  • 满足未来要求:随着数据中心不断发展并采用速度更快的存储技术,NVMe/TCP 提供了一种具有前瞻性的存储访问方法,确保存储网络能够跟得上现代应用程序和工作负载不断增长的需求。

总体而言,NVMe/TCP 为数据中心提供了强大而灵活的存储解决方案,在可扩展的共享存储环境中实现了高性能、低延迟和高效的资源利用。

纯软件存储架构的局限性

尽管 NVMe/TCP 在存储方面具有无可争辩的优势,但数据中心运营商必须意识到与一种实现相关的重大局限性,这种实现让所需的所有存储启动器服务都在主机服务器 CPU 上的软件中运行。参见图 2。

网络存储
图 2.基于软件的网络存储

 

首先,如果存储虚拟化软件、虚拟机管理程序或虚拟交换机 (vSwitch) 在网络攻击中遭到破坏,就会出现系统级安全风险。

其次,无法确保租户工作负载之间的完全隔离。单一架构在多租户环境中托管多个客户的应用程序和数据。当应用程序或虚拟机 (VM) 使用可用性最高的资源时,就会出现“吵闹邻居”效应,并导致共享基础架构上其他租户的系统性能降级。

最后,主机 CPU 内核的很大一部分需要用于运行存储虚拟化软件、虚拟机管理程序和 vSwitch 等基础架构服务。这会减少可供虚拟机、容器和应用程序利用的 CPU 内核数量。报告表明,数据中心 30% 到 50% 的 CPU 资源通常被基础架构服务消耗。

在高性能存储子系统中,主机 CPU 可能需要运行多种协议,例如传输控制协议 (TCP)、基于融合以太网的远程直接内存访问 (RoCEv2)、InfiniBand 和光纤通道。当主机 CPU 大量用于运行这些存储协议和其他基础架构服务时,可供租户应用程序使用的 CPU 内核数量会显著减少。例如,16 核 CPU 可能只能提供 10 核 CPU 的性能。

由于上述原因以及其他一些原因,纯软件架构会给数据中心存储带来业务和技术方面的重大挑战。

采用 IPU 的存储分载解决方案

除了虚拟机管理程序和 vSwitch 等其他基础架构服务(参见图 3)之外,将 NVMe/TCP 工作负载分载到 IPU 可以解决纯软件实现的局限性,并为数据中心运营商带来显著优势:

 

  • CPU 利用率:NVMe/TCP 通信涉及将 NVMe 命令和数据封装在 TCP 传输协议中。主机 CPU 无需分载即可处理这些封装和解封装任务。将这些操作分载到专用硬件,能让 CPU 专注于其他关键任务,从而改善系统整体性能和 CPU 利用率。

  • 延迟降低:将 NVMe/TCP 通信任务分载到专用硬件,可以显著降低处理存储命令的延迟。因此,应用程序在访问远程 NVMe 存储设备时可以加快响应速度并提升性能。

  • 高效的数据移动:与使用通用 CPU 相比,将非 CPU 应用程序任务分载到分立式硬件加速器,可以更高效地执行数据移动操作。这样可以高效处理大型数据传输和缓冲区管理,从而减少延迟并提高整体吞吐量。

  • 可扩展性提高:分载 NVMe/TCP 任务可提高大规模存储部署的可扩展性。通过减轻 CPU 处理网络通信的负担,系统可以支持数量更多的并发连接和存储设备,而不会受到 CPU 的限制。

  • 能效:通过将某些任务分载到专用硬件,可以降低主机 CPU 的功耗。这样的能效在大型数据中心环境中尤为重要,其中功耗是一个意义深远的考虑因素。

ipu 分解式存储
图 3.支持 IPU 的分解式存储

 

除了上述适用于 NVMe/TCP 存储工作负载的优势之外,采用 IPU 的系统架构还提供了增量安全隔离选项,从而能够将基础架构服务与租户应用程序隔离开来。这样可以确保存储、虚拟机管理程序和 vSwitch 服务不会受到租户应用程序发起的网络攻击的影响。由于 IPU 本身的启动过程是安全的,因此基础架构服务本身是安全的,而 IPU 则充当主机服务器的信任根。

Napatech 的集成式硬件加软件解决方案

Napatech 为数据中心存储分载提供了集成式系统级解决方案,包括在 F2070X 上运行的高性能 Link-Storage 软件堆栈。参见图 4

图 4.Napatech 的存储分载在 F2070X IPU 上运行

 

Link-Storage 软件包含了丰富的功能,包括:

 

  • 将 NVMe/TCP 工作负载从主机完全分载到 IPU;

  • 将 TCP 工作负载从主机完全分载到 IPU;

  • NVMe 到 TCP 启动器;

  • 通过存储性能开发套件远程过程调用 (SPDK RPC) 接口进行存储配置;

  • 支持多路径 NVMe;

  • 通过 virtio-blk 接口向主机呈现 16 个块设备;

  • 与常见 Linux* 发行版中的标准 virtio-blk 驱动程序兼容;

  • 在主机 CPU 和 IPU 之间实现安全隔离,不会将任何网络接口暴露给主机。

除了 Link-Storage 之外,F2070X 还支持 Link-Virtualization 软件,该软件可提供分载并加速的虚拟化数据平面,包括 Open vSwitch (OVS)、实时迁移、虚拟机到虚拟机镜像、VLAN/VxLAN 封装/解封装、Q-in-Q、接收侧缩放 (RSS) 负载均衡、链路聚合和服务质量 (QoS) 等功能。

由于 F2070X 基于 FPGA 和 CPU 而不是 ASIC,因此平台的全套功能可以在部署之后更新。无论是修改现有服务、添加新功能还是对特定性能参数进行微调,这种重新编程都可以纯粹作为现有服务器环境中的软件升级来执行,而无需断开、移除或更换任何硬件。

Napatech F2070X IPU

Napatech F2070X IPU 基于英特尔® IPU 平台 F2000X-PL,是一款 2x100G PCIe 卡,采用英特尔® Agilex™ 7 FPGA F-系列和英特尔® 至强® D 处理器,全高半长 (FHHL)、双插槽外形。

F2070X IPU 的标准配置包括配备四组 4 GB DDR4 内存的英特尔® Agilex™ 7 FPGA AGF023 和配备两组 8 GB DDR4 内存的 2.3 GHz 英特尔® 至强® D-1736 处理器。可以提供其他配置选项来支持特定的工作负载。

F2070X IPU 通过 PCIe 4.0 x16 (16 GTps) 接口连接到主机,FPGA 和处理器之间还有一个额外的 PCIe 4.0 x16 (16 GTps) 接口。

两个前面板 QSFP28/56 网络接口支持以下网络配置:

 

  • 2x 100G;
  • 8x 10G 或 8x 25G(使用分支电缆)。

专用 PTP RJ45 端口可提供与外部 SMA-F 和内部 MCX-F 连接器的可选时间同步。支持 IEEE 1588v2 时间戳。

专用 RJ45 以太网连接器可提供主板管理。安全的 FPGA 映像更新支持在部署 IPU 后添加新功能或更新现有功能。

处理器运行 Fedora Linux,具有 UEFI BIOS、PXE 启动支持、通过 SSH 实现的 shell 完整访问权限以及 UART。

英特尔 IPU F2000X 适配器
英特尔® IPU 平台 F2000X-PL 适配器