Open/R, le routage réseau à la sauce Facebook
Dans le cadre de la conférence réservée aux ingénieurs réseau Networking@Scale, Facebook a présenté Open/R. Il s'agit d'une plate-forme sur mesure extensible de distribution d'applications réseau. Une solution qui ressemble furieusement à une offre SDN (Software Defined Networks).
Un outil pour Terragraph
A l'origine, Open/R a été développé comme un système de routage pour Terragraph, le projet de réseau sans fil très haut débit de la firme de Menlo Park qui s'appuie sur des technologies réseau de couche 2 dans une typologie complexe pour distribuer les ressources là où elles sont nécessaires. Les ingénieurs de Facebook voulaient en effet résoudre rapidement et facilement les défis relevés par Terragraph et aucune des solutions Open Source du marché n'y répondait. Ils ont donc développé leur propre système en s'appuyant le plus possible sur les briques libres existantes (les protocoles de routage OSPF et ISIS et Thrift pour l'encodage des messages). Puis, très vite, Facebook a profité de la modularité d'Open/R pour distribuer des applications au-dessus de la couche de routage et exploiter la plate-forme sur certaines parties de son infrastructure réseau.
« Open/R permet de prototyper et de déployer de nouvelles applications de réseau beaucoup plus rapidement qu'avec les processus d'élaboration des normes industrielles », écrit Petr Lapukhov. L'ingénieur réseau évoque la problématique des processus d'interopérabilité ralentis par les multiples solutions des différents éditeurs qui se plient en outre aux besoins propres à leurs clients. « Avec Open / R, nous contrôlons parfaitement le réseau de Facebook et n'avons pas besoin d'assurer l'interopérabilité avec chaque implémentation ou besoin de soutenir toutes les fonctionnalités historiques, commente Petr Lapukhov. Nous pouvons nous concentrer sur les dispositifs dont nous avons besoin le plus et ajouter d'autres fonctionnalités. Cela nous permet d'appliquer le même processus de développement rapide et itératif propre à notre façon de développer notre réseau. » L'ajout d'application comme la mesure du taux d'utilisation d'un lien, le calcul en besoin de bande passante et la répartition de classification MPLS à des fins de routage seraient ainsi simple à mettre en oeuvre.
Un réseau partitionné
Plus en détail, le système permet de développer et déployer du code sur un réseau segmenté en de multiples partitions. Si un problème arrive, il affecte seulement la partition qui l'héberge sans impacter le reste du réseau. Une approche qui s'écarte sensiblement des usages courants. « Contrairement à d'autres approches qui recentrent l'intelligence du réseau dans un contrôleur, nous pensons que les fonctions autonomes jouent un rôle important, explique l'ingénieur de Facebook. Les fonctions autonomes intégrées au réseau sont combinées avec une logique de contrôleur centralisé, comme le calcul optimal des adressages [des paquets], qui constitue la façon dont nous tirons parti d'Open/R dans certaines applications basiques de réseau, en remplaçant le traditionnel IGP (Interior Gateway Protocol, NDLR) par de nouvelles fonctionnalités au dessus des fonctions de base de routage. » Qui plus est, la firme fondée par Mark Zuckerberg a testé la solidité de sa solution sur plusieurs milliers de noeuds du réseau sans constater de défaillance notable.
Une solidité que le réseau social entend bien partager avec le plus grand nombre en versant certaines parties du code à la communauté Open Source et au projet Telecom Infra (TIP). « Être capable de déployer rapidement est au coeur de notre capacité à améliorer la rapidité, l'efficacité et la qualité de la connectivité Internet dans le monde entier », se félicite Facebook. Qui n'en va pas moins poursuivre ses développements sur Open/R.
Lire également
Facebook pousse son switch Wedge à 100 Gbit/s
Le drone Aquila de Facebook : un défi technique et réseau
Avec des résultats solides, Facebook optimiste sur son avenir
crédit photo : Ken Wolter / Shutterstock.com
Sur le même thème
Voir tous les articles Business