Protocoles TCP/IP, UDP/IP –
Module Réseaux
informatiques
TARIK ZAKARIA BENMERAR, PHD
DEPARTEMENT INSTRUMENTATION ET AUTOMATIQUE, USTHB
Architecture d’un réseau informatique
 Les protocoles TCP, UDP et IP sont les principaux
protocoles au niveau réseaux et transport permettant à
internet d’exister.
Couche IP
Adresse IP
 Permet d’identifier une machine dans le réseau local ou internet. Au niveau
internet, les adresses sont attribuées par ICANN (Internet Corporation for
Assigned Names and Numbers).
 Taille de l’adresse IPV4 : 32 bits (4 octets). Représentation en décimal : X.W.Y.Z.
 Chaque adresse IP est décomposée de deux champs :
 Identifiant de réseau : Identifiant du réseau ip, utilisé dans le routage.
 Identifiant de machine : Identifiant de la machine dans le réseau IP.
4 octets
Couche IP
Classification des Adresses IP
4 octets
A
B
C
D
E
1.0.0.0 – 127.255.255.255
128.0.0.0 – 191.255.255.255
192.0.0.0 – 223.255.255.255
224.0.0.0 – 239.255.255.255
240.0.0.0 – 247.255.255.255
Couche IP
 Diffusion local et distante :
 255.255.255.255.
 (ID de réseau) + (111…111) : adresse de broadcast vers le réseau avec ID (ID de réseau).
 Rebouclage local : 127.x.y.z.
 Généralement 127.0.0.1, appelé localhost.
 Elle permet de tester le TCP/IP local sans utiliser l’interface matérielle.
 Adresse 0.0.0.0 :
 Utilisé dans le protocole RARP.
 Adresse de la route par défaut dans les routeurs.
Adresses IP spéciales
Couche IP
Sous-réseaux
 On peut décomposer un réseau d’envergure en des
sous-réseaux :
 Limiter la propagation des broadcasts.
 Les routeurs sont utilisés pour faire communiquer des
hôtes sur des sous réseaux différents.
Couche IP
Sous-réseaux
 Une partie des bits de l’identifiant dans la machine sur réseau
est utilisé pour l’identification du sous réseau.
 Cette information est indiquée par le masque sous réseau.
Couche IP
Sous-réseaux
 La classe d’adressage permet de savoir si les deux machines sont sur le même réseau.
 Le masque réseau permet de savoir si les deux machines sont sur le même sous-réseau.
Adresse Source Adresse Destination
Masque Réseau Masque Réseau
Adresse Sous-réseau Destination
Adresse Sous-réseau Source
ET logique
ET logique
Couche IP
Sous-réseaux
 192.168.1.0 ≠ 192.168.2.0.
 Les deux hôtes sont dans des sous-réseaux différents.
11000000.10101000.00000001.00000010 11000000.10101000.00000010.00000010
11111111.11111111.11111111.00000000 11111111.11111111.11111111.00000000
192 168 1 2 192 168 2 2
255 255 255 0 255 255 255 0
11000000.10101000.00000001.00000000
11000000.10101000.00000001.00000000
11000000.10101000.00000010.00000000
192 168 1 0 192 168 2 0
Adresse Source Adresse Destination
Masque réseau
Masque réseau
Sous-réseau
Source
Sous-réseau
Destination
ET logique
ET logique
Exemple de calcul
Couche IP
Format d’un datagramme IP
 Version (4bits) : La version
d’IP utilisée. 4 pour IPV4.
Couche IP
Format d’un datagramme IP
 Longueur d’entête (4bits) :
Longueur d'En-Tête en nombre
de mots de 32 bits.
Couche IP
Format d’un datagramme IP
 Type de service (8bits) : Qualité
de service.
 Priorité (3bits) : Il indique la priorité que
possède le paquet. 000
– Routine, 001 – Prioritaire, 010 –
Immédiat, 011 – Urgent, 100 –
Très Urgent, 101 – Critique, 110
– Supervision Interconnexion,
111 – Supervision réseau.
 Délai (1bit): Il indique l’importance du délai
d’acheminement du paquet.
0 – Normal, 1- Bas.
 Débit (1bit): Il indique l’importance du débit
acheminé. 0
– Normal, 1- Haut.
 Fiabilité (1bit): Il indique l’importance de la
qualité du paquet. 0
– Normal, 1- Haut.
 Coût (1bit): Il indique le coût du paquet. 0 –
Normal, 1- Haut.
 MBZ (1bit): il doit être mis à 0.
Couche IP
Format d’un datagramme IP
 Longueur totale (16bits) :
taille (entête + données) en
octet.
Couche IP
Format d’un datagramme IP
 Identification (16bits) : id des
fragments d'un même paquet.
Couche IP
Format d’un datagramme IP
 Flags (3bits) : Indicateurs de
fragmentation.
 Bit 0 : réservé, doit être à zéro.
 Bit 1 : (AF) 0 = Fragmentation
possible, 1 = Non fractionnable.
 Bit 2 : 0 = Dernier fragment, 1 =
Fragment intermédiaire.
Couche IP
Format d’un datagramme IP
 Déplacement (13bits) :
Position du fragment par
rapport au paquet de départ, en
nombre de mots de 8 octets.
Couche IP
Format d’un datagramme IP
 Durée de vie (TTL) (8 bits) : du
