智能网卡-提升网络性能的新选择

一、智能网口介绍

智能网卡(Smart NIC)是一种专用于网络数据处理的高性能网卡,采用了定制芯片、高速网络接口和强大的软件支持,可以为数据中心和企业网络提供更快、更安全、更可靠的网络连接和数据传输服务。

智能网卡的出现受到了业界的广泛关注和欢迎,因为它可以提供许多传统网卡无法达到的性能优势和功能增强,也可以应对越来越复杂的网络应用和业务需求。“智能网卡可以提高数据中心的吞吐量和效率,同时也可以降低能耗和成本。”云计算专家李欣说。据他介绍,智能网卡通常具有以下特点:

•   高性能:智能网卡通常采用专用芯片和高速网络接口,可以实现超高的数据处理速率、吞吐量和流量控制效率,从而提高网络性能和响应速度。

•   安全可靠:智能网卡不仅可以加速数据传输,还可以提供更好的安全功能和保护机制,如数据加密、访问控制、DDoS防御、防火墙等,从而增强网络的安全性和稳定性。

•   支持分布式存储和计算:智能网卡还可以与分布式存储、计算等技术结合,实现更高效的数据处理和分析,同时也可以降低网络延迟和负载压力,从而提高整体性能和效率。

智能网卡目前已成为数据中心、云计算、大数据、人工智能等领域的热点技术和解决方案。各大厂商也在加速推进智能网卡的设计、生产和销售,以满足客户日益增长的需求和期待。

例如,英特尔(Intel)公司推出了“英特尔以太网 800 系列智能网卡”(英特尔 Ethernet 800 Series Smart NIC),“能为众多的高端服务提供商和企业客户带来更高的网络性能和可靠性。”英特尔副总裁夏业良说。同时,博通(Broadcom)、马维尔(Marvell)、华为(Huawei)、戴尔(Dell)等公司也纷纷推出了自己的智能网卡产品线,并提供不同级别和价格的选择。

In the future, smart network cards will also be combined with emerging technologies such as 5G, Internet of Things, and edge computing to open up a wider range of application scenarios and market opportunities. Trends and developments in various aspects also show that smart network cards have become a new choice for improving network performance and ensuring security, and will gradually become the standard configuration of core equipment such as network switches and routers. In short, the emergence and application of smart network cards will promote the innovation and progress of network technology, bringing more opportunities and challenges to the digital society and intelligent future

    With the further improvement of CPU density and data center network bandwidth, users will have higher requirements for expected performance and system operation stability. On the one hand, cloud vendors face huge cost pressures, and on the other hand, they face huge O&M pressures. The emergence of smart network cards can be used to reduce the burden of network function virtualization.

2. Development History of Smart Network Card

(1) The first stage: basic function network card

        That is, the ordinary network card can provide the basic capability of 2*10G bandwidth; the hardware offloading capability is relatively weak.

        Traditional network cards do not handle any computing tasks related to cloudification and business except for data sending and receiving.

(2) The second stage: hardware offloading network card (the first generation smart network card SNIC)

        It has rich hardware offload capabilities; it can provide Virtio hardware acceleration; security-related data plane offload; lossless network capabilities.

Unlike traditional NICs, smart NICs offload cloud-based network forwarding functions, provide high-performance network forwarding capabilities, and release CPU general-purpose computing resources. The smart network card can meet various offload requirements (the work done by the CPU is moved to the network card), including transmission and storage protocols. At the same time, it provides network programmability, realizes the customization of network forwarding logic, and ensures the flexibility of functions.

The smart network card provides a technical solution to achieve network acceleration with higher cost performance, and also provides a new design idea.

(3) The third stage: DPU smart network card

        The second-generation smart network card formed by adding CPU to the first-generation smart network card:

        In addition to including all the functions of the first-generation smart network card, it can also realize full offloading of security-related functions (data plane + control plane)

        In order to solve problems such as I/O performance bottlenecks and limitations in the development of virtualization technology, DPU came into being.

        DPU (Data Processing unit, data processor) is a dedicated processor that provides virtualization services for data center infrastructure such as network, storage, security, and management around data processing. The computing architecture composed of CPU based on ARM/X86 and other architectures and dedicated hardware acceleration engines such as ASIC (Application Specific Integrated Circuit)/NP (Network Processor)/FPGA (Field Programmable Gate Array) forms an entity that provides virtualization functions.

