By Philidia on samedi 19 décembre 2015
Category: News

Ping-Pwn: déclaration de guerre aux lags subis

 
Riot Direct est un projet que Riot a lancé à l'arrivée du datacenter d'Amsterdarm. Le but était simple, il s'agissait de réduire au maximum les intermédiaires entre le joueur et Riot, qui sont les fournisseurs d'accès. Aujourd'hui, Riot montre le résultat de ce projet, et ce qu'il a pu apporter...
 
Ping-Pwn: déclaration de guerre aux lags subis
 
En janvier, nous vous avons tenus informés de nos progrès avec le Riot Direct, une initiative que nous avons lancée afin d'établir un réseau unique pour le trafic de League of Legends en Amérique du Nord et en Europe. Maintenant que ce service a été lancé et qu'il fonctionne correctement, nous aimerions vous parler des résultats visibles que nous avons pu constater au niveau de la réduction des temps de latence. Nous allons aussi parler plus en détail de ce qui nous a amenés jusqu'ici, pour que vous puissiez mieux comprendre pourquoi un projet comme le Riot Direct nous semblait nécessaire et quels problèmes nous espérions corriger grâce à lui.
 

 
Pour en savoir plus à ce sujet, nous avons discuté avec Peyton Maynard-Koran, directeur technique chez Riot, fort de 20 ans d'expérience dans l'industrie des télécommunications, chef de produit pour Riot Direct... et fan invétéré de Wukong ! « Wukong est mon chouchou depuis toujours ! » précise-t-il en nous montrant sa coque de téléphone Roi des Singes et l'illustration encadrée de Wukong que son meilleur ami a réalisée pour lui. Quand il ne joue pas les hélicoptères mortels en tourbillonnant au milieu de l'équipe adverse, il travaille sur de nouvelles méthodes créatives pour améliorer votre connexion aux serveurs de League of Legends.
 
Avant & après
 
Nous souhaitions vraiment mettre en place certaines améliorations. Voici une carte thermique répertoriant les temps de latence en jeu subis par les joueurs en Europe de l'ouest juste avant l'activation du réseau Riot Direct. (vert = 0-65ms, orange = 66-100ms, rouge = 101ms ou plus).
 

 
Pour de nombreuses personnes au sud de l'Europe, il restait assez difficile d'être dans la zone verte. Mais voici à quoi ressemble la situation en Europe de l'ouest depuis le lancement du Riot Direct :
 

 
Le paysage demeure un peu différent pour le moment en EU Nord & Est, car nous avons seulement commencé récemment à contacter les fournisseurs d'accès de la région pour établir des contrats avec eux. Nous savons que le point de présence à Vienne va nous permettre de réduire la latence et d'augmenter la stabilité de ces connexions, mais nous tenons toujours à étendre notre propre infrastructure à l'est et au sud. Pour le moment, les résultats constatés en EU Nord & Est pourraient être meilleurs, mais nous restons optimistes quant aux améliorations que nous allons mettre en place dans la région au cours des mois qui viennent.
 

 
Post lancement :
 

 
Pourquoi Riot Direct ?
 
League of Legends est un jeu en ligne (attention, spoilers !). Concrètement : le jeu a beau être très appréciable et divertissant du point de vue du design, si les mécanismes conçus pour permettre aux joueurs d'y accéder ne fonctionnent pas de façon optimale, League of Legends cessera vite d'être une expérience amusante. Personne n'aime jouer en subissant des ralentissements, ni voir son champion faire des bonds imprévisibles sur l'écran en se demandant si le Récap. morts ne va pas apparaître une fois que la connexion au serveur est rétablie.
 
Lorsque nous avons ouvert le centre de données d'Amsterdam, en juin dernier, nous avons acheté une immense portion de bande passante et de trafic de transit auprès des principaux fournisseurs d'accès et de réseaux (Level 3, GTT, Telia, Hibernia, etc.). Nous sommes partis du principe que grâce à toutes ces connexions réseau, l'expérience de jeu serait stabilisée et que nous serions en mesure de trouver la route la plus rapide pour atteindre les joueurs. Pourtant, le trafic du jeu ne correspondait toujours pas à ce que nous espérions, et d'après nos constats, l'évolution allait encore prendre beaucoup de temps. Par exemple, un certain nombre de joueurs allemands qui habitaient pourtant près de notre centre de données subissait toujours un ping de plus de 120ms. Pour ne rien arranger, la vitesse moyenne restait très fluctuante et il n'y avait aucune méthode évidente pour la stabiliser.
 
Nous n'avions pas encore pris le contrôle total de la situation. Si le problème se situait au niveau d'un des réseaux extérieurs au nôtre, cela avait malgré tout un impact négatif sur les joueurs de League, même si cela n'avait rien à voir avec nous. Maynard-Koran nous a expliqué qu'avec l'ancien modèle, « nous ne pouvions jamais réparer ou influencer la façon dont les routes étaient empruntés sur le réseau, ou le comportement du trafic, à moins de construire notre propre réseau.
 
