Couche 3 La Couche Réseau
Transcription
Couche 3 La Couche Réseau
Services pour la Couche Transport Couche 3 La Couche Réseau nom PDU couche Pascal Berthou ([email protected]) LAAS-CNRS, 7, av du Colonel Roche - 31077 Toulouse 7 Applicat° Applicat° APDU 6 Présentat° Présentat° PPDU 5 session session SPDU 4 transport transport message 3 réseau réseau réseau réseau paquet 2 liaison liaison liaison liaison trame 1 physique physique routeur physique physique hôte A 2004-2005 Rôles de la Couche Réseau routeur bit hôte B 2 Diversité des réseaux ¾ Rôles y Topologie sous-jacente transparente à la Couche Transport y Service Réseau indépendant de la technologie sous-jacente y Connecte logiquement des hôtes qui ne sont pas directement reliés par un lien physique ¾ Mécanismes nécessaire y Segmentation/Reassemblage y adressage global y routage - trouver une route jusqu’a l ’hôte final y autre : contrôle de flux, contrôle de congestion, contrôle d ’admission, ... 2004-2005 3 2004-2005 4 Connecte logiquement des hôtes B1 Les différents moyens d'interconnection d'interconnection B2 ¾ Répéteurs y niveau physique, pas de conversion ni de transcodage, y répétition ou régénération des signaux, étendent de manière transparente le support physique, A2 A1 y les réseaux sont identiques à partir de la couche liaison. B3 ¾ Les ponts (bridges) ¾ Grâce a la couche 2, chacun peut communiquer avec celui au quel il est physiquement relié (A1,A2) (B1,B2,B3) y niveau liaison, permet de passer d'un type de réseau à un autre, y possibilités de filtrage. ¾ Comment faire communiquer (A1, B1) ? ¾ Les routeurs (routers/gateways) y niveau réseau, y conversion de protocoles, incorporent des algorithmes de routage. 2004-2005 5 2004-2005 plan 6 Unités de données ¾ Introduction ¾ Objectifs : Indépendance vis a vis de la technologie sous-jacente ¾ Problème : y Tous les réseaux de niveau 2 n ’utilisent pas les mêmes formats de trames (taille des données variables) ¾ Mécanismes de la couche réseau y Segmentation / Réassemblage ¾ Comment faire : y Adressage global y Modes d ’acheminements y Définir ses propres unités de traitement N-PDU : Paquets y Routage y La taille de ses N-PDUs est choisie en fonction des caractéristiques du service que souhaite rendre le réseau (en particulier performances) exemple : ATM=53octets, IP=65515 ¾ Exemple de l’Internet 2004-2005 y Une entête (partie fixe + parfois options) + champ information (souvent variable mais borné) 7 2004-2005 8 Segmentation / Réassemblage Adressage global ¾ Besoin d ’une adresse unique pour identifier un hôte dans le réseau : ¾ Adaptation des unités de données à transmettre à la taille de la couche sous-jacente : N-SDU fragmenté en n x L-SDU y La couche Réseau utilise des adresses pour identifier les systèmes (d’extrémité et intermédiaires). ¾ Le protocole de la couche Réseau met généralement en œuvre un mécanisme de fragmentation : ¾ Deux types de structuration des adresses existent : y L’adressage global (linéaire, plat) : y identification des N-PDU appartenant aux différents N-SDU à chaque station se voit attribuer un numéro indépendamment de toute sémantique, y ordonnancement des N-PDU appartenant au même N-SDU y délimitation des N-SDU entre eux (marquage du dernier N-PDU de chaque N-SDU) à des stations voisines peuvent avoir des adresses sans aucune relation entre elles. y L’adressage hiérarchique (structuré) : à chaque adresse est décomposée en champs, sous-champs, etc. ¾ Remarques : à la sémantique associée à chaque champ peut être géographique ou fonctionnelle y la fragmentation peut être très coûteuse : manipulation de la totalité des données à chaque routeur ⇒ De moins en moins utilisé (vu plus tard) 2004-2005 9 2004-2005 L’adressage d’Internet 10 Objectifs ¾ Les adresses du protocole IPv4 : longueur fixe de 32 bits. ¾ Transmettre les paquets d ’un hôte à un autre en traversant un réseau composé de nœuds intermédiaires (routeurs) ¾ Adressage hiérarchique à 2/3 champs : ¾ Principalement deux techniques utilisées y (classe,) netid, hostid ¾ 3 classes d’adresse unicast : longueur variable de netid et hostid. y Technique basée sur les Datagrammes à permet de construire un service en mode non-connecté ou orienté connexion à généralement associé au mode sans connexion Exemple : 146.84.32.07 classe B, netid = 146.84, hostid = 32.07 y Technique basée sur les Circuits Virtuels à permet de construire un service en mode orienté connexion ou non à généralement associé au mode orienté connexion ¾ 1 classe d’adresse multicast : ¾ Ne pas confondre avec les services y identifie un groupe de stations y Service Sans Connexion ¾ Nouvelle version IPv6 : y Service Orienté Connexion y longueur des adresses 128 bits! y adresses “anycast” (+ unicast + multicast) 2004-2005 11 2004-2005 12 Technique Datagrammes Acheminement par Datagrammes ¾ Analogie avec les télégrammes ¾ Chaque routeur est muni d’une table de routage. Cette table reflète l’état (perçu par le routeur) de la topologie du réseau à un moment donné. ¾ Intérêts : y pas de mémorisation du trajet d'un type de paquet ¾ Actions effectuées lors de la réception d’un paquet: y possibilité de routes diverses y robustesse y extraction de l’adresse de destination, y efficacité (multiplexage) y recherche dans la table de routage de l ’interface adéquat y tarification au débit y retransmission du paquet vers le prochain routeur cette interface ¾ Mécanisme : A B G y dynamique @A→@G C Quel Chemin de A vers G ? D F E 2004-2005 13 Technique Circuits Virtuels 14 Acheminement par Circuits Virtuels ¾ Le circuit virtuel (CV) relie l’émetteur au destinataire. Chaque tronçon de CV est identifié par un nº de voie logique (NVL). ¾ Analogie avec les circuit physiques du téléphone ¾ Intérêts : ¾ Les numéros de VL sont réservés lors de l’établissement de la connexion. Ils sont rendus lors de la libération de la connexion Utilise une table de routage pour l établissement des CV ! y éviter de recalculer la route pour chaque paquet y traitement efficace des paquets (temps réel possible) y tarification à la durée ¾ Actions effectuées lors de la réception d’un paquet : ¾ Mécanisme : y extraction du NVL, recherche dans la table de circuit virtuel y Permanents y échange du NVL, retransmission du paquet à Configurés A y Dynamiques à Etablit à la connexion B 8 7 1 G C D F E 2004-2005 table de routage de C 2004-2005 15 2004-2005 table de commutation de C 16 Combinaison des services et techniques d ’acheminement Comparaison des deux techniques Technique Datagramme Circuit Virtuel Initialisation Non OUI Adressage Informations d'état Calcul de route Robustesse Contrôle de Congestion Technique d' acheminement Couche supérieure Adresse complete de la source etdu Identificateur de CV destinataire NON OUI pour chaque CV Pour chaque paquets Pertes des paquets en cours de traitement si crash Complexe Datagram Circuit virtuel Sans Connexion UDP --------IP Orienté Connexion TCP --------IP UDP --------IP --------ATM ATM AAL1 --------ATM Initial Perte de tous les circuits en cas de crash Simple 2004-2005 17 2004-2005 Algorithmes de routage 18 Propriétés des Algorithmes de Routage ¾ Mise à jour des tables de routage ! ¾ Critères y Exactitude (correctness) ¾ Deux classes d’algorithmes de routage : y algorithmes de routage fixes (routage statique) y Simplicité (simplicity) y algorithmes de routage adaptatifs (routage dynamique) : y Robustesse (robustness) y s’adapte aux modifications de la topologie et, plus rarement, à celles du trafic automatiquement y Stabilité (stability) à doit toujours fonctionner qqs les évenements à convergence rapide vers un équilibre ¾ Les algorithmes de routage peuvent être : y Équité (fairness) y centralisés : les tables de routage de tous les nœuds sont calculées dans un seul nœud. à même traitement pour tout les paquets y « Optimalité » (optimality) y répartis : les tables de routage sont calculées dans chaque noeud. ¾ Rôle contradictoire ¾ Les algorithmes de routage peuvent utiliser des informations : y Offrir le meilleur service aux utilisateurs (délai, bande passante, …) y locales aux nœuds. Exemple : longueur de ses files d’attente. y Permettre une utilisation optimale du réseau y collectées globalement. Exemple : connaissance de la topologie totale 2004-2005 19 2004-2005 20 plan Structure de l ’Internet ¾ Introduction ¾ Ensemble de réseaux (AS, Autonomous systems) interconnectés par un protocole de niveau réseau : IP (RFC 791) ¾ Mécanismes de la couche réseau y Segmentation / Réassemblage ¾ Service : Sans Connexion y Adressage global ¾ Paquets de taille maximale de 65515 octets y Modes d ’acheminements y fragmentation : Possible, mais de moins en moins ... y Routage ¾ Adressage : Hiérarchisé ¾ Mode d ’acheminement : Datagram ¾ Exemple de l’Internet ¾ Options IP (Sécurité,Strict source routing,Loose source routing,Enregistrement de route,Estampilles temporelles,…) 2004-2005 21 2004-2005 Le format d’un paquet IP Les protocoles de routage 31 15 Taille TdS Identificateur Flag Index de fragment 0 4 Version TTL 7 ¾ IGRP : Interior Gateway Routing Protocol Taille Entête Protocole y RIP Routing Internet Protocol y OSPF Open Shortest Path First (RFC 1247) ¾ EGRP : Exterior Gateway Routing Protocol Header Checksum y BGP Border Gateway Protocol à Routage basé sur les vecteurs de distance mais orienté-chemin Adresse IP de source à Politiques de routage variée : choix possible d ’un chemin en fonction de la politique (avec des fournisseurs par ex.) Adresse IP de destination Options 22 bourrage Les données 2004-2005 23 2004-2005 24 Les protocoles associés Couche 4 La Couche Transport ¾ ICMP y Internet Control Message Protocol (RFC 792) y Test et retour d'erreur du réseau ¾ ARP y Address Resolution Protocol (RFC 826) y « Quelle est l'adresse MAC du destinataire possédant l'adresse IP 192.55.123.78 ? » ¾ RARP, BOOTP,... : Configuration automatique de l'adresse IP y RARP Reverse Address Resolution Protocol (RFC 903) à « Mon adresse MAC est 45.00.FE.67.89.AB, qui connait mon adresse IP » Pascal Berthou ([email protected]) à broadcast limité (adresse MAC=FF.FF.FF.FF.FF.FF) LAAS-CNRS, 7, av du Colonel Roche - 31077 Toulouse y BOOTP Bootstrap Protocol (RFC 951, 1048 et 1084) y DHCP Dynamic Host Configuration Protocol... 2004-2005 25 Plan Introduction ¾ Introduction ¾ La couche Transport du modèle OSI : ¾ Mécanismes de la couche Transport y quatrième couche du modèle de référence ¾ Modèles de couche Transport y dernière couche des services de « bas niveau ». y La couche Transport assure la charnière entre les aspects applicatifs et les aspects liés à la transmission de données sur un réseau informatique. ¾ Modèles Internet pour la couche Transport ¾ La couche Transport assure le transport de bout en bout des données d’une façon sûre et efficace. y transfert d’informations entre systèmes d’extrémités y indépendamment de la nature des réseaux sous-jacents (rôle de la couche réseau). 2004-2005 27 2004-2005 28 Service pour les couches « applicatives » Objectifs de la couche transports ¾ Services fournis par la couche réseau (vu depuis la couche Transp) nom PDU couche 7 Applicat° Applicat° APDU 6 Présentat° Présentat° PPDU 5 session session SPDU y niveau A (service fiable sans désynchronisation), à Taux d ’erreurs faible, incidents rares : exemple : Réseaux Locaux à Travail couche transport : faible y niveau B (service fiable avec quelques désynchronisations) à Taux d ’erreurs faible, incidents fréquents : exemple : X25 à Travail couche Transport plus important protocole de transport 4 transport transport message 3 réseau réseau réseau réseau paquet 2 liaison liaison liaison liaison trame 1 physique physique routeur physique physique Etablissement de nvlle connexions, resynchronisation, masquages y niveau C (service peu fiable) à Taux d ’erreurs important, incidents fréquents : exemple : WAN, IP à Travail couche Transport : Résoudre tous les problèmes de fiabilité Travail similaire à celui de la couche liaison hôte A routeur bit hôte B 2004-2005 29 2004-2005 30 Plan Différence entre la couche liaison et la couche transport ¾ Introduction ¾ Mécanismes de la couche Transport routeur réseau ¾ Modèles de couche Transport ¾ Modèles Internet pour la couche Transport hôte lien de communication physique Niveau liaison routeur Niveau transport ¾ Différences : y Adressage nécessaire au niveau de la couche transport (multiplexage) y reordonnancement possible y délais variables y Nombre de connexions variables 2004-2005 31 2004-2005 32 Les mécanismes de la couche transport Transport de données ¾ Mécanismes classiques (non traités - abordés précédemment) ¾ Plusieurs services de transfert de données spécifiques sont définis: y Détection des pertes y Les données normales y Réordonnancement y Les données express (“Expedited Data”) à traitement et transmission rapide de données ¾ Mécanismes typiques de la couches transport y Transport de données à à ne pas confondre avec les différents niveaux de priorités que peuvent avoir les unités de données normales y Multiplexage / Adressage à de petite taille (<16 octets) y Etablissement / Fermeture de connexion à but : la transmission d’alarme y Contrôle de flux / Contrôle de congestion à non soumis aux contrôles habituels (de flux, numérotation, etc.) y Gestion de la Qualité de Service y Transfert de données lors de l’établissement et lors de la libération de la connexion à transmission de données en pseudo-mode non connecté à permet d’accélérer le début de la transmission de données à données qui permettent de déterminer les droits d’établissement de la connexion 2004-2005 33 2004-2005 Multiplexage / Adressage 34 Etablissement d’une connexion transport ¾ Les entités communicantes ne sont plus des stations mais des processus : ¾ Nécessaire pour mettre en place des mécanises de fiabilité y Comment faire passer plusieurs connexions Transport sur une connexion Réseau reliant les stations qui supportent les processus y Multiplexage : adressage spécifique ¾ Contrairement aux apparences ce n ’est pas trivial y Le réseau peut dupliquer, perdre, désordonner des paquets y Etablissement de connexion à 2 échanges pas suffisant Exemple : Numéros de ports TCP/UDP y Solution : 3 échanges ¾ Comment une application peut connaître l ’@ transport d ’un serveur donné Requête dupliquée y Cas 1 : l ’@ transport est bien connue y Cas 2 : Utilisation d ’un serveur de nom ACK Donnée dupliquée Connexion établie à nouveau ! Donnée reçue à nouveau ! 2004-2005 35 2004-2005 36 Contrôle de flux Contrôle de congestion ¾ Possibilité de réutiliser les techniques de la couche Liaison ¾ Phénomène observable quand le réseau est surchargé y Go-back-N y Selective Repeat Accumulation de paquets en attente d’émission dans les nœuds du réseau ¾ Toutefois plus compliqué car : ⇒ Retransmission des paquets : considérés à tort ou non comme perdus! ⇒ Augmentation du trafic et dégradation des performances. y Nombre de connexions grands et variable y Délais variables → Réservation statique de mémoire (fenêtre) coûteux et inefficace ¾ On préfère utiliser des mécanismes dont y La taille de la fenêtre n ’est pas fixe Solutions proches de celles du contrôle de flux : réduction des fenêtres d’émission par exemple 2004-2005 37 2004-2005 Qualité de service 38 Qualité de service ¾ La couche Transport optimise l ’utilisation des ressources du réseau pour atteindre et maintenir la qualité de service souhaitée par les entités supérieures y La QdS = Ensemble de paramètres (délai, pertes, débit …) caractérisants les besoins des applications ¾ Quelques paramètres de QoS y le délai d’établissement de la connexion y la probabilité d’échec d’établissement de la connexion y le débit de la connexion (“throughput”) : dans chaque sens y le délai de transmission y la gigue (“jitter”) : variation du délai y La valeur des paramètres peu être négociée en fonction à Du réseau sous-jacent, des entités supérieures, des mécanismes protocolaires y le taux d’erreur résiduel y la probabilité d’incident de transfert : non respect des contraintes précédentes y la qualité de la sécurité de la connexion : niveau de protection ¾ La couche Transport joue le rôle de garant de la QdS : y la priorité relative des connexions entre-elles : dégradation des moins prioritaires y Surveillance des paramètres et notification des éventuels problèmes y la probabilité de résiliation de la connexionle délai de libération de la connexion y la probabilité d’échec de libération de la connexion ! y etc. ¾ Un contrat est ainsi déterminé entre les entités supérieures ayant demandé l’établissement de la connexion et la couche Transport. 2004-2005 39 2004-2005 40 Plan Les modèles de couche transport ¾ Introduction ¾ Spécification du protocole de couche Transport : y TP (“Transport Protocol”) : Norme ISO 8073 ou CCITT X.224 ¾ Mécanismes de la couche Transport ¾ Modèles de couche Transport ¾ 5 classes de services définies dans le modèle OSI ¾ Modèles Internet pour la couche Transport y La classe 0 ( Transfert non fiable, connexion, segmentation) y La classe 1 (0 + classe de base avec reprise sur problèmes de connexion) y La classe 2 (0 + classe avec multiplexage) y La classe 3 (1 + 2 = classe avec reprise sur pb connex. et multiplexage) y La classe 4 (3 + classe avec détection et reprise sur erreur) 2004-2005 41 2004-2005 Les Transports PDU - TPDU Plan ¾ Le format des TDPU y Entête avec partie fixe & variable (nombre d ’options variables) y Un champ de longueur données variables ¾ Introduction ¾ Mécanismes de la couche Transport ¾ Modèles de couche Transport ¾ Le protocole Transport utilise 10 types de TPDU : y Demande de connexion (“Connection request” : CR), y Confirmation de connexion (“Connection confirm” : CC), y Demande de déconnexion (“Disconnection request” : DR), y Confirmation de déconnexion (“Disconnection confirm” : DC), y Données (“Data” : DT), y Accusé de réception de données (“Data acknowledgment” : AK), y Données exprès (“Expedited data” : ED), y Accusé de réception de données exprès (“Exp. data ack” : EA), y TPDU d’erreur (“Error TPDU” : ER), y Rejet (“Reject” : RJ). 2004-2005 42 ¾ Modèles Internet pour la couche Transport 43 2004-2005 44 Modèle Internet TCP : Transmission Control Protocol ¾ Internet : 2 protocoles (TCP ou UDP) ¾ Mécanismes de TCP y Adressage / Multiplexage : à TSAP = Adresse IP + N° Port (2 octets) ¾ TCP : Transmission Control Protocol Une connexion est une paire de sockets y Orienté connexion (@src, port src, @dest, port dest) y Mode Flux & Fiable y Gestion de la fiabilité ¾ UDP : User Datagram Protocol à CRC sur entêtes et données y Sans connexion à Numérotation des données à Timers y Contrôle de flux et de congestion à Fenêtre à taille variable 2004-2005 45 2004-2005 TCP : Transmission Control Protocol 46 TCP - Transmission Control Protocol Primitive 0 10 4 16 SOCKET 31 SrcPort BIND DstPort LISTEN 0 Flags UrgPtr Checksum 1 2 SEND Emission de données 3 5 RECEIVE Attente & réception de données 4 6 CLOSE Fermeture de connexion 5 7 CONNECT AdvertisedWindow Récepteur 1 2 ACCEPT HdrLen Emetteur Annonce la capacité à accepter des connexions Bloque le receveur jusqu'à ce qu'une connexion arrive Demande d'établissement de connexion SequenceNum Acknowledgment Crée une nouveau point de communication Attache une adresse locale à la socket 3 4 Options (variable) Data 2004-2005 47 2004-2005 48 Gestion des connexions UDP : User Datagram Protocol Active participant (server) Active participant (client) Passive participant (server) S Y N, Sequ enceN u m= FIN, S Ackno wledg m ent = eque nceN u Ackno w y+1 Etablissement de connexion ledgm ent = y ¾ Mécanismes de UDP y Adressage / Multiplexage : à idem TCP m= y Gestion de la fiabilité x à CRC sur entêtes uniquement +1 t=x gm en d le w o =y Ackn Num ence u q e S FIN, x = y, Num ence u q e x+1 K, S nt = + AC dgme le SY N w o Ackn A C K, Passive participant (client) y Contrôle de flux à Aucun ! Inéquitable pour TCP ! +1 Fermeture de connexion 2004-2005 49 2004-2005 UDP Packet Format Exemple d’applications 16 0 Source Port Message Length 31 Protocoles de niveau application utilisant TCP / UDP dans l’Internet Destination Port Checksum Application Data ¾ Numéros de ports identifient l’application ¾ La longueur du message est au moins 8 octets (data peut être vide) ¾ Checksum calculé sur : TCP Mail SMTP Web HTTP RTP Vidéo RTP / UDP Transfert de fichier y Permet de vérifier la destination 51 UDP VoIP Système de fichier distribué y Entête UDP + Des données de l ’entête IP ! (@IPsrc + @Ipdst + Protocol + long.) 2004-2005 50 2004-2005 NFS FTP 52