Auteur Sujet: Transit Cogent/OVH streaming video  (Lu 2406 fois)

0 Membres et 1 Invité sur ce sujet

vivien59

  • Abonné Free Pro
  • *
  • Messages: 3
  • Lille (59)
Transit Cogent/OVH streaming video
« le: 15 octobre 2023 à 02:37:06 »
Bonjour à tous,

Je suis le fondateur d'une startup qui fait de l’hébergement de vidéos et je m'occupe de la partie réseau.

Nous avons la majeure partie de notre infra dans un datacenter en colocation sur Lille (le CIV) et des serveurs dédiés de cache chez OVH qui assurent la diffusion des vidéos. Les fichiers sources sont stockées sur des serveurs au CIV.

Un des serveurs OVH arrivait à saturation en heures de pointe.
J'avais pris une option 3Gbit/s de trafic garanti sur ce serveur et c'était le max sur ce modèle.
Sinon tout fonctionnait très bien.

Ayant déjà une infra en propre, j'ai décidé de remplacer ce serveur Ovh par un serveur chez nous avec un transit Cogent 10Gbit/s qui est utilisé uniquement par ce serveur pour le moment. En heures de pointe, on tourne aux alentours de 2-3Gbits/s donc on est censé avoir de la marge et le serveur est plus performant que celui d'OVH.

Cependant, depuis le changement, nous avons eu pas mal de clients qui se plaignent que la lecture des vidéos rame.
Nos clients sont surtout en France/Europe mais on a aussi quelques Canadiens et des clients dans les Dom/Tom.

Rien n'a changé si ce n'est la différence OVH/Cogent donc je pense que les lenteurs sont liées à cela.

Au niveau des routes en gros on est passé de :
CIV Lille > Eurafibre > LILLIX > OVH > reste du monde
à
CIV Lille > Cogent > reste du monde

Notre trafic est à 100% en upload.

J'aimerais avoir un retour d’expérience.
Est-ce que c'était une mauvaise idée de passer par Cogent pour ce cas d'usage ?
Est-ce que vous pensez que cela peut réellement faire une différence ou je dois chercher ailleurs ?

Comment faire pour analyser le problème ? monitorer la qualité du transit ?
J'ai essayé de faire des traceroutes à destination de plusieurs FAI, etc .. mais je ne vois rien d'anormal, les pings, sont ok, etc ...

Merci d'avance,

Symbol

  • AS52075 Wifirst
  • Expert
  • *
  • Messages: 349
Transit Cogent/OVH streaming video
« Réponse #1 le: 15 octobre 2023 à 04:10:34 »
Au niveau des routes en gros on est passé de :
CIV Lille > Eurafibre > LILLIX > OVH > reste du monde
à
CIV Lille > Cogent > reste du monde
Notre trafic est à 100% en upload.
J'aimerais avoir un retour d’expérience.
Est-ce que c'était une mauvaise idée de passer par Cogent pour ce cas d'usage ?
Oui.
Prendre un transit tier1 n'a de sens que si en parallèle on met en place des peerings.
Prendre un transit tier1 comme unique réseau pour pousser du trafic vers des ISP / eyeballs n'a pas de sens (sauf si c'est Opentransit éventuellement).
Par ailleurs Cogent et les problèmes de capa pour pousser du traf ici ou là sont un grand classique. Mais c'est drôlement pas cher.
Bref, ta sélection n'a pas pris en compte les bons critères.
Finalement le plus simple pour toi serait désormais de mettre un CDN entre toi et tes clients (Cloudflare, Akamai, etc) pour mettre en cache tes trucs et les servir au plus proche.
Sinon tu devrais prendre des transits tier2 qui ont des peerings avec les réseaux que tu cibles.

vbernat

  • Expert Free
  • Expert
  • *
  • Messages: 18
  • Paris (75)
