aucun commentaire

Vers une plateforme ouverte et programmable: GlobalOS

 

 

Face à l’évolution des usages et à l’explosion des communications, l’opérateur de télécommunications investit massivement dans le déploiement de nouvelles infrastructures réseau comme la fibre, ou le réseau cellulaire de 4e génération. Par ailleurs, le volume de données à traiter et à stocker par l’opérateur croît, ce qui le conduit à investir également dans des centres de données, c.à.d, des infrastructures de stockage et de calcul qu’il pourrait judicieusement placer sur le territoire pour le bénéfice des utilisateurs (NGPoP).

 

Evolution de l'infrastructure de l'opérateur
Evolution de l’infrastructure de l’opérateur

 

L’opérateur se voit donc contraint de gérer un ensemble d’infrastructures très hétérogènes et réparties, que ce soit les box, les points de présence sur son réseau, les plates-formes de service ou les centres de données centralisés, mais également les terminaux des clients. Ceci se traduit naturellement par des coûts d’exploitation non négligeables.

La maîtrise par les opérateurs et les constructeurs télécoms des technologies du Cloud et de l’Internet amènent également à virtualiser (NFV, Network Function Virtualisation) un certain nombre de fonctions du réseau (Fire-Wall, NAT, CDN …). Enfin, il est possible de séparer le plan de commande du plan de transport (SDN, Software Defined Network).

En parallèle, avec l’émergence des offres Cloud, les utilisateurs s’habituent de plus en plus à consommer des ressources informatiques et les services associés à la demande. D’ailleurs, les acteurs OTT et les fournisseurs de plateforme Cloud comme Amazon, Google, Facebook sont déjà bien présents sur ce marché.

Dans un contexte économique tendu, l’opérateur doit d’une part optimiser ses investissements et réduire ses coûts d’exploitation ; d’autre part, il doit créer plus de valeur sur ses infrastructures, en accélérant l’introduction de nouvelles offres et en rendant son réseau plus agile pour proposer des offres sur mesure.

 

Créer plus de valeur, durablement, tout en optimisant les coûts
Créer plus de valeur, durablement, tout en optimisant les coûts

 

Concept du GlobalOS

Pour répondre à ces enjeux, étant données la complexité et la diversité des infrastructures, réseau, calcul et stockage, et l’apparition de logiciels répartis, il faut revoir la façon de gérer et de commander l’ensemble de ces ressources mobilisées par l’opérateur. Il faut aussi revoir la façon d’offrir ces ressources aux clients.

C’est là que nous introduisons le concept de GlobalOS, pour Global Operating System : Par analogie avec un système d’exploitation (OS) traditionnel, GlobalOS est la plateforme ou l’infrastructure logicielle d’exploitation de toutes les ressources réseau et informatiques mobilisées par l’opérateur. Elle offre des fonctions de gestion de l’infrastructure, matérielle ou logicielle, des outils de programmation et de développement de composants de services répartis, destinés aux opérateurs de réseau, aux opérateurs de cloud ou à tout autre tiers requérant de telles ressources.

Selon cette définition, nous pouvons distinguer trois rôles principaux dans GlobalOS :

— Ordonnancement : Cela consiste à identifier les composants qui constituent un service à déployer, localiser les plateformes où ces composants doivent être hébergés, coordonner les différentes étapes sur tout le cycle de vie du service et des composants associés, que ce soit lors du déploiement du service, de son activation jusqu’à son retrait.

— Gestion des ressources : Cela consiste à préparer les ressources demandées par l’ordonnanceur, par exemple des liens d’interconnexion entre sites, et à les partager entre plusieurs utilisateurs. Un gestionnaire de ressources assure l’isolation entre les différents utilisateurs ; il masque à l’utilisateur comment les ressources sont organisées et où elles sont localisées. On parle d’abstraction de ressources ou de ressources virtuelles.

