Virtualizing Network I/O on End-Host Operating System: Operating System Support for Network Control and Resource Protection
Issue No.10 - October (2004 vol.53)
Daniel Moss? , IEEE Computer Society
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TC.2004.86
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.
Operating systems, process management, network communication.
Takashi Okumura, Daniel Moss?, "Virtualizing Network I/O on End-Host Operating System: Operating System Support for Network Control and Resource Protection", IEEE Transactions on Computers, vol.53, no. 10, pp. 1303-1316, October 2004, doi:10.1109/TC.2004.86