TCP Protocol Optimization for HTTP Adaptive Streaming Chiheb Ben Ameur
Total Page:16
File Type:pdf, Size:1020Kb
TCP Protocol Optimization for HTTP Adaptive Streaming Chiheb Ben Ameur To cite this version: Chiheb Ben Ameur. TCP Protocol Optimization for HTTP Adaptive Streaming. Modeling and Simulation. Rennes 1, 2015. English. tel-01249840 HAL Id: tel-01249840 https://hal.archives-ouvertes.fr/tel-01249840 Submitted on 4 Jan 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. ANNÉE 2015 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l'Université Européenne de Bretagne pour le grade de DOCTEUR DE L'UNIVERSITÉ DE RENNES 1 Mention : Informatique Ecole doctorale MATISSE présentée par Chiheb Ben Ameur préparée à l'unité de recherche UMR 6074 IRISA Equipes d'accueil : Orange Labs OLPS/DTV/TV/PTC - IRISA/ADOPNET Contrat CIFRE No 2012/1577 Thèse soutenue à Rennes le 17 décembre 2015 devant le jury composé de : TCP Protocol Touk AHMED Professeur à ENSEIRB-MATMECA / rapporteur Abdelhamid MELLOUK Optimization for Professeur à l'Université de Paris-Est Créteil / rapporteur Julien BOURGEOIS HTTP Adaptive Professeur à l'Université de Franche-Comté / exami- nateur Dominique GAITI Streaming Professeur à l'Université de technologie de Troyes / examinateur Bernard COUSIN Professeur à l'Université de Rennes 1 / directeur de Thèse Emmanuel MORY Docteur et Ingénieur de recherches à Orange Labs de Rennes / examinateur To my beloved parents Radhia & Moncef for making me who I am today. Abstract HTTP adaptive streaming (HAS) is a streaming video technique widely used over the Internet for Video on Demand (VoD) and Live streaming services. It employs Transmission Control Pro- tocol (TCP) as transport protocol and it splits the original video inside the server into segments of same duration, called "chunks", that are transcoded into multiple quality levels. The HAS player, on the client side, requests for one chunk each chunk duration and it commonly selects the quality level based on the estimated bandwidth of the previous chunk(s). Given that the HAS clients are located inside access networks, our investigation involves several HAS clients sharing the same bottleneck link and competing for bandwidth inside the same home network. Here, a degradation of both Quality of Experience (QoE) of HAS users and Quality of Service (QoS) of the access network are often recorded. The objective of this thesis is to optimize the TCP protocol in order to solve both QoE and QoS degradations. Our first contribution consists of proposing a gateway-based shaping method, that we called Receive Window Tuning Method (RWTM); it employs the TCP flow control and passive round trip time estimation on the gateway side. We compared the performances of RWTM with an- other gateway-based shaping method that is based on queuing discipline, called Hierarchical To- ken Bucket shaping Method (HTBM). The results of evaluation indicate that RWTM outperforms HTBM not only in terms of QoE of HAS but also in terms of QoS of access network by reducing the queuing delay and significantly reducing packet drop rate at the bottleneck. Our second contribution consists of a comparative evaluation between eight combinations that result from combining two shaping methods, RWTM and HTBM, and four very common TCP variants, NewReno, Vegas, Illinois and Cubic. The results show that there is a significant discor- dance in performance between combinations. Furthermore, the best combination that improves performances in the majority of scenarios is when combining Illinois variant with RWTM. In ad- dition, the results reveal the importance of an efficient updating of the slow start threshold value, ssthresh, to accelerate the convergence toward the best feasible quality level. Our third contribution consists of proposing a novel HAS-based TCP variant, that we called iv ABSTRACT TcpHas; it is a TCP congestion control algorithm that takes into consideration the specifications of HAS flow. Besides, it estimates the optimal quality level of its corresponding HAS flow based on end-to-end bandwidth estimation. Then, it permanently performs HAS traffic shaping based on the encoding rate of the estimated level. It also updates ssthresh to accelerate convergence speed. A comparative performance evaluation of TcpHas with a recent and well-known TCP variant that employs adaptive decrease mechanism, called Westwood+, was performed. Results indicated that TcpHas largely outperforms Westwood+; it offers better quality level stability on the optimal quality level, it dramatically reduces the packet drop rate and it generates lower queuing delay. Keywords: HTTP Adpative Streaming, TCP protocol, TCP congestion control, TCP flow control, bandwidth management, traffic shaping, Quality of Experience, Quality of Service, access network, bottleneck issue, cross-layer optimization. Résumé Le streaming vidéo adaptatif sur HTTP, couramment désigné par HTTP Adaptive Streaming (HAS), est une technique de streaming vidéo largement déployée sur le réseau Internet pour les services de vidéo en direct (Live) et la vidéo à la demande (VoD). Cette technique utilise le pro- tocole TCP comme protocole de transport. Elle consiste à segmenter la vidéo originale, stockée sur un serveur HTTP (serveur HAS), en petits segments (généralement de même durée de lec- ture) désignés par "chunks". Chaque segment de vidéo est transcodé à plusieurs niveaux de qua- lité, chaque niveau de qualité étant disponible sur un chunk indépendant. Le player, du côté du client HAS, demande périodiquement un nouveau chunk une fois par durée de lecture du chunk. Dans les cas communs, le player sélectionne le niveau de qualité en se basant sur l’estimation de la bande passante du/des chunk(s) précédent(s). Étant donné que chaque clients HAS est situé au sein d’un réseau d’accès, notre étude se concentre sur un cas particulier assez fréquent dans l’usage quotidien : lorsque plusieurs clients partagent le même lien présentant un goulet d’étran- gement (bottleneck) et se trouvants en état de compétition sur la bande passante. Dans ce cas, on signale fréquemment une dégradation de la qualité d’expérience (QoE) des utilisateurs de HAS et de la qualité de service (QoS) du réseau d’accès. Ainsi, l’objective de cette présente thèse est d’optimiser le protocole TCP pour résoudre ces dégradations de QoE et QoS. Notre première contribution consiste à proposer une méthode de bridage du débit HAS au ni- veau de la passerelle. Cette méthode est désignée par "Receive Window Tuning Method" (RWTM) et elle consiste dans l’utilisation du principe de contrôle de flux de TCP et l’estimation passive du temps d’aller retour au niveau de la passerelle. Nous avons comparé les performances de cette méthode avec une autre méthode récente implémentée à la passerelle et utilisant une discipline particulière de gestion de la file d’attente, qui est désignée par "Hierarchical Token Bucket sha- ping Method" (HTBM). Les résultats d’évaluations ont révélé que RWTM a non seulement une meilleure QoE, mais aussi une meilleure QoS de réseau d’accès que pour l’utilisation de HTBM ; plus précisément une réduction du délai de mise en file d’attente et une forte réduction du taux de paquets rejetés au niveau du goulet d’étrangement. vi RÉSUMÉ Notre deuxième contribution consiste à mener une étude comparative combinant huit combi- naisons résultant de la combinaison de deux méthodes de bridages, RWTM et HTBM, avec quatres variantes TCP largement déployées, NewReno, Vegas, Illinois et Cubic. Les résultats de l’évalua- tion montrent une discordance importante entre les performances des différentes combinaisons. De plus, la combinaison qui améliore les performances dans la majorité des scénarios étudiés est celle de RWTM avec Illinois. En outre, nous avons révélé qu’une mise à jour efficace de la valeur du paramètre "Slow Start Threshold", ssthresh, peut accélérer la vitesse de convergence du client vidéo vers la qualité de vidéo optimale. Notre troisième contribution consiste à proposer une nouvelle variante de TCP adaptée aux flux HAS, qu’on désigne par TcpHas ; c’est un algorithme de contrôle de congestion de TCP qui prend en considération les spécifications de HAS. TcpHas estime le niveau de la qualité optimale du flux HAS en se basant sur l’estimation de la bande passante de bout en bout. Ensuite, TcpHas applique, d’une façon permanente, un bridage au trafic HAS en se basant sur le débit d’encodage du niveau de qualité estimé. En plus, TcpHas met à jour ssthresh pour accélérer la vitesse de convergence. Une étude comparative a été réalisée avec une variante de TCP, connue sous le nom Westwood+, qui utilise le mécanisme de la diminution adaptative. Les résultats de l’évaluation ont indiqué que TcpHas est largement plus performant que Westwood+ ; il offre une meilleure stabilité autour de la qualité optimale, il réduit considérablement le taux de paquets rejetés au niveau du goulet d’étrangement, et diminue le délai de la file d’attente. Mots-clés : HTTP Adpative Streaming, protocole de transport TCP, le contrôle de congestion TCP, le contrôle de flux TCP, la gestion de la bande passante, bridage du traffic, Qualité d’Expé- rience, Qualité de Service, réseau d’accès, goulet d’étrangement, optimisation inter-couche. Acknowledgments I am most grateful to my advisors, Dr. Emmanuel MORY and Pr. Bernard COUSIN. Their guidance and insights over the years have been invaluable to me. I feel especially fortunate for the patience that they have shown with me when I firstly stepped into the field of HTTP Adaptive Streaming and TCP congestion control. I am indebted to them for teaching me both research and writing skills.