Réseaux

Transcription

Réseaux
Réseaux
Protocole IP
Master Miage 1
Université de Nice - Sophia Antipolis
(Second semestre 2009-2010)
Jean-Pierre Lips ([email protected])
(à partir du cours de Jean-Marie-Munier)
Sources bibliographiques
✓
✓
✓
✓
✓
✓
✓
✓
2009-2010
Comer (D.E.) : TCP/IP architecture, protocoles, applications - 5ème
édition - Dunod 2009/01
Comer (D.E.) : Réseaux et Internet - CampusPress 2000
Pujolle (G.) : Les réseaux - 6ème édition - Eyrolles 2007/09
Servin (C.) : Réseaux et Télécoms - 3ème édition - Dunod 2009
Siyan (K.S.) : TCP/IP - 2ème édition - CampusPress 2001
Tanenbaum (A.S.) : Réseaux – 4ème édition - Pearson Education 2003
RFC 791, 919, 922, 950, 1191, 1597
Cours UREC du CNRS (www.urec.fr)
Réseaux : Protocole IPv4
2
Principes du réseau Internet
Hôte A
T
e
l
n
e
t
S
M
F
T
T
P
P
Hôte B
T
F
T
P
T
e
l
n
e
t

T
P
Routeur
TCP / UDP
IP / ICMP
IP / ICMP
IP / ICMP
Intf X
T
F
T
P
Interface Y
Intf Y
Réseau X

M
F
T
P
TCP / UDP
Interface X

S
Réseau Y
Protocole IP fonctionnant en mode non connecté
Service IP = service de datagrammes échangés entre stations (hôtes) au
travers d’un ou plusieurs réseaux de nature éventuellement différente et de
routeurs
Fonctions plus complexes (recouvrement d’erreurs, contrôle de flux) reportées
dans les hôtes
2009-2010
Réseaux : Protocole IPv4
3
Evolution de l’Internet






Réseau ARPANET créé par DARPA (Defense Advanced Research
Project Agency) dans les années 70, basé sur la commutation par
paquets et architecturé selon des couches fonctionnelles
Mise en œuvre des protocoles de la famille TCP/IP sous UNIX
(Berkeley)
Développement de normes de fait par le biais de RFC (Requests For
Comments)
Fédération de réseaux (UseNet, BitNet…) par NSFnet (National
Science Foundation network)
Expansion du réseau par les fournisseurs d’accès, qui permettent aux
entreprises privées de se connecter à l’Internet
Ouverture au grand public avec l’avènement du Web
2009-2010
Réseaux : Protocole IPv4
4
Protocoles de l’Internet (1/3)
Modèle
OSI
Modèle
TCP/IP
7
Applications
TEL
NET
SMTP
FTP
SNMP
TFTP
6
5
Transport
Inter-réseau
Interface
réseau
2009-2010
TCP
UDP
IP / ICMP + ARP / RARP
4
3
2
IEEE 802.2, X.25, réseau radio, réseau satellite…
1
Réseaux : Protocole IPv4
5
Protocoles de l’Internet (2/3)

Protocoles d’application (exemples)
– Telnet (Remote Login) : protocole de présentation d’écran permettant la
connexion et l’émulation de terminaux
– SMTP (Simple Mail Transfer Protocol) : protocole de messagerie
électronique entre systèmes
– FTP (File Transfer Protocol) : protocole de transfert de fichiers ASCII,
EBCDIC, binaires
– TFTP (Trivial File Transfer Protocol) : protocole pour transferts simples
de données
– SNMP (Simple Network Management Protocol) : protocole de gestion de
réseau à distance
– RIP (Routing Information Protocol) : protocole de routage de
datagrammes IP au sein d’un système autonome
2009-2010
Réseaux : Protocole IPv4
6
Protocoles de l’Internet (3/3)

Protocoles de transport
– TCP (Transmission Control Protocol) : fournit un service avec connexion
entre ports (équivalent à la classe de transport 4 OSI). Protocole fiable de
transfert de segments (taille maximale : 64 Koctets)
– UDP (User Datagram Protocol) : fournit un service sans connexion entre
ports (équivalent à la classe de transport 0 OSI)

