Putting Smart NICs in White Boxes
White boxes are the much heralded commercial off-the-shelf (COTS) hardware that can be plugged in and used for a variety of compute and networking functions for software-defined networking (SDN) and network functions virtualization (NFV). But as SDN and NFV evolve, it’s becoming clear that not any white box will do – they will have to be adapted to handle mission-critical communications apps that will require modifications especially at chip level – including adding smarter network interface cards (NICs).
The NIC will be a crucial part of this evolution, as demonstrated by trends in cloud networks. Specific cloud operators have heralded the advent of adding more processing power and “smarts” to the NIC, so that networking packets can be processed at much higher performance and total infrastructure efficiency on the white box servers before those packets enter the network.
Boosting White Box Performance
White boxes emerged with the move towards open networking and disaggregation within data centers. There are obvious benefits to the white box world: simplify customization and increase interoperability and openness among them. But you also need to ensure that the white box switch you pick is up to the task — it needs to include high-performance networking chips, compute power, and security.
NFV applications demand performance for networking. Communications applications have a need for high throughput and consistently low latency that needs to be supported with processing power that can handle high I/O rates in order to be able to deliver the required Service Level Agreements (SLA) for network functions. This demands high-performance NICs that can support 10 Gb/s, 25Gb/s, 40 Gb/s, 50 Gb/s or even 100 Gb/s throughputs within stringent latency requirements.
As we’ve demonstrated in this series of articles on NFV performance, much of the technologies designed to speed up NFV and SDN networking revolve around the white box server or the NIC, providing for a more efficient connection to the networking infrastructure. Some popular emerging technologies we’ve covered include data plane development kit (DPDK); offloading virtual switching technology such as Open vSwitch (OVS) to embedded switch (eSwitch) in the NIC; and single-root I/O virtualization (SR-IOV). All of these are designed to compensate for the overhead introduced by virtualization and allow for more efficient packet processing on white box servers.
But there’s more: It is becoming eminently clear from the users of white boxes, who are demanding chip-level and NIC modifications to handle high-demand workloads. These smart NICs can be ASIC-based high-volume NICs that provides enhanced virtual switching capabilities at zero or very small price premium, or FPGA-based NICs that can significantly accelerate encryption/decryption for security applications or packet classification for Deep Packet Inspection (DPI) applications, or multi-ARM-core NICs that can run native Linux applications easily and allow for the most flexible network programmability.
A Smart NIC Spec for OCP
On Opencompute.org, Daniel Firestone, Principal Tech Lead and Software Development Manager
Azure Networking Datapath Team at Micrososft, has detailed how “smartNICs” are needed to boost the performance of white box servers for networking. Firestone says NICs need include an FPGA chip to support programmability and offloading the processing of certain networking functions from the CPU. This can also support line-rate encryption at 40 Gb/s.
At a MEF meeting in November, Microsoft Azure architect Jeff Cohen explained how hardware performance was key to building the Azure cloud — specifically requiring adjustments at the chip and NIC level. “You need an FPGA in a NIC to take the code into the NIC and take pressure of the CPU. This can result in enormously reduced latency and very fast performance.”
This is a developing trend that is likely to boost the developing of advanced NICs to support networking functions for white boxes in an NFV or SDN environment. The concept of the smart NIC is likely to develop further to become part of the package of white box networking devices. It’s already being worked into the specifications for NICs at the Open Compute Project (OCP), where NIC manufactures such as Mellanox are members and have introduced high-speed NICs designed for OCP environments.