Skip to main content
BlogInformatiqueExploiter le Edge Computing pour des services de streaming en direct à faible latence

Tirer parti de l'informatique en périphérie pour des services de diffusion en direct à faible latence

Illustration d'une personne utilisant un écran projeté entre ses mains avec ses doigts, avec du texte : Pourquoi l'exploitation de l'informatique en périphérie est cruciale pour les services de diffusion en direct.

Si vous faites partie d'une organisation qui gère un service de diffusion en direct et que vous avez été confronté à une augmentation inattendue du trafic ou à une panne, votre équipe a probablement dû se démener pour résoudre les problèmes et remédier aux retards. Cette interruption peut devenir un problème important pour les téléspectateurs et un défi de taille pour votre équipe.

L'origine du problème réside souvent dans la capacité de votre fournisseur de services en nuage à gérer efficacement les hausses soudaines de trafic et à réacheminer le trafic en cas de panne. Si le fournisseur de services en nuage ne parvient pas à adapter ses ressources suffisamment rapidement pour répondre à la demande accrue, la plateforme de diffusion en continu risque de céder sous la pression, ce qui se traduira par des temps d'arrêt, des flux irréguliers, voire des pannes complètes.

En investissant dans une infrastructure évolutive, comme des serveurs distribués et des solutions basées sur l'informatique en nuage, et en tirant parti de l'informatique en périphérie et d'un puissant réseau de diffusion de contenu (CDN), vous pouvez vous assurer que les utilisateurs bénéficient d'une expérience en direct ininterrompue, que le contenu parvient au spectateur de manière fiable et que les services de diffusion en continu conservent leur réputation dans un monde de plus en plus concurrentiel.  

Dans ce blog, nous allons passer en revue les outils que nombre de nos clients utilisent pour une diffusion en continu fiable. 

Tirer parti des points de présence d'Akamai

Un CDN tel qu'Akamai fournit des serveurs périphériques décentralisés et localisés, stratégiquement positionnés à proximité des utilisateurs finaux. Les serveurs périphériques agissent comme des points de présence (PoP) qui servent de plaques tournantes intermédiaires entre le centre de données central et l'appareil de l'utilisateur. Lorsque vous demandez une vidéo, le contenu est fourni par le serveur périphérique le plus proche au lieu de voyager depuis le centre de données central. Ainsi, en cas de trafic élevé, ces serveurs peuvent diviser et distribuer le contenu simultanément aux utilisateurs de différentes régions sans retard. 

L'image ci-dessus montre le réseau distribué d'Akamai. Cette architecture est conçue pour monter en charge dynamiquement afin de gérer les pics de trafic et les fluctuations de la demande. Cette élasticité garantit la réactivité et la résilience de l'infrastructure, même dans les conditions les plus exigeantes. Cette proximité réduit considérablement le temps nécessaire pour que le contenu atteigne votre appareil, ce qui se traduit par une latence plus faible et une expérience de streaming plus fluide pour les utilisateurs finaux. 

Comment Akamai aide les services de diffusion en direct à obtenir une faible latence

