Internet = inter-networks Concept d’interconnexion.

Slides:



Advertisements
Présentations similaires
Le Protocole TCP Chapitre 6.
Advertisements

À l’aide du sniffer Etherpeek
Le protocole de contrôle ICMP
05 – Couche 3 - Couche réseau Terme anglais = The Network Layer.
Les Réseaux Informatiques
Réseaux Informatiques
Couche réseau du modèle OSI
Département Informatique Les Réseaux Informatiques Couche Transport Protocoles UDP & TCP Laurent JEANPIERRE.
Les réseaux Ethernet. Réseaux locaux LAN Implantés dans un immeuble ou un Campus Généralement bus à « diffusion » Normalisé par le comité IEEE 802 Ethernet.
Fonctionnement interne d'un routeur (kurose p ) Eugen Dedu IUT Belfort-Montbéliard, R&T1, France avril 2009.
INFO 3020 Introduction aux réseaux d’ordinateurs Philippe Fournier-Viger Département d’informatique, U.de M. Bureau D216,
Adressage IP Page 1 L’adressage IP.
Enseignant Mr. KADRI MUSTAPHA
Le modèle TCP/IP Présentation Couche Interface-Réseau Couche Réseau
Couche 3.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Chapitre10 Prise en charge des utilisateurs distants
Rappels et présentation du réseau local
Module de gestion des tournées de livraison
Qu’est-ce un serveur de messagerie?
Communication entre Ordinateurs Rachid Kadouche 420-KEG-LG.
LAN Médias cch_ccnp.
Les réseaux filaires.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
CCNP Réseau de Campus Concepts et Modèles cch_ccnp.
Protocoles de l’internet
SNET: Administration et sécurisation des réseaux EPFC Alain Smets
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Réseau informatique Sorenza Laplume 1.
Les protocoles du Web Professeur: Tanja Dinić Étudiant:
Types et Codes de paquet ICMPv6
Master Réseaux et Systèmes Distribués (RSD)
introduction à TCP seuls certains aspects du protocole seront traités
show ip nat translations
Routage S 3 - Questionnaire N°1
Les Réseaux Informatiques
Routage S 7 - Questionnaire N°1
Chapitre 12 Surveillance des ressources et des performances
Routage S 5 - Questionnaire N°1
Proxy ARP ccnp_cch ccnp_cch.
CCNP Routage Chapitre 4 - Questionnaire N°1
Configuration NAT Utilisation de la commande outside source list
Comment fonctionne RADIUS?
Adressage IPv6 v1 CAI.
Routage S 3 - Questionnaire N°1
Wireshark Capture et analyse de trames IP
Communications via sockets
Journée départementale
Windows Server 2012 Objectifs
Couche Transport Protocoles TCP et UDP
HTTP DNS NTP FTP R231 RJ45 definition HTTP DNS NTP FTP R231 RJ45.
Protocoles réseau.
Réseaux IP Couche réseau La couche réseau est chargée de transporter les paquets tout au long d'un chemin d'une source vers la destination. Pour réaliser.
Introduction à la conception de site web
Informatique générale
Les protocoles de la couche application Chapitre 7.
Introduction aux réseaux informatique. Plan Organisation physique des réseaux Protocoles de communication Terminologie.
TP N°4 Développement d’ une application client / Serveur en utilisant les Sockets TCP.
MPR - Le concept de réseau - 06
1 CHAPITRE 4 La couche réseau PLAN L’adressage IPv4 Routage statique 1.
Formation CCNA 16 - Routage Classless VLSM/CIDR. Sommaire 1)Introduction au routage classless 2)CIDR* 3)VLSM** 4)Configuration * Classless Inter-Domain.
Introduction aux réseaux informatique IFT 6800 – E 2007 Jian-Yun Nie.
Les liaisons des données Sommaire Principe Les couches de liaison –LLC (Contrôle de Liaison Logique) –MAC (Contrôle d’Acces au Support) Mode de Communication.
ExperTeam 1 2ème Partie TCP/IP - Protocoles de base.
CONFIGURATION D’UN ROUTEUR Introduction et planification du cours  Configuration d’un routeur  Administration d’un routeur  Protocoles RIP et IGRP 
Architecture TCP/IP1 Livres disponibles à la bibliothèque (RDC) Réseaux, 3 ème édition, A.TANENBAUM, TCP/IP : Architecture, protocoles et applications,
RE161 Répartition des adresses IP Le problème de la répartition des adresses IP dans le réseau doit être résolu avec comme objectifs : –de rendre le réseau.
Dridi Lobna 1 Couche Réseau II Réseau : Gestion de l’accès.
TP N°4 Développement d’ une application
LES RESEAUX. Besoin de communication LES RESEAUX Pour communiquer via un réseau informatique Support de transmission Carte réseau Éléments de réseau.
Transcription de la présentation:

