View
118
Download
0
Category
Preview:
Citation preview
Institut Supérieur d'Informatique1
Réseaux et Protocoles de Communications
La couche réseau
2
Les couches OSI
Application
Présentation
Session
Transport
Réseau
Liaison de données
Physique
Réseau
Liaison de données
Physique
Application
Présentation
Session
Transport
Réseau
Liaison de données
Physique
Protocole de bout en bout
3
La couche réseau
La couche réseau fait essentiellement du routage. Elle
transporte les paquets en traversant plusieurs nœuds
appelés routeurs ou commutateurs.
Elle connaît la topologie du sous-réseau de communication
et l ’ensemble des routeurs qui le compose.
Elle doit être capable de choisir les chemins appropriés à
travers un sous-réseau.
Sous-Réseau
Un routeur
Une ligne de communication
4
Circuits virtuels et datagrammes
Les protocoles de la couche réseau peuvent fonctionner
selon deux modes :
mode connecté (circuit virtuel):
établissement d ’un chemin unique appelé circuit virtuel
Service fiable, mais complexe
Exemple de protocoles : le protocole X.25
5
Circuits virtuels et datagrammes
Mode non connecté (datagramme)
une seule phase : transfert de données
service non fiable, mais simple
plusieurs chemins possibles
Exemples de protocoles : le protocole IP
6
Primitives du service réseau(mode connecté)
Niveaux 1 et 2 :
Liaison de données
Et
physique
Station A Station B
Couche Transport
Couche Réseau
Couche Transport
Couche Réseau
N_CONNECT.Request
N_CONNECT.Indication
N_CONNECT.Response
N_CONNECT.confirmation
7
Routage
Fonction qui permet de déterminer un chemin dans un
réseau maillé vers une destination identifiée par une
adresse.
Utilisation de :
Table de routage (ou table d ’acheminement) dans chaque
nœud : information nécessaire pour atteindre le prochain
nœud vers la destination.
Algorithmes de routage : calcul d ’un chemin optimal pour
atteindre une destination.
8
Routage
File du commutateurdes paquets
Vers le nœud_1
Vers le nœud_2
Vers le nœud_3
A1
A2
A3
Table de routage associée au nœud de commutation
@_D1
@_D2
@_D3
@_D4
A1, A2
A2
A3, A2
A1
9
Algorithmes de routage
Algorithmes non adaptatifs (statiques) :
Ils ne fondent pas leurs décisions de routage sur des mesures
ou des estimations de trafic et de la topologie.
Le choix de la route est calculé à l ’avance (hors ligne) pour
chaque paire de stations.
Généralement la route la plus courte.
La route est téléchargée dans le routeur lorsque le réseau est
en phase d ’initialisation (algorithme centralisé).
10
Algorithmes de routage
Algorithmes adaptatifs :
basés sur des algorithmes complexes qui prennent en
considération l ’environnement d ’un réseau .
Mise à jour périodique des tables de routage. Routage centralisé :
• chemins établis par un seul nœud du réseau
• traite les décisions quand aux définitions des nouvelles tables de
routage
• collecte les informations de la part de tous les composants du réseau
• utilise un algorithme déterminé pour concevoir les nouvelles tables
• envoi des tables aux stations et nœuds du réseau.
Routage distribué :
• chemins déterminés par chaque nœud en fonction des informations
locales ou reçues par ses nœuds voisins.
11
Routage du plus court chemin
définitions de la longueur d ’un chemin
Le nombre de sauts entre la source et la destination
la distance géographique en kilomètres
le chemin le plus rapide en calculant le temps moyen d ’attente
et de transmission d ’un paquet par un nœud de commutation
En général, c ’est une pondération entre la distance, la capacité de
transport, le trafic moyen, le coût de communication, la longueur
moyenne des files d ’attente, des délais mesurés, etc.
S
A
2
7
2
16
2
4
33
2 2
C
B
E
F
G
D
12
Algorithme de Dijkstra (1959)
Principe d ’optimalité :
Si un routeur J est sur le chemin optimal qui va du routeur I vers
le routeur K, alors le chemin optimal de J vers K suit la même
route.
Exemple d ’application de l ’algorithme :
calcul du plus court chemin entre une source et une destination
détermination de la route ayant la plus faible valeur de la somme
de tous les arcs.
S
A
2
7
2
16
2
4
33
2 2
C
B
E
F
G
D
13
Algorithme de Dijkstra (1959)
Principes de l ’algorithme :
Chaque nœud est étiqueté par sa distance au nœud source
en suivant le meilleur chemin connu ( [distance, routeur
précédent] )
Initialement aucun chemin n ’est connu et chaque nœud et
étiqueté d ’une valeur << >>
S
A (,-)
2
7
2
16
2
4
33
2 2
C(,-)
B (,-)
E(,-)
F(,-)
G(,-)
D(,-)
14
Algorithme de Dijkstra (1959)
Principes de l ’algorithme (suite): Marquage du nœud source I=S en l ’entourant d ’un cercle plein.
a) Calcul des valeurs de l ’ étiquette des nœuds adjacents à I non marqués.
b) On identifie celui qui a la plus petite valeur de l ’étiquette parmi tous les nœuds non marqués et on le marque par un cercle plein, soit le nœud J.
c) si J D (nœud destination), alors a) avec I=J
S
A(2,S)
2
7
2
16
2
4
33
2 2
C(,-)
B(6,S)
E(,-)
F(,-)
G(,-)
D(,-)
15
Algorithme de Dijkstra (1959)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(,-)
D(,-)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(9,B)
D(,-)
16
Algorithme de Dijkstra (1959)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(8,E)
D(,-)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(8,E)
D(10,G)
17
Algorithme de Dijkstra (1959)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(8,E)
D(10,G)
S
A (2,S)
2
7
2
16
2
4
33
2 2
C(4,A)
B (5,C)
E(6,C)
F(9,A)
G(8,E)
D(10,G)
18
Routage à vecteur de distance
C ’est un algorithme de routage dynamique qui met à jour
régulièrement la table de routage par échange mutuel des
listes de vecteurs de distance entre routeurs voisins.
La table de routage contient dans chaque ligne
La ligne préférentielle à utiliser pour atteindre la destination
l ’estimation du temps ou de la distance
La métrique utilisée peut dépendre
du temps d ’acheminement (en ms)
du nombre total de paquets en file d ’attente sur la route
etc.
19
Routage à vecteur de distance Exemple : calcul du temps d ’acheminement minimal par le routeur J.
Chaque routeur du réseau connaît la distance qui le sépare de son voisin (le temps d ’acheminement).
Le routeur J calcule la valeur minimale du temps d ’acheminement vers une destination en examinant toutes les tables de routage communiquées par ses voisins.
A B C D
E F G H
I J K L
20
Routage à vecteur de distance
A B C D
E F G H
I J K L
0
12
25
40
14
23
18
17
21
8
24
29
24
36
18
27
7
20
31
20
0
10
22
33
20
31
19
8
30
19
6
0
14
12
22
9
21
28
36
24
22
40
31
19
22
6
0
9
8
20
28
20
17
30
18
12
10
0
6
15
A
A
I
H
I
I
H
H
I
-
K
K
A
B
C
D
E
F
G
H
I
J
K
L
vers A I H K Ligne
Temps d ’acheminement estimé depuis J
TempsJA=8
TempsJI=10
TempsJH=12
TempsJK=6
Nouvelle table de routage de J
21
Contrôle de congestion
La congestion est une dégradation des performances du
réseau due à une forte augmentation du nombre de
paquets dans le réseau.
Trafic idéal
Trafic souhaité
Trafic congestionné
Trafic idéal : le nombre de
paquets
délivré est proportionnel au
nombre
de paquet transmis dans le
réseau.Trafic congestionné : trafic
très élevé où un bon nombre de
paquets dans la file d ’attente
des routeurs seront détruits.
Nombre de paquets transmisNom
bre
de p
aquet
rem
is
aux d
est
inati
ons
22
Contrôle de congestion
Fonction pour éviter la dégradation des performances d ’un
réseau dû à la présence d ’un trop grand nombre de
paquets dans ce même réseau.
Contrôle de congestion par notification Envoie de paquets d ’engorgement pour prévenir la source de
diminuer son émission lorsqu ’une congestion est détectée dans
un nœud.
Contrôle de congestion par destruction des paquets Destruction des paquets arrivant dans un nœud congestionné et
ne peuvent pas être stockées dans les tampons (cas de l’ATM).
Destruction des paquets résidents dans une file d ’attente au
delà d ’un certain délai (cas de l’IP)
23
Contrôle de congestion versus contrôle de flux
Exemple 1: contrôle de flux
Cas d ’un réseau Gigabit Ethernet Transfert de fichier entre une station Fast Ethernet (100Mbits/s)
et une station Ethernet (10Mbits/s)
Exemple 2 : contrôle de congestion
Cas d ’un réseau WAN avec des liens à 1Mbits/s et 1000
stations connectées Transfert de fichiers à 100Kbits/s par la moitié des stations (50
Mbits/s requis)
24
Canalisation du trafic
La nature aléatoire du trafic est une des principales causes
de la congestion.
rendre uniforme le rythme et la vitesse d ’envoi de
données : canalisation du trafic (ATM).
L ’Algorithme de seau percé permet la canalisation du trafic.
C ’est un algorithme en boucle ouverte
25
Algorithme du sceau percé
Seaupercé
L ’eau s ’écoulegoutte à goutte
à débit constant
Ordinateursource
paquet
Flux irrégulier
Le seau maintientles paquet
Flux régulier
Réseau
Dispositifde gestion du paquet
26
Algorithme du sceau percé
La régulation du rythme d ’envoi de donnée par un sceau
percé peut se faire en utilisant des jetons :
Le sceau dispose d ’un certain nombre de jetons générés par
une horloge au rythme d ’un jeton tous les T secondes.
Lorsqu ’un paquet est transmis un jeton est détruit
Si le sceau ne contient pas de jeton, le paquet qui arrive doit
attendre la génération d ’un nouveau jeton pour qu ’il soit
transmis.
La taille de la file d ’attente est limité : un paquet qui trouve
la file pleine est éliminé.n 2 1
T
Générateur de jetons
Trafic canalisé
File de taille n
27
Contrôle de congestion sur un circuit virtuel
C ’est une méthode de contrôle en boucle fermée où le
contrôle de la congestion est dynamique (contrôle
d ’admission)
Si une congestion est signalée en un nœud du réseau, aucun
circuit virtuel ne peut être établi en passant par ce nœud
jusqu ’à ce que le problème soit résolu.
congestion
S
D
S
D
Circuit virtuel
Recommended