gatekeeper
gatekeeper copied to clipboard
Adopt Smart NICs to accelerate the performance of Gatekeeper
Smart NICs can potentially help accelerate Gatekeeper's performance. Example of Smart NICs: Netronome Agilio.
They can be used to accelerate DPDK-based networking applications, increasing throughput (Mpps) and bandwidth (Gb/s) to host processors. They also have some advanced offloading features: (1) VXLAN, NVGRE, MPLS, tunnel encapsulation and de-encapsulation; (2) eBPF; (3) Flexible exact and wild-card match/action policy offloads; (4) acceleration of compute-intensive functions (e.g., hashing operations), etc.
Moreover, they have on-board DRAM, caches and processors to further offload some network functionalities.
Preliminary exploration of this research direction:
(1) AccelTCP: Accelerating Network Applications with Stateful TCP Offloading, NSDI'20
An example SmartNIC with DPDK support is the Marvell OCTEON TX2 Platform, and they just announced the industry’s first processor family scaling up to 200 Gbps in Feb 2020.
Another family of SmartNICs that can support 100+ Gbps throughput is Mellanox SmartNICs. They have three types of SmartNICs: ASIC-based, FPGA, or System-on-a-Chip (SOC) based. There are specific advantages and tradeoffs to each. Mellanox offers all three: BlueField SmartNICs (SoC-based), ConnectX intelligent NICs (ASIC-based), and Innova (FPGA-based) SmartNIC.
For example, Mellanox BlueField-2 SmartNIC for Ethernet can scale to 200Gbps. Mellanox ConnectX-6 EN provides up to two ports of 200GbE connectivity.
Mellanox SmartNICs also have DPDK support, they claim that DPDK + Mellanox achieves the highest single-port packet rate on the market (i.e, 148Mpps @ 64B).
Section 2 of the SIGCOMM '19 paper - Offloading distributed applications onto smartNICs using iPipe provides detailed performance characterizations of the major components in four commercial Multicore SoC SmartNICs. We can take it as a starting point to learn more about commercial SmartNICs.