Protocoles inter-réseaux
– IP (Internet Protocol) : assure le transfert de datagrammes et fournit les
fonctions de base pour l’interconnexion de réseaux hétérogènes
– ICMP (Internet Control Message Protocol) : assure l’échange de
messages d’erreur et de service entre nœuds de communication
– ARP (Address Resolution Protocol) : permet d’obtenir l’adresse matérielle
associée à une adresse IP
– RARP (Reverse Address Resolution Protocol) : permet d’obtenir l’adresse
IP associée à une adresse matérielle
2009-2010
Réseaux : Protocole IPv4
7
Fonctions du protocole IP





Adressage des paquets entre stations au travers de routeurs (adresses globales,
de couche réseau)
Fragmentation et réassemblage des données
Routage des datagrammes vers une station ou un routeur, à l’aide de tables de
routage
Acheminement des données sous forme de datagrammes (mode non connecté)
Autres caractéristiques :
– Protection de l’information de commande des datagrammes (en-tête) pour
éviter des acheminements erronés
– Pas de protection des données contenues dans les datagrammes
– Pas de contrôle de flux
– Pas de garantie de remise des datagrammes à leur destination (service « au
mieux » ou Best Effort)
– Pas de garantie de remise en séquence
2009-2010
Réseaux : Protocole IPv4
8
Adressage IP





Adresse IP définie sur 4 octets (32 bits)
2 parties dans l’adresse <net-id> <host-id>
– <net-id> : identificateur de réseau, attribué par un organisme
international (InterNIC), sans structure hiérarchisée (contrairement
au téléphone, à ATM, à IPv6…)
– <host-id> : identificateur local de machine (ou hôte) dans le réseau
Adresse unique au monde
Adresse associée à une interface de réseau :
– une seule (en général) pour une station
– une par interface de réseau pour un routeur
Notation décimale pointée, sous la forme w.x.y.z
(valeur de chaque nombre dans la gamme 0-255).
Exemple : 134.59.81.15
2009-2010
Réseaux : Protocole IPv4
9
Adressage IP : Classes


Plusieurs classes d’adressage, selon la taille du réseau
Classe
<net-id>
<host-id>
A
8 bits
24 bits
B
16 bits
16 bits
C
24 bits
8 bits
D
adresse de groupe de diffusion
E
format réservé
Masque de (sous-)réseau (pour classes A, B, C)
– nombre de 32 bits
– même format et même notation qu’une adresse
– spécifie les bits de <net-id> (bits à 1) et ceux de <host-id> (bits à 0)
2009-2010
Réseaux : Protocole IPv4
10
Adressage IP : Classe A



Réseaux comportant un grand nombre d’hôtes
<net-id> sur 8 bits, commençant par ’0’ (octet w : 0-127)
<host-id> sur 24 bits
w
0
7 bits
Net-id



x
y
z
8 bits
8 bits
8 bits
Host-id
Exemples : 9 (IBM), 18 (MIT)
Capacité d’adressage : 126 (27-2) réseaux (net-Id 0 et 127 réservés, voir
plus loin) de 224 -2 hôtes max. chacun
Masque de (sous-)réseau : 255.0.0.0
ou /8 (8 bits de préfixe réseau)
2009-2010
Réseaux : Protocole IPv4
11
Adressage IP : Classe B



Réseaux de taille moyenne ou grande
<net-id> sur 16 bits, commençant par ’10’ (octet w : 128-191)
<host-id> sur 16 bits
w
1 0 1 6 bits
x
y
z
8 bits
8 bits
8 bits
Host-id
Net-id



Exemples : 134.59 (Univ. Nice), 129.88 (IMAG)
Capacité d’adressage : 16384 (214 ) réseaux de 65534 (216 -2) hôtes max.
chacun
Masque de (sous-)réseau : 255.255.0.0
ou /16 (16 bits de préfixe réseau)
2009-2010
Réseaux : Protocole IPv4
12
Adressage IP : Classe C



Réseaux de taille modeste
<net-id> sur 24 bits, commençant par ’110’ (octet w : 192-223)
<host-id> sur 8 bits
w
110
5 bits
x
y
z
8 bits
8 bits
8 bits
Net-id