paquet dans le réseau.
Couche IP
Format d’un datagramme IP
 Protocole (8 bits) : type du
protocole de niveau supérieur.
 1 : ICMP.
 17 : UDP.
 6 : TCP.
Couche IP
Format d’un datagramme IP
 Somme de contrôle entête
(16 bits) : code de contrôle
d’erreur pour l’entête.
Couche IP
Format d’un datagramme IP
 Adresse source (32 bits) : IP
de la machine source.
Couche IP
Format d’un datagramme IP
 Adresse destination (32 bits) :
IP de la machine destination.
Couche IP
Format d’un datagramme IP
 Options (0- 40 octets) :
Facultatif, permet de
personnaliser encore plus le
l’entête IP.
Couche IP
Format d’un datagramme IP
 Bourrage : De taille variable
comprise entre 0 et 7 bits. Il
permet de combler avec des
bits à 0 le champ option afin
d’obtenir une entête IP multiple
de 32 bits.
Couche IP
Format d’un datagramme IP
 Données : Données de la
couche supérieure (TCP, UDP,
ICMP, etc.).
Couche IP
 Le standard spécifie une taille maximale 216 – 1 = 65535.
 Un réseau peut enforcer sa taille maximale à travers le MTU (Maximum Transfer
Unit).
 Le datagramme IP doit être fragmenté pour être transmis sur le réseau.
Fragmentation des datagrammes IP
Introduction
Couche IP
Fragmentation des datagrammes IP
Exemple
Couche IP
Fragmentation des datagrammes IP
Exemple
Couche IP
Fragmentation des datagrammes IP
Exemple
Fragment 1
Couche IP
Fragmentation des datagrammes IP
Exemple
Fragment 2
Couche IP
Fragmentation des datagrammes IP
Exemple
Fragment 2
Couche IP
Fragmentation des datagrammes IP
Exemple
Couche IP
 ARP (Address Resolution Protocol) est un protocole réseau qui permet à un hôte
de connaitre l’adresse physique (e.g. MAC) associée à une adresse logique (e.g.
IPV4).
 Il est utilisé pour connaitre vers quel hôte du réseau physique un paquet IP doit
être envoyé.
Protocole ARP
Couche IP
Protocole ARP
Paquet ARP
Couche IP
Protocole ARP
@MAC: 00-0d-88-c7-9a-24
@IP: 10.10.0.5
@MAC: 00-08-a3-b6-ce-04
@IP: 10.10.0.2
@MAC: 00-0d-56-09-fb-d1
@IP: 10.10.0.3
@MAC: 00-12-3f-d4-6d-1b
@IP: 10.10.0.4
Cache ARP
1. Le routeur consulte sa table de
correspondance IP->MAC pour
l’adresse 10.0.0.2
Couche IP
Protocole ARP
@MAC: 00-0d-88-c7-9a-24
@IP: 10.10.0.5
@MAC: 00-08-a3-b6-ce-04
@IP: 10.10.0.2
@MAC: 00-0d-56-09-fb-d1
@IP: 10.10.0.3
@MAC: 00-12-3f-d4-6d-1b
@IP: 10.10.0.4
Cache ARP
@MAC: 00-0b-63-d7-9d-54
@IP: 10.10.0.1
2. A émet une requête ARP (contenant l'@IP
10.10.0.2) en broadcast.
3. A, B, C et D comparent cette adresse
logique à la leur
Couche IP
Protocole ARP
@MAC: 00-0d-88-c7-9a-24
@IP: 10.10.0.5
@MAC: 00-08-a3-b6-ce-04
@IP: 10.10.0.2
@MAC: 00-0d-56-09-fb-d1
@IP: 10.10.0.3
@MAC: 00-12-3f-d4-6d-1b
@IP: 10.10.0.4
Cache ARP
@MAC: 00-0b-63-d7-9d-54
@IP: 10.10.0.1
4. B répond en envoyant son
adresse MAC
Couche IP
Protocole ARP
@MAC: 00-0d-88-c7-9a-24
@IP: 10.10.0.5
@MAC: 00-08-a3-b6-ce-04
@IP: 10.10.0.2
@MAC: 00-0d-56-09-fb-d1
@IP: 10.10.0.3
@MAC: 00-12-3f-d4-6d-1b
@IP: 10.10.0.4
Cache ARP
4. Le routeur mis à jour son cache ARP.
5. Les paquets IPs à destination de 10.10.0.2 sont à envoyés
à l’@ physique de B dans la trame Ethernet.
Couche IP
 ICMP - Internet Control and Error Message Protocol permet le contrôle d’erreur de
transmission (e.g. Inaccessibilité de la machine ou du réseau)
 Le protocole IP ne permet que l’envoi de données et c’est ICMP qui permet à un
hôte de savoir s’il y’a une erreur de transmission de son paquet.
 ICMP permet aussi de vérifier l’accessibilité à un réseau ou une machine à travers
la requête ECHO (utilisé par l’utilitaire ping).
Protocole ICMP
Couche IP
 Le routage est un mécanismes par lequel les données d’un hôte émetteur sont
acheminées à destination.
 La fonction de routage est accomplie par un routeur.
 Il permet de choisir le chemin que les datagrammes IP doivent emprunter.
 Le routeur possède plusieurs cartes réseau qui sont reliées à des réseaux différents.
 Une table de routage est utilisée pour définir le chemin à emprunter pour une adresse
