TCP Protocol Optimization for HTTP Adaptive Streaming
Optimisation du protocole TCP pour le streaming adaptatif sur HTTP
Résumé
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 Protocol
(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 another
gateway-based shaping method that is based on queuing discipline, called Hierarchical Token
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 discordance
in performance between combinations. Furthermore, the best combination that improves
performances in the majority of scenarios is when combining Illinois variant with RWTM. In addition,
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 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 outperformsWestwood+; it offers better quality level stability on the
optimal quality level, it dramatically reduces the packet drop rate and it generates lower queuing
delay.
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 protocole
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 lecture)
désignés par "chunks". Chaque segment de vidéo est transcodé à plusieurs niveaux de qualité,
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’étrangement
(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 niveau
de la passerelle. Cette méthode est désignée par "ReceiveWindow 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 shaping
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 goulot d’étrangement.
Notre deuxième contribution consiste à mener une étude comparative combinant huit combinaisons
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’évaluation
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 queWestwood+ ; 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.
Fichier principal
Chiheb_Ben_Ameur_Rapport_These_decmbre2015_HAL_Archive.pdf (8.14 Mo)
Télécharger le fichier
Loading...