Virtualizing Network I/O on End-Host Operating System: Operating System Support for Network Control and Resource Protection

  • Authors:
  • Takashi Okumura;Daniel Mosse

  • Affiliations:
  • -;IEEE Computer Society

  • Venue:
  • IEEE Transactions on Computers
  • Year:
  • 2004

Quantified Score

Hi-index 14.98

Visualization

Abstract

In the recent past, with the advent of more powerful networks, computations have become more distributed in nature and control of network resources has become essential for Operating Systems (OS). Nevertheless, proposed primitives for network control at end-host OS are designed without an OS design perspective and have been in disagreement with existing OS constructs, causing a variety of problems. In this paper, we propose a new OS service for network control, namely, hierarchical virtualization of network interface. The virtual network interface is hierarchically structured and attached to various OS constructs, such as threads, processes, and sockets, for the control of their network I/O. We show that our proposed mechanism provides the following properties: 1) flexible control granularity, 2) resource protection, 3) reasonable abstraction and Application Programming Interface (API), and 4) various types of packet scheduling and control in a single framework, such as work-conserving and non-work-conserving, in accordance with existing OS mechanisms. For a proof of concept, we present an implementation on a PC-Unix, using the file system abstraction, and carry out systematic profiling. The system exhibited the expected control behavior, that is, good responsiveness to the control commands while keeping the performance penalty small.