Bits of networks

Bits of networks

Networking, system, research

11 Feb 18

Etat des points d'échange Internet en France

Qu'est-ce qu'un point d'échange Internet ?

Un point d'échange Internet, ou IXP (Internet eXchange Point), c'est un endroit où plusieurs opérateurs réseau s'interconnectent pour échanger du trafic.

De façon simplifiée, il faut voir ça comme un gros switch Ethernet sur lequel chaque opérateur réseau va se brancher, à l'aide d'un câble RJ45 ou une fibre optique. Oui oui, on parle bien du même genre de switch Ethernet que vous avez sûrement chez vous pour brancher vos ordinateurs, juste un peu plus rapide et fiable (et donc plus cher).

Dans la réalité, la plupart des IXP ont une architecture plus complexe, avec plusieurs switches dans différentes baies d'un datacenter, et des points de présence ("PoP" pour "Point of Presence") dans plusieurs datacenters, reliés entre eux avec des fibres optiques. Mais le principe reste le même.

Analyse des points d'échange Internet

Récemment, le centre de recherche CAIDA a publié un jeu de données sur les IXP. Du coup je me suis dit que j'allais regarder ce qu'il y a dedans !

C'est intéressant d'avoir une vision globale du paysage des IXPs, parce qu'ils dessinent une grande partie de l'architecture physique d'Internet (qui est, je le rappelle, justement une interconnexion de réseaux).

Regardons d'abord quelles informations sont disponibles :

$ tail -n +2 ixs_201712.jsonl | jq 'select(.name == "France-IX")'

ce qui donne :

{
  "name": "France-IX",
  "city": "Paris",
  "country": "FR",
  "sources": [
    "pdb",
    "wiki",
    "pch",
    "looking"
  ],
  "alternatenames": [
    "Mix Internet Exchange and Transit",
    "FNIX6",
    "France Internet Exchange "
  ],
  "geo_id": 2988507,
  "region": "Paris",
  "pch_id": 74,
  "url": [
    "http://www.mixt.net/",
    "http://www.fnix6.net/"
  ],
  "pdb_id": 68,
  "pdb_org_id": 147,
  "alternativenames": [
    "French National Internet Exchange IPv6"
  ],
  "ix_id": 377,
  "org_id": 23
}

On peut déjà remarquer plusieurs choses :

  1. les données viennent de différentes sources, comme indiqué ici : PeeringDB, la page Wikipédia sur les points d'échanges, PCH, et bgplookingglass.com.

  2. c'est un peu le bazar... En recoupant les différentes sources, CAIDA a associé des points d'échange qui n'ont rien à voir les uns avec les autres (FranceIX, MIXT, FNIX6) ! Là encore, la méthode utilisée est décrite sur la page du jeu de données.

Ensuite, on voit qu'on peut facilement filtrer par pays :

$ tail -n +2 ixs_201712.jsonl | jq 'select(.country == "FR") | .name' | wc -l
42

Il semble donc y avoir 42 IXPs en France (modulo les doublons et erreurs), ça ne s'invente pas :)

Les points d'échange en France

Après nettoyage manuel des doublons et des vieux IXPs qui ont disparus, il reste environ 21 points d'échange en France, ce qui reste un nombre conséquent !

Contrairement à ce qu'on pourrait penser, il n'y a que 4 points d'échanges actifs à Paris : FranceIX, FR-IX, Equinix et SFINX (ainsi que Hopus, qui n'est pas vraiment un IXP). Tous les autres (environ 13 actifs) sont donc soit en région, soit en outre-mer.

C'est étonnant quand on sait que l'Internet français est ultra-centralisé sur Paris (heureusement, ça s'améliore depuis quelques années, grâce notamment à Rézopole). D'ailleurs, il y a historiquement eu beaucoup de points d'échange à Paris, mais la plupart sont morts ou ont été absorbés.

On peut analyser cette rareté relative des points d'échanges à Paris, ainsi que leur prolifération en région et en outre-mer, de plusieurs manières :

Les IXP permettent de développer le territoire local

Les points d'échange sont importants pour développer le réseau sur le territoire local, puisqu'ils permettent aux opérateurs locaux de s'échanger du trafic directement, sans passer par les gros noeuds d'interconnexion comme Paris, Londres ou Amsterdam. Ça permet de réduire la latence et le coût, et de moins dépendre d'infrastructures qui deviennent critiques de par leur concentration (par exemple TH2 à Paris concentre une grosse partie des interconnexions de l'Internet français...). En somme, décentraliser et relocaliser le réseau, ce qui a des vertus non seulement techniques et économiques, mais également humaines : cela permet aussi de relocaliser les compétences techniques.

C'est d'autant plus important en outre-mer ! Imaginons un abonné à La Réunion qui veut accéder à un serveur hébergé également à La Réunion. Sans point d'échange local, sa requête passera par une fibre sous-marine, parcourera probablement quelques centaines ou milliers de kilomètres, et reviendra par le même chemin...