Host-id
Exemple : 193.54.48 (THESEUS)
Capacité d’adressage : 221 réseaux de 254 (28-2) hôtes max. chacun
Masque de (sous-)réseau : 255.255.255.0
ou /24 (24 bits de préfixe réseau)
2009-2010
Réseaux : Protocole IPv4
13
Adressage IP : Classe D



Utilisation en multidiffusion (multicast)
Transmission point-à-multipoint
Groupe de diffusion identifié par un champ de 28 bits
w
1110



x
y
z
28 bits
Octet w d’adresse IP : 224-239
Pas de structuration du champ d’adresse car utilisé de manière
ponctuelle, sans contrainte d’unicité
Protocole IGMP (Internet Group Management Protocol)
2009-2010
Réseaux : Protocole IPv4
14
Adresses IP particulières (1/6)
<net-id> <0……0>




Identification du réseau <net-id> lui-même
Exemples :
9.0.0.0 = réseau 9
134.59.0.0 = réseau 134.59
193.54.48.0 = réseau 193.54.48
Utilisation dans les tables de routage (les routeurs ne connaissent
généralement pas les hôtes eux-mêmes)
Conséquence : <host-id> doit être différent de 0…0
2009-2010
Réseaux : Protocole IPv4
15
Adresses IP particulières (2/6)
<net-id> <1……1>

Diffusion (broadcast) vers toutes les stations du réseau <net-id>
Source : K.S. Siyan – TCP/IP – CampusPress 1999

Conséquence : <host-id> doit être différent de 1…1
2009-2010
Réseaux : Protocole IPv4
16
Adresses IP particulières (3/6)
<1……1> <1……1>

Diffusion (broadcast) vers toutes les stations du réseau considéré.
Diffusion locale, qui ne traverse pas les routeurs
Source : K.S. Siyan – TCP/IP – CampusPress 1999

Conséquence : <net-id> doit être différent de 1…1 (sans conséquence
sur Classes A, B, C ou D)
2009-2010
Réseaux : Protocole IPv4
17
Adresses IP particulières (4/6)
<0……0> <host-id>


Identifie l’hôte <host-id> du réseau considéré, sans avoir à connaître la
valeur de <net-id> (il faut cependant connaître la classe d’adresse)
Peu utilisé, éventuellement pendant les phases d’initialisation
Source : K.S. Siyan – TCP/IP – CampusPress 1999

Conséquence : <net-id> doit être différent de 0…0 (Classe A)
2009-2010
Réseaux : Protocole IPv4
18
Adresses IP particulières (5/6)
<0……0> <0……0>



Identifie l’hôte considéré
Utilisé seulement pendant les phases d’initialisation (BOOTP/DHCP)
Cette adresse peut figurer dans le champ d’adresse de source, mais pas
dans le champ d’adresse de destination
Source : K.S. Siyan – TCP/IP – CampusPress 1999
2009-2010
Réseaux : Protocole IPv4
19
Adresses IP particulières (6/6)
<01111111> <x……x>


<127> <x……x> (souvent 127.0.0.1)
Adresse de rebouclage interne (loopback), sans présence de données
sur le réseau
Source : K.S. Siyan – TCP/IP – CampusPress 1999

Conséquence : <net-id> doit être différent de 127 (Classe A)
2009-2010
Réseaux : Protocole IPv4
20
Autres adresses IP réservées


RFC 1597
Adresses IP publiques réservées aux réseaux privés (Intranets) :
– 1 réseau de classe A
10.0.0.0 – 10.255.255.255
– 1 bloc de 16 réseaux de classe B
172.16.0.0 – 172.31.255.255

– 1 bloc de 256 réseaux de classe C
192.168.0.0 – 192.168.255.255
Permet la séparation (via un pare-feu, par exemple) entre espace privé et
espace d’accès public, lequel ne nécessite souvent qu’un nombre limité
d’adresses IP publiques
2009-2010
Réseaux : Protocole IPv4
21
Sous-réseaux IP







