Stability of QOS. Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu



Similar documents
Design and Deployment of Locality-aware Overlay Multicast Protocol for Live Streaming Services

The Feasibility of Supporting Large-Scale Live Streaming Applications with Dynamic Application End-Points

International Journal of Advanced Research in Computer Science and Software Engineering

A Topology-Aware Relay Lookup Scheme for P2P VoIP System

Traceroute-Based Topology Inference without Network Coordinate Estimation

SUNYIT. Reaction Paper 2. Measuring the performance of VoIP over Wireless LAN

Adaptive Sampling for Network Performance Measurement Under Voice Traffic

AN INITIAL PEER CONFIGURATION ALGORITHM

Efficient Data Retrieving in Distributed Datastreaming

Comparative Analysis of Congestion Control Algorithms Using ns-2

Research on Errors of Utilized Bandwidth Measured by NetFlow

Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow

Application of Internet Traffic Characterization to All-Optical Networks

Definition. A Historical Example

Path Optimization in Computer Networks

Analysis of QoS Routing Approach and the starvation`s evaluation in LAN

Content Distribution over IP: Developments and Challenges

Multicast Group Management for Interactive Distributed Applications

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

Investigation and Comparison of MPLS QoS Solution and Differentiated Services QoS Solutions

A Power Efficient QoS Provisioning Architecture for Wireless Ad Hoc Networks

Service Overlay Networks: SLAs, QoS and Bandwidth Provisioning

Argonne National Laboratory, Argonne, IL USA 60439

Analysis and Simulation of VoIP LAN vs. WAN WLAN vs. WWAN

Quality of Service Routing in MPLS Networks Using Delay and Bandwidth Constraints

A Comparative Study of Tree-based and Mesh-based Overlay P2P Media Streaming

PRIORITY-BASED NETWORK QUALITY OF SERVICE

Performance of networks containing both MaxNet and SumNet links

Factors to Consider When Designing a Network

Load Balancing Mechanisms in Data Center Networks

Enabling Conferencing Applications on the Internet using an Overlay Multicast Architecture

Locality Based Protocol for MultiWriter Replication systems

A New Forwarding Policy for Load Balancing in Communication Networks

MPLS-TP. Future Ready. Today. Introduction. Connection Oriented Transport

IPTV AND VOD NETWORK ARCHITECTURES. Diogo Miguel Mateus Farinha

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

CHAPTER 6. VOICE COMMUNICATION OVER HYBRID MANETs

A REPORT ON ANALYSIS OF OSPF ROUTING PROTOCOL NORTH CAROLINA STATE UNIVERSITY

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

AN OVERVIEW OF QUALITY OF SERVICE COMPUTER NETWORK

Network Topology and Traceroutes

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Testing Packet Switched Network Performance of Mobile Wireless Networks IxChariot

Automated QoS Support for Multimedia Disk Access

David R. McIntyre CS Department, Cleveland State University Cleveland, Ohio 44101

Smart Queue Scheduling for QoS Spring 2001 Final Report

2004 Networks UK Publishers. Reprinted with permission.

VoIP QoS on low speed links

Robust Router Congestion Control Using Acceptance and Departure Rate Measures

Binary vs Analogue Path Monitoring in IP Networks

ENHANCED PROVISIONING ALGORITHM FOR VIRTUAL PRIVATE NETWORK IN HOSE MODEL WITH QUALITY OF SERVICE SUPPORT USING WAXMAN MODEL

diversifeye Application Note

Joint ITU-T/IEEE Workshop on Carrier-class Ethernet

HPAM: Hybrid Protocol for Application Level Multicast. Yeo Chai Kiat

Source vs Data-driven Approach for Live P2P Streaming

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

QoS in VoIP. Rahul Singhai Parijat Garg

Service Level Analysis of Video Conferencing over Wireless Local Area Network

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

Technological Trend. A Framework for Highly-Available Cascaded Real-Time Internet Services. Service Composition. Service Composition

A Dynamic Polling Scheme for the Network Monitoring Problem

Voice over IP: RTP/RTCP The transport layer

Experiences with Class of Service (CoS) Translations in IP/MPLS Networks

Measuring Bandwidth Signatures of Network Paths

A Load Balancing Method in SiCo Hierarchical DHT-based P2P Network

On the Placement of Management and Control Functionality in Software Defined Networks

Business case for VoIP Readiness Network Assessment

Measurement of V2oIP over Wide Area Network between Countries Using Soft Phone and USB Phone

A Catechistic Method for Traffic Pattern Discovery in MANET

The Coremelt Attack. Ahren Studer and Adrian Perrig. We ve Come to Rely on the Internet

Distributed Explicit Partial Rerouting (DEPR) Scheme for Load Balancing in MPLS Networks

A Routing Metric for Load-Balancing in Wireless Mesh Networks

Fatemeh Rahimian Amir Payberah

Chapter 4. VoIP Metric based Traffic Engineering to Support the Service Quality over the Internet (Inter-domain IP network)

Dynamic Resource Allocation in Software Defined and Virtual Networks: A Comparative Analysis

Distributed monitoring of IP-availability

DigiMetro An Application-Level Multicast System for Multi-party Video Conferencing

Analysis of Performance of VoIP

Bandwidth Allocation in a Network Virtualization Environment

A Comparison of General Approaches to Multiprocessor Scheduling

Security Scheme for Distributed DoS in Mobile Ad Hoc Networks

Advanced Networking Voice over IP: RTP/RTCP The transport layer

Adaptive DCF of MAC for VoIP services using IEEE networks

Peer-to-Peer Multimedia Streaming Using BitTorrent

Path Selection Analysis in MPLS Network Based on QoS

Effects of Interrupt Coalescence on Network Measurements

Ethernet Switch Evaluation For Streaming Media Multicast Applications

OverQoS: Offering Internet QoS Using Overlays

Multicast Network Administration Control in Diff Services

Multiobjective Multicast Routing Algorithm

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

On the effect of forwarding table size on SDN network utilization

Sprint Global MPLS VPN IP Whitepaper

Quality of Service Analysis of Video Conferencing over WiFi and Ethernet Networks

GN1 (GÉANT) Deliverable D13.2

Effective Network Monitoring

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

Measurement of Commercial Peer-To-Peer Live Video Streaming

A Passive Method for Estimating End-to-End TCP Packet Loss

Network Simulation Traffic, Paths and Impairment

Transcription:

Stability of QOS Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu Abstract Given a choice between two services, rest of the things being equal, it is natural to prefer the one with more stable Quality of Service(QoS). For certain applications, stability would weigh more than other factors. For example, in the case of a streaming media application that has a limited buffer, a server offering stable moderate bandwidth is preferred to one that offers high bandwidth most of time, but has outages every now and then. In this work, we study the problem of a client choosing one out of a set of servers that offer time varying QoS, dynamically updating its choice, in order to achieve stable service. The QoS metric we consider in this work is bandwidth. Introduction Consider the problem of a client deciding to choose one among n servers, that offer bandwidths B(t),B2(t)...Bn(t), at any given instant t. Let an interruption period be defined as one in which the bandwidth received by the client drops below a threshold τ. At any instant the client can decide to switch from one server to another. When the client switches from one server to another, there is a period of duration P during which the client receives bandwidth. This serves as a switch cost, that models the overhead involved in the protocol messages that need to be sent when switching from one server to another. The value of P is application dependent, based on how easy it is to switch from one server to another. The available bandwidth for the client, B(t), is a function of the client s choices, and B(t),B2(t)...Bn(t). The goal of the client is to decide which server to receive service from at time t, such that the total interruption period, including the interruptions occurred during switching, is low. In the above formulation, we have made an implicit assumption that the bandwidths offered by the servers are independent of the client s choices. This will definitely not hold in a general case, as there would be several clients trying to use these same set of servers. Nevertheless, studying the restricted case of the problem is useful, as it would help us in understanding some aspects of this problem, before tackling the general case. Also, the assumption that we make would be reasonable, when the total volume of traffic generated by all the clients of the particular application is negligible compared to the volume of traffic needed to alter available bandwidths on the network. We consider two instances of the above problem in our work. In one of them the servers are the set of possible relay nodes for a VoIp application [] and the bandwidth of interest is end-toend bandwidth between the two clients of the application via a relay node. In the other case, the servers are the possible parents in an overlay multicast tree used in streaming media applications [5, 6, 7, 8], and the bandwidth under consideration is the bandwidth between the client and the root of the tree via a parent. Our work is related to work in [2], where they study the problem of choosing k servers from a set of n, dynamically replacing those servers, within the chosen set of k servers that go down by the remaining servers that are up. The choice of initial set of servers and the choice of the server used for replacement should be made in such a way that the chosen set remains stable requiring replacements as few times as possible. 2 Traces For our simulations we use the bandwidth measurements reported in [3] made using the NIMI measurement infrastructure [4]. NIMI is a measurement framework, in which a number of measurement platforms are deployed across the Internet and used to perform end-to-end measurements. For bandwidth measurements they use TCP transfers between random pairs of NIMI hosts, making a MB transfer between the same pair of hosts every minute for a 5-hour period. We took all measurement

Node 24 Node 6 Node 3 Node 7 Node 8 Node Node 8 Node 5 Node 2 Node Node 9 Node 2 Node 2 Node 23 Node 6 Node 3 Node 2 Node 9 Node 28 Node 4 Node 7 Node 29 Node 22 Node 25 Node 4 Node Node 26 Node 27 Node 5 Figure : The graph describing pairwise measurement traces. traces that had less than errors out of the 3 measurements and interpolated these missing values. Figure shows a graph with nodes representing the NIMI hosts, and edges connecting pairs of nodes involved in a measurement trace that was used. The Bandwidth functions B(t), B2(t)... Bn(t) introduced in Section are piecewise constant approximations derived from the 3 measurement points. We assume that time t runs from to 3 minutes, and that the value of the k th measurement between a pair of nodes is the bandwidth from t = k to t = k for that pair. The switch cost, namely the time for which an interruption is observed on switching, is assumed to be minute. For the two applications we consider, we believe that minute would be reasonable upper bound for time taken to switch. Given these assumptions, the available bandwidth B(t) for the client can also be represented as a set of 3 values, and the total interruption time in minutes will simply be the total number of these 3 values that are below the threshold τ. Hence, the the bandwidth functions are fully defined by these 3 values, and we use the terms number of interruptions and total interruption time interchangeably. Also, given these assumptions, it is clear that the decisions about switching need to be done only at the beginning of each minute. 3 Selection Strategies 3.. Given the bandwidth functions B(t),B2(t)...Bn(t), make the set of decisions that result in the least possible total number of interruptions. Let the M(t,i) be the least possible total number of interruptions for the first t minutes given that in the t th minute the client receives service from the i th server. Then M(, i) = thresh(bi()) M(t,i) = Min i (M(t,i) + thresh(bi(t),τ)) < t 3 And finally the minimum number of interruptions is Min i (M(3,i)), where thresh(b,τ) takes the value when b τ and otherwise. We use this definition for the function thresh throughout the paper. 2

In the static strategies, no switch is ever made - the client chooses a particular server and receives service from the same server for the whole time period. 3..2 Static-Best Choose that server whose bandwidth function has the least number of interruptions. The number of interruptions in this case would be Min( 3 t= thresh(bi(t),τ)), i n 3..3 Static-Second-Best Choose that server whose bandwidth function has the second least number of interruptions. The above strategies cannot be implemented, as the bandwidth function is not known in advance. We consider the above two strategies simply for the sake of comparing them with the other strategies. 3..4 Static-Heuristic Evaluate the different servers in a window of the first few minutes, and choose the server that has the least number of interruptions within this window. 3..5 Replace-With-Best For the first minute, choose the server that offers the highest bandwidth in the first minute. For any subsequent minute t, if the bandwidth offered by the current server drops below the threshold τ, switch to that server which offers the highest bandwidth in the t th minute. If no server offers a bandwidth τ do not switch. 3..6 Random-Replacement For the first minute, randomly choose any server that offers a bandwidth of at least τ. For any subsequent minute t, if the bandwidth from the current server drops below the threshold τ, among the server that offer a bandwidth τ, pick one randomly, and switch to it. If no such server exists, do not switch. 3..7 Random-Subset-Replacement For the first minute, select a random subset of s server from the n server, and choose the server within this subset that offers the highest bandwidth for the first minute. If the bandwidth from the current server drops below τ in any subsequence minute, repeat the same procedure to choose a server to switch to. The above three strategies make use of as few values of the measurements as possible, in order to make decisions. These are the attractive strategies for implementing in an application, as the bandwidths have to be measured online, and the a strategy that requires it to be done as few times as possible is preferable. 3..8 Replace-With-Best-History For the first minute, choose the server that offers the highest bandwidth in the first minute. For any subsequent minute t, if the bandwidth offered by the current server drops below the threshold τ, switch to that server which has had the least number of interruptions in the first t minutes. Replace-With-Best-History is a predictive strategy, that tries to predict the server s future performance, based on its performance so far. 4 Relay Node selection in VoIp 4. Simulation Setup Consider the topology shown in figure 2. The client in this case is one of C or C2, and servers are the n relay nodes labeled R...R. Each edge in this graph represents a path in the underlying IP network. The end-to-end bandwidth between C and C2 via R i is Min of the two bandwidths along the two edges - C R i and R i C2. From the bandwidth data set, we use a randomly chosen trace of 3 minutes to model the bandwidth alone one of the edges. For each strategy, we simulated trials for different values of the threshold τ, where a trial consists of choosing a set 3

Figure 2: Overlay Topology for VOIP(left) and Multicast tree(right). of 2 traces to model all the edges, and simulating the strategy for the 3 minutes. We consider thresholds from. to.4 at a step size of.5mbps. For Static-Heuristic, we try three different window sizes -,5, and. 4.2 Results The results of the experiments are shown in figures 3 and 4. In general, the dynamic strategies, i.e, strategies that adaptively switch from one relay node to another perform better than even Static- Best. The improvements over Static-Second-Best and Static-Heuristic are higher. There is huge difference between the number of interruptions for Static-Best and the number of interruptions for Static-Second-Best, suggesting that strategies that make switches are preferable to those that do not make any switches, as in a static strategy the penalty for choosing the wrong relay node is very high. Replace-With-Best-History, does not perform a lot better than Replace-With-Best - making use all the extra measurements does not make the performance too much better. On a similar note, Random-Subset-Replacement for a subset size of 5, performs nearly as good as Replace-With-Best, although it uses just half of the measurements. Increasing the subset size to more than 5 gives only fractional improvement in the number of interruptions. 5 Parent Selection in a Overlay-Multicast Tree 5. Simulation Setup In this case, the servers are the possible parents in an overlay multicast tree as shown in Figure 2, and the bandwidth under consideration is the bandwidth between the client and the root of the tree via a parent. We model the overlay network as a graph with an edge between the nodes if there is bandwidth measurement data between the two nodes. This is a directed graph, however if we assume that the bandwidths are symmetrical then we can ignore the directionality of the edges. Figure shows the undirected graph representing the overlay topology. Multicast trees are constructed by a breath-first tree rooted at every node of the graph. This graph has 29 nodes and 44 edges. Thus we have 29 multicast trees with each of these nodes as the root. For purposes of our simulation we only consider the trees which have greater than one leaf nodes. There are 27 trees with an average of 8 leaf nodes. A new node has to choose one of the leaf nodes as a parent to become a part of the multicast tree. The effective bandwidth is now the minimum of the bandwidths along the path of the leaf node to the parent. The number of interruptions in service is the interval of time the bandwidth is below a threshold. We run the simulations for various thresholds from. to. MBps with increments of. MBps using strategies as described earlier. 4

VoIP MultiCast Tree Average Inerruptions 25 2 5 Static Heuristic(Win ) 8 7 6 5 4 3 Static Heuristic(Win ) 2 5..5.2.25.3.35.4 Threshold(MBps) (a)..2.3.4.5.6.7.8.9. Bandwidth (b) Average Inerruptions 25 2 5 Static Heuristic(Win ) Static Heuristic(Win 5) Static Heuristic(Win ) 8 7 6 5 4 3 Static Heuristic(Win ) Static Heuristic(Win 5) Static Heuristic(Win ) 2 5..5.2.25.3.35.4 Threshold(MBps) (c)..2.3.4.5.6.7.8.9. Bandwidth (d) Average Inerruptions 4 2 8 6 4 Random Replacement Random Subset Replacement(s=2) Random Subset Replacement(s=5) 9 8 7 6 5 4 3 Random Replacement Random Subset Replacement[s=3] Random Subset Replacement[s=5] 2 2..5.2.25.3.35.4 Threshold(MBps) (e)..2.3.4.5.6.7.8.9. Bandwidth (f) Average Interruptions 38 37.5 37 36.5 36 35.5 35 34.5 34 33.5 33 2 3 4 5 6 7 8 9 Subset Size in Random Subset Replacement (g) Average Interruptions 23.5 23 22.5 22 2.5 2 2.5 2 2 3 4 5 6 7 8 9 Subset Size in Random Subset Replacement (h) Figure 3: Comparison of various strategies on VoIP and Overlay Multicast Tree Topologies (a),(b) Comparison of, Static-Best, Static-Second-Best, Static-Heuristic. The Heuristic functions does almost as good as the static best. The penalty of choosing the second best is high as can be seen from the difference between the blue and the green curves. (c),(d) Comparison of Static-Heuristic Strategy, with different window sizes -, 5,. The window size is much worse than the window size of 5 and both of which perform similar. (e),(f) Comparison of various dynamic strategies and Replace-With-Best-History. Most of the dynamic strategies do better than any of the static strategies and the performance is comparable with the Replace-With-Best-History strategy which is close to the optimal. (g),(h) Plots the number of interrupts as a function of subset size. Increasing the subset size beyond 4 does not give any significant improvement in performance in OverlayTree while a subset size of 5 gives close to optimal performance. In both cases this is approximately half the maximal choices. 5

.9.8.7.6.5.4.3 Static Heuristic(Win ).2. 5 5 2 25 3.9.8.7.6.5.4.3.2. Static Heuristic(Win ) Static Heuristic(Win 5) Static Heuristic(Win ) 5 5 2 25 3.95.9.85.8.75.7 Random Replacement.65 Random Subset Replacement(s=2) Random Subset Replacement(s=5).6 2 4 6 8 2 4 6 (a) (b) (c).9.9.9.8.8.8.7.7.7.6.5.4.6.5.4.6.5.4.3.2 Mean =.49.3.2 Mean = 6.37.3.2 Mean =.45... 5 5 5 5 2 # Interruptions (Random Subset Replacement(s=5) ) 2 3 4 # Interruptions ( ) 5 5 5 # Interruptions ( ) (d) (e) (f).9.9.9.8.8.8.7.7.7.6.5.4.3.2 Mean = 4.667.6.5.4.3.2 Mean = 8.296.6.5.4.3.2 Mean = 57.53... 2 4 6 8 2 # Interruptions ( ) 4 2 2 4 6 8 # Interruptions ( ) 5 5 5 2 25 3 # Interruptions ( Static Heuristic(Win ) ) (g) (h) (i) Figure 4: (a),(b),(c)fraction of trails(in trials) Vs at threshold of.2 MBps for the various strategies. Vs Difference in Number of interruptions at threshold of.2mbps for (d) Random-Subset-Replacement, Replace-With-Best (e) Replace- With-Best, (f) Replace-With-Best, Replace-With-Best-History (g) Static-Best (h) Static-Best, Replace-With-Best (i) Static-Heuristic(Window Size ), Replace-With-Best 6

5.2 Results Figure 3 shows the results of our simulations. We observe similar trends in this dataset too. The random strategies outperform all the static strategies consistently. The Replace-With-Best performs same as the Replace-With-Best-History strategy suggesting that the a node does not require to maintain a lot of state. Here too we observe a significant difference between the Static-Best and Static-Second-Best, suggesting that strategies are better off switching. Random-Subset-Replacement with subset size of 4 has comparable performance with the Replace-With-Best strategy but requires only half of its measurements on an average. Also Random-Subset-Replacement gives significantly lesser interrupts than any static strategy. 6 Conclusions and Future Work We perform a comparative study of various algorithms for the simplified version of the problem of selecting a link to receive service over time. Our experiments show that the strategies that make switches are better than static strategies. It is possible to reduce interruptions with a few measurements at coarse granularity. Our work can be extended by running experiments on other data traces, preferably on measurements at finer granularity. Possible future work also includes studying the stability of other other QOS parameters like Packet Loss, Jitter etc, and combinations of two or more parameters, and implementing these ideas in a real system to analyze performance. References [] Skype. http://www.skype.com [2] Minimizing Churn in Distributed Systems, P. Brighten Godfrey, Scott Shenker, and Ion Stoica. SIG- COMM 26. [3] Yin Zhang, Nick Duffield, Vern Paxson, and Scott Shenker. Internet Measurement Conference. [4] V. Paxson, J. Mahdavi, A. Adams, and M. Mathis, An Architecture for Large Scale Internet Measurements, IEEE Communications,36(8), pp 48-54, Aug. 998. [5] S. Banerjee, B. Bhattacharjee, and C. Kommareddy. Scalable Application Layer Multicast. In Proceedings of ACM SIGCOMM, August 22. [6] Y. Chu, S. G. Rao, and H. Zhang. A Case for End System Multicast. In Proceedings of ACM Sigmetrics, June 2. [7] P. Francis. Yoid: Your Own Internet Distribution, http://www.aciri.org/yoid/. April 2. [8] J. Jannotti, D. Gifford, K. L. Johnson, M. F. Kaashoek, and J. W. O Toole Jr. Overcast: Reliable Multicasting with an Overlay Network. In Proceedings of the Fourth Symposium on Operating System Design and Implementation (OSDI), October 2. 7