Vous êtes sur la page 1sur 68

CEG3585 -

INTRODUCTION AUX RSEAUX


DORDINATEURS

CHAPITRE 10 ROUTAGE ET
PROTOCOLES DE ROUTAGE

engineering.uOttawa.ca
Introduction, lectures et problmes

Lecture:
Chapitre 12 Routing in Switched Data Networks;
Chapitre 19, Section 19.2 Routing Protocols

2
Objectifs

la fin de ce module, vous


Comprendrez le routage dans les rseaux de
commutation
comprendrez le fonctionnement de 3 protocoles de
routage: RIP, OSPF, et BGP
comprendrez le routage des rseaux TCP/IP

3
Sujets de discussion

Rseau Communication entre deux nuds du rseau

Liaison de donnes Communication entre deux nuds adjacents

Physique Communication physique

Le routage dans les rseau de commutation


Le routage TCP/IP
Protocoles de routage: RIP, OSPF, BGP

4
Le routage dans le rseau de commutation

Le dfi: comment choisir une route travers un


rseau
Stratgies routages
L'algorithme de routage
Mthode utilise dans un logiciel de la couche rseau pour
dcider quelle ligne de sortie est utilise pour acheminer un
paquet
Utilise une table qui associe les nuds de rseau aux
lignes de sorties
Algorithme dfinit la faon de crer cette table
Algorithmes Dijkstra et Bellman-Ford
Dans le circuit virtuel, les dcisions d'acheminement
sont prises quand le circuit est tabli
Dans le service de datagramme, les dcisions
d'acheminement sont prises pour chaque
datagramme

5
Attributs des fonctions de routage
Exact et simple
Un routage simple qui donne le chemin le plus correct travers le rseau
Robuste et stable
Capacit du rseau de livrer les paquets malgr la congestion et les faillites
locales des parties du rseau
Mais les techniques pour rendre le rseau robuste (ex., chang la direction du
trafic) peut affecter la stabilit
Optimal et juste
Trouver les routes optimales fait comptition tre juste entre les stations
Efficacit
Pnalit pour la capacit du rseau utilis pour la ralisation des attributs (ex.,
robuste et juste) doit valoir le bnfice de lattribut

6
Caractristiques de routage
lments des techniques de routage
Critres de performance Source dinformation de rseau
Nombre de sauts Aucune
Cot Local
Dlai Nuds adjacents
Dbit Nud au long du chemin
Tous les nuds
Temps de dcision
Paquet/datagramme Temps de mis jour (routage
Session/circuit virtuel adaptatif)
Continue
Place de dcision Priodique
Chaque nud (distribu) Changement majeur de trafic
Nud central (centralis) Topologie
Nud source

7
Exemple dun rseau de
commutation de paquets Stallings
Figure 12.1

8
Stratgies de routage

Statique
Inondation
Alatoire
Adaptatif

9
Routage statique

Un seul chemin entre


chaque source et
destination
Chemins dfinis par les
algorithmes de moindre
cot
Les chemins sont
statiques, jusquau
prochain changement de
la topologie

10
L'inondation
Utilise aucun information sur le
rseau
met un paquet reu sur toutes les
lignes l'exception de la ligne de
rception du paquet
Trouve le chemin le plus court car
on trouve tous les chemins
possibles (destinations recevront
plusieurs copies)
Tous les nuds recevront le
paquet (diffusion)
Gnre un grand nombre de
paquets dupliqus
limination des paquets dupliqus:
Diminue un compteur de sauts -
quand il atteint zro on limine le
paquet
Ajoute un numro de squence la
source - limine les numros dj
vus (permet aussi la destination
didentifier les copies)

11
L'inondation - Utilisation
Proprits
Trs robuste tous les chemins possibles sont essays
Au moins un paquet prend le chemin le plus court
Tous les noeuds sont visits.
Rarement utilis mais peut tre intressant dans certains
cas:
Applications militaires o les nuds peuvent tre
dtruits
Base de donnes distribue o on veut mettre jour
toutes les bases
Mettre jour des tables de routage dans les nuds de
rseau
Dcouverte du chemin le plus court ou le plus rapide

12
Routage alatoire

Les nuds slectionnent une sortie pour chaque


