Un Internet plat et opaque
Quand l’Internet était jeune, si un ingénieur réseau voulait vérifier l’itinéraire entre son ordinateur et un site distant, il utilisait le programme traceroute, lequel, comme son nom l’indique, lui donnait la liste des nœuds du réseau par où passait la communication et les temps de transmission sur chaque segment. traceroute a été écrit en 1987 au Lawrence Berkeley Laboratory, son auteur principal est Van Jacobson. Même si les administrateurs d’un nœud peuvent décider de masquer les informations que pourrait publier traceroute, ce programme a été pendant des années un des principaux outils de diagnostic et de cartographie du réseau, par exemple pour comparer les performances de plusieurs itinéraires possibles et pour choisir un fournisseur de services réseau ou d’hébergement.
Depuis le début du millénaire l’Internet a évolué et vu proliférer en tous points du réseau des matériels intermédiaires (middleboxes) : coupe-feu, dispositifs de traduction d’adresses, d’inspection de paquets et d’équilibrage de charge. Des opérateurs de plus en plus grands captent une part de plus en plus importante du trafic ; ce phénomène de concentration s’est accéléré depuis l’invention de l’infonuagique (cloud computing) par Amazon en 2007, sans oublier les efforts efficaces de Google et de Microsoft pour capter l’essentiel du courrier électronique mondial. Ces opérateurs géants sont nommés les Hyperscalers, les principaux sont Google, Amazon, Microsoft, Facebook, Akamai et Alibaba. La figure ci-dessous, issue d’un document de l’Arcep [1], donne une idée de leur position en France.
Les middleboxes masquent ou modifient les sondes émises par traceroute, mais surtout les hyperscalers sont si riches et ils captent une part si importante du trafic qu’ils peuvent construire leurs propres infrastructures physiques, à l’intérieur desquelles le trafic est privé, régi par les règles qu’ils fixent à leur gré, et la plupart du temps ces immenses réseaux privés sont opaques à traceroute. On peut parler d’aplatissement (flattening) du réseau, dans la mesure où le nombre d’opérateurs significatifs diminue, et de son opacité, puisque traceroute ne permet plus de voir ce qui s’y passe.
Observer l’Internet sans traceroute
Les instruments d’observation de l’Internet dont on dispose après la perte de traceroute sont spartiates, pour ne pas dire rudimentaires :
– il est toujours possible de mesurer le round-trip time (RTT), le temps que met un signal pour parcourir l’ensemble d’un circuit fermé, en l’occurrence l’aller et retour entre la position de l’observateur et le nœud visé ;
– même dans les infrastructures privées des hyperscalers, les adresses réseau obéissent aux principes généraux d’adressage de l’Internet, ce qui permet la plupart du temps la géolocalisation, même approximative, des nœuds considérés.
Les auteurs de l’article dont nous faisons le compte-rendu ici, A Manifold View of Connectivity in the Private Backbone Networks of Hyperscalers, ont mis au point une méthode pour construire une cartographie du réseau à partir de ces informations limitées. Il ne s’agit pas seulement de connaître l’emplacement d’un nœud considéré, mais en outre d’identifier tous les nœuds intermédiaires sur l’itinéraire envisagé pour l’atteindre, ainsi que la qualité (le débit) du lien entre chaque paire de nœuds.
Cette méthode repose sur une approche mathématique très savante dans les détails de laquelle je n’entrerai pas ici. Disons simplement que le terme anglais manifold du titre de l’article est à prendre ici dans son acception mathématique, dont la traduction française est variété. On parle de variété en géométrie et en topologie. Disons pour aider l’intuition qu’une courbe est une variété de dimension 1, une surface une variété de dimension 2 : le concept de variété est une généralisation des concepts de courbe et de surface.
L’Internet se déploie à la surface de la terre, qui est une sphère : nos auteurs envisagent sa topologie selon la géométrie riemannienne, une géométrie non-euclidienne dont les objets sont sur des surfaces sphériques plutôt que sur des plans. Les distances sur une sphère suivent le grand cercle qui passe par les deux points entre lesquels on veut mesurer la distance, on peut parler de distance géodésique. C’est ainsi qu’un vol en avion de Paris à San-Francisco survolera l’Écosse, l’Islande, le sud du Groenland, le Canada et l’Oregon, ce qui est bien la distance la plus courte, mais ne correspond pas à l’intuition que l’on aurait en regardant une carte dans un atlas, c’est-à-dire une projection sur un plan de l’image de la sphère terrestre.
Pour la cartographie de l’Internet, ce qui intéresse nos auteurs n’est pas tant la distance entre deux nœuds que la latence, le délai de transmission des données. Cette latence admet un minorant : les données ne peuvent pas se propager dans les fibres optiques plus vite que la lumière, et le délai que l’on calculerait ainsi doit être augmenté du temps passé dans les dispositifs de transmission ; bref, ils définissent une latence géodésique, égale à la distance géodésique entre les nœuds considérés divisée par (2/3)×c, c étant la vitesse de la lumière.
Courbure de l’Internet
Comme indiqué ci-dessus, il est toujours possible de mesurer le round-trip time (RTT) entre deux nœuds de l’Internet, dont il sera également possible de connaître les coordonnées géodésiques, et ainsi de calculer le temps de latence des échanges entre ces deux points. Un temps de latence supérieur à la latence géodésique définie ci-dessus sera interprété comme une courbure de l’espace de l’Internet entre ces deux points ; la différence entre la latence observée et la latence géodésique (minimum) sera appelée la latence résiduelle. Interviennent ici des considérations mathématiques très savantes pour lesquelles je renvoie le lecteur à l’article original. Ce que j’en retiendrai, de façon très schématique, c’est qu’à partir de ces mesures de latence il est possible de tracer des représentations en trois dimensions de l’espace de l’Internet, où les régions convexes correspondent à des parties de réseau « bien connectées », et les régions concaves à des zones de lenteur des communications. On voit ainsi apparaître des cartes en trois dimensions où des continents bien connectés sont séparés les uns des autres par des océans de connectivité médiocre.
Pour préciser leur mode de représentation, nos auteurs définissent un seuil de performance pour la latence résiduelle, noté ε : nous aurons ainsi des représentations en trois dimensions pour ε supérieur de 30% à la latence géodésique, et pour ε supérieur de 80% à la latence géodésique. La superposition de ces représentations donne des cartes bathymétriques en 3D très imagées, étiquetées par les noms des principales localités situées sur la carte.
Ces cartes bathymétriques permettent d’inférer la connectivité physique du réseau ; pour un seuil de performance faible on identifie les « continents » bien connectés. Les cartes à seuil de performance élevé exhibent les régions de connectivité médiocre malgré un trafic important, et donc où il serait profitable d’investir dans les infrastructures physiques.
Connectivité des Hyperscalers
Les auteurs de l’article ont tracé les représentation bathymétriques de trois Hyperscalers, Amazon (AWS), Microsoft (Azure) et Google. Pour ce faire ils ont effectué des mesures de RTT pour différents centres de données (datacenters) exploités par ces opérateurs en différents points du globe. Pour AWS ils ont utilisé les sondes (probes) et les ancres (anchors) procurées par le système de mesures RIPE Atlas et présentes dans tous les centres de données de cet opérateur (à l’époque de ce travail Azure et Google n’installaient pas d’ancres RIPE dans leurs centres de données, situation corrigée depuis au moins chez Google). Pour Azure et Google ils ont configuré des machines virtuelles judicieusement réparties dans leurs centres de données. Quand ils ne disposaient pas d’information plus précise ils ont utilisé les coordonnées du centre de la ville où se trouvait le centre de données comme approximation de sa position. Puis ils ont utilisé le programme ping pour mesurer les temps de latence entre tous les nœuds deux à deux, respectivement pour chaque opérateur.
Pour des raisons de pagination seul le cas d’Azure est analysé en détail. Les auteurs observent que les câbles sous-marins induisent des latences résiduelles supérieures à celles observées sur la terre ferme. La représentation graphique met en évidence deux entités géographiques bien connectées, les ensembles Europe-Amérique du Nord et Asie-Pacifique. La qualité de connectivité du premier repose pour une bonne part sur les trois liaisons entre la Virginie, le Royaume-Uni et l’Irlande. La connectivité interne du groupe Asie-Pacifique est moins solide, avec le cas de Mumbai qui n’est relié qu’à Singapour. Si on élève le seuil de performance ε à 90 Sidney parvient à rejoindre ce groupe, et on voit apparaître, bien qu’avec une courbure négative, un lien entre Tokyo et Quincy dans l’État de Washington. Et il faut élever ε à 120 pour atteindre l’Amérique du Sud. De façon générale on voit que l’hémisphère Sud est mal relié à l’Internet.
Si l’on compare, grâce à la figure ci-dessus, la connectivité des trois opérateurs, on voit par exemple que Google a une meilleure infrastructure en Asie-Pacifique que les deux autres. AWS couvre mieux l’Amérique du Nord.
Conclusion
Au moyen de méthodes mathématiques savantes, les auteurs de l’article proposent une méthodologie d’exploration d’infrastructures de réseaux éventuellement inaccessibles directement, au moyen de mesures faciles à effectuer, soumises ensuite à des analyses mathématiques de haut niveau. Les représentations graphiques obtenues, totalement inédites, révèlent des caractéristiques latentes de la connectivité du réseau étudié, très difficiles à détecter par d’autres méthodes. Cet article ouvre sans nul doute la voie à des travaux ultérieurs qui promettent d’être fructueux.