Possibilité de subdiviser le champ <host-id> en deux parties
3 parties dans l’adresse <net-id> < subnet-id> <host-id>
– <net-id> : identificateur de réseau
– <subnet-id> : identificateur de sous-réseau
– <host-id> : identificateur local de machine (ou hôte) dans le sousréseau
Permet une meilleure structuration du réseau (technologies
éventuellement différentes) et une gestion décentralisée des adresses
Le choix du nombre de bits du champ <host-id> affectés à l’adressage
des sous-réseaux est décidé par l’administrateur du réseau. Ce nombre
doit être identique pour tout le réseau subdivisé
Masque de sous-réseau (Subnet Mask) :
les bits à 1 couvrent <net-id> et <subnet-id>
La subdivision en sous-réseaux doit être prise en compte par les routeurs
du réseau subdivisé
La présence de sous-réseaux est invisible des autres réseaux IP
2009-2010
Réseaux : Protocole IPv4
22
Masque de sous-réseau



Comme pour <net-id> et <host-id>, le champ <subnet-id> de l’adresse
doit être différent de <0…0> (le sous-réseau lui-même) et de <1…1>
(diffusion vers toutes les stations du sous-réseau)
En conséquence j bits permettent de définir 2j – 2 sous-réseaux
Exemple :
– Adresse de réseau de classe B : 129.112.0.0
– Subdivision en 14 (max.) sous-réseaux de 4094 (max.) hôtes
– Masque de sous-réseau : 255.255.240.0 (ou /20)
(11111111 11111111 11110000 00000000)
2009-2010
Réseaux : Protocole IPv4
23
Agrégation d’adresses



Actuellement (2002), 65% des adresses de classe B sont allouées.
Cependant, beaucoup d’organisations qui disposent d’une adresse
de classe B n’en utilisent pas tout l’adressage.
Inversement, 40% seulement des adresses de classe C sont
allouées, mais la limitation à 254 adresses d’hôtes peut être
contraignante. De plus, la fourniture de plusieurs adresses de
classe C entraîne une multiplication d’entrées dans les tables de
routage.
Situation actuelle : adresses de classe B réservées aux
organisations justifiant de plus de 4096 hôtes, et fourniture de 1,
2, 4, 8, 16, 32 ou 64 adresses de classe C contiguës et agrégées
(formant un bloc CIDR).
2009-2010
Réseaux : Protocole IPv4
24
CIDR et sur-réseaux



CIDR (Classless Inter-Domain Routing)
Organisation des adresses de Classe C concernées :
Multi-régions
de 192.0.0.0
à 193.255.255.255
Europe
de 194.0.0.0
à 195.255.255.255
Autres
de 196.0.0.0
à 197.255.255.255
Amérique du Nord
de 198.0.0.0
à 199.255.255.255
Amérique Centre/Sud
de 200.0.0.0
à 201.255.255.255
Pacifique
de 202.0.0.0
à 203.255.255.255
Autres
de 204.0.0.0
à 205.255.255.255
Autres
de 206.0.0.0
à 207.255.255.255
Exemple d’une organisation européenne demandant 1500 adresses IP :
fourniture d’un bloc de 8 adresses de classe C, de 194.32.136.0 à
194.32.143.255. Ce bloc, ou sur-réseau (supernet) est défini par :
– l’adresse la plus basse du bloc, soit 194.32.136.0
(11000010 00100000 10001000 00000000)
– le masque CIDR ou masque de sur-réseau (Supernet Mask) définissant les
bits de préfixe commun, soit 255.255.248.0 (ou /21)
(11111111 11111111 11111000 00000000)
2009-2010
Réseaux : Protocole IPv4
25
En-tête IPv4
Source : D. E. Comer - Computer Networks and Internets - Prentice Hall 1999
2009-2010
Réseaux : Protocole IPv4
26
Champs de l’en-tête IPv4 (1/4) 