destination donnée.
Routage
Couche IP
Routage
Exemple
Destination Masque Réseau Passerelle Interface Coût
192.168.1.0 255.255.255.0 - 192.168.1.1 0
192.168.2.0 255.255.255.0 - 192.168.2.1 0
192.168.3.0 255.255.255.0 192.168.2.2 192.168.2.1 1
Table de routage de R1
.1
Couche Transport
 La couche transport permet de créer une liaison de
communication logique entre des applications qui
s’exécutent dans des hôtes distants.
 Les protocoles de la couche transport s’exécutent aux
extrémités du réseau.
Services et protocoles de la couche
Couche Transport
 Dans la couche transport, le numéro de port permet de multiplexer à l’envoi et de
démultiplexer à la réception les données à destination d’application différentes
derrière la même adresse IP.
 Dans l’exemple, P1 et P2 utilise des ports différents qui permettent de recevoir les
données de P3 et P4 selon le port destination dans le paquet de la couche
transport.
Multiplexage/Démultiplexage et les ports
Couche Transport
 UDP est un protocole de la couche transport :
 Sans délai de connexion.
 Simple et plus rapide.
 Pas de gestion des pertes de données à l’inverse du TCP. L’application doit ajouter des mécanismes pour
compenser.
 UDP est souvent utilisé pour les applications multimédias (streaming audio/vidéo).
 Tolérant aux pertes.
 Sensible au débit.
Protocole UDP
Introduction
Couche Transport
Protocole UDP
Paquet UDP
 Port source : Numéro de port de
l’application émettrice du paquet.
 Port destination : Numéro de port de
l’application destinataire.
 Longueur : Longueur entête + Données.
 Minimum 8 octets.
 Maximum 65 535.
 Somme de contrôle : code contrôle des
erreurs.
Couche Transport
 TCP est un protocole de la couche transport :
 Réception garantie des données.
 Réémission des données en cas d’erreurs.
 Réassemblage des données transmises dans différentes segments TCP dans le bon
ordre.
 Contrôle du flot de données pour ne pas saturer le réseau.
 Communication en mode connecté.
 Ouverture d’un canal.
 Communication Full-Duplex.
 Fermeture du canal.
Protocole TCP
Introduction
Couche Transport
 Port Source (2 octets) : Numéro de
port de l'application émettrice.
Protocole TCP
Paquet TCP
Couche Transport
Protocole TCP
Paquet TCP
 Port Destination (2 octets) : Numéro
de port de l'application réceptrice.
Couche Transport
Protocole TCP
Paquet TCP
 Numéro de Séquence (NS) (4 octets)
: Position du premier octet du segment
à transmettre. Si le flag SYN = 1, NS =
ISN (Initial Sequence Number) ou le
numéro de séquence initial.
Couche Transport
Protocole TCP
Paquet TCP
 Numéro de Séquence acquitté (NR)
(4 octets) : Numéro du prochain octet
attendu.
Couche Transport
Protocole TCP
Paquet TCP
 Longueur entête (LET) (4 bits) :
Longueur de l'en-tête en multiple de 4
octets.
Couche Transport
Protocole TCP
Paquet TCP
 Réservé (6 bits) : Champ réservé.
Couche Transport
Protocole TCP
Paquet TCP
 Flag URG : Si 1, le paquet doit être géré
de façon urgente (Utilisé conjointement
avec le pointeur d’urgence).
Couche Transport
Protocole TCP
Paquet TCP
 Flag ACK : Si 1, le paquet est un accusé
de réception. Le champ NR
représentera le numéro de séquence
attendu après ceux acquittés.
Couche Transport
Protocole TCP
Paquet TCP
 Flag PSH : Si 1, les données collectées
doivent être transmises à l’application
sans attendre les données qui suivent.
Couche Transport
Protocole TCP
Paquet TCP
 Flag RST : Si 1, la connexion est
réinitialisée.
Couche Transport
Protocole TCP
Paquet TCP
 Flag SYN : Si 1, il indique une demande
d'établissement de connexion.
Couche Transport
Protocole TCP
Paquet TCP
 Flag FIN : Si 1, il indique la fin de
connexion.
Couche Transport
Protocole TCP
Paquet TCP
 Taille fenêtre (2 octets) : Le nombre
d’octets que le récepteur peut recevoir
sans acquittement.
Couche Transport
Protocole TCP
Paquet TCP
 Somme de contrôle entête (2 octets)
: Il permet de vérifier l’intégrité de
l’entête.
Couche Transport
Protocole TCP
Paquet TCP
 Pointeur d’urgence (2 octets) : Il
indique combien de données du
segment, à partir du premier octet sont
urgentes (Utilisé conjointement avec le
flag URG).
Couche Transport
Protocole TCP
Paquet TCP
 Options (0- 40 octets) : Facultatif,
permet de personnaliser encore plus le
l’entête TCP.
Couche Transport
Protocole TCP
Paquet TCP
 Bourrage : De taille variable comprise
entre 0 et 7 bits. Il permet de combler
avec des bits à 0 le champ option afin
d’obtenir une entête TCP multiple de 32
bits.
Couche Transport
Protocole TCP
Paquet TCP
 Données : Données de la couche
