Automated QoS Support for Multimedia Disk Access



Similar documents
Introduction. Application Performance in the QLinux Multimedia Operating System. Solution: QLinux. Introduction. Outline. QLinux Design Principles

Managing the performance of large, distributed storage systems

Sources: Chapter 6 from. Computer Networking: A Top-Down Approach Featuring the Internet, by Kurose and Ross

Challenges of Data Storage for Soft Real-Time Applications (in Service Oriented Infrastructures) Darren Golbourn (Xyratex) December 2009

Los Angeles, CA, USA [kunfu,

Scott Banachowski, Joel Wu, and Scott A. Brandt C.S. Dept., University of California Santa Cruz, 1156 High St., Santa Cruz, CA USA 95064

Mixing Hadoop and HPC Workloads on Parallel Filesystems

Stability of QOS. Avinash Varadarajan, Subhransu Maji

Exploring RAID Configurations

Quality of Service versus Fairness. Inelastic Applications. QoS Analogy: Surface Mail. How to Provide QoS?

QoS Parameters. Quality of Service in the Internet. Traffic Shaping: Congestion Control. Keeping the QoS

A Review on Quality of Service Architectures for Internet Network Service Provider (INSP)

Rackspace Cloud Databases and Container-based Virtualization

6.6 Scheduling and Policing Mechanisms

5 Performance Management for Web Services. Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology.

PriDyn: Framework for Performance Specific QoS in Cloud Storage

Quality of Service in the Internet. QoS Parameters. Keeping the QoS. Traffic Shaping: Leaky Bucket Algorithm

Managing Storage Space in a Flash and Disk Hybrid Storage System

A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems*

Optimizing Shared Resource Contention in HPC Clusters

Improving Quality of Service

Storage I/O Control: Proportional Allocation of Shared Storage Resources

Sockets vs. RDMA Interface over 10-Gigabit Networks: An In-depth Analysis of the Memory Traffic Bottleneck

CS640: Introduction to Computer Networks. Why a New Service Model? Utility curve Elastic traffic. Aditya Akella. Lecture 20 QoS

The FX Series Traffic Shaping Optimizes Satellite Links

APPLICATION NOTE 209 QUALITY OF SERVICE: KEY CONCEPTS AND TESTING NEEDS. Quality of Service Drivers. Why Test Quality of Service?

A Resource Management Framework for Predictable Quality of Service in Web Servers

4 Internet QoS Management

Evaluation Report: Accelerating SQL Server Database Performance with the Lenovo Storage S3200 SAN Array

A Novel Load Balancing Optimization Algorithm Based on Peer-to-Peer

VoIP Network Dimensioning using Delay and Loss Bounds for Voice and Data Applications

Increasing the capacity of RAID5 by online gradual assimilation

PART II. OPS-based metro area networks

On Benchmarking Popular File Systems

Network Infrastructure Services CS848 Project

Quality of Service (QoS) EECS 122: Introduction to Computer Networks Resource Management and QoS. What s the Problem?

Scheduling Video Stream Transmissions for Distributed Playback over Mobile Cellular Networks

Quality of Service on the Internet: Evaluation of the IntServ Architecture on the Linux Operative System 1

Real-Time Communication in IEEE Wireless Mesh Networks: A Prospective Study

A Scalable Video-on-Demand Service for the Provision of VCR-Like Functions 1

Overlapping Data Transfer With Application Execution on Clusters

What is RAID? data reliability with performance

A hierarchical multicriteria routing model with traffic splitting for MPLS networks

Performance Evaluation of VMXNET3 Virtual Network Device VMware vsphere 4 build

Load Distribution in Large Scale Network Monitoring Infrastructures

MANAGEMENT METHODS IN SLA-AWARE DISTRIBUTED STORAGE SYSTEMS

CS 268: Lecture 13. QoS: DiffServ and IntServ

Monitoring Large Flows in Network

Removing Performance Bottlenecks in Databases with Red Hat Enterprise Linux and Violin Memory Flash Storage Arrays. Red Hat Performance Engineering

VMware Virtual SAN Backup Using VMware vsphere Data Protection Advanced SEPTEMBER 2014

PQoS Parameterized Quality of Service. White Paper

Smart Queue Scheduling for QoS Spring 2001 Final Report

HyperThreading Support in VMware ESX Server 2.1

Stream Processing on GPUs Using Distributed Multimedia Middleware

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

Architecture of distributed network processors: specifics of application in information security systems

Multi-level Metadata Management Scheme for Cloud Storage System

Requirements of Voice in an IP Internetwork

Internet Quality of Service

How To Understand And Understand An Operating System In C Programming

Multimedia Data Transmission over Wired/Wireless Networks

An End-to-End Measurement-Based Admission Control Policy for VoIP over Wireless Networks

VMWARE WHITE PAPER 1

SALSA Flash-Optimized Software-Defined Storage

AN OVERVIEW OF QUALITY OF SERVICE COMPUTER NETWORK

CRASH RECOVERY FOR REAL-TIME MAIN MEMORY DATABASE SYSTEMS

Question: 3 When using Application Intelligence, Server Time may be defined as.

TCP Behavior across Multihop Wireless Networks and the Wired Internet

Operating Systems 4 th Class

18: Enhanced Quality of Service

EXPERIMENTAL STUDY FOR QUALITY OF SERVICE IN VOICE OVER IP

Prediction System for Reducing the Cloud Bandwidth and Cost

An Efficient Non-Preemptive Real-Time Scheduling

A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM

Online Remote Data Backup for iscsi-based Storage Systems

Optimizing Network Virtualization in Xen

Intel Data Direct I/O Technology (Intel DDIO): A Primer >

MikroTik RouterOS Workshop Load Balancing Best Practice. Warsaw MUM Europe 2012

Streaming and Virtual Hosted Desktop Study

WanVelocity. WAN Optimization & Acceleration

A Network Control Plane for Massive Video Delivery

Performance Modeling and Analysis of a Database Server with Write-Heavy Workload

Quality of Service (QoS) on Netgear switches

Quality of Service (QoS)) in IP networks

