290 likes | 443 Views
QoS-Aware Dependency Management for Component Based Systems. Multimedia Operating and Networking System (MONET) Group Yi Cui and Klara Nahrstedt {yicui, klara}@cs.uiuc.edu. Motivation. Outline. Background Dependency Graph Model MinCost Algorithm Performance Study Summary. Challenges.
E N D
QoS-Aware Dependency Management for Component Based Systems Multimedia Operating and Networking System (MONET) Group Yi Cui and Klara Nahrstedt {yicui, klara}@cs.uiuc.edu
Outline • Background • Dependency Graph Model • MinCost Algorithm • Performance Study • Summary
Challenges • Customizable Systems • Flexibility, performance improvement, extensibility, etc. • Configuring labor, error-prone, etc. • A simple group RPC service may have over 200 candidate configurations (Matti Hiltunen) • Dynamic Heterogeneity of Distributed Systems • Ubiquitous Multimedia Service Delivery • Competitive Resource Condition should be considered in the configuration decision
Our Approach:QoS-Aware Dependency Management • Systematic Management vs. Ad hoc Configuration • Dependency Checking • QoS enforcement • Integration with Resource Management
C1 C2 C3 C4 C5 C6 C7 Modeling Dependencies in Graphical Representation Video-on-demand (VOD) Voice Mail (VM) Network Adaptor (NA) Naming Service (NS) Location Service (LS) Network Observer (NO) Object Request Broker (ORB)
Related Problems C1 C1 C2 C3 C2 C4 C5 C7 C3 C4 C5 C6 C8 C6 C7 C10 C9 Minimal Cover Problem False Configuration Checking
Multiple Configuration Problem Video-on-demand (VOD) Voice Mail (VM) TCP based approach UDP based approach Naming Service (NS) Badge GPS TCP Network Adaptor (TCP_NA) UDP Network Adaptor (UDP_NA) Badge Location Service (Badge_LS) GPS Location Service (GPS_LS) TCP Network Observer (TCP_NO) UDP Network Observer (UDP_NO)
Dependency Configuration Graph A1 A2 A1 A2 C3 C4 C1 C2 C2 C5 C4 C6 C1 C2 C4 C5 C6 C3 C7 C8 C9 C10 C7 C8 C9 C10
MinCost Algorithm • Retrieve the best system configuration with the minimal resource cost • Search through the Dependency Configuration Graph • Pruning-based Approach A1 = 10 A2 = 12 C1 = 6 C2= 7 C3 = 4 C4= 6 C5= 4 C6= 9 C7= 9 C8= 1 C9= 4 C10= 6 Minimal Cost Configuration A1 A2 C3 C4 C1 C2 C2 C5 C4 C6 C7 C8 C9 C10
minCost = 22 A1 A2 A1 A2 A1 = 10 A2= 12 C3 C4 C1 C2 C2 C5 C4 C6 C7 C8 C9 C10 A1 A2 C3 C4 C1 C2 C2 C5 C4 C6 C7 C8 C9 C10
A1 A2 A1 A2 A1 = 10 A1 = 10 A2= 12 A2= 12 39 A1A2C1C2C5 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C1 = 6 C2= 7 C5= 4 C7 C7 C8 C8 C9 C10 C9 C10 minCost = 22 A1 A2
A1 A2 A1 A2 A1 = 10 A1 = 10 A2= 12 A2= 12 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C1 = 6 C1 = 6 C2= 7 C2= 7 C5= 4 C5= 4 48 C7 C7 C8 C8 C9 C10 C9 C10 A1A2C1 C2C5C7 C7= 9 minCost = minCost = 48 22 A1 A2 39 A1A2C1C2C5
A1 A2 A1 A2 A1 = 10 A1 = 10 A2 = 12 A2= 12 50 A1A2C1C2C4C6 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C1 = 6 C1 = 6 C2= 7 C2= 7 C4= 6 C5= 4 C6= 9 C7 C7 C8 C8 C9 C10 C9 C10 C7= 9 minCost = 48 22 A1 A2 39 A1A2C1C2C5 48 A1A2C1 C2C5C7
A1 A2 A1 A2 A1 = 10 A1 = 10 A2 = 12 A2 = 12 41 A1A2C3C4C6 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C1 = 6 C2= 7 C3 = 4 C4= 6 C4= 6 C6= 9 C6= 9 C7 C7 C8 C8 C9 C10 C9 C10 minCost = 48 22 A1 A2 39 50 A1A2C1C2C5 A1A2C1C2C4C6 48 A1A2C1 C2C5C7
A1 A2 A1 A2 A1 = 10 A1 = 10 A2 = 12 A2 = 12 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C3 = 4 C3 = 4 C4= 6 C4= 6 C6= 9 C6= 9 42 C7 C7 C8 C8 C9 C10 C9 C10 A1A2C3 C4C6C8 C8= 1 minCost = 48 minCost = 42 22 A1 A2 39 50 41 A1A2C1C2C5 A1A2C1C2C4C6 A1A2C3C4C6 48 A1A2C1 C2C5C7
A1 A2 A1 A2 A1 = 10 A1 = 10 A2 = 12 A2 = 12 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C3 = 4 C3 = 4 C4= 6 C4= 6 C6= 9 C6= 9 51 C7 C7 C8 C8 C9 C10 C9 C10 A1A2C3C4 C6C9C10 C8= 1 C9= 4 C10= 6 minCost = 42 22 A1 A2 39 50 41 A1A2C1C2C5 A1A2C1C2C4C6 A1A2C3C4C6 48 42 A1A2C1 C2C5C7 A1A2C3 C4C6C8
A1 A2 A1 A2 A1 = 10 A1 = 10 A2 = 12 A2 = 12 43 A1A2C3C4C2C5 C3 C4 C3 C4 C1 C2 C1 C2 C2 C5 C2 C5 C4 C6 C4 C6 C2= 7 C3 = 4 C3 = 4 C4= 6 C4= 6 C5= 4 C6= 9 C7 C7 C8 C8 C9 C10 C9 C10 C9= 4 C10= 6 minCost = 42 22 A1 A2 39 50 41 A1A2C1C2C5 A1A2C1C2C4C6 A1A2C3C4C6 48 42 51 A1A2C1 C2C5C7 A1A2C3 C4C6C8 A1A2C3C4 C6C9C10
Complete Searching Tree 22 A1 A2 39 50 41 43 A1A2C1C2C5 A1A2C1C2C4C6 A1A2C3C4C6 A1A2C3C4C2C5 48 42 51 A1A2C1 C2C5C7 A1A2C1C2 C4C6C7C8 A1A2C1C2C4 C6C7C9C10 A1A2C3 C4C6C8 A1A2C3C4 C6C9C10 A1A2C3C4 C2C5C8 A1A2C3C4 C2C5C9C10
Associate System Cost with Vector Representation • System cost of components may involve multiple resource types • Resource Dependency Vector (RDV) • <CPU, Network, Mem, …> • RDV preserves the basic properties of single-value-based addition and comparison
RDV-based Addition • Definition • Symmetricity • Associativity
RDV-based Comparison • Definition • System Resource Capacity • Symmetricity • Transitivity
Performance Study • Success Rate • Configuration Overhead • MinCost algorithm vs. Fixed and Random approach • Simultaneous application requests under resource competitive condition
Simulation Setup C0 C1 C2 C3 C4 C5C6 C7C8 C6C9 C8C10 C15C16 C17C18 C16C19 C9C17 C5C19 C18C20 C20 C5 C7 C9 C15 C17 C8 C18 C6 C10 C16 C11 C12 C13 C14 C21 C22 C23 C24 C11 C12 C13 C14 C21 C24 C22 C23 • System Capacity = <80% ~ 100%, 0.9 ~ 1.3Mbps> • Total Cost of all components = <180%, 1.98Mbps>
Simulation Result Success Rate Configuration Overhead
Simulation Result Overall Success Rate Overall Configuration Overhead
Related Work • Dependency Graph • Database system • Global snapshot of distributed system • Configuration Programming • Darwin, UNICON, etc. • Customizable System • Reflective Middleware • Cactus Project
Summary • QoS-Aware Dependency Management • Dependency Graph Representation • Automatic System Configuration • Resource Consumption Optimization
Thank You http://www-monet.cs.uiuc.edu