Du coup, il paraît logique que de plus en plus de régions développent des points d'échanges Internet en local. Par exemple, Rézopole est financé en partie par la Région Rhône-Alpes pour s'occuper de LyonIX et GrenoblIX.

Deux IXP sur un même territoire se font concurrence

Une autre explication, c'est qu'il y a peu de place pour plusieurs points d'échanges sur un même territoire. En effet :

  1. pour un opérateur, se connecter à un point d'échange représente un coût majoritairement fixe, qui ne dépend que très peu de la quantité de trafic échangée (contrairement à du transit).

Il faut payer le cablage dans le datacenter, puis le port sur le switch du point d'échange : ce dernier coût est souvent lié à la capacité du port (1 Gbit/s, 10 Gbit/s, etc) et non à son utilisation réelle.

Du coup, si un opérateur a le choix entre 5 petits points d'échanges qui permettront au total d'échanger 400 Mbit/s, et un seul point d'échange plus gros sur lequel il pourra écouler ses 400 Mbit/s, il aura tendance à privilégier le plus gros.

Bien sûr, il y a d'autres critères de choix (redondance, présence dans plusieurs datacenters, tarifs, qualité du service) qui font que quelques points d'échange peuvent cohabiter sur le même territoire, mais ça limite quand même fortement le potentiel d'avoir des dizaines d'IXP au même endroit.

  1. l'effet de réseau joue : comme pour beaucoup de systèmes en réseau, plus un point d'échange possède de membres, plus il devient intéressant de s'y connecter. En effet, plus de membres présents signifie d'avantage de trafic échangé potentiel, pour le même coût fixe.

Cet effet a naturellement tendance à faire grossir les gros IXP et à faire disparaître les petits, et finit généralement par converger vers un unique IXP sur un territoire donné (sauf à Paris, où la demande est suffisamment forte et les datacenters suffisamment nombreux pour permettre à quelques IXP de co-exister ; on peut également voir des IXP avec des politiques très différentes co-exister, par exemple un IXP académique et un IXP commercial)

Notons qu'il est quand même possible d'aller à contre-courant de cet effet de réseau. Par exemple, le point d'échange SIX à Seattle a un modèle financier particulier : les opérateurs payent uniquement des frais d'accès au service, et ensuite ils peuvent échanger du trafic sur le point d'échange sans frais récurrents ! Le MINAP à Milan a un modèle similaire, à une plus petite échelle, où même les frais d'accès sont offerts (mais pas les frais de raccordement).

Plus généralement, pas mal de points d'échange (notamment les petits) sont sponsorisés par des acteurs du marché télécom local, qui se rendent bien compte des intérêts techniques et politiques de l'interconnexion locale : faible latence, contrôle de l'infrastructure, indépendance. En outre, les membres du point d'échange représentent des clients potentiels, à qui les sponsors du point d'échange pourront ensuite vendre de l'hébergement ou du transit !

La qualité de service d'un IXP doit être irréprochable

Lorsqu'un point d'échange commence à grossir, il se pose forcément la question de la qualité du service.

Tant que le point d'échange connecte le FAI associatif de la ville d'à côté et les 2 petites boîtes du coin, les coupures n'ont pas un impact énorme. Mais lorsque des centaines de membres sont connectés, certains de grosse taille, la moindre panne peut impacter des millions d'utilisateurs finals.

Par ailleurs, pour les opérateurs, cela représente du travail de maintenance et de suivi, qui peut s'avérer plus lourd et coûteux que le bénéfice d'être connecté au point d'échange.

Les opérateurs ont donc naturellement tendance à privilégier les points d'échange bien gérés et fiables. En réponse, les points d'échanges qui veulent subsister et grossir se donnent les moyens d'assurer un service fiable : astreinte 24/24, architecture technique redondée, matériel de pointe, etc.

Soyons clair : gérer un point d'échange de taille raisonnable n'est pas facile, puisque cela demande à la fois une forte expertise technique (matériel spécialisé, architecture distribuée sur plusieurs sites) mais il y a aussi une forte composante relationnelle : la structure opérant le point d'échange doit interagir avec des centaines de structures hétérogènes, qui souhaitent toutes avoir un service fonctionnel sans que ça ne leur demande trop de temps de gestion et d'entretien.

On assiste donc à la fois à un regroupement des compétences, via des structures comme Rézopole pour éviter de tout réinventer de zéro à chaque IXP, mais aussi à un fort partage de connaissance et d'expérience à plus large échelle, avec le RIPE et EuroIX.

Conclusion

L'ecosystème des points d'échange n'est pas un sujet nouveau, mais il reste fascinant parce qu'il entrelace des problématiques techniques et des relations entre structures parfois très différentes. Il illustre bien le modèle distribué et pair-à-pair qui a fait d'Internet un succès. On peut par ailleurs constater que certains points d'échange sont gérés comme un bien commun !

Si le sujet vous intéresse, le RIPE NCC maintient un blog collaboratif très actif sur des sujets liés à Internet en Europe, notamment les IXP et le peering. Toujours sur RIPE labs, Uta Meier-Hahn écrit régulièrement des articles passionnants sur les enjeux des interconnexions entre opérateurs.