Dissertation Talk: System Design for Software Packet Processing

Presentation: Dissertation Talk: CS | May 9 | 1-2 p.m. | 420 Soda Hall

 Sangjin Han, University of California, Berkeley

 Electrical Engineering and Computer Sciences (EECS)

The role of software in computer networks has never been more crucial than today, with the advent of Internet-scale services and cloud computing. Many architectural aspects of software packet processing systems, however, are decades old and evolved with little modification. In this talk, I will explore the design space of software packet processing systems in the context of two domains. First, I will start by discussing the limitations of BSD Socket, which is a de-facto standard in network I/O for server applications. I will show its limitations and propose a clean-slate API, called MegaPipe, as an alternative to BSD Socket. In the second part of the talk, we switch our focus to in-network software systems, such as network switches and middleboxes. I will present Berkeley Extensible Software Switch (BESS), a modular framework for building extensible network functions. BESS introduces various novel techniques to achieve high-performance without compromising programmability.