Client-aware Cloud Storage

Performance Analysis of Mixed Distributed Filesystem Workloads

A Novel Way of Deduplication Approach for Cloud Backup Services Using Block Index Caching Technique

Performance Report Modular RAID for PRIMERGY

Journal of Theoretical and Applied Information Technology 20 th July Vol.77. No JATIT & LLS. All rights reserved.

GREEN: Proactive Queue Management over a Best-Effort Network

The Three-level Approaches for Differentiated Service in Clustering Web Server

CHAPTER 6. VOICE COMMUNICATION OVER HYBRID MANETs

Common Core Network Readiness Guidelines Is your network ready? Detailed questions, processes, and actions to consider.

Linux Block I/O Scheduling. Aaron Carroll December 22, 2007

Multimedia Requirements. Multimedia and Networks. Quality of Service

POSIX and Object Distributed Storage Systems

Router Scheduling Configuration Based on the Maximization of Benefit and Carried Best Effort Traffic

Tableau Server 7.0 scalability

Real-Time Analysis of CDN in an Academic Institute: A Simulation Study

Transcription:

Automated QoS Support for Multimedia Disk Access Joel C. Wu, Scott Banachowski, and Scott A. Brandt Computer Science Department, University of California, Santa Cruz ABSTRACT This paper describes the AutoQoS mechanism, which improves the timeliness of disk accesses for multimedia applications without requiring any explicit information about their constraints. Multimedia applications typically have periodic time constraints, meaning that they must complete data processing at periodic intervals in order to function correctly. This requirement extends to the disk system, because the application must access data on time in order to meet deadlines. By using Quality of Service algorithms for disk services, an application may receive enough bandwidth and isolation from other disk accesses to read data on time. Nevertheless, past approaches are restrictive because they require that disk bandwidth or deadlines be known and specified in advance. Our system infers from I/O behavior the bandwidth requirement of multimedia streams, and automatically adjusts allocations in order to provide Quality of Service without knowing the constraints or requiring intervention from the application. Keywords: Storage, QoS, Soft Real-time, and Multimedia Systems 1. INTRODUCTION Modern commodity systems are expected to run mixed-workloads that, in addition to traditional desktop applications, include tasks with periodic deadlines such as multimedia. Often meeting those deadlines depends on timely disk access, for example, a video that does not fit entirely in volatile memory must be periodically read from disk during playback. For satisfactory multimedia performance, systems must provide real-time access to the disk. Usually this implies a priori knowledge of constraints such as deadline or bandwidth requirements. We developed a mechanism called AutoQoS to provide disk Quality of Service to multimedia applications without knowledge about constraints. This supports legacy multimedia applications that were developed for best-effort systems. The operating system uses heuristics to infer the needs of applications, and adjusts the allocation of disk bandwidth among them so that multimedia applications receive constant bandwidth in isolation from the other workload. In this paper, we show that the concept of AutoQoS is wellsuited to improve the performance of best-effort systems, such as desktop computers and servers, at handling multimedia workloads.. RELATED WORK Existing systems support real-time disk access in several ways, including low-level scheduling approaches. Deadlinebased disk schedulers submit requests to the disk such that those with deadlines are served on time while at the same time reducing unnecessary disk seeks, which incur large overhead [1 3]. These algorithms will meet deadlines, but require that the deadline for each request is known by the system; our system does not require this extra capability. Other disk schedulers do similar operations to meet specific bandwidth reservations or guarantees [?,]. All of these methods require low-level information about disk devices in order to make scheduling decisions. The AutoQoS approach treats the lowlevel disk scheduler as a black box, and ensures that requests meet their constraints by preventing overload from the non-constrained traffic. Our current implementation uses the default Linux disk scheduler, however that does not preclude using reservation approaches in the future. Disk schedulers may be augmented with higher-level, policy-based mechanisms to provide different service levels to classes of applications [5 7]. These systems are hierarchical, using different schedulers to prioritize requests from each class, with a global scheduler to combine the requests and submit them to disk. AutoQoS has a similar goal of classifying requests (in our case we have two classes, one with deadline constraints and one without). However, instead of using Further author information: Email: {jwu,sbanacho,sbrandt}@cs.ucsc.edu

