Operating System Support for Network ControlOperating System Support for Network Control
a virtual network interface approach for end-host OSsa virtual network interface approach for end-host OSs
Takashi OkumuraTakashi OkumuraWIDE Project / Asahikawa Medical WIDE Project / Asahikawa Medical
CollegeCollegeDaniel Mossé
University of Pittsburgh
Masaki MinamiKeio University
Osamu NakamuraKeio University
T. Okumura, OS support for network controlIWQoS 2002
Contents
Introduction
Control Model
Implementation & Performance
Conclusion
Introduction- The problem we addressed -
T. Okumura, OS support for network controlIWQoS 2002
Priority inversion problem in network
Kernel
Userland
Low priorityprocess
Network Interface
High priorityprocess
Need for Network Control Service by End-Host OS
T. Okumura, OS support for network controlIWQoS 2002
Some implementations, but...
No work has explored this issue in the context of design principle of operating systems...
Dummynet, ALTQ, LTS MS QoS Managernetnice
T. Okumura, OS support for network controlIWQoS 2002
Need for a Resource Protection Model
Dummynet, ALTQ, LTSnetnice
??
T. Okumura, OS support for network controlIWQoS 2002
Need for Flexible Control Granularity
Per-Flow control, Per-Process control, Per-* control...
Per-flow Per-threadPer-process
T. Okumura, OS support for network controlIWQoS 2002
Various types of network control
Priority Queuing
Weighted
Fair
Queuing
Work-conserving: PQ, WFQ, etc...Non Work-conserving: LB, TB, etc...
Token
Bucket
T. Okumura, OS support for network controlIWQoS 2002
Useful System Interface
Need a API that enables various controls in a single scheme.
Control Model- How OS support for Network Control should be
realized -
T. Okumura, OS support for network controlIWQoS 2002
An Alternative Approach
BEFORE AFTER
Virtualization of network interfaces!!
VIF : Virtual Network InterFace
T. Okumura, OS support for network controlIWQoS 2002
What VIF provides (1)
Hierarchical Resource Protection Model
T. Okumura, OS support for network controlIWQoS 2002
What VIF provides (2)
Flexible Control Granularity
T. Okumura, OS support for network controlIWQoS 2002
What VIF provides (3)
Realization of various network control
Fair QueuingPacket shaping
T. Okumura, OS support for network controlIWQoS 2002
netnice command% netnice -i fxp0 2002 64Kbps
2002
fxp0
2003
fxp0
VIF_1
T. Okumura, OS support for network controlIWQoS 2002
45Mbps
netniced daemonQuality of Service Manager for VIF kernel
netniced
http stream
Packet Shaper
HTML CGI Pseudo-stream
Priority Queue
Constant Bit Rate Stream
httpd
Implementation & Performance
T. Okumura, OS support for network controlIWQoS 2002
System Interface: procfs
/proc
100/ 101/
files sockets/
fxp0@lo0@
fxp0
VIF_1 VIF_2
100 101
network/
fxp0/
VIF_1/ VIF_2/
params
lo0/
params
Protection semantics is given by file access control...
T. Okumura, OS support for network controlIWQoS 2002
Kernel Module
Device Output
Interface Output
Network Output
Transport Output
Device Input
Interface Input
Network Input
Transport Input
kernel
userland
Struct ifnet
ipintr
Hierarchical Packet Scheduler
T. Okumura, OS support for network controlIWQoS 2002
VIF Throughput
T. Okumura, OS support for network controlIWQoS 2002
VIF Delay
T. Okumura, OS support for network controlIWQoS 2002
Syscalls
(in msec)
Conclusion
T. Okumura, OS support for network controlIWQoS 2002
How OS support for network control should be realized
• Through virtualization of network Through virtualization of network interfaces!interfaces!
AFTER
BEFORE
T. Okumura, OS support for network controlIWQoS 2002
Advantages
Hierarchical resource protectionHierarchical resource protection
Flexible control granularityFlexible control granularity
Various types of network controlVarious types of network control
Simple, but powerful, APISimple, but powerful, API
Realized at reasonable cost,Realized at reasonable cost,for general-purpose Operating Systems.for general-purpose Operating Systems.
Thank you for listening!!
http://www.asahikawa.wide.ad.jp/netnice/
Abstraction of communicationvs
Virtualization of network interface
T. Okumura, OS support for network controlIWQoS 2002
Abstraction of Communication Flows
What is it
Two perspectives Network Perspective: Low-level abstraction
OS Perspective: High-level abstraction
T. Okumura, OS support for network controlIWQoS 2002
Network PerspectiveNetwork Perspective
Lack of system protection
Scalability problem
?
Lack of user knowledgeOS should provide unified
OS should provide unified
resource management scheme!!
resource management scheme!!
T. Okumura, OS support for network controlIWQoS 2002
Operating System PerspectiveOperating System Perspective
?
• Lack of controllability of remote resources
?
?
• Difficulty in the separation of system functionality
??
?
• Lack of a simple API for various topologies and protocols
High-level abstraction for High-level abstraction for
communication flow is not easy!
communication flow is not easy!
T. Okumura, OS support for network controlIWQoS 2002
Abstraction of Communication Flows, Revisited.
Low(network)
High(OS)
?
OS support for network contorl requiresOS support for network contorl requiresa new paradigma new paradigm for its design principle... for its design principle...