C'est pour cela que nous avons établi ce réseau en Europe. Le trafic n'empruntait plus un seul chemin vers notre centre de données, il passait par tout le continent. En mettant en place notre propre infrastructure, nous pouvons non seulement forcer le trafic à passer par notre réseau, mais nous pouvons aussi le forcer à emprunter le même chemin lorsqu'il repart. Cela nous permet de créer un environnement où les joueurs profitent d'une route très symétrique et où tous les routeurs intermédiaires ont été supprimés. »
 
Le problème des routeurs
 
Pour comprendre pourquoi cela pose problème que des fournisseurs d'accès envoient le trafic de League à travers un chemin sinueux passant par de multiples routeurs, il est important de se rendre compte que le trafic d'un jeu en ligne est très différent de la plupart des autres trafics internet. Le trafic standard utilisé sur internet (pour envoyer des films, de la musique, des photos de chats ou autre) voyage par « paquets » de 1500 bytes. Le trafic de League, en revanche, consiste en un flot rapide de mises à jour, mais chaque message est de taille réduite (environ 55 bytes). Concernant le trafic qui passe par notre réseau, nous ressemblons plutôt à une banque d'investissement qui effectue du trading à haute fréquence plutôt qu'à un site comme Facebook ou Google qui se soucie principalement de la bande passante elle-même.
 

 
La structure des routeurs est pensée en fonction du nombre de headers qu'ils peuvent lire. Dans le cas du trafic de League, nous demandons à un routeur habitué à gérer un paquet de 1500 bytes en un temps donné de gérer 27 fois plus de données dans la même fenêtre de temps. Plus nous avons de routeurs impliqués dans le parcours entre le centre de données et les joueurs, plus nous sommes exposés à une surcharge des routeurs, ce qui entraîne une perte de paquets et beaucoup de claviers réduits en miettes sous l'effet de la frustration.
 
Comment ça marche ?
 
Internet n'est en fait qu'un groupe d'ordinateurs qui communiquent entre eux : vous vous connectez à un appareil qui vous emmène sur un chemin spécifique. En tant qu'éditeur de jeu vidéo, notre problème avec l'état actuel d'internet, c'est que le réseau utilise tous ces chemins et que cela génère un niveau de qualité fluctuant pour les joueurs. Pour résoudre ce problème, nous étudions les options et nous sélectionnons ce qui nous semble être le meilleur chemin, puis nous louons une voie spécifique sur ce chemin d'accès et nous la configurons pour que tout le trafic de League of Legends passe par là.
 

 
Pour cela, nous installons un routeur au bord d'un PoP donné (point de présence) et nous effectuons un appairage directement avec un USP régional. Nous créons un genre de voie secondaire et lorsque le trafic du jeu est censé passer par le réseau internet classique, il est automatiquement redirigé vers notre routeur. Et nous avons déjà configuré ce chemin spécifique pour que les données des joueurs soient transmises au centre de données le plus vite possible. À l'image d'un jungler des LCS qui passe d'un camp de monstres à un autre, nous voulons que notre trafic de jeu emprunte la route la plus courte à chaque fois.
 
Hélas, même la technologie la mieux conçue peut avoir des ratés de temps à autre. Nous nous sommes donc assurés que si un PoP ne fonctionne plus, le système repasse automatiquement par le réseau internet standard pour que votre connexion aux serveurs du jeu ne soit pas interrompue. Et pour ajouter une mesure de sécurité supplémentaire, notre équipe mondiale apportera son soutien 24h sur 24 au système Riot Direct, grâce à un logiciel qui nous alerte en temps réel lorsque la qualité de l'expérience des joueurs est affectée par un problème quelconque au niveau du réseau. La stabilité est un critère très important pour nous, et vous méritez de pouvoir continuer à faire des ravages avec votre Tristana en fin de match, même si un PoP quelque part entre le serveur et vous décide de se déconnecter à la 50e minute de jeu.
 
Voie rapide
 
« Au départ, nous pensions qu'il s'agirait d'un projet s'étalant sur 2 ou 3 ans en fonction de la lenteur des entreprises de télécommunication, explique Maynard-Koran. Par exemple, il faut leur envoyer une demande 90 jours avant de recevoir un service, et il faut être client chez eux depuis longtemps. Fort heureusement, notre équipe possède de nombreux contacts au sein de l'industrie, ce qui nous permet d'accélérer un peu les choses. En plus de ça, nous pensions que la construction d'une infrastructure prendrait également plus de temps, mais nous avons aussi été en mesure d'accélérer ce processus. Nous avons terminé le travail sur le réseau NA en moins d'un an, et quand on songe au réseau EU, nous avons dû commencer le travail en novembre de l'an dernier, et nous espérons lancer la phase initiale vers la fin du mois d'août. »
 
