Académique Documents
Professionnel Documents
Culture Documents
Chapitre 5: La Couche Reseau: 1.le Protocole IP 2. Routage 3. Adressage IP 4.le Protocole ARP 5.le Protocole ICMP
Chapitre 5: La Couche Reseau: 1.le Protocole IP 2. Routage 3. Adressage IP 4.le Protocole ARP 5.le Protocole ICMP
1.Le protocole IP
2. Routage
3. Adressage IP
4.Le protocole ARP
5.Le protocole ICMP
1
La pile TCP/IP
FTP HTTP Applications DNS
COUCHE APPLICATION
ARP RIP
ICMP IP
COUCHE INTERNET
Trames
COUCHE INTERFACE RESEAU 0101110101011
• Choix du chemin: route suivie par les paquets de la source à la destination: algorithmes
de routage
– Fragmentation des paquets: si la taille d’un paquet est plus grande que la valeur du MTU
(Maximum Transmission Unit) du réseau qu’il doit traverser, le routeur doit le fragmenter.
3
IP
• Version actuellement utilisée dans Internet IP version 4
4
Le datagramme IP
• Un paquet IP est un bloc de données de taille variable transporte avec lui les
informations nécessaires à sa livraison.
• Chaque paquet transite sur le réseau indépendamment de chaque autre paquet
• Les paquets de données d’IP ont pour nom datagramme.
• Alignement sur des mots de 32 bits pour optimiser la vitesse de traitement.
5
Le datagramme IP
• Les datagrammes sont des données encapsulées, c'est-à-dire des données aux
quelles on a ajouté une en-tête correspondant à des informations sur leur transport.
• Le protocole IP traite les datagrammes IP indépendamment les uns des autres en
définissant leur représentation, leur routage et leur expédition.
20-65536 bytes
20-60 bytes
entête Données
6
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
VER: (4 bits): indique la version du protocole IP utilisé (4 pour IPv4, 6 pour IPv6) .
7
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
ToS: le champ type de service indique aux routeurs traversés par le paquet le type de traitement
attendu pour les données du paquet . C’est le routage avec qualité de service.
9
Le datagramme IP- Champs de l’entête
32
VER HLEN TOS LEN
0(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
10
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
ID: ce champs constitue une identification unique du datagramme et de tous ses fragments
assigné par l’émetteur.
11
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
FLAG: indique si la fragmentation est autorisée et le cas échéant, si le paquet est le dernier de la
fragmentation.
12
Le datagramme IP- Champs de l’entête
FLAG: 3 bits sont utilisés pour la fragmentation.
Le deuxième appelé bit DF(Don’t Fragment) et indique que ce paquet ne doit pas être fragmenté
Le troisième bit est appelé bit MF(More Fragments) défini sur tous les paquets fragmentés sauf le
dernier.
13
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
OFFSET: la position du premier octet du fragment dans le paquet IP d’origine, en multiple de 8 octets
Le premier fragment a un offset=0
le deuxième fragment a un offset=(taille du premier fragment- entête)/8
14
La fragmentation
La fragmentation se produit lorsqu’un datagramme IP traverse un réseau dont l’unité de
transmission maximale (MTU) est inférieure à la taille du datagramme.
15
Fragmentation IP
Déterminer le nombre de fragments nécessaires pour transférer le paquet IP de taille 4000
octets.
4000-20=3980
1500-20=1480
Nombre de fragments =3980/1480=2,68
2 fragments de 1480 octets (partie données)+20 octets
+
1 fragment de 1020 octets (partie données) +20 octets
16
Fragmentation IP
17
Fragmentation IP
• Le premier réseau est caractérisé par un MTU=1500 octets, le second possède un MTU
de 620 octets.
• Le routeur doit donc découper le datagramme initial en 3 fragments.
• Les positions de fragment (offset) étant exprimées en multiple de 8 octets,
18
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
19
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
20
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
Ckecksum: somme de contrôle de 16 bits : calculée sur les mots formant l’entête IP et
permet de détécter d’eventuelles erreurs sur celui-ci
21
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
Adresse IP source & IP destination (2*32 bits): adresses IP des machines source et destination
du datagramme.
22
Le datagramme IP- Champs de l’entête
0 32
VER HLEN TOS LEN
(4 bits) (4 bits) (8 bits) (16 bits)
ID FLAG
(16 bits) (3 bits) OFFSET(13 bits)
TTL Protocol Ckecksum
(8 bits) (8 bits) (16 bits)
23
Décoder l’en-tête du paquet IPv4 suivant (en hexadécimal) et en extraire toutes les informations
possibles.
45 00 00 50 20 61 00 00 80 01 C5 64 C7 F5 B4 0A
C7 F5 B4 09 08 00 00 1C 01 02 03 04 05 06 07 08
09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18
19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28
29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38
4 = protocole IP version 4 ;
5 = longueur de l’en-tête du paquet = 5 × 4 = 20 octets = longueur par défaut d’un en-tête sans option.
00 Type of Service = 0 pas de service particulier (en fait, avec IPv4, il n’y a pas de service particulier. Ce champ est donc
toujours nul, et s’il n’était pas nul, il serait ignoré !).
00 50 Longueur totale = 0 × 4096 + 0 × 256 + 5 × 16 + 0 × 1 = 80 octets, donc la longueur du contenu du champ de données
est de 80 – 20 = 60 octets.
20 61 Identifiant du paquet (ne sera utile que s’il est fragmenté).
00 00 Drapeaux et déplacement = tout à zéro = paquet non fragmenté, a priori normal puisqu’il n’y a que 60 octets de données.
80 Durée de vie = 80 = 8 × 16 + 0 × 1 = 128 routeurs que le paquet pourrait encore traverser.
01 Protocole transporté dans le paquet : 1 = code du protocole ICMP.
C5 64 Bloc de contrôle d’erreur de l’en-tête.
C7 F5 B4 0A Adresse IP émetteur = 199.245.180.10.
C7 F5 B4 09 Adresse IP destinataire = 199.245.180.9. Les deux machines sont dans le même réseau de classe C, le
réseau 199.245.180.0.
24
Réseaux IP
Les réseaux IP sont interconnectés entre eux pour former un vaste réseau dont l'étendue
peut être mondial (INTERNET).
Les réseaux IP sont reliés entre eux à l'aide de périphériques : Les routeurs.
La transmission des datagrammes IP vers leurs destinataires s'appelle le Routage .
25
Acheminement et routage
Acheminement :
– Fonctionnalité du protocole IP
– IP utilise la table de routage pour déterminer le prochain saut
– Exécutée pour chaque paquet
Routage :
– Fonctionnalité des protocoles de routage, comme RIP et OSPF
– Remplir la table de routage avec les routes optimales
– Exécutée périodiquement pour mettre à jour les tables de routage
26
Le routage IP
Fonction qui permet de déterminer le meilleure chemin dans un réseau maillé vers une
destination identifiée par une adresse de réseau IP.
Utilisation de :
– TABLE DE ROUTAGE : située dans chaque nœud : information nécessaire pour
atteindre le prochain nœud vers la destination.
– ALGORITHME DE ROUTAGE : fonction distribuée sur chaque noeud qui a pour objectif
de calculer les routes optimales pour atteindre une destination. Ex. Bellman-ford, Djikstra,
27
Le routeur
Les routeurs sont des équipements intermédiaires qui relient les périphériques
terminaux.
Dans chaque routeur un logiciel de routage IP à l'aide d'une table de routage
achemine l'information de proche en proche vers le destinataire.
Routeur Port
Sortant
Table de routage
xxx xxx
Port Balayage
Entrant Logiciel de
Routage
Un routeur réémet des datagrammes venus d'une de ses interfaces vers une autre...
28
Table de routage
Chaque routeur intègre une table de routage
Les hôtes -station d'un réseau ont aussi une table de routage.
Schéma simplifié d'une table de Routage :
29
Table de routage
D'une façon générale une table de routage contient des adresses de réseau comme
destination.
Il y a cependant deux autres destinations possibles :
Des adresses spécifiques
La destination par défaut
Routage statique :
L’administrateur configure manuellement les routes
Faisable pour de petits réseaux
Routage dynamique:
Les routeurs utilisent un protocole de routage pour s’échanger des informations avec
les autres routeurs
Le protocole de routage calcule les routes et remplit la table de routage
Permet de s’adapter automatiquement aux pannes de liens
30
Table de Routage d'un terminal
La table de routage d’un terminal va indiquer des destinations et le prochain routeur pour
accéder à ces destinations.
31
Table de routage d’un terminal
202.10.1.0 R1 203.5.25.0 R5 204.23.10.0
R2 R3 R4
33
Entrée par défaut
Une ligne particulière de la table de routage
permet d’indiquer un chemin possible pour toutes les destinations qui n’ont pas de chemin
qui leur correspond directement
Souvent utilisée pour connecter le réseau local à internet. L’adresse IP de la passerelle par
défaut est l’adresse du premier périphérique de couche 3 (l’interface du routeur) connecté
au même réseau.
Format:
Destination: L’adresse spécifique 0.0.0.0
Prochain routeur: indique un routeur à utiliser par défaut pour ces destinations
34
Entrée par défaut
R1 R2
196.139.5.5 196.139.5.6
196.139.5.0
197.18.6.12 198.110.4.3
197.18.6.0 R2 198.110.4.0
38
Colonnes d’une table de routage
L’exploitation d’une table de routage commence avec l’adresse IP de destination d’un
hôte.
Pour atteindre cet hôte il faut d’abord atteindre le réseau auquel il appartient et
traverser les réseaux qui le précèdent.
Les adresses des réseaux ne peuvent être obtenu qu’à l’aide du masque de
réseau.
La table de routage doit donc présenter ce masque
39
Colonnes d’une table de routage
166.1.0.0 198.25.30.0
166.1.0.1
156.15.0.1
R2
P1 P4
P2 R1 P3 156.15.0.2
132.12.1.1 132.12.2.1
156.15.0.0
132.12.0.0
132.12.1.0 132.12.2.0
40
Colonnes d’une table de routage
Version 1
41
Colonnes d’une table de routage
Version 2
Adresse de Masque de
Passerelle Interface
destination réseau
166.1.0.0 255.255.0.0 166.1.0.1 166.1.0.1
132.12.1.0 255.255.255.0 132.12.1.1 132.12.1.1
132.12.2.0 255.255.255.0 132.12.2.1 132.12.2.1
156.15.0.0 255.255.0.0 156.15.0.1 156.15.0.1
198.25.30.0 255.255.255.0 156.15.0.2 156.15.0.1
Une cinquième colonne "Métrique" est possible. Elle indique le nombre de pas pour atteindre la
destination.
42
Exemple 1 :
43
Exemple 2 :
44
Exercice:
Ce réseau est supporté par trois réseaux physiques Ethernet dont les adresses sont 193.2.2.0, 193.5.5.0
et 193.8.8.0 avec le masque 255.255.255.0.
1. Donnez les tables de routage initiales les plus simples, sur chaque machine (MA, R1, R2 et MB),
permettant l'acheminement du paquet de MA vers MB.
2. La machine MA souhaite envoyer un paquet à la machine MB. Les deux machines n'étant pas sur le
même sous-réseau, le paquet va donc devoir être routé via les deux routeurs R1 et R2.
2.1. Donnez les adresses source et destination du paquet IP préparé sur MA et prêt à être envoyé.
2.2. Donnez les étapes successives nécessaires à cet acheminement, en précisant les adresses utilisées
dans les en-têtes des trames Ethernet envoyées pour transporter le paquet ci-dessus.
45
46
2.1 @IP_src = @IP_MA = 193.2.2.2; @IP_dest = @IP_MB = 193.8.8.8
2.2
Etape 1: MA détermine si MB est sur le même réseau qu’elle. Le résultat est négatif (les deux machines
ne sont pas sur le même réseau 193.2.2.0 pour MA et 193.8.8.0 pour MB). MA consulte sa table de
routage et conclut qu’il faut passer par son routeur (R1).
Etape 2: MA encapsule le paquet destiné à MB dans une trame envoyée à R1. On a :
- @MAC_src = @MAC_MA = 00:11:22:33:44:AA; - @MAC_dest = @MAC_R1 = 00:11:22:33:44:C1
- @IP_src = @IP_MA = 193.2.2.2; - @IP_dest = @IP_MB = 193.8.8.8
Etape 3: R1 reçoit la trame et décapsule le paquet IP. Il constate que le paquet ne lui est pas destiné et
consulte sa table de routage pour savoir où il faut le transmettre. D’après, sa table de routage le réseau
du destinataire est accessible par son interface eth1 mais il faut passer par le routeur R2.
47
Etape 4: R1 encapsule le paquet destiné à MB dans une trame envoyée à R2. On a:
- @MAC_src = @MAC_R1 = 00:11:22:33:44:C2; - @MAC_dest = @MAC_R2 = 00:11:22:33:44:C3
- @IP_src = @IP_MA = 193.2.2.2; - @IP_dest = @IP_MB = 193.8.8.8 5.
Etape 5: R2 reçoit la trame et décapsule le paquet IP. Il constate que le paquet ne lui est pas destiné
et consulte sa table de routage pour savoir où il faut le transmettre. D’après, sa table de routage le
réseau du destinataire est accessible directement par son interface eth1.
Etape 6: R2 encapsule le paquet destiné à MB dans une trame envoyée directement à MB. On a :
@MAC_src = @MAC_R2 = 00:11:22:33:44:C4;@MAC_dest = @MAC_MB = 00:11:22:33:44:BB
@IP_src = @IP_MA = 192.2.2.2;@IP_dest = @IP_MB = 192.8.8.8
Etape 7: MB décapsule le paquer IP, constate qu’il lui est destiné et le traite.
48