Pour offrir une expérience de qualité à vos spectateurs en ligne, vous devez vous assurer que vos machines virtuelles n'ajoutent pas de latence supplémentaire à vos flux en direct. Akamai prend en charge un temps de latence de 10 secondes de bout en bout pour les flux linéaires et en direct. Voici comment Akamai aide les services de streaming en direct à obtenir une faible latence :

  1. Transcodage en direct et en temps réel
    Un système de transcodage en direct doit être capable de gérer des pics de charge vidéo en temps réel. Toute latence ajoutée pendant le transcodage est finalement répercutée sur l'utilisateur final, ce qui se traduit par une expérience de visionnage qui n'est pas optimale.
  2. Petites tailles de segments
    L'architecture d'Akamai a été conçue pour gérer de manière fiable de petites tailles de segments (jusqu'à 2 secondes) pour le streaming basé sur HTTP, afin de permettre aux lecteurs de basculer rapidement vers le bas en cas de baisse de la bande passante, d'éviter les décrochages des lecteurs et de réduire efficacement les tampons côté client.
  3. Transferts HTTP codés par morceaux
    La prise en charge des transferts codés par morceaux depuis l'ingestion jusqu'à l'Edge pour lancer les transferts dès que les données sont disponibles permet de minimiser les temps de latence.
  4. Préchargement à partir de la périphérie
    Les serveurs de périphérie prélèveront la prochaine série de segments pour un débit binaire particulier et la mettront en cache localement, alors que le segment précédent est déjà reçu et en cours de lecture. Cela permet aux segments d'être immédiatement disponibles et réduit le risque de latence supplémentaire.

Voyons comment l'un de nos clients a utilisé Akamai pour monter en charge son streaming en direct grâce à ce processus.

Comment faire évoluer votre service de diffusion en direct à la périphérie ?

Notre mécanisme de streaming en direct est assuré par Media Services Live (MSL) d'Akamai. MSL est conçu pour diffuser efficacement du contenu vidéo en direct à des audiences mondiales en exploitant le vaste réseau de serveurs périphériques d'Akamai répartis sur divers sites géographiques.

Examinons l'architecture de référence ci-dessus qui détaille à la fois le flux de travail d'ingestion et le flux de travail de diffusion pour un événement de streaming en direct avec Akamai. Si vous cherchez à améliorer vos services de streaming en direct, voici comment je vous suggérerais de configurer MSL pour gérer le streaming en direct d'un événement. 

Étape 1 : Encodage et ingestion

Tout d'abord, vous devez capturer le contenu vidéo en direct sur le site de diffusion. Une fois que vous avez le contenu, vous devez configurer un encodeur pour convertir le flux vidéo brut dans un format numérique, comme HTTP Live Streaming (HLS) ou Real-Time Messaging Protocol (RTMP). Ensuite, vous utiliserez IAS (Ingest Acceleration Source) d'Akamai, qui est téléchargé via le portail client d'Akamai. IAS prend le flux de l'encodeur et le transmet via notre protocole de transport UDP propriétaire. Vous devez ensuite configurer l'IAS pour qu'il reçoive le flux de l'encodeur. 

Ensuite, vous devez configurer la cible d'accélération d'ingestion (IAT) sur le réseau d'Akamai et vous assurer que l'IAT est configurée pour décoder le flux dans son format d'origine. Ensuite, nous connectons l'IAT au logiciel de point d'entrée d'Akamai pour la suite du traitement. Au cours de cette phase d'encodage et d'ingestion, de nombreuses personnes sont confrontées au problème de la perte de paquets. Le streaming vidéo en direct est très sensible à la perte de paquets, qui peut dégrader la qualité du flux, provoquer une mise en mémoire tampon et conduire à une expérience de visionnage insatisfaisante. Cependant, les clients qui utilisent Akamai pour le streaming en direct ne rencontrent pas ce problème car la technologie d'accélération basée sur UDP qu'Akamai utilise permet d'atténuer les effets de la perte de paquets en garantissant une diffusion plus fiable et plus rapide des paquets de données, même dans des conditions de réseau instables. Une autre raison pour laquelle cette technologie est cruciale dans le processus de streaming en direct est que la transmission traditionnelle basée sur le TCP peut souffrir d'une latence élevée en raison de ses mécanismes de contrôle de la congestion et de correction des erreurs. Le streaming en direct nécessite une faible latence pour garantir que les spectateurs reçoivent le contenu en temps réel. L'accélération UDP d'Akamai offre un débit plus élevé et une latence plus faible en minimisant ces frais généraux, ce qui est crucial pour le contenu en direct où la diffusion en temps voulu est essentielle.

Étape 2 : Distribution de niveau intermédiaire et stockage facultatif

Ensuite, vous devez diriger le flux vidéo traité vers les serveurs de niveau intermédiaire d'Akamai. Ces serveurs servent d'intermédiaires entre le serveur d'acquisition et le réseau de diffusion périphérique. Les serveurs de niveau intermédiaire distribuent ensuite le flux vidéo, en veillant à ce qu'il soit répliqué et mis en cache en plusieurs points du réseau afin d'équilibrer la charge et d'améliorer la redondance. Lorsqu'un fournisseur dans le Cloud gère le streaming en direct, il est important que l'équilibrage de la charge soit effectué correctement, faute de quoi des goulets d'étranglement se formeront au cours du processus. L'utilisation du réseau de diffusion périphérique d'Akamai permet d'éviter qu'un seul serveur ne devienne un goulot d'étranglement, en veillant à ce qu'aucun serveur individuel ne soit submergé par un trop grand nombre de requêtes. Ceci est particulièrement important lors d'événements à fort trafic.

En option, vous pouvez stocker le contenu vidéo dans le système NetStorage d'Akamai. NetStorage garantit que le contenu est toujours disponible et qu'il peut être récupéré rapidement en cas de besoin. Il s'agit d'une solution de stockage sécurisée et évolutive qui peut servir de sauvegarde ou de lecture à la demande. 

Étape 3 : Bouclier d'origine

Ensuite, nous envoyons la vidéo à Origin Shield, qui aide à gérer les pics de trafic en jouant le rôle de tampon entre les serveurs d'acquisition et le CDN d'Akamai. Pendant les périodes de pointe ou en cas d'augmentation inattendue du nombre de spectateurs, Origin Shield peut gérer l'augmentation de la charge, empêchant ainsi les serveurs d'acquisition d'être submergés. Le système peut ainsi accueillir un grand nombre de téléspectateurs sans dégradation des performances. Origin Shield optimise également l'efficacité du cache. En ajoutant une couche supplémentaire de cache, Origin Shield réduit la fréquence à laquelle les demandes doivent retourner aux serveurs d'origine. Cela diminue la charge sur les serveurs d'origine, économise la bande passante et accélère la livraison du contenu aux utilisateurs finaux. Pour les utilisateurs finaux, cela se traduit par un accès plus rapide au contenu, une réduction de la latence et une amélioration de l'expérience du spectateur.

Étape 4 : Configuration de la livraison et livraison à l'utilisateur final

Il est maintenant temps de distribuer le contenu. Lorsque vous diffusez le contenu à l'échelle mondiale dans différentes régions, les conditions du réseau, les exigences réglementaires ou les préférences des spectateurs peuvent varier. Pour résoudre ce problème, nos clients utilisent les comptes de diffusion d'Akamai. Les comptes de diffusion d'Akamai correspondent à différentes configurations et mises en place pour la diffusion du contenu et permettent aux fournisseurs de contenu de configurer différents paramètres, comme les stratégies de mise en cache, les protocoles de sécurité et les optimisations de diffusion, spécifiquement pour chaque région. Chaque compte de diffusion peut avoir des paramètres spécifiques adaptés aux besoins de diverses régions, appareils ou types de contenu. Ceci est important car les fournisseurs de contenu doivent distribuer leur contenu de manière efficace et flexible sur plusieurs canaux de diffusion.

Enfin, le contenu vidéo est transmis aux utilisateurs finaux par l'intermédiaire de divers appareils tels que les ordinateurs, les smartphones, les tablettes et les téléviseurs intelligents. Les serveurs périphériques transmettent le flux vidéo à l'appareil du lecteur avec une latence minimale, ce qui garantit une expérience de visionnage fluide et de haute qualité.

Conclusion

Il y a tant de choses à prendre en compte lors de la mise en place d'une solution de diffusion en direct. Tout d'abord, vous devez tenir compte de la latence et de la mise en mémoire tampon, en particulier lors d'événements en direct où la diffusion en temps réel est essentielle. Une latence élevée peut entraîner des retards dans le flux en direct, ce qui rendra vos utilisateurs finaux très mécontents. Vous devez également tenir compte de la perte de paquets, qui peut dégrader la qualité vidéo ou provoquer des interruptions. En cas de perte de paquets, vos utilisateurs finaux seront confrontés à des flux incohérents et peu fiables, ce qui se traduira par une mauvaise expérience de visionnage. Enfin, vous devez être capable d'évoluer et d'équilibrer la charge. Vous risquez d'être confronté à des surcharges et à des pannes de serveur, entraînant des interruptions de service et une incapacité à gérer efficacement les pics de charge. Le réseau de diffusion optimisé d'Akamai résout tous ces problèmes grâce à son accélération basée sur UDP, son réseau d'ingestion et son CDN évolutif.

L'utilisation d'Akamai pour le streaming en direct garantit une diffusion efficace, évolutive et à faible latence des flux vidéo en direct, pour le plus grand bonheur des utilisateurs finaux. En rapprochant la puissance de traitement de la périphérie du réseau grâce à Akamai, les services de streaming peuvent optimiser les performances et améliorer la montée en charge. 

Pour suivre un tutoriel étape par étape sur le transcodage vidéo, suivez ce lien pour convertir un fichier mp4 au format HLS. Vous pouvez également consulter notre documentation sur l'API de provisionnement de flux en direct de Media Services.

Pour en savoir plus sur la manière de mettre en œuvre ce système, inscrivez-vous à notre lettre d'information, connectez-vous avec nous sur Twitter ou LinkedIn, ou abonnez-vous à notre chaîne YouTube.

Si vous ou votre organisation envisagez d'optimiser ses solutions de transcodage vidéo et Kubernetes, vous pouvez essayer les solutions de Linode en vous inscrivant pour obtenir 100 $ de crédits gratuits. 

Commentaires

Laissez un commentaire

Votre adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.