Transit Cogent/OVH streaming video
« Réponse #2 le: 15 octobre 2023 à 08:21:05 »
Tu devrais te rapprocher du support Cogent qu'ils checkent s'ils voient de la saturation de leur côté aux heures de pointe (notamment sur le fait d'être à Lille). Chez Shadow, on utilisait Cogent et Telia, mais aussi des peerings et Hopus donc c'est un peu différent de ta situation. On avait peu de soucis avec Cogent et entre Cogent et Telia, on avait plus souvent des problèmes avec Telia que Cogent. Comme tu es surtout en upload, met en place un looking glass qui permettra aux clients de faire un traceroute depuis chez toi vers chez eux pour diagnostiquer les problèmes. Comme tu maitrises aussi la partie client, tu devrais pouvoir remonter de la télémétrie pour savoir quand cela se passe mal et avoir une idée plus précise, type heure, pays, FAI.

Free_me

  • Abonné Free fibre
  • *
  • Messages: 3 122
  • Marseille
Transit Cogent/OVH streaming video
« Réponse #3 le: 15 octobre 2023 à 08:35:28 »
un CDN me semble etre la base pour ce genre de truc.

vivien

  • Administrateur
  • *
  • Messages: 47 252
    • Twitter LaFibre.info
Transit Cogent/OVH streaming video
« Réponse #4 le: 15 octobre 2023 à 10:24:28 »
Cependant, depuis le changement, nous avons eu pas mal de clients qui se plaignent que la lecture des vidéos rame.
Nos clients sont surtout en France/Europe mais on a aussi quelques Canadiens et des clients dans les Dom/Tom.
Cogent sature vers certaines destinations, il serait intéressant de relever les AS des clients.

Bien vérifier que le problème n'est pas sur le serveur (saturation du nombre de slots Apache par exemple).

Par ailleurs, mon employeur, l'Arcep, est à la recherche d'une solution pour proposer des vidéos sur son site web, mais avec des pré-requis en termes de codec : VP9 + HEVC ou VP9+ H.264.

Je suis intéressé pour discuter avec vous de la faisabilité.

L’Arcep vient, avec L’Arcom de publier un référentiel général d'écoconception des services numériques réalisé en collaboration avec l'ADEME ainsi que la DINUM, la CNIL et l'Inria. Ce document regroupe un ensemble de critères permettant de s’assurer qu’un service numérique s’inscrit dans une démarche d’écoconception :
- Le communiqué de presse
- La consultation publique
- Le Référentiel général de l’écoconception des services numériques

Nous cherchons à être irréprochable sur le site web de l’Arcep et nous cherchons à avoir un player vidéo pour sur le site https://www.arcep.fr/ qui est construit avec le CMS TYPO3 (actuellement en version 11).

Aujourd’hui, quand l’Arcep publie sur son site des vidéos, il y a deux solutions utilisées :
- Utiliser l’intégration Dailymotion. Exemple : https://conference.arcep.fr/fr/event/arcep-220922
- Intégrer directement la vidéo sur le site. Exemple : https://www.arcep.fr/actualites/actualites-et-communiques/detail/n/internet-ouvert-070721.html (c’est un simple balise <video width="1170" controls no-cookie class="video-embed-item" ><source src="video.mp4" type="video/mp4"></source></video>)

La solution d’intégration directe proposée par TYPO3 ne permet d’avoir qu’un seul encodage vidéo, donc on doit mettre du H.264 pour une large compatibilité (même si certaines vidéos Arcep sont disponibles uniquement en VP9). De plus, c’est assez lourd, car les navigateurs doivent charger le début de chaque vidéo pour afficher une miniature.

Dailymotion oblige à afficher un écran de consentement sur les cookies, intègre de la publicité et Dailymotion ne propose pas d’encodage efficace (il y a uniquement du H.264).

On recherche une solution plus conforme au référentiel que nous venons de publier. Cette solution serait utilisée seulement pour les nouvelles vidéos mises en ligne (les anciennes vidéos ne sont pas migrées).

Notre besoin serait le suivant (nous sommes également preneurs de vos suggestions pour le faire évoluer) :

Upload des vidéos sources via une interface web - Les vidéos seraient envoyées par l’Arcep seraient encodées dans 4 formats vidéo par votre plateforme :
- 1080p VP9 (définition utilisée sur demande de l’utilisateur) ;
- 720p VP9 (définition utilisée par défaut représente la majorité des vidéos demandées) ;
- 720p HEVC (codec vidéo utilisé pour iOS / iPadOS représente moins de 20% des vidéos demandées) ;
- 480p VP9 (définition utilisée pour le mode économie de donnée) ;
- Audio only (si vous savez faire).

Si votre solution ne permet pas d’encoder en HEVC, on peut utiliser H.264 en second codec vidéo pour iOS / iPadOS.

Player vidéo intégrable sur le site Arcep (Typo3) :
- un clic de l’utilisateur est nécessaire pour déclencher la lecture de vidéo (possibilité de désactiver l’autoplay) ;
- utilisation d’une miniature avant le lancement de la vidéo (avec possibilité pour les équipes de l’Arcep d’importer une miniature). Si vous savez faire des miniatures en WebP et non JPEG, on est preneur. Tous les navigateurs de moins de 3 ans sont compatibles avec WebP.
- détection du navigateur web utilisé : utilisation de VP9 sur tous les navigateurs, sauf sur iOS/iPadOS. H.264 ou HEVC est utilisé sur iOS/iPadOS avec une définition unique : 720p. La détection peut se faire par le « user agent » ou mieux via les informations sur les codecs pris en charge retournés par le navigateur ;
- utilisation du 720p par défaut en mode « automatique » ;
- l’utilisateur (excepté sous iOS/iPadOS) à la possibilité de modifier la définition à la baisse ou à la hausse si la définition par défaut ne lui convient pas et un mode audio only si vous savez faire ;
- l’utilisateur (excepté sous iOS/iPadOS) à la possibilité de choisir un mode « économie de données » qui baisse la définition à 480p. Si possible, ce mode serait mémorisé pour de prochaines lectures ;
- (optionnel si vous savez faire) la possibilité de rajouter un fichier pour le sous-titrage d’une vidéo ;
- (optionnel si vous savez faire) la possibilité de chapitrer une longue vidéo pour un accès direct à une partie de la vidéo ;
- En plus d’un mode « économie de données » qui réduit la résolution, le fait de proposer un flux « audio only » serait un plus ;
- Hébergement des vidéos en IPv4 + IPv6.

Comme vous pouvez le voir sur ce tableau, VP9 et HEVC sont assez complémentaires et permettent d'adresser tous les terminaux. AV1 est un codec prometteur, mais sa prise en charge est encore trop limitée. Avec une stratégie d’encodage qui se limite à 2 codecs, le second codec, utilisé avec AV1, doit être H.264, car on a des navigateurs comme Edge qui ne supportent ni AV1, ni HEVC et les iPhone (excepté l’iPhone 15 Pro) qui ne supportent ni AV1, ni VP9.


Cliquer sur l'image pour zoomer et accéder à la page N°2, qui comporte une liste plus complète de codecs vidéo

Hugues

  • AS2027 MilkyWan
  • Modérateur
  • *
  • Messages: 12 459
  • Lyon (69) / St-Bernard (01)
    • Twitter
Transit Cogent/OVH streaming video
« Réponse #5 le: 15 octobre 2023 à 10:28:31 »
Donc si je lis bien, y'a toute une palanquée de pré-requis un peu inutiles sur les codecs et les définitions.
Puis y'a les sous-titres qui sont seulement optionnels ?

Franchement je trouve ça décevant, l'accessibilité ne devrait pas être un "petit truc en plus"...

vivien

  • Administrateur
  • *
  • Messages: 47 252
    • Twitter LaFibre.info
Transit Cogent/OVH streaming video
« Réponse #6 le: 15 octobre 2023 à 10:33:01 »
Le truc sur les sous-titres, je l'ai rajouté, car cela me semble intéressant de l'utiliser, mais aujourd'hui quand une vidéo est sous-titrée, c'est directement lors de sa création.

Exemples :






Hugues

  • AS2027 MilkyWan
  • Modérateur
  • *
  • Messages: 12 459
  • Lyon (69) / St-Bernard (01)
    • Twitter
Transit Cogent/OVH streaming video
« Réponse #7 le: 15 octobre 2023 à 10:47:23 »
C'est mieux de laisser l'utilisateur choisir les sous-titres et surtout leur taille :)

