热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SmartNIC/DPU—主流厂商

目录文章目录目录传统的智能网卡厂家英伟达(NVIDIA)英特尔(Intel)博通(Broadcom࿰

目录


文章目录

  • 目录
  • 传统的智能网卡厂家
    • 英伟达(NVIDIA)
    • 英特尔(Intel)
    • 博通(Broadcom)
    • 赛灵思
  • 公有云厂商
    • AWS Nitro
    • Azure AccelNet
    • 阿里云神龙


传统的智能网卡厂家


英伟达(NVIDIA)

2019 年英伟达收购以色列著名网络设备制造商 Mellanox。Mellanox 是端到端以太网和 InfiniBand 智能互联技术的绝对领导者。在收购之前 Mellanox 就已推出了多款智能网卡。

在这里插入图片描述

NVIDIA Mellanox ConnectX-6 Lx SmartNIC,是一款高效且高度安全的 25、50Gb/s 以太智能网卡。这款产品专为满足现代化数据中心的需求而设计,在这个市场,25Gb/s 已成为各种主流应用的标准,例如:企业级应用、AI 和实时分析等。这款全新的 SmartNIC 充分利用了软件定义、硬件加速的引擎来扩展加速计算,将更多的安全和网络处理工作从 CPU 卸载到网卡上来。

Mellanox ConnectX-6 Lx 提供:


  • 两个 25Gb/s 端口或一个 50Gb/s 端口、从主机到网络之间采用 PCIe Gen 3.0 或 4.0 x8。
  • 安全功能,包括硬件信任根(Hardware Root of Trust)、用于有状态 L4 防火墙的连接追踪(Connection Tracking)技术。
  • IPSec 在线加密加速。
  • GPU Direct RDMA 加速技术,专为 NVMe over Fabrics(NVMe-oF)存储、可扩展加速计算和高速视频传输等应用加速。
  • Zero Touch RoCE(ZTR)功能,实现了高性能 RoCE(RDMA over converged Ethernet)网络的可扩展和易部署,且无需配置交换机。
  • 加速交换和数据包处理(Accelerated switching and packet processing ,ASAP2)技术,内置面向虚拟化和容器化应用的 SR-IOV 和 VirtIO 硬件卸载引擎,可加速新一代软件定义网络,以及对于防火墙服务进行连接追踪。

在这里插入图片描述


英特尔(Intel)

2015 年 6 月,Intel 宣布以 167 亿美元的价格收购全球第二大 FPGA 厂商 Altera,成为该公司有史以来最贵的一笔收购,随后 Intel 也在 Altera 的基础上成立了 Intel 可编程事业部,且一直在推进 FPGA 与至强处理器的软硬件结合,但却并没有能够进入大规模商用阶段。

三年后,Intel 终于踏出了历史性的一步。2019 年 4 月 19 日,Intel 宣布旗下的 FGPA 已经被正式应用于主流的数据中心 OEM 厂商中。具体来说,戴尔 EMC PowerEdge R640、R740 和 R740XD 服务器集成了 Intel FPGA ,并且已经可以进行大规模部署;而富士通即将发布的 PRIMERGY RX2540 M4 也采用了 Intel FGPA 的加成,这款产品即将发布,并已经支持重点客户提前使用。

在这里插入图片描述

上述 FGPA 主要指的是 Intel Arria 10 GX PAC(Programmable Acceleration Card,可编程加速卡),同时 Intel 还为 OME 厂商提供一个面向包含 FPGA 的 Intel 至强可扩展处理器的 Intel 加速堆栈。二者结合起来,就形成了一个完整的硬软件结合 FPGA 解决方案。

近期推出的 FPGA SmartNIC C5000X 云平台就是基于 Intel Xeon-D 处理器和 Intel Stratix 10 FPGA 实现的。

在这里插入图片描述

在 CPU 单核时代,数据包经由网卡接收后均被送往唯一的 CPU 进行处理。随着多核时代到来,就出现了负载均衡问题,例如:某些 Core 过载,而另一些 Core 空载的情况。

为解决该问题,RSS(Receive Side Scaling)技术先通过 HASH 操作将数据包发送到不同的 Core 上进行中断处理,然后再经由 Core 间转发将数据包发送到运行目的应用所在的 Core 上。虽然负载看似在多 Core 上均衡了,但由于 HASH 的抗碰撞特性,大量数据包会被送到了不匹配的 Core上,因而数据包的 Core 间转发成为性能瓶颈。

在这里插入图片描述

FDIR(Intel Ethernet Flow Director)通过将数据包定向发送到对应应用所在 Core 上,从而弥补了 RSS 的不足,可用来加速数据包到目的应用处理的过程。在新一代 Intel X800 系列 Smart NIC 中,FDIR 有了更多的 Rules 空间硬件资源和更灵活的配置机制。

在这里插入图片描述

如同 Linux 提供了纯软件实现的 RSS 版本一样,Linux 也提供了纯软件实现的 ATR(Application Targeting Routing)模式的 Flow Director,称为 RFS(Receive Flow Steering)。尽管功能上等效,但是 RFS 无法达到 FDIR 对网络性能的提升效果,因为它必须通过某个 Core 来执行调度数据包,而且该 Core 大概率不是目的应用所在的 Core。因此,ATR 模式的 FDIR 可被看作 RFS 的智能卸载硬件加速方案。

在这里插入图片描述


博通(Broadcom)

博通的 Stingray SmartNIC SoC 系列具有集成的全功能 100G NIC,强大的 8 核 CPU,运行在 3GHz 下,支持数据包处理、加密、RAID 和重复数据删除等硬件引擎,是用于主机卸载、裸机服务和网络功能虚拟化的理想 SmartNIC 解决方案。

在这里插入图片描述

今年 4 月,百度云宣布正在与博通紧密合作,利用 Stingray SmartNIC 的可编程性,提供高级的云原生应用、网络功能虚拟化和分布式安全。博通的 Stingray 适配器提供 8 个 ARM A72 CPU 内核,运行在 3GHz、300G 内存带宽和 100G NetXtreme Ethernet 网卡上。

在这里插入图片描述

在这里插入图片描述


赛灵思

赛灵思发布了其首款一体化 SmartNIC 平台 Alveo U25,在单张卡上上实现了网络、存储和计算加速功能的融合。

在这里插入图片描述

随着网络端口速度不断攀升,2 级和 3 级云服务提供商、电信和私有云数据中心运营商正面临日益严峻的联网问题和联网成本挑战。与此同时,开发和部署 SmartNIC 所需的大量研发投资,也成为其被广泛采用的障碍。

依托于赛灵思业界领先的 FPGA 技术,Alveo U25 SmartNIC 平台相比基于 SoC 的 NIC,可以提供更高的吞吐量和更强大的灵活应变引擎,支持云架构师快速为多种类型的功能与应用提速。


公有云厂商


AWS Nitro

2015 年,AWS 收购以色列芯片制造商 Annapurna Labs。在 2017 re: Invernt 大会上,AWS 宣布了 EC2 架构的新演进:Nitro System 架构。Nitro System 重新定义了虚拟化基础架构,将虚拟化功能被卸载到专用的 Nitro Card 上。而 Nitro Card 就是使用 Annapurna Labs 定制的 ASIC 芯片。
在这里插入图片描述

在这里插入图片描述


Azure AccelNet

2015 年&#xff0c;微软 Azure 服务器上部署了其 FPGA 加速网络 AccelNet。自 2015 年底以来&#xff0c;微软已在超过 100 万台主机的新 Azure 服务器上部署了实施 AccelNet 的 Azure SmartNIC。自 2016 年以来&#xff0c;AccelNet 服务已向 Azure 客户提供了一致的 <15μs VM-VM TCP 延迟&#xff0c;和 32Gbps 吞吐量。


阿里云神龙

2017 年&#xff0c;阿里云也在数据中心中部署了神龙。
在这里插入图片描述

与传统的智能网卡厂家比&#xff0c;云计算巨头完全是为了满足自身云计算需求。在他们看来&#xff0c;SmartNIC 就是一个完整的计算、存储、网络一体化处理单元&#xff0c;只视乎于想把如何具体的业务卸载下来&#xff0c;而具体业务只有使用云厂商自己最清楚了。

因此&#xff0c;对云厂商来说&#xff0c;自研 SmartNIC 似乎是一条正确的道路&#xff0c;其 “智能网卡” 的概念已经很薄弱了&#xff0c;它不仅仅是个 NIC 这么简单&#xff0c;它已经深深的融入他们的血液里了。


推荐阅读
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 标题: ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
    本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ... [详细]
  • Whatsthedifferencebetweento_aandto_ary?to_a和to_ary有什么区别? ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • Hibernate延迟加载深入分析-集合属性的延迟加载策略
    本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ... [详细]
  • 本文详细介绍了Android中的坐标系以及与View相关的方法。首先介绍了Android坐标系和视图坐标系的概念,并通过图示进行了解释。接着提到了View的大小可以超过手机屏幕,并且只有在手机屏幕内才能看到。最后,作者表示将在后续文章中继续探讨与View相关的内容。 ... [详细]
  • 本文讨论了微软的STL容器类是否线程安全。根据MSDN的回答,STL容器类包括vector、deque、list、queue、stack、priority_queue、valarray、map、hash_map、multimap、hash_multimap、set、hash_set、multiset、hash_multiset、basic_string和bitset。对于单个对象来说,多个线程同时读取是安全的。但如果一个线程正在写入一个对象,那么所有的读写操作都需要进行同步。 ... [详细]
author-avatar
珍妮20111030
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有