paquet reu (sans considrer le port dentre)
La slection est alatoire
Avec probabilit gale pour toutes les port de sortie, se
fait base de circuit cyclique (round robin)
Dfinit un probabilit de slection pour chaque port de
sortie, par exemple, en se basant sur le dbit binaire ou
le cot des liaisons associs au ports
Encore, aucune information du rseau est
ncessaire (ou au minimum de linformation
locale)
Mais la route nest ni le plus court ou le moins
coteux
13
Routage adaptif (dynamique)
Utilis par la majorit des rseaux commutation de
paquets
Les dcisions de routage changent avec tout changement
de condition des rseaux
Dfaillance
Congestion
Ncessite de linformation du rseau
Dcisions plus complexes
Compromis entre la qualit du rseau et leffort pour
ladaptation
Ragir trop rapidement peut causer des oscillations
Ragir trop lentement est pertinent
Amliore la performance

14
Classification du routage

Chaque nud collecte les informations


concernant le rseau selon diffrentes sources
(dfinit la classification)
Information local, isol (longueur des files dattente)
(rare)
Nuds adjacents (routage de vecteur de distance)
Tous les nuds (routage d'tat de liaison)
A partir de ces informations, chaque nud
calcule sa table de routage
Chaque nud doit avoir la capacit de faire les
calculs

15
Exemple de routage adaptif isol
Chacune des liaisons (j ) a un facteur de biais Bji qui indique la prfrence dun
routage appropri pour la destination i.
Le plus bas facteur de biais implique la plus courte route vers la destination.
Qj reprsente la longueur de la file la liaison j
Choisit la liaison qui minimise Qj + Bji
Un paquet destin au nud 6 arrive du nud 1

Bj6

16
ARPANET stratgies de routage (1)

Premire gnration
1969
Adaptatif et distribu
Lestimation du dlai est le critre de performance
Utilise une stratgie vecteur de distance avec algorithme
Bellman-Ford
Nud change son vecteur de dlais avec ses voisins
Met jour sa table sur linformation reue
Ne considre pas les dbit de transmission, seulement
les longueurs des files dattente
La longueur des files nest pas une bonne mesure du
dlai
Rpond lentement lembouteillage

17
Routage vecteur de distance

Lalgorithme Bellman-Ford est utilis dans le routage


vecteur de distance
Chaque routeur change de l'information
d'acheminement avec ses voisins
Dans le message d'acheminement, on indique le cot
(mtrique) pour chaque rseau
Utilise les cots pour dterminer les chemins vers les
nuds du rseau

18
Algorithme Bellman-Ford
Dtermine les chemins les moins coteux avec
une liaison, ensuite ceux les moins coteux
avec 2 liaisons, ensuite ceux les moins coteux
avec 3 liaisons, ainsi de suite.
Dfinit
s = nud source
w(i, j) = cot du nud i au nud j; w(i,i)=0 et w(i, j)
= si les deux nuds ne sont pas lis directement;
w(i, j) 0 si le deux nuds sont lis directement
h = nombre maximum de liaisons dans les chemins
considrs
Lh(n) = cot du chemin le moins coteux du nud s
au nud n avec aux plus h liaisons

19
Algorithme Bellman-Ford - tapes
tape 1: Initialisation
Initialise L0(n) = pour tout n s, et Lh(s) =
0 pour tout h.
tape 2: Mise jour
Pour chaque h successif,
Pour chaque nud n, considrer le chemin avec des
nuds adjacents j ayant des chemins de longueur h
et dtermine les valeurs Lh(n). Retient les chemins
les moins coteux.
Lh+1(n)=minj[Lh(j)+w(j,n)]
Rpte tape 2 jusqu ce que les cots
des chemins ne changent plus.
20
Algorithme Bellman-Ford - Exemple

Appliquons lalgorithme lexemple de rseau


h Lh(2) Voie Lh(3) Voie Lh(4) Voie Lh(5) Voie Lh(6) Voie

0
-
-
-
-
-

1 2 1-2 5 1-3 1 1-4


-
-

2 2 1-2 4 1-4-3 1 1-4 2 1-4-5 10 1-3-6


3 2 1-2 3 1-4-5-3 1 1-4 2 1-4-5 4 1-4-5-6
4 2 1-2 3 1-4-5-3 1 1-4 2 1-4-5 4 1-4-5-6

21
Algorithme Bellman-Ford - Exemple

22
ARPANET stratgies de routage (2)

Deuxime gnration
1979
Utilise le dlai comme critre de performance
Mesure le dlai directement
Calcule les dlais tous les 10 seconds, et lors de
changement significatif, les partage avec tous les autres
nuds
Utilise une stratgie tat de liaison avec lalgorithme
Dijkstras
Lapproche est bonne pour un trafic lger ou moyen
Mais pour le trafic lourd, la corrlation entre les valeurs
de dlais et les dlais rels aprs la mise jour des
tables de routage

23
Routage tat de liaison

Chaque routeur envoie un paquet d'tat de


liaison (LSP - link state packet) ses voisins (le
LSP contient de l'information au sujet de l'tat de
chaque liaison du routeur)
Un routeur envoie son LSP ainsi que les LSP qu'il
a reus
ventuellement, tous les routeurs connaissent
l'tat de toutes les liaisons du rseau
Un routeur prend ses dcisions d'acheminement
partir de l'information de sa base de donnes
d'tat de liaison - utilisant par exemple
l'algorithme du chemin le plus court tel que
lalgorithme Dijkstra

24
Algorithme Dijkstra

Dfinit un graphique de toutes les liaisons du


rseau avec un distance entre chaque nud
Distance peut reprsenter: a) nombre de saut, b)
distance gographique, c) dlai de file dattente et de
transmission.
En gnral, la distance peut tre calcule partir de
plusieurs critres: distance, largeur de bande, cot de
communication, trafic moyen, longueur moyenne de file
dattente, etc.
Calcule le chemin le plus court entre tous les
nuds, o le cot du chemin gale laddition des
cots de toutes les liaisons qui composent le
chemin
25
Algorithme Dijkstra - Dfinitions