Internet = inter-networks Concept d’interconnexion

Position du Problème  le niveau Liaison de Données fournit un transfert fiable entre deux noeuds directement reliés par une ligne  BUT = Interconnexion des réseaux sur une base planétaire Les problèmes : – adressage : comment nommer les machines ? – routage : trouver un chemin au destinataire ? – fragmentation : réseaux traversés différents ? – contrôle de congestion ?

Concepts de l’interconnexion  Au départ : les réseaux interconnectés sont de nature diverse  Transparence = Les différences ne doivent pas apparaître à l'utilisateur  Données routées par des noeuds intermédiaires sans connaissance du contenu  Système hytèrogène : Possibilité de nouveaux interfaces physiques ou nouveaux protocoles sans affectation du reste

Les protocoles TCP/ IP UDPTCP IP ICMP ARPRARP EGP ETHERNET TOKEN RING C. Liaison C. Réseau C. Transport SNMP TFTP DNS Rlogin C. Application IGP NFS BOOTP SMTP FTP Telnet

Comparaison / modèle OSI FTP,TELNET,SMTP OSI TCP/IP TCP et UDP Tranport Session Application Présentation Réseau IP Application LLC.... Lisaion Physique Slip, HDLC, PPP Ethernet, Token Ring,X21, etc.

Caractéristiques d’IP  But: Acheminement de paquets IP d'une machine à une autre par des intermédiaires (Routeurs).  Mode sans connexion : Aucune garantie de résultat: possibilité de perte, de désordre dans les paquets envoyés et reçus  Réseau simple qui fait de son mieux : Best Effort  Adressage logique, indépendant du matériel (distribution supervisée des adresses)  Vraie couche réseau masquant les détails de la communication physique du réseau et détachant l’application du problème de routage

Structure d’un Paquet IP

Datagramme IP  VERS : numéro de version de protocole IP, actuellement version 4,  HLEN : longueur de l'en-tête en mots de 32 bits  Longueur totale : longueur totale du datagramme  Type de service : Comment le paquet doit être géré : Précédence DTR Inutilisé l PRECEDENCE (3 bits) : définit la priorité du datagramme; en général ignoré par les machines et passerelles (pb de congestion). l Bits D, T, R : Type d'acheminement désiré du datagramme, permettant le choix entre plusieurs routes (si elles existent) : D signifie délai court, T signifie débit élevé et R signifie grande fiabilité.

Paquet IP  Durée de vie TTL –Durée maximale de transit du datagramme sur l'internet. –Décrémentation après chaque passage dans un routeur. Quand TTL = 0, le paquet est détruit et un message d'erreur est renvoyé à l'émetteur.  Protocole Protocole de niveau supérieur dont le message est véhiculé dans le champ données du datagramme : Protocole de niveau supérieur dont le message est véhiculé dans le champ données du datagramme : – 6 : TCP, –17 : UDP, –1 : ICMP.

 Somme de contrôle de l’en-tête –Champ pour détecter les erreurs dans l'en-tête du datagramme –Contrôle d'IP porte sur l'en-tête du datagramme et non sur les données. Lors du calcul, le champ HEADER CHECKSUM contient la valeur 0 :  xxxx xxxx xxxx xxxx(VERS, HLEN, TYPE OF SERVICE)  xxxx xxxx xxxx xxxx (TOTAL LENGTH)  xxxx xxxx xxxx xxxx(ID. FLAGS, FRAGMENT OFFSET)  xxxx xxxx xxxx xxxx(TIME TO LIVE, PROTOCOL)  (HEADER CHECKSUM)  xxxx xxxx xxxx xxxx(IP SOURCE )  xxxx xxxx xxxx xxxx(IP DESTINATION) ...(OPTIONS éventuelles + PADDING

