SoftNIC: A Software NIC to Augment Hardware

Sangjin Han, Keon Jang, Aurojit Panda, Shoumik Palkar, Dongsu Han and Sylvia Ratnasamy

EECS Department
University of California, Berkeley
Technical Report No. UCB/EECS-2015-155
May 27, 2015

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2015/EECS-2015-155.pdf

As the main gateway for network traffic to a server, the network interface card (NIC) is an ideal place to incorporate diverse network functionality, such as traffic control, protocol offloading, and virtualization. However, the slow evolution and inherent inflexibility of NIC hardware have failed to support evolving protocols, emerging applications, and rapidly changing system/network architectures. The traditional soft- ware approach to this problem—implementing NIC features in the host network stack—is unable to meet increasingly challenging performance requirements. In this paper we present SoftNIC, a hybrid software-hardware architecture to bridge the gap between limited hardware capabilities and ever changing user demands. SoftNIC provides a programmable platform that allows applications to leverage NIC features implemented in software and hard- ware, without sacrificing performance. Our evaluation results show that SoftNIC achieves multi-10G performance even on a single core and scales further with multiple cores. We also present a variety of use cases to show the potential of software NIC augmentation.


BibTeX citation:

@techreport{Han:EECS-2015-155,
    Author = {Han, Sangjin and Jang, Keon and Panda, Aurojit and Palkar, Shoumik and Han, Dongsu and Ratnasamy, Sylvia},
    Title = {SoftNIC: A Software NIC to Augment Hardware},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2015},
    Month = {May},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2015/EECS-2015-155.html},
    Number = {UCB/EECS-2015-155},
    Abstract = {As the main gateway for network traffic to a server, the network interface card (NIC) is an ideal place to incorporate diverse network functionality, such as traffic control, protocol offloading, and virtualization. However, the slow evolution and inherent inflexibility of NIC hardware have failed to support evolving protocols, emerging applications, and rapidly changing system/network architectures. The traditional soft- ware approach to this problem—implementing NIC features in the host network stack—is unable to meet increasingly challenging performance requirements.
In this paper we present SoftNIC, a hybrid software-hardware architecture to bridge the gap between limited hardware capabilities and ever changing user demands. SoftNIC provides a programmable platform that allows applications to leverage NIC features implemented in software and hard- ware, without sacrificing performance. Our evaluation results show that SoftNIC achieves multi-10G performance even on a single core and scales further with multiple cores. We also present a variety of use cases to show the potential of software NIC augmentation.}
}

EndNote citation:

%0 Report
%A Han, Sangjin
%A Jang, Keon
%A Panda, Aurojit
%A Palkar, Shoumik
%A Han, Dongsu
%A Ratnasamy, Sylvia
%T SoftNIC: A Software NIC to Augment Hardware
%I EECS Department, University of California, Berkeley
%D 2015
%8 May 27
%@ UCB/EECS-2015-155
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2015/EECS-2015-155.html
%F Han:EECS-2015-155