Les fournisseurs de systèmes d'exploitation en source libre, de cartes CPU et de serveurs pour infrastructures télécoms travaillent de concert pour faciliter l'intégration de leurs produits et créer des systèmes de classe opérateur, basés sur Linux.
Les équipementiers qui développent les nouvelles générations d'infrastructures de réseaux sans fil, de « softswitches » ou commutateurs logiciels, de contrôleurs, de passerelles Voix sur IP et passerelles SS7 ont besoin d'assurer une disponibilité des services dite de 5 x 9 (99,999 %), voire de 6 x 9 (99,9999 %), correspondant respectivement à une durée d'interruption de 5 minutes et de 32 secondes par an. Cette haute disponibilité des systèmes dits de classe opérateur (« Carrier Grade ») doit aujourd'hui être obtenue au moindre coût. Aux traditionnels systèmes « tolérants aux fautes », totalement redondants, conçus sur mesure et très coûteux, est désormais préféré un matériel standard et partiellement redondant, avec capacité obligatoire d'extraction et remplacement sous tension des éléments défectueux (« hot swap »). L'objectif du PICMG (PCI industrial computers manufacturers group) est justement de définir des standards mécaniques et de connectique pour châssis à haute disponibilité, tels que CompactPCI (PICMG 2.0) et cPSB (Compact packet switching back-plane ou PICMG 2.16), qui répondent aux contraintes des télécoms (Electronique n°118, p. 52). Le système d'exploitation qui tourne dans un châssis à haute disponibilité doit être adapté au « hot swap » de rigueur et, entre autres, pouvoir assurer la reconfiguration dynamique des mémoires et périphériques ainsi que le chargement et déchargement des pilotes. Le noyau doit aussi maintenir à jour une base de données d'informations sur l'état des périphériques, et la rendre exploitable pour diriger les stratégies des outils de gestion de ressources de plus haut niveau. Plusieurs Unix et noyaux temps réel compatibles Posix ont ainsi été dotés de ces fonctions de support du « hot swap », et enrichis de suites logicielles assurant des services de haute disponibilité : détection d'événements (un événement étant l'envoi d'un signal par un matériel défaillant ou au contraire remis sous tension), choix du scénario de reprise en main et basculement des ressources. Citons par exemple la « Netra high availability suite 2.0 » associée aux serveurs Netra de Sun sous Solaris, qui ont été présentés à 3GSM World Congress, en février dernier à Cannes.
Ces suites assurant des fonctions de haute disponibilité (HA) font partie du logiciel intermédiaire (middleware) installé entre l'OS et l'application. Aujourd'hui, de telles suites arrivent aussi dans le monde Linux sous diverses formes, tantôt uniquement logicielles et génériques, tantôt associées à une distribution, voire à une plate-forme matérielle. Aussi, pour éviter la dispersion et créer un concept de « Linux standard pour opérateur », plusieurs organismes se sont-ils mobilisés : citons le groupe de travail Carrier Grade de l'OSDL qui se concentre sur les fonctions du noyau et des pilotes ; le forum « Service availability » (SAF), qui développe des API indépendantes de l'OS pour le middle-ware ; et le FSG (Free standards group) dont le groupe LSB (Linux standard base) gère les tests de compatibilité avec le standard Linux (voir encadré page suivante).
Il est en effet impératif de préserver la pérennité des applications télécoms face aux évolutions fréquentes des versions d'OS et de matériel. D'où cette volonté de définir une architecture commune, spécifiant entre autres l'organisation en couches du middleware et normalisant les API (Application programming interface, en fait un jeu d'appels de fonctions vues par les applications). Cette architecture de l'OSDL se met progressivement en place et les systèmes à haute disponibilité qui arrivent en intègrent déjà les premiers éléments. Au plan matériel se dégagent également des constantes comme l'utilisation de réseaux Ethernet redondants, soit dans les châssis pour serveurs lames du type PICMG 2.16, soit dans les racks de serveurs 1U et 2U.
Notons que, parmi les spécifications du PICMG, le réseau commuté cPSB semble prendre le pas sur le bus CompactPCI de base. Ce bus a pour défaut de constituer en lui-même un maillon faible dans une architecture HA : il faut le doubler, ce qui est cher.
Annoncé le mois dernier, MontaVista Linux Carrier Grade Edition (CGE) 2.1 est un Linux dédié aux opérateurs télécoms. Il est conçu de manière à être compatible avec les spécifications HA de l'OSDL dès qu'elles seront disponibles probablement avant la fin de l'année (voir encadré). CGE 2.1 se base sur la distribution MontaVista Linux 2.1, dotée de l'infrastructure HA Frame-work introduite il y a quelques mois, et enrichie de fonctions supplémentaires. MontaVista Linux est un Linux configurable pour les systèmes embarqués, dont le noyau a été rendu préemptif par priorités tout en conservant l'API Linux standard (Electronique n°123, p. 59). La couche HA Framework fournit des outils de connexion/déconnexion, ainsi que des pilotes hot swap PICMG 2.12. Elle fournit aussi une structure d'accueil ou jeu d'API, qui s'interface entre l'OS et le middleware pour la distribution d'événements et la surveillance de ressources.
Les fonctions « classe opérateur » supplémentaires ont été définies dans le cadre d'un projet open source (« Telecom Linux »), lancé par Intel et MontaVista et qui a fusionné avec l'OSDL. Ces fonctions assurent un « durcissement » du système d'exploitation en augmentant sa tolérance aux pannes, en particulier en évitant un recours exagéré à la fonction « panic() » qui relance le système en cas d'erreurs réputées irrécupérables. Elles ajoutent des pilotes de disques RAID, un pilote durci de bus de gestion système IPMI, des pilotes durcis de contrôleurs réseau, et développent plus avant le support de la gestion d'événements et de surveillance. En plus de l'outil Linux Trace Toolkit, qui visualise l'occupation du processeur et de la mémoire durant l'exécution des applications, le développeur dispose de sondes dynamiques et d'outils d'analyse de panne du noyau.
Disponible dans un premier temps pour les architectures x86, MontaVista Linux Carrier Grade Edition 2.1 tournera entre autres sur des cartes Pentium III de format CompactPCI/cPSB telles que l'EPC-3311 de Radisys ou la CPCI-736 de Force Computers, ainsi que sur les serveurs 1 U et 2 U de classe opérateur d'Intel ou d'IBM. Il sera interfacé bien entendu avec le middleware Self-Reliant de GoAhead.
Le Free Standards Group (FSG) veut promouvoir l'utilisation des technologies « open source » dans les entreprises. Son fer de lance est la définition d'un jeu d'interfaces standard autorisant la portabilité des applications entre plates-formes. Ce standard, qui représente la plate-forme Linux la plus généraliste, est géré par le groupe de travail LSB (Linux standard base). Parmi les membres du FSG, citons Caldera, Compaq, Debian, Dell, HP, Hitachi, IBM, Oracle, Red Hat, Sun et SuSE.
L'Open Source Development Lab (OSDL) veut promouvoir l'utilisation de Linux dans les télécoms et les réseaux. Son laboratoire fournit les matériels nécessaires pour le développement et le test des extensions qui seront apportées à Linux pour ce type d'applications. Le groupe de travail Carrier Grade comprend Alcatel, Cisco, HP, IBM, Intel, MontaVista, Nokia, Red Hat, SuSE, Toshiba et bientôt Motorola. Son objectif est de spécifier l'architecture appropriée d'une plate-forme Linux haute disponibilité de classe opérateur (figure ci-contre). La version 1.0 est attendue pour le mois d'août 2002.
Le Forum Software Availability (SAF) veut faciliter l'intégration verticale des applications, du middleware et des OS. Il spécifie deux API, entre le middleware et le système d'exploitation, et entre le middleware et l'application, qui arriveront courant 2002. Il regroupe Compaq, Force Computers, Fujitsu Siemens, GoA-head, HP, IBM, Intel, Monta-Vista, Motorola, Nokia, RadiSys et Wind River et vient d'être rejoint par Sun.
Fort heureusement, le groupe de travail Carrier Grade de l'OSDL utilise les API du SAF et travaille en étroite collaboration avec le groupe LSB du FSG, afin que les Linux pour opérateurs restent dans la droite ligne du standard. Par ailleurs, il ne faut pas confondre ses travaux avec ceux du projet Open Cluster Framework (OCF) qui s'intéresse aux logiciels de mise en grappe sous Linux (une grappe ou « cluster » est un groupe de CPU qui partagent un ensemble de disques et sont perçus comme une seule machine, grâce au logiciel qui équilibre les charges). Les travaux de l'OCF, qui développe une API pour les fonctions de mise en grappe et souhaite en fait devenir un groupe de travail du FSG, ne concernent pas le monde « Carrier Grade » : le niveau de disponibilité d'un cluster est en général de 3 x 9 ou 4 x 9, ce qui convient souvent aux applications comme les serveurs pour fournisseurs de services Internet. Les participants à l'OCF sont IBM, Compaq, SGI, SuSE, Red Hat, Conectiva, BigStorage, MSC Software, Bald Guy Software, Oscar et Linux-HA (un projet open source de fonctions de « clustering »).