Version (4 bits) : valeur = 4
Longueur de l’en-tête (4 bits) : taille, en mots de 32 bits, de l’en-tête, y
compris les options (valeur habituelle = 5)
Type de service (8 bits) : définit la qualité de service demandée
(priorité, retard, débit, fiabilité). Champ inutilisé, sauf pour OSPF
Longueur totale (16 bits) : taille totale du datagramme (en-tête +
données). Valeur max = 65535 octets. Dans le réseau, la taille du
datagramme ou celle de chacun de ses fragments n’est pas supérieure à
la taille de MTU (Maximum Transmission Unit)
2009-2010
Réseaux : Protocole IPv4
27
Champs de l’en-tête IPv4 (2/4)



Identification (16 bits) : numérotation du datagramme (tous ses
fragments auront la même valeur de ce champ)
Drapeaux (3 bits) : indicateurs (dont un inutilisé) permettant la gestion
des fragments :
– DF (Don’t Fragment) : protège le datagramme contre une
fragmentation éventuelle
– MF (More Fragments) : indique si le fragment est le dernier
Position du fragment (13 bits) : décalage du fragment (en multiples de
8 octets) dans le datagramme d’origine. Tous les fragments d‘un
datagramme, sauf le dernier, doivent avoir une taille multiple de 8 octets
2009-2010
Réseaux : Protocole IPv4
28
Champs de l’en-tête IPv4 (3/4)



Time To Live (8 bits) : durée de vie, permettant de limiter le temps de
transit des datagrammes dans le réseau. Chaque routeur intermédiaire
traversé décrémente la valeur de TTL. Le datagramme est détruit
lorsque de champ vaut 0. Ce champ représente en fait le nombre
maximum de sauts (hops) restants
Protocole (8 bits) : identifie le protocole de la couche supérieure
(Exemples : 6 pour TCP, 17 pour UDP, 1 pour ICMP, 4 pour
l’encapsulation de IP dans IP, 89 pour OSPF) et permet le
démultiplexage en réception. Equivalent au NSAP dans le modèle OSI
Champ de vérification de l’en-tête (16 bits) : permet de valider l’entête (recalculé à chaque modification entre source et destination). Evite
la remise d’un datagramme à un destinataire autre que celui prévu
2009-2010
Réseaux : Protocole IPv4
29
Champs de l’en-tête IPv4 (4/4)



Adresse IP de la source (32 bits) : adresse IP de l’émetteur du
datagramme
Adresse IP de la destination (32 bits) : adresse IP du ou des
destinataires du datagramme
Options et bourrage : permettent des fonctions supplémentaires telles
que marque de temps, liste de routeurs à traverser, niveau de sécurité.
Format de chaque option : TLV (type, longueur, valeur). Bourrage
éventuel pour que l’en-tête ait une taille multiple de 32 bits
2009-2010
Réseaux : Protocole IPv4
30
Fragmentation et réassemblage



La taille d’un datagramme peut ne pas convenir à un réseau particulier
parmi ceux traversés. La station hôte de source ou un routeur traversé
effectue alors une fragmentation.
Le réassemblage ne s’effectue que dans la station hôte de destination.
Les fragments peuvent arriver dans le désordre. Ils peuvent ne pas avoir
tous la même taille (fragments de fragments). A l’arrivée d’un premier
fragment, l’hôte récepteur crée une mémoire tampon et démarre un
temporisateur. Les données sont accumulées dans la mémoire tampon, à
l’aide du champ ‘Décalage de fragment’, jusqu’à reconstitution
complète. L’ensemble des fragments est détruit en cas d’expiration du
temporisateur (par exemple, si un fragment est perdu)
Note : IP ne fragmente pas les paquets dont la taille est inférieure ou
égale à 576 octets
2009-2010
Réseaux : Protocole IPv4
31
Fragmentation (exemple)
L_entête
Données
L_totale
(mots)
5
(octets)
3200
(octets)
3220
5
5
5
1024
1024
1024
5
2009-2010
Pos_fragment
0
(multiples de 8 octets)
0
1044
1044
1044
1
1
1
0
128
256
128
148
0
384
5
1024
1044
1
0
5
512
532
1
128
5
512
532
1
192
5
5
1024
128
1044
148
1
0
256
384
1024
0
MF
512
512
128
192
1024
256
Réseaux : Protocole IPv4
128
384
32
Routage IP




