Transcript Document

NetQoPE: A Middleware-based Netowork QoS
Provisioning Engine for Distributed Real-time and
Embedded Systems
Jaiganesh Balasubramanian
[email protected]
Work done in collaboration with
Sumant Tambe, Aniruddha Gokhale & Doug Schmidt (Vanderbilt)
Srirang Gadgil, Frederic Porter & Dasarathy Balakrishnan (Telcordia)
ISIS, Dept. of EECS
Vanderbilt University
Nashville, Tennessee
May 3, 2007
CS WithIt Seminar
www.dre.vanderbilt.edu
Distributed Real-time & Embedded (DRE) Systems
• Network-centric and large-scale “systems
of systems”
– e.g., industrial automation, emergency
response
• Satisfying tradeoffs between multiple (often
conflicting) QoS demands
– e.g., secure, real-time, reliable, etc.
• Regulating & adapting to (dis)continuous
changes in runtime environments
• e.g., online prognostics, dependable
upgrades, keep mission critical tasks
operational, dynamic resource mgmt
DRE systems developed via robust and
reliable system composition and
integration of services and applications
2
Challenges in Realizing DRE Systems
Variability in the problem space
(domain expert role)
•Functional diversity
•Composition, deployment and
configuration diversity
•QoS requirements diversity
Variability in the solution space
(systems integrator role)
•Diversity in platforms,
languages, protocols & tool
environments
•Enormous accidental &
inherent complexities
•Continuous
evolutionartifacts
& change
Mapping problem
to solution artifacts is hard
3
Case Study: Modern Office Environment
• Office traffic operates over IP
networks & Fast ethernets
• Multiple application flows:
• Email
• Videoconferencing
• Sensory (e.g., fire alarms)
• Differing QoS requirements
• Fire alarm – highest priority
• Videoconf – multimedia
• Email – best effort
• QoS provisioned using DiffServ
Network QoS Provisioning Steps
1. Specify network QoS requirements for each application flow
2. Allocate network-level resources and DiffServ Code Points (DSCP) for
every application flow joining two end points
3. Mark outgoing packet with the right DSCP values
4
Challenge 1: QoS Requirements Specification
• x
5
Challenge 2: Network Resource Allocation
• x
6
Challenge 3: Runtime Network QoS Settings
• x
7
NetQoPE Multistage Architecture
• Stage 1
• Capabilities for intuitive and scalable network QoS specification
• Stage 2:
• Capabilities for resource allocation and configuration
• Stage 3:
• Capabilities for runtime support for QoS settings enforcement
8
Stage 1 : Model Driven Engineering
• Model Driven Engineering
solution
• Component QoS Modeling
Language
• Provides intuitive
abstractions to specify QoS
• Scalable solutions
• Developed in GME
• Network QoS modeling
allows modeling QoS per
application flow
Office Scenario
• Server room to control room is HP
• Parking lot to control room is
• Videoconferencing is MM
• Temperature sensor is HR
• Classification into high
priority (HP), high reliability
(HR), multimedia (MM) and
best effort (BE) classes
• Enables bandwidth
reservation in both directions
• Client propagated or server
declared models
9
Stage 2: Resource Allocator Engine
• xyz
10
Stage 3: Runtime Policy Framework
• xyz
11
Evaluating NetQoPE
• Experimental Setup
• ISISlab setup blade servers
running Fedora core
• DiffServ QoS over IP
Networks
• Telcordia Bandwidth Broker
• Objectives (describe in one line what the 3 eval criteria are)
12
Results 1: Measuring Runtime Overhead
• Rationale
• Observations
• Analysis
13
Results 2: QoS Customization Capabilities
• Rationale
• Observations
• Analysis
14
Results 3: Admission Control Capabilities
• Rationale
• Observations
• Analysis
15
Concluding Remarks
Multiple levels of abstraction required for
resolving tangling of QoS issues
• Need expressive power to define QoS
intent in the problem space, and perform
design-time analysis
Systemic
Model
Functional
Model
Analysis
Weaver
<CONFIGURATION_PASS>
<CONFIGURATION_PASS>
<HOME>
<…>
<HOME>
<…>
<COMPONENT>
<COMPONENT>
<ID>
<…></ID>
<ID> <…></ID>
<EVENT_SUPPLIER>
<EVENT_SUPPLIER>
<…events
this component
<…events this component
supplies…>
supplies…>
</EVENT_SUPPLIER>
</EVENT_SUPPLIER>
</COMPONENT>
</COMPONENT>
</HOME>
</HOME>
</CONFIGURATION_PASS>
</CONFIGURATION_PASS>
Benchmarking
Synthesis
Component
Creates
XML to
IDL
Impl
R-F
R-F
Plan
Analyzers
Resource
Requirements
Developer
Plan
Managers
Impl
Impl
Creates
Properties
Assembler
LISP to
IDL
Component
Creates
Priority
Sched .
path
Uses
2D Bin
packing
Executor
Access
Resources
Deploys
Output
Adapters
Desktop
F-R
R-F. Line source is a Receptacle and
Line destination is a Facet
Packager
Planner
R-F
To
DAnCE
Creates
Deployment Plan
Priority
Sched .
Applications that fetch
XML or LISP and call
appropriate plug -ins
F-R. Line source is a Facet and Line
destination is a Receptacle
Component
Assembler
F-R
F-R
2D Bin
packing
path
Component Assembly
Component
Component
Printer
Repository
Administrator
Laptop computer
Ethernet
To
OpenCCM
Component Packages
Configures
Bridge
COMPONENT REPOSITORY
Firewall
Domain
QoS Specs
Dependencies
Specifies
Domain
Administrator
www.dre.vanderbilt.edu
Configurations
16