Académique Documents
Professionnel Documents
Culture Documents
3
Couche Réseau
D’après le livre :
Couche Réseau 1
Chapitre 4 : Couche Réseau
Buts du chapitre:
comprendre les principes derrière les services de la
couche réseau :
routage (sélection de chemins) hiérarchique
IP (Internet Protocol)
IPv6
Couche Réseau 2
Chapitre 4 : feuille de route
4.1 Introduction
4.2 Principes du routage
4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
4.5 Routage dans l'Internet
4.6 IPv6
Couche Réseau 3
Fonctions de la couche réseau
acheminer les paquets de l'émetteur application
transport
Couche Réseau 4
Modélisation du service
? ?
la couche réseau :
Garantie de bande passante?
abstraction du service
?
paquets? ou
livraison sans perte? datagramme?
livraison dans l'ordre?
feedback à l'émetteur sur la
congestion?
Couche Réseau 5
Circuit virtuel
Couche Réseau 6
Circuits virtuels : protocoles de signalisation
application application
5. début flux de données 6. données reçus
transport transport
réseau 4. appel connecté 3. appel accepté
réseau
1. amorcer l'appel 2. appel arrivant
liaison liaison
physique physique
Couche Réseau 7
Réseaux datagrammes : le modèle Internet
pas d'appel au niveau de la couche réseau
routeurs : pas d'état à propos les connections bout-à-bout
pas de concept «connexion» au niveau du réseau
les paquets acheminés en utilisant l'adresse de destination
les paquets entre la source et la destination peuvent prendre
des chemins différents
application
application
transport
1. envoyer données 2. réception données transport
réseau
réseau
liaison
liaison
physique
physique
Couche Réseau 8
Modèles des services de la couche réseau
Garanties ?
Architecture Modèle Feedback
réseau du service Bande pass Perte Ordre Timing de congestion
Couche Réseau 9
Réseau datagramme ou CV : pourquoi ?
Internet ATM
échange de données entre dérivé de la téléphonie
ordinateurs conversation humaine :
service “élastique”, aucune demande
timing strict, demande la
stricte de synchronisation
fiabilité
systèmes terminaux «futés» besoin de service garanti
(ordinateurs)
systèmes terminaux «muets»
s'adaptent, contrôlent, détectent les
téléphones
erreurs
complexité à l'intérieur du
intérieur du réseau simple,
réseau
complexité aux «bords»
plusieurs types de liens
caractéristiques différentes
service uniforme et difficile
Couche Réseau 10
Chapitre 4 : feuille de route
4.1 Introduction
4.2 Principes du routage
routage «link state»
routage «distance vector»
4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
4.5 Routage dans l'Internet
4.6 IPv6
Couche Réseau 11
Routage
Protocole de routage
But : déterminer le “bon” chemin 5
(suite de routeurs) à travers
B 3 C
le réseau de la source à la dest.
2 5
A
2 1 F
abstraction à l'aide de graphes : 3
1 2
D E
les noeuds sont les routeurs 1
les arcs sont les liens
physiques
“bon” chemin :
typiquement : chemin à
coût du lien : délai, coût en €,
coût minimum
ou le niveau de congestion
autres définitions possibles
Couche Réseau 12
Classification des algorithmes de routage
Algorithme de Dijkstra
topologie du réseau, coûts des liens connus dans tous les
noeuds
accompli via la “diffusion de l'état du lien” (link state
broadcast)
tous les noeuds ont la même information
calcule le chemin de plus faible coût à partir d'un noeud
(«source») vers tous les autres
donne la table de routage pour ce noeud
itératif : après k itérations, connaît le plus faible coût vers k dest.
Couche Réseau 14
Un Algorithme de routage «Link-State»
Notations :
c(i,j): coût du lien du noeud i au noeud j.
(coût infini si non voisins directs)
Couche Réseau 15
Algorithme de Dijsktra
1 Initialisation:
2 N = {A}
3 pour tous les noeuds v
4 si v adjacent à A
5 alors D(v) = c(A,v)
6 sinon D(v) = ∞
7
8 boucle
9 trouver w ∉N tel que D(w) est le minimum
10 N = N ∪ {w}
11 mettre à jour D(v) pour tout v adjacent à w et ∉N :
12 D(v) = min( D(v), D(w) + c(w,v) )
13 /* le nouveau coût jusqu'à v est soit l'ancien coût, soit le plus
14 faible coût du chemin jusqu'à w plus le coût de w à v */
15 jusqu'à (N = l'ensemble de tous les noeuds)
Couche Réseau 16
Algorithme de Dijsktra : exemple
étape N D(B),p(B) D(C),p(C) D(D),p(D) D(E),p(E) D(F),p(F)
0 A 2,A 5,A 1,A ∞ ∞
1 AD 2,A 4,D 2,D ∞
2 ADE 2,A 3,E 4,E
3 ADEB 3,E 4,E
4 ADEBC 4,E
5 ADEBCF
B 3 C
2 5
A
2 1 F
3
1 2
D E
1
Couche Réseau 17
Algorithme de Dijsktra : discussion
Complexité : n noeuds
chaque itération : besoin de visiter tous les noeuds w ∉N
n*(n+1)/2 comparaisons : O(n2)
implémentations plus efficaces possibles: O(nlogn)
Oscillations possible:
ex. coût du lien = quantité du trafic porté
A A A A
1 1+e 2+e 0 0 2+e 2+e
D B 0
D B D
0 0
B D B
1+e 1 0 0 1+e 1
0 C e 0 C 0 1 1+e 0 0
C C
1 1
e … recalculer … recalculer … recalculer
Initialement
le routage
Couche Réseau 18
Algorithme de routage : Distance Vector
itératif :
tourne jusqu'à l'arrêt de l'échange d'infos entre noeuds
termine seul : pas de “signal” pour stopper
asynchrone :
les noeuds n'échangent pas d'info et n'itèrent pas dans une
étape verrouillée!
distribué :
chaque noeud communique seulement avec ses voisins directs
Couche Réseau 19
Algorithme de routage : Distance Vector
distance de X à
= Y, via Z comme prochain saut
DX (Y,Z)
Z
= c(X,Z) + minw {D (Y,w)}
Couche Réseau 20
Table de distance : exemple
coût vers la destination via
B 1 C E
7 D () A B D
A
8 2
1 A 1 14 5
E D
2
B 7 8 5
destination
E D
D (C,D) = c(E,D) + minw {D (C,w)}
= 2+2 = 4 C 6 9 4
E D
D (A,D) = c(E,D) + minw {D (A,w)} D 4 11 2
= 2+3 = 5 boucle!
E B
D (A,B) = c(E,B) + minw {D (A,w)}
= 8+6 = 14
boucle!
Couche Réseau 21
Table de distance →table de routage
coût vers la destination via
E lien sortant
D () A B D à utiliser, coût
A 1 14 5 A A,1
B 7 8 5 B D,5
destination
destination
C 6 9 4 C D,4
D 4 11 2 D D,2
Couche Réseau 22
Routage Distance Vector : vue d'ensemble
Couche Réseau 23
Algorithme Distance Vector :
Couche Réseau 24
Algorithme Distance Vector : suite
8 boucle
9 attendre (jusqu'à ce que je vois le changement du coût d'un lien voisin V
10 ou jusqu'à ce que je reçoive la m-à-j d'un voisin V)
11
12 si (c(X,V) dévie de d)
13 /* ajouter d aux coûts de toutes les dest via le voisin v */
14 /* note: d peut être positif ou négatif */
15 pour toutes les destinations y : DX (y,V) = DX (y,V) + d
16
17 sinon si (m-à-j reçue de V par rapport à la destination Y)
18 /* plus court chemin de V à un Y a changé */
19 /* V a envoyé une nouvelle valeur de son minw DV(Y,w) */
20 /* appelons cette nouvelle valeur reçue "nouv_val" */
21 pour la seule destination Y : DX (Y,V) = c(X,V) + nouv_val
22
23 si nous avons une nouvelle val. minw DX (Y,w) pour une dest. Y
24 envoyer la nouvelle val. de minw DX (Y,w) à tous les voisins
25 pour toujours
Couche Réseau 25
Algorithme Distance Vector : exemple
Y
2 1
X Z
7
Couche Réseau 26
Algorithme Distance Vector : exemple
Y
2 1
X Z X Z
7 D (Y,Z) = c(X,Z) + minw{D (Y,w)}
= 7+1 = 8
X Y
D (Z,Y) = c(X,Y) + minw {D (Z,w)}
= 2+1 = 3
Couche Réseau 27
Distance Vector : changements du coût du lien
Changements du coût du lien :
le noeud détecte le changement du coût 1
Y
du lien local 4 1
m-à-j la table de distance (ligne 15) X Z
50
si le coût change dans le chemin le plus
court, informer les voisins (lignes 23,24)
l'algorithme
termine
“les bonnes
nouvelles se
propagent
vite”
Couche Réseau 28
Distance Vector : changements du coût du lien
Changements du coût du lien :
les bonnes nouvelles se propagent vite 60
Y
les mauvaises nouvelles se propagent 4 1
lentement – problème de “calcul à l'infini” ! X Z
50
l'algorithme
se poursuit!
Couche Réseau 29
Distance Vector : mensonge au voisin
Si Z route via Y pour atteindre X :
60
Z dit à Y que sa distance à X est infinie (donc Y
4 1
Y ne peut pas router à X via Z) X Z
cela résoudra-t-il complètement le problème 50
du calcul infini ?
l'algorithme
termine
Couche Réseau 30
Comparaison des algorithmes LS et DV
Complexité des messages Robustesse: que ce passe-t-il si le
LS: avec n noeuds, E liens, O(nE) routeur fonctionne mal ?
msgs envoyés LS: - un noeud peut publier un coût
DV: échange entre voisins incorrect d'un lien
uniquement - chaque noeud calcule uniquement
temps de convergence variable sa propre table
DV: - un noeud peut publier un coût
Vitesse de Convergence
incorrect d'un chemin
LS: O(n )2
- chaque table d'un noeud est
peut donner lieu à des utilisée par les autres
oscillations les erreurs se propagent à
DV: temps de convergence variable travers le réseau
le routage peut boucler
problème de calcul à l'infini
Couche Réseau 31
Chapitre 4 : feuille de route
4.1 Introduction
4.2 Principes du routage
4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
4.5 Routage dans l'Internet
4.6 IPv6
4.7 Routage multicast
4.8 Mobilité
Couche Réseau 32
Routage hiérarchique
Notre étude du routage est idéaliste
tous les routeurs identiques
réseau “plat”
… pas vrai dans la pratique
Couche Réseau 33
Routage hiérarchique
agréger des routeurs au sein routeurs «gateways»
de régions : “systèmes des routeurs spéciaux dans les
autonomes” (AS : AS
autonomous systems) exécutent le protocole de
les routeurs dans le même routage intra-AS avec les
autres routeurs de l'AS
AS exécutent le même
protocole de routage
responsables aussi du routage
vers les destinations hors l'AS
protocole de routage “intra-
AS”
exécutent un protocole de
routage inter-AS avec les
les routeurs d'AS différents
autres routeurs «portes»
peuvent exécuter des
protocoles de routage intra-
AS différents
Couche Réseau 34
Routage Intra-AS et Inter-AS
C.b
B.a Gateways :
A.a • routage inter-AS
b A.c c entre eux
a a
C b
a B • routage intra-AS
d entre routeurs du
c
A b même AS
vers/depuis A.d
Couche Réseau 35
Routage Intra-AS et Inter-AS
C.b
B.a
routage Inter-AS
A.a
entre A et B
b c Poste h2
A.c
a a
C b
a B
Poste h1
d routage Intra-AS
c
A b dans l'AS B
routage Intra-AS
dans l'AS A
Couche Réseau 36
Chapitre 4 : feuille de route
4.1 Introduction 4.2 Principes du routage 4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
Adressage IPv4
Acheminement des datagrammes de la source à la dest.
Format des datagrammes
Fragmentation IP
ICMP: Internet Control Message Protocol
DHCP: Dynamic Host Configuration Protocol
NAT: Network Address Translation
Couche Réseau 37
La couche réseau de l'Internet
Fonctions de la couche réseau des postes et routeurs :
réseau table de
Protocole ICMP
routage • annonce d'erreurs
Couche liaison
Couche physique
Couche Réseau 38
Adressage IP : introduction
adresse IP : identificateur 223.1.1.1
physique
typiquement, tous les
routeurs ont plusieurs 223.1.3.1 223.1.3.2
interfaces
les postes peuvent aussi
avoir plusieurs interfaces
223.1.1.1 = 11011111 00000001 00000001 00000001
adresses IP associés avec
chaque interface 223 1 1 1
Couche Réseau 39
Adressage IP
Adresse IP : 223.1.1.1
partie réseau (bits d'ordre 223.1.2.1
223.1.1.2
supérieur)
223.1.1.4 223.1.2.9
partie poste (bits d'ordre
inférieur) 223.1.2.2
223.1.1.3 223.1.3.27
Qu'est ce qu'un réseau ? (du
LAN
point de vue des adresses IP)
interfaces avec la même 223.1.3.1 223.1.3.2
Couche Réseau 40
Adressage IP 223.1.1.2
223.1.2.6 223.1.3.27
six réseaux
Couche Réseau 41
Adresses IP
étant donné la notion de «réseau», ré-examinons les
adresses IP :
“classes” d'adressage :
classe adresse intervalle d'adresses
1.0.0.0 →
A 0 réseau poste 127.255.255.255
128.0.0.0 →
B 10 réseau poste
191.255.255.255
192.0.0.0 →
C 110 réseau poste
223.255.255.255
224.0.0.0 →
D 1110 adresse multicast
239.255.255.255
32 bits
Couche Réseau 42
Adresses IP : adresses spéciales
Exemple :
adresse réseau : 192.168.42.0
adresse de diffusion : 192.168.42.255
1ère adr. de poste : 192.168.42.1
dernière adr. de poste : 192.168.42.254
Couche Réseau 43
Adressage IP : CIDR
Adressage par classes :
utilisation inefficace de l'espace d'adressage, épuisement de l'espace
d'adressage
ex. : réseau de classe B alloue suffisamment d'adresses pour 65k
postes, même s'il y a seulement 2k postes dans le réseau
CIDR: Classless InterDomain Routing
longueur arbitraire de la partie réseau de l'adresse
format d'adresse : a.b.c.d/x, où x est le nombre de bits dans la portion
réseau de l'adresse
partie partie
réseau poste
10001000 00010111 00010000 00000000
136.23.16.0/23
(ou 136.23.16.0 masque réseau = 255.255.254.0)
Couche Réseau 44
Adresses IP : comment en avoir une ?
Couche Réseau 45
Adresses IP : comment en avoir une ?
Couche Réseau 46
Adressage hiérarchique : agrégation de routes
Organisation 0
200.23.16.0/23
Organisation 1 “Envoyez moi n'importe
200.23.18.0/23 quoi avec l'adresse
Organisation 2 commençant par
. 200.23.16.0/20”
200.23.20.0/23 . FAI 1
. .
. Internet
Organisation 7 .
200.23.30.0/23
“Envoyez moi n'importe
FAI 2
quoi avec l'adresse
commençant par
199.31.0.0/16”
Couche Réseau 47
Adressage hiérarchique : routes plus spécifiques
Couche Réseau 48
Adressage IP : un dernier mot...
Couche Réseau 49
Acheminer un datagramme : de la source à la dest.
Table de routage dans A
rés. dest. prochain routeur Nhops
223.1.1 1
223.1.2 223.1.1.4 2
datagramme IP: 223.1.3 223.1.1.4 2
champs adr IP adr IP
données
divers source dest A 223.1.1.1
Couche Réseau 50
Acheminer un datagramme : de la source à la dest.
champs Table de routage dans A
223.1.1.1 223.1.1.3 données
divers rés. dest. prochain routeur Nhops
223.1.1 1
223.1.2 223.1.1.4 2
de A, envoyer un datagramme IP
223.1.3 223.1.1.4 2
vers B :
chercher l'adresse réseau de B dans A 223.1.1.1
la table de routage
223.1.2.1
B trouvé dans le même réseau que A 223.1.1.2
223.1.1.4 223.1.2.9
la couche liaison envoi le
B
datagramme (dans une trame liaison) 223.1.2.2
223.1.1.3 223.1.3.27 E
directement à B
B et A sont directement 223.1.3.1 223.1.3.2
connectés
Couche Réseau 51
Acheminer un datagramme : de la source à la dest.
Table de routage dans A
champs
223.1.1.1 223.1.2.2 données rés. dest. prochain routeur Nhops
divers
223.1.1 1
Source A, dest. E : 223.1.2 223.1.1.4 2
223.1.3 223.1.1.4 2
chercher l'adresse réseau de E dans la
table de routage de A
A 223.1.1.1
E sur un réseau différent
A et E indirectement attachés 223.1.2.1
223.1.1.2
table de routage : le prochain routeur 223.1.1.4 223.1.2.9
vers E est 223.1.1.4 B
223.1.2.2
la couche liaison envoi le datagramme 223.1.1.3 223.1.3.27 E
au routeur 223.1.1.4 (dans une trame
liaison) 223.1.3.1 223.1.3.2
le datagramme arrive à 223.1.1.4
à suivre...
Couche Réseau 52
Acheminer un datagramme : de la source à la dest.
Table de routage du routeur
champs
divers
223.1.1.1 223.1.2.2 données rés. dest. routeur Nhops interface
223.1.1 - 1 223.1.1.4
Arrivée à 223.1.1.4, dest. à 223.1.2.2 223.1.2 - 1 223.1.2.9
chercher l'adresse réseau de E dans la 223.1.3 - 1 223.1.3.27
table de routage du routeur
A 223.1.1.1
E est sur le même réseau que l'interface
223.1.2.9 du routeur 223.1.2.1
223.1.1.2
le routeur et E directement attachés 223.1.2.9
223.1.1.4
la couche liaison envoi le datagramme B
au 223.1.2.2 (dans une trame liaison) 223.1.2.2
223.1.1.3 223.1.3.27 E
via l'interface 223.1.2.9
le datagramme arrive au 223.1.2.2!!! 223.1.3.1 223.1.3.2
(ouf!)
Couche Réseau 53
Format du datagramme IP
numéro de version
32 bits long. totale du
du protocol IP
datagramme (octets)
head type of
long. de l'entête(octets) ver Length
len. service pour la
“type” de donnée fragment
16-bit identifier Flags fragmentation/
offset
nombre max time to upper réassemblage
Internet
de saut restants live layer checksum
(decrementé à
32 bit source IP address
chaque routeur)
32 bit destination IP address
protocole de couche
supérieure Options (if any) Ex : enregistrement
de la route prise,
combien de surplus avec data
spécifie la liste des
TCP ? (variable length, routeurs à visiter
20 octets de TCP typically a TCP
or UDP segment)
20 octets de IP
= 40 octets + surplus
de la couche app
Couche Réseau 54
Fragmentation et Ré-assemblage IP
les liens réseau ont un MTU
(taille max. de transfert) : la plus
grande trame possible.
fragmentation :
types de liens différents, MTUs in: un grand datagramme
différents out: 3 datagrammes plus petits
les grands datagrammes IP
divisés (“fragmentés”) dans le
réseau réassemblage
un datagramme donne lieu à
plusieurs datagrammes
“réassemblés” uniquement au
niveau de la dest. finale
bits de l'entête IP utilisés pour
identifier, ordonner les
fragments
Couche Réseau 55
Fragmentation et Réassemblage IP
long. ID flag frag. offset
=4000 =x =0 =0
Exemple
datagramme de Un grand datagramme divisé en
4000 octets plusieurs petits datagrammes
MTU = 1500 octets long. ID flag frag. offset
=1500 =x =1 =0
Couche Réseau 56
ICMP : Internet Control Message Protocol
Couche Réseau 57
DHCP : Dynamic Host Configuration Protocol
Couche Réseau 58
DHCP : scénario client-serveur
serveur
A DHCP 223.1.2.1
223.1.1.1
223.1.1.2
223.1.1.4 223.1.2.9
B
223.1.2.2 client DHCP
223.1.1.3 223.1.3.27 E arrivant et voulant
une adresse dans ce
223.1.3.1 223.1.3.2 réseau
Couche Réseau 59
DHCP : scénario client-serveur
serveur DHCP : 223.1.2.5 nouveau
DHCP discover
src : 0.0.0.0, 68
client
dest: 255.255.255.255,67
votre adr: 0.0.0.0
ID transaction: 654
DHCP offer
src: 223.1.2.5, 67
dest: 255.255.255.255, 68
votre adr: 223.1.2.4
ID transaction: 654
durée de vie: 3600 secs
DHCP request
src: 0.0.0.0, 68
dest: 255.255.255.255, 67
votre adr: 223.1.2.4
ID transaction: 655
durée de vie: 3600 secs
temps
DHCP ACK
src: 223.1.2.5, 67
dest: 255.255.255.255, 68
votre adr: 223.1.2.4
ID transaction: 655
durée de vie: 3600 secs
Couche Réseau 60
NAT : Network Address Translation
reste de réseau local
l'Internet 10.0.0.0/24
10.0.0.1
10.0.0.4
10.0.0.2
138.76.29.7
10.0.0.3
Couche Réseau 61
NAT : Network Address Translation
Motivation : le réseau local utilise juste un adresse IP
quand il communique avec l'extérieur :
pas besoin de demander au FAI tout un intervalle d'adresses
officielles : une adresse IP est utilisée pour tous les périphériques
on peut changer les adresses des périphériques dans le réseau
local sans en avertir le reste du monde
on peut changer de FAI sans bouleverser l'adressage au sein du
réseau local
les périphériques du réseau local non explicitement adressables,
«invisible» de l'extérieur (un plus de sécurité).
Couche Réseau 62
NAT : Network Address Translation
Implémentation : le routeur NAT doit :
Couche Réseau 63
NAT : Network Address Translation
table de traduction NAT
1: host 10.0.0.1
2: le routeur NAT adr côté WAN adr côté LAN
envoi le datagramme à
change l'adresse du
138.76.29.7, 5001 10.0.0.1, 3345 128.119.40.186, 80
datagramme source de
…… ……
10.0.0.1, 3345 à
138.76.29.7, 5001, S: 10.0.0.1, 3345
mets à jour la table D: 128.119.40.186, 80
10.0.0.1
10.0.0.4 1
S: 138.76.29.7, 5001
2 D: 128.119.40.186, 80
10.0.0.2
S: 128.119.40.186, 80
138.76.29.7 D: 10.0.0.1, 3345
4
S: 128.119.40.186, 80
D: 138.76.29.7, 5001 3 10.0.0.3
4: le routeur NAT
3: la réponse arrive
change l'adresse dest.
à l'adresse dest. :
du datagramme
138.76.29.7, 5001
de 138.76.29.7, 5001 à 10.0.0.1, 3345
Couche Réseau 64
NAT : Network Address Translation
Couche Réseau 65
Chapitre 4 : feuille de route
4.1 Introduction
4.2 Principes du routage
4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
4.5 Routage dans l'Internet
routage intra-AS : RIP et OSPF
routage inter-AS : BGP
4.6 IPv6
4.7 Routage multicast
4.8 Mobilité
Couche Réseau 66
Routage dans l'Internet
Couche Réseau 67
Hiérarchie des AS dans Internet
Couche Réseau 68
Routage Intra-AS
Connus aussi sous le nom de
Interior Gateway Protocols (IGP)
Les protocoles de routage Intra-AS les plus connus :
Couche Réseau 69
RIP ( Routing Information Protocol)
Algorithme Distance Vector
Inclus dans la distribution BSD-UNIX en 1982
Distance métrique : nombre de sauts (max = 15 sauts)
Distance Vectors : échangés parmi les voisins toutes les
30 s via Response Message (appelé aussi publication)
Chaque publication : liste jusqu'à 25 réseaux destination
dans l'AS
Couche Réseau 70
RIP : Exemple
z
w x y
A D B
C
Réseau destination Prochain routeur Nbr. de saut à dest.
w A 2
y B 2
z B 7
x -- 1
…. …. ....
Couche Réseau 71
RIP : Exemple
Dest PR sauts
publication
w - -
de A vers D
x - -
z C 4
…. … ... z
w x y
A D B
C
Réseau destination Prochain Routeur Nbr. de saut à dest.
w A 2
y B 2
z B A 7 5
x -- 1
…. …. ....
Table de routage dans D
Couche Réseau 72
RIP : Échec de liaison et récupération
Si pas de publication entendue après 180 sec -->
voisin/lien déclaré mort
routes via le voisin invalidées
nouvelles publications envoyées aux voisins
les voisins à leur tour envoient les nouvelles
publications (si les tables changent)
l'info «échec de liaison» se propage à tout le réseau
distance infinie = 16 sauts
Couche Réseau 73
Table RIP
tables de routage RIP gérées par un processus (daemon)
appelé route-d de la couche application
publications envoyées dans des paquets UDP, répétés
périodiquement
Routed routed
Transport Transport
(UDP) (UDP)
réseau table de table de réseau
(IP) routage routage (IP)
liaison liaison
physique physique
Couche Réseau 74
Table RIP : exemple
Routeur : giroflee.eurocom.fr
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
127.0.0.1 127.0.0.1 UH 0 26492 lo0
192.168.2. 192.168.2.5 U 2 13 fa0
193.55.114. 193.55.114.6 U 3 58503 le0
192.168.3. 192.168.3.5 U 2 25 qaa0
224.0.0.0 193.55.114.6 U 3 0 le0
default 193.55.114.129 UG 0 143454
Couche Réseau 75
OSPF (Open Shortest Path First)
“open” : dans le domaine public
Utilise l'algorithme Link State
Topologie du réseau à chaque noeud
Calcul de la table de routage avec l'algorithme de Dijkstra
Couche Réseau 76
Les plus de OSPF par rapport à RIP
Couche Réseau 77
OSPF hiérarchique
Couche Réseau 78
OSPF hiérarchique
Deux niveaux de hiérarchie : zone locale, backbone.
publications link-state seulement dans la zone
chaque noeud a la topologie détaillée de la zone et seulement la
direction connue (le plus court chemin) aux réseaux dans les
autres zones
Routeurs en bordure de zone : “résume” les distances aux
réseaux dans sa propre zone, publie vers les autres routeurs en
bordure de zone
Routeurs backbone : exécute le routage OSPF limité au backbone
Routeurs de frontière : connexion vers les autres AS
Couche Réseau 79
Routage Internet Inter-AS : BGP
R4
BGP
AS3
Routage
R5 OSPF intra-AS
R3
AS1 AS2
Routage Routage
RIP intra-AS OSPF intra-AS
R1 BGP R2
Couche Réseau 80
Routage Internet Inter-AS : BGP
Couche Réseau 81
Routage Internet Inter-AS : BGP
Couche Réseau 82
BGP : contrôler qui route vers vous
B FAI
W A X
Client
C
Y
Couche Réseau 83
BGP : contrôler qui route vers vous
B FAI
W A X
Client
C
Y
A annonce à B le chemin AW
B annonce à W le chemin BAW
B doit-il annoncer à C le chemin BAW ?
Sans issue ! B ne reçoit pas de retour pour le routage CBAW puisque ni W ni C
ne sont des clients de B
B veut forcer C à router vers w via A
B veut router uniquement vers/depuis ses clients !
Couche Réseau 84
Fonctionnement de BGP
Couche Réseau 85
Messages de BGP
Les messages BGP échangés en utilisant TCP.
Messages BGP :
OPEN: ouvre une connexion TCP au correspondant et
authentifie l'émetteur
UPDATE: annonce un nouveau chemin (ou retire un ancien)
KEEPALIVE: garde la connexion en l'absence des
UPDATES; acquitte aussi la requête OPEN
NOTIFICATION: rapporte les erreurs vues dans les
messages précédents; utilisé aussi pour fermer la connexion
Couche Réseau 86
Intra- et Inter-AS: Pourquoi des routages différents ?
Politique :
Inter-AS: l'admin veut contrôler comment le trafic est routé,
comment router à travers son réseau
Intra-AS: un seul admin, pas besoin de décision politique
Taille :
le routage hiérarchique réduit la taille des tables, réduit donc le trafic
de mise-à-jour
Performance :
Intra-AS: peut se concentrer sur la performance
Inter-AS: la politique peut dominer la performance
Couche Réseau 87
Chapitre 4 : feuille de route
4.1 Introduction
4.2 Principes du routage
4.3 Routage hiérarchique
4.4 IP (Internet Protocol)
4.5 Routage dans l'Internet
4.6 IPv6
Couche Réseau 88
IPv6
Motivation initiale : l'espace d'adressage 32-bit complètement alloué
vers 2008.
Motivation Additionnelle :
le format des en-têtes aide dans la rapidité du
traitement/transfert
changer l'en-tête pour faciliter la QoS (Quality of Service)
nouvelle adresse “anycast” : route vers le “meilleur” parmi
plusieurs serveurs doublés
Format du datagramme IPv6 :
en-tête à longueur fixe : 40 octets
pas de fragmentation fournie
Couche Réseau 89
IPv6 : Quelques chiffres
Couche Réseau 90
En-tête IPv6
Traffic class identifie les datagrammes prioritaires parmi le flot
Flow Label identifie les datagrammes dans le même “flot” (“flot” pas bien défini).
Payload length taille des données (champ Data)
Next header identifie le protocole de la couche supérieur pour les données
Hop limit nombre de routeurs traversé (au delà duquel le paquet est jeté)
4 mots de 32 bits
4 mots de 32 bits
Couche Réseau 91
Les différentes entêtes d'adresses IPv6
Les premiers bits des adresses permettent de savoir le type de paquet dont
il s'agit :
96 zéros suivi d'une adresse sur 32 bits : c'est une adresse IPv4 (compatibilité)
001 : paquet global unicast (envoyé à une seule destination sur l'Internet)
1111 1110 10 : paquet link local unicast, envoyé à une destination directement
reliée (un périphérique à coté par exemple)
1111 1110 11 : paquet site local unicast, envoyé à une destination située sur le
même site (même réseau)
1111 1111 : paquet multicast envoyé simultanément à plusieurs destinations
(par exemple dans le cas de diffusion vidéo)
Les autres préfixes non encore attribués sont réservés pour le futur. Cela
représente 7/8 de la totalité des adresses
Couche Réseau 92
Autres changements par rapport à l'IPv4
Couche Réseau 93
Transition de l'IPv4 à l'IPv6
Couche Réseau 94
Approche Double Pile
A B C D E F
Couche Réseau 95
Tunneling
A B E F
Vue logique: tunnel
A B C D E F
Vue physique:
IPv6 IPv6 IPv4 IPv4 IPv6 IPv6
données données
A-à-B: E-à-F:
B-à-C: D-à-E:
IPv6 IPv6
IPv6 dans IPv6 dans
IPv4 Ipv4 Couche Réseau 96
Fin
Couche Réseau 97