supérieure.
Couche Transport
 A est le client et B le serveur.
 Les ports TCPs ouverts.
 Application sur le serveur à l’écoute.
 Application sur le client fait une requête.
Protocole TCP
Etablissement de connexion
Couche Transport
 Client : Demande de connexion.
 SYN = 1, ACK = 0, ISNclient = x (Séquence initiale
aléatoire du client).
Protocole TCP
Etablissement de connexion
Couche Transport
Protocole TCP
Etablissement de connexion
 Serveur : Acceptation de la connexion.
 SYN = 1, ACK = 1, NRclient = x+1, ISNserveur = y
(Séquence initiale aléatoire du serveur).
Couche Transport
Protocole TCP
Etablissement de connexion
 Client : Accusé de réception.
 SYN = 0, ACK = 1, NRserveur = y+1.
Couche Transport
 Après l’établissement de la connexion, les
application client et serveur communiquent en full
duplex, ils envoyer et recevoir des données.
Protocole TCP
Transfert des données
Couche Transport
 L’application client envoi 10 octets et acquitte la
réception jusqu’au numéro de séquence 202.
Protocole TCP
Transfert des données
Envoi de
10 Octets
Couche Transport
Protocole TCP
Transfert des données
Envoi de
20 Octets
 L’application serveur envoi 20 octets et acquitte la réception
des 10 octets jusqu’au numéro de séquence 65.
Couche Transport
Protocole TCP
Transfert des données
Envoi de
10 Octets
 L’application client envoi 10 octets et acquitte la réception
des 20 octets jusqu’au numéro de séquence 222.
Couche Transport
Protocole TCP
Transfert des données
Envoi de
2 Octets
 L’application serveur envoi 2 octets et acquitte la réception
des 20 octets jusqu’au numéro de séquence 75.
Couche Transport
Protocole TCP
Fiabilité des transferts
 Dans le protocole TCP, les pertes de segments sont
détectées par absence d’acquittement positif après un
timeout.
Couche Transport
Protocole TCP
Fiabilité des transferts
 L’application A émet 8 octets de données.
Couche Transport
Protocole TCP
Fiabilité des transferts
 L’acquittement de l’application B est perdu dans le réseau.
Couche Transport
Protocole TCP
Fiabilité des transferts
 Après un timeout pour la réception d’un acquittement,
l’application A suppose que B n’a pas reçu le segment TCP
et le renvoi.
Couche Transport
Protocole TCP
Fiabilité des transferts
 l’application A reçoit cette fois-ci l’acquittement. Ainsi, la fiabilité
du transfert du segment est garantie.
Couche Transport
Protocole TCP
Fiabilité des transferts
 l’application A reçoit cette fois-ci l’acquittement. Ainsi, la fiabilité
du transfert du segment est garantie.
Couche Transport
Protocole TCP
Fin de connexion
 L’application A ou B peut décider de mettre fin à la conversation.
Couche Transport
Protocole TCP
Fin de connexion
 A demande la fin de connexion
 FIN=1.
Couche Transport
Protocole TCP
Fin de connexion
 L’application B acquitte la demande de l’application A.
 ACK = 1, NRA = x + 1
Couche Transport
Protocole TCP
Fin de connexion
 Après que l’application B ait envoyé ses données en attente et
reçoit l’acquittement, il demande la fin de la connexion.
 FIN=1
Couche Transport
Protocole TCP
Fin de connexion
 L’application A acquitte la fin de la connexion.
 ACK = 1, NRB = y + 1
Couche Transport
 Sans contrôle du flux TCP, il y’a gaspillage de la bande passante :
 Envoi de données excessives.
 Attente excessive pour la confirmation de la réception des données.
Protocole TCP
Fenêtre glissante
Couche Transport
 L’application B a acquitté jusqu’au numéro de
séquence 44.
 Comme la taille de la fenêtre est 4, A ne peut
envoyer que 4 octets de segments TCPs sans
acquittement.
Protocole TCP
Fenêtre glissante
Dernier numéro de
séquence acquitté
Couche Transport
 L’application A envoi une donnée avec le
numéro de séquence 45 (inclut dans la fenêtre
actuelle).
Protocole TCP
Fenêtre glissante
Couche Transport
Protocole TCP
Fenêtre glissante
 L’application A envoi une donnée avec le
numéro de séquence 46 (inclut dans la fenêtre
actuelle).
Couche Transport
Protocole TCP
Fenêtre glissante
 L’application A envoi une donnée avec le
numéro de séquence 47 (inclut dans la fenêtre
actuelle).
Couche Transport
Protocole TCP
Fenêtre glissante
 L’application A envoi une donnée avec le
numéro de séquence 48 (inclut dans la fenêtre
actuelle).
Couche Transport
Protocole TCP
Fenêtre glissante
 L’application A a épuisé la fenêtre et attend
l’acquittement de l’application B pour envoyer
des données à nouveau.
Couche Transport
Protocole TCP
Fenêtre glissante
 L’application A envoi une donnée avec le
numéro de séquence 49 qui est inclut dans la
nouvelle fenêtre.