vivien59

  • Abonné Free Pro
  • *
  • Messages: 3
  • Lille (59)
Transit Cogent/OVH streaming video
« Réponse #8 le: 15 octobre 2023 à 15:59:24 »
Par rapport aux CDN, effectivement ça serait le top mais quand tu fais de la vidéo, c'est pas si simple que ca.

La plupart des CDN facturent au Go sortant. Si je prend l'exemple de Fastly (ils sont beaucoup utilisés pour cela) et que je regarde le tarif, on tourne aux alentours de 150€/To sortant (sans compter les autres frais genre nombre de requêtes, etc ...). Akamai c'est plus cher. Tu as des réductions quand tu fais des gros volumes mais c'est en gros le tarif de base. On pourrait utiliser également des services comme AWS S3 qui sont sur un prix entre 100€ et 50€/To en fonction du volume.

Le problème de tout cela, c'est que c'est extrêmement cher. Le serveur dont je parle sors environ 10To par jour. 100€*10To*30jours = 30.000€ par mois ???

Certes, le service serait top, mais c'est juste pas possible, nous serions morts depuis longtemps.

Le serveur chez OVH me coute 500€/mois et globalement si tu prends l'offre "bande passante premium" t'es a 100€ par Gbit/sec chez OVH mais t'as pas de limite de "quantité" de trafic ce qui est le plus important. Par contre effectivement, je perds l'aspect "mondial" du CDN mais je préfère prendre plusieurs serveurs dédies dans différentes localisations ce qui reste toujours plus intéressant.

Par contre, du coup étant donné qu'on paie une connexion avec un débit fixe, on a une limite de nombre de personnes simultanées (en gros tu mets 200 personnes simultanées sur 1Gbit/s ce qui monte très vite) ce qui nous oblige à dimensionner le réseau correctement. Nos clients ont un trafic assez prévisible donc ça va.