multimedia processes Bandwidth Monitor overload - interference SRT traffic measure actual stream rate SRT stream gets its full rate disk Total Bandwidth BE traffic best-effort processes TBF token bucket filter Time cap BE traffic use inferred rate for bandwidth allocation Figure 1. Inferring the stream rate from the multimedia path controls the bandwidth allocation of the competing best-effort path. Figure. The system limits best-effort traffic in order to expose and measure the real multimedia stream rate. different schedulers for each class, we limit the bandwidth of the non-critical class during overload. This prevents besteffort workload from interfering with multimedia requests. Unlike the other QoS systems, AutoQoS works strictly on the principle of overload avoidance. A technique similar to AutoQoS automatically adjusts disk bandwidth for real-rate applications by using feedback from their measured progress []. The goal of this proposed system is to match the disk I/O rates to the real-rate needs of applications. Our goal is to address a mixed-workload scenario. Their disk bandwidth allocator is controlled by monitoring the buffer cache, whereas our mechanism monitors the bandwidth above the file-system page cache. Another similar algorithm is a YQF [9], which controls disk bandwidth using a proportional bandwidth sharing algorithm; in contrast our system uses a bandwidth limiting algorithm to control disk bandwidth. AutoQoS differs from other approaches because it infers all the necessary information through the system, without placing any burden on the application. While there is much research on providing QoS support for disk storage, none were explicitly motivated by the desire to minimize the amount of information required from the applications or users. 3. AUTOMATED QOS SUPPORT The principle of the system is that when disk bandwidth is overloaded, multimedia applications should have priority in order to meet their timing constraints. Therefore, our system runs in its default state of taking no action until it recognizes that a multimedia application begins to stream data at a sustained rate, in which case it adjusts allocations so that the media stream receives a reservation of disk bandwidth equal to its observed flow rate. This algorithm is fully automated, and requires no explicit information from applications or users. The information necessary to make bandwidth allocation decisions is inferred by the system, thus supporting legacy multimedia applications without modification. To achieve this we need four abilities: to differentiate disk requests, to shape bandwidth, to determine the disk bandwidth requirement of multimedia processes, and to manage and adapt the allocated bandwidth, all in a fully automated way. Our system automatically differentiates disk requests by labeling those requests that act on multimedia files (recognized by file extension) as belonging to the multimedia class, and the rest as best-effort class. The remainder of this section highlights the other three functions. 3.1. Shaping disk bandwidth To control the disk bandwidth allocations, we use a mechanism based on the token-bucket filter (TBF) [1]. TBF shapes traffic in networks by controlling the rate and burst size of data transmission. In order to transmit a packet, a token from the bucket must be spent. If there are no tokens, the packet must wait until a token is replenished. The rate of token replenishment governs the maximum rate of transmission, and the size of the bucket determines the maximum number of packets that may be sent at once. In our implementation, each token represents a block of data, so the token rate limits the disk bandwidth, and the bucket size limits the number of outstanding requests. By using a TBF to limit the rate that best-effort processes issue requests, we effectively provide guaranteed bandwidth to the multimedia processes.

