6. Introduction
• La virtualisation a permis d’accompagner la croissance exponentielle
de l’Internet en permettant de se dédouaner de plusieurs contraintes
des serveurs physiques.
• Dès ses débuts dans les années 2000, la virtualisation a permis
d’augmenter la densité d’occupation des serveurs en augmentant le
taux d’exploitation des ressources disponibles. Cela a permis d’éviter
d’avoir des serveurs surdimensionnés consommant beaucoup
d’énergie tout en étant très peu occupés.
6
7. Définition
• La virtualisation consiste à faire fonctionner un ou plusieurs systèmes
d'exploitation ou applications comme un simple logiciel, sur un ou
plusieurs ordinateurs ou serveurs et système d'exploitation, au lieu de
ne pouvoir en installer qu'un seul par machine. Ces ordinateurs
virtuels sont appelés serveur privé virtuel (Virtual Private Server ou
VPS) ou encore environnement virtuel (Virtual Environment ou VE)
• La définition "formelle" de la virtualisation fait référence à
l’abstraction physique des ressources informatiques.
• L’ordinateur hôte "voit" ses machines virtuelles comme des
applications auxquelles il dédie ou distribue ses ressources.
7
8. La virtualisation repose sur trois éléments importants :
• L’abstraction des ressources informatiques ;
• La répartition des ressources par l’intermédiaire de différents outils,
de manière à ce que celles-ci puissent être utilisées par plusieurs
environnements virtuels ;
• La création d’environnements virtuels.
8
9. Les domaines de la virtualisation
Il existe de nombreux types de virtualisation :
• d’application,
• de plate-forme,
• de réseau
• et de stockage.
9
10. La virtualisation d’applications
• La virtualisation d’application est une technologie logicielle qui va
permettre d’améliorer la portabilité et la compatibilité des
applications en les isolant du système d’exploitation sur le quel elles
sont exécutées. Elle consiste à encapsuler l’application et son
contexte d’exécution système dans un environnement cloisonné.
• La virtualisation d’application va nécessiter l’ajout d’une couche
logicielle supplémentaire entre un programme donné et le système
d’exploitation ; son but est d’intercepter toutes les opérations d’accès
ou de modification de fichiers ou de la base de registre afin de les
rediriger de manière totalement transparente vers une localisation
virtuelle.
10
11. Virtualisation d’applications
• Exple : Wine est un logiciel qui permet
d'exécuter certains programmes Windows sous Ubuntu.
http://www.winehq.org/
11
Application Application Application Application
Couche virtuelle
Système d’exploitation
Matériel
12. La virtualisation de stockage
• Dans une machine virtuelle, les données sont stockées sur un disque
dur virtuel. Ce disque dur se présente sous forme de fichier dans le
système de fichiers de l'hôte :
• VHD chez Microsoft
• VDI chez Oracle
• VMDK chez VMWare
• OVF pour le format ouvert
Tous les formats de disques durs virtuels (VDI, VHD, VMDK, OVF) sont
transformables dans d'autres sans difficulté particulière.
12
14. La virtualisation de serveurs
• D’une manière générale, la virtualisation de serveur est un principe
permettant de faire fonctionner simultanément, sur un seul serveur
physique, plusieurs serveurs virtuels. Cette technique permet aux
entreprises d’utiliser des serveurs virtuels en lieu et place de serveurs
physiques. Si cette virtualisation est faite au sein de la même
entreprise, le but est de mieux utiliser la capacité de chaque serveur
par une mise en commun de leur capacité.
14
15. La virtualisation de réseaux classique
• De manière générale, la virtualisation des réseaux consiste à partager
une même infrastructure physique (débit des liens, ressources CPU
des routeurs,...) au profit de plusieurs réseaux virtuels isolés. Un
VLAN (Virtual Local Area Network) est un réseau local regroupant un
ensemble de machines de façon logique et non physique. Puisqu’un
VLAN est une entité logique, sa création et sa configuration sont
réalisées de manière logicielle et non matérielle.
15
16. L’Hyperviseur
• La présentation de la virtualisation se focalise très souvent sur le
concept de machine virtuelle (VM). Toutefois, lorsqu’on s’attache à
mieux appréhender la virtualisation, l ’hyperviseur est une brique
essentielle qui fait fonctionner l’ensemble. Un hyperviseur est une
plate-forme de virtualisation qui permet à plusieurs systèmes
d'exploitation et donc plusieurs VMs de travailler sur une même
machine physique en même temps. Il s’agit donc d’un moniteur de
machine virtuelle (VM).
16
17. Les différents modes de virtualisation
• Il existe à ce jour deux types de virtualisation :
• complète (full virtualization) ;
• paravirtualisation.
17
18. Virtualisation complète
• On emploie aussi le terme d’hyperviseur de type 2. Cette technique permet
d’exécuter tout système d’exploitation sans modifier l’OS de l’hôte. Les
hyperviseurs de type 2 se comportent comme des émulateurs du matériel.
Des logiciels simulent donc les pilotes (drivers) des différents périphériques
(cartes réseau, disque SATA, processeur…).
• Les systèmes invités, les VM, ne dialoguent jamais directement avec le
matériel réel mais avec l’émulateur. On a coutume de dire que les VM ne
savent pas qu’elles sont virtualisées.
• Il est important de préciser que tous les OS ne sont pas vraiment utilisables
avec cette technique. À ce jour, il n’est par exemple pas possible de
virtualiser des systèmes propriétaires type RS6000 d’IBM pour faire tourner
AIX, ou bien les processeurs RISC de HP pour HP-UX. Le seul propriétaire
virtualisable ainsi est Solaris d’Oracle (ex-SUN). Par contre, tous les Linux
ou BSD ainsi que Windows fonctionnent.
18
19. Les produits de virtualisation complète sont les plus connus du grand public :
• VMware Player
• VirtualBox (Oracle)
• VirtualPC (Microsoft)
• QEMU
• La liste est assez longue. L’avantage de ces produits est leur simplicité de
mise en place, ils sont fournis sous forme de packages ou d’exécutables
avec une interface graphique soignée permettant de créer très rapidement
des machines virtuelles. Ils sont aussi pour la plupart gratuits.
19
20. Paravirtualisation
• Ici, le terme employé est hyperviseur de type 1. Dans ce cas, l’invité a
parfaitement conscience qu’il est virtualisé. La différence avec la
virtualisation totale permet alors d’optimiser le système pour la
virtualisation. Ceci implique de pouvoir modifier le noyau, ce qui ne
pose pas véritablement de problème avec les systèmes Linux ou BSD
du fait de l’orientation open source, mais qui n’est pas envisageable
avec les OS type Windows. Ce principe peut aujourd’hui être
contourné via les jeux d’instructions contenus dans les processeurs.
20
21. • Les hyperviseurs de type 1 les plus connus sont :
• KVM
• XEN, XenServer
• VMware ESX
• Hyper-V (Microsoft)
• La paravirtualisation permet des performances accrues. Si la
modification du noyau pour la virtualisation est possible, alors l’accès
au matériel est quasi identique par rapport au système natif. À ce
jour, c’est la solution Xen qui est la plus performante sur le sujet, mais
les acteurs comme VMware et Microsoft ne sont pas en reste.
21
22. Quels sont les intérêts de la virtualisation ?
• Optimisation des ressources (répartition des machines virtuelles sur les machines
physiques en fonction des charges respectives) ;
• Installation, sauvegarde, déploiement et migration faciles des machines
virtuelles ;
• Economie sur le matériel par mutualisation (consommation électrique, entretien
physique, etc.) ;
• Sécurisation et/ou isolation d’un réseau ;
• Diminution des risques liés au dimensionnement des serveurs lors de la définition
de l’architecture d’une application, l’ajout de ressources étant alors transparent ;
• Une reprise automatique lors des incidents. La virtualisation permet d’améliorer
la prévention et la gestion des pannes ainsi que le plan de reprise de l’activité du
système. En effet, les équipements virtuels étant constitués d’un ensemble de
fichiers, il est très simple de les sauvegarder.
22
23. Quels sont les inconvénients de la virtualisation ?
• Plusieurs environnements virtuels s’exécutent sur une unique machine
physique, si cette machine tombe en panne, alors les services fournis par
les environnements virtuels sont interrompus.
• Un recours à des machines puissantes. La virtualisation permet de réaliser
des économies puisque moins de machines physiques sont nécessaires.
Néanmoins, les outils de virtualisations sont des applications très
gourmandes en ressources et nécessitent des machines puissantes. Il est
évidemment possible d’utiliser la virtualisation sur des machines plus
modestes, mais un manque de mémoire ou de capacité CPU peut faire
chuter les performances de manière dramatique.
• Une dégradation des performances. Bien qu’elle soit implémentée sur des
machines puissantes, la virtualisation peut réduire les performances des
applications. Suivant le type de virtualisation envisagé, cette perte de
performances peut ou non être significative.
23
24. Conteneurisation versus Virtualisation
• Une machine virtuelle (VM - Virtual Machine) « imite » intégralement
un serveur. Dans un serveur virtualisé type, chaque VM « invitée »
contient un système d'exploitation complet, avec ses pilotes, fichiers
binaires ou bibliothèques, ainsi que l'application elle-même. Chaque
VM s'exécute alors sur un hyperviseur, qui lui-même fait fonctionner
le matériel du serveur physique. A la base, le concept de
conteneurisation permet aux instances virtuelles de partager un
système d'exploitation hôte unique, avec ses fichiers binaires,
bibliothèques ou pilotes.
24
25. • Cette approche réduit le gaspillage des ressources car chaque
conteneur ne renferme que l'application et les fichiers binaires ou
bibliothèques associés. On utilise donc le même système
d'exploitation (OS) hôte pour plusieurs conteneurs, au lieu d'installer
un OS (et d'en acheter la licence) pour chaque VM invitée. Ce procédé
est souvent appelé virtualisation au niveau du système d'exploitation.
Le rôle de l'hyperviseur est alors assuré par un moteur de
conteneurisation, tel que Docker, qui s'installe par-dessus le système
d'exploitation hôte.
25
26. • Docker est une application qui fournit des capacités de conteneur en
interagissant directement avec le système d'exploitation hôte, et
offrant un moyen de créer des conteneurs qui peuvent être packagés,
répliqués, portés, sauvegardés, etc. Docker est une plate-forme pour
construire et exécuter des applications distribuées. Comme le
conteneur de chaque application est libéré de la charge d'un OS, il est
nettement plus petit, plus facile à migrer ou à télécharger, plus rapide
à sauvegarder ou à restaurer. Enfin, il exige moins de mémoire.
26
29. Network Functions Virtualization
La virtualisation des ressources informatiques a conduit à la virtualisation
des fonctions réseau qui nécessite et bénéficie également de la
programmabilité du réseau.
Les services réseau sont alors « A la demande et en tant que service » ou «
As A Service ». Pour offrir une nouvelle façon de consommer les services
télécom, la virtualisation et le réseau piloté par logiciel sont complétés par
une forte automatisation des processus et des interfaces selfservice. Ces
modes de consommation des services ont pour pré-requis : - Des interfaces
autonomes, portail ou API - Une forte automatisation de la souscription et
de la gestion du cycle de vie des services.
29
30. • Le NFV consiste à faire assurer les fonctions réseau (cf exemple dans
le schéma slide suivant) non plus par du matériel dédié mais par des
logiciels s’exécutant sur du matériel banalisé (“commoditisé”) façon «
datacenter ».
• La virtualisation des fonctions réseau entraine une simplification de la
gestion de l’infrastructure et une nouvelle souplesse dans la gestion
des fonctions réseau.
30
32. • La virtualisation des réseaux va permettre de pouvoir re-router le
trafic automatiquement en fonction de problème réseaux détectés ou
« prédits » grâce aux analyses temps réels des métriques collectées. A
l’instar du secteur de l’Industrial Internet, les équipements du réseau
pourront bénéficier de la maintenance prédictive. De plus la
validation de déploiement réseaux par le logiciel va ainsi permettre
de réduire les déplacements humains et ainsi accélérer la mise à
disposition de nouveaux services.
32
33. • Les algorithmes de Machine Learning vont devenir stratégiques pour
les opérateurs réseaux, car ils vont permettre aux opérateurs de
mieux comprendre le comportement de leurs clients et donc réduire
le taux de déperdition de clients (churn) grâce à des analyses
prédictives obtenues sur des données en temps réel. Les analyses
prédictives vont ainsi permettre d’améliorer le déploiement et la
maintenance 20 et permettre d’offrir un niveau d’assurance réseau
dynamique jouant un rôle déterminant pour se distinguer des
concurrents.
33
34. D’autres fonctions réseaux sont également virtualisables :
• les entités du réseau mobiles : HSS, HLR, MME, SGW, PGW, SGSN,
GGSN
• les réseaux d’accès : BTS, BSC, NB, RNC, eNB
• L’ETSI a proposé une formalisation d’une architecture pour supporter
les fonctions réseau virtualisées (VNF par opposition aux PNF,
fonctions réseau physiques).
34
35. • Plusieurs projets OpenSource ont été lancés pour proposer des
implémentations de ces concepts
• Ces projets ont des niveaux d’adoption variables mais OpenStack
devient un standard du marché (dans plus de 19% des clouds privés
d’après une étude de RightScale).
35
39. L’architecture NFV définie par l’ETSI
Elle est constituée de :
1. l’insfrastructure NFV : NFVI (Network Function Virtualisation Infrastructure) est une
infrastructure physique qui fournit les ressources matérielles (serveurs, COTS – Commercial
Off The Sheld, cartes électroniques, …) et le logiciel de virtualisation. Le NFVI se compose
donc :
• d’une interface matérielle (stockage, réseau, calcul)
• d’une interface virtuelle (stockage, réseau, calcul)
• d’une couche de virtualisation entre le matériel et le logiciel
2. Le VNF (Virtualised Network Function) correspond aux fonctions réseaux virtualisées pouvant
être exécutées sur les équipements du NFVI. Il s’agit de machines virtuelles (VM) fonctionnant
sur l’infrastructure NFV (NFVI).
3. NFV M&O (Management and Orchestration) permettant de gérer les services réseaux de bout
en bout. La gestion et l’orchestration des VM est sous la responsabilité de la fonction MANO
(Management and orchestration). La fonction MANO doit gérer les ressources de
l’infrastructure NFVI (capacité réseau, la puissance de calcul, l’espace mémoire) et la durée de
vie des fonctions virtuelles en fonctionnement sur l’infrastructure NFVI (création et allocation
des VMs). Elle est composé de trois blocs.
• L’orchestrateur (NFV Orchestrator) : L’entité d’orchestration est responsable du cycle de vie des services
réseau tant au niveau logiciel que matériel sur plusieurs domaines en contrôlant les VIM de chaque domaine;
• un gestionnaire (VNFM) en charge du cycle de vie des VNFs ;
• un gestionnaire (VIM) en charge de la gestion des ressources du NFVI à l’intérieur d’un domaine. 39
40. • Les services OSS/BSS doivent pouvoir transmettre au bloc NFV M&O des
informations sur le profil des utilisateurs, la facturation, les politiques de
qualités, les accords entre domaine, …
• Couplé à un portail de supervision, cette architecture permet aussi de
déployer des services réseaux à la demande pour les entreprises (exemple
Network as a service de la solution Easy Go Network).
• L’infrastructure NFV (NFVI) est donc répartie sur des points de présence de
l’opérateur (POP) afin de réduire la latence du réseau pour ses clients : les
services réseaux sont déployés sur les nœuds d’infrastructure (NFVI Node)
au plus proche des clients.
• Les fonctions réseaux virtualisées (VNF) peuvent ainsi être déployées
dynamiquement à la demande dans la limite des capacités des nœuds
NFVI.
40
41. L’infrastructure NFV (NFVI)
• L’infrastructure NFV se découpe en trois domaines :
• domaine de calcul virtualisé (processeurs, accélérateurs, …) ;
• domaine de l’hyperviseur : système d’exploitation supportant la
virtualisation (machines virtuelles) et/ou des containeurs pour faire
fonctionner les VNF, ainsi que les capacités de commutateurs virtuels
(vSwitch).
• domaine réseau de l’infrastructure
41
42. NFVI- suite
• En général, l’infrastructure NFV s’appuie sur la paravirtualisation et non la
virtualisation : les systèmes d’exploitation des machines virtualisés
n’évoluent pas dans un environnement physique virtuel mais dialogue avec
l’hyperviseur via des API. La para-virtualisation réduit la consommation de
ressources processeur de la virtualisation afin d’améliorer les performances
en modifiant le noyau du système d’exploitation invité. Une couche de
virtualisation est insérée entre le matériel et le système d’exploitation.
• Le coeur de la paravirtualisation est un hyperviseur fonctionnant au plus
près du matériel, et fournissant une interface qui permet à plusieurs
systèmes hôtes d’accéder de manière concurrente aux ressources. Les
systèmes d’exploitation hôte et invités sont modifiés pour fonctionner sur
la couche de virtualisation
42
44. • Les fonctions réseaux virtualisées seront déployées dans des
conteneurs au-dessus de la couche de virtualisation. Un conteneur
est une instance complète de système d’exploitation, avec son
système de fichiers, ses comptes utilisateurs, ses processus, etc. Ainsi,
les conteneurs logiciels sont considérés comme des applications pour
le serveur. Sur cette application (système d’exploitation), il est
possible de faire tourner des fonctions réseaux virtuels, nommés VNF
• Enfin, les VNF sont interconnectées entre elles pour constituer un
service réseau (NS).
44
45. NFV MANO – Management and
Orchestration
• La couche de virtualisation permet de découpler l’implémentation
logicielle des fonctions réseaux aux ressources matérielles (calcul,
accélérateur et ressources réseaux). Ce découplage nécessite de nouvelles
fonctions de gestion et d’orchestration et créé de nouvelles dépendances
entre les ressources matérielles et les solutions logicielles virtualisées.
• Une des premières motivations du NFV est l’agilité à déployer des
nouvelles fonctions réseaux et d’accroitre les capacités de ces fonctions à la
demande (exemple : une entreprise qui souhaite une bande passante plus
importante une heure particulière dans la semaine, cf :
https://www.youtube.com/watch?v=niHSqvKz4U0).
• Afin de pouvoir profiter de cette agilité, un niveau d’automatisation de
haut niveau est nécessaire pour provisionner, configurer et tester les
performances des fonctions réseaux virtualisées.
45
46. La gestion et l’orchestration NFV (MANO) automatise le déploiement
de fonctions réseaux virtualisées (VNF). Pour cela, il faut superviser :
• L’infrastructure pour la gestion du matériel (capacité, réseau, calcul,
…)
• Le déploiement de fonctions réseaux (VNF)
• Le chaînage de fonctions réseaux pour réaliser des services réseaux
Ainsi, l’entité MANO est constituée de trois fonctions :
• Gestion des ressources
• Gestions des VNF
• Gestion des NS
46
48. • L’objectif est de pouvoir mettre en œuvre des fonctions pour fournir
des fonctions réseaux virtualisés et des services réseaux avec les
ressources nécessaires pour s’exécuter correctement : les types
d’instances à déployer, adapter la taille de l’instance en fonction de la
demande (scaling) , mettre à jour une fonction réseau virtualisée
(VNF), ou éteindre l’instance.
48
49. • Au niveau réseau, les opérations de déploiement de service réseaux s’appuient
des descripteurs décrivant les ressources et les opérations nécessaires. Les
différents types de descripteurs sont :
• Descripteurs VNF (VNFD) sont des gabarits permettant de définir les instances à
mettre en œuvre et les besoins en ressource de chaque instance (CPU, mémoire,
interface et réseau). Le descripteur défini également les types d’interfaces avec
l’infrastructure NFVI et les KPI attendues.
• Descripteur NS (NSD) : Le descripteur NSD contient les attributs pour un groupe
de fonctions réseaux qui constituent ensemble un service réseau. Ces attribues
contiennent aussi les exigences pour chaîner les VNF ensemble et fournir le
service réseau.
• Descripteur VNFFG (VNFFGD) contient des metadata concernant le graphe
d’acheminement des fonctions réseaux virtualisées VNF, ainsi que les références
aux conteneurs de l’infrastructure, aux instances VNFs et au lien entre les VNFs.
Les métadonnées contiennent de plus des règles de politiques pour les fonctions
d’acheminement (règle de routage et de commutation).
49
50. • De plus, il est nécessaire :
• d’automatiser les fonctions de supervisions en collectant les
métriques de performances sur des instances et du matériel à des
niveaux différents
• de corréler les mesures effectuées afin d’apporter une solution sur les
fautes détectées pour que le service fonctionne de manière fiable sur
des équipements distribués.
• de définir des performances KPI (Key Performance Indicator) au
niveau des services réseaux (NS)
50
51. • Comme évoqué précédemment, le bloc NFV M&O (Management and
Orchestration) permet de gérer les services réseaux de bout en bout est
composé de trois blocs
• L’orchestrateur (NFV Orchestrator) : L’entité d’orchestration est responsable
du cycle de vie des services réseau tant au niveau logicielle que matérielle
sur plusieurs domaines en contrôlant les VIM de chaque domaine;
• un gestionnaire (VNFM) en charge du cycle de vie des instances VNFs en
fonction des données contenues dans le descripteur. Il démarre les
instances VNF, les gères, les adapte et récupère des indicateurs de
supervision. Le gestionnaire VNFM utilise donc le descripteur VNFD durant
la procédure d’instanciation de la fonction réseau virtualisée VNF et
pendant toute la durée de vie de la VNF ;
• un gestionnaire (VIM) en charge de la gestion des ressources du NFVI à
l’intérieur d’un domaine. Le gestionnaire VIM est une abstraction
matérielle qui fourni une interface nord pour le VNFM et l’orchestrateur
NFV. L’interface sud supporte les interfaces Nf-Vi pour piloter les instances
sur l’infrastructure NFVI.
51
52. La figure ci-dessous présente un schéma de déploiement au sein d’Orange avec
l’appui de Juniper et d’un contrôleur sous Openstack.
52
54. Compréhension du protocole de routage
• La représentation simplifiée d’un
routeur est décrite sur la figure
suivante par un plan de contrôle qui
décide de la route et d’un plan de
données pour prendre en charge le
trafic. Pour les équipements de
réseaux traditionnels, les plans de
contrôle et le plan de données sont
localisés dans le même équipement.
54
55. Inconvénients du routage classique
La souplesse apportée par les algorithmes de routage permet d’allouer dynamiquement les routes
optimales en fonction de l’évolution de charge du trafic. Cependant, cette solution souffre de
deux défauts majeurs:
• Le premier défaut est lié au coût d’exploitation (OPEX) pour faire évoluer l’architecture réseau. En
effet, les équipements du réseau de transport (commutateurs et routeurs) sont déployés en
fonction du trafic estimé. Le réseau de transport est donc surdimensionné par rapport au besoin
moyen des clients mais au vu des prévisions de charge pour les années à venir, l’opérateur devra
déployer et programmer d’autres équipements de routage et de commutation.
• Le deuxième défaut est le manque de flexibilité du réseau vis-à-vis de l’installation de nouvelles
fonctions réseaux comme l’équilibrage de charge, des pare-feux, ou le déploiement de nouveaux
serveurs. Si par exemple, une entreprise multi-site souhaite installer un pare-feu uniquement et
un détecteur de malware uniquement pour filtrer les connexion Internet, alors de telles
modifications nécessitent soit la reconfiguration du réseau (séparation des flux entre l’accès
Internet et l’accès VPN inter-site) soit la contrainte de respecter la topologie actuelle du réseau
pour rajouter de nouveaux services (dans ce cas, tout le trafic VPN et Internet passera par le pare-
feu et le contrôleur de malware).
55
56. La solution: SDN
Afin d’apporter de la souplesse au déploiement de services réseaux sur
le réseau de transport, le SDN (Software Defined Networking) repose
sur :
• l’idée de séparer le plan d’acheminement des flux IP (FIB) et le plan
de contrôle constituant les informations de routages (RIB)
• d’apporter de la souplesse en donnant des ordres au plan de contrôle
à partir d’API REST transmises par des applications (ingénierie de
routage, Network as a Service).
56
57. Normalisation SDN
• En 2011 une nouvelle fondation dénommée ‘Open Networking
Foundation’(ONF) a été établie avec pour objectif la spécification
d’une solution SDN reposant sur l’utilisation du protocole OpenFLow
(OF) développé au départ par l’Université de Stanford. L’ONF a livré 3
versions de ce protocole en plus du protocole OF-Config dédié à la
configuration. Du côté de l’UIT-T (secteur de la normalisation des
télécommunications de l’UIT) un projet de Recommandation est en
cours de finalisation concernant la définition de cas d’usage et la
spécification des exigences relatives à l’architecture SDN pour les
opérateurs de réseau.
57
58. Programmabilité via un contrôleur
• Le positionnement du SDN est donc de remplacer les routeurs et
commutateurs de niveau 1 à 4 par une machine physique universelle
dont le traitement des flux IP est modifié en temps réel par une
couche de contrôle, appelée contrôleur SDN.
• La couche de contrôle a pour rôle d’implémenter des règles sur le
commutateur SDN. Les règles peuvent concerner des affectations de
VLANs (port d’accès), du routage et des traitements spécifiques de
services réseaux (équilibrage de charge, haute disponibilité, QoS,…)
• Le protocole d’injection de règles SDN le plus connu est OpenFlow
58
60. • Le contrôleur est, quant à lui, piloté par le besoin des applications. On
dit que le contrôleur fournit une abstraction du plan de transport aux
applications. La notion d’abstraction signifie que le contrôleur offre
des interfaces programmables aux applications réseaux (les interfaces
sont nommées API) et le contrôleur se charge de piloter le plan de
données en injectant des règles d’acheminement spécifiques
répondant aux besoins des applications sans que les applications
connaissent ces règles.
• la couche d’abstraction du contrôleur comporte une interface de
programmation(interface Nord) qui fournit des fonctions
génériques et banalisées de manipulation du réseau de transport en
cachant les détails techniques des entités du réseau. Ceci permet à
une application d’informer le contrôleur des besoins de traitement de
flux de manière générale en faisant abstraction des détails technique
du matériel.
60
62. • Le contrôleur dispose d’une interface nord appelé Northbound API afin de
proposer des API de haut niveau aux applications SDN. Les applications
SDN peuvent être une demande de gestion du réseau, un contrôle d’accès,
une priorité de service à mettre en œuvre, …
• Le plan de contrôle va orchestrer la demande des applications en
transmettant via l’interface sud les tables d’acheminements
correspondantes. Les protocoles utilisés sur l’interface sud peut être le
protocole CLI (Command Line Interface), le protocole OpenFlow, ou
d’autres protocoles (NETCONF/YANG, …)
• Le terme d’orchestration désigne le processus qui permet au contrôleur de
satisfaire les demandes de service de plusieurs clients selon une politique
d’optimisation pour chaque service.
• Le plan de données ou plan usager est chargé de l’acheminement
(forwarding) du trafic des utilisateurs et de l’application de politique de
trafic (parefeu, VLAN, …) dont les règles ont été transmises par le
contrôleur. La politique réseau étant définie par les applications.
62
63. Exemple: OpenFlow
• Dans le cas du protocole OpenFlow, la couche donnée (data path) de
chaque équipement dispose en local d’une « flow table » avec des
règles. Lorsque le switch reçoit un paquet il respecte la règle qui lui
est associé dans la flow table. Si le paquet est nouveau pour le switch
et qu’aucune règle ne correspond, le switch envoi le paquet au
controller qui prendra une décision. Il peut « droper » le paquet ou
ajouter une entré dans la flow table pour que le switch puisse traiter
les futurs paquets similaires.
63
66. • Il existe plusieurs solutions virtuelles ( VMware NSX, Midokura
MidoNet et Nuage Networks) afin de contrôler dynamiquement les
routeurs virtuels, les commutateurs virtuels grâce à un contrôleur de
service virtualisé qui permet également de déplacer, créer ou détruire
un VM afin de répondre au mieux au besoin du client
• Le rôle du SDN est donc d’orchestrer les VMs afin d’adapter les
ressources de l’hébergeur cloud (Amazon SE3, …) au besoin du client
en assurant la fiabilité de l’interconnexion, l’accès rapide au données,
….
•
66
69. problématiques
• Comment éviter le grand nombre des points d’accès?
• Comment gérer la QoS avec cette imbrication de réseaux
hétérogènes?
• Comment assurer la continuité de service?
69
70. NFV, IoT (Internet of Things) SDN (Software Defined
Networking), SON (Self-Organized/Optimized Networks) et la
5G sont les briques qui re-modéleront les telecommunications
du futur.
70
72. • Une 1ere façon de faire:
the EPC can be offered as a service (EPCaaS) instead of standard
unified hardware solution.
• 2eme façon de faire:
la vitalisation peut également être appliquée dans la partie accès
radio à travers l'approche évolutive C-RAN. Les éléments de base
d'une station de base (GSM / UMTS / LTE) sont: l'unité de bande de
base (BBU) et l'unité radio (RRU ou RRH). C-RAN a pour objectif de
virtualiser les unités en bande de base des stations de base et de les
regrouper dans un pool d’unités en bande de base desservant
plusieurs unités RRU
72
76. • Le réseau est composé de trois accès radios complémentaires
(2G/3G/4G) et de deux trois cœurs réseaux, l’un dédié à la gestion
des appels téléphoniques (exploitant la technique de commutation de
circuit – MSC), le second dédié à la gestion des sessions Data
(exploitant la technique de commutation de paquets) en 2.5G/3G
(SGSN, GGSN), le troisième est le cœur réseau tout IP pour la 4G.
76
77. Evolution de l’architecture réseau 4G
• Lorsque l’utilisateur souhaite établir une session Data, l’entité MME
transmet à l’entité SGW et à l’entité PGW (via le protocole GTP-C) la
requête de création de support avec les caractéristiques associées au
support (priorité, débit, temps réel, …)
• Ainsi, les entités SGW et PGW gèrent à la fois le plan de contrôle et le
plan de données utilisateurs.
77
78. 3GPP release 14
• Vous pouvez avoir des réseaux qui ont beaucoup de signalisation en
raison de beaucoup d'utilisateurs de smartphones mais ne
consomment pas nécessairement beaucoup de données
(principalement pour des raisons de prix).
• D'autre part, vous pouvez avoir des réseaux où il n'y a pas beaucoup
de signalisation mais beaucoup de consommation de données. On
peut citer comme exemple MiFi où les utilisateurs consomment
également beaucoup de données, car ils sont bon marché.
78
79. L’approche SDN : CUPS (Control User Plane
Separation)
• Le CUPS propose de séparer en deux parties les entités SGW et PGW.
Le contrôleur se nomme SGW-C et PGW-C et le plan de données
deviennent les entités SGW-U et PGW-U.
• Les règles de traitement de flux sont transmises du contrôleur aux
entités du plan utilisateur par une session de règle SX. Cette session
permet d’injecter les règles de traitement via le protocole PFCP.
79
83. Le contrôle des flux reste ancré sur un unique SGW-C mais différents
SGW-U peuvent être choisis pour différentes connexion PDN. L’entité
fonctionnelle CP (SGW-C et PGW-C) fait une sélection (via une
recherche DNS évoluée) de l’entité UP en prenant en compte :
ola localisation de l’entité UE afin de réduire la latence si besoin
ola capacité de l’entité fonctionnelle UP de prendre en compte les
caractéristiques de l’entité UE
oLa charge (overload) de l’entité SGW-U
83
84. Localisation de l’UE
• Selon la définition, l’aire de service de l’entité SGW est un ensemble de zone de
suivis (Tracking Area TAI) entiers. A chaque mise à jour de localisation, l’ UE reçoit
de la part du MME une liste de zone de suivi (TA) correspondant à la position du
mobile UE couvert par le SGW. Deux mobiles UE dans la même cellule peuvent
avoir des listes de TA différentes pour ne pas solliciter des ressources réseaux sur
les mêmes eNB.
• Dans le cas de la séparation en plan de contrôle et plan utilisateur, le SGW-C n’a
pas de lien physique avec les stations de base eNB mais communiquent avec les
entités fonctionnels comme le MME, le SGSN, le PGW et le SeGW (Security
Gateway pour la demande de création de connexions PDN. Le lien avec les eNB
est maintenu via l’interface S1-U avec l’entité SGW-U. Dans le cas du CUPS, l’aire
de service du SGW-U correspond à l’aire de service du SGW.
• Ainsi, en cas de relocalisation sur une entité fonctionnelle SGW-U, il est
préférable de trouver l’entité SGW-U qui couvre la liste de TA (TA1, TA2, TA3)
fournit par l’entité MME au mobile UE.
84
85. Les conséquences du CUPS
• L’avantage de contrôler plusieurs entités SGW-U par un seul SGW-C est de
simplifier la gestion de la mobilité et mieux gérer l’équilibrage de charge.
De plus, avec la virtualisation du SGW-U, il est possible d’allouer plus ou
moins de ressources au SGW-U.
• La zone de service du SGW-C peut être plus grande que la zone de service
du SGW-U. Dans ce cas, le SGW-C est partitionné et chaque SGW-C gère un
SGW-U. Pour assurer la compatibilité entre les différentes évolutions du
standard, le MME considère le SGW-C comme un SGW classique.
L’alignement de la zone de service du SGW-C partitionné avec le SGW-U
assure que la liste de TAI fournie par le MME au SGW-C partitionné permet
de sélectionner les SGW-U couvrant ces zones de suivis (la liste de TAI).
• Si, pour un UE donné, le SGW-C a sélectionné plusieurs entités SGW-U dans
ce cas, la zone de service des SGW-Us réunis couvrent au moins la zone de
service du SGW-C.
85
86. SDN et PFCP : les protocoles d’injections de
règles
L’entité de contrôle SGW-C et PGW-C injecte les règles de traitement de
flux aux SGW-U et PGW-U afin de connaître les règles d’acheminements
des paquets. L’injection de règles s’effectue via l’interface Sxa ou Sxb. Le
contrôleur crée une session Sx avec la fonction du plan utilisateur via le
protocole d’injection PFCP (Packet Forwarding Control Plane).
• Les protocoles OpenFlow, Forces n’ont pas été retenu car ils ne
répondaient pas aux critères recherchés :
• facilité d’implémentation aux fonctions du plan de contrôle (SGW-U, PGW-U) ;
• latence faible ;
• gestion de toutes les caractéristiques existantes 3GPP
• facilité d’étendre ou maintenir le protocole pour supporter les fonctions 3GPP
• Compatibilités avec les standards 3GPP précédents
86
87. Ainsi, le protocole PFCP a été retenu et propose les propriétés
suivantes :
• Une association Sx doit être établie entre la fonction CP et la fonction UP avant
d’établir une session Sx (injection de règles). La fonction CP et UP sont appelés
Nœuds Sx.
• Les procédures entre les nœuds Sx sont :
• Procédure d’établissement, de mise à jour ou de libération de l’association Sx
• Procédure vérifiant que la session Sx est active (alive)
• Procédure de contrôle de charge et de congestion afin d’équilibrer la charge sur d’autres
fonctions du plan utilisateur (SGW-U, PGW-U) et réduire la signalisation vers l’UP en cas de
congestion.
• La session Sx provisionne les règles d’acheminements de flux du contrôleur vers
l’entité du plan utilisateur. La session Sx peut correspondre aux règles d’une
connexion PDN pour un UE ou pour une session TDF
• Procédure de gestion Sx PFD pour injecter les PFD (Packet Flow Descriptions) pour
chaque application.
87
92. VNFFG – VNF Forwarding Grap
• La virtualisation élimine la dépendance entre les fonctions réseaux
(NF : Network Function) et le matériel. Dans le cas du réseau de
mobiles, les entités pouvant être virtualisées sont :
1. dans le cœur réseau EPC : l’entité MME, le SGW, le PGW
2. dans le cœur réseau IMS : P/I/S-CSCF
92
93. • Une fois que les entités sont virtualisées (on parle alors de VNF), il est
nécessaire de chaîner le trafic à travers les VNF dans un graphe
ordonné pour appliquer les services réseaux. Dans le cas du NFV, le
chaînage s’appelle le graphe d’acheminement des fonctions réseaux
virtualisées (VNFFG – VNF Forwarding Graph) et non le chaînage de
fonctions service SFC (Service Function Chain) pour prendre en
compte la virtualisation sur un réseau Overlay.
• Le graphe d’acheminement des fonctions réseaux virtualisées VNF-FG
fourni un niveau d’abstraction afin que l’opérateur puisse en temps
réel composer les services réseaux.
93
94. Exemple de graphe d’acheminement des
fonctions réseaux virtualisées
94
96. intro
• Grâce à ces différentes technologies (SDN, NFV), la
programmation du réseau apporte une flexibilité et une
modularité permettant de créer simultanément plusieurs
réseaux logiques (virtual network) pilotés par la couche
application via des API. Les descripteurs (NVFD)
permettant de définir chaque besoin permettent ainsi de
tailler un réseau à la demande et adapté au besoin (NFV
MANO)
96
97. • Ces différents réseaux logiques sont appelés des tranches de réseaux
ou network slices et correspond à la mise en réseau de bout en bout
entre un client UE et un service réseau (IoT, IP, IMS, …) en s’appuyant
sur une infrastructure réseau virtuelle (SDN Overlay) ou physique
(SDN).
• Chaque tranche de réseau est isolée des autres et gérée/contrôlée de
manière indépendante (bac à sable grâce à la virtualisation et à la
gestion NFV MANO) et s’adapte à la demande (easy go network).
• Une tranche de réseau (network slice) est une collection de
ressources, qui combinées ensemble de manière appropriées,
permettent de créer un support réseau répondant aux exigences
demandées.
97
98. • Ainsi, pour les besoins d’ultra haut débit comme la vidéo 4K, 8K, 3D
ou la réalité virtuelle, un certain nombre de performances, comme
l’efficacité spectrale, le débit maximal et la capacité globale du
réseau, peuvent être atteintes au détriment d’autres, comme la
latence ou la densité de connexions simultanées.
• A l’inverse, lorsque une connexion massive simultanée d’objets
connectés doit être gérée, le réseau concentre ses ressources et
utilise les technologies nécessaires à la résolution de cette tâche,
mais il n’est pas en mesure, par exemple, d’utiliser aussi efficacement
le spectre ou d’assurer une faible latence.
• Enfin, lorsque des communications ultra fiables, avec une très faible
latence sont nécessaires ,le nombre de communications simultanées,
le débit ou encore l’efficacité spectrale peuvent être réduits.
98
99. • Les types de ressources pour le network slicing sont :
1. Fonction réseaux (NF : Network Function) : Bloc fonctionnel qui
fournit une capacité réseau spécifique et réalise une fonction
demandée. La fonction réseau est généralement une instance
logicielle tournant sur une infrastructure physique mais, il peut
aussi s’agir d’un équipement matériel dédie ou une combinaison
des deux.
2. Infrastructure matérielle dédiée ou partagée pouvant héberger les
fonctions réseaux.
• En proposant un réseau pour les différents besoins, le réseau
opérateur supporte des besoins en terme de qualité de service
(temps réel ou non, débit garanti ou non, bande passante, latence)
très différent en fonction des besoins, comme le montre la figure 2.
99
101. • C’est à la charge du SDN (Software Defined Network) de définir le
chemin approprié pour chaque flux avec les saut successifs (NFV sous
forme de VM ou de container), c-a-d Service Chaining
101
102. I) Approche NFV
• Orchestration
L’orchestration est un processus clé pour le network slicing qui
s’appuie sur des descripteurs définies par exemple sur des accords de
niveau de service SLA. L’orchestration est définie comme un processus
de sélection optimale de ressources pour répondre entièrement aux
demandes de service de chaque client. Le terme optimal réfère à
l’optimisation de la politique de flux en fonction de l’abonnement du
client (SLA) qui gouverne les choix du processus d’orchestration sur la
sélection de ressources au niveau de l’infrastructure physique sur les
POP.
102
103. Isolation
• L’isolation est une exigence primordiale afin de pouvoir faire fonctionner
en parallèle plusieurs tranches de réseau qui se partagent les mêmes
ressources physique et les mêmes infrastructures.
• L’isolation fait référence à :
• Performance : Chaque tranche est définie par rapport à une exigence de
service particulière et exprimées sous forme de KPI. L’isolation assure le
respect du KPI si le service est accepté quel que soit la congestion ou les
niveaux de performances des autres tranches
• Sécurité et confidentialité : les fautes ou les attaques sur une tranche
n’aura aucune incidence sur les autres tranches. De plus, chaque tranche
met en œuvre ses propres fonctions de sécurités qui interdit entre autre à
ce que des entités non autorisés aient un droit de lecture ou d’écriture sur
la configuration d’une tranche de réseau.
• Gestion : Chaque tranche est gérée de manière indépendante comme un
réseau séparé.
103
104. II) Approche SDN
• L’architecture SDN découple le plan de contrôle du plan de données
permettant de configurer dynamiquement le plan d’acheminements
des données comme un service à la demande du client. Cela répond
aux attentes du network slicing qui a besoin de satisfaire à la
demande à un large éventail de services de manière agile et à un coût
optimal.
• Concernant le réseau SDN, une ressource est une instance ou une
entité qui peut être utilisé pour fournir un service en réponse aux
demandes d’un client.
104
105. • Le contrôleur est une entité centralisée qui planifie les ressources en
fonction du contexte du client :
• Contexte du client représente toutes les informations qui le
contrôleur a besoin pour un client donné. Il contient :
• un groupe de ressource : Le groupe de ressource est une vue de toutes les
ressources que le contrôleur peut offrir pour répondre sur mesure à la
demande du client. Le groupe de ressources est proposée par des API sur
l’interface nord et correspond donc à une couche d’abstraction du réseau
pour répondre au besoin du client ;
• le support client contient les opérations et les règles de politique autorisées
pour le client, ainsi que des informations relatives aux services demandés
pour ajuster les actions entre la demande du client et le contrôleur.
• Contexte serveur représente toutes les informations nécessaires au
contrôleur pour interagir avec les ressources physiques accessibles via
son interface sud.
105