Les routeurs et les hôtes participent au routage (ils possèdent tous des
tables de routage)
Sauf exception, les tables de routage ne spécifient que des réseaux
entiers (identifiés par leur <net-id>), et non des hôtes
La route vers une destination n’est pas donnée en entier, mais sous la
forme de l’adresse d’un prochain routeur (next hop) : routage de
proche en proche, ou par bonds successifs
Les tables de routage peuvent être :
– statiques (élaborées manuellement) : surtout dans
les hôtes
– dynamiques (générées et mises à jour
automatiquement par un protocole qui exécute un
algorithme de routage) : surtout dans les routeurs
2009-2010
Réseaux : Protocole IPv4
33
Tables de routage (1/2)
192.50.1.0
S
.1
.10
S
R1
2009-2010
192.50.2.0
R1
.10
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
192.50.2.0
255.255.255.0
255.255.255.0
192.50.1.1
192.50.1.10
192.50.1.1
192.50.1.1
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
192.50.2.0
255.255.255.0
255.255.255.0
192.50.1.10
192.50.2.10
192.50.1.10
192.50.2.10
Réseaux : Protocole IPv4
34
Tables de routage (2/2)
192.50.1.0
S
R1
R2
2009-2010
192.50.3.0
.1
.10
S
192.50.2.0
R1
.10
.20
R2
.20
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
192.50.2.0
192.50.3.0
255.255.255.0
255.255.255.0
255.255.255.0
192.50.1.1
192.50.1.10
192.50.1.10
192.50.1.1
192.50.1.1
192.50.1.1
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
192.50.2.0
192.50.3.0
255.255.255.0
255.255.255.0
255.255.255.0
192.50.1.10
192.50.2.10
192.50.2.20
192.50.1.10
192.50.2.10
192.50.2.10
Réseau
Masque
Prochain routeur
Interface
192.50.2.0
192.50.3.0
192.50.1.0
255.255.255.0
255.255.255.0
255.255.255.0
192.50.2.20
192.50.3.20
192.50.2.10
192.50.2.20
192.50.3.20
192.50.2.20
Réseaux : Protocole IPv4
35
Routes par défaut (1/2)
192.50.1.0
S
R1
R2
2009-2010
192.50.3.0
.1
.10
S
192.50.2.0
R1
.10
.20
R2
.20
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
0.0.0.0
255.255.255.0
0.0.0.0
192.50.1.1
192.50.1.10
192.50.1.1
192.50.1.1
Réseau
Masque
Prochain routeur
Interface
192.50.1.0
192.50.2.0
0.0.0.0
255.255.255.0
255.255.255.0
0.0.0.0
192.50.1.10
192.50.2.10
192.50.2.20
192.50.1.10
192.50.2.10
192.50.2.10
Réseau
Masque
Prochain routeur
Interface
192.50.2.0
192.50.3.0
0.0.0.0
255.255.255.0
255.255.255.0
0.0.0.0
192.50.2.20
192.50.3.20
192.50.2.10
192.50.2.20
192.50.3.20
192.50.2.20
Réseaux : Protocole IPv4
36
Routes par défaut (2/2)
192.50.1.0
S

192.50.3.0
192.50.4.0
.1
.1
.10

192.50.2.0
R1
.10
.20
R2
.20
.30
R3
T
.30
Problème si R2 est le routeur par défaut de R1 et de R3
Recommandation pour les routes par défaut :
– pour les hôtes : route par défaut (surtout s’il y a un seul routeur)
– pour les routeurs : pas de route par défaut, mais une entrée de table
par réseau (c’est le cas pour les tables dynamiques, générées et mises
à jour par un protocole de routage)
2009-2010
Réseaux : Protocole IPv4
37
Acheminement des datagrammes