1 1 MM MB/s stream MB/s stream MB/s stream MB/s stream 1 1 MM MB/s stream MB/s stream MB/s stream MB/s stream 1 1 1 1 1 1 1 1 1 1 1 1 (a) Normal Linux behavior (b) AutoQoS supporting one multimedia stream Figure 3. Throughput for four MB/s streams, one of the streams is multimedia and is boosted by AutoQoS. 1 1 1 MB/s stream 1 MB/s stream MM 1 MB/s stream 1 1 1 MB/s stream 1 MB/s stream MM 1 MB/s stream 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (a) Normal Linux behavior (b) AutoQoS supporting one multimedia stream Figure. Three 1 MB/s streams. The multimedia stream enters at time 3 and terminates at time 15 and is boosted by AutoQoS. We envision a disk as having two access pipes: one pipe carries the multimedia traffic and the other pipe carries all the best-effort (BE) traffic (see Figure 1). By limiting the rate of BE requests we supply the remainder of the disk bandwidth to multimedia tasks. Our previous work showed that bandwidth limiting is effective in managing multimedia disk allocations [11]. 3.. Inferring stream rate To achieve the goal of QoS support without requiring any explicit information from applications, the system must identify when disk bandwidth is overloaded and multimedia requests are at risk of not meeting their time constraints. To do this in an automated way, AutoQoS infers the streaming rate of multimedia traffic. We currently ignore write requests, because our multimedia workloads are read intensive, and because write performance depends less on disk response time due to write buffering. To infer a multimedia application s bandwidth, whenever a process initiates access to a multimedia file, AutoQoS reduces the best-effort bandwidth to a predetermined fraction of the entire disk bandwidth. This allows the multimedia application to use a reserved portion of the disk bandwidth (possibly shared with other multimedia applications). By reducing the best-effort bandwidth, we temporarily over-provision bandwidth to multimedia streams, so that they may proceed at full rate. During this time, we monitor the actual consumed bandwidth, and once determined, increase the best-effort bandwidth to take up the portion of disk bandwidth unused by the multimedia applications (see Figure ). 3.3. Managing the bandwidth Once the bandwidth of a multimedia stream is determined, the limit on best-effort bandwidth is controlled using a heuristic. The heuristic maintains the limit at the point where best-effort workload does not interfere with multimedia, while

9 7 MM MB/s stream MM 5 MB/s stream 5 MB/s stream 5 MB/s stream 1 1 MM 9- MB/s stream MB/s stream MB/s stream 5 3 1 1 1 1 1 1 1 1 1 1 1 1 Figure 5. Support for more than one multimedia stream. Figure. Adapting the best-effort limit to changing multimedia stream rates. attempting to maximize the total bandwidth utilization. The system constantly monitors the rate of multimedia traffic, and by comparing it to the previously inferred rate, adjusts the best-effort limit accordingly: if the multimedia traffic decreases then the best-effort limit drops, and if the multimedia traffic saturates its bandwidth, the best-effort limit increases. This also re-calibrates the system in the case of dynamic changes to workload.. RESULTS We implemented the automated QoS mechanism for the Linux. kernel block device driver. Our test application simulates multimedia file access by making periodic streaming reads of disk data. In our experiments, several test applications run concurrently to load the disk, and different scenarios are created by labeling each test application either multimedia or best-effort. Performance is measured by observing the throughput of each stream. The goal of experiments was to test whether the automated QoS mechanism will support multimedia streams as we hypothesized. Our test system is a 1.5 GHz P with 51MB of RAM. The disk is a Seagate ST31A IDE drive formatted with ext file system. The bandwidth of the disk averages 7. MB/s for a large sequential read. Figure 3(a) shows the observed read bandwidth when running four MB/s streams simultaneously, one of which is labeled as a multimedia (MM) stream, on a Linux system without QoS support. All four streams receive only about half of the bandwidth they request, because the total load exceeds the disk bandwidth capacity. The observed aggregate stream rate is approximately 1 MB/s, significantly less than when only a single sequential file is read; this is due to extra seeks between reads from the different streams. Figure 3(b) shows the same workload when using AutoQoS. The multimedia stream receives its desired MB/s bandwidth. The other three competing best-effort streams are limited and each of them receives about.5 MB/s. The aggregate throughput for these two runs are approximately the same: 15. MB/s for normal Linux and 15. MB/s with AutoQoS. Figure shows the effect of a multimedia stream entering and exiting the system with competing best-effort traffic. The workload consists of three 1 MB/s streams, one of which is multimedia. Figure (a) shows default Linux. Two streams start at time zero, and when the third stream enters at time 3, the overload reduces the bandwidth of each stream to 5MB/s. Figure (b) shows that with AutoQoS, the multimedia stream receives its desired rate of 1 MB/s, because the bandwidth of the two competing streams is limited to make room for it. When the multimedia stream terminates at time 15, the two competing streams regain their original bandwidth. The overall throughput for running with and without AutoQoS are the same (15.5 MB/s). Figure 5 shows AutoQoS supporting multiple multimedia streams. Here a MB/s and a 5 MB/s multimedia stream compete with two MB/s best-effort streams, and the multimedia streams are able to receive the bandwidth they need. Figure shows the ability of AutoQoS to adapt to changes in the rate of the multimedia stream. In this run, the multimedia stream initially starts at a rate of 9 MB/s, changing to MB/s at time, and then back to 9 MB/s at time 1. There are two MB/s competing best-effort streams. When the MM rate drops at time, the best-effort rates take up the slack, and when the MM rate increases at time 1, the best-effort rates return after a short interval of adjustments.