N = ensemble des nuds du rseau


s = nud source
T = ensemble des nuds considrs par
lalgorithme jusqu prsent
w(i,j) = cot du nud i au nud j; w(i,i)=0 et
w(i,j) = si les deux nuds ne sont pas lis
directement; w(i,j) 0 si le deux nuds sont lis
directement
L(n) = cot du chemin le plus court du nud s
au nud n, calcul jusqu prsent

26
Algorithme Dijkstra - tapes
tape 1: Initialisation
Initialise T = {s} , i.e. les nuds considrs contient le
nud source
L(n) = w(s,n) pour n s, i.e. cot des chemins au dbut
gale cot des liaisons
tape 2: Prochain nud
Trouvez le nud voisin x qui nest pas dans T, ayant le
chemin le plus court du nud s. Ajoutez ce nud x T.
tape 3: Mettre jour les cots
Mettre jour les cots des chemins en considrant les
voisins du nud x ajout M. Si les voisins de w offre un
chemin L(n) plus court, le nouveau chemin replace le vieux.
L(n) = min[L(n), L(x) + w(x, n)] pour tous n T
Rptez les tapes 2 et 3 jusqu ce que tous les nuds
fassent partie de T

27
Algorithme Dijkstra - Exemple

Appliquez lalgorithme lexemple de rseau


pour le nud 1
Itr. T L(2) Voie L(3) Voie L(4) Voie L(5) Voie L(6) Voie
1 {1} 2 1-2 5 1-3 1 1-4
-
-

2 {1,4} 2 1-2 4 1-4-3 1 1-4 2 1-4-5


-

3 {1,2,4} 2 1-2 4 1-4-3 1 1-4 2 1-4-5


-

4 {1,2,4,5} 2 1-2 3 1-4-5-3 1 1-4 2 1-4-5 4 1-4-5-6


5 {1,2,3,4,5} 2 1-2 3 1-4-5-3 1 1-4 2 1-4-5 4 1-4-5-6
6 {1,2,3,4,5,6} 2 1-2 3 1-4-5-3 1 1-4 2 1-4-5 4 1-4-5-6

28
Algorithme Dijkstra Exemple (suite)

29
ARPANET stratgies de routage (3)

Troisime gnration
1987
Le calcule des cots de liaison est chang
Mesure le dlai moyen sur 10 secondes
Normalise la valeur selon la valeur courante et les
valeurs prcdentes
Calcule plutt lutilisation des liaisons que le dlai

30
Rendement des
stratgies de routage
valuation du routage se fait selon les attributs de routage:
Exact et simple
Robuste et stable
Juste et optimal
Efficacit
Algorithme Dijkstra
Lors des calculs de cots, linformation de tout le rseau est
ncessaire (voir tape 3 de lalgorithme) - plus complexe que
lalgorithme Bellman-Ford
Se converge plus rapidement - obtient de linformation des nuds
lointains en moins ditrations
Algorithme Bellman-Ford
Obtient les cots Lh(n) des voisins, dont les tables de routage sont
changes avec les voisins
Prend plus ditrations pour la convergence, puisque les informations
des nuds lointains doivent se propager travers les tables de voisins

31
Rendement des
stratgies de routage (suite)
En gnral, les algorithmes tat de liaisons offrent un
meilleur rendement que les algorithmes vecteur de distance
Par contre, les algorithmes tat de liaisons exigent des
calculs plus complexes et linondation dISPs
Les algorithmes la pointe de la technologie sont ceux
d'tat de liaisons