J’essaie de trouver des solutions pour avoir un réseau pas trop mal sans pour autant se ruiner.

C'est pour cela qu'on essai de monter notre propre réseau. J'ai assez peu d’expérience au niveau du choix des transitaires, peering, etc ... mais c'est quelque chose que j'aimerais développer (au moins pour la partie France) et c'est pour cela qu'aujourd'hui on fait le test avec un transit Cogent.

Je prends en comptes vos remarques et je vais essayer d'avoir plus d'infos par rapport aux ASN des clients, etc ...

---

Par rapport aux remarques sur les compressions, effectivement c'est un autre problème des plateformes vidéos, on est obligés de compresser toutes les vidéos dans différents formats et différentes résolutions. Malheureusement pas trop le choix si on veut convenir aux différents appareils. Globalement y'a que le H264 qui est compatible partout mais en contrepartie ça consomme plus de bande passante car la compression est moins importante et comme c'est ce qui vaut cher, ça vaut le coup de compresser dans de meilleurs formats même si tu peux pas le diffuser à tout le monde et même si ça implique un stockage plus important (les fichiers sont dupliqués).


@vivien Par rapport à ton besoin pour l'Arcep je serais ravis de discuter avec toi. A première vue on peut répondre à l'ensemble des demandes sauf le audio-only mais c'est quelque chose qui peut être ajouté (je n'avais jamais vu ce besoin). Nous développons la plateforme en interne donc on peut adapter le player pour qu'il colle le mieux possible a ton référentiel. On est également en train de le modifier pour qu'il colle au RGAA suite a une demande client.


kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 092
  • Paris (75)
Transit Cogent/OVH streaming video
« Réponse #9 le: 15 octobre 2023 à 16:50:09 »
Comment faire pour analyser le problème ? monitorer la qualité du transit ?

Le mieux c'est de faire de la télémétrie coté client.


La solution d’intégration directe proposée par TYPO3 ne permet d’avoir qu’un seul encodage vidéo, donc on doit mettre du H.264 pour une large compatibilité (même si certaines vidéos Arcep sont disponibles uniquement en VP9). De plus, c’est assez lourd, car les navigateurs doivent charger le début de chaque vidéo pour afficher une miniature.

le player HTML5 supporte un attribut pour la miniature (poster url_dune_image) et de pas précharger la vidéo (preload=metadata ou none). voir https://www.w3schools.com/tags/tag_video.asp
Le "poster" peut être créé depuis la vidéo avec ffpmeg.

Vous pouvez encoder vous-même en DASH et/ou HLS et mettre un player tier dans votre CMS, y'a un bon tuto la: https://www.exoscale.com/syslog/self-hosted-videos/ .Y'a un peu de dev html/js pour intégrer le player et mémoriser les préférences (ca peux se faire en open source pour l'ARCEP).

mais c'est peut-être mieux d'ouvrir un autre sujet pour cela.

Leon

  • Client SFR sur réseau Numericable
  • Modérateur
  • *
  • Messages: 6 003
Transit Cogent/OVH streaming video
« Réponse #10 le: 15 octobre 2023 à 17:18:25 »
J'aimerais avoir un retour d’expérience.
Est-ce que c'était une mauvaise idée de passer par Cogent pour ce cas d'usage ?
Est-ce que vous pensez que cela peut réellement faire une différence ou je dois chercher ailleurs ?

Comment faire pour analyser le problème ? monitorer la qualité du transit ?
J'ai essayé de faire des traceroutes à destination de plusieurs FAI, etc .. mais je ne vois rien d'anormal, les pings, sont ok, etc ...

Merci d'avance,
Pour choisir le bon fournisseur de transit, il faut d'abord savoir quelles parties d'internet tu cherches à joindre, quels AS.
Donc en gros qui sont les utilisateurs finaux de tes streaming vidéo.
Selon que tes utilisateurs finaux sont principalement en France, ou Europe, ou monde entier, tu ne prendras pas forcément le même fournisseur de transit.

Sinon, OVH a une offre CDN à 600€ les 100 To.

Leon.

Free_me

  • Abonné Free fibre
  • *
  • Messages: 3 122
  • Marseille
Transit Cogent/OVH streaming video
« Réponse #11 le: 15 octobre 2023 à 17:37:00 »
le player HTML5 supporte un attribut pour la miniature (poster url_dune_image) et de pas précharger la vidéo (preload=metadata ou none). voir https://www.w3schools.com/tags/tag_video.asp

C'est ce que j'allais dire aussi. La balise html video fait deja le job.
Mais a toi de fournir en amont les elements necessaires, images, et toutes les sources possibles.