Understanding the Performance of Internet Video Over Residential Networks
Total Page:16
File Type:pdf, Size:1020Kb
UNDERSTANDING THE PERFORMANCE OF INTERNET VIDEO OVER RESIDENTIAL NETWORKS MARTIN ELLIS SUBMITTED IN FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF Doctor of Philosophy SCHOOL OF COMPUTING SCIENCE COLLEGE OF SCIENCE AND ENGINEERING UNIVERSITY OF GLASGOW OCTOBER 2012 c MARTIN ELLIS, 2012 Abstract Video streaming applications are now commonplace among home Internet users, who typically access the Internet using DSL or Cable technologies. However, the effect of these technologies on video performance, in terms of degradations in video quality, is not well understood. To enable continued deployment of applications with improved quality of ex- perience for home users, it is essential to understand the nature of network impairments and develop means to overcome them. In this dissertation, I demonstrate the type of network conditions experienced by Inter- net video traffic, by presenting a new dataset of the packet level performance of real-time streaming to residential Internet users. Then, I use these packet level traces to evaluate the performance of commonly used models for packet loss simulation, and finding the models to be insufficient, present a new type of model that more accurately captures the loss behaviour. Finally, to demonstrate how a better understanding of the network can improve video quality in a real application scenario, I evaluate the performance of forward error correction schemes for Internet video using the measurements. I show that performance can be poor, devise a new metric to predict performance of error recovery from the characteristics of the input, and validate that the new packet loss model allows more realistic simulations. For the effective deployment of Internet video systems to users of residential access net- works, a firm understanding of these networks is required. This dissertation provides insights into the packet level characteristics that can be expected from such networks, and techniques to realistically simulate their behaviour, promoting development of future video applications. Acknowledgements I would like to thank my supervisors, Colin Perkins and Dimitrios Pezaros, for their guid- ance and support throughout this project. Thanks are also due to Joe Sventek, for secondary supervision in the early stages of the project, and useful advice and feedback throughout the process. I would also like to acknowledge the Cisco University Research Program Fund, a corpo- rate advised fund of Silicon Valley Community Foundation, and the Engineering and Physi- cal Sciences Research Council, who funded this work. For useful advice and discussions at various points in this work, I would like to thank Jorg¨ Ott, Ali Begen, Theodore Kypraios, and Maurizio Filippone. Special thanks are also due to my fellow students, for their constant encouragement and all the good times we had over the years. In alphabetical order: Paul Harvey, Paul Jakma, Alexandros Koliousis, Ross McIlroy, Helen Powell, and Stephen Strowes. Finally, I would like to thank my family for their encouragement and support throughout my life, and especially thank Sarah Haig for her endless patience and words of support. Thank you for helping me through this process, and keeping me smiling even in the darkest days – it would not have been possible without you. 4 Contents 1 Introduction 13 1.1 Thesis Statement . 14 1.2 Contributions . 15 1.3 Publications . 16 1.4 Outline . 16 2 Architecture of Internet Video Systems 18 2.1 System Designs . 19 2.2 A Model for RTP-Based IPTV Systems . 24 2.3 Techniques for Ensuring Video Quality . 27 2.4 Discussion & Summary . 33 3 Measuring Packet-Level Characteristics of Streaming to Residential Users 35 3.1 Background . 36 3.2 Methodology . 43 3.3 Trace Formats . 48 3.4 Post-Processing . 50 3.5 Discussion & Summary . 53 4 Analysis of Packet-Level Characteristics 54 4.1 Packet Loss . 55 4.2 Queueing Delay . 68 4.3 Analysis of Packet-Pair Measurements . 77 4.4 Discussion & Summary . 82 CONTENTS 5 5 Evaluating Markov Models for Packet Loss 84 5.1 Models for Packet Loss . 85 5.2 Evaluating Models . 92 5.3 Model Performance Results . 96 5.4 Testing Goodness-of-Fit using Parametric Bootstrap . 111 5.5 Understanding Model Performance . 118 5.6 Alternative Models . 120 5.7 Discussion & Summary . 123 6 Improving Model Performance using Packet Delay Data 125 6.1 Modelling Delay and Loss . 126 6.2 Pre-Classifying Network State using Loss/Delay . 128 6.3 Classification Schemes for Outer States . 132 6.4 Packet Loss Models for Inner States . 133 6.5 Two-Level Model Results . 136 6.6 Discussion & Summary . 145 7 Evaluating AL-FEC Performance under Residential Packet Loss 146 7.1 Background . 147 7.2 Applying OpenFEC to IP-based Streaming Video . 148 7.3 Evaluation Methodology . 150 7.4 OpenFEC Performance . 152 7.5 The Effect of Burstiness on FEC Performance . 162 7.6 Simulating FEC Performance with Packet Loss Models . 165 7.7 Discussion & Summary . 169 8 Conclusions and Future Work 170 8.1 Thesis Statement . 171 8.2 Contributions . 173 8.3 Future Directions . 174 8.4 Summary & Conclusions . 176 Bibliography 178 6 List of Figures 2.1 End-to-End IPTV Network Architecture . 25 3.1 Trace Formats . 49 4.1 Loss Rate Time-Series (dataset-A)...................... 56 4.2 Loss Rate Time-Series (dataset-B)...................... 57 4.3 Aggregate Loss Run-Length Distributions (dataset-A)............ 59 4.4 Aggregate Loss Run-Length Distributions (dataset-B)............ 60 4.5 Aggregate Receive Run-Length Distributions (dataset-A).......... 61 4.6 Aggregate Receive Run-Length Distributions (dataset-B).......... 62 4.7 Example of Congestive Packet Loss . 65 4.8 Congestive / Non-Congestive Packet Loss (dataset-A)............ 66 4.9 Congestive / Non-Congestive Packet Loss (dataset-B)............ 67 4.10 Queueing Delay Time-Series (dataset-A)................... 69 4.11 Queueing Delay Time-Series (dataset-B)................... 70 4.12 Example Queueing Delay Distributions . 72 4.13 Distribution of DQ Interquartile Ranges . 72 4.14 Variability in Queueing Delay Distributions . 74 4.15 Aggregate Queueing Delay Distributions (dataset-A)............ 75 4.16 Aggregate Queueing Delay Distributions (dataset-B)............ 76 4.17 Packet-Pair Capacity Estimate Distributions (dataset-B)........... 79 4.18 Capacity Estimate Distributions from Packet Trains (initial results) . 80 4.19 Capacity Estimate Distributions from Packet Trains (further results) . 81 5.1 Gilbert-Elliott Model . 86 5.2 Simple Gilbert Model . 86 LIST OF FIGURES 7 5.3 Extended Gilbert Model . 87 5.4 Gilbert-Elliott Model as a Two-State Hidden Markov Model . 89 5.5 Distributions of Mean Loss Ratios and Differences . 97 5.6 Distributions of K-S Distances (D) Between Run-Lengths . 99 5.7 Example CCDF Distributions (“non-bursty” loss) . 101 5.8 Example CCDF Distributions (“bursty” loss) . 102 5.9 Distributions of Differences in Correlation Timescales (∆c)......... 104 5.10 Original Correlation Timescales vs. Differences in Correlation Timescales . 106 5.11 Original Correlation Timescales vs. Differences in Correlation Timescales . 107 5.12 Differences in Correlation Timescales for Traces with Low/High Loss . 108 5.13 Example Loss Traces and Synthetic Sequences from SGM, EGM and HMMs 110 synth raw 5.14 Si Distribution, with Si and Central 95% . 113 5.15 Parametric Bootstrap Results (“non-bursty” traces) . 114 5.16 Parametric Bootstrap Results (“bursty” traces) . 115 synth 5.17 Examples of Si Distributions . 117 6.1 Outer States of a Hierarchical Model . 131 6.2 Two-Level Model (SGM/SGM/SGM) . 137 6.3 Two-Level Model (SGM/2HMM/2HMM) . 137 6.4 Distributions of Mean Loss Ratios and Differences . 139 6.5 Distributions of Differences in Correlation Timescales (∆c)......... 140 6.6 Example Loss Traces and Synthetic Sequences from Two-Level Models . 141 6.7 Parametric Bootstrap Results (“non-bursty” traces) . 143 6.8 Parametric Bootstrap Results (“bursty” traces) . 144 7.1 Grid Format for Source and Repair Packets in 2D FEC . 149 7.2 Random Loss Probability vs. Residual Packet Loss . 153 7.3 FEC Delay under Random Packet Loss . 154 7.4 Trace Loss vs. Residual Loss Rate . 156 7.5 Trace Loss vs. Mean FEC Delay . 157 7.6 Cumulative Distribution of FEC Delays from Loss Traces . 158 7.7 Trace Loss vs. Residual Loss Rate (smaller FEC blocks) . 160 7.8 Trace Loss vs. Mean FEC Delay (smaller FEC blocks) . 160 LIST OF FIGURES 8 7.9 Cumulative Distribution of FEC Delays from Loss Traces (smaller FEC blocks)161 7.10 Correlating FEC Performance with Loss Burstiness Metrics . 164 7.11 FEC Performance on Raw and Synthetic Data . 167 9 List of Tables 3.1 Measurement Schedule (dataset-A)...................... 45 3.2 Measurement Schedule (dataset-B)...................... 46 3.3 Sending Rates, Packet Sizes and Spacings . 47 5.1 K-S Hypothesis Test Results . 100 5.2 Percentage of Traces in Loss Categories . 110 5.3 Convergence Rates in HMM Estimation . 120 7.1 Number of Traces with 0% Residual Loss Rate . 155 7.2 Number of Traces with 0% Residual Loss Rate (smaller FEC blocks) . 161 10 Glossary Application Layer Forward Error Correction (AL-FEC) : Forward error correction, ap- plied at the application layer; often used in real-time applications to provide resilience to packet loss. Asymmetric Digital Subscriber Line (ADSL) : A variant of DSL where the upstream and downstream capacities are not equal; typically, the downstream capacity is greater than the upstream. Cable Modem Termination System (CMTS) : A network device used to connect the Ca- ble modems located at customers’ premises (via the Cable access link) to the network of the Cable operator, and to interconnect with the rest of the Internet. Content Distribution Network (CDN) : A distributed system of caching proxy servers used to deliver Internet content, usually containing servers located throughout the Internet, to provide efficient and fast access to content. Data Over Cable Service Interface Specification (DOCSIS) : A technology for providing Internet service to existing Cable television networks, which is commonly used to pro- vide Internet access to residential users.