32
Protocoles de routage et systmes
autonomes (AS)
Dans l'Internet, un groupe de rseaux avec
routeurs administr par une seule autorit est
appel systme autonome (AS - autonomous
system)
Les routeurs d'un AS utilisent le mme protocole
afin de mettre tous jour l'information de
routage
Il existe au moins un chemin entre tous les
rseaux et sous-rseau dans un AS
IP permet l'utilisation de plusieurs protocoles de
routage

33
Protocoles de routage et systmes
autonomes (suite)
Protocole de routage intrieur (IRP - Interior
Routing Protocol).
Protocole de routage utilis lintrieur dun AS.
Les routeurs les utilisent pour changer des informations
au sujet du rseau
Exemples:
Protocole d'information de routage (RIP - Routing
Information Protocol): bas sur le comptage de sauts,
stratgie vecteur de distance.
Protocole de routage intrieur par passerelle (IGRP -
Interior Gateway Routing Protocol): Protocole appartenant
Cisco.
Ouvrir le chemin le plus court en premier (OSPF - Open
Shortest Path First ): stratgie tat de liaison.

34
Protocoles de routage et systmes
autonomes (suite)
Protocole de routage extrieur (ERP - Exterior Routing
Protocol).
Protocole de routage entre les AS.
BGP (Border Gateway Protocol).
IDRP (Interdomain Routing Protocol).

35
Application des IRP et ERP

36
Stratgies de routage

Vecteur de distance
change dinformation avec voisin
Au sujet des rseaux (sous-rseaux) locales du routeur
Au sujet des rseaux (sous-rseaux) distance, y compris
cot et distance (nombre de sauts)
RIP Routing Information Protocol
tat de liaison
Propage les informations au sujet des liaisons locales
tous les autres routeurs du rseau
Propage tous changements aperus
Avec base de donne, calcule les meilleurs chemins
OSPF - Open shortest path first

37
Protocole de routage extrieur

Ni vecteur de distance, ni tat de liaison ils ne


sont pas efficace dans ce contexte
Le vecteur de distance utilise la mme mesure de
distance
Les ASs ont des priorits diffrentes
Certain on des restrictions qui ne permettent pas
lutilisation dautres ASs
Le vecteur de distance ne donne aucune information au
sujet des ASs dans les routes
Diffrents ASs utilise diffrentes stratgie de routage, ce
qui empche une stratgie commune travers plusieurs
ASs
Linondation des informations (tat de liaison) nest pas
possible travers plusieurs ASs
38
ERP Vecteur dacheminement

limine les mtriques (cots) et se base sur les


chemins, i.e. les ASs croiser pour arriv la
destination
Ne comprend pas de cots ni de distance
Chaque block dinformation donne les ASs
visiter sur un chemin
Permet dappliquer un politique de slection
Exemple: viter les chemins contenant certain ASs qui:
Noffre pas de capacit dsire (dbit de transmission)
Ont tendance tre congestionns
Noffre pas une qualit dopration dsire
Noffre pas la scurit dsire
Exemple: minimiser le nombre de ASs franchir

39
RIP Routing Information Protocol

Routage vecteur de distance


Stations et routeurs participent au routage RIP
Appareils actifs changent leurs connaissances de
routes avec les autres
Appareils passif coutent au messages RIP pour
mettre jour leur table de routage (nenvoie pas
dinformation)
Seulement les routeurs sont actifs, les htes sont
passifs.

40
RIP (suite)

Un routeur diffuse ses voisins une mise jour


complte tous les 30 secondes
Le processus routed de systmes utilise le RIP
pour entretenir les tables de routage
RIP utilise le nombre de sauts (hop count) pour
mesurer la distance
Le nombre de sauts ne donne pas toujours les
rsultats optimaux
Les appareils actifs et passifs coute aux
messages RIP diffuss, et mets jour leur tables
de routage avec lalgorithme de vecteur de
distance (version de Bellman-Ford)

41
Algorithme de mis jour RIP
Reoit un message rponse RIP
Ajoute un saut au nombre de sauts de chaque destination
dans la rponse
Pour chaque destination trouve dans la rponse:
Si (destination pas dans la table de routage)
Ajoute destination et nombre de sauts dans la table de routage
Else
Si (prochain saut est le mme)
Remplacer entre dans la table avec destination reue
Else
Si (nombre de sauts reu est plus petit que celui de la
table)
Remplace nombre de sauts dans table avec celui
reu
Else
Fait rien
Retour

42
Exemple dinternet

