Les réseaux IP Multiservices et MPLS
Les protocoles Internet constituent la famille la plus populaire de protocoles de systèmes ouverts non propriétaires car ils peuvent être utilisés pour communiquer entre n’importe quel ensemble de réseaux interconnectés et sont aussi bien adaptés aux communications dans les réseaux locaux que dans les réseaux à grande échelle. Les plus connus de ces protocoles sont IP (Internet Protocol) [RFC791] et TCP (Transmission Control Protocol) [STE94][RFC793][RFC2001]. Les protocoles IP non seulement traitent des couches basses mais incluent aussi des applications comme le courrier électronique (e-mail), l’émulation de terminal (telnet), le transfert de fichiers (ftp), ou la «navigation internet» (World Wide Web). Les protocoles IP ont été développés dans les années 70 quand l’agence américaine DARPA (Defense Advanced Research Projects Agency) voulait mettre en place un réseau à commutation de paquets permettant la communication de systèmes hétérogènes entre plusieurs institutions de recherche. La DARPA finança ainsi l’Université de Stanford (Bolt, Beranek et Newman, BBN). Le résultat de cet effort de développement fut le protocole IP à la fin des années 70. TCP/IP fut introduit ensuite dans Unix BSD (Berkeley Software Distribution) et amena la brique de base de ce qu’est actuellement l’Internet et le «Web». Les documentations et normalisations de l’Internet sont consignées dans des RFC (Request For Comments). Par exemple, les améliorations des protocoles sont consignées dans de nouvelles RFC en particulier lorsque de nouvelles technologies sont mises en place.
Quelques éléments sur IP
IP est un protocole qui permet l’adressage des machines et le routage des paquets de données [RFC791]. Il correspond à la couche 3 (réseau) de la hiérarchie des couches ISO. Son rôle est d’établir des communications sans connexion de bout en bout entre des réseaux, de délivrer des trames de données (datagram) « au mieux (best effort) », et de réaliser la fragmentation et le réassemblage des trames pour supporter des liaisons n’ayant pas la même MTU (Maximum Transmission Unit, c’est-à-dire la taille maximum d’un paquet de donnée).
L’adressage IP
Un des éléments essentiels d’IP est la couverture mondiale qu’assure le protocole. Ceci est fait grâce à une gestion d’adresses uniques. L’adressage IP permet d’identifier de façon unique une interface dans une machine connectée à un réseau. Une machine ayant plusieurs interfaces est communément appelée un routeur. Elle est capable de recevoir et de renvoyer des paquets de données par le biais de différentes interfaces. Elle utilise pour cela une table de routage qui, dans sa version la plus simple, contient un certain nombre d’adresses internet complètes ou sous forme de masques (liste non exhaustives), l’interface à utiliser pour atteindre chacune d’elles, et une ou plusieurs interfaces par défaut vers lesquelles envoyer les paquets d’adresse inconnues. Cette correspondance peut être enrichie d’un coût, appelé aussi métrique, servant aux protocoles de routage que nous verrons plus loin.
Format du paquet IP
Un paquet IP est composé d’une entête et de données.
L’entête contient des champs. Leurs descriptions sont les suivantes :
• Version : indique la version d’IP,
• IP Header Length (Longueur d’entête IP) : indique la taille du datagram header en mots de 32 bits,
• Type de Service : constitué de trois bits, spécifie comment un protocole de couche plus haute utilise les données et indique quel effort est à faire pour le traitement du paquet (délai, débit, fiabilité),
• Longueur Totale : spécifie la longueur totale en octets du paquet IP (entête et données),
• Identification : contient un entier qui identifie la trame actuelle. Ce champ est nécessaire pour le réassemblage des fragments de la trame,
• Flags (drapeaux) : est constitué de trois bits. Les deux bit de poids plus faible contrôlent la fragmentation. Le premier bit indique si le paquet peut être fragmenté, le deuxième bit indique si le paquet est le dernier d’une série de paquets fragmentés. Le troisième bit n’est pas utilisé,
• Offset (déplacement) : Dans le cas d’une fragmentation, ce champ indique la position du fragment relative au début des données dans le datagram original. Ceci permet au processus IP destinataire de reconstruire proprement le datagram,
• Temps à Vivre : maintient un compteur qui est décrémenté d’une unité à chaque traversée d’un routeur. La trame est éliminée lorsque ce compteur devient nul. Ceci permet de protéger le réseau contre les erreurs de routage (cycles),
• Protocole : indique le protocole de couche supérieure qui est à l’origine du paquet,
• Header Checksum (Vérificateur d’entête) : permet de garantir l’intégrité de l’entête,
• Source Address (Adresse de source) : permet de spécifier le noeud émetteur,
• Destination Addres (Adresse de destination) : permet de spécifier le noeud récepteur,
• Options : permettent à IP de supporter plusieurs options dont celle de sécurité, La zone Data (Données) contient les données utiles (provenant des / à transférer aux couches supérieures).
Format de l’adresse IP
Dans la version 4 du protocole IP (IPv4), une adresse est codée sur 32 bits et associée à une interface physique. Un point important de l’adressage IP est qu’il est hiérarchique : une adresse IP est constituée d’au moins deux parties, l’adresse du domaine auquel appartient l’interface et l’adresse de l’interface dans le domaine. L’adresse du domaine est une adresse officielle, qui lui permet d’être connue dans le réseau Internet (c’est-à-dire mondialement). L’adresse de l’interface dans le domaine peut être ou non subdivisée en une adresse de sous-domaine et l’adresse de l’interface dans le sous domaine, et ceci autant de fois que les 32 bits le permettent.
Protocoles de base d’IP
Citons quelques protocoles qui sont nécessaires au fonctionnement de base des réseaux IP :
• ARP (Address Resolution Protocol) : Il permet d’associer une adresse d’équipement physique (interface) à une adresse IP pour coopérer avec les couches inférieures [RFC826],
• ICMP (Internet Control Message Protocol) : Il permet le transport de messages relatifs au bon fonctionnement d’internet, et concerne principalement les informations de routage,
• DNS (Domain Name Service) : Ce protocole permet la résolution d’adresses nommées (FQDN – Fully Qualified Domain Name) en adresses IP. Par exemple il permet d’obtenir la réponse 195.83.132.133 à la question « www.laas.fr »,
Citons également TCP et UDP. Ils sont très largement utilisés, et décrits en détails dans les paragraphes suivants. Ces deux protocoles permettent le transport de données, via IP, entre deux applications exécutées sur les hôtes correspondants aux adresses source et destination de l’entête du paquet IP.
Les Protocoles UDP et TCP
UDP
UDP (User Datagram Protocol) est un protocole de communication de niveau ISO 4 (transport) sans connexion : Cela signifie qu’il n’y a aucune garantie qu’une trame UDP émise arrive à destination. Les trames UDP sont encapsulées par la couche réseau IP sous-jacente. Elles peuvent être de longueur quelconque, la couche IP se charge de leur fragmentation et de leur réassemblage de façon transparente. La qualité de service offerte par UDP est la même que celle fournie par IP. UDP ajoute cependant quelques informations importantes à l’entête, outre la longueur des données utiles et un checksum : ce sont les numéros de port source et de port destination . Ces numéros de port permettent de différencier plusieurs connexions ou services différents entre deux extrémités identiques dans le réseau IP, afin de pouvoir multiplexer les connexions entre deux mêmes machines.
UDP est principalement utilisé dans les réseaux locaux (dans lesquels la probabilité de perte d’un paquet IP est moindre) ce qui justifie la non-nécessité de connexion virtuelle (par opposition à TCP). Les services l’utilisant sont généralement NFS (Network File System), et NIS (Network Information Service), respectivement pour le partage de fichiers et la centralisation d’informations relatives aux réseaux. Ils sont en effet conçus pour fonctionner en mode déconnectés. De fait, ces services doivent détecter et éventuellement corriger eux-même les erreurs de transmission. Le protocole UDP sert aussi à transporter des données autorisant des pertes mais ayant des contraintes fortes sur les délais. En effet un protocole en mode connecté procède à des retransmissions en cas de perte, ce qui peut considérablement augmenter le délai de bout en bout. Par exemple le protocole RTP (Real-Time Protocol) s’appuie sur UDP pour transporter des données de type communication audio.
|
Table des matières
Introduction
Chapitre I – Les réseaux IP Multiservices et MPLS
I.1 Introduction
I.2 Quelques éléments sur IP
I.2.1 L’adressage IP
I.2.2 Format du paquet IP
I.2.3 Format de l’adresse IP
I.2.4 Protocoles de base d’IP
I.3 Les Protocoles UDP et TCP
I.3.1 UDP
I.3.2 TCP
I.3.2.1 Généralités
I.3.2.2 Une transmission sans perte et sans erreur
I.3.2.3 Fonctionnement
I.4 Le routage dans les domaines IP
I.4.1 Le routage IP: routage de proche en proche
I.4.2 Les deux familles de protocoles IGP et EGP
I.4.3 Les « Autonomous System »
I.4.4 Les protocoles de routage de type IGP
I.4.4.1 Distance-Vector
I.4.4.2 Link State : OSPF
I.4.5 Le routage entre les domaines IP: BGP
I.5 Réseaux IP Multiservices et la gestion de QoS
I.5.1 Introduction
I.5.2 Les Principaux Mécanismes de Gestion de la QoS
I.5.2.1 Traffic Shaping (mise en forme du trafic)
I.5.2.2 Traffic Policing
I.5.2.3 Buffer Management
I.5.2.4 Ordonnancement des trafics (Traffic Scheduling)
I.5.2.5 Exemples d’ordonnanceurs
I.5.2.6 Les délais de transmission des paquets
I.5.3 Le modèle Integrated Service (IntServ)
I.5.3.1 Principe de IntServ
I.5.3.2 Les composants du modèle IntServ
I.5.3.3 L’ordonnanceur (scheduler)
I.5.4 Le modèle DiffServ (Differentiated Services)
I.5.4.1 Principe du modèle DiffServ
I.5.4.2 Les composants du modèle DiffServ
I.5.4.3 Exemple d’architecture DiffServ
I.6 Le protocole MPLS
I.6.1 Les principes de base
I.6.1.1 Introduction
I.6.1.2 Principes de MPLS
I.6.1.3 Principe MPLS
I.6.1.4 Fonctionnement de base du LSP
I.6.2 MPLS et l’ingénierie de trafic
I.6.2.1 Motivation
I.6.2.2 Concept de MPLS-TE
I.6.2.3 Ingénierie de trafic avec MPLS-TE
I.6.2.4 Routage des LSP et OSPF-TE
I.6.3 Mécanismes de protection dans MPLS
I.6.3.1 Détection des erreurs et mécanismes
I.6.3.2 Les mécanismes de protection et récupération
I.7 Problématique
Chapitre II – Modélisation différentielle du trafic
II.1 Théorie différentielle du trafic
II.1.1 Principe général de la théorie différentielle du trafic
II.1.2 Modèles dynamiques de systèmes markoviens élémentaires
II.1.2.1 Modèle dynamique de la file
II.1.2.2 Modèle dynamique de la file
II.1.2.3 Modèle dynamique de la file
II.1.3 Modèles dynamiques de systèmes élémentaires non markoviens
II.1.3.1 Modèle dynamique de la file
II.1.3.2 Modèle dynamique de la file
II.1.4 Modèles dynamiques de réseaux de files d’attente
II.1.5 La forme produit
II.1.6 Modèle différentiel d’un réseau
II.1.7 Réseau test (réseau double X)
II.2 Ordonnancement équitable
II.2.1 Paradigme GPS (Generalized Processor Sharing)
II.2.1.1 Définition de GPS
II.2.2 Etat de l’art
II.2.3 Approximation analytique de GPS par linéarisation pour 2 files
II.3 Conclusion
Chapitre III – Sources de trafic
III.1 Processus de génération aléatoire
III.1.1 Générateur aléatoire uniforme
III.1.2 Générateur aléatoire à partir d’une PDF
III.1.3 Processus ON-OFF
III.1.4 Processus IPP
III.1.5 Processus MMPP-N+1
III.1.6 Approximation d’un processus MMPP-N+1 par un processus MMPP-2
III.1.7 Processus corrélé basé sur le modèle
III.1.7.1 La corrélation
III.1.7.2 Génération des tailles d’image
III.2 Modèles de trafic agrégé
III.3 Générateurs de paquets
III.3.1 Générateurs et distribution empirique
III.3.2 Tests de validité pour les générateurs aléatoires uniformes
III.3.2.1 Caractéristiques des générateurs testés
III.3.2.2 Tests statistiques
III.3.2.3 Conclusion
III.3.3 Générateurs issus de distributions
III.3.3.1 Distribution exponentielle
III.3.3.2 Distribution Normale
III.3.3.3 Distribution Gamma
III.3.4 Sources Audio
III.3.4.1 G711, G726 et G729, RealAudio
III.3.4.2 : Sources vidéo
III.4 Statistiques sur des superpositions de sources de trafic
III.4.1 Sources Audio avec le Codec Audio G729 ON-OFF
III.4.1.1 Flux unitaire
III.4.1.2 Superposition en nombre constant de sources G729 ON-OFF
III.4.1.3 Codec G729 modélisé par un processus IPP
III.4.2 Sources Audio avec le Codec Audio G711 ON-OFF
III.4.2.1 Flux unitaire
III.4.2.2 Superposition en nombre constant de sources G711 ON-OFF
III.4.2.3 Superposition en nombre aléatoire de sources G711 ON-OFF
III.4.3 Sources Audio avec le Codec Audio G726-ON-OFF
III.4.3.1 Flux Unitaire
III.4.4 Sources Vidéo avec un processus modélisant le codec MPEG1
III.4.4.1 Flux unitaire
III.4.4.2 Superposition en nombre constant de sources Vidéo
III.5 Conclusion
Conclusion