Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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