3e Année IRS - Virtualisation des Réseaux - Chapitre 3 PDF

Document Details

EnrapturedOsmium2954

Uploaded by EnrapturedOsmium2954

Institut Supérieur d'Informatique

Dr. Ghayet El Mouna ZHIOUA

Tags

virtualization networking sdn computer science

Summary

This document is a chapter on Virtualisation des réseaux (Network Virtualization). It discusses SDN (Software Defined Networking) and OpenFlow, covering topics such as architecture, controllers, and functionalities. The provided summary is for the purposes of indexing and analysis only.

Full Transcript

Chapitre 3: Virtualisation des réseaux Contrôleurs SDN et Technologie OpenFlow Niveau: 3ème année IRS – ISI Dr. Ghayet El Mouna ZHIOUA 1...

Chapitre 3: Virtualisation des réseaux Contrôleurs SDN et Technologie OpenFlow Niveau: 3ème année IRS – ISI Dr. Ghayet El Mouna ZHIOUA 1 2 PLAN PLAN Contrôleurs SDN Contrôleurs SDN Types et exemples de contrôleurs SDN Types et exemples de contrôleurs SDN NETCONF NETCONF OpenFlow OpenFlow 4 5 1 Introduction Rappel Le SDN a été proposé afin d’apporter de la souplesse au Les deux principaux modèles SDN : déploiement de services réseaux sur le réseau de Programmabilité via un contrôleur: transport – Une application donne un ordre abstrait et global à un contrôleur, – Le contrôleur à son tour traduit cette requête en une suite Le SDN repose sur la séparation du plan d’acheminement d’ordres auprès des équipements du réseau concerné. des flux (plan de données) et du plan de contrôle (relatant SDN Virtual Overlay: les informations de routages, commutation, politique de – Création d’un réseau virtuel au-dessus du réseau physique. sécurité…) – Les applications créent leur propre réseau overlay, s’affranchissant des contraintes du réseau physique. Le SDN permet plus de souplesse en donnant des ordres – Le rôle du réseau physique est assurer la connectivité entre les noeuds d’extrémité, au plan de contrôle à partir d’API REST transmises par des – Le réseau d’overlay assure l’intégralité des services. applications (ingénierie, Network as a Service). 6 7 Architecture SDN basée sur un contrôleur Architecture SDN basée sur un contrôleur On peut remplacer les routeurs et commutateurs par une machine physique universelle dont le traitement des flux IP est modifié en temps réel par une couche de contrôle. Le contrôleur est piloté par le besoin des applications. Il offre des interfaces programmables aux Le plan de données est chargé de applications réseaux (API) l’acheminement du trafic des utilisateurs et de l’application de politique de trafic (commutation, VLAN, sécurité,…) dont les règles ont été transmises Le contrôleur a pour mission de fournir une par la couche de contrôle. couche d’abstraction du réseau et de La politique réseau est définie par les applications. présenter ce dernier comme un système. La couche de contrôle est composée d’un contrôleur SDN. 8 9 2 Le Contrôleur SDN Le Contrôleur SDN Le contrôleur se charge de piloter le plan de Sur un commutateur SDN le contrôleur a données en injectant des règles pour rôle d’implémenter des règles. d’acheminement spécifiques répondant aux Exemples de règles: besoins des applications sans que les – Affectations de VLANs (port d’accès), applications connaissent ces règles. – Routage – Traitements spécifiques de services réseaux Il orchestre et arbitre la communication entre (équilibrage de charge, QoS,…) les applications et les composants réseau. – L’orchestration est le processus qui permet au Le contrôleur SDN permet aussi contrôleur de satisfaire les demandes de service de plusieurs requêtes selon une politique d’implémenter rapidement un d’optimisation pour chaque service. changement sur le réseau en traduisant une demande globale. Par exemple changer la configuration d’un Les applications SDN peuvent être une équipement réseau (requêtes Netconf, ajouts demande de gestion du réseau, un contrôle d’accès, une priorité de service à appliquer… d’états Openflow, configuration en CLI…) 10 11 Le Contrôleur SDN Le Contrôleur SDN Les ordres sont donnés au contrôleur par une Le contrôleur communique avec les équipements via une ou plusieurs API Sud application via une API appelée nord. appelées Southbound, représentant l’interface du contrôleur avec le plan de données L’interface nord appelée Northbound API est une interface de programmation qui fournit des Le plan de contrôle va orchestrer la demande fonctions génériques et banalisées de des applications en transmettant via l’interface manipulation du réseau de transport en sud les tables d’acheminements cachant les détails techniques des entités du correspondantes. réseau.  Permet à une application d’informer le Les protocoles utilisés sur l’interface sud peuvent être contrôleur des besoins de traitement de flux de – protocole CLI (Command Line Interface), manière générale en faisant abstraction des – protocole OpenFlow, détails techniques du matériel. – ou d’autres protocoles (NETCONF/YANG,…) 12 13 3 Le Contrôleur SDN Comment ça fonctionne? Le contrôleur SDN définit les flux de données entre le plan de OpenFlow est une API sud agissant contrôle centralisé et les plans de données sur les routeurs et les directement sur le plan de données. commutateurs individuels. – Pour pouvoir traverser le réseau, chaque flux doit être approuvé par le contrôleur SDN qui vérifie que la communication est autorisée NETCONF est une API sud dans le cadre de la politique réseau de l'entreprise. permettant au contrôleur de configurer un équipement. Toutes les fonctions complexes sont prises en charge par le contrôleur. Le contrôleur alimente les tables de flux. Le contrôleur peut se connecter directement en CLI avec un Les commutateurs gèrent les tables de flux. équipement pour actionner une – À l'échelle du commutateur, un flux est une séquence de paquets qui fonctionnalité correspond à une entrée spécifique dans une table de flux. – Sur chaque commutateur, la gestion des flux de paquets est assurée 14 par une série de tables mises en œuvre au niveau du matériel. 16 Comment ça fonctionne? Comment ça fonctionne? Table de flux: Cette table fait correspondre les paquets entrants à un Les trois types de flux particulier tableaux sont: EIle spécifie les Table de flux fonctions qui doivent être exécutées sur les Table de groupe paquets (la règle). Table de comptage Il peut y avoir plusieurs tables de flux qui fonctionnent à la manière d'un pipeline. Exemple d’entrée: 17 18 4 Comment ça fonctionne? Comment ça fonctionne? Table de groupe Un type particulier de table de flux Une table de flux peut diriger un flux vers Table de comptage une table de groupe, Cette table déclenche ce qui peut déclencher diverses une série d'actions liées actions qui affectent aux performances sur un ou plusieurs flux. un débit, y compris la Avantages capacité de limiter le – Permet de combiner plusieurs flux dans trafic. une seule entrée – Envoyer plusieurs copies d’un même paquet sur plusieurs ports 19 20 Network Information Base PLAN Afin de pouvoir interagir avec le réseau, le contrôleur a besoin d’une vue précise de ce dernier. C’est ainsi que le concept de NIB (Network Information Base) a été introduit. Contrôleurs SDN Types et exemples de contrôleurs SDN La NIB est construite au niveau du contrôleur et lui NETCONF permet de savoir comment implémenter chaque ordre OpenFlow abstrait, trouver les équipements qui doivent être reconfigurés, s’assurer de la capacité de ces derniers à implémenter une directive, les API supportées par l’équipement… 21 22 5 Types de Contrôleurs Exemples de Contrôleurs Contrôleurs pour la gestion des équipements réseaux programmables NOX/POX Il existe typiquement deux catégories de contrôleurs SDN ONOS Contrôleur pour l’infrastructure NFV d’un datacenter OpenDaylight Contrôleur classique pour la gestion des équipements Open vSwitch réseaux programmables Floodlight RUNOS Ryu Controller … 23 24 NOX/POX Floodlight NOX le premier contrôleur OpenFlow – Open source Contrôleur OpenSource développé par l’ONF – Ecrit en C++, Utilise Java – Présente de bonnes performances Supporte le protocole OpenFlow v1.0 POX Bonne documentation – écrit en Python Intégration avec API REST pour – Supporte le openFlow v1.0 interagir avec le contrôleur – Très utilisé, Facile à comprendre – Facilité de lecture et écriture des codes Il est conçu pour opérer sur des réseaux assez – Performance moindre que NOX complexes et s’adapte facilement à l’ajout de Switch – Utilisé pour la recherche, expérimentations, virtuels (Production level performance and support). démonstrations, comprendre les bases de SDN Supporte OpenStack Ne supporte pas OpenStack 25 26 6 Ryu OpenDaylight Le projet OpenDaylight (ODL) est une plate-forme collaborative et open source pour accélérer l’adoption et l’innovation de la mise en réseau logiciel SDN et de Open Source, la visualisation des fonctions réseaux (NFV). Ecrit en Python ODL est un logiciel basé sur Java et pris Supporte OpenFlow 1.0, 1.2. et 1.3 en charge par l’industrie, géré par le Tend à être adopté comme le OS de SDN consortium Linux Foundation avec près de 50 entreprises membres, dont Intégration d’OpenStack Brocade, Cisco, Citrix, Dell, Ericsson, HP, IBM, Juniper, Microsoft et Red Hat. Performances moindre que les autres controleurs La mission d’ODL est de créer une communauté collaborative qui partage et contribue au succès et à l’adoption du SDN. 27 28 VIDEO TP3 – Mininet Objectifs : La mise en place d’une architecture SDN Comparaison entre les contrôleurs Manipuler des switchs OpenFlow https://www.coursera.org/learn/sdn/lecture/Bg622/ov erview-of-sdn-controllers Configurer les flux avec la commande dpctl Manipuler / configurer le contrôleur OpenFlow POX 29 30 7 PLAN Qu'est-ce que NETCONF ? Network Configuration (NETCONF), un protocole défini par l'IETF RFC7519, est conçu pour installer, manipuler et supprimer la configuration des Contrôleurs SDN périphériques réseau. Types et exemples de contrôleurs SDN Le protocole NETCONF utilise le NETCONF codage de données XML pour les OpenFlow données de configuration et les messages de protocole. Il fournit un petit ensemble d'opérations pour gérer les configurations des périphériques et récupérer les informations sur NETCONF dans la pile de programmabilité pilotée l'état des périphériques. par modèle 33 34 Opérations NETCONF Qu'est-ce que RESTCONF ? Le protocole NETCONF fournit un ensemble Le RESTCONF RFC 8040 définit un protocole et un mécanisme d'opérations pour gérer les configurations des pour un accès de type REST aux périphériques et récupérer les informations sur l'état des informations de configuration et au contrôle. périphériques. RESTCONF utilise des modèles de banque de données et des verbes de Le protocole de base comprend les opérations commande définis dans NETCONF, encapsulés dans des messages HTTP. suivantes : RESTCONF utilise des données Opérations du protocole NETCONF structurées (XML ou JSON) et YANG pour fournir des API de type REST, get copy-config unlock permettant un accès programmatique aux périphériques. RESTCONF dans la pile de programmabilité pilotée par get-config delete-config close-session modèle edit-config lock kill-session RESTCONF n'est pas destiné à remplacer NETCONF, mais à fournir une interface HTTP qui respecte les principes REST et est compatible avec le modèle de banque de données NETCONF. 35 36 8 Mappage des opérations NETCONF et Le RESTCONF RFC 8040 des méthodes RESTCONF RESTCONF indique que la syntaxe URI de vs NETCONF base RESTCONF est /restconf/ /

Use Quizgecko on...
Browser
Browser