ModNet: A Modular Approach to Network Stack Extension

The existing interfaces between the network stack and the operating system are less than ideal for certain important classes of network traffic, such as video and mobile communication. While TCP has become the de facto transport protocol for much of this traffic, the opacity of some of the current network abstractions prevents demanding applications from controlling TCP to the fullest extent possible. At the same time, non-TCP protocols face an uphill battle as the network management and control infrastructure around TCP grows and improves. In this paper, we introduce ModNet, a lightweight kernel mechanism that allows demanding applications better customization of the TCP stack, while preserving existing network interfaces for unmodified applications. We demonstrate ModNet's utility by implementing a range of network server enhancements for demanding environments, including adaptive bitrate video, mobile content adaptation, dynamic data and image compression, and flash crowd resource management. These enhancements operate as untrusted user-level modules, enabling easy deployment, but can still operate at scale, often providing gigabits per second of throughput with low performance overheads.

[1]  Mary Baker,et al.  Measuring link bandwidths using a deterministic model of packet delay , 2000, SIGCOMM.

[2]  Carsten Griwodz,et al.  Commute path bandwidth traces from 3G networks: analysis and applications , 2013, MMSys.

[3]  David Wetherall,et al.  A protocol-independent technique for eliminating redundant network traffic , 2000, SIGCOMM 2000.

[4]  Stefan Savage,et al.  Alpine: A User-Level Infrastructure for Network Protocol Development , 2001, USITS.

[5]  Hari Balakrishnan,et al.  TESLA: A Transparent, Extensible Session-Layer Architecture for End-to-end Network Services , 2003, USENIX Symposium on Internet Technologies and Systems.

[6]  Ali C. Begen,et al.  An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP , 2011, MMSys.

[7]  Eero P. Simoncelli,et al.  Image quality assessment: from error visibility to structural similarity , 2004, IEEE Transactions on Image Processing.

[8]  Daniela Rosu,et al.  Kernel Support for Faster Web Proxies , 2003, USENIX ATC, General Track.

[9]  Srinivasan Seshan,et al.  SPAND: Shared Passive Network Performance Discovery , 1997, USENIX Symposium on Internet Technologies and Systems.

[10]  Jeffrey C. Mogul,et al.  The packer filter: an efficient mechanism for user-level network code , 1987, SOSP '87.

[11]  Steven McCanne,et al.  The BSD Packet Filter: A New Architecture for User-level Packet Capture , 1993, USENIX Winter.

[12]  George Varghese,et al.  EndRE: An End-System Redundancy Elimination Service for Enterprises , 2010, NSDI.

[13]  Thu D. Nguyen,et al.  Implementing Network Protocols at User Level , 1993, SIGCOMM.

[14]  Chandra Krintz,et al.  ACE: a resource-aware adaptive compression environment , 2003, Proceedings ITCC 2003. International Conference on Information Technology: Coding and Computing.

[15]  Balachander Krishnamurthy,et al.  Improving web performance by client characterization driven server adaptation , 2002, WWW '02.

[16]  Ming Zhang,et al.  An untold story of middleboxes in cellular networks , 2011, SIGCOMM.

[17]  Robert Tappan Morris,et al.  Improving network connection locality on multicore systems , 2012, EuroSys '12.

[18]  Eddie Kohler,et al.  The Click modular router , 1999, SOSP.

[19]  Vyas Sekar,et al.  Understanding website complexity: measurements, metrics, and implications , 2011, IMC '11.

[20]  Andrew Tomkins,et al.  The volume and evolution of web page templates , 2005, WWW '05.

[21]  FoxArmando,et al.  Adapting to network and client variability via on-demand dynamic distillation , 1996 .

[22]  Eddie Kohler,et al.  Efficiency and late data choice in a user-kernel interface for congestion-controlled datagrams , 2005, IS&T/SPIE Electronic Imaging.

[23]  Eric A. Brewer,et al.  Adapting to network and client variation using infrastructural proxies: lessons and perspectives , 1998, IEEE Wirel. Commun..

[24]  KyoungSoo Park,et al.  Connection Conditioning: Architecture-Independent Support for Simple, Robust Servers , 2006, NSDI.

[25]  David Wetherall,et al.  A protocol-independent technique for eliminating redundant network traffic , 2000, SIGCOMM.