Fragmentation  Subdivision en petit paquet multiple de 8  MTU = Taille Max d’une trame Ex : Ethernet :1500 Octets, FDDI : 4470 octets Ex : Ethernet :1500 Octets, FDDI : 4470 octets

Champs de fragmentation Identification : numéro attribué à chaque fragment pour permettre le réassemblage dans le bon ordre Décalage fragment : champ permettant de connaître la position du début du fragment dans le paquet initial Longueur total : Recalculé pour chaque fragment Drapeaux : Composé de trois bits: 1 ier bit : non utilisé DF: Don't Fragment autorise ou pas la fragmentation MF: More Fragments : Fragment à suivre Si MF = 0 cela indique que ce fragment est le dernier MFDF

Exemple de Fragmentation Réseau 1 Réseau 2 Réseau 3 MTU=1500 MTU=620 P1 P2 En-tête datagramme Données 1400 octets EF1 EF2 EF3 600 octets 200 oct. En-tête fragments: MF=0; depl=1200 En-tête fragments: MF=1; depl=600 En-tête fragments: MF=1; depl=00 EF1 EF2 EF3 600 octets 200 oct. EF1 et EF2 ont le bit More (MF) positionné. Le déplacement (depl) est relatif au datagramme initial.

 OPTIONS –Champ facultatif et de longueur variable. Il concerne des fonctionnalités de mise au point. Une option est définie par un champ octet : C Numéro d’option classe d’option l copie (C) indique que l'option doit être recopiée dans tous les fragments (c=1) ou bien uniquement dans le premier fragment (c=0). l les bits classe d'option et numéro d'option indiquent le type de l'option et une option particulière de ce type :

Enregistrement de route (classe = 0, option = 7) : permet à la source de créer une liste d'adresse IP vide et de demander à chaque passerelle d'ajouter son adresse dans la liste. (classe = 0, option = 7) : permet à la source de créer une liste d'adresse IP vide et de demander à chaque passerelle d'ajouter son adresse dans la liste. code Longueur pointeur Adresse IP...

Routage strict prédéfini par l'émetteur (classe = 0, option = 9): prédéfinit le routage qui doit être utilisé dans l'interconnexion en indiquant la suite des adresses IP dans l'option : code Longueur pointeur Adresse du premier saut... Adresse du second saut u Le chemin spécifié ne tolère aucun autre intermédiaire; une erreur est retournée à l'émetteur si une passerelle ne peut appliquer le routage spécifié. u Les passerelles enregistrent successivement leur adresse à l'emplacement indiqué par le champ pointeur.

Routage lâche prédéfini par l'émetteur (classe = 0, option = 3): Cette option autorise, entre deux passages obligés, le transit par d'autres intermédiaires : (classe = 0, option = 3): Cette option autorise, entre deux passages obligés, le transit par d'autres intermédiaires : code Longueur pointeur Adresse du premier passage obligé... Adresse du second passage obligé

Horodatage (classe = 2, option = 4) : permet d'obtenir les temps de passage (timestamp) des paquets dans les routeurs. Exprimé en heure et date universelle. (classe = 2, option = 4) : permet d'obtenir les temps de passage (timestamp) des paquets dans les routeurs. Exprimé en heure et date universelle. code Longueur pointeur Première adresse IP... Premier horodatage dep.flags l Une liste de couples (adresse IP - horodatage) est réservée par l'émetteur; les passerelles ont à charge de remplir un champ lors du passage du datagramme.

–Dep = comptabilise les routeurs qui n'ont pas pu fournir les informations requises ( liste initiale était trop petite). –FLAGS indique si les routeurs doivent renseigner uniquement l'horodatage (FLAGS = 0), ou bien l'horodatage et l'adresse IP (FLAGS=1). Si les adresses IP sont prédéfinies par l'émetteur (FLAGS=3), les passerelles n'indiquent l'horodatage que si l'adresse IP pointée par le champ pointeur est identique à leur adresse IP. –Les horodatages ne donnent qu'une estimation sur le temps de passage car les horloges des machines situées sur les réseaux ne sont pas synchronisées.

