在数据中心的所有技术中,没有什么比网络连接发展得更快。20 年前,1GbE 网络被认为是奇特的网络,支持它所需的基础设施(例如 NIC、交换机和电缆)既昂贵又稀有。三年前,10GbE 网络是最先进的,但现在 20、40 甚至 100GbE 网络已成为数据中心的标准。网络不仅变得更广泛,而且随着虚拟化、软件定义网络 (SDN)、覆盖网络和其他技术的加入而变得更加复杂,这些技术在 10 年前甚至没有设想过,但现在已经司空见惯,正在紧张数据中心服务器中的资源。
在处理超过 10GbE 的网络时,我们开始看到服务器中出现 CPU 瓶颈,因为网络数据包被传递到 CPU 进行处理。使用 25GbE 网络时,CPU 时间的可测量百分比用于处理网络数据包。为了解决这个问题,我们开发了一些技术来将一些网络功能从 CPU 下推到网络接口控制器 (NIC)。我们将能够处理这种卸载的设备称为SmartNIC。
在本文中,我们将解释 SmartNIC 是什么、它们为数据中心带来的价值,以及为什么您应该开始研究和投资它们。最后,我们将介绍一种特别创新的 SmartNIC,即 Xilinx SN1000。
什么是智能网卡?
将网络操作从 CPU 卸载到 NIC 一直是主要云提供商的重点,因为他们一直在推动数据中心的效率。关于将 NIC 标记为Smart需要什么,没有硬性规定;但是,它们至少应该能够处理虚拟交换机中的一些控制平面功能,以及网络功能虚拟化 (NFV) 功能中的一些功能,例如防火墙、入侵检测和预防、主机检查和加密,以及数据平面任务,例如网络服务质量 (QoS) 和流量报告和监控。
是什么推动了 SmartNIC 的采用?
在过去十年中,公共云和超大规模器推动了数据中心的创新,并将在可预见的未来继续这样做。他们使用的技术最终会应用到企业数据中心,SmartNIC 也是如此。事后看来,SmartNIC 只是将网络功能放在了它们本来应该放在的位置:回到 NIC 上,而不是浪费 CPU 和主板带宽。
很容易想象有多少网络流量被丢弃或重新回到网络上,而不会给被迫处理它们的系统/CPU 增加任何价值——仅仅是因为 NFV 和其他功能是使用传统服务器的 CPU 实现的,而不是比在 NIC 级别。可以从 CPU 上卸载的每个 CPU 周期都会释放它,并允许服务器进行生产性工作。
为了说明 SmartNIC 如何带来好处,我们可以采用像分布式拒绝服务 (DDoS) 攻击这样简单的方法。尽管 DDoS 在现代数据中心中很少见,但让 SmartNIC 处理 DDoS 将允许系统的 CPU 继续高效工作,而不是排序、分类和丢弃数据包。一个更现代的例子是让 SmartNIC 处理覆盖网络而不是系统 CPU 使用的网络数据包的封装。
为什么 Xilinx 是 SmartNIC 技术的领导者
在所有新兴技术中,有些公司将自己定位在技术的最前沿。这些公司往往对技术充满热情和专注。他们致力于克服阻碍新技术进入市场的无数障碍的目标。Xilinx 就是这样一家公司。
Xilinx 长期以来一直是新兴技术的创新者。例如,他们发明了现场可编程门阵列 (FPGA),并被认为是该技术的领导者。将 SmartNIC 等新技术推向市场并不是一个便宜的提议,2020 年的收入超过 30 亿美元,他们有足够的财力这样做。但这也需要认真的工程和管理专业知识——同样,赛灵思两者兼备。
2019 年 4 月,赛灵思达成协议收购 Solarflare Communications,后者是超低延迟网络和应用加速的早期开发商,也是 SmartNIC 技术的领导者。那年晚些时候,赛灵思展示了基于 Solarflare 和赛灵思技术的基于单芯片 FPGA 的 100G SmartNIC。这款 SmartNIC 将 Xilinx FPGA、片上系统 (SoC) 和自适应计算加速平台 (ACAP) 与 Solarflare 的技术相结合,创建了一个新的融合 SmartNIC 解决方案,即 Xilinx SN1000。
赛灵思 ALVEO SN1000
Xilinx SN1000 是一款 FHHL PCIe x16 物理(第 4 代 x8 或第 3 代 x16 电气)NIC,具有双 100GbE 铜缆或光纤端口。它有一个 16 核 Cortex-A72 处理器和一个具有超过一百万个查找表 (LUT) 的 FPGA。LUT 基本上是 FPGA 构建其逻辑的方式;FPGA 的 LUT 越多,它就越强大和灵活。该卡共有 12 GB 的 DDR4 RAM,其中 4 GB 专用于 Arm 处理器,8 GB 专用于 FPGA。这种硬件方案意味着 SN1000 能够卸载 400 万个有状态连接并每秒处理 1 亿个数据包 (PPS)。