Le directeur des opérations techniques de Facebook, Najam Ahmad, fonde de grands espoirs sur les solutions SDN (Software Defined Network), bien qu'il ne soit guère enclin à s'appuyer sur les équipementiers traditionnels pour exploiter un SDN sur son infrastructure. « Le SDN est la façon dont les choses vont être. Ce n'est pas une lubie. Ce sera la façon dont seront construits les réseaux à l'avenir », a déclaré Najam Ahmad lors d'une table ronde sur le SDN au dernier Interop New York. Avant de rejoindre Facebook, M. Ahmad a travaillé chez Microsoft comme directeur des services réseau.
Le SDN a suscité beaucoup de discussions lors de cet Interop. Beaucoup se demandaient si ce n'est que l'expression à la mode cette année, alors que d'autres estiment que c'est l'avenir des réseaux. Pour M. Ahmad, le SDN vient résoudre un problème important - rendre le réseau de Facebook aussi souple que le reste de son infrastructure IT. « Nous voulons déployer, gérer, contrôler et corriger le réseau en utilisant le logiciel », a déclaré le directeur technique. Les commutateurs, routeurs et autres équipements réseau utilisés aujourd'hui empêchent Facebook d'utiliser plus efficacement son réseau et Internet, a-t-il dit. L'entreprise doit absolument réduire, autant que possible, la latence de son réseau dans le seul but de rester réactif à ses milliards d'utilisateurs répartis dans le monde entier.
Allez plus loin que le NOC
Certes, Facebook ne gère pas son réseau avec un centre d'exploitation réseau (NOC) classique type centre des opérations, dans lesquelles les administrateurs réseau surveillent les écrans des alertes, puis règlent les problèmes à mesure qu'ils surviennent. Au lieu de cela, la société a intensivement automatisé la gestion du réseau, avec l'écriture de scripts qui peuvent anticiper et atténuer les problèmes avant qu'ils ne surviennent, afin d'optimiser les performances du réseau. Facebook a toutefois rapidement atteint les limites imposées par les équipements. « Avec un réseau traditionnel, vous achetez une boîte. Vous obtenez une interface en lignes de commande, et des protocoles, mais c'est tout ce que vous obtenez », a déclaré M. Ahmad.
Ce dernier s'est senti particulièrement frustré, par exemple, lorsque des problèmes dans certains équipements réseau ne pouvaient être résolus que par le vendeur lui-même qui devait composer directement dans l'appareil en donnant des ordres secrets à un ASIC (circuit intégré à application spécifique). Des lignes de commande inaccessibles pour les clients à travers l'interface de commandes en ligne standard (CLI). « Nous ne pouvons pas gérer notre environnement comme ça », a déclaré M. Ahmad. « Nous voulons écrire directement sur le matériel directement ».
Influencer les équipementiers
Aujourd'hui, la seule façon d'obtenir des changements dans ces produits est de convaincre le vendeur de faire lesdits changements ou de faire appel à un organisme de normalisation, a souligné le directeur technique. Entreprise d'assez grande taille, Facebook a une certaine influence auprès des fabricants de matériel en termes de fonctionnalités à ajouter, ou de changements à réaliser. Mais ce processus est trop lent et trop lourd au goût de la société. « Vous travaillez avec eux pendant six mois, obtenez une mise à jour, allez la tester et un an plus tard vous avez quelque chose » a déclaré M. Ahmad. « Cela entrave notre capacité à réellement construire des projets et gérer les choses à notre échelle ».
Le SDN permet à l'équipement de réseau d'être « désagrégé », a déclaré M. Ahmad, de la même façon que l'ordinateur est passé des mainframes monolithiques aux ordinateurs personnels, qui sont construits à partir de composants standardisés. Aujourd'hui, un ordinateur est un ensemble de composants distincts - le matériel, le système d'exploitation et les applications. Les développeurs peuvent ensuite écrire des programmes, ou construire des composants pour répondre à un certain besoin. « Nous voulons la même structure sur le réseau », a déclaré responsable technique. « Nous voulons faire les choses dans le logiciel. Lorsque vous faites les choses dans un modèle intégré verticalement fermé, vous ne pouvez pas faire de développement de logiciels. Vous n'avez accès qu'à la CLI ».
Mieux exploiter toutes les ressources du matériel
Pour Facebook, la valeur du SDN est que cela rend plus disponible l'architecture sous-jacente de l'équipementier, afin qu'elle donne aux programmeurs plus de contrôle sur le matériel. C'est l'une des raisons pour lesquelles Facebook a commencé le [ projet Open Compute ], qui vise à créer un ensemble de spécifications pour le matériel du centre de calcul qui seront ouverts aux programmeurs. « Nous savons quels sont les problèmes que nous avons aujourd'hui, nous ne savons pas vers quoi nous allons demain, quand nous travaillons sur quelque chose, nous voulons le régler très rapidement », a déclaré M. Ahmad.
Par exemple, Facebook aimerait mieux utiliser le BGP (Border Gateway Protocol), le protocole utilisé pour prendre des décisions de routage fondamentales sur Internet. Le BGP estime quel est le meilleur chemin que les paquets doivent prendre pour se rendre à leur destination, mais M. Ahmad souhaite améliorer le processus du BGP en augmentant le contrôle sur les routeurs. « Le BGP ne fait pas un très bon travail pour la sélection de chemin », a déclaré M. Ahmad, notant qu'une fois qu'un chemin est sélectionné, il n'existe aucun mécanisme de rétroaction permettant de passer sur une autre voie pour éviter une congestion sur le réseau.
[[page]]
Malgré l'optimisme de la société sur les solutions SDN, Facebook n'a - jusqu'ici - acheté que peu de logiciels SDN commerciaux. Une partie des raisons est que Facebook rechigne à utiliser la virtualisation, sur laquelle repose un grand nombre d'offres SDN aujourd'hui. VMware, par exemple, a tissé OpenFlow dans ses propres offres de virtualisation, après avoir acheté l'année dernière la start-up Nicira, à l'origine du protocole OpenFlow. « Le SDN est plus une philosophie qu'un produit », a déclaré M. Ahmad. « OpenFlow est un produit permettant d'arriver au SDN, mais il y a d'autres façons de le faire ».
Néanmoins, la société est particulièrement obstinée au sujet du SDN, sa philosophie. Certains logiciels SDN pourraient même être publié en Open Source par Facebook lui-même, de la même façon qu'elle a publié ses propres améliorations de performance pour le langage PHP. La société espère que, comme pour d'autres projets Open Source Linux, les programmeurs puissent directement ajouter plus de fonctionnalités aux équipements réseau que n'importe quel fournisseur isolé.
« Le réseau a besoin de sortir de l'âge des ténèbres, ou l'ère fermée, et pour parvenir au grand jour. Finie l'époque de la substance étroitement intégrée. Nous devons tirer parti de la grande base de développeurs disponibles pour bouger beaucoup plus vite le réseau qu'aujourd'hui » a conclu M. Ahmad.