Cours Couche Rseau1
Cours Couche Rseau1
Cours Couche Rseau1
0 8 16 24 31
Classe D 1 1 1 0 Multicast
Classe E 1 1 1 1 0 Réservé
Le protocole IP : L’adressage Internet
Classe Plage
A 0.0.0.0 127.255.255.255
B 128.0.0.0 191.255.255.255
C 192.0.0.0 223.255.255.255
D 224.0.0.0 239.255.255.255
E 240.0.0.0 247.255.255.255
Le protocole IP : L’adressage Internet
Classe A : 10.0.0.0
Classe B : 172.16.0.0 à 172.31.0.0
Classe C : 192.168.0.0 à 192.168.255.0
Le protocole IP : L’adressage Internet
• Notation décimale
utilisation de quatre entiers décimaux séparés par un point, chaque
entier représente un octet de l'adresse IP : 128.10.2.30
10000000 00001010 00000010 00011110
• Adresses particulières
– Adresses réseau : adresse IP dont la partie hostid ne comprend
que des zéros; => la valeur zéro ne peut être attribuée à une
machine réelle : 172.20.0.0 désigne le réseau de classe B 172.20.
– Adresse machine locale : adresse IP dont le champ réseau (netid)
ne contient que des zéros;
– hostid = 0 (=> tout à zéro), l'adresse est utilisée au démarrage du
système afin de connaître l'adresse IP (RARP).
Le protocole IP : L’adressage Internet
Détermination du netmask
Exemple:
Adresse de sous réseau Netmask Nb de machines
192.168.16.0 255.255.255.128 128
192.168.16.128 255.255.255.224 64
192.168.16.192 255.255.255.224 32
192.168.16.224 255.255.255.224 32
Le protocole IP : L’adressage Internet
L’adresse de passerelle
L’adresse de passerelle indique si nécessaire à quelle machine doit-on
s’adresser lorsqu’une requête n’est pas destinée à une machine de notre
réseaux
Une adresse réseau 127 ne doit, en conséquence, jamais être véhiculée sur un
réseau et un routeur ne doit jamais router un datagramme pour le réseau 127.
Le protocole IP : L’adressage Internet
0 8 16 24 31
désigne la machine
Tout à zéro courante
machine Host-id
Tout à zéro Host-id sur le réseau courant
128.10.1
.1 .2 .3 .4
Internet P A B C
.1
128.10.2 .6 .2 .9
128.10.0.0 D E F
Le besoin
– La communication entre machines ne peut s'effectuer qu'à travers
l'interface physique
– Les applicatifs ne connaissent que des adresses IP, comment établir le lien
adresse IP/adresse physique?
La solution : ARP
– Mise en place dans TCP/IP d’un protocole de bas niveau appelé Adress
Resolution Protocol (ARP)
– Rôle de ARP : fournir à une machine donnée l'adresse physique d'une autre
machine située sur le même réseau à partir de l'adresse IP de la machine
destinatrice
La technique
– Diffusion d'adresse sur le réseau physique
– La machine d'adresse IP émet un message contenant son adresse physique
– Les machines non concernées ne répondent pas
– Gestion cache pour ne pas effectuer de requête ARP à chaque émission
Le protocole ARP : Address Resolution Protocol
A X B Y
Le besoin
– L'adresse IP d'une machine est configurable (elle dépend du réseau sur
lequel elle se trouve) et est souvent enregistrée sur la mémoire
secondaire où le système d'exploitation l'accède au démarrage.
– Ce fonctionnement usuel n'est plus possible dans le cas où la machine
est une station sans mémoire secondaire.
Problème : déterminer un mécanisme permettant à la station d'obtenir son
adresse IP depuis le réseau.
La solution
– Protocole de bas niveau appelé Reverse Adress Resolution Protocol
– Permet d'obtenir son adresse IP à partir de l'adresse physique qui lui
est associée.
Fonctionnement
Serveur RARP sur le réseau physique; son rôle: fournir les adresses IP
associées aux adresses physiques des stations du réseau;
RARP: Reverse Address Resolution Protocol
• Le serveur 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.
A X B C
Pour connaître son adresse IP, A diffuse sur le réseau, une requête RARP
qui la désigne comme destinataire
Le datagramme IP
L'unité de transfert de base dans un réseau Internet est le datagramme
qui est constituée d'un en-tête et d'un champ de données:
0 4 8 16 19 24 31
VERS HLEN Type de service Longueur totale
Identification Flags Offset fragment
Durée de vie Protocole Somme de contrôle Header
Adresse IP Source
Adresse IP Destination
Précédence D T R Inutilisé
• Durée de vie
– Ce champ indique en secondes, la durée maximale de transit du
datagramme sur l'internet. La machine qui émet le datagramme
définit sa durée de vie.
– Les passerelles qui traitent le datagramme doivent décrémenter sa
durée de vie du nombre de secondes (1 au minimum) que le
datagramme a passé pendant son séjour dans la passerelle; lorsque
celle-ci expire le datagramme est détruit et un message d'erreur est
renvoyé à l'émetteur..
• Protocole
Ce champ identifie le protocole de niveau supérieur dont le message est
véhiculé dans le champ données du datagramme :
– 6 : TCP,
– 17 : UDP,
– 1 : ICMP.
IP : Internet Protocol (le datagramme)
• Somme de contrôle de l’en-tête
– Ce champ permet de détecter les erreurs survenant dans l'en-tête du
datagramme, et par conséquent l'intégrité du datagramme.
– Le total de contrôle d'IP porte sur l'en-tête du datagramme et non sur les
données véhiculées. Lors du calcul, le champ HEADER CHECKSUM
est supposé contenir 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)
• 0000 0000 0000 0000 (HEADER CHECKSUM)
• xxxx xxxx xxxx xxxx (IP SOURCE )
• xxxx xxxx xxxx xxxx (IP SOURCE)
• xxxx xxxx xxxx xxxx (IP DESTINATION)
• xxxx xxxx xxxx xxxx (IP DESTINATION)
• ... (OPTIONS éventuelles + PADDING
IP : Internet Protocol (le datagramme)
• OPTIONS
– Le champ OPTIONS est facultatif et de longueur variable. Les
options concernent essentiellement des fonctionnalités de mise
au point (enregistrement de route, horodatage, bourrage ...).
– Une option est définie par un champ octet :
0 1 2 3 7
classe
C d’option Numéro d’option
● 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).
● les bits classe d'option et numéro d'option indiquent le type de l'option.
● Une option particulière de ce type est:
IP : Internet Protocol (le datagramme)
– ICMP
Routage des datagrammes
• Le routage est le processus permettant à un datagramme d’être acheminé vers
le destinataire lorsque celui-ci n’est pas sur le même réseau physique que
l’émetteur.
• Le chemin parcouru est le résultat du processus de routage qui effectue les
choix nécessaires afin d’acheminer le datagramme.
• Les routeurs forment une structure coopérative de telle manière qu’un
datagramme transite de passerelle en passerelle jusqu’à ce que l’une d’entre
elles le délivre à son destinataire.
• Un routeur possède deux ou plusieurs connexions réseaux tandis qu’une
machine possède généralement qu’une seule connexion.
• Machines et routeurs participent au routage :
– les machines doivent déterminer si le datagramme doit être délivré sur le
réseau physique sur lequel elles sont connectées (routage direct) ou bien si
le datagramme doit être acheminé vers une passerelle; dans ce cas (routage
indirect), elle doit identifier la passerelle appropriée.
– les passerelles effectuent le choix de routage vers d’autres passerelles afin
d’acheminer le datagramme vers sa destination finale.
Routage des datagrammes
Table de routage de G
Routage des datagrammes
Route_Datagramme_IP(datagramme, table_de_routage)
• Extraire l’adresse IP destination, ID, du datagramme,
• Calculer l’adresse du réseau destination, IN.
• Si IN correspondant à une adresse de réseau directement accessible,
envoyer le datagramme vers sa destination, sur ce réseau.
• sinon si dans la table de routage, il existe une route vers ID
router le datagramme selon les informations contenues dans la table de
routage.
• sinon si IN apparaît dans la table de routage,
router le datagramme selon les informations contenues dans la table de
routage.
• sinon s’il existe une route par défaut
router le datagramme vers la passerelle par défaut.
• sinon déclarer une erreur de routage.
Routage des datagrammes
Réseau 1 (adr IP = N)
P2 M P2
Réseau 2 (ss-réseau de N) Réseau 3 (ss-réseau de N)
M doit utiliser le routage de sous-réseaux pour décider si elle route vers les
passerelles P1 ou P2 bien qu’elle même soit connectée à un réseau (Réseau 1)
n’ayant pas de sous-adressage
Le sous-adressage