Acheminement nécessaire dans deux cas :
– une station hôte émet un datagramme
– un routeur reçoit un datagramme et doit le transmettre
De l’adresse IP de destination on extrait l’identificateur de réseau <netid> par un ET logique avec le masque de sous-réseau
– s’il s’agit du même réseau, on encapsule le datagramme dans une
trame dont le format (en particulier l’adressage) dépend de la nature
physique de ce réseau
– sinon, la consultation de la table de routage (voir plus loin) permet
de connaître le prochain routeur. Là encore, on encapsule le
datagramme dans une trame de ce réseau
Dans les deux cas, l’adresse physique (de l’hôte de destination ou du
prochain routeur) peut être trouvée dans une table ou obtenue à l’aide
d’un protocole de résolution d’adresse tel que ARP
2009-2010
Réseaux : Protocole IPv4
38
Protocoles de routage IP


Un réseau complexe, de grande taille, peut être divisé en systèmes
autonomes (AS, Autonomous Systems). Un AS est un ensemble de
réseaux et de routeurs gérés par une administration unique (entreprise,
campus, réseau régional, cœur d’un réseau national…). Les numéros
d’AS (16 bits) sont délivrés par l’InterNIC
Exemples de protocoles de routage :
– à l’intérieur d’un système autonome
✓ RIP (Routing Information Protocol)
✓ OSPF (Open Shortest Path First)
– entre systèmes autonomes
✓ EGP (Exterior Gateway Protocol)
✓ BGP (Border Gateway Protocol)
2009-2010
Réseaux : Protocole IPv4
39
Protocoles de routage externe





EGP (Exterior Gateway Protocol), remplacé graduellement par BGP
(Border Gateway Protocol)
Protocoles permettant d’échanger de l’information de routage entre
systèmes autonomes
Les routeurs de frontière s’échangent périodiquement des messages
deux à deux. L’information échangée est une liste des réseaux
accessibles
Des boucles sont possibles avec EGP (couples de routeurs voisins
seulement). BGP gère les boucles
Mise en place de stratégies de routage, selon des considérations
politiques, économiques, de sécurité…
2009-2010
Réseaux : Protocole IPv4
40
Protocole OSPF (1/2)





OSPF : Open Shortest Path First (RFC 1247)
Algorithme (Dijkstra) basé sur l’état des liens (link state)
Chaque routeur surveille l’état de toutes ses liaisons et diffuse, par
inondation, cet état à tous les autres routeurs (LSA, Link State
Advertisement) périodiquement ou lors d’un changement
Chaque routeur construit, à partir de cette information, une carte
complète du réseau
On peut regrouper des réseaux et des routeurs en zones, ce qui permet
un routage hiérarchique
2009-2010
Réseaux : Protocole IPv4
41
Protocole OSPF (2/2)




Les routeurs calculent les routes de plus court chemin, selon plusieurs
critères (TOS, Type Of Service) en fonction de :
– retard
– débit
– fiabilité
– coût
Les paquets OSPF sont encapsulés dans IP, à la manière de ICMP
(champ Protocole = 89)
Avantages de OSPF :
– chaque routeur calcule la carte du réseau de manière indépendante
– le volume d’information est indépendant du nombre de réseaux
Inconvénient de OSPF : le calcul des routes peut être très complexe
2009-2010
Réseaux : Protocole IPv4
42
Protocole RIP (1/2)




RIP : Routing Information Protocol (RFC 1058, 1387, 1388)
Algorithme (Bellmann-Ford) basé sur un vecteur de distance
Chaque routeur calcule la distance qui le sépare des destinations
connues, à partir de l’information reçue de ses voisins, et l’utilise pour
construire la table de routage
Chaque routeur diffuse, toutes les 30 secondes, vers ses voisins :
– la liste des réseaux qu’il sait atteindre
– leur distance (nombre de sauts à effectuer)
2009-2010
Réseaux : Protocole IPv4
43
Protocole RIP (2/2)



Les paquets RIP sont encapsulés dans des datagrammes UDP (port 520)
Avantages de RIP :
– simple, normalisé
– s’adapte automatiquement aux changements de configuration
Inconvénients de RIP :
– volume de l’information échangée proportionnelle au nombre de
réseaux
– nombre maximal de sauts = 15 (16 représente l’infini)
– la distance est une information incomplète (rien sur charge, débit,
retard…)
– convergence lente (certaines modifications peuvent prendre
plusieurs cycles avant que tous les routeurs n’aient reçu
l’information adéquate)
2009-2010
Réseaux : Protocole IPv4
44