Fast and flexible application-level networking on exokernel systems

  • Authors:
  • Gregory R. Ganger;Dawson R. Engler;M. Frans Kaashoek;Hector M. Briceño;Russell Hunt;Thomas Pinckney

  • Affiliations:
  • Carnegie Mellon University, Pittsburgh, PA;Stanford University, Stanford, CA;Massachusetts Institute of Technology, Cambridge, MA;-;Massachusetts Institute of Technology, Cambridge, MA;Vividon, Inc., Sudbury, MA

  • Venue:
  • ACM Transactions on Computer Systems (TOCS)
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Application-level networking is a promising software organizationfor improving performance and functionality for important networkservices. The Xok/ExOS exokernel system includes application-levelsupport for standard network services, while at the same timeallowing application writers to specialize networking services.This paper describes how Xok/ExOS's kernel mechanisms and libraryoperating system organization achieve this flexibility, andretrospectively shares our experiences and lessons learned (bothpositive and negative). It also describes how we used thisflexibility to build and specialize three network data services:the Cheetah HTTP server, the webswamp Web benchmarking tool, and anapplication-level TCP forwarder. Overall measurements show largeperformance improvements relative to similar services built onconventional interfaces, in each case reaching the maximum possibleend-to-end performance for the experimental platform. For example,Cheetah provides factor of 2--4 increases in throughput compared tohighly tuned socket-based implementations and factor of 3--8increases compared to conventional systems. Webswamp can offerloads that are two to eight times heavier. The TCP forwarderprovides 50--300% higher throughput while also providing end-to-endTCP semantics that cannot be achieved with POSIX sockets. With moredetailed measurements and profiling, these overall performanceimprovements are also broken down and attributed to the specificspecializations described, providing server writers with insightsinto where to focus their optimization efforts.