— Facilitation de la programmation et du développement de composants de services : Il s’agit de mettre à disposition des outils de programmation sur l’ensemble de l’infrastructure de l’opérateur ; avec ces outils, par exemple des APIs, des SDKs, les utilisateurs peuvent développer et programmer eux-mêmes des services spécifiques ou même garder la main sur une des briques d’un service fourni par l’opérateur. L’ouverture de l’infrastructure par ces APIs rend l’infrastructure évolutive et durable ; en la rendant accessible aux tiers, l’opérateur peut trouver une nouvelle source de revenus.

On retrouve aussi certains de ces rôles sous le terme d’orchestration dans les systèmes d’opérateurs actuels, à différents niveaux, que ce soit au niveau des services, au niveau des plateformes, ou au niveau des infrastructures matérielles. L’objectif pour GlobalOS est d’unifier ces fonctions sur l’ensemble des ressources, et de rendre le réseau plus facilement programmable.

 

GlobalOS, un système d'exploitation large échelle et massivement distribué
GlobalOS, un système d’exploitation large échelle et massivement distribué

 

Propriétés du GlobalOS

Afin de construire le GlobalOS et définir ses exigences fonctionnelles, il faut d’abord identifier les propriétés qui caractérisent le système global, comprenant la plateforme logicielle GlobalOS et les ressources elles-mêmes, ainsi que ses performances.

Etant donné qu’il est difficile de définir chaque propriété de façon unique et du fait du recouvrement possible entre certaines propriétés, nous proposons ici de considérer les propriétés qui nous paraissent aujourd’hui les plus importantes pour aborder la conception du système Global OS. Nous distinguons deux types de propriétés :

  1. les propriétés qui sont déjà bien intégrées dans les réseaux d’opérateurs, mais que GlobalOS vise à renforcer : le passage à l’échelle, la disponibilité et la sécurité
  2. les propriétés qui sont inspirées du domaine IT et plus innovantes dans le contexte de la gestion des réseaux :

— la flexibilité fonctionnelle, c’est-à-dire pouvoir adapter le système à de nouvelles conditions opératoires, pouvoir corriger des erreurs de fonctionnement, pouvoir faire évoluer ses fonctions, à différentes échelles, et à chaud si besoin ;

— la programmabilité, c’est-à-dire permettre l’accès à la structure interne du système à un niveau plus ou moins fin par un tiers pour qu’il puisse l’exploiter de manière non-prévue par le concepteur du système. Toutefois, l’impact de cette ouverture doit être maitrisé. Ici tout repose sur l’utilisation, l’intégration et la coordination de l’ensemble des APIs exploitables;

— le « multi-tenancy », c’est-à-dire avoir la capacité à supporter de multiples utilisateurs simultanément et assurer l’isolation et la garantie des ressources entre les utilisateurs ;

— la contrôlabilité, c’est-à-dire permettre d’automatiser le diagnostic des fautes et de rendre le système actif par son adaptation à tout type de remontées d’événement. Il s’agit donc d’être capable, de façon unifiée, de surveiller, de contrôler, de configurer/adapter toutes ressources et fonctions systèmes, à toute échelle, de la phase du déploiement de service, au cours de son exécution, jusqu’à son retrait.

La prise en compte de ces propriétés dès la conception du Global OS vise à générer une réduction des coûts (maintenance, investissement), de la création de valeur, et à permettre l’optimisation de l’utilisation des ressources sur l’infrastructure de l’opérateur.

 

Initiatives autour du GlobalOS

La recherche d’Orange vise à développer le GlobalOS en logiciel libre afin d’obtenir une plateforme la plus étendue possible, et de stimuler et favoriser l’innovation sur cette plateforme. Dans ce cadre, un laboratoire dédié a été monté entre Orange et l’Inria, nommé <I/O>Lab, qui s’appuie sur les contributions des communautés Open Source, et qui a pour défi d’exploiter et de gérer toutes les ressources réseau et IT de l’opérateur, et de développer un véritable environnement de programmation pour les utilisateurs, afin d’apporter une meilleure qualité d’expérience.

Laissez-nous votre commentaire