Chapitre 6 - Protocoles TCP/IP, UDP/IP

  • 1.
    Protocoles TCP/IP, UDP/IP– Module Réseaux informatiques TARIK ZAKARIA BENMERAR, PHD DEPARTEMENT INSTRUMENTATION ET AUTOMATIQUE, USTHB
  • 2.
    Architecture d’un réseauinformatique  Les protocoles TCP, UDP et IP sont les principaux protocoles au niveau réseaux et transport permettant à internet d’exister.
  • 3.
    Couche IP Adresse IP Permet d’identifier une machine dans le réseau local ou internet. Au niveau internet, les adresses sont attribuées par ICANN (Internet Corporation for Assigned Names and Numbers).  Taille de l’adresse IPV4 : 32 bits (4 octets). Représentation en décimal : X.W.Y.Z.  Chaque adresse IP est décomposée de deux champs :  Identifiant de réseau : Identifiant du réseau ip, utilisé dans le routage.  Identifiant de machine : Identifiant de la machine dans le réseau IP. 4 octets
  • 4.
    Couche IP Classification desAdresses IP 4 octets A B C D E 1.0.0.0 – 127.255.255.255 128.0.0.0 – 191.255.255.255 192.0.0.0 – 223.255.255.255 224.0.0.0 – 239.255.255.255 240.0.0.0 – 247.255.255.255
  • 5.
    Couche IP  Diffusionlocal et distante :  255.255.255.255.  (ID de réseau) + (111…111) : adresse de broadcast vers le réseau avec ID (ID de réseau).  Rebouclage local : 127.x.y.z.  Généralement 127.0.0.1, appelé localhost.  Elle permet de tester le TCP/IP local sans utiliser l’interface matérielle.  Adresse 0.0.0.0 :  Utilisé dans le protocole RARP.  Adresse de la route par défaut dans les routeurs. Adresses IP spéciales
  • 6.
    Couche IP Sous-réseaux  Onpeut décomposer un réseau d’envergure en des sous-réseaux :  Limiter la propagation des broadcasts.  Les routeurs sont utilisés pour faire communiquer des hôtes sur des sous réseaux différents.
  • 7.
    Couche IP Sous-réseaux  Unepartie des bits de l’identifiant dans la machine sur réseau est utilisé pour l’identification du sous réseau.  Cette information est indiquée par le masque sous réseau.
  • 8.
    Couche IP Sous-réseaux  Laclasse d’adressage permet de savoir si les deux machines sont sur le même réseau.  Le masque réseau permet de savoir si les deux machines sont sur le même sous-réseau. Adresse Source Adresse Destination Masque Réseau Masque Réseau Adresse Sous-réseau Destination Adresse Sous-réseau Source ET logique ET logique
  • 9.
    Couche IP Sous-réseaux  192.168.1.0≠ 192.168.2.0.  Les deux hôtes sont dans des sous-réseaux différents. 11000000.10101000.00000001.00000010 11000000.10101000.00000010.00000010 11111111.11111111.11111111.00000000 11111111.11111111.11111111.00000000 192 168 1 2 192 168 2 2 255 255 255 0 255 255 255 0 11000000.10101000.00000001.00000000 11000000.10101000.00000001.00000000 11000000.10101000.00000010.00000000 192 168 1 0 192 168 2 0 Adresse Source Adresse Destination Masque réseau Masque réseau Sous-réseau Source Sous-réseau Destination ET logique ET logique Exemple de calcul
  • 10.
    Couche IP Format d’undatagramme IP  Version (4bits) : La version d’IP utilisée. 4 pour IPV4.
  • 11.
    Couche IP Format d’undatagramme IP  Longueur d’entête (4bits) : Longueur d'En-Tête en nombre de mots de 32 bits.
  • 12.
    Couche IP Format d’undatagramme IP  Type de service (8bits) : Qualité de service.  Priorité (3bits) : Il indique la priorité que possède le paquet. 000 – Routine, 001 – Prioritaire, 010 – Immédiat, 011 – Urgent, 100 – Très Urgent, 101 – Critique, 110 – Supervision Interconnexion, 111 – Supervision réseau.  Délai (1bit): Il indique l’importance du délai d’acheminement du paquet. 0 – Normal, 1- Bas.  Débit (1bit): Il indique l’importance du débit acheminé. 0 – Normal, 1- Haut.  Fiabilité (1bit): Il indique l’importance de la qualité du paquet. 0 – Normal, 1- Haut.  Coût (1bit): Il indique le coût du paquet. 0 – Normal, 1- Haut.  MBZ (1bit): il doit être mis à 0.
  • 13.
    Couche IP Format d’undatagramme IP  Longueur totale (16bits) : taille (entête + données) en octet.
  • 14.
    Couche IP Format d’undatagramme IP  Identification (16bits) : id des fragments d'un même paquet.
  • 15.
    Couche IP Format d’undatagramme IP  Flags (3bits) : Indicateurs de fragmentation.  Bit 0 : réservé, doit être à zéro.  Bit 1 : (AF) 0 = Fragmentation possible, 1 = Non fractionnable.  Bit 2 : 0 = Dernier fragment, 1 = Fragment intermédiaire.
  • 16.
    Couche IP Format d’undatagramme IP  Déplacement (13bits) : Position du fragment par rapport au paquet de départ, en nombre de mots de 8 octets.
  • 17.
    Couche IP Format d’undatagramme IP  Durée de vie (TTL) (8 bits) : du paquet dans le réseau.
  • 18.
    Couche IP Format d’undatagramme IP  Protocole (8 bits) : type du protocole de niveau supérieur.  1 : ICMP.  17 : UDP.  6 : TCP.
  • 19.
    Couche IP Format d’undatagramme IP  Somme de contrôle entête (16 bits) : code de contrôle d’erreur pour l’entête.
  • 20.
    Couche IP Format d’undatagramme IP  Adresse source (32 bits) : IP de la machine source.
  • 21.
    Couche IP Format d’undatagramme IP  Adresse destination (32 bits) : IP de la machine destination.
  • 22.
    Couche IP Format d’undatagramme IP  Options (0- 40 octets) : Facultatif, permet de personnaliser encore plus le l’entête IP.
  • 23.
    Couche IP Format d’undatagramme IP  Bourrage : De taille variable comprise entre 0 et 7 bits. Il permet de combler avec des bits à 0 le champ option afin d’obtenir une entête IP multiple de 32 bits.
  • 24.
    Couche IP Format d’undatagramme IP  Données : Données de la couche supérieure (TCP, UDP, ICMP, etc.).
  • 25.
    Couche IP  Lestandard spécifie une taille maximale 216 – 1 = 65535.  Un réseau peut enforcer sa taille maximale à travers le MTU (Maximum Transfer Unit).  Le datagramme IP doit être fragmenté pour être transmis sur le réseau. Fragmentation des datagrammes IP Introduction
  • 26.
    Couche IP Fragmentation desdatagrammes IP Exemple
  • 27.
    Couche IP Fragmentation desdatagrammes IP Exemple
  • 28.
    Couche IP Fragmentation desdatagrammes IP Exemple Fragment 1
  • 29.
    Couche IP Fragmentation desdatagrammes IP Exemple Fragment 2
  • 30.
    Couche IP Fragmentation desdatagrammes IP Exemple Fragment 2
  • 31.
    Couche IP Fragmentation desdatagrammes IP Exemple
  • 32.
    Couche IP  ARP(Address Resolution Protocol) est un protocole réseau qui permet à un hôte de connaitre l’adresse physique (e.g. MAC) associée à une adresse logique (e.g. IPV4).  Il est utilisé pour connaitre vers quel hôte du réseau physique un paquet IP doit être envoyé. Protocole ARP
  • 33.
  • 34.
    Couche IP Protocole ARP @MAC:00-0d-88-c7-9a-24 @IP: 10.10.0.5 @MAC: 00-08-a3-b6-ce-04 @IP: 10.10.0.2 @MAC: 00-0d-56-09-fb-d1 @IP: 10.10.0.3 @MAC: 00-12-3f-d4-6d-1b @IP: 10.10.0.4 Cache ARP 1. Le routeur consulte sa table de correspondance IP->MAC pour l’adresse 10.0.0.2
  • 35.
    Couche IP Protocole ARP @MAC:00-0d-88-c7-9a-24 @IP: 10.10.0.5 @MAC: 00-08-a3-b6-ce-04 @IP: 10.10.0.2 @MAC: 00-0d-56-09-fb-d1 @IP: 10.10.0.3 @MAC: 00-12-3f-d4-6d-1b @IP: 10.10.0.4 Cache ARP @MAC: 00-0b-63-d7-9d-54 @IP: 10.10.0.1 2. A émet une requête ARP (contenant l'@IP 10.10.0.2) en broadcast. 3. A, B, C et D comparent cette adresse logique à la leur
  • 36.
    Couche IP Protocole ARP @MAC:00-0d-88-c7-9a-24 @IP: 10.10.0.5 @MAC: 00-08-a3-b6-ce-04 @IP: 10.10.0.2 @MAC: 00-0d-56-09-fb-d1 @IP: 10.10.0.3 @MAC: 00-12-3f-d4-6d-1b @IP: 10.10.0.4 Cache ARP @MAC: 00-0b-63-d7-9d-54 @IP: 10.10.0.1 4. B répond en envoyant son adresse MAC
  • 37.
    Couche IP Protocole ARP @MAC:00-0d-88-c7-9a-24 @IP: 10.10.0.5 @MAC: 00-08-a3-b6-ce-04 @IP: 10.10.0.2 @MAC: 00-0d-56-09-fb-d1 @IP: 10.10.0.3 @MAC: 00-12-3f-d4-6d-1b @IP: 10.10.0.4 Cache ARP 4. Le routeur mis à jour son cache ARP. 5. Les paquets IPs à destination de 10.10.0.2 sont à envoyés à l’@ physique de B dans la trame Ethernet.
  • 38.
    Couche IP  ICMP- Internet Control and Error Message Protocol permet le contrôle d’erreur de transmission (e.g. Inaccessibilité de la machine ou du réseau)  Le protocole IP ne permet que l’envoi de données et c’est ICMP qui permet à un hôte de savoir s’il y’a une erreur de transmission de son paquet.  ICMP permet aussi de vérifier l’accessibilité à un réseau ou une machine à travers la requête ECHO (utilisé par l’utilitaire ping). Protocole ICMP
  • 39.
    Couche IP  Leroutage est un mécanismes par lequel les données d’un hôte émetteur sont acheminées à destination.  La fonction de routage est accomplie par un routeur.  Il permet de choisir le chemin que les datagrammes IP doivent emprunter.  Le routeur possède plusieurs cartes réseau qui sont reliées à des réseaux différents.  Une table de routage est utilisée pour définir le chemin à emprunter pour une adresse destination donnée. Routage
  • 40.
    Couche IP Routage Exemple Destination MasqueRéseau Passerelle Interface Coût 192.168.1.0 255.255.255.0 - 192.168.1.1 0 192.168.2.0 255.255.255.0 - 192.168.2.1 0 192.168.3.0 255.255.255.0 192.168.2.2 192.168.2.1 1 Table de routage de R1 .1
  • 41.
    Couche Transport  Lacouche transport permet de créer une liaison de communication logique entre des applications qui s’exécutent dans des hôtes distants.  Les protocoles de la couche transport s’exécutent aux extrémités du réseau. Services et protocoles de la couche
  • 42.
    Couche Transport  Dansla couche transport, le numéro de port permet de multiplexer à l’envoi et de démultiplexer à la réception les données à destination d’application différentes derrière la même adresse IP.  Dans l’exemple, P1 et P2 utilise des ports différents qui permettent de recevoir les données de P3 et P4 selon le port destination dans le paquet de la couche transport. Multiplexage/Démultiplexage et les ports
  • 43.
    Couche Transport  UDPest un protocole de la couche transport :  Sans délai de connexion.  Simple et plus rapide.  Pas de gestion des pertes de données à l’inverse du TCP. L’application doit ajouter des mécanismes pour compenser.  UDP est souvent utilisé pour les applications multimédias (streaming audio/vidéo).  Tolérant aux pertes.  Sensible au débit. Protocole UDP Introduction
  • 44.
    Couche Transport Protocole UDP PaquetUDP  Port source : Numéro de port de l’application émettrice du paquet.  Port destination : Numéro de port de l’application destinataire.  Longueur : Longueur entête + Données.  Minimum 8 octets.  Maximum 65 535.  Somme de contrôle : code contrôle des erreurs.
  • 45.
    Couche Transport  TCPest un protocole de la couche transport :  Réception garantie des données.  Réémission des données en cas d’erreurs.  Réassemblage des données transmises dans différentes segments TCP dans le bon ordre.  Contrôle du flot de données pour ne pas saturer le réseau.  Communication en mode connecté.  Ouverture d’un canal.  Communication Full-Duplex.  Fermeture du canal. Protocole TCP Introduction
  • 46.
    Couche Transport  PortSource (2 octets) : Numéro de port de l'application émettrice. Protocole TCP Paquet TCP
  • 47.
    Couche Transport Protocole TCP PaquetTCP  Port Destination (2 octets) : Numéro de port de l'application réceptrice.
  • 48.
    Couche Transport Protocole TCP PaquetTCP  Numéro de Séquence (NS) (4 octets) : Position du premier octet du segment à transmettre. Si le flag SYN = 1, NS = ISN (Initial Sequence Number) ou le numéro de séquence initial.
  • 49.
    Couche Transport Protocole TCP PaquetTCP  Numéro de Séquence acquitté (NR) (4 octets) : Numéro du prochain octet attendu.
  • 50.
    Couche Transport Protocole TCP PaquetTCP  Longueur entête (LET) (4 bits) : Longueur de l'en-tête en multiple de 4 octets.
  • 51.
    Couche Transport Protocole TCP PaquetTCP  Réservé (6 bits) : Champ réservé.
  • 52.
    Couche Transport Protocole TCP PaquetTCP  Flag URG : Si 1, le paquet doit être géré de façon urgente (Utilisé conjointement avec le pointeur d’urgence).
  • 53.
    Couche Transport Protocole TCP PaquetTCP  Flag ACK : Si 1, le paquet est un accusé de réception. Le champ NR représentera le numéro de séquence attendu après ceux acquittés.
  • 54.
    Couche Transport Protocole TCP PaquetTCP  Flag PSH : Si 1, les données collectées doivent être transmises à l’application sans attendre les données qui suivent.
  • 55.
    Couche Transport Protocole TCP PaquetTCP  Flag RST : Si 1, la connexion est réinitialisée.
  • 56.
    Couche Transport Protocole TCP PaquetTCP  Flag SYN : Si 1, il indique une demande d'établissement de connexion.
  • 57.
    Couche Transport Protocole TCP PaquetTCP  Flag FIN : Si 1, il indique la fin de connexion.
  • 58.
    Couche Transport Protocole TCP PaquetTCP  Taille fenêtre (2 octets) : Le nombre d’octets que le récepteur peut recevoir sans acquittement.
  • 59.
    Couche Transport Protocole TCP PaquetTCP  Somme de contrôle entête (2 octets) : Il permet de vérifier l’intégrité de l’entête.
  • 60.
    Couche Transport Protocole TCP PaquetTCP  Pointeur d’urgence (2 octets) : Il indique combien de données du segment, à partir du premier octet sont urgentes (Utilisé conjointement avec le flag URG).
  • 61.
    Couche Transport Protocole TCP PaquetTCP  Options (0- 40 octets) : Facultatif, permet de personnaliser encore plus le l’entête TCP.
  • 62.
    Couche Transport Protocole TCP PaquetTCP  Bourrage : De taille variable comprise entre 0 et 7 bits. Il permet de combler avec des bits à 0 le champ option afin d’obtenir une entête TCP multiple de 32 bits.
  • 63.
    Couche Transport Protocole TCP PaquetTCP  Données : Données de la couche supérieure.
  • 64.
    Couche Transport  Aest le client et B le serveur.  Les ports TCPs ouverts.  Application sur le serveur à l’écoute.  Application sur le client fait une requête. Protocole TCP Etablissement de connexion
  • 65.
    Couche Transport  Client: Demande de connexion.  SYN = 1, ACK = 0, ISNclient = x (Séquence initiale aléatoire du client). Protocole TCP Etablissement de connexion
  • 66.
    Couche Transport Protocole TCP Etablissementde connexion  Serveur : Acceptation de la connexion.  SYN = 1, ACK = 1, NRclient = x+1, ISNserveur = y (Séquence initiale aléatoire du serveur).
  • 67.
    Couche Transport Protocole TCP Etablissementde connexion  Client : Accusé de réception.  SYN = 0, ACK = 1, NRserveur = y+1.
  • 68.
    Couche Transport  Aprèsl’établissement de la connexion, les application client et serveur communiquent en full duplex, ils envoyer et recevoir des données. Protocole TCP Transfert des données
  • 69.
    Couche Transport  L’applicationclient envoi 10 octets et acquitte la réception jusqu’au numéro de séquence 202. Protocole TCP Transfert des données Envoi de 10 Octets
  • 70.
    Couche Transport Protocole TCP Transfertdes données Envoi de 20 Octets  L’application serveur envoi 20 octets et acquitte la réception des 10 octets jusqu’au numéro de séquence 65.
  • 71.
    Couche Transport Protocole TCP Transfertdes données Envoi de 10 Octets  L’application client envoi 10 octets et acquitte la réception des 20 octets jusqu’au numéro de séquence 222.
  • 72.
    Couche Transport Protocole TCP Transfertdes données Envoi de 2 Octets  L’application serveur envoi 2 octets et acquitte la réception des 20 octets jusqu’au numéro de séquence 75.
  • 73.
    Couche Transport Protocole TCP Fiabilitédes transferts  Dans le protocole TCP, les pertes de segments sont détectées par absence d’acquittement positif après un timeout.
  • 74.
    Couche Transport Protocole TCP Fiabilitédes transferts  L’application A émet 8 octets de données.
  • 75.
    Couche Transport Protocole TCP Fiabilitédes transferts  L’acquittement de l’application B est perdu dans le réseau.
  • 76.
    Couche Transport Protocole TCP Fiabilitédes transferts  Après un timeout pour la réception d’un acquittement, l’application A suppose que B n’a pas reçu le segment TCP et le renvoi.
  • 77.
    Couche Transport Protocole TCP Fiabilitédes transferts  l’application A reçoit cette fois-ci l’acquittement. Ainsi, la fiabilité du transfert du segment est garantie.
  • 78.
    Couche Transport Protocole TCP Fiabilitédes transferts  l’application A reçoit cette fois-ci l’acquittement. Ainsi, la fiabilité du transfert du segment est garantie.
  • 79.
    Couche Transport Protocole TCP Finde connexion  L’application A ou B peut décider de mettre fin à la conversation.
  • 80.
    Couche Transport Protocole TCP Finde connexion  A demande la fin de connexion  FIN=1.
  • 81.
    Couche Transport Protocole TCP Finde connexion  L’application B acquitte la demande de l’application A.  ACK = 1, NRA = x + 1
  • 82.
    Couche Transport Protocole TCP Finde connexion  Après que l’application B ait envoyé ses données en attente et reçoit l’acquittement, il demande la fin de la connexion.  FIN=1
  • 83.
    Couche Transport Protocole TCP Finde connexion  L’application A acquitte la fin de la connexion.  ACK = 1, NRB = y + 1
  • 84.
    Couche Transport  Sanscontrôle du flux TCP, il y’a gaspillage de la bande passante :  Envoi de données excessives.  Attente excessive pour la confirmation de la réception des données. Protocole TCP Fenêtre glissante
  • 85.
    Couche Transport  L’applicationB a acquitté jusqu’au numéro de séquence 44.  Comme la taille de la fenêtre est 4, A ne peut envoyer que 4 octets de segments TCPs sans acquittement. Protocole TCP Fenêtre glissante Dernier numéro de séquence acquitté
  • 86.
    Couche Transport  L’applicationA envoi une donnée avec le numéro de séquence 45 (inclut dans la fenêtre actuelle). Protocole TCP Fenêtre glissante
  • 87.
    Couche Transport Protocole TCP Fenêtreglissante  L’application A envoi une donnée avec le numéro de séquence 46 (inclut dans la fenêtre actuelle).
  • 88.
    Couche Transport Protocole TCP Fenêtreglissante  L’application A envoi une donnée avec le numéro de séquence 47 (inclut dans la fenêtre actuelle).
  • 89.
    Couche Transport Protocole TCP Fenêtreglissante  L’application A envoi une donnée avec le numéro de séquence 48 (inclut dans la fenêtre actuelle).
  • 90.
    Couche Transport Protocole TCP Fenêtreglissante  L’application A a épuisé la fenêtre et attend l’acquittement de l’application B pour envoyer des données à nouveau.
  • 91.
    Couche Transport Protocole TCP Fenêtreglissante  L’application A envoi une donnée avec le numéro de séquence 49 qui est inclut dans la nouvelle fenêtre.