Adressage  pour spécifier une machine distante, connectée à un réseau accessible  une adresse peut être : –physique : si elle correspond à une machine –logique : si elle correspond à un service, un utilisateur, susceptible de changer de machine –absolue : si il n'y a pas de relation entre localisation et adresse –Hiérarchique : dans le cas contraire.  exemples : –adressage téléphonique est hiérarchique (pays – département - central - abonné) –adressage Ethernet est absolue : attribué à la construction de la carte, indépendamment de la localisation géographique

Adresse IP  Système de communication universel : établir une méthode générale d’identification des machines.  Adressage « à plat » = connexion d’égal à égal  Adresse = 32 bits = 4 octets = 4 (entiers < 256) Exemple :  Adresse en 2 parties : –Net ID : Identifiant du réseau –Host ID : Identifiant de la "machine"  Plusieurs classes de réseaux

Classes d’adresses IP Classe A 1 … 126.H.H.H Classe B 128 … 191.N.H.H Classe C 192 … 223.N.N.H 0 Net-id 024 Host-id Net-id Host-id Net-id Host-id Multicast Classe D Réservé Classe E 10111

Adresses IP  Classe A [1.x.x.x ; 126.x.x.x] = 126 réseaux = 16,7 millions de machines / réseau  Classe B [128.x.x.x ; 191.x.x.x] 2 14 = réseaux = machines / réseau  Classe C [192.x.x. ; 223.x.x.x] 2 21 = 2 millions de réseaux = 254 machines / réseau

Adresses "spéciales"  Y.Y.0.0 : Adresse du réseau Y.Y  Y.Y : Adresse de diffusion dans le réseau Y.Y  0.0.X.X : machine X.X dans le réseau courant  : machine courante  : diffusion dans le réseau courant  Adresse de boucle locale (loopback) : 127.x.x.x  Adresses privées qui peuvent être gérées par un NAT : – à > classe A – à > classe B – à > classe C

Exemple : Adresse IP = Masque Réseau : Masque Réseau : And Adresse réseau : Adresse réseau :

Sous réseaux Principe : Avec une adresse réseau de classe A, B ou C, on peut construire plusieurs sous-réseau Pourquoi un sous réseau ? : –Limiter la consommation IP –limiter le domaine de diffusion –Optimiser les tables de routage –Séparer les machines sensibles –Le choix se fait en fonction des besoins

Sous réseaux : Mode d’emploi Dernier octet hôte S. réseau Exemple IP = Masque S. réso w.x.y.33 w.x.y.65 w.x.y.97 w.x.y.129 w.x.y.161 w.x.y.193 invalide w.x.y.62 w.x.y.94 w.x.y.126 w.x.y.158 w.x.y.190 w.x.y.222 invalide val.décimal 1 ière machine dernier octet dernière machine

Exercices  L ’adresse de l ’interface extérieure du routeur d ’accès de l ’I.A.A.I. est : / 26  Déterminer : - le masque du sous-réseau correspondant à cette notation en format xxx.xxx.xxx.xxx - l ’adresse du sous-réseau qui contient cette adresse de host - le nombre d ’adresses valides de hosts sur ce sous-réseau - la première adresse de host, la dernière et l ’adresse de broadcast

Exercices  Soit le réseau de masque La machine appartient- elle à ce réseau?  Soit le réseau de masque Nous voulons installer 60 machines… Quel masque utiliser?

Résumé: Un exemple de plan d’adressage IP Ethernet ARPANET Passerelle 1 Token-Ring Machine 1 Machine 4Machine 2Machine 3Passerelle

ARP : Résolution d’adresse  Quand une machine veut envoyer un message IP à une autre, elle doit construire une trame, par exemple Ethernet.  Elle fait appel à ARP pour récupérer MAC de la machine destination : –soit ARP possède la correspondance dans son cache : pas de requête, réponse immédiate –sinon, ARP construit une trame Ethernet source = destination = broadcast) pour demander MAC recherchée; celui qui connaît la correspondance répond.

