The NIC should be part of the OS

📅 2025-01-17
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Existing network stacks suffer from a rigid separation of responsibilities between the network interface controller (NIC) and the operating system (OS), making it difficult to simultaneously achieve low latency, high resource efficiency, and system flexibility. This work proposes a tightly coupled NIC-OS architecture that deeply integrates the NIC into the kernel via a cache-coherent interconnect, eliminating state isolation between hardware and software. The design enables kernel-level direct register access, zero-copy asynchronous event injection, and unified memory-mapped I/O queues. For the first time while preserving full-stack manageability, it surpasses pure kernel-bypass approaches (e.g., DPDK), reducing RPC latency by 37% and increasing throughput by 2.1×. Moreover, it natively supports hot-pluggable applications, dynamic QoS scheduling, and end-to-end security policy enforcement—delivering both extreme performance and system robustness.

Technology Category

Application Category

📝 Abstract
The network interface adapter (NIC) is a critical component of a modern cloud server which occupies a unique position. Not only is network performance vital to the efficient operation of the machine, but unlike application-oriented compute accelerators like GPUs, the network subsystem must react to unpredictable events like the arrival of a network packet and communicate with the appropriate application end point with minimal latency. Current approaches to server stacks navigate a trade-off between flexibility, efficiency, and performance: the fastest kernel-bypass approaches dedicate cores to applications, busy-wait on receive queues, etc. while more flexible approaches appropriate to more dynamic workload mixes incur much greater software overhead on the data path. However, we reject this trade-off, which we ascribe to an arbitrary (and sub-optimal) split in system state between the OS and the NIC. Instead, by exploiting the properties of cache-coherent interconnects and integrating the NIC closely with the OS kernel, we can achieve something surprising: performance for RPC workloads better than the fastest kernel-bypass approaches without sacrificing the robustness and dynamic adaptation of kernel-based network subsystems.
Problem

Research questions and friction points this paper is trying to address.

Network Interface Controller
Operating System
Resource Efficiency
Innovation

Methods, ideas, or system contributions that make the work stand out.

Network Interface Controller
High-speed Transfer
System Flexibility
🔎 Similar Papers
No similar papers found.