5. CONCLUSION QoS support for disk is important for multimedia systems. Existing work focuses on providing guarantees based on advanced reservation or specification of disk request deadlines. We developed a QoS mechanism that supports multimedia streams in a mixed-workload environment without requiring any explicit information from the application. We explained how this mechanism infers and sustains the disk transfer rates required by multimedia applications when the disk bandwidth is overloaded. The benefit of this approach is the absence of application complexities associated with utilizing existing QoS mechanisms in this system QoS support is fully automated. Legacy applications based on best-effort systems, without knowledge of QoS mechanisms, immediately benefit by receiving better performance. ACKNOWLEDGMENTS This research was funded in part by a DOE High-Performance Computer Science Fellowship, Intel, and the Lawrence Livermore, Los Alamos, and Sandia National Labs. Thanks to Caixue Lin for suggestions. REFERENCES 1. A. L. Reddy and J. Wyllie, Disk scheduling in a multimedia I/O system, in Proceedings of ACM Conference on Multimedia, pp. 5 33, ACM Press, 1993.. R.-I. Chang, W.-K. Shih, and R.-C. Chang, Multimedia real-time disk scheduling by hybrid local/global seekoptimizing approaches, in Proceedings of Seventh International Conference on Parallel and Distributed Systems, pp. 33 33, July. 3. R. Abbott and H. Garcia-Molina, Scheduling I/O requests with deadlines: A performance evaluation, in Proceedings of the IEEE Real-Time Systems Symposium (RTSS 9), pp. 113 1, December 199.. L. Reuther and M. Pohlack, Rotational-position-aware real-time disk scheduling using a dynamic active subset (DAS), in Proceedings of the th IEEE Real-Time Systems Symposium (RTSS 3), IEEE, December 3. 5. P. Shenoy and H. Vin, Cello: A disk scheduling framework for next generation operating systems, in Proceedings of the ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, pp. 55, ACM Press, 199.. Z. Dimitrijevic and R. Rangaswami, Quality of service support for real-time storage systems, in Proceedings of the International IPSI-3 Conference, October 3. 7. R. Wijayaratne and A. L. Reddy, Integrated QOS management for disk I/O, in Proceedings of the IEEE International Conference on Multimedia Computing and Systems, pp. 7 9, June 1999.. D. Revel, D. McNamee, C. Pu, D. Steere, and J. Walpole, Feedback based dynamic proportion allocation for disk I/O, Tech. Rep. CSE-99-1, Oregon Graduate Institude of Science and Technology, December 199. 9. J. L. Bruno, J. C. Brustoloni, E. Gabber, B. Özden, and A. Silberschatz, Disk scheduling with quality of service guarantees, in Proceedings of the 1999 IEEE International Conference on Multimedia Computing and Systems (ICMCS 99), pp. 5, 1999. 1. D. Clark, S. Shenker, and L. Zhang, Supporting realtime applications in an integrated services packet network: Architecture and mechanisms, in Proceedings of the ACM SIGCOMM, 199. 11. J. C. Wu and S. A. Brandt, Storage access support for soft real-time applications, in Proceedings of the 1th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS ), (Toronto, Canada), May.