43
change dinformation
Jenvoie mes
informations
A et C
Jenvoie mes Jenvoie mes
informations informations
B, E et F Jenvoie mes B et D
informations
A

Jenvoie mes
informations
Jenvoie mes
C et E
informations
A et D

44
Table de routage

ID du rseau Cot Prochain saut

45
Tables initiales

46
Mis jour table du routeur A

Ancienne table de A

Un saut
Nouvelle
Reu de B Aprs Combin table
ajustement de A

47
Tables
finales de
routage

48
OSPF (Open Short Path First)
IRP (internet routing protocol) de LInternet
Remplace le Routing Information Protocol
(RIP)
Utilise la stratgie tat de liaison
Chaque routeur entretien un liste le ses liaisons aux
rseaux locaux et les cots associs ces liaisons
Transmet des mis jour des ces informations tous
les autres routeurs
Trafic rduit puisque les messages sont petits et
envoys peu souvent
RFC 2328
Les chemins avec les cots le plus bas sont
choisis en se basant sur les cots de liaisons
obtenus des autres routeurs
49
Stratgie tat de liaison
Jenvoie mes
informations tous
les autres routeurs
Jenvoie mes
informations tous
Jenvoie mes les autres routeurs
informations tous
les autres routeurs
Jenvoie mes
informations tous
les autres routeurs

Jenvoie mes Jenvoie mes


informations tous informations tous
les autres routeurs les autres routeurs

50
La vision du rseau chez OSPF

La topologie du rseau sauvegard comme un


graphe orient (directed graph)
Sommets ou nuds
Routeur
Rseau
Transit porte donnes dont la source ni la destination est
branche au rseau
Tronqu nest pas un rseau transit
Arcs
Arc de graphe
Connecte deux routeurs avec liaison point point
Connecte un routeur et un rseau (routeur branch au
rseau)

51
Les cots dans un rseau OSPF

52
Paquet dtat de liaison

Source Rseau Cot Voisin

53
Linondation des paquets LSP

54
Source Rseau Cot Voisin

Base de
donnes
des tats
de liaison

55
Cots utiliss avec lalgorithme Dijkstra

56
Applique lalgorithme Dijkstra

57
Table de routage pour le nud A

Rseau Cot Prochain


Routeur

58
Exemple dAS

59
Graphe
orient du AS

60
Arbre des
chemins les
plus courts

61
Prochain saut

Table
dacheminement

62
BGP Border
Gateway Protocol

Pour rseaux TCP/IP


Le ERP prfr de lInternet
Messages envoys via
connexions TCP
Open
Update
Keepalive
Notification
Procdures
Acquisition de voisin (neighbor
acquisition)
Accessibilit de voisin
(neighbor reachability)
Accessibilit de rseau(network
reachability)

63
Messages BGP

Ouvrir (Open) Pour tablir un relation avec un


routeur voisin.
Mise jour (Update)
Transmettre information au sujet dune route et/ou
Transmettre une liste de routes limier
Entretien (Keepalive)
Rpondre au message Ouvrir
Confirmer priodiquement la relation avec les voisins
Notification (Notification) pour aviser dun
erreur

64
Acquisition de voisin
Deux routeurs sont voisins quand il sont branchs au
mme rseau
Lacquisition de voisin a lieu entre deux routeurs voisins de
diffrent systmes autonomes quand ils sentendent pour
changer des informations de routage
Un routeur envoie un message de demande (message
Open) lautre, qui peut accepter (message Keepalive)
ou refuser

65
Accessibilit de voisin

Une fois la relation tablie avec le voisin, la procdure


daccessibilit la maintien
Les deux routeurs schangent des messages dentretien
(keepalive)

66
Accessibilit de rseau

Chaque routeur maintien un base de donnes des rseau


auquel il a accs et le meilleur chemin pour atteindre
chaque rseau
Lors dun changement de la base de donnes, le routeur
envoie un message de mis jour (Update) qui est diffus
aux autres routeurs BGP

67
change dinformation de routage

Lessence du BGP est R5 R9


dchange de AS_Path: la liste
didentificateurs {AS2,
linformation de AS1}
routage avec routeurs Next_Hop: ladresse IP
BGP dautres ASs de R5
NLRI: une liste des
Exemple rseaux dans AS1
R1R5 R9 other
AS_Path: lidentit de
AS_Path:
AS1
{AS3,AS2,AS1}
Next_Hop: ladresse IP
Next_Hop: ladresse IP
de R1
de R9
NLRI: une liste des
NLRI: une liste des
rseaux dans AS1
rseaux AS1

68

Vous aimerez peut-être aussi