msocket: multiple stack support for the berkeley socket API

  • Authors:
  • Renzo Davoli;Michael Goldweber

  • Affiliations:
  • University of Bologna, Italy;Xavier University

  • Venue:
  • Proceedings of the 27th Annual ACM Symposium on Applied Computing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The de-facto standard for network programming, the Berkeley socket API, supports several protocol families. Unfortunately, it has a significant limitation in only allowing a single implementation for each supported protocol family. Hence, using Berkeley sockets, it is impossible to access multiple distinct networking stacks for the same protocol, e.g. multiple TCP/IP stacks. This paper defines, msocket, an extension to the Berkeley socket API which overcomes this limitation. msocket has been implemented as a feature of the View-OS project. Finally, we illustrate the utility and effectiveness of our extended API by providing some examples of its use.