Oct 10, 2015
1Protocoles de routage RIP, OSPF, BGP
ARTEric [email protected]
ENS LYON Dpartement IFART-02-2
Remerciements
Luc Saccavini, INRIA Laurent Toutain, ENST Bretagne Isabelle Chrisment, LORIA Nick McKeown, Stanford University
2ENS LYON Dpartement IFART-02-3
Rfrences pour ce chapitre B.Halabi, Internet Routing Architectures , Cisco Press, 1997
Christian Huitema, Routing in the Internet ,Prentice Hall, 1995, ISBN : 0131321927
Christian Huitema, Et Dieu Cra l'Internet , Eyrolles, ISBN : 2-212-08855-8
James Kurose et Keith Ross, Analyse structure des rseaux , Pearson, 2nddition, 2003
Guy Pujolle, Les Rseaux , ISBN : 2212110863
J. W. Stewart, BGP4 Inter-Domain Routing in the Internet , Addison-Wesley, 1999
Andrew Tanenbaum, Computer Networks , Pearson Education, ISBN : 2744070017
BGP Case studies
ENS LYON Dpartement IFART-02-4
Bibliographie
J. McQuillan, I. Richer et E. Rosen, The new routing algorithm for the ARPANET, IEEE Transactions on Communications, COM-28(5), mai 1980.
S. Floyd et V. Jacobson, The synchronisation of Periodic RoutingMessages, ACM Sigcom 93 symposium, septembre 1993
3ENS LYON Dpartement IFART-02-5
Plan du cours
I. Routage unicasti. Principes ii. RIPiii. OSPFiv. BGP
1 Gnralits
Cest quoi le routage
cest o la mer ?
4ENS LYON Dpartement IFART-02-7
Quelques rappels 3TC sur IP ! Chaque objet IP est identifi par une adresse IP
qui contient ladresse du rseau IP local (extraite grce au Netmask) Le numro de la machine dans le rseau IP local
Chaque objet IP est physiquement connect : un rseau local de niveau 2 (Ethernet, liaison srie,
GPRS, X25, Frame Relay, ATM) La communication avec dautres objets IP du
mme rseau IP se fait directement grce au rseau local de niveau 2
La communication avec dautres objets IPdautres rseaux IP se fait grce des passerelles de niveau 3 ou Routeurs
ENS LYON Dpartement IFART-02-8
Et en pratique
la partie communicante de lobjet IP est dsigne interface rseau (ou interface)
notion de machine adresse IP association non bijective une machine peut avoir plusieurs interfaces
rseau, et donc plusieurs adresses IP (cas des routeurs
Une interface peut avoir plusieurs adresses IP aussi
5ENS LYON Dpartement IFART-02-9
Du hyper connu sur IP Le protocole IP est non connect
Pas de circuit virtuel entre metteur et destinataire Les paquets IP peuvent arriver dans le dsordre Les paquets IP peuvent ne pas arriver Pas dtat dans le rseau
Le protocole IP est dit de bout en bout
Le protocole IP est dit best effort Chaque noeud du rseau fait de son mieux pour
acheminer les paquets
ENS LYON Dpartement IFART-02-10
On reste au chaud chez soi : IP sur Ethernet (3TC toujours)
Interface Eth0 :Niveau 2 (Ethernet)Adresse MAC : 00:04:76:0b:9b:f4
Niveau 3 (IP)Adresse IP : 195.177.10.1Netmask IP : 255.255.255.0
Interface Eth0 :Niveau 2 (Ethernet)Adresse MAC : 00:04:76:0f:a3:e7
Niveau 3 (IP)Adresse IP : 195.177.10.4Netmask IP : 255.255.255.0
Rseau IP 195.177.10.0/24
6ENS LYON Dpartement IFART-02-11
On reste au chaud chez soi : IP sur Ethernet (3TC toujours)
Rseau IP 195.177.10.0/24
MAC source : 00:04:76:0b:9b:f4MAC destination :00:04:76:0f:a3:e7Reste de len tte Ethernet
Fin de trame Ethernet
IP source :195.177.10.1IP destination :195.177.10.3Reste de len tte IPDonnes du paquet IP
ENS LYON Dpartement IFART-02-12
IP sur Ethernet (cont) Dans le cas dEthernet, un mcanisme spcifique : ARP
(Address Resolution Protocol, RFC826) permet de crer et maintenir jour une table de correspondance entre les adresses de niveau 2 (MAC) et 3 (IP)
Contenu des tables ARP de S1 et S2
Rseau IP 195.177.10.0/24
Table ARP de S100:04:76:0b:9b:f4 (195.177.10.1)00:04:76:0f:a3:e7 (195.177.10.3)
Table ARP de S200:04:76:0b:9b:f4 (195.177.10.1)00:04:76:0f:a3:e7 (195.177.10.3)
7ENS LYON Dpartement IFART-02-13
Cest quoi router ?
R3
A
B
C
R1
R2
R4 D
E
FR5
R5FR3ER3DNext HopDestination
DD
ENS LYON Dpartement IFART-02-14
Cest quoi router ?
R3
A
B
C
R1
R2
R4 D
E
FR5
R5FR3ER3DNext HopDestination
D
DDD
16 3241
DataOptions (if any)
Destination AddressSource Address
Header ChecksumProtocolTTLFragment OffsetFlagsFragment ID
Total Packet LengthT.ServiceHLenVer
20
byt
es
8ENS LYON Dpartement IFART-02-15
Cest quoi router ?
A
B
C
R1
R2
R3
R4 D
E
FR5
ENS LYON Dpartement IFART-02-16
Points de Prsence (POPs)
A
B
C
POP1
POP3POP2
POP4 D
E
F
POP5
POP6 POP7POP8
9ENS LYON Dpartement IFART-02-17
Composants architecturaux dun routeur IP
Plan de contrle
Plan de donnesper-packetprocessing
SwitchingForwarding
Table
RoutingTable
RoutingProtocols
ENS LYON Dpartement IFART-02-18
Architecture gnrique
LookupIP Address
UpdateHeader
Header ProcessingData Hdr Data Hdr
~1M prefixesOff-chip DRAM
AddressTable
AddressTable
IP Address Next Hop
QueuePacket
BufferMemory
BufferMemory
~1M packetsOff-chip DRAM
10
ENS LYON Dpartement IFART-02-19
Architecture gnrique
LookupIP Address
UpdateHeader
Header Processing
AddressTable
AddressTable
LookupIP Address
UpdateHeader
Header Processing
AddressTable
AddressTable
LookupIP Address
UpdateHeader
Header Processing
AddressTable
AddressTable
Data Hdr
Data Hdr
Data Hdr
BufferManager
BufferMemory
BufferMemory
BufferManager
BufferMemory
BufferMemory
BufferManager
BufferMemory
BufferMemory
Data Hdr
Data Hdr
Data Hdr
ENS LYON Dpartement IFART-02-20
Un pas vers linconnu : IP sur Ethernet mais sur des rseaux diffrents
Interface Eth0 :Niveau 2 (Ethernet)Adresse MAC : 00:04:76:0b:9b:f4
Niveau 3 (IP)Adresse IP : 195.177.10.1Netmask IP : 255.255.255.224
Interface Eth0 :Niveau 2 (Ethernet)Adresse MAC : 00:04:76:0f:a3:e7
Niveau 3 (IP)Adresse IP : 195.177.10.4Netmask IP : 255.255.255.224
Rseau IP 195.177.10.0/27 Rseau IP 195.177.10.64/27
Interface eth0 :Niveau 2 (Ethernet)@ MAC : 00:00:0c:fa:01:2aNiveau 3 (IP)@IP : 195.177.10.62Netmask : 255.255.255.224Interface eth1 :Niveau 2(Ethernet)@MAC : 00:00:0c:3f::ac:0bNiveau 3 (IP)@ IP : 195.177.10.126Netmask : 255.255.255.224
11
ENS LYON Dpartement IFART-02-21
Couche rseau
Transmission dun paquet IP de S1 vers S3 via le routeur R1
MAC source : 00:04:76:0b:9b:f4MAC destination ::00:00:0c:fa:01:2aReste de len tte Ethernet
Fin de trame Ethernet
IP source :195.177.10.1IP destination :195.177.10.65Reste de len tte IPDonnes du paquet IP
Rseau IP 195.177.10.0/27 Rseau IP 195.177.10.64/27
MAC source : :00:00:0c:3f::ac:0bMAC destination ::00:04:76:0f:a3:e7Reste de len tte Ethernet
Fin de trame Ethernet
IP source :195.177.10.1IP destination :195.177.10.65Reste de len tte IPDonnes du paquet IP
ENS LYON Dpartement IFART-02-22
Routage IP sur Ethernet (cont) Table de routage de S1, R1 et S2:
Table de routage de S1195.177.10.0/27 via eth0195.177.10.64/27 via 195.177.10.62
Table de routage de S2195.177.10.64/27 via eth0195.177.10.0/27 via 195.177.10.126
Rseau IP 195.177.10.0/27 Rseau IP 195.177.10.64/27
Table de routage de R1195.177.10.0/27 via eth0195.177.10.64/27 via eth1
Erreur ds le netmask
12
ENS LYON Dpartement IFART-02-23
Rle de la couche rseau Choix de litinraire (route) entre src et dst :
Algorithme de routage Routage par information de liens / tat de liens Routage vecteur de distance
Rexpdition (forwarding) Comment les paquets sont relays
tablissement de lappel (e.g., ATM) Aucun service de ce genre dans Internet
ENS LYON Dpartement IFART-02-24
Fonction dun routeur
Contrairement aux ponts, les routeurs doivent tre configurs.
Ils doivent connatre les adresses des routeurs ou des stations vers lesquels ils envoient les paquets.
13
ENS LYON Dpartement IFART-02-25
Un problme simple !A B
R1R1
R2R2
R3R3
R4R4
Comment R1 choisit une route vers B?
ENS LYON Dpartement IFART-02-26
Problmatique du routage IP
Routage en fonction de ladresse destination uniquement
Routage de proche en proche Chaque routeur prend la dcision de routage qui lui parat la
meilleure (en fonction de sa table de routage)
14
ENS LYON Dpartement IFART-02-27
Modlisation
Plus court chemin entre A et C ? Plus court chemin entre A et F ?
Avez-vous test toutes les possibilits ? Combien de chemins existe-t-il entre A et F ? En gnral dans un graphe G=(V,E) avec n=|V| et
m=|E| ?
A
B
D
C
E
F
2
1
2
1
35
5
2
13
A D E CA D E F
2 Algorithmes de routage
Comment construire des routes, les maintenir
15
ENS LYON Dpartement IFART-02-29
Classification des algorithmes de routage
globale Connaissance globale du rseau Calcul centralis ou distribu Notion dtat de liens
dcentralis Pas de connaissance globale Par itration
ENS LYON Dpartement IFART-02-30
Classification des algorithmes de routage
statiques Les parcours changent
peu Modification humaine
dynamiques Parcours sadaptent la
topologie
Sensible la charge Les cots varient de
faon dynamiques McQuillan 1980 Huitema 1995
Insensible la charge Les cots ne refltent
pas le niveau de congestion RIP, OSPF
16
ENS LYON Dpartement IFART-02-31
Algorithme de routage
change automatique de tables de routage. Table de routage :
pour aller : rseau, sous- rseau, machine.
passer par : attachement local, routeur.
avec un cot de nombre de sauts, fonction du dbit, dlai...
ENS LYON Dpartement IFART-02-32
Route statique
Commande route Permet dindiquer une route
Vers un rseau (net) ou vers un quipement (host) Ou une route par dfaut (default)
Syntaxe route add|delete [net|host]
destination|default gateway metric Sur les quipements non routeurs, une seule route par
dfault est dfinie
17
ENS LYON Dpartement IFART-02-33
Route statique
Commande ifconfig Permet de configurer une interface en lui
attribuant une adresse IP Syntaxe
ifconfig eth0 @IP netmask @mask broadcast @cas
Consultation des routes : Commande netstat
ENS LYON Dpartement IFART-02-34
Routage statique
Caractristiques Trs stable (fichier de configuration) Fastidieux et risque derreur important si grand rseau (>10
routeurs)
Rserv aux cas simples Postes de travail (une route par dfaut vers le routeur le
plus proche) Petits rseaux (un routeur avec une route par dfaut vers
le FAI) Pas de possibilit de grer des routes redondantes
18
ENS LYON Dpartement IFART-02-35
Problmes du routage statique
Statique implique Mise jour manuelle de tous les quipements
rseaux Difficile maintenir en cas dvolution du rseau
Recommandation Stations routage statique Routeurs routage dynamique
ENS LYON Dpartement IFART-02-36
Technique 1 : Innondation
Avantages : Toute destination est atteignable. Utile si la topologie est inconnue.
Inconvnients : Des routeurs reoivent des paquets dupliqus. Problme de boucles
Les routeurs retransmettent les paquet sur tous les ports
R1
19
ENS LYON Dpartement IFART-02-37
Routage dynamique
Caractristiques Adaptatif lvolution du rseau (vie et mort des routeurs
et de leurs liaisons) Configuration simple (varie peu avec le nombre de
routeurs)
Objectifs dun protocole de routage Optimisation : slection des meilleures routes limination les boucles de routage (routes circulaires) Efficacit : peu de consommation de bande passante et de
CPU Stabilit : convergence et reconfiguration rapides Simplicit : configuration simple
ENS LYON Dpartement IFART-02-38
Les protocoles de routage dynamique
Les protocoles intrieurs (IGP) Distance-vecteur : RIP, IGRP tat des liens : OSPF, IS-IS Taille
20
ENS LYON Dpartement IFART-02-39
Algorithme de Routage Vecteur de Distance Itratif
Continue tant quil y a des informations changer
Asynchrone Chaque nud est indpendant
Distribu Aucun nud na la vison complte du rseau
ENS LYON Dpartement IFART-02-40
Vecteur de distance change dinformation entre routeurs adjacents.
Les routeurs diffusent vers les noeuds adjacents leur table de routage rudimentaire constitue de ses diffrents voisins accessibles et du cot de la liaison.
Quand un routeur reoit une nouvelle table, il effectue les traitements suivants pour chaque entre de la table reue : Si lentre nest pas dans sa table, il la rajoute. Si le cot de la route propose par la table plus le cot de la route pour aller
jusquau routeur (metteur de la table) est infrieur au cot indiqu dans sa table, sa table de routage est modifie pour prendre en compte cette nouvelle route.
Sinon, il ny a pas de changement.
La modification dune entre dans la table dun routeur engendre lmission de la nouvelle table sur tous les ports du routeur
Les changes entres les routeurs continuent jusqu ce que lalgorithme converge
21
ENS LYON Dpartement IFART-02-41
Technique 2 : Bellman-Ford Algorithm
Objectifs : Calculer une route de (R1, , R7) vers R8Qui minimise le cot.
R5R3
R7
R6R4R2R1
1 1 4
2
4
2 2 3
23
R8
Exemples de cots :Distance, dbit, prix, congestion/dlai,
ENS LYON Dpartement IFART-02-42
La solution semble vidente !
Cest un arbre de recouvrement enracin en R8 Lalgo de Bellman-Ford calcule cet arbre
R3
R1
R5
R4
R8
R6R2
R7
1 1 4
2
4
2 23
2 3
22
ENS LYON Dpartement IFART-02-43
Algorithme de Bellman-Ford distribu
1 2 7 8
0
8
( )( , , ,..., ).
1. Let where: cost from to .
2. Set
3. Every seconds, router sends to
its neighbors.
4. If router is told of a lower cost path
to , it updates
n i i
i
X C , C , ..., C C R RX
T i C
iR C
= =
=
1
1
( )(.)
. Hence,
where determines the next step improvement.
5. If then goto step (3).
6. Stop.
n ni
n n
X f Xf
X X
+
+
=
ENS LYON Dpartement IFART-02-44
Bellman-Ford
R5R3
R7
R8
R6R4R2R11 1 4
2
4
2 2 3
23
R2
R5R7
R4 R6
R8R3
R11 1 4
22
32
42 3
42
3
2
3, R8R7
2, R8R6
2, R8R5
InfR4
4, R8R3
InfR2
InfR1
23
ENS LYON Dpartement IFART-02-45
Bellman-Ford Algorithm
R3
R5R7
R8
R6R4R2R11 1 4
222
3
324
6 4 6 2
42 3
3, R8R7
2, R8R6
2, R8R5
5, R2R4
4, R8R3
4, R5R2
5, R2R1
3, R8R7
2, R8R6
2, R8R5
6, R7R4
4, R8R3
4, R5R2
6, R3R1
R8
R6R4R2R1
R3R5
1 1
42
32
5 4 5 2
42
32
R7
Solution
ENS LYON Dpartement IFART-02-46
Bellman-Ford
Questions :1. Combien de temps prend lalgorithme pour
sexcuter ?
2. Est ce quil converge ? Toujours ?
3. Que se passe-t-il si un cot change ?
4. Si un lien casse ?
24
ENS LYON Dpartement IFART-02-47
Bellman-Ford : Bad news travels slowly
R4R3R2R11 1 1
Calcul des distances vers R4:
5,R24,R35,R233,R24,R33,R223,R22,R33,R211, R42,R33,R20R3R2R1Time
Counting to infinity
R3 R4 fails
ENS LYON Dpartement IFART-02-48
Heuristiques pour compter linfini
Dfinir linfini comme tant un entier petit , e.g., on sarrte de compter 16
Vecteur de chemin
Lhorizon partag
Lhorizon partag avec retour empoisonn
Source tracing
25
ENS LYON Dpartement IFART-02-49
Vecteur de chemin Manque dinformations dans le vecteur
Ex: pour aller de R2 R4 , il faut passer par R3
Solution : Annoter chaque entre avec le chemin pour obtenir le cot
Les vecteurs ncessitent des tables assez grandes
ENS LYON Dpartement IFART-02-50
Panne dun lien ?
Que se passe-t-il si la Liaison de A vers E tombe en panne ?
DA
B
E
C11
1
FG1
1
11
1
26
ENS LYON Dpartement IFART-02-51
Horizon partag
Un routeur u nannonce jamais la route son voisin v, si v est le prochain nud vers cette destination C ne prvient pas A du cot vers E comme il
utilise A comme prochain nud.
A
B
EC1 1
1 D
F G1
1
11
1
ENS LYON Dpartement IFART-02-52
Horizon partag avec retour empoisonn Mthode plus agressive Un routeur u donne son voisin v, si v est le
prochain nud vers cette destination, une route infinie C prvient A que le cot vers E est infini comme il
utilise A comme prochain nud.
A
B
EC1 1
1 D
F G1
1
11
1
27
ENS LYON Dpartement IFART-02-53
Source tracing
Le vecteur de distance contient le routeur prcdent la destination
1
3
2 4
5 6
Destination Next Last
2 2 13 3 14 2 25 2 46 2 5
1 - -
ENS LYON Dpartement IFART-02-54
Technique 3 : Plus courts chemins de Dijkstra Les routeurs mettent des messages ds que ltat
dun lien volue (do le nom Link State Routing)
Chaque routeur calcule tous les plus courts chemins de tous les nuds vers lui-mme
A chaque tape le routeur rajoute le chemin dans son arbre
Pour calculer, in fine, un arbre enracin
28
ENS LYON Dpartement IFART-02-55
Algorithme de Routage tat de liaisons
Stratgie: envoyer tous les nuds (pas seulement les voisins ) linformation au sujet de ses voisins
Distribution de la topologie du rseau et du cot de chaque liaison tous les routeurs
ENS LYON Dpartement IFART-02-56
tat de liaisons
Les nuds ont une copie complte de la carte du rseau
Les nuds excutent le calcul des meilleurs routes localement en utilisant cette carte Plus de boucles.
29
ENS LYON Dpartement IFART-02-57
Carte de rseau
A
B
E
C1 11
D
FG1
1
11
1
A B 1A C 1 A E 1A F 1B A 1B C 1C A 1C B 1C D 1
ENS LYON Dpartement IFART-02-58
tat de liaison
Bas sur 2 mcanismes Dissmination fiable de linformation (reliable
flooding) Pour permettre une mise jour de la base de
donnes Calcul des routes partir des informations locales
30
ENS LYON Dpartement IFART-02-59
Dissmination de la topologie
Chaque routeur met les informations dcrivant les liaisons dans des paquets appels LSP (Link State Packet)
Link State Packet (LSP) LID ou identificateur du nud qui a cr le LSP Une liste des voisins directement connect avec
le cot de la liaison vers chaque voisin numro de squence (SEQNO) time-to-live (TTL) pour ce paquet
ENS LYON Dpartement IFART-02-60
LSP
A
B
E
C1 11
D
FG1
1
11
1A B 1
A C 1
A E 1
A F 1
31
ENS LYON Dpartement IFART-02-61
Inondation ( Flooding) fiable Algorithme
Recevoir un LSP et chercher lenregistrement correspondant dans la base
Si enregistrement pas prsent, lajouter et diffuser le LSP tous les nuds except celui de la rception
Si enregistrement prsent, comparer le numro de squence du paquet reu avec celui stock Si le numro de squence dans la base est plus petit que
celui du LSP reu, diffuser le LSP tous les nuds except celui de la rception
ENS LYON Dpartement IFART-02-62
Inondation ( Flooding) fiable
Gnrer de nouveaux LSPs priodiquement => incrmentation du numro de squence Quel problme peut-il y avoir avec les numros de
squence ? Comment choisir le numro initial, si un
routeur reboot ? Lollipop sequence space [perlman 83]
32
ENS LYON Dpartement IFART-02-63
Inondation ( Flooding) fiablelollipop sequence space
Partitionnement de lespace de numrotation de taille N en 3 parties : De -N/2 0 Le numro 0 De 0 N/2-1
Quand un routeur dmarre il utilise le numro de squence N/2 pour son LSP et ensuite N/2+1, -N/2/+2,.
Quand le numro de squence devient positif, il entre dans la partie circulaire
ENS LYON Dpartement IFART-02-64
-N/2 0
N/2 - 1
Rgle 1 Un LSP de numro de squence a est plus vieux que celui de squence b si :
a < 0 et a < ba > 0 , a < b et b-a < N/4a > 0, b > 0, a >b et a-b > N/4
Rgle 2 Si un routeur obtient un LSP dun autre routeur qui a un numro de squence plus vieux que celui stock dans sa base, il informe ce routeur de son numro de squence
33
ENS LYON Dpartement IFART-02-65
Inondation ( Flooding) fiable
Que se passe-t-il en cas de panne ? Dtection de la panne (message HELLO)
Comment dtruire de vieux LSPs ? Aging process :
Dcrmenter le TTL pour chacun des LSPs stocks avant de diffuser une copie
Le dtruire quand le TTL=0 et rediffuser le LSP avec un TTL de 0 pour le dtruire dans les autres noeuds
ENS LYON Dpartement IFART-02-66
Calcul de la route en thorie
Algorithme utilis : Algorithme du plus court chemin dabord de
Dijkstra (Short Path First) Thorie des graphes
Soit N lensemble des nuds dans le graphe l(i,j) poids sur larc entre le nud i et j . Si aucun arc entre i et j alors l(i,j) = C(n) dtermine le cot du chemin de s vers le nud n
34
ENS LYON Dpartement IFART-02-67
Algorithme de Dijkstra
M = {s}Pour tout n dans N - {s}
C(n) = l(s,n)
Tant que (N M) M = M {w} tel que C(w) est le minimum pour tout w dans (N-M)Pour tout n dans (N-M)C(n) = MIN (C(n), C(w)+l(w,n))
ENS LYON Dpartement IFART-02-68
Calcul de la route en pratique
Algorithme du "Forward Search
Chaque routeur maintient deux listes : Temporaire (T) et Permanent (P)
Chaque liste contient 3 lments: Destination, Cot, Prochain nud
35
ENS LYON Dpartement IFART-02-69
Calcul des routes
1) Initialiser la liste P avec une entre pour le nud lui-mme (s). Cette entre a un cot de 0
2) Pour le nud ajout dans la liste P lors de la prcdente tape et appel Next, slectionner son LSP
3) Pour chaque Voisin de Next, calculer le cot pour atteindre son Voisin comme la somme du cot de s Next avec celui de Next au Voisin.
ENS LYON Dpartement IFART-02-70
Calcul des routes (cont)
4. Deux cas peuvent se produire4. Si Voisin nest prsent ni dans la liste P ni dans la liste T
alors ajouter dans la liste T, avec Nexthop tant la direction que je dois prendre pour atteindre Next
5. b) Si Voisin est prsent dans la liste T et le cot infrieur celui actuellement list pour Voisin, alors remplacer lentre courante par o Nexthop est la direction que je dois prendre pour atteindre Next
5. Si la liste T est vide, arrter. Sinon prendre une entre dans la liste T avec le cot le plus faible,la dplacer dans la liste P et retourner en 2
36
ENS LYON Dpartement IFART-02-71
Choisir le cot des liaisons
Dterminer la faon dont la charge de trafic est distribue dans le rseau Plus le cot est faible pour une liaison, plus la
probabilit de choisir cette liaison dans un plus court chemin est grande
Diffrentes mtriques possibles Mtrique statique Mtrique dynamique de l ARPAnet Mtrique dynamique de l ARPAnet modifie
ENS LYON Dpartement IFART-02-72
Mtrique statique
Le plus simple donn un poids de 1 chaque liaison Le chemin le plus court est le chemin avec le
moins de routeurs intermdiaires Problme ?
Assigner un poids diffrent en fonction du type de liaison Problme ?
37
ENS LYON Dpartement IFART-02-73
Mtrique dynamique de lARPAnet
Le cot dune liaison est proportionnelle la longueur de la file dattente du routeur lentre de la liaison.
Problme quand le rseau est surcharg ?
ENS LYON Dpartement IFART-02-74
Mtrique dynamique de lARPAnetmodifie
Prise en compte galement des capacits des liaisons. Quand la charge de la liaison est faible, son cot
dpend entirement de la capacit de la liaison
38
ENS LYON Dpartement IFART-02-75
Et le routage dans lInternet ?
LInternet est dcoup en systmes autonomes (AS) comprenant chacun un ensemble de routeurs sous une administration unique Stanford (32), HP (71), MCI Worldcom (17373) whois h whois.arin.net ASN MCI Worldcom
Au sein dun AS, ladministrateur met en uvre un protocole de routage interne (IGP) Exemple dIGPs: RIP (rfc 1058), OSPF (rfc 1247). Les routeurs dans le mme AS excutent le mme
algorithme de routage Lalgorithme de routage dans lintrieur dun AS est
appel intra- autonomous system routing protocol ou protocole de routage intra-AS
ENS LYON Dpartement IFART-02-76
Structuration en Systme Autonome
Les systmes autonomes sont connects par des routeurs appels Gateways Routers
Lalgorithme de routage utilis pour dterminer la route entre les AS est appel inter- autonomoussystem routing protocol ou protocole de routage inter-AS
Les routeurs intra-AS ont besoin de connatre les autres routeurs intra-AS et le ou les gatewaysrouters
Entre les AS, on emploie un protocole de routage externe (EGP) Exemple de BGP, BGP-4 (rfc 1771)
39
ENS LYON Dpartement IFART-02-77
Systmes autonomes
ab
da
bc
ab
cAS C
AS A
AS B
Routeur A.c
Table routage
RoutageInter-AS
RoutageIntar-AS
N. layer
DL. layerPhys. Layer
De/vers A.b De/vers A.d De/vers B.a
ENS LYON Dpartement IFART-02-78
Routage dans lInternet
Stub AS Transit ASe.g. backbone service provider
Stub AS
AS A AS B AS C
Interior GatewayProtocol
Interior GatewayProtocol
Interior GatewayProtocol
BGP BGP
40
ENS LYON Dpartement IFART-02-79
Routage au sein dun Stub AS
Il y a un seul point de sortie, on peut donc utiliser un routage par dfaut. Chaque routeur connat tous les IDs au sein dun
AS Les paquets destination des autres AS sont
envoys vers le routeur par dfaut Le routeur par dfaut est un routeur de bordure
vers le prochain AS (border gateway) Tables de routage assez petite dans les AS
Stub
Protocoles de routage RIP
Routing Information Protocol
41
ENS LYON Dpartement IFART-02-81
Historique de RIP
RIPv1 : RFC1058 (06/88) RIPv2 : RFC1387, RFC1388 (01/93),
RFC1723 (04/94) Permet le routage CIDR Diffusion multicast (224.0.0.9) plutt que
broadcast Permet lauthentification des routeurs
RIPng : RFC2080 (01/97), RFC2453 (11/98) Adaptation pour IPv6
ENS LYON Dpartement IFART-02-82
Contexte dutilisation de RIP
Usage pour des rseaux de diamtre < 15 routeurs
Utilisation dune mtrique fixe acceptable Pas de possibilit de prendre en compte de lments
variables dans le temps Une mtrique composite est possible, mais elle sera
statique et elle peut rduire le diamtre maximal effectif du rseau
Temps de convergence de quelques minutes acceptable
En IPv4 et/ou IPv6
42
ENS LYON Dpartement IFART-02-83
Fonctionnement de RIP Bas sur lalgorithme de Belleman-Ford (type distance-vecteur)
chaque route (@IP+netmask) est associe une mtrique (M) qui est sa distance exprime en nombre de routeurs traverser
Chaque routeur envoie ses voisins ses informations de routage (les rseaux quil sait router et mtriques associes) Toutes les 30 secondes systmatiquement
Si un routeur reoit dun voisin ses informations de routage Il calcule les mtriques locales des routes apprises (M M+1) Slectionne les meilleures routes et en dduit sa table de routage Envoie ses voisins ses nouvelles informations de routage si
elles ont chang
NB: Lalgorithme cherche produire les routes de mtriques minimales, mais il est ncessaire davoir un mcanisme permettant de faire augmenter la mtrique dune route (cf. la propagation des routes invalides par poison reverse). Pour ce faire une route annonce par le voisin qui est le next hop d une route dj connue est toujours installe, mme si sa mtrique est plus importante que la route actuelle.
ENS LYON Dpartement IFART-02-84
Fonctionnement de RIP (cont)
Fonctionne au dessus des ports udp 520 (IPv4), 521 (IPv6)
Amlioration de la convergence et de la stabilit limination des boucles
poison reverse : les routes en provenance dun voisin lui sont r-annances avec une mtrique infinie
split horizon : la mtrique maximum est de 15 Minuteurs associs
routing-update (30 secondes 0 5 secondes) route-timeout (180 secondes) route-flush ou garbage-collection (120 secondes)
43
ENS LYON Dpartement IFART-02-85
Dfinition des timers routing-update : priode maximale entre deux annonces pour un routeur.
route-timeout : dure de vie associe chacune des routes apprise par RIP. Aprs expiration de ce minuteur, la route est marque comme invalide dans la table des informations RIP. Elle ne sera efface que lorsque le minuteur route-flush expire. Ce mcanisme permet un routeur de propager linformation de route invalide vers ses voisins (pour tenir compte dune interface rseau qui devient inoprante par exemple). Si pendant ce temps une nouvelle route vers ce prfixe est apprise, elle remplace la route invalide.
route-flush : priodicit de nettoyage de la table des informations RIP. Les routes marques comme invalides sont effaces.
NB: Si tous les routeurs utilisaient des minuteurs routing-update paramtrs avec la mme valeur de 30 secondes par exemple, il se produirait au bout dun certain un phnomne de synchronisation de leurs annonces RIP. Pour viter ce phnomne qui conduirait des rafales de paquets et des risques de congestion cycliques, les valeurs effectives des minuteurs sont perturbes alatoirement de 0 5 secondes.
ENS LYON Dpartement IFART-02-86
Format des paquets RIPv2Format de paquet :0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| command (1) | version (1) | must be zero (2) |+---------------+---------------+-------------------------------+
| |~ RIP Entry (20) ~| |+---------------+---------------+---------------+---------------+
Commande : indique si le paquet est une requte ou une rponse. La requte est une demande davoir la table des informations de routage. La rponse peut tre non sollicite (cas des missions rgulires faites par les routeurs) ou sollicite par une requte.
Version : 2 actuellement (la version 1 de RIP nest plus utilise)
44
ENS LYON Dpartement IFART-02-87
Entre des paquets RIPv20 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address Family Identifier (2) | Route Tag (2) |+-------------------------------+-------------------------------+
| IP Address (4) |+---------------------------------------------------------------+
| Subnet Mask (4) |+---------------------------------------------------------------+
| Next Hop (4) |+---------------------------------------------------------------+
| Metric (4) |+---------------------------------------------------------------+
AFI : (Address Family Identifier) type de protocole Route tag : marqueur qui peut tre utilis pour distinguer les routes internes (au protocole (apprises par RIP) des routes apprises par dautres protocoles (ex. OSPF). Adresse du rseau : Adresse IP donnant le prfixe Masque du rseau : champ binaire dont les bits positionns 1 donnent la longueur du prfixe Adresse du routeur cible : adresse IP o il faut router les paquets destination du rseau cible Mtrique : valeur de la mtrique (nombre compris entre 1 et 15) Un prfixe est constitu de lensemble {adresse du rseau , masque du rseau}. Une route est constitue de lensemble des informations {AFI, tag, prfixe, adresse IP du routeur
cible, mtrique}. Les paquets de type rponse peuvent contenir jusqu 25 routes par paquet. Sil y a plus de 25
routes envoyer, plusieurs paquets sont mis.
ENS LYON Dpartement IFART-02-88
Entre pour lauthentification
0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Command (1) | Version (1) | unused |+---------------+---------------+-------------------------------+
| 0xFFFF | Authentication Type (2) |+-------------------------------+-------------------------------+
~ Authentication (16) ~+---------------------------------------------------------------+
45
Protocoles de routage OSPF
Open Shortest Path First Protocol
ENS LYON Dpartement IFART-02-90
Historique dOSPF
OSPFv1 : RFC1131 (10/89) puis RFC1247 (07/91)
OSPFv2 : RFC 2328 (04/98)
OSPFv3 : RFC 2740 (12/99) Adaptation pour IPv6
46
ENS LYON Dpartement IFART-02-91
Pourquoi OSPF ?
OSPF a t conu pour saffranchir des limitations de RIP Possibilit de grer des domaines de diamtre > 16 Amlioration du temps de convergence Mtrique plus sophistique (prise en compte des dbits) Meilleure possibilit dagrgation des routes Segmentation possible du domaine en aires
Mais OSPF est aussi Plus complexe (routeurs plus puissants, configuration
Moins simple que RIP)
ENS LYON Dpartement IFART-02-92
OSPF
Pour de grands rseaux, Force structurer le rseau Poids attribuable aux liens, gnralement fonction
du dbit
Pour un Ethernet 10 Mbit/ s le cot est de 10 Utilise lalgorithme du Link State
sbcot
/en passante bande108
=
47
ENS LYON Dpartement IFART-02-93
Fonctionnement dOSPF
Chaque routeur identifie (ou connat par configuration) ses voisins
Sil y a plusieurs routeurs sur un rseau, un routeur principal (et un routeur principal de secours) sont lus parmi eux
Chaque routeur acquiert la base de donne du routeur principal Chaque routeur diffuse ses voisins (messages de type LSA)
La liste de ses voisins immdiats Le cot (mtrique) de la liaison vers chacun de ses voisins
Chaque routeur met jour sa base de donnes, ce qui lui donne une vision globale du rseau
Chaque routeur calcule ses meilleures routes (mtrique minimum) et en dduit sa table de routage
ENS LYON Dpartement IFART-02-94
Calcul des meilleures routes
OSPF utilise lalgorithme de Djkstra : Shorted PathFirst
partir de la table des informations sur ltat des liens qui est unique et partage par tous les routeurs
Chaque routeur construit sa vision optimum du rseau sous forme dun arbre qui minimise les cots des routes vers les rseaux cibles
La construction de larbre se fait en choisissant toujours en premier la branche de cot minimum
48
ENS LYON Dpartement IFART-02-95
Exemple
Chaque routeur connat uniquement les rseaux auxquels il est connect
A
B D
C
E
F
ENS LYON Dpartement IFART-02-96
Exemple
Ces informations sont recopies dans la base de donne OSPF du routeur avec le cot choisi par ladministrateur
A
B D
C
E
F
: Ether: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt : Ether
: Ether
: Ether: Ether
Table de routage
49
ENS LYON Dpartement IFART-02-97
Exemple
Ces informations sont recopies dans la base de donne OSPF du routeur avec un cot
A
B D
C
E
F
: Ether: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt : Ether
: Ether
: Ether: Ether
A
B D
C
E
F
: 10: 100
: 10: 100: 100
: 10: 100 : 10
: 10
: 10: 10
: 10: 100: 100
Base de donnes OSPF
ENS LYON Dpartement IFART-02-98
On droule lalgorithme pour A
A regarde les cots pour ses voisins immdiats
A
B C F100 10 10
Plus petit cot choisi
50
ENS LYON Dpartement IFART-02-99
On droule lalgorithme pour A
A regarde les cots cumuls pour les voisins de C
A
B C F10 10100
B C FA110 2011020
ENS LYON Dpartement IFART-02-100
On droule lalgorithme pour A
A
B C F10 10100
B D FA110 2011020
Plus coteux
A sintresse maintenant au plus petit chemin de larbre non encore explor A calcule des cots cumuls pour les voisins immdiats de F
51
ENS LYON Dpartement IFART-02-101
On droule lalgorithme pour A
A
B C F10 10100
D110
A C E20 2020
ENS LYON Dpartement IFART-02-102
On droule lalgorithme pour A
A
B C F10 10100
D110
E20
D F
20 30
52
ENS LYON Dpartement IFART-02-103
On droule lalgorithme pour A
A
B C F10 10100
E20
D
20
C E130 40
ENS LYON Dpartement IFART-02-104
On droule lalgorithme pour A
A
B C F10 10100
E20
D
20
A C200 200
A en dduit larbre des plus courts chemins A peut donc calculer sa table de routage
53
ENS LYON Dpartement IFART-02-105
Mise jour de la table de routage de A
Idem pour F
A
B D
C
E
F
: B: C: F: C: F: Ether: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt: PtPt
: Ether: PtPt : Ether
: Ether
: Ether: Ether
ENS LYON Dpartement IFART-02-106
Optimisation dOSPF : les aires Dans grand domaine, chaque changement provoque une
diffusion de la table de ltat des liens de tous les routeurs, ce qui provoque Une consommation de bande passante importante Une charge CPU importante sur les routeurs Alors que la porte dune modification reste assez localise
Do lide de dcouper le domaine en aires Chaque aire est plus simple, plus stable -> plus simple traiter
Pour garder une cohrence globale, une aire principale (backbone) Relie toutes les aires entre elles Connat toutes les infos de routage, mais ne diffuse que des
condenss (en agrgeant les routes, si cest possible)
54
ENS LYON Dpartement IFART-02-107
Aire principale et aires secondaires
numro 0 aire principale Il y a toujours une et une seule aire principale par domaine OSPF. Si on ne veut pas dcouper le domaine, toutes les interfaces de tous
les routeurs sont dans laire 0. Les autres aires sont de type Secondaire et doivent tre connecte
laire principalerouter OPSF 100 // router ospf network 10.10.1.1 0.0.0.0 area 0network 10.1.1.2 0.0.0.0 ares 1
AIRE 0
AIRE 1
Routeur de bordRouteur interne
Aire secondaire
Aire principale
10.10.1.0/28.1
.210.1.1.0/28
ENS LYON Dpartement IFART-02-108
Aire principale, secondaires, terminales
ce sont les interfaces des routeurs (les liens) qui sont positionns dans les diffrentes aires.
network
Laire 3 est une aire secondaire de type terminale (Stub). Ce type daire a une gestion simplifie car lunique point de sortie vers laire principale permet de grer le routeurs en leur diffusant une route par dfaut.
area stub [no-summary]
AIRE 0
AIRE 1
AIRE 2
AIRE 3
55
ENS LYON Dpartement IFART-02-109
Lien virtuel
Pour connecter (logiquement) une aire terminale laire principale quand la connexion physique ne peut tre ralise.
Pour rtablir la continuit de laire principale quand cette dernire nest plus assure (il sagit bien sr dune solution de dpannage !).
On notera que les liens virtuels font dpendre font dpendre le comportement du routage dans une aire de ce qui se passe dans une autre, ils augment ainsi la probabilitdinstabilit du routage.
area virtual-link , ares-id == tranbsit area
AIRE 0
AIRE 1
AIRE 2
AIRE 3
ENS LYON Dpartement IFART-02-110
Paquets OSPF
Hello Maintenance des liens, identification des voisins
Exchange / description change initial des tables de routage
Demande
Flooding Mise jour incrmentale des tables
56
ENS LYON Dpartement IFART-02-111
Entre des tables OSPF database
Router links Summarizes links from advertising router
Network links Transit networks (broadcast and non-broadcast)
Summary links Summary info advertised by area border routers
External links Imported routers, typically from a EGP
ENS LYON Dpartement IFART-02-112
Common OSPF header0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version # | Type | Packet length |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Router ID |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Area ID |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | AuType |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authentication |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authentication |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
57
ENS LYON Dpartement IFART-02-113
Paquet HELLOGre les routes externes
MC
Gre les datagrammes multicast
N/P
Gre les aires pas si terminales
DC
Gre les circuit la demande
ENS LYON Dpartement IFART-02-114
Algorithme du link state
chaque routeur identifie ses voisins immdiats. un routeur principal (designated router) et de secours (backup
designated router) sont dsigns sur chaque rseau grce un mcanisme dlection.
le routeur acquire la base de donne du routeur dsign. chaque routeur construit un message contenant la liste de ses
voisins immdiats ainsi que le cot associ la liaison. Ce message sera appel LSP pour Link State Packet.
ce paquet est transmis tous les autres routeurs du rseau avec un mcanisme de diffusion qui limite la propagation des messages et vite les boucles.
chaque routeur met jour sa base de donne ce qui lui donne une vision globale du rseau et il peut en dduire ses tables de routage.
58
ENS LYON Dpartement IFART-02-115
Paquet de description de la BD
MTU
0 sur un lien virtuel
MasterMore to comeFirst
ENS LYON Dpartement IFART-02-116
Champ type tat de lien
1 : liaison du routeur (net attach au routeur)
2 : liaison dans le net (dans les net non diffusants)
3 : rcapitulatif (exporter l ens. des net que peut grer un routeur)
4 : rsum des @ de routeur externes (simplification de 3 pour les aires terminales
5 : rseaux externes accessibles (pour info apprise par un protocole externe)
59
ENS LYON Dpartement IFART-02-117
Id dEtat de Liaison EL = 1 : Id du routeur qui a produit le msg EL = 2 : @ IP du DR EL = 3 : @ du net / host accessible EL = 4 : Id du routeur de frontire EL = 5 : @ du net externe
Les routeurs changent tour tour des DD. Si un enregistrement nest pas dans la base, ou ancienne valeur, le routeur demande lintgralit de lEL (LSR).
Info envoy dans un Link State Update
ENS LYON Dpartement IFART-02-118
Paquet de demande
60
ENS LYON Dpartement IFART-02-119
Paquet de mise jour
ENS LYON Dpartement IFART-02-120
Diffrents types dEL Type EL = 1
Routeur annonant : un routeur id. dEL : id du routeur Rcepteur : intrieur dune aire Le routeur donne la liste des rseaux auxquels il est
attach V = virtuel / E = frontire dAS / B = frontire daire
@ IP router sur linterface@ IP oposite routeurVirtual link4
Netmask du net@ IP netTo a terminal net3
@ IP router sur linterface@ IP DRTo a transit net2
Num NIC@ IP oposite routerPt-to-pt1
Data linkId linkNatureType
61
ENS LYON Dpartement IFART-02-121
Diffrents types dEL
Type EL = 2 Routeur annonant : un routeur dun NBMA id. dEL : id du DR sur le net Rcepteur : les routeurs u NBMA Dans un NBMA les quipements doivent tre configurs
pour connatre leurs voisins (pas de diffusion, X25 / FR). Ce message doit permettre aux routeurs de connatre leurs voisins.
ENS LYON Dpartement IFART-02-122
Diffrents types dEL
Type EL = 3 Routeur annonant : un routeur en bordure daire id. dEL : @ Ip de la liaison annonce Rcepteur : les routeurs des autres aires / backbone Ce msg contient la liste de tous les rseaux accessibles
dans une aire, i.e., tous les net que le routeur de bordure a appris.
Les routeurs des autres aires ne connaissent pas le chemin pour atteindre ces rseaux mais le routeur vers lequel il faut envoyer.
62
ENS LYON Dpartement IFART-02-123
Diffrents types dEL
Type EL = 4 Routeur annonant : un routeur en bordure daire id. dEL : Id du routeur rcepteur Rcepteur : routeurs daire terminale Ce msg contient un sous ensemble de la liste de
tous les rseaux accessibles dans une aire. Une aire terminale na pas connatre toutes les
infos puisquelle ne les rediffuse pas.
ENS LYON Dpartement IFART-02-124
Diffrents types dEL
Type EL = 5 Routeur annonant : un routeur en bordure de lAS id. dEL : @IP de la liaison annonce Rcepteur : autres routeurs de lAS Ce msg contient les routes externes apprises par
le routeur de bordure de lAS via les protocoles de routage externe.
63
ENS LYON Dpartement IFART-02-125
Paquet dacquitement
ENS LYON Dpartement IFART-02-126
Pourquoi OSPF est si complexe ?
Plusieurs bases de donnes Routes dans le rseau Table de routage vers les autres rseaux du
domaine Table de routage vers les autres AS @ des routeurs vers les NBMA (Non Broadcast
Multiple Access)
64
ENS LYON Dpartement IFART-02-127
Beaucoup de fonctionnalits Inonder une aire avec des infos de routage Diffuser les tables de routage
Construite par un routeur frontire Cacher la complexit aux autres
Connatre tous les routeurs dun NBMA Synchroniser / rcuprer les informations
Toutes les infos ne sont pas mises en permanence
lection du DR Sassurer du fonctionnement des routeurs
voisins
ENS LYON Dpartement IFART-02-128
Fonctions / sous protocoles
XVoisins
Xlection DR
XXSynch
XXRouteur dsNBMA
XDiffusion des tables
XXFloodingdes updates
5 = ack4=update3=req LS2 = DD1 = Hello
65
Protocoles de routage BGP
Border Gateway Protocol
Slides du cours BGP4 de Luc Saccavini
ENS LYON Dpartement IFART-02-130
Protocoles de routage externe Topologie : LInternet est un rseau maill entre AS complexe
avec peu de structures
Autonomie des AS : Chaque AS dfinit le cot des liens avec des philosophies/approches diffrentes. Il est impossible de trouver les plus courts chemins
Confiance : des AS peuvent ne pas se faire confiance mutuellement pour propager de bonnes routes
Oprateurs concurrents, nation en guerre
Politiques : Des AS diffrents ont des objectifs diffrents Router en peu de sauts, utiliser un provider plutt qu un
autre
66
ENS LYON Dpartement IFART-02-131
Objectifs gnraux de BGP changer des routes (du trafic) entre organismes indpendants
Oprateurs Gros sites mono ou multi connects
Implmenter la politique de routage de chaque organisme Respect des contrats passs entre organismes Sret de fonctionnement
tre indpendant des IGP utiliss en interne un organisme
Supporter un passage lchelle (de lInternet)
Minimiser le trafic induit sur les liens
Donner une bonne stabilit au routage
ENS LYON Dpartement IFART-02-132
BGP en quelques chiffres
104000052000020300020100000172000400154000086000400820000
4900004900010300151000010800018000610010400027000900035952100
Vol mmoire
Vol init. chang
K: nbr moy. de voisins
A: nbrmoy. AS
M: dist. Moy.
N: nbr de prfixes
Volume dinformation : O(N + M * A)
Volume mmoire : O(N + M * A * K)
67
ENS LYON Dpartement IFART-02-133
Principes gnraux du protocole BGP Protocole de type PATH-vecteur Chaque entit est identifie par un numro dAS La granularit du routage est lAS Le support de la session BGP est TCP:179
garantie dune bonne transmission des informations. Envoi initial puis mise jour
Les sessions BGP sont tablies entre les routeurs de bord dAS Protocole point point entre routeurs de bord dAS Protocole symtrique Politique de routage filtrage des routes apprises et annonces
tout ou rien sur la route (annonce, prise en compte), modification des attributs de la route pour modifier la prfrence
ne jamais oublier quannoncer une route vers un rseau cest accepter du trafic destination de ce rseau
ENS LYON Dpartement IFART-02-134
Exemple de connexion BGP (1) Client connect un seul Fournisseur dAccs Internet (FAI). Seuls
les routeurs de bord de lAS sont figurs. Les routeurs qui changent leurs informations en BGP doivent tre
directement connects (liaison point point ou LAN partag). Lutilisation de numros dAS privs est viter pour des AS
terminaux (clients) car une connexion un deuxime AS de transit (FAI) peut conduire une configuration illgale.
AS 100client
AS 200FAI
Session E-BGP
Lien physique
AS officiels (enregistrs) : de 1 64511AS privs (non-enregistrs) : de 64512 65535
68
ENS LYON Dpartement IFART-02-135
Exemple de connexion BGP (2) Client connect deux FAI
faire passer tout son trafic par FAI1 (AS 200) et garder sa liaison vers FAI2 (AS 300) en secours
quilibrer son trafic entre FAI1 et FAI2. C est le cas typique qui amne utiliser le protocole de routage
BGP pour ragir dynamiquement en cas de dfaillance dun lien.
AS 100client
AS 200FAI 1
AS 300FAI 2
Session E-BGP
Session E
-BGP
ENS LYON Dpartement IFART-02-136
Exemple de connexion BGP (3) Client connect deux FAI par 2 routeurs
protection contre la dfaillance de l'un d'entre eux ou de lun de ses routeurs
Connexion BGP entre les routeurs de bord de lAS 100. maintenir la cohrence entre les 2 routeurs qui doivent possder les
mmes informations de routage En BGP la granularit du routage est lAS !
AS 100client
AS 200FAI 1
AS 300FAI 2
Session E-BGP
Session E-BGP
Session I-BGP
69
ENS LYON Dpartement IFART-02-137
Exemple de connexion BGP (4) Client connect 3 FAI avec redondance sur lun Maillage complet de sessions I-BGP Pour les autres AS, les 4 routeurs de bord de lAS 100 sont
vus, du point de vue fonctionnel comme un seul routeur (avec 4 interfaces).
AS 100client AS 200
FAI 1
AS 300FAI 2
AS 400FAI 3
ENS LYON Dpartement IFART-02-138
Rgles pour les AS multi-connects Les routeurs de bord dun mme AS changent leurs informations de
routage en I-BGP
Les connexions en I-BGP forment un maillage complet sur les routeurs de bord dun AS
Ce sont les IGP internes lAS qui assurent et maintiennent la connectivit entre les routeurs de bord qui changent des informations de routage en I-BGP
Le numro dAS est un numro officiel (si connexions vers 2 AS diffrents)
Dans un mme AS, c'est bien l'IGP (ou le routage statique) qui est responsable de la connectivit interne de l'AS. Si un routeur de bord ne peut pas atteindre une route de son AS (qui
lui a t annonce par un voisin interne par exemple), il ne la propagera pas ses voisins BGP (externes ou internes).
70
ENS LYON Dpartement IFART-02-139
Les composants dun annonceur BGP
Une description des politiques de routage entre et sortie
Des tables o sont stockes les informations de routage En entre : table Adj-RIB-in En sortie : table Adj-RIB-out En interne : table Loc-RIB
Un automate implmentant le processus de dcision Des sessions avec ses voisins pour changer les
informations de routage
ENS LYON Dpartement IFART-02-140
Schma fonctionnel du processus BGP
71
ENS LYON Dpartement IFART-02-141
La vie du processus BGP
Automate 6 tats, qui ragit sur 13 vnements Il interagit avec les autres processus BGP par
change de 4 types de messages : OPEN KEEPALIVE NOTIFICATION UPDATE
Taille des messages de 19 4096 octets ventuellement scuriss par MD5
ENS LYON Dpartement IFART-02-142
Le message OPEN
1er message envoy aprs louverture de la session TCP. Informe son voisin de : Sa version de BGP Son numro dAS Dun numro identifiant le processus BGP
Propose une valeur de temps de maintien de la session Valeur suggre : 90 secondes Si 0 : maintien sans limite de dure
Met le processus en attente dun KEEPALIVE
72
ENS LYON Dpartement IFART-02-143
Le message KEEPALIVE Confirme un OPEN
Rarme le minuteur contrlant le temps de maintien de la session
Si temps de maintien non gal 0 Est rmis toutes les 30 secondes (suggr)
Message de taille minimum (19 octets)
En cas d'absence de modification de leur table de routage, les routeurs ne s'changent plus que des messages KEEPALIVE toutes les 30 secondes, ce qui gnre un trafic limit environ 5bits/s au niveau BGP.
ENS LYON Dpartement IFART-02-144
Le message NOTIFICATION Ferme la session BGP Fournit un code et un sous code renseignant sur
lerreur Ferme aussi la session TCP Annule toutes les routes apprises par BGP
peut provoquer des instabilits de routage injustifies un incident ne veut pas forcment dire que toutes les
routes apprises prcdemment sont devenues fausses
mis sur incidents : Pas de KEEPALIVE pendant 90s () Message incorrect Problme dans le processus BGP
73
ENS LYON Dpartement IFART-02-145
Le message UPDATE
Sert changer les informations de routage Routes liminer (ventuellement) Ensemble des attributs de la route Ensemble des rseaux accessibles (NLRI) Chaque rseau est dfini par (prfixe, longueur)
Envoy uniquement si changement
Active le processus BGP Modification des RIB (Update, politique de routage, conf.) mission dun message UPDATE vers les autres voisins
ENS LYON Dpartement IFART-02-146
Le processus BGP
Automate simplifi au chemin principal
74
ENS LYON Dpartement IFART-02-147
Le message UPDATE : attributs de la route
Reconnus, obligatoires ORIGIN, AS_PATH, NEXT_HOP
Reconnus, non obligatoires LOCAL_PREF, ATOMIC_AGGREGATE
Optionnels, annonables (transitifs ou non) MULTI_EXIT_DISC (MED), AGGREGATOR
Optionnels, non-annonables WEIGHT (spcifique Cisco)
BGP doit savoir le traiter
Port illimite
ENS LYON Dpartement IFART-02-148
Agrgation
Tout domaine sans route par dfaut Connatre toutes les routes (> 120000)
Dans les tables de routage IP
Dans les annonces BGP
Agrgation permet de rduire le nombre de routes
75
ENS LYON Dpartement IFART-02-149
Agrgation I
AS1 : 193.212.0.0/24 AS2 : 193.212.1.0/24 AS3 : 193.212.0.0/23 AS4 : 193.212.0.0/23
AS1
AS2
AS3 AS4
193.212.0.0/24
193.212.1.0/24
193.212.0.0/23 193.212.0.0/23
AS_PATH 1 AS_PATH 2 AS_PATH 3 {1 2} AS_PATH 4 3 {1 2}
ENS LYON Dpartement IFART-02-150
Agrgation II
AS4 reoit 197.8.0.0/22 197.8.3.0/24
Les 2 routes sont injectes dans les tables de AS4 Comment sont routs les paquets de n4 vers n2 ?
AS1
AS2
AS3 AS4
197.8.2.0/24
197.8.3.0/24
197.8.0.0/22 197.8.0.0/22
AS_PATH 3 {1 2} AS_PATH 2
197.8.3.0/24
76
ENS LYON Dpartement IFART-02-151
Agrgation III
AS4 reoit 197.8.0.0/22 197.8.3.0/24
Les 2 routes sont reues Seul les plus courtes sont injectes dans les tables
de AS4 Comment sont routs les paquets de n4 vers n2 ?
AS1
AS2
AS3 AS4
197.8.2.0/24
197.8.3.0/24197.8.0.0/22 197.8.0.0/22
AS_PATH 3 {1 2} AS_PATH 6 5 2
197.8.3.0/24 AS5 AS6197.8.3.0/24
197.8.3.0/24
ENS LYON Dpartement IFART-02-152
Les attributs de route obligatoires (1)
ORIGIN : Donne lorigine de la route : IGP (i) : la route est intrieure lAS dorigine EGP (e) : la route a t apprise par le protocole
EGP (historique car EGP non employ) Incomplte (?) : lorigine de la route est inconnue
ou apprise par un autre moyen (redistribution des routes statiques ou connectes dans BGP par exemple)
show ip bgp
77
ENS LYON Dpartement IFART-02-153
Les attributs de route obligatoires (2)
AS_PATH Donne la route sous forme dune liste de segments dAS Les segments sont ordonns ou non (AS_SET)
Chaque routeur rajoute son numro dAS aux AS_PATH des routes quil a apprises avant de les r-annoncer
NEXT_HOP Donne ladresse IP du prochain routeur qui devrait tre utilis
(peut viter un rebond si plusieurs routeurs BGP sont sur un mme rseau local)
Les segments dAS non ordonns sont forms par un routeur qui a fait une oprationd'agrgation. Ce dernier regroupe dans cet ensemble non ordonn tous les AS associs auxroutes qu'il a agrges. Cela permet aux autres routeurs de continuer dtecterd'ventuelles boucles concernant ces routes.
ENS LYON Dpartement IFART-02-154
Exemple 1 : tables Adj-RIB-in
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
NLRI NEXT_HOP AS_PATH ORIGIN 194.10.2.0/24 194.9.1.2 200 i
NLRI NEXT_HOP AS_PATH ORIGIN 194.10.1.0/24 194.9.1.1 100 i
78
ENS LYON Dpartement IFART-02-155
Exemple 1 : configuration sur IOS
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
router router router router bgpbgpbgpbgp 200200200200neighborneighborneighborneighbor 194.9.1.1 194.9.1.1 194.9.1.1 194.9.1.1 remoteremoteremoteremote----asasasas 100100100100network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
ENS LYON Dpartement IFART-02-156
Exemple 2 : tables Adj-RIB-in
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2NLRI NEXT_HOP AS_PATH ORIGIN 194.10.2.0/24 194.9.1.2 200 i194.10.3.0/24 194.9.2.3 300 i
NLRI NEXT_HOP AS_PATH ORIGIN 194.10.1.0/24 194.9.1.1 100 i194.10.3.0/24 194.9.1.1 100,300 i
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
79
ENS LYON Dpartement IFART-02-157
Exemple 2 : configuration sur IOS
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
router router router router bgpbgpbgpbgp 200200200200neighborneighborneighborneighbor 194.9.1.1 194.9.1.1 194.9.1.1 194.9.1.1 remoteremoteremoteremote----asasasas 100100100100network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
ENS LYON Dpartement IFART-02-158
Exemple 3 : tables Adj-RIB-in194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2 NLRI NEXT_HOP AS_PATH ORIGIN 194.10.2.0/24 194.9.1.2 200 i194.10.3.0/24 194.9.2.3 300 i194.10.3.0/24 194.9.1.2 200,300 i194.10.2.0/24 194.9.2.3 300,200 i
NLRI NEXT_HOP AS_PATH ORIGIN 194.10.1.0/24 194.9.1.1 100 i194.10.3.0/24 194.9.1.1 100,300 i194.10.3.0/24 194.9.3.3 300 i194.10.1.0/24 194.9.3.3 300,100 i
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3194.9.3.3
194.9.3.2
80
ENS LYON Dpartement IFART-02-159
Exemple 3 : tables Adj-RIB-in194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3194.9.3.3
194.9.3.2router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
router router router router bgpbgpbgpbgp 200200200200neighborneighborneighborneighbor 194.9.1.1 194.9.1.1 194.9.1.1 194.9.1.1 remoteremoteremoteremote----asasasas 100100100100neighborneighborneighborneighbor 194.9.3.3 194.9.3.3 194.9.3.3 194.9.3.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 network 194.10.2.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
ENS LYON Dpartement IFART-02-160
Next Hop I
Annonces de R3 ? Annonces de R6 ?
AS 100
AS 200
AS 300
E-BGP
I-BGP
10.1/16 10.2/16
R5
R6
R1
R2
R3 R4
81
ENS LYON Dpartement IFART-02-161
Les attributs de route optionnels (1)
LOCAL_PREF (non transitif, discretionary) Pondre la priorit donne aux routes en interne lAS Jamais annonc en E-BGP (en interne donc !) Pris en compte avant la longueur de AS_PATH
ATOMIC_AGGREGATE (transitif, discretionary) Indicateur dagrgation Quand des routes plus prcises ne sont pas annonces
AGGREGATOR (transitif) Donne lAS qui a form la route agrge L'adresse IP du routeur qui a fait lagrgation
ENS LYON Dpartement IFART-02-162
LOCAL-PREF
Mis en uvre par les routeurs la rception de route sur E-BGP Propag sans changement par I-BGP
R6 associe pref=100, R2 pref=10 R1 choisit la plus grande prfrence Bgp default local-preference pref-value
AS 200
I-BGP
R6
R1
R2
E-BGP
E-BGP
82
ENS LYON Dpartement IFART-02-163
Les attributs de route optionnels (2)
MULTI_EXT_DISC ou MED (non transitif) Permet de discriminer les diffrents points de connexion
dun AS multi-connect (plus faible valeur prfre)
WEIGHT (non transitif, spcifique Cisco) Pondre localement (au routeur) la priorit des routes BGP
COMMUNITY (transitif) Pour un ensemble de routeurs ayant une mme proprit
no-export : pas annonc aux voisins de la confdration no-advertise : pas annonc aux voisins BGP no-export-subconfed : pas annonc en E-BGP
ENS LYON Dpartement IFART-02-164
MULTI-EXIT-DISC (MED) I
Si AS 200 accepte les MEDs, le trafic va vers le lien privilgi par lAS 300
Plus petite MED
AS 200
AS 300
10.1/16 10.2/16
R1
R2
R3 R4
10.1/16 MED=1010.2/16 MED=50
10.1/16 MED=5010.2/16 MED=10
83
ENS LYON Dpartement IFART-02-165
MED
Soit ASx et ASy deux peers et tous les deux sont des IPS. Pourquoi ASx nest pas intress par prendre en
compte les MEDs ? Par quel moyen ASx prend la route la plus
courte vers ASy ? (Supposez que ASxemploie OSPF en interne).
ENS LYON Dpartement IFART-02-166
La porte de quelques attributs de route
AS 200
AS 100
AS 300
ORIGINAS_PATHNEXT_HOPLOCAL_PREFMULTI_EXT_DISCWEIGHT
ORIGINAS_PATHNEXT_HOPLOCAL_PREFMULTI_EXT_DISCWEIGHT
ORIGINAS_PATHNEXT_HOPLOCAL_PREF
ORIGIN100, AS_PATHNEXT_HOP {R1}MULTI_EXT_DISC
ORIGIN100, 200, AS_PATHNEXT_HOP {R2}
84
ENS LYON Dpartement IFART-02-167
Le processus de dcision Il est enclench par une annonce de route Il se droule en trois phases
Calcul du degr de prfrence de chaque route apprise Choix des meilleures routes installer dans RIB-Loc Choix des routes qui vont tre annonces
Il applique aux informations de routage un traitement bas sur Critres techniques : suppression boucles, optimisations Critres administratifs : application de la politique de routage de
lAS. une annonce de route doit avoir son NEXT_HOP routable. Une route interne nest annonce par un routeur que sil sait la joindre. Une route externe nest annonce par un routeur que sil sait joindre le
NEXT_HOP. Une route dont lattribut NEXT_HOP est ladresse IP du voisin nest pas
annonce ce voisin (qui la connat dj!).
ENS LYON Dpartement IFART-02-168
Le processus de dcision :Critres de choix entre 2 routes WEIGHT (propritaire Cisco, plus grand prfr) LOCAL_PREF le plus grand Route initie par le processus BGP local AS_PATH minimum ORIGIN minimum (IGP -> EGP -> Incomplete) MULTI_EXT_DISC minimum Route externe prfre une route interne ( lAS) Route vers le plus proche voisin local (au sens de
lIGP) Route vers le routeur BGP de plus petite adresse IP
85
ENS LYON Dpartement IFART-02-169
Diffrences entre E-BGP et I-BGP
Une annonce reue en I-BGP nest pas rannonceen I-BGP
Lattribut LOCAL_PREF nest annonc quen I-BGP Seuls les voisins E-BGP doivent tre directement
connects Les annonces I-BGP ne modifient pas lAS_PATH Les annonces I-BGP ne modifient pas le
NEXT_HOP Le MED nest pas annonc en I-BGP
ENS LYON Dpartement IFART-02-170
Interaction BGP IGP 6 Forwardind
Redistribution Routes apprises par BGP IGP (OSPF)
Redistribution de BGP dans OSPF OSPF propage les routes via des LSAs type 4 tous les
routeurs du nuage OSPF Injection
Route apprise par BGP sont crites dans la table de routage du routeur. Pas de propagation (cela n aide que le routeur)
Synchronisation
86
ENS LYON Dpartement IFART-02-171
Redistribution est onreuse !
Redistribution de BGP dans IGP Grand nombre de routes /entres dan IGP Accrot le temps de convergence aprs panne
Recursive table lookup Next Hop nest pas sur le lien
ENS LYON Dpartement IFART-02-172
Lannonce des routes internes dun AS
Statique Pas dinstabilit de routage, mais trous noirs
possibles redistribute [static|connected]
ORIGIN: Incomplete network
ORIGIN: IGP
Dynamique Suit au mieux ltat du rseau, ncessite du filtrage
redistribute ORIGIN: IGPz
87
ENS LYON Dpartement IFART-02-173
La politique de routage
Elle peut influencer : Le traitement des routes reues Le traitement des routes annonces L'interaction avec les IGP de lAS
En pratique elle sexprime par : Du filtrage de rseaux Du filtrage de routes (AS_PATH) De la manipulation dattributs de routes
ENS LYON Dpartement IFART-02-174
Filtrage de routes
Associer une access list un voisin
Neighbor ID distribute-list no-of-the-list [in/ou]
Definir une access list Bit non significatif (inverse du netmask)
Si pas d action en fin de liste Aplpiquer le deny everything else
Access-list No-of-the-list [deny/permit] IP-@ non-sig-bit
88
ENS LYON Dpartement IFART-02-175
Politique de routage Filtrage des rseaux annoncs
AS100 ne veut pas servir dAS de transit pour le rseau 194.10.3.0/24 de lAS300
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
neighbor 194.9.1.2 distributeneighbor 194.9.1.2 distributeneighbor 194.9.1.2 distributeneighbor 194.9.1.2 distribute----list 1 outlist 1 outlist 1 outlist 1 outaccessaccessaccessaccess----list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255accessaccessaccessaccess----list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255
ENS LYON Dpartement IFART-02-176
Politique de routage Filtrage des rseaux annoncs
Idem mais en plus lAS100 ne connat plus 194.10.3.0/24 de lAS300
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
neighbor neighbor neighbor neighbor 194.9.2.3194.9.2.3194.9.2.3194.9.2.3 distributedistributedistributedistribute----list 1 list 1 list 1 list 1 ininininaccessaccessaccessaccess----list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255list 1 deny 194.10.3.0 0.0.0.255accessaccessaccessaccess----list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255list 1 permit 0.0.0.0 255.255.255.255
89
ENS LYON Dpartement IFART-02-177
Filtrage de chemin
Associer une filtre list un voisin
Neighbor ID filter-list no-of-the-list [in/ou]
Dfinir une filter list Ip as-path access-list No-of-the-list [deny/permit] regexpr
Regular expression ^ dbut du chemin _ matches ^ $ ( ) space $ fin du chemin * toute rptition . Tout caractre + au moins une rptition ? Un caractre
ENS LYON Dpartement IFART-02-178
Filtrage de chemins ^$
route locale seulement (AS_PATH vide) .*
toutes les routes ^300$
AS_PATH = 300 ^300_
toutes les routes en provenance de 300 _300$
Toutes les routes originaires de 300 _300_
Toutes les routes passant par 300
90
ENS LYON Dpartement IFART-02-179
Politique de routage Filtrage des AS_PATH annoncs
AS100 ne veut pas servir dAS de transit pour tous les rseaux internes dAS300
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
neighbor 194.9.1.2 filterneighbor 194.9.1.2 filterneighbor 194.9.1.2 filterneighbor 194.9.1.2 filter----list 1 outlist 1 outlist 1 outlist 1 outipipipip asasasas----path accesspath accesspath accesspath access----list 1 deny ^300$list 1 deny ^300$list 1 deny ^300$list 1 deny ^300$ipipipip asasasas----path accesspath accesspath accesspath access----list 1 permit .*list 1 permit .*list 1 permit .*list 1 permit .*
ENS LYON Dpartement IFART-02-180
Route maps Route-map map-tag [permit|deny] instance-no First instance-condition: set match Next-instance-condition:set match
Route-map SetMetric permit 10
Match ip address 1
Set metric 200
Route-map SetMetric permit 20
Set metric 300
Access-list 1 permit 194.10.3.0 0.0.0.255
91
ENS LYON Dpartement IFART-02-181
Politique de routage Filtrage par route map :
AS100 veut privilgier la route par dfaut annonce par AS300
194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3
router router router router bgpbgpbgpbgp 100100100100neighborneighborneighborneighbor 194.9.1.2 194.9.1.2 194.9.1.2 194.9.1.2 remoteremoteremoteremote----asasasas 200200200200neighborneighborneighborneighbor 194.9.2.3 194.9.2.3 194.9.2.3 194.9.2.3 remoteremoteremoteremote----asasasas 300300300300network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 network 194.10.1.0 maskmaskmaskmask 255.255.255.0255.255.255.0255.255.255.0255.255.255.0
neighbor 194.9.2.3 route MAP_300 inneighbor 194.9.2.3 route MAP_300 inneighbor 194.9.2.3 route MAP_300 inneighbor 194.9.2.3 route MAP_300 inneighbor 194.9.1.2 route MAP_200 inneighbor 194.9.1.2 route MAP_200 inneighbor 194.9.1.2 route MAP_200 inneighbor 194.9.1.2 route MAP_200 in
ENS LYON Dpartement IFART-02-182
Politique de routage (suite) Filtrage par route map :
AS100 veut privilgier la route par dfaut annonce par AS300194.10.1.0/24
194.10.2.0/24
AS 100
AS 200
194.9.1.1
194.9.1.2
194.10.3.0/24
AS 300
194.9.2.1 194.9.2.3route route route route mapmapmapmap MAP_300 permit 10MAP_300 permit 10MAP_300 permit 10MAP_300 permit 10match match match match ipipipip addressaddressaddressaddress 1111set LOCAL_PREF 150set LOCAL_PREF 150set LOCAL_PREF 150set LOCAL_PREF 150route route route route mapmapmapmap MAP_300 permit 20MAP_300 permit 20MAP_300 permit 20MAP_300 permit 20set LOCAL_PREF 100set LOCAL_PREF 100set LOCAL_PREF 100set LOCAL_PREF 100accessaccessaccessaccess----listlistlistlist 1 permit 0.0.0.0 0.0.0.01 permit 0.0.0.0 0.0.0.01 permit 0.0.0.0 0.0.0.01 permit 0.0.0.0 0.0.0.0route route route route mapmapmapmap MAP_200 permit 10MAP_200 permit 10MAP_200 permit 10MAP_200 permit 10match match match match ipipipip addressaddressaddressaddress 1111set LOCAL_PREF 100set LOCAL_PREF 100set LOCAL_PREF 100set LOCAL_PREF 100route route route route mapmapmapmap MAP_200 permit 20MAP_200 permit 20MAP_200 permit 20MAP_200 permit 20set LOCAL_PREF 150set LOCAL_PREF 150set LOCAL_PREF 150set LOCAL_PREF 150