Quand Maynard-Koran dit que le travail a été « terminé », cela signifie que nous avons construit une infrastructure et effectué l'appairage avec des fournisseurs d'accès qui couvrent plus de 50% de nos joueurs. Nous allons continuer à inclure davantage de fournisseurs d'accès et à équilibrer les routes pour nous assurer que les données entrent et sortent au niveau des bons points d'entrée, mais nous pensons pouvoir atteindre une couverture de 80% d'ici la fin de l'année.
 
Développer le réseau
 
Même si la méthodologie du Riot Direct reste identique, qu'il s'agisse de construire une infrastructure en Amérique du Nord ou en Europe, dans le cas du Vieux Continent, nous avons dû prendre plusieurs points en considération au sujet de la couverture. L'Europe est ultra connectée : même les plus petits pays disposent de trois ou quatre fournisseurs d'accès différents. Dans certaines villes, nous en avons trouvé plus de 15 différents.
 
En Amérique du Nord, ils sont autour de 75, mais le marché est dominé à 25% par Comcast et à 40% par AT&T et Verizon. Puis viennent Time Warner Cable et Charter, ce qui signifie que si Riot Direct passe par 10 entreprises en Amérique, la couverture du réseau pourrait atteindre 80% des joueurs. Mais en Europe, pour atteindre les 80%, il faudrait probablement passer par une quarantaine d'entreprises.
 
Cela étant, la tâche d'étendre la couverture européenne s'avère un peu plus facile. « Certaines politiques d'échange public [en Europe] accélèrent le processus de connexion, explique Maynard-Koran, tandis qu'en Amérique du Nord, nous en sommes arrivés au stade où nous devons surmonter des obstacles légaux pour nous connecter avec un fournisseur d'accès en particulier. Nous rencontrons ce problème en ce moment même avec une entreprise canadienne qui refuse de se connecter avec nous. » En d'autres termes, si nous devons nous battre pour nous assurer que les joueurs puissent profiter d'une meilleure connexion à League, nous sommes heureux de le faire.
 
Les prochaines étapes
 
Maintenant que le système Riot Direct fonctionne, nous avons déjà prévu plusieurs plans d'action pour l'améliorer. Nous pensons déjà à ajouter de nouveaux PoP aux Portugal (Lisbonne ou Porto), en Italie (Rome) en Grèce (Athènes) et peut-être également en Pologne. Nous allons continuer à développer nos relations avec les fournisseurs d'accès pour que les données de League qui passent par leur réseau puissent transiter directement par notre super-méga-infrastructure.
 
Nous allons aussi développer de nouveaux logiciels pour gérer la manipulation des routes de façon dynamique, en guidant les données vers nos points d'entrée pour qu'elles empruntent le chemin le plus symétrique et le moins lent, à travers le moins de routeurs possibles sur notre réseau. Mais cela nous donne également les moyens de manipuler le trafic : si nous subissons une attaque DDoS ou si nous constations qu'un chemin particulier n'est pas optimal, nous pouvons rediriger les données vers un nouveau point d'entrée ou les faire transiter par une autre route sans même que les joueurs ne doivent se reconnecter.
 
« Les fournisseurs d'accès ont tendance à se laisser porter parce qu'ils disposent d'une myriade de routes à gérer, précise Maynard-Koran. Ils se contentent de conserver les métriques par défaut et continuent d'utiliser les protocoles de routage les plus anciens pour leur trafic. S'occuper de tout ça manuellement est difficile pour eux. Nous espérons pouvoir le faire grâce à un programme et nous pensons que celui-ci pourra progressivement gérer la façon dont fonctionne le réseau à lui tout seul. Et s'occuper de la manipulation des routes n'est que la première étape. Pour la première fois, nous serons en mesure de manipuler les routes sans nous appuyer sur les routeurs, ce qui constitue en fait un énorme pas en avant pour l'industrie. Nous travaillons en vue d'atteindre cet objectif. Cela veut dire que des programmeurs de logiciels pourront enfin diriger internet ! »
 
Conclusion
 
Nous avons bon espoir qu'avec le lancement du système Riot Direct, vous pourrez profiter d'une expérience de jeu stable et sans latence. N'hésitez pas à nous envoyer vos retours pour nous faire savoir si vous avez détecté la moindre amélioration dans ce sens. Notre équipe va continuer à surveiller la situation de près et à optimiser le réseau pour que nous puissions atteindre notre objectif : permettre à 100% des joueurs européens de profiter du jeu avec un ping inférieur à 65ms. Et n'oubliez pas, si vous rencontrez des problèmes de connexion, vous pouvez télécharger notre outil de diagnostic réseau et nous envoyer vos résultats pour nous aider à identifier les problèmes et les points sur lesquels concentrer nos efforts. Et maintenant, revenons aux choses sérieuses... Insta-lock sur Wukong ? Non ? Personne ?
 
Leave Comments