Récemment, plusieurs amis réalisant des projets sociaux m'ont posé la même question : utilisez-vous un CDN à haute défense pour prendre en charge WebRTC à la fin ? J'ai été frappé par le DDoS tous les jours scalp engourdi, et n'ose pas exposer directement la station source, l'audio en temps réel et la carte vidéo dans le PPT sont presque maudits à la mort par l'utilisateur.
Pour être honnête, la première fois que j'ai entendu cette question, j'ai failli pulvériser mon café sur l'écran, car WebRTC est essentiellement une connexion P2P directe, et l'accélération traditionnelle du cache CDN n'est pas la même chose. Mais plus les gens posaient la question, plus je me rendais compte que les choses n'étaient pas si simples - maintenant que la plateforme sociale a pris un peu d'ampleur, qui ose encore mettre les flux audio et vidéo directement nus sur le réseau public ?
J'en ai fait les frais l'année dernière. À l'époque, le projet était pressé d'être mis en ligne et a directement lancé le serveur TURN sur le nuage public, qui a été pénétré dans les trois jours suivant l'ouverture. L'attaquant a localisé l'IP de notre serveur média, et le trafic de 300G par seconde a directement transformé la salle des serveurs en un trou noir. C'était comme si l'ensemble du centre de données avait été inondé numériquement.
Le cœur du problème est le suivant : WebRTC a été conçu à l'origine pour une connectivité directe d'égal à égal, mais la réalité de l'environnement réseau est si complexe qu'elle fait mal à la tête !Le taux d'échec de la traversée NAT est supérieur à 30%, et les pare-feu d'entreprise sont le premier facteur de destruction des flux audio et vidéo. Cette fois, il faut compter sur le serveur TURN pour effectuer le transit - et cette chose n'est qu'un point d'exposition à l'IP.
Ce qui est encore plus dégoûtant, c'est que WebRTC présente une faille fatale lors de l'établissement d'une connexion : le processus de collecte de l'adresse du candidat ICE expose à la fois l'IP de l'intranet et l'IP publique. J'ai saisi un paquet et je l'ai regardé une fois, et pendant le processus de négociation STUN, l'IP de votre serveur a été transmise à travers le réseau comme si elle était nue. Les attaquants n'ont même pas besoin de se préoccuper de l'analyse, ils peuvent simplement déterminer l'IP du serveur de médias directement à partir de la signalisation de la poignée de main.
C'est le moment pour les CDN à haute défense d'entrer en jeu. Mais les fournisseurs de CDN traditionnels tels que CDN07, leurs nœuds sont principalement optimisés pour HTTP/HTTPS, la prise en charge des protocoles UDP est tout simplement touchante. J'ai testé leurs nœuds, le trafic WebRTC a passé le délai directement doublé, le taux de perte de paquets de plus de 15% est un phénomène courant.
Au lieu de cela, j'ai été agréablement surpris par CDN5, qui se spécialise dans les communications en temps réel. Tous ses nœuds périphériques prennent en charge les protocoles SRT et WebRTC et, surtout, ils ont déployé des clusters de proxy TURN dédiés dans le monde entier. Voici un schéma de leur architecture :
Notez que iceTransportPolicy est réglé sur relay - c'est la clé pour sauver des vies. Forcer tout le trafic à passer par le relais TURN augmente un peu la latence, mais cache complètement l'IP source, et l'augmentation moyenne de la latence est de l'ordre de 40 ms, ce qui est bien dans la fourchette acceptable.
La solution de 08Host est plus intéressante. Ils disposent d'un système de routage intelligent qui peut basculer dynamiquement entre UDP et TCP en fonction des conditions du réseau en temps réel. Telecom utilise TCP, Unicom utilise UDP, et le réseau mobile utilise même le protocole QUIC. J'ai délibérément testé pendant le pic du soir, le taux de perte de paquets est toujours contrôlé en dessous de 3% :
Ce faux pool d'adresses IP est intelligemment conçu - les nœuds périphériques utilisent des adresses IP virtuelles pour communiquer avec la source, et les vraies adresses IP ne sont jamais exposées. La rotation des segments d'IP toutes les 5 minutes équivaut à la mise en place d'une tenue de camouflage sur le serveur.
L'effet de la protection DDoS est encore plus exagéré. Le mois dernier, nous avons été confrontés à une attaque ciblée contre la passerelle WebRTC, 800 000 paquets SYN par seconde dédiés au port TURN. Le centre de nettoyage de CDN5 a directement déclenché une protection intelligente, programmant automatiquement le trafic vers trois nœuds de nettoyage différents. Les statistiques finales montrent que seulement 0,3% de trafic légitime a été affecté, et les utilisateurs ne s'en sont presque pas rendu compte.
Toutefois, il est important de noter que tous les CDN haute définition ne prennent pas réellement en charge WebRTC. Certains fournisseurs se contentent de transmettre le trafic UDP sans même offrir de garanties de qualité de service de base. Lors des tests, veillez à examiner les indicateurs clés suivants : taux de réussite de la connexion ICE, variance du délai de bout en bout, taux de retransmission des pertes de paquets. J'ai résumé un schéma de vérification rapide :
Les données de mesure montrent qu'un bon CDN à haute défense peut contrôler le temps de latence WebRTC P99 dans les 200 ms, avec un taux de réussite de la connexion de 5 secondes de 99,8% ou plus. En particulier, l'optimisation de la liaison transfrontalière asiatique permet de réduire le délai entre Hong Kong et la Silicon Valley à environ 150 ms, ce qui est proche du niveau des données dédiées.
Avec le recul, la combinaison de WebRTC et d'un CDN à haute défense est presque comme une double assurance pour la communication en temps réel. Tous deux conservent l'avantage de la faible latence du P2P et acquièrent la capacité de protéger le nuage. La protection contre les attaques DDoS permet à elle seule d'économiser des centaines de milliers d'euros de bande passante chaque année, en particulier pour les plates-formes sociales les plus durement touchées.
Enfin, une leçon de larmes : ne construisez pas votre propre cluster TURN pour économiser de l'argent. Mon équipe a passé trois mois l'année dernière, l'équipement de nettoyage du trafic léger a investi plus de deux millions, les résultats de l'effet de protection n'est pas aussi bon que les fournisseurs CDN professionnels. Maintenant qu'on y réfléchit bien, on se dit que les choses professionnelles doivent être confiées à des professionnels.
Revenons donc à la question initiale : le CDN social à haute défense prend en charge WebRTC. La réponse n'est pas seulement la prise en charge, mais aussi la nécessité de la prise en charge. De nos jours, la communication en temps réel sans protection équivaut à courir nu sur le champ de bataille, et n'importe quel script boy peut gagner la scène. En choisissant le bon fournisseur de services CDN, votre activité audio et vidéo peut vraiment être tranquille.

