410 likes | 1.53k Vues
Quality of Service in Distributed Systems (Part 1 of Distributed QoS Tutorial) Klara Nahrstedt klara@cs.uiuc.edu http://www.cs.uiuc.edu/~klara http://cairo.cs.uiuc.edu Department of Computer Science University of Illinois at Urbana Champaign Outline of the Tutorial
E N D
Quality of Service in Distributed Systems(Part 1 of Distributed QoS Tutorial) Klara Nahrstedt klara@cs.uiuc.edu http://www.cs.uiuc.edu/~klara http://cairo.cs.uiuc.edu Department of Computer Science University of Illinois at Urbana Champaign
Outline of the Tutorial • Quality of Service Definition, Services, Protocols, Frameworks (Part 1) • QoS Specification and Translation (Part 2) • QoS Issues in Operating Systems (Part 3) • QoS Issues in Distributed Systems (Part 4) • Conclusion
Quality of Service Issues(Outline) • Quality of Service Definition • Service Classes • QoS Operations • Resource Operations • Current State of Art • Design Principles • QoS Architectures and Frameworks
Quality of Service • Justification: • Multimedia systems consist of a set of services. • For multimedia services to be accepted, they need to provide high quality of their service. • In order to provide more generic multimedia services, the services get parameterized with so called Quality of Service (QoS) parameters • Examples of QoS parameters: • Audio and video services: • Sample rate 8000 samples per second • Video resolution 8 bits per pixel • Network service: • Connection setup time 50 ms • Loss rate 3 packets per second
Quality of Service • Definition: QoS specifies how good the offered service is • QoS concept came from networking services (ISO standard definition) • QoS concepts were extended towards a layered model of QoS because many applications such as multimedia include not only networking services. • All applications require end-to-end QoS guarantees, i.e., user-to-user QoS guarantees
Layered Model of QoS (Perceptual QoS) User / Human Perception (Application QoS) Applications / Tasks (System QoS) System: Operating and Distributed Systems (Device QoS) (Network QoS) Multimedia Devices Network Devices
Application QoS • Media Qualities • Media characteristic qualities • Compression rate, frame rate, tracking precision • End-to-end qualities • Frame loss rate, end-to-end delay, cost, jitter • Media Relation Qualities • Synchronization skew, conversion bounds
System QoS • Application Subsystem • Task scheduling qualities per medium • Priority, duration, period, deadlines, ordering • Space qualities • Network Subsystem • Task scheduling qualities per connection • Priority, duration, period, deadline • Space qualities
Network QoS • Throughput qualities • Throughput, burst size, duration of burst • Traffic qualities • Packet loss rate, intermediate delay, packet end-to-end delay • Performance qualities • Ordering, error control, cost, priority, multicast vs. unicast
Application System QoS and Resource Management (Middleware) (OS) Network End-to-End QoS Application System QoS and Resource Management (Middleware) (OS) QoS and Resource Management Network Network (Switch/Router)
Service Classes • Services are classified according to the delivery of their qualities • Guaranteed Service Class – QoS is guaranteed based on deterministic QoS parameter values • Predictive Service Class – QoS is based on estimations which use past behavior of the service • Best Effort Service Class – There are no QoS guarantees
Service Classes • QoS class determines (1) reliability of the offered QoS, (2) utilization of resources • Trade-offs Guaranteed class Application 1 Reserved For App1 Reserved For App2 Application 2 Best Effort class Application 1 Conflict Application 2
Guaranteed Service Deterministic QoS Parameters • Single Value of QoS • Average value, contractual value, threshold value, target value • Pair Values of QoS <QoS1, QoS2>, where QoS1 is required value, QoS2 is desired value • <QoSave, QoSpeak>, <QoSmin, QoSmax> • Triple Values of QoS <QoS1, QoS2, QoS3>, where QoS1 is best value, QoS2 is average value, QoS3 is worst value • <QoSpeak, QoSave, QoSmin>
Guaranteed Service • We need to provide 100% guarantees (hard guarantees) or very close to 100% guarantees (soft guarantees) • Current QoS calculation and resource allocation are based on • Hard upper bounds for imposed workloads • Worst case assumptions about system behavior • Advantages: • QoS guarantees are satisfied even in the worst possible case, hence very high reliability in guarantees • Disadvantages: • Over-reservation of resource capacities,hence needless rejection of reservation requests
Predictive ServiceStatistical QoS Parameters • We utilize past values (QoS1, …, QoSi) to estimate future QoS values at step K>i: • Average value: QoSK=1/i x jQoSj • Maximum value: QoSK = maxj=1,…,i(QoSj) • Minimum value: QoSK = minj=1,…,i(QoSj) • Example of Request: Satisfy 95% times the QoSK bound during the lifetime of the service
Best Effort Class • No QoS guarantees or only soft bounds • Possible calculation of soft QoS bounds can be based on • Average case with stochastic description of imposed workload • Average case with stochastic assumptions about the system behavior • Advantages: • Resource capacities can be statistically multiplexed, hence more processing requests can be granted • Disadvantages: • QoS may be temporarily violated, hence the service guarantees are not reliable
Relation between QoS and Resources Programming and Development Phase (Offline) QoS Translation Compilation Application QoS Programming QoS Configurations Establishment Phase (Online Instantiation) Resource Reservation Allocation QoS Translation Negotiation Distribution User QoS Requirements QoS contract To user Enforcement Phase (Online Runtime) QoS Enforcement by Resource Control and Adaptation Media Processing and Communication
QoS Operation (QoS Translation) • QoS Management performs operations such as translation, negotiation, re-negotiation,adaptation • Bidirectional QoS Translation • Human interface (user QoS) – application QoS • Application QoS – system QoS • System QoS – network QoS • Translation methods • Media Scaling • Transparent scaling vs non-transparent scaling • Temporal video scaling, frequency scaling, spatial scaling • Analytic translation • Translation via Probing and Profiling • Substitution and Transformation
Service User (Initiatee) Service User (Initiator) Requested QoS Value Changed QoS Value Connect confirm Connect request Connect indication Connect response Service Provider QoS Operations (QoS Negotiation) Bidirectional QoS Negotiation
Service User (Initiatee) Service User (Initiator) Target QoS Available QoS Selected QoS Selected QoS Lowest QoS acceptable Connect confirm Connect request Connect indication Connect response Service Provider QoS Operations (QoS Negotiation) Triangular QoS Negotiation with Bounded Value
QoS Negotiation within the Layered Model Tune User/Application QoS (Peer-to-Peer Communication) Negotiate/Renegotiate Application QoS (Layer-to-Layer Communication) QoS Translator (bi-directional) Negotiate/Renegotiate System QoS accept/modify reject
Resource Management Operations • Resource management performs operations during the establishment and execution phases to provide and enforce QoS • Establishment phase: schedulable units using shared resources must be admitted, and resources must be reserved and allocated • Enforcement phase: schedulable units must be scheduled, shaped, and possible adapted according to QoS contract during the lifetime of the application
Resource Establishment Operations • QoS to resource mapping: need translation profiles • Resource admission: need admission tests to check availability of shared resources • Resource reservation: need reservation along the path from initiator to initiatee • Resource allocation: need allocation according to QoS contract along the path from initiator to initiatee
Admission Tests • Task schedulabilitytests for CPU for deadline guarantees • Earliest deadline first scheduling test • Σiei/Pi 1, where ei is task processing time and Pi is task period • Packet schedulabilitytest for delay and jitter guarantees • Link bandwidth test for throughput guarantees • j Bj + Breq Bmax, where Bjis admitted bandwidth of connection j, Breq is requested bandwidth by new connection, and Bmax is the maximal bandwidth capacity which the network host interface can provide
Resource Reservation Operation • There are two types of reservations: • Pessimistic Approach – worst case reservation • Optimistic Approach – average case reservation • For resource reservation we need: • Resource Table for managed resources • Reservation Table for current reserved resources • Reservation Function which maps QoS to resources and operates on reservation table • Reservation Protocol to provide end-to-end reservation • There are two reservation styles: • Sender-initiated • Receiver-initiated
Resource Enforcement Operations • Resource Scheduling • Earliest Deadline First, Rate-Monotonic, Weighed Fair Queuing • Rate Control and Traffic Shaping • Leaky Bucket, Token Bucket, Stop-and-Go • End-to-End Error Control • Forward Error Correction, Selective Retransmission • Flow Control • Open Loop Flow Control (no feedback) • Closed Loop Flow Control (with feedback) • Flow Synchronization • Jitter Control, Traffic Shaping
Management Operations • Resource and QoS Monitoring • Monitoring should be flexible: most variables should be optional and monitoring can be turned on and off • Two modes of monitoring: • User-mode monitoring • Network-mode monitoring • QoS Maintenance – Comparison of monitored QoS with contracted QoS • QoS Degradation – Adaptation of QoS level to lower level
Management Operations • QoS Signaling – Specification of an interval over which QoS should be monitored and user informed about delivered performance • QoS Scaling – Changes of QoS levels by utilizing QoS filtering and QoS adaptation to achieve scalability when resource availability changes
QoS Renegotiation Operation Application Management (User Interface) Signal “Change ApplicationQoS” Application QoS Renegotiation Entity System QoS Signal “Change System QoS” System Management (Middleware, OS, Communication Protocol Stack)
QoS and Resource Adaptation • As a result of a renegotiation request (request for change in quality), adaptation in QoS and adaptation in resource allocation must happen • Renegotiation request can come from: • User, Host System, Network • Resource Adaptation • Network Adaptation • Dynamic re-routing mechanism • Enhanced Random Early Detection (ERED) mechanism • TCP modification of window algorithm • Source Adaptation • Temporal scaling with feedback • Multiple Descriptions, Layered Encoding
Current State of QoS Provision • Incompleteness: Current interfaces are generally not QoS configurable • Lack of QoS enforcement mechanisms: Research is needed in distributed control, monitoring, adaptation and maintenance of QoS mechanisms • Lack of overall frameworks: Research is needed in QoS frameworks for heterogeneous environments (ubiquitous computing)
Design Principles for QoS • Integration Principle: QoS should be configurable, predictable, maintainable over all layers • Separation Principle: Separation of transfer, control and management • Transparency Principle: Application should be shielded from the complexity of underlying QoS specifications and mechanisms
Design Principles for QoS • Asynchronous Resource Management Principle: Component-based design and functionality division between architectural modules should be supported • Performance Principle: Avoidance of multiplexing, Application Layer Framing, Integrated Layer Processing, usage of hardware
QoS Architectures in Distributed Multi-media applications • Requirements: • Multi-media applications are sensitive to QoSprovided by the underlying system components; • Improvement of QoS in individual system components such as network, OS, disk is not enough; • Meeting QoS guarantees in distributed multi-media systems is fundamentally an end-to-end issue;
QoS-A, Lancaster • Idea: A layered architecture of services and mechanisms for quality of service management and control of continuous media flows in multi-service networks • Concepts: • Flow characterizing the production, transmission, and eventual consumption of single media streams (both unicast and multicast) with associated QoS; • Service contracts binding agreements of QoS levels between users and providers; • Flow management providing for the monitoring and maintenance of the contracted QoS levels.
QoS-A • Architecture: - Protocol plane consisting of distinct user and control sub-planes; - QoS management plane containing a number of layer specific QoS managers responsible for the fine grained monitoring and maintenance of their associated protocol entities; - Flow management plane responsible for flow establishment, QoS mapping, and QoS scaling. (From Aurrecoechea, C., Campbell, A.T. and L. Hauw, "A Survey of QoS Architectures", ACM/Springer Verlag Multimedia Systems Journal , Special Issue on QoS Architecture, Vol. 6 No. 3, pg. 138-151, May 1998.)
OMEGA, U. Penn. • Idea: End-point architecture for provision of QoS guarantees in Networked Multimedia Systems (NMS) via the integration of application, OS and network resources Mechanisms: - Orchestrating resources at end-points, coordinating resource management across layer boundaries via the QoS Broker; - Using of a global precedence graph for time synchronization among all tasks participating in successful end-to-end QoS; - Transferring of task priorities from application to transport subsystem.
OMEGA • Architecture: (From Klara Nahrstedt, Jonathan M. Smith, “Design, Implementation and Experiences with the OMEGA End-point Architecture”, IEEE Journal on Selected Areas in Communication, Vol. 17, No. 7, September 1996, pp. 1263-1279.)
QoSME, Columbia U. • Idea: A QoS management framework for distributed multimedia applications with a Language-level abstractions • Mechanisms: - Enabling the specification of how to allocate, monitor, analyze and adapt to delivered QoS via Quality Assurance Language (QuAL); - Automatically generating the instrumentation to monitor QoS when the compiled applications use QoSockets and QoSOS; - Integrating QoS management with standard network management framework.
QoSME • Architecture: (From Patricia Gomes Soares Florissi,”QoSME: QoS Management Environment”, Ph.D. Thesis, Columbia University, 1996.)
Summary of Part 1 • We have talked about: • General Definition of QoS • Operations on QoS such as Negotiation, Translation • Relationship between QoS and Resources • Operations in QoS-aware Resource Management such as Resource Reservation, Admissions Control, Resource Scheduling, Adaptation • QoS Management, Algorithms and Protocols, Design Principles • Case Studies of QoS Management Architectures such as QoS-A, OMEGA, QOSME