ARP: Address Resolution Protocol  L'association adresse physique - adresse IP de l'émetteur est incluse dans la requête ARP de manière à ce que les récepteurs enregistrent l'association dans leur propre mémoire cache  Pour connaître l'adresse physique de à partir de son adresse la machine A diffuse une requête ARP qui contient vers toutes les machines; la machine B répond avec un message ARP qui contient la AYBX

ARP : Résolution d'adresse

ARP  La requête ARP est véhiculée dans un message protocolaire lui-même encapsulé dans une trame de liaison de données.  Lorsque la trame arrive à destination, la couche liaison de données détermine l'entité responsable du message encapsulé; Ex: champ type de la trame Ethernet: 0806 pour ARP  La structure du message ARP/RARP gère une association adresse de protocole / adresse physique indépendamment de l'interface physique et du protocole utilisé

Trame ARP  Encapsulée directement dans la trame Ethernet Entête EthernetMessage ARP Trame Ethernet

Structure du message ARP Type matériel utilisé (exemple : Ethernet = 1) Type de protocole niveau supérieur (exemple IP = h0800) longueur de MAC longueur de logique Opération : demande, réponse à ARP ou IP MAC source (Attention : Ethernet 6 IP MAC destination ??? 32 bits

Résolution d'une adresse IP locale

Résolution d'une adresse IP distante

RARP : Inverse de ARP Reverse Adress Resolution Protocol  Adresse physique -> adresse IP  Utilisé avec les stations diskless  BOOTP (Boot PROM) : Chargement de l'OS à partir d'un serveur  Requete RARP : Quelle est mon adresse IP ?

RARP  Le serveur (RARP) possède une base de données contenant les couples adresse physique/adresse IP,  les stations émettent une requête RARP sur le réseau, consistant à demander l'adresse IP qui est associée à leur adresse physique,  Les requêtes RARP sont propagées vers le ou les serveur(s) RARP par mécanisme de diffusion. Le(s) serveur(s) RARP réponde(nt) par un message de type RARP. ACBX Pour conaître son adresse IP, A diffuse sur le réseau, une requête RARP qui la désigne comme destinataire Les Serveurs RARP (B et C) répondent à la requête.

ICMP : Contrôle de message Internet Control Message Protocol  Rendre compte des erreurs et problèmes à l’émetteur sans les corriger: –Destination inaccessible –Contrôle de flux : Manque de réserve de mémoire –Utilisation d'une route alternative pour optimiser le trafic. –Un routeur qui détecte une erreur dans un paquet IP le détruit et délivre un message ICMP –Vérification des machines distantes : message d'écho ICMP (PING)  Message véhiculé dans un datagramme IP  Une erreur survenue à un message ICMP ne peut donner naissance à un message ICMP.

Message ICMP En-tête IP Type (8 bits) Code (8 bits) Checksum (16 bits) Message (entête + 64 bits de données) Paquet ICMP  Type indique le type d’erreur  Code indique la nature de l’erreur dans le type d’erreur spécifié  IP HEADER + FIRST 64 bits contient l’en-tête IP + les premiers 64 bits de données du datagramme pour lequel le message est émis.

Type d’erreur ICMP Type Message d’information 3 Destination inaccessible 0 Echo réponse 8 Demande d’Echo 11 Temps dépassé 13Timestamp 14 Timestamp request

Typ CodMessageSignification du message 00Demande d'ECHO Ce message est envoyé lorsqu'on utilise la commande PING. Cette commande, permettant de tester le réseau, envoie un datagramme à un destinataire et lui demande de le restituer 30destinataire inaccessibleLe réseau n'est pas accessible 31destinataire inaccessibleLa machine n'est pas accessible 32destinataire inaccessibleLe protocole n'est pas accessible 33destinataire inaccessibleLe port n'est pas accessible 34destinataire inaccessibleFragmentation nécessaire mais impossible à cause du drapeau (flag) DF 35destinataire inaccessibleLe routage a échoué 36destinataire inaccessibleRéseau inconnu 37destinataire inaccessibleMachine inconnue 38destinataire inaccessibleMachine non connectée au réseau (inutilisé) 39destinataire inaccessibleCommunication avec le réseau interdite 310destinataire inaccessibleCommunication avec la machine interdite 311destinataire inaccessibleRéseau inaccessible pour ce service 312destinataire inaccessibleMachine inaccessible pour ce service 311destinataire inaccessibleCommunication interdite (filtrage) 40Source Quench Le volume de données envoyé est trop important, le routeur envoie ce message pour prévenir qu'il sature afin de demander de réduire la vitesse de transmission 50Redirection pour un hôte Le routeur remarque que la route d'un ordinateur n'est pas optimale et envoie l'adresse du routeur à rajouter dans la table de routage de l'ordinateur 51 Redirection pour un hôte et un service donné Le routeur remarque que la route d'un ordinateur n'est pas optimale pour un service donné et envoie l'adresse du routeur à rajouter dans la table de routage de l'ordinateur 52Redirection pour un réseau Le routeur remarque que la route d'un réseau entier n'est pas optimale et envoie l'adresse du routeur à rajouter dans la table de routage des ordinateur du réseau 53 Redirection pour un réseau et un service donné Le routeur remarque que la route d'un réseau entier n'est pas optimale pour un service donné et envoie l'adresse du routeur à rajouter dans la table de routage des ordinateur du réseau 110Temps dépassé Ce message est envoyé lorsque le temps de vie d'un datagramme est dépassé. L'en-tête du datagramme est renvoyé pour que l'utilisateur sache quel datagramme a été détruit 111 Temps de réassemblage de fragment dépassé Ce message est envoyé lorsque le temps de réassemblage des fragments d'un datagramme est dépassé. 120en-tête erronéCe message est envoyé lorsqu'un champ d'un en-tête est erronné. La position de l'erreur est retournée 130Timestamp requestUne machine demande à une autre son heure et sa date système (universelle) 140Timestamp reply La machine réceptrice donne son heure et sa date système afin que la machine émettrice puisse déterminer le temps de transfert des données 150Demande d'adresse réseauCe message permet de demander au réseau une adresse IP 160réponse d'adresse réseauCe message répond au message précédent 170Demande de masque de sous-réseauCe message permet de demander au réseau un masque de sous-réseau 180réponse de masque de sous-réseauCe message répond au message précédent 170Timestamp reply La machine réceptrice donne son heure et sa date système afin que la machine émettrice puisse déterminer le temps de transfert des données

Utilisation d’ICMP pour diagnostiquer le réseau Ping : permet d’envoyer des requêtes d’écho ICMP à une adresse IP. Exemple ping Tracert :  Utilitaire de traçage d’itinéraire  permet de localiser une panne dans le réseau  envoie des requêtes ICMP (type 11) à une adresse IP en incrémentant successivement la TTL.  Exemple tracert

Ping Packet Internet Groper  ping adresse_IP | nom de machine  Utilise une requête ICMP ICMP  Utilise les couches "Accès réseau" et "Internet" TTL : Time To Live.Un paquet est toujours émis avec une durée de vie. Cette durée de vie est décrémentée à chaque nœud qui traite le paquet (d'une durée minimum d'une seconde, ou du temps qu'a mis le paquet à traverser le nœud).

Traceroute  Tracer le chemin emprunté par les datagrammes  Chemin à un instant t  Utilise ICMP ICMP

Principe de Traceroute TTL = 1 Rejet TTL = 0 TTL = 1 Rejet TTL = 0 TTL = 2 Rejet TTL = 1 Rejet TTL = 0 TTL = 2 Rejet TTL = 3 Rejet

Ping Scénario de débogage  Ping sur l'adresse de bouclage ( ) Fonctionnement correct de TCP/IP  Ping sur l'adresse de l'hôte Fonctionnement correct de l'interface réseau  Ping sur une adresse du réseau (ou du sous réseau) Problèmes de médias  Ping sur la passerelle par défaut Problèmes de masques, d'adresse de passerelle  Ping au delà de la passerelle Problèmes de routeurs  Ping avec noms de machine Configuration de DNS

Contrôle de congestion  IP étant un protocole en mode non connecté : –=> les passerelles ne peuvent réserver à l’avance la quantité de mémoire nécessaire au routage des paquets –=> des datagrammes sont alors détruits.  Une situation de congestion se produit : –lorsqu’une passerelle est connectée à deux réseaux aux débits différents –lorsque plusieurs machines émettent simultanément des paquets vers une passerelle.  Pour palier ce problème, la machine peut émettre un message ICMP de limitation de débit de la source (Source Quench) vers l’émetteur.  La source diminue le débit, puis l’augmente progressivement tant qu’elle ne reçoit pas de nouvelle demande de limitation.

Couche transport  Première couche à fonctionner de bout en bout  Délivre un message complet entre 2 machines non adjacentes  Notion de port et de socket  Contrôle d'erreurs  2 protocoles : –UDP : User Datagram Protocol Mode non connecté –TCP, RTP Mode connecté

Transport Control Protocol TCP  Mode connecté : ouverture de session avant échange  Segmentation des paquets  Remise fiable : n° de séquence, ACK  Réorganise les paquets à l’arrivée : ordre, détection et correction d’erreurs, élimination des doubles  Utilisation de crédit pour le contrôle de flux (taille d'une fenêtre de transmission)

TCP = n° de port  Numéro de port = Interface entre les Applications et IP permettant d'adresser un service applicatif  1 numéro de port par application et par protocole utilisé Multiplexage des applications  Il y a n° de port source et n° de port destinataire  Internet IP + numéro de port : Socket  Une application qui offre un service doit avoir un n° de port connu, exemple : –protocole HTTP : numéro de port 80 –protocole SMTP : numéro de port 25  Utilisateur : numéro > 1024

Ports et sockets

TCP : Segmentation TCP : Segmentation Segmentation : contrôle de flux –Les données transmises à TCP constituent un flot d'octets de longueur variable. –Si les données sont volumineuses, TCP divise ce flot d’octets en segments de taille jugée optimale par TCP. –Chaque segment est encapsulé dans un datagramme IP.

Fiabilité : Acquittement et temporisation Fiabilité : Acquittement et temporisation –IP est un protocole non fiable : Best effort –TCP garantit l'arrivée des messages : sans perte ni duplication –Les messages sont acquittés : lorsque S émet un message Mi vers une destination D, S attend un Ack de D avant d'émettre Mi+1. –Si l’Ack ne parvient pas à S au bout d'un certain temps, S considère que le message est perdu et reémet Mi : TCP : Fiabilité TCP : Fiabilité

TCP : Acquittement Source Réseau Destination Emission de Mi Temporisation armée Mi n‘est pas reçu Ack non envoyé Ack n’est pas reçu Tempo. echue Réemission de Mi Réception de Mi Emission de Ack Réception de Ack

TCP : Gestion de la temporisation Algorithme de retransmission adaptative  enregistre la date d’émission d’un segment,  enregistre la date de réception de l’ack correspondant,  Estime une durée pour le temporisateur Algorithme de Karn repose sur la constatation suivante :  En cas de retransmission d’un segment, l’émetteur ne peut savoir si l’Ack concerne le segment initial ou le segment retransmis D’où l’Algorithme : –une valeur initiale de temporisation est calculée –si une retransmission est effectuée, la temporisation est augmentée (généralement le double de la précédente, jusqu’à une valeur plafond)

Acquittement avec fenêtrage Acquittement avec fenêtrage  Pour 1 meilleure rendement → envoi de plusieurs segments numérotés.  Acquittement cumulatif portant n° du prochain segment attendu.  Fenêtre TCP = nbre d’octets que la machine peut recevoir

TCP : Fenêtre glissante Octets émis et acquittés Octets non émissibles tout de suite. Octets émis et non acquittés Octets émissibles Optimisation de la bande passante et contrôle du flux de bout en bout Régulation du trafic en fonction de la charge des routeurs et du débit des réseaux traversés Fenêtrage au niveau de l'octet

Fenêtre glissante  Les hôtes commencent l’échange avec une taille de fenêtre par défaut.  Ils augmentent ensuite progressivement cette taille si la disponibilité du réseau est suffisante.  Sinon, ils réduisent la taille de la fenêtre glissante.

Segment TCP  Segment = unité de transfert du protocole TCP, utilisé pour : –établir une connexion, –transférer les données, –émettre des acquittements, –fermer une connexion; Port sourcePort destination Numéro de séquence Numéro d’acquittement HLENréservéCodesfenêtre Checksumpointeur urgence Options éventuellespadding Données N * 32bits

Signification du Segment TCP –Port source = numéro du port émetteur –Port destination = numéro du port demandé –Numéro de séquence = n° du 1 er octet du segment émis –numéro d'acquittement = n° du prochain octet TCP attendu –réservé = non utilisé –HLEN = taille d’entête - permet de repérer le début des données dans le paquet  URG = 1 paquet urgent  ACK = 1 paquet d’accusé de réception  PSH = 1 fonctionne suivant la méthode PUSH  RST = 1 réinitialisation de la connexion  SYN = 1 numéro d'ordre synchronisé  FIN = 1 fin de connexion –Fenêtre = nombre d'octets que l'émetteur est prêt à accepter –Checksum = total de contrôle des champs d'en-tête et de données –Pointeur d'urgence = n° d’octet à partir du quel les données deviennent urgentes –Données = proviennent de la couche application –Padding : Remplissage pour avoir une longueur de 32 bits

TCP : Protocole orienté connexion  Etablissement et maintien d'une connexion entre 2 machines Hé, tu m'écoutes ? J'ai le cours réseau Je vais te l'envoyer Tu l'as reçu ? Oui, je t'écoute OK Oui, c'est bon ! Salamo alaikoum Alaikoum salam TCP Transport Control Protocol

TCP : Acquittements TCP sourceTCP destination Seq=3 Envoi de 300 octets Seq=303 Envoi de 300 octets Seq=603 Envoi de 300 octets Attente car f = 900 Attente de 303 Ack=303 Seq=303 Envoi de 300 octets Seq=603 Envoi de 300 octets Ack=903 Fenêtre=900 Segment=300 Peut être conservé ==> peut ne pas être réémis car acquitté entre temps

TCP : Problème de congestion Gestion de la congestion  La congestion correspond à la saturation de noeud(s) dans le réseau provoquant des délais d’acheminement de datagrammes jusqu‘a leurs pertes  Les extrémités ignorent tout de la congestion sauf les délais.  La retransmission peut aggraver encore le phénomène.  Lorsque le délai de transmission s’allonge, TCP réagit en réduisant le débit  En cas de congestion, un algorithme de contrôle est activé

TCP : la congestion  TCP maintient une fenêtre virtuelle de congestion  TCP applique la fenêtre d’émission suivante: –fenêtre_autorisée = min (fenêtre_récepteur, fenêtre_congestion).  Dans une situation de non congestion : – fenêtre_récepteur = fenêtre_congestion.  En cas de congestion : –TCP débute avec une fenêtre de taille = 1 –Double la taille de la fenêtre jusqu’à N/2 tant que les paquets arrivent sans problème –Puis incrémente la taille de la fenêtre de 1 après chaque Ack –En cas de problème : redémarage avec une fenêtre = 1

UDP User Datagram Protocol  Mode non orienté connexion  Pas d'ordre, pas d’ACK, pas de reprise sur erreur  => la couche application doit assurer la fiabilité.  Adapté aux données non vitales, transmissions temps réel, audio, vidéo.  Quelques protocoles qui utilisent UDP: TFTP, SNMP, DHCP, DNS

UDP : Protocole non orienté connexion  Expédition des données Je t'envoie le cours réseau Moins fiable que TCP Contrôles d'erreurs, ordonnancement + rapide UDP User Datagram Protocol

Segment UDP. Pas de champs de séquence ou d’ACK

UDP : pseudo en-tête  Lorsqu'il est utilisé, le champ de contrôle couvre plus d'informations que celles contenues dans le datagramme UDP; En effet, le checksum est calculé avec un pseudo-en-tête non transmis dans le datagramme: zéro Format du pseudo en-tête Adresse IP Source proto Longueur UDP Adresse IP Destination Le champ PROTO indique l'identificateur de protocole pour IP (17= UDP) Le champ LONGUEUR UDP spécifie la longueur du datagramme UDP sans le pseudo-en-tête.