3. CPU/GPU/DPU relationship and difference

        CPU: central processing unit. GPU: graphics processing unit. DPU: data processor

        CPU: "computing-centric", DPU: "data-centric".

        The current era has changed from "computing-centric" to "data-centric", which is why more and more companies pay attention to big data and cloud services.

3. The difference between DPU and smart network card

To explore the difference between the two, we can start with the concept and analyze the characteristics of DPU and Smart NIC respectively. Features of smart network card: Smart NIC mainly solves the problem of inability to transmit data linearly in network transmission, and offloads services that are more suitable for execution on the network. Use expensive CPU computing power to provide more CPU computing power for computing tasks.

The original SmartNIC had 3 important features:

1) Release CPU overhead and programmability, localize programming through FPGA or coprocessor, support function customization of data plane and control plane, and offload CPU network load;

2) Task acceleration, realizing specific functions through dedicated accelerators and ensuring the line speed of data forwarding;

3) Traffic management, monitor and manage network traffic.

DPU features: The concept of DPU was established in October 2020 when NVIDIA named the Mellanox-based Smart NIC card "DPU". It can be considered that the DPU is an upgrade of the Smart NIC. Programming", "task acceleration", "traffic management" and other functions, and realize the general programmable acceleration of the control plane and data plane. Nowadays, various operations in the data center are mainly completed on the CPU, including computing tasks and various infrastructure tasks. However, in the face of the increase in data processing requirements, the computing power of the CPU has reached the bottleneck, and Moore's Law is gradually failing. The computing power problem of the CPU has been solved, and the bottleneck of the data center has shifted to infrastructure tasks, such as data storage, data verification, and network security.

The emergence of DPU satisfies the need for acceleration of such general-purpose infrastructure tasks. The DPU builds a powerful infrastructure layer, and the upper-layer CPU and GPU complete computing tasks. The characteristics of DPU are:

1) Industry-standard, high-performance, software-programmable multi-core CPUs, usually based on the widely used ARM architecture, tightly coupled with other SoC components.

2) A high-performance network interface capable of parsing, processing, and efficiently transferring data to the GPU and CPU at wire speed or the speed of the rest of the network.

3) Rich and flexible programmable acceleration engines that can perform offloading and improve application performance for AI and machine learning, security, telecommunications, storage and virtualization, etc. The core task of the DPU is data preprocessing and postprocessing, such as network tasks (including ALL2ALL, peer-to-peer and other communication mode acceleration, IPSec, TCP connection tracking, RDMA, etc.), storage tasks (distributed storage, data logging Disk encryption and decryption, data compression, data redundancy algorithms, etc.), virtualization acceleration (offloading of OVS and various Hypervisors, separation of control plane and business plane), and guarantee of hardware security (Root of Trust, etc.).

From the perspective of cloud computing business, DPU completely offloads the entire IaaS service to hardware for acceleration. Therefore, the first-line cloud operators will have a stronger demand for DPU. When the data center is large enough, offloading any task to the hardware means very significant performance improvement and cost reduction, bringing the most direct profit. With the evolution of the entire software and hardware technology stack, the adoption of DPU will gradually expand to all cloud operators, as well as other types of data centers. Comparative Analysis of SmartNIC and DPU

Smart network cards include FPGA type and ARM core type. FPGA type is difficult to handle control plane tasks; ARM type will be overloaded due to processing other tasks. DPU includes dual-plane unloading and acceleration of data plane and control plane, which can solve the above problems. . In addition, the biggest difference between DPU and smart network card is that it can exist as the smallest node in the data center. It has computing functions, network card functions, accelerated computing engines, security engines, etc. and can be expanded. It will become the standard configuration of data centers and one of the three cores in the future. (CPU, GPU, DPU).

Advantages of five smart network cards

Network interface cards greatly increase the speed at which a server can connect to a network - from 10 MB to 100 GB. The advent of software-based networking such as virtual switches and data plane development kits has placed more packet processing requirements on server CPU usage. A typical server can run software-defined networking, load balancing, encryption, deep packet inspection, and other I/O-intensive software. This packet processing requires a lot of CPU capacity, so CPU cores are needed to run network functions rather than mission-critical application processing.

Smart NICs can be programmed to run networking software processes and free server processing to perform its main application tasks. Other intelligent NIC applications can include packet capture, network management, and network visibility.

The economic premise of smart NICs is that their cost is offset by the application processing benefits of letting the server do its main job instead of spending a lot of time running network applications.

4. Purely localized Fudan Micro FM4550 development board (private letter is required)

http://t.csdn.cn/alk4O

Guess you like

Origin blog.csdn.net/mochenbaobei/article/details/130205502