Vous êtes sur la page 1sur 80

MOOC Routage et Qualit de Service

Automne 2015

Semaine 2 : Le routage externe

Au cours de cette semaine, nous abordons le


routage externe. Nous traitons de linterconnexion
entre les rseaux et de lchange dinformations de
routage. En particulier, nous analysons les types
daccords pour lchange de trafic entre systmes
autonomes et de la classification qui en rsulte.
Nous prsentons en dtail le protocole BGP : les
sessions, les types de messages et les diffrents
attributs du protocole. Une attention particulire est
porte au processus de slection dans BGP.
Finalement, nous abordons des exemples de
dploiement de stratgies de routage BGP. Cette
semaine se prolonge par linterview de Franck
Simon, directeur gnral de France-IX, qui
dmystifie le fonctionnement d'un point d'change
internet.

Table des matires



1. Leon 1 : Introduction la structure dInternet - Internet en quelques
chiffres .................................................................................................................................... 3
2. Leon 2 : Interconnexion des systmes autonomes Transit et peering ... 14
3. Leon 3 : Principes du routage externe Stratgies de routage ................... 26
4. Leon 4 : Principes du protocole BGP Sessions et messages BGP ......... 35
5. Leon 5 : Attributs du protocole BGP ................................................................... 47
6. Leon 6 : Processus de slection dans BGP Critres de slection et
informations de routage ................................................................................................... 57
7. Leon 7 : Exemples de stratgies de routage Peering et transit avec BGP

74


1. Leon 1 : Introduction la structure dInternet - Internet


en quelques chiffres

Bonjour et bienvenue dans cette srie de leons, dans laquelle nous abordons le
routage externe. Nous traitons ici de linterconnexion entre les rseaux et de lchange
dinformations de routage.


Commenons par un exemple simple dun ordinateur Rennes qui se connecte sur le
site www.example.com.
Les outils habituels de diagnostic des rseaux permettent de rvler les adresses IP
des routeurs traverss. En effet, les paquets de donnes changs lors de cette
connexion traversent dix routeurs. Le premier est situ Caen, le deuxime Rouen,
le troisime Paris. Ces trois premiers routeurs sont grs par RENATER : Le Rseau
National de tlcommunications pour la Technologie l'Enseignement et la Recherche.
Ensuite, les paquets de donnes traversent deux routeurs de loprateur Vodafone,
puis le rseau de loprateur TeliaSonera pour atteindre un routeur situ Washington
aux Etats-Unis. Finalement, les paquets de donnes arrivent au serveur
www.example.com hberg par le fournisseur de contenu EdgeCast.
Cet exemple simple permet de rvler une proprit importante de la structure
dInternet : Internet est un ensemble de rseaux grs par diffrents oprateurs qui
sinterconnectent afin de fournir la connectivit globale.
3

Dans la suite, quand il sagit dtudier le routage externe et linterconnexion des


rseaux, nous adoptons un point de vue macroscopique : cela nous permet de
masquer la complexit interne des rseaux traverss et de considrer chacun comme
une seule entit.


Dans la ralit, linterconnexion entre les rseaux est plus complexe. En effet,
RENATER dispose aussi dun lien dinterconnexion avec le rseau de loprateur GTT.
Par consquent, les paquets de donnes changs entre lordinateur Rennes et le
site www.example.com peuvent emprunter plusieurs chemins. A titre dexemple, cela
peut tre le chemin constat dans les mesures prcdentes, ou un chemin qui passe
par GTT puis TeliaSonera, ou mme un chemin sans intersection avec le premier et
qui passe par les rseaux des oprateurs GTT puis NTT.


A laide de lexemple prcdent, nous pouvons rvler les principales composantes du
routage externe. Ces composantes font lobjet des prochaines leons et rpondent aux
questions suivantes :
Premirement, comment se propage linformation de routage qui permet dannoncer
laccessibilit un rseau ?
Quel protocole et quels mcanismes sont-ils mis en place travers les diffrents
rseaux des oprateurs ?
Deuximement, une fois linformation de routage propage, qui dcide du chemin
suivre et quels sont les critres utiliss pour faire ce choix ?


Le dfi principal du routage externe est limplication de plusieurs oprateurs. Dans ce
contexte, les rseaux de ces oprateurs sont appels systmes autonomes. Un
systme autonome est un ensemble de rseaux connects gnralement grs par
une mme entit administrative et qui se comporte comme une seule entit pour le
routage externe.

Qui joue alors le rle dun systme autonome en pratique ? Et de quel type
dinfrastructure de rseau dispose-t-il ?
Un systme autonome peut tre le rseau dun fournisseur de contenu, dun
fournisseur daccs Internet, ou de toute entreprise avec un accs Internet,


Certains systmes autonomes comme RENATER assurent une couverture nationale.
RENATER dispose dune infrastructure de transmission en fibres optiques et de points
de prsence dans plusieurs villes en France. Certains points stratgiques tels que
Paris, Lyon ou Marseille permettent linterconnexion avec dautres systmes
autonomes tels que les fournisseurs daccs Internet en France ou le rseau
europen pour lducation et la recherche GEANT.


Dautres systmes autonomes comme TeliaSonera assurent une couverture
internationale avec des points de prsence sur plusieurs continents. TeliaSonera
dispose de liens dinterconnexion avec un trs grand nombre de systmes autonomes,
par exemple des fournisseurs daccs Internet en Amrique du Nord, en Europe ou
en Asie.


Dans le routage externe, un systme autonome est identifi par un numro unique.
Comme pour les adresses IP, la gestion des numros de systmes autonomes est
faite par lIANA (Internet Assigned Numbers Authority), un organisme mondial. LIANA
dlgue son autorit des registres rgionaux appels Regional Internet Registry qui
attribuent les numros de systmes autonomes dans leur zone gographique. Il existe
cinq registres rgionaux dans le monde. En Europe, les numros de systmes
autonomes sobtiennent auprs de RIPE NCC.
Un numro de systme autonome est cod sur 16 bits, entre 1 et 65534. Par exemple,
RENATER dispose du numro de systme autonome 2200. Notons que les 1024
derniers numros (64512 65534) sont destins un usage priv.


Aujourdhui, il existe plus de 51 000 systmes autonomes dans lInternet. Pour
accompagner cette volution, qui est une image de lvolution de lInternet, les
numros de systmes autonomes passent de 16 32 bits. Par consquent, les
numros attribus partir de janvier 2009 sont nots sous le format X.Y avec X et Y
des entiers sur 16 bits. Par exemple, lAssistance publique - Hpitaux de Paris dispose
du numro 3.2267 attribu en 2012.

10


Analysons quelques chiffres cls lis aux systmes autonomes dans lInternet en
2015. Dans ce contexte, on appelle systmes autonomes voisins des systmes
autonomes qui ont tabli un lien dinterconnexion pour changer le trafic.
Gnralement, ce voisinage est tabli sur des bases gographiques. Tout dabord, on
note que 80% des systmes autonomes sur Internet sont des rseaux terminaux. Ces
rseaux ne font pas transiter du trafic dautres systmes autonomes. De plus, 64% de
systmes autonomes ont un ou deux voisins, la moyenne gomtrique globale du
nombre de voisins sur Internet tant 2.55. Si on observe les systmes autonomes avec
le plus grand nombre dinterconnexions, on note que 1% ont plus de 100 voisins et
que seulement 46 systmes autonomes (prs de 1 pour mille) ont plus de 1000 voisins.

11


Il est donc intressant de pouvoir schmatiser lInternet lchelle des systmes
autonomes. Cependant, tracer un tel graphe est une tche complexe et ncessite de
placer un grand nombre des sondes pour rvler la structure dinterconnexion. Le
centre pour lanalyse applique des donnes de lInternet (CAIDA) fournit un graphe
reprsentant lInternet en 2014. Sur ce graphe, les nuds reprsentent des systmes
autonomes et les liens reprsentent les interconnexions. Les nuds sont regroups
par zone gographique et le rayon est proportionnel au nombre de voisinages : plus
un systme autonome a des voisins, plus il est proche du centre du graphe. Cette
reprsentation synthtique permet de rvler deux proprits importantes de la
structure de lInternet appuyes par les chiffres analyss prcdemment.
Premirement, la densit des nuds centraux est faible : trs peu de systmes
autonomes disposent dun trs grand nombre de connexion. Cela peut constituer une
sorte de cur de lInternet sans toutefois enlever sa caractristique dcentralise. Il
sagit par exemple de Level3, TeliaSonera, Cogent,
Deuximement, la densit des nuds se trouvant prs de la frontire du graphe est
trs leve. En effet, la majorit des systmes autonomes dans lInternet sont
interconnects avec un ou deux voisins.

12


A ce stade, nous pouvons tablir les enjeux du routage externe. Premirement, le
routage externe doit offrir la connectivit globale en rendant possibles les changes
entre diffrents systmes autonomes. Deuximement, le routage externe doit tre
appliqu lchelle de lInternet et permettre lchange dinformations de routage entre
un trs grand nombre de systmes autonomes. Finalement, le routage externe doit
prserver lautonomie : chaque systme autonome doit pourvoir prendre les dcisions
dacheminement du trafic et tablir ses propres stratgies de routage.

13


Dans cette leon, nous avons analys la structure de lInternet sous langle du routage
externe. Nous avons identifi la notion de systme autonome qui sera lentit
lmentaire pour tudier le routage externe. De plus, nous avons dcouvert quelques
chiffres marquants qui rvlent les principales proprits de lInternet : on y trouve un
petit nombre de systmes autonome avec un trs grand nombre dinterconnexions et
une majorit de systmes autonomes avec un ou deux liens dinterconnexion. Nous
avons conclu en formulant les principaux enjeux du routage externe savoir fournir
une connectivit globale, assurer le passage lchelle, et prserver lautonomie.

2. Leon 2 : Interconnexion des systmes autonomes


Transit et peering

Bonjour et bienvenue dans cette leon, dans laquelle nous abordons linterconnexion
de systmes autonomes. Nous traitons ici des types daccords pour lchange de trafic
entre systmes autonomes et de la classification qui en rsulte.

14



Il existe deux types daccords entre systmes autonomes : le transit et le peering.
Le transit est un accord commercial entre un client et un fournisseur qui assure
lacheminement du trafic du client vers ou depuis le reste de lInternet. Le fournisseur
appel aussi oprateur de transit facture son client le trafic chang. Dans lexemple
suivant, le systme autonome A a conclut un accord de transit avec B. Par consquent,
B fournit laccs Internet et facture le trafic chang sur le lien avec A.

15


Sachant que le trafic prsente des alternances de priode de pointe et de priodes
creuses, comment peut-on tablir la facturation dun accord de transit ? Cette
facturation est gnralement tablie selon la rgle du 95me centile. Pour ce faire, le
dbit du lien dinterconnexion entre le client et le fournisseur est mesur toutes les cinq
minutes. Les chantillons mensuels sont classs par ordre croissant et les 5% des
valeurs de dbit les plus leves sont cartes : la valeur suivante est note 95me
centile. Le maximum entre le 95me centile du trafic sortant et entrant sert alors de
base de facturation.

16


Le peering est un accord dchange direct de trafic entre deux systmes autonomes
et entre leurs clients.
Supposons que les systmes autonomes A et B sont des fournisseurs de C et D
respectivement. Si A et B concluent un accord de peering, le trafic en provenance de
lun des quatre systmes autonomes cits et destination de lun deux peut emprunter
le lien dinterconnexion : cest le cas par exemple du trafic de A vers B ou de C vers
D.

17


En gnral, le trafic chang selon un accord de peering nest pas factur. Cependant,
les deux systmes autonomes partagent le cot de la mise en place et du maintien de
linterconnexion.

Un accord de peering est gnralement conclu entre deux systmes autonomes
quivalents. Les principales caractristiques utilises pour comparer les systmes
autonomes sont ltendue gographique, la capacit des liens, le nombre de clients,
ou le trafic gnr. En effet, mme si le trafic nest pas factur sur un lien de peering,
les deux systmes autonomes veillent garder un ratio quilibr des dbits de trafic
chang.

18


Que se passe-t-il si les rgles dquilibre de trafic ne sont pas respectes dans un
accord de peering ?
Ce dsquilibre est de plus en plus frquent depuis la forte augmentation du trafic
vido sur Internet. Prenons lexemple dun fournisseur daccs Internet A et dun
fournisseur de contenu vido B. Lorsque les clients de A accdent un contenu vido
hberg par B, leurs requtes gnrent un dbit faible compar celui gnr par le
trafic de retour transportant les vidos.
En gnral, si le dbit moyen du trafic envoy de B vers A dpasse largement celui
envoy de A vers B, A peut demander de rengocier laccord de peering : soit pour
facturer B lextension de la capacit du lien dinterconnexion, soit pour lui facturer le
trafic chang. On parle alors daccord de peering payant.
Historiquement, les rgles des accords de peering et les conditions dquilibre de trafic
associes ont provoqu de nombreux conflits entre systmes autonomes allant jusqu
la rupture des accords.

19


Supposons maintenant que deux systmes autonomes C et D ont sign des accords
de transit avec A et B respectivement. Initialement, le trafic chang entre C et D passe
par A et B ainsi que dautres systmes autonomes qui assurent linterconnexion entre
ces deux derniers.

Si C et D mettent en place un accord de peering, cela permettra dchanger
directement leur trafic sans passer par leurs fournisseurs. Quels sont alors les
avantages de la mise en place dun tel accord de peering ?

Premirement, le dlai de bout en bout des communications entre C et D est rduit, et
la qualit de service propose par les systmes autonomes amliore.
Deuximement, C et D rduisent la dpendance leurs fournisseurs respectifs et
peuvent profiter dune tolrance aux pannes dans linterconnexion : si le lien direct de
peering tombe en panne, le trafic chang entre C et D peut repasser par les
fournisseurs.
Finalement, changer le trafic directement selon un accord de peering peut rduire les
cots de transit pays par C et D. A la diffrence du trafic chang en transit et factur
en fonction du dbit, le peering induit uniquement des cots de mise en place et de
maintien de linterconnexion. Pour cela, au del dun dbit moyen de trafic chang,
le peering devient une solution rentable pour les systmes autonomes.

20


Dans les exemples prcdents, nous avons vu que les interconnexions de peering
sont ralises au travers dun lien direct entre les infrastructures propres des deux
systmes autonomes. Autrement, la mise en place des interconnexions de peering
peut tre ralise via des points dchange ou Internet Exchange (IX). Un point
dchange est une infrastructure dinterconnexion distribue sur plusieurs centres
dhbergement de donnes qui permet des systmes autonomes dchanger
directement leur trafic. Le schma logique dun point dchange est une plateforme de
commutation sur laquelle se connecte un routeur de chaque systme autonome
membre. Gnralement, chaque systme autonome membre paie des frais
dinstallation et des frais mensuels pour sinterconnecter au point dchange.
Compar un lien de peering direct entre systmes autonomes, le point dchange
peut savrer comme un solution plus conomique. Prcisment, un systme
autonome qui devient membre dun point dchange a la possibilit dchanger le trafic
directement avec lensemble des autres membres et ce moyennant un seul lien
dinterconnexion avec la plateforme de commutation.

Les points dchanges deviennent des lments importants de la structure de
lInternet. Un point dchange comme FranceIX runit plus de 250 systmes
autonomes membres et le dbit moyen du trafic chang est prs de 250 Gbits/s.

21


En considrant les accords de peering et de transit, nous pouvons tablir une
classification des systmes autonomes dans lInternet. Cette classification fait
apparatre trois niveaux de systmes autonomes. Ces niveaux sont appels Tier en
anglais : nous avons donc des systmes autonomes Tier 1, Tier 2 ou Tier 3. Notons
que cette classification reste nanmoins approximative du fait de la confidentialit de
certains accords.

22


Un systme autonome de niveau 1 ou Tier 1 fournit un transit pour ses clients et
dispose dun ensemble daccord de peering. Ces deux types daccord lui permettent
de joindre tous les systmes autonomes de lInternet. Par consquent, les systmes
autonomes de niveau 1 ont des accords de peering mutuels, et constituent une sorte
de cur de lInternet. AT&T, TeliaSonera, Level3, Cogent, sont quelques exemples
de systmes autonomes de niveau 1. Particulirement, Level3 est fournisseur de prs
de 4000 clients et il a conclut des accords de peering avec prs de 70 systmes
autonomes.
La stratgie de peering applique par les systmes autonomes de niveau 1 est dite
restrictive. Cela impose tout systme autonome candidat pour un accord de peering
des contraintes trs strictes de couverture gographique, de capacit, et dquilibre de
trafic chang.

23


Les systmes autonomes de niveau 2 ou Tier 2 sont mixtes : ils dpendent dun
fournisseur de transit, gnralement de niveau 1, et proposent leur tour une offre de
transit leurs clients. Un systme autonome de niveau 2 applique une stratgie de
peering slective. Il ngocie pour conclure des accords de peering avec des systmes
autonomes quivalents, ce qui permet de rduire les factures de transit.

24


Les systmes autonomes de niveau 3 ou Tier 3 sont clients de fournisseurs de transit
de niveau suprieur. Ils ne proposent pas doffre de transit. Un systme autonome de
niveau 3 applique gnralement une stratgie de peering ouverte et cherche
sinterconnecter aux points dchange pour rduire les factures de transit.

25



Dans cette leon, nous avons introduit et analys les types accords entre systmes
autonomes. Laccord de transit est un accord payant de type client/fournisseur qui
permet au client de joindre le reste de lInternet. Laccord de peering est un accord
gnralement non payant dchange de trafic entre deux systmes autonomes ou
entre leurs clients. Nous avons aussi soulign limportance des points dchange dans
la structure de lInternet. Finalement, nous avons prsent la classification des
systmes autonomes en trois niveaux selon les accords conclus.

3. Leon 3 : Principes du routage externe Stratgies de


routage

Bonjour et bienvenue dans cette leon, dans laquelle nous abordons les principes du
routage externe. Nous traitons ici de lchange dinformations et de la mise en place
de stratgie de routage.

26


Sur Internet, chaque systme autonome gre un ou plusieurs blocs contigus
dadresses IP appels prfixes. Ces prfixes servent numroter les quipements du
systme autonome ou ceux de ses clients. La mise en place du routage externe permet
de rendre joignables ces prfixes sur Internet.
Considrons le systme autonome A qui gre les prfixes 10.1.0.0/16 et
192.168.1.0/24. Grce un protocole de routage externe, le routeur du systme
autonome A annonce ses prfixes au voisin B.
Suite la rception des annonces du protocole de routage externe, le routeur du
systme autonome B met en place deux entres dans la table de routage qui
permettent de router le trafic vers les prfixes de A. Lors de lenvoi de trafic depuis le
systme autonome B vers ladresse 10.1.0.1 par exemple, cette table de routage
permettra de router le trafic vers A.
Bien videmment, pour avoir des changes bidirectionnels, B doit annoncer le prfixe
192.168.2.0/24 quil gre. A la rception des annonces du protocole de routage, le
routeur de A met en place une entre correspondante dans la table de routage pour
joindre le prfixe de B.

27


Comme il nexiste pas de systme autonome central dans lInternet, le relayage des
annonces de prfixes est une fonction importante du routage externe : elle permet
un systme autonome de propager linformation de ses prfixes en ayant un nombre
rduit de voisins directs.
Supposons que le systme autonome A a deux voisins B et C. Grce au protocole de
routage externe, les routeurs du systme autonome A annoncent ses prfixes aux
voisins B et C. De mme, les routeurs de B et C peuvent relayer linformation vers les
systmes autonomes D et E. Ainsi, de proche en proche linformation se propage pour
atteindre tous les systmes autonomes de lInternet.

28


Suite la rception des annonces du protocole de routage externe, les systmes
autonomes B, C, D, et E peuvent mettre en place des entres dans leur table de
routage qui permettent de router le trafic vers les prfixes de A.
Par exemple, C a reu lannonce des prfixes de A via B. Il met alors en place une
entre dans la table de routage sur son routeur qui indique que pour joindre les prfixes
de A il faut envoyer le trafic vers B. Si un quipement du systme autonome C essaie
de joindre ladresse 10.1.0.1, le routeur de C consulte les informations de routage et
transmets le trafic vers B. A son tour, le routeur consulte la table de routage et
transmets vers la destination dans le systme autonome A.

29


La possibilit de mettre en place des stratgies de routage est une caractristique
principale du routage externe. Dune manire simple, une stratgie de routage externe
consiste contrler lenvoi des annonces de prfixes et le traitement des annonces
reues. Une stratgie de routage est dcide par chacun des systmes autonomes.
Considrons le systme autonome A qui annonce ses deux prfixes vers son voisin
B. Ce dernier met donc en place des entres dans la table de routage de son routeur
pour joindre les prfixes de A.
Un premier exemple de stratgie de routage mise en place par A consiste annoncer
uniquement son prfixe 10.1.0.0/16 et bloquer lannonce de 192.168.1.0/24. Cette
stratgie a un impact sur B qui ne pourra plus joindre le prfixe filtr par A.
Un deuxime exemple de stratgie de routage mise en place par par B consiste ne
pas slectionner lannonce du prfixe 10.1.0.0/16 en provenance de A. En effet, B peut
dcider tout simplement de ne pas envoyer de trafic vers ce prfixe ou alors prfrer
passer par un autre systme autonome qui a relay une annonce du mme prfixe.

30


Observons la mise en place de ses stratgies de routage sur un exemple de cinq
systmes autonomes.
Commenons par lannonce slective de prfixes qui permet un systme autonome
de contrler le trafic entrant. En particulier, le systme autonome A choisit dannoncer
le prfixe 10.1.0.0/16 vers son voisin B, et le prfixe 192.168.1.0/24 vers son voisin D.
Lannonce du prfixe 192.168.1.0/24 peut tre relaye de D, vers E, C, puis vers B.
Les routeurs de B peuvent maintenant mettre en place des entres dans leur table de
routage vers les deux prfixes de A. Ainsi, le trafic du systme autonome B
destination de 10.1.0.0/16 sera transmis directement vers A, alors que le trafic
destination de 192.168.1.0/24 sera transmis vers C puis E, D, et enfin A.

Avec la stratgie dannonce slective, le systme autonome A partage le trafic
destination de ses deux prfixes : une partie du trafic entrant sur le lien avec B, une
autre sur le lien avec D.

31


Prenons maintenant lexemple dune stratgie de routage base sur la slection des
annonces reues.
Le systme autonome A annonce ses deux prfixes aux voisins B et D. Ce dernier
relaye lannonce qui arrive de proche en proche jusqu B. Ainsi, B reoit les annonces
des prfixes de A via ses deux voisins.
B peut mettre en place une stratgie de routage base sur la prfrence des annonces
reues. Il peut slectionner lannonce en provenance de A. Dans ce cas, le trafic vers
les prfixes de A sera achemin sur le lien direct de B vers A. Autrement, B peut
slectionner lannonce en provenance de C, et le trafic vers les prfixes de A sera
achemin via C, E et D. B a mme la possibilit de prfrer lannonce en provenance
de A pour le prfixe 10.1.0.0/16 et celle en provenance de C pour le prfixe
192.168.1.0/24. Le trafic en sortie de B vers A sera donc partag sur les deux chemins
possibles.

32


Grce aux informations de routage externe, le systme autonome A achemine son
trafic via B pour atteindre C. Supposons que les routeurs B1 et B5 qui assurent
lchange dinformations de routage externe et lchange de trafic ne sont pas
directement connects. Le systme autonome B dispose dune infrastructure avec cinq
points de prsence qui sont les routeurs B1 B5. Comment est rout le trafic qui va
de A vers C lorsqu'il passe par le systme autonome B ?
En plus du routage externe, le systme autonome B dploie un routage interne qui
permet de calculer les meilleurs chemins entre ses diffrents routeurs. Ce calcul
considre des mtriques techniques telles que la capacit des liens. De plus,
loprateur du systme autonome B a le contrle total sur le routage interne : il peut
choisir le protocole, la mtrique, ou le plan dadressage associs. Considrons que le
meilleur chemin entre B1 et B5 passe par B2. Ce segment de chemin permet de
traverser B et vient donc complter le chemin de bout en bout entre A et C.

33


Routage externe et interne sont donc deux fonctions complmentaires mais
indpendantes. Ceci nous permet de dresser un tableau comparatif des leurs
principales caractristiques :
Premirement, le routage externe est dploy entre deux systmes autonomes
diffrents. Ceci impose des rgles de contrle des annonces de routage reues depuis
les voisins. Dans le routage interne, les routeurs voisins sont forcment de confiance
puisquils font partie dun mme systme autonome.
Deuximement, le routage externe offre la possibilit de mettre en place des stratgies
de routage en filtrant les annonces envoyes ou reues. Au contraire, le routage
interne est bas sur le principe de la diffusion des informations de routage entre tous
les routeurs.
Finalement, le routage externe se base sur les stratgies de routage et les types
daccords entre les systmes autonomes pour calculer le meilleur chemin. Alors que
ce mme calcul repose sur des mtriques techniques telles que le nombre de routeurs
traverss ou la capacit des liens dans le cas du routage interne.

34


Dans cette leon, nous avons introduit les principes du routage externe. Nous avons
analys les mcanismes dannonce de prfixes et de mise en place de tables de
routage. Nous avons introduit la notion de stratgie de routage et donn deux
exemples : le premier est bas sur le contrle des annonces de routage envoyes, le
deuxime sur la slection des annonces reues. Nous avons termin la leon par un
comparatif entre le routage externe et le routage interne. Ces deux mcanismes sont
indpendants mais se compltent pour assurer lacheminement du trafic de bout en
bout sur Internet.

4. Leon 4 : Principes du protocole BGP Sessions et


messages BGP

Bonjour et bienvenue dans cette leon, dans laquelle nous abordons les principes du
protocole BGP. Nous traitons ici de la mise en place des sessions BGP et des
diffrents types de messages changs.

35


BGP ou Border Gateway Protocol est le seul protocole de routage externe dploy sur
Internet. La version 4 actuellement utilise est dfinie dans le RFC 4271 de lIETF.
Les systmes autonomes utilisent BGP pour annoncer leurs prfixes dadresses IP et
pour mettre en place leurs stratgies de routage.

36


Quels sont les cas de figure qui ncessitent la mise en place de BGP ?
Lorsqu'un un rseau dispose dun seul fournisseur, et quil na pas besoin dtablir une
stratgie de routage externe, la mise en place de BGP nest pas ncessaire. Cette
mise en place devient ncessaire quand un systme autonome dispose de plusieurs
fournisseurs, on parle alors de multi-domiciliation. BGP permet dans ce cas dappliquer
des stratgies de routage telles que la mise en place dun lien nominal et dun lien de
secours ou le partage de trafic sur les diffrents liens.

37


Le deuxime cas de figure qui ncessite typiquement la mise en place de BGP est
celui dun fournisseur qui offre le transit dautres systmes autonomes ou dun
fournisseur de services qui offre par exemple la mise en place de rseaux privs
virtuels (VPN) ses clients.

38


BGP est un protocole de type vecteur chemin ou path-vector . Le message BGP
qui annonce un prfixe contient aussi la liste des systmes autonomes traverser
pour atteindre ce prfixe.
Prenons lexemple du systme autonome A qui gre le prfixe 10.1.0.0/16. Le
message BGP envoy par le routeur A1 vers le routeur B1 permet dannoncer le
prfixe de A. La liste de systmes autonomes traverser contient le numro de A.

Si la stratgie de routage de B le permet, un message BGP envoy par B2 vers C1
annoncera le prfixe de A. Dans ce message, la liste de systmes autonomes
traverser contient le numro de B suivi par celui de A.
C a maintenant appris quil peut joindre le prfixe 10.1.0.0/16 et il dispose du chemin
de systmes autonomes pour atteindre A.

Les proprits dun protocole de type vecteur chemin permettent BGP de rpondre
deux enjeux importants du routage externe :
Premirement, linformation du chemin de systmes autonomes traverser est une
information macroscopique. Elle permet de masquer toute le complexit interne et les
tats de liens dans chaque systme autonome. Ceci permet BGP de passer
lchelle pour un dploiement sur Internet.

Deuximement, chaque systme autonome dcide des annonces de prfixes et du
traitement des annonces reues par BGP. Ceci permet la mise en place de stratgies
de routage et prserve lautonomie des dcisions.
39


Pour annoncer leurs prfixes, les systmes autonomes tablissent une session BGP
entre leurs routeurs. Dans lexemple des systmes autonomes A et B, une session
BGP est tablie entre les routeurs A1 et B1. Cette session permet dchanger des
messages BGP : un message est envoy de A1 vers B1 pour annoncer le prfixe
10.1.0.0/16 de A. Un autre message est envoy de B1 vers A1 pour annoncer le prfixe
10.2.0.0/16 de B.

40


Le protocole BGP appartient la couche applicative selon le modle TCP/IP. Il
sappuie sur le protocole de transport TCP. Ceci permet de saffranchir de la ncessit
de supporter explicitement les fonctions de fragmentation, de retransmission,
dacquittement et de squencement qui sont des fonctions naturellement supportes
par le protocole TCP.
Les messages BGP sont donc transports dans des segments TCP, auxquels
sajoutent les enttes des couches infrieures (IP et Ethernet par exemple) avant dtre
transmis sur la couche physique.

41


Prenons lexemple de quatre systmes autonomes A, B, C, et D. En particulier, le
systme autonome A gre le prfixe 10.1.0.0/16. Les routeurs A1 et B1 tablissent
une session BGP qui permet A1 dannoncer le prfixe de A. Supposons que la
stratgie de routage de B consiste annoncer le prfixe de A vers C et D, comment
les routeurs B2 et B3 sont-ils informs de ce prfixe ? En effet, les routeurs B1, B2, et
B3 du systme autonome B tablissent des sessions BGP. Ainsi, B1 peut envoyer un
message BGP vers B2 pour lui annoncer le prfixe de A. B2 peut maintenant annoncer
le prfixe vers C1. De mme, B1 annonce le prfixe de A vers B3 qui peut relayer
linformation vers le systme autonome D.

42


Il existe donc deux types de sessions BGP qui servent changer les prfixes :
Les sessions entre routeurs de deux systmes autonomes diffrents par exemple A1
et B1. Ces sessions sont appeles eBGP ou external BGP.
Les sessions entre routeurs du mme systme autonome par exemple B1 et B2. Ces
sessions sont appeles iBGP ou internal BGP.
Afin de garder une vue cohrente des prfixes appris par BGP, les systmes
autonomes mettent en place des sessions iBGP entre tous leurs routeurs BGP.

43


Quelle relation existe entre iBGP et le routage interne ? Mme si les sessions iBGP
sont tablies entre les routeurs dun mme systme autonome, il sagit toujours de
sessions de routage externe.

Supposons quaprs ltablissement des sessions eBGP et iBGP, le systme
autonome C reoit lannonce du prfixe 10.1.0.0/16 de A. C peut maintenant joindre A
travers B.
En particulier, lchange iBGP permet de dterminer que le trafic doit tre rout de B2
vers B1.

Reste donc la question du calcul du chemin interne entre B2 et B1 : ce calcul est
effectu par le protocole de routage interne de B et prend en compte des mtriques
techniques telles que la capacit ou les dlais des liens. Considrons que le meilleur
chemin calcul par le routage interne entre B1 et B2 passe par B4. Ce segment permet
de traverser le systme autonome B et vient complter le chemin de bout en bout de
C vers A.

44


Intressons-nous maintenant aux types de messages. Le protocole BGP est constitu
de quatre messages servant ltablissement de session, son maintien, lchange
de prfixes et la fermeture de session.

Le message OPEN sert ouvrir la session BGP, il permet dannoncer les numros de
systmes autonomes et les identifiants des routeurs. Rappelez-vous que les routeurs
qui changent des informations par BGP sont explicitement paramtrs par
ladministrateur du systme autonome. Louverture de la session fait suite un accord
entre les deux systmes autonomes et une dsignation des quipements pour la
mettre en uvre.

Le message KEEPALIVE est envoy priodiquement afin de maintenir la session
BGP. Celle-ci est ferme si aucun message KeepAlive nest reu pendant une priode
prdfinie.

Le message NOTIFICATION sert signaler des erreurs. La session est
immdiatement ferme suite lmission de ce message.

Le message UPDATE constitue la pierre angulaire du routage BGP. Il contient la liste
des prfixes quun routeur souhaite annoncer (ou dont il souhaite supprimer lannonce)
ainsi que les diffrents attributs associs qui seront explors dans une prochaine
leon.
45


Schmatisons les phases dun change protocolaire BGP entre deux routeurs.
Au pralable, une connexion TCP sur le port serveur 179 est tablie entre les deux
routeurs. Sur cette connexion le routeur A et le routeur B envoient des message
douverture de session. Si louverture de session est accepte, les routeurs acquittent
par des messages keepalive. Ces messages keepalive sont envoys priodiquement
pour maintenir la session BGP entre les routeurs.
Ensuite, chaque routeur annonce la liste de prfixes joignables dans des messages
update. Dornavant, si un changement a lieu pour un prfixe (d une suppression ou
une modification des attributs), seul le prfixe modifi sera annonc par un message
update.

46


Dans cette leon, nous avons analys les diffrents principes du protocole BGP. BGP
est un protocole de routage externe de type vecteur chemin. Chaque prfixe annonc
est accompagn de la liste de systmes autonomes traverser pour atteindre ce
prfixe.
Nous avons identifi les deux types de sessions BGP entre les routeurs : les sessions
iBGP entre les routeurs dun mme systme autonome et les sessions eBGP entre les
routeurs de deux systmes autonomes diffrents.
Ensuite, nous avons dfini les diffrents types de messages BGP dont principalement
le message UPDATE qui permet dannoncer les prfixes. Finalement nous avons mis
en place un exemple dchange protocolaire entre deux routeurs BGP.



5. Leon 5 : Attributs du protocole BGP



Bonjour et bienvenue dans cette leon, dans laquelle nous abordons les attributs du
protocole BGP. Nous traitons ici des diffrentes proprits transportes dans les
messages dannonce de prfixes et de leur utilisation dans le routage BGP.

47


Dans les messages BGP, les routeurs annoncent obligatoirement pour chaque prfixe
un attribut qui renseigne le chemin de systmes autonomes. Cet attribut est not
AS_PATH.
Comment lattribut AS_PATH est-il construit ?
Prenons lexemple du systme autonome A qui gre le prfixe 10.1.0.0/16. Le
message BGP envoy par le routeur A1 vers le routeur B1 permet dannoncer le
prfixe de A. Lattribut AS_PATH contient le numro de A.
Ensuite, cette annonce est relaye par iBGP jusqu B2, sans modification de
lAS_PATH.

Si la stratgie de routage de B le permet, un message BGP envoy par B2 vers C1
annoncera le prfixe de A. Dans ce message, lAS_PATH contient le numro de B
suivi par celui de A.

Ainsi, de proche en proche lAS_PATH contiendra pour chaque prfixe lensemble des
numros de systmes autonomes traverser pour atteindre ce prfixe.

48


Comment est utilis lattribut AS_PATH dans le routage externe ?
Premirement, lAS PATH est utilis dans la dtection des boucles dans le chemin de
systmes autonomes. Supposons que le systme autonome A annonce le prfixe
10.1.0.0/16 et que cette annonce est relaye par les systmes autonomes B, C, et D,
puis transmise vers A.
Lorsque le routeur A2 reoit lannonce BGP, lAS_PATH contient (D C B A). A2 note
la prsence de son propre numro de systme autonome dans lAS_PATH. Une
boucle est alors dtecte et linformation de routage reue par A2 est ignore.

49


Deuximement, lattribut AS_PATH est utilis dans la mise en place de stratgies de
routage. Supposons que le systme autonome C a reu deux annonces de routage
concernant le prfixe 10.1.0.0/16 gr par A : une premire annonce via le chemin (A
B), une deuxime via (A E D).
Le systme autonome C peut prfrer le chemin de systmes autonomes le plus court.
Dans ce cas, la premire annonce sera choisie et le trafic empruntera le chemin (C B
A).
Notons bien que rien ne garantit que le chemin avec lAS_PATH le plus court soit le
meilleur, que ce soit en dbit ou en latence ou en nombre de routeurs traverss. Mais
cest la seule information de topologie que BGP connaisse.

Autrement, C peut appliquer une stratgie de routage pour exclure le chemin qui
contient B. De cette faon le trafic de C empruntera le chemin (C D E A).

50


Analysons maintenant lattribut NEXT_HOP. Cet attribut obligatoire permet de
dsigner le prochain saut pour joindre une destination.
Lorsque le routeur A1 annonce le prfixe 10.1.0.0/16 lattribut NEXT_HOP contient
ladresse IP de A1. Par dfaut, cet attribut nest pas modifi par iBGP dans le systme
autonome B.
Cependant, lorsque B2 annonce le prfixe de A vers C1, il modifie la valeur du
NEXT_HOP pour mettre sa propre adresse.

Notons que pour les routeurs de B, en particulier B2, A1 est le prochain saut vers
10.1.0.0/16.
Le routeur B2 doit donc pouvoir joindre A1 qui est dans un autre systme autonome.
Comment cela est-il possible en pratique ? Il existe deux solutions ce problme. La
premire consiste annoncer ladresse IP de A1 dans le protocole de routage interne
du systme autonome B. Ainsi, B2 peut joindre A1 via le meilleur chemin calcul selon
les mtriques du routage interne. La deuxime consiste configurer B1 pour mettre
son adresse IP dans lattribut NEXT_HOP de lannonce iBGP.

51


Le troisime attribut que nous analysons est la prfrence locale note LOCAL_PREF.
Cet attribut iBGP facultatif permet de contrler la route emprunte par le trafic en sortie
dun systme autonome.
Supposons que le systme autonome C a reu deux annonces de routage pour le
prfixe 10.1.0.0/16 : un premire via les systmes autonomes A et B, une deuxime
via A et D.
Loprateur du systme autonome C peut configurer ces routeurs C1 et C2 de la sorte
: C1 ajoute une prfrence locale gale 300 dans les annonces iBGP, alors que C2
ajoute une prfrence local gale 200.
Les routeurs C1, C2 et C3 recevant les deux informations slectionnent celle qui a la
prfrence locale la plus leve.
Ainsi, tout le trafic du systme autonome C destination de 10.1.0.0/16 sortira par le
routeur C1 pour traverser ensuite les systmes autonomes B puis A.

52


Intressons-nous maintenant lattribut Multi-Exit Discriminator ou MED. Cet attribut
optionnel eBGP permet de contrler la route emprunte par le trafic en entre dun
systme autonome. Gnralement, lattribut MED est utilis dans le cas de deux
systmes autonomes qui ont mis en place plusieurs liens dinterconnexion.

Supposons que les systmes autonomes A et B disposent de deux liens
dinterconnexion. A peut choisir de configurer ses routeurs pour envoyer dans les
annonces de prfixe un attribut MED gal 2000 pour A1 et 1000 pour A2. B1 et B2
reoivent ces messages et changent linformation de routage par iBGP avec lattribut
MED non modifi.
Les routeurs du systme autonome B disposant des deux informations slectionnent
celle qui a lattribut MED le plus petit. Ainsi, tout le trafic du systme autonome B
destination de 10.1.0.0/16 arrivera vers A via le lien A2-B2.

53


Abordons maintenant lattribut ORIGIN. Cet attribut obligatoire permet de dcrire
lorigine de linformation de routage pour le prfixe annonc. Trois valeurs possibles
ont t dfinies :
1- Lorsque lattribut a pour valeur 0 , le prfixe annonc par BGP est interne au
systme autonome qui a gnr linformation.
2- Lorsque lattribut a pour valeur 1 , le prfixe annonc par BGP est externe au
systme autonome qui a gnr linformation.
3- Lorsque lattribut a pour valeur 2 , lorigine de linformation est incomplte. Le
prfixe correspondant a par exemple t inject dans BGP par un processus de
redistribution statique ou dynamique.
Pour un mme prfixe, une annonce avec lattribut ORIGIN gal 0 est prfre une
annonce avec lattribut gal 1, qui son tour est prfre une annonce avec la
valeur 2.

54


Le dernier attribut que nous analysons est la communaut BGP note
COMMUNITIES. La communaut, attribut optionnel, est une tiquette qui permet
dappliquer une mme stratgie un groupe de prfixes annoncs par BGP. Cette
stratgie peut consister contrler lacceptation, le relayage, ou la modification des
attributs du groupe de prfixes.
Lobjectif principal de la mise en place des communauts est la simplification de
configuration des routeurs BGP. En particulier, il est dusage de mettre en place des
communauts par types de clients, par rgion gographique, ou selon laccord
dchange de trafic entre les voisins.

Il existe des communauts prdfinies telles que la communaut no-export. Les
prfixes annoncs avec une telle communaut ne sont pas relays vers les voisins
eBGP.
Dans lexemple du systme autonome A qui annonce B son prfixe 10.1.0.0/16 avec
la communaut no-export. Les routeurs de B relayent cette information par iBGP mais
ne lannoncent pas par eBGP C. Ainsi, C dispose uniquement du chemin via D et E
pour atteindre le prfixe de A. Alors que B peut utiliser le lien direct avec A pour joindre
ce prfixe.

55

Dautres communauts peuvent tre dfinies par les systmes autonomes.


Gnralement,
les
communauts
sont
notes
sous
le
format
numro_de_systme_autonome (2 octets):numro_communaut (2 octets) .
Prenons lexemple du systme autonome B qui dclare les communauts B:100 et
B:200. Ces communauts lui permettent de fixer la prfrence locale 100 et 200
respectivement.
Un systme autonome voisin A peut annoncer son prfixe 10.1.0.0/16 avec la
communaut B:100 vers B1, et B:200 vers B2. Les routeurs de B sont configurs pour
appliquer la prfrence locale selon la communaut transporte. Par consquent, B2
sera la sortie prfre du trafic de B vers le prfixe de A.

56


Dans cette leon, nous avons analys les diffrents attributs des prfixes annoncs
par BGP et identifi leur utilisation dan le routage BGP.

Ainsi, lattribut AS_PATH permet de dtecter les boucles de routage ou dappliquer
des stratgies en fonction des systmes autonomes traverss. Le NEXT_HOP permet
didentifier le prochain saut pour joindre le prfixe destination. Le LOCAL_PREF
permet de contrler le routage du trafic sortant dun systme autonome. Le MED
permet de prfrer une entre dans un systme autonome lorsque deux voisins
disposent de plusieurs liens dinterconnexion. Lattribut ORIGIN identifie lorigine de
linformation de routage sur le systme autonome qui gre le prfixe. Finalement, la
communaut BGP est un attribut flexible qui permet dappliquer une mme stratgie
un groupe de prfixes annoncs par BGP.




6. Leon 6 : Processus de slection dans BGP Critres de


slection et informations de routage

57

Bonjour et bienvenue dans cette leon, dans laquelle nous abordons le processus de
slection dans BGP. Nous traitons ici des diffrentes tapes qui permettent de
comparer les annonces de prfixes et du traitement des informations de routage
obtenues par BGP.

Sur Internet, linterconnexion entre systmes autonomes offre une diversit des
chemins : il existe souvent plusieurs chemins qui permettent de joindre un mme
prfixe. Cette diversit rend le routage externe robuste en cas de pannes dans lun
des systmes autonomes.
Prenons lexemple du systme autonome C qui reoit lannonce du prfixe de A via le
chemin (B A), et via le chemin (D E A). C doit slectionner une des annonces pour
mettre en place une entre correspondante dans sa table de routage. Cette entre
servira router le trafic de C vers A.
Dans ce contexte, nous dgageons la problmatique suivante : comment un systme
autonome slectionne-t-il une annonce parmi celles reues ? Quels sont les critres
qui sont pris en compte ? Quels sont les attributs transports dans les messages BGP
qui interviennent dans cette slection ?

58



Considrons un exemple de cinq systmes autonomes A, B, C, D et E, et un prfixe
10.1.0.0/16 gr par A. Les sessions eBGP permettent de relayer les annonces du
prfixe de A jusqu C. Ensuite, les sessions iBGP permettent de faire parvenir C3
deux annonces de ce prfixe : lune en provenance de C1, lautre de C2.
Dans la suite, nous allons drouler le processus de slection sur les routeurs du
systme autonome C.

59


Le processus de slection prend en compte une suite de critres. Les annonces
candidates sont compares en utilisant chacun des critres dans lordre indiqu. Au
dbut du processus, les annonces candidates correspondent toutes les annonces
reues pour un mme prfixe. A chaque critre, certaines annonces peuvent tre
cartes. Le processus sarrte alors lorsque le rsultat de la comparaison permet de
slectionner une et une seule annonce.

60


Le premier critre de comparaison est la valeur de lattribut de prfrence locale ou
LOCAL_PREF transport dans les messages iBGP. Lannonce avec la valeur de
prfrence locale la plus leve est slectionne.

61


Dans lexemple tudi, le routeur C3 reoit deux annonces en provenance de C1 et
C2 avec une valeur de lattribut de prfrence locale gal 200 et 100 respectivement.
Dans ce cas, lannonce en provenance de C1 est slectionne et le processus sarrte.

62


Le premier critre tudi peut ne pas aboutir la slection dune seule annonce : ceci
se prsente lorsque lattribut de prfrence locale nest pas utilis ou lorsque plusieurs
annonces vers le mme prfixe ont la mme valeur de LOCAL_PREF.
Dans ce cas, le processus de slection passe au deuxime critre. Ce critre
correspond la longueur du chemin de systmes autonomes pour joindre le prfixe
annonc. Lannonce avec le chemin de systme autonome le plus court est
slectionne.

63


Dans notre exemple, lannonce en provenance de C1 indique quil faut traverser deux
systmes autonomes pour joindre le prfixe de A. Celle en provenance de C2 indique
un chemin de trois systmes autonomes. Par consquent, la premire annonce est
slectionne. Rappelons-nous que rien ne garantit que le chemin le plus court en
termes de systmes autonomes soit le meilleure, que ce soit en dbit ou en latence
ou en termes de routeurs traverss.

64


Aprs lAS_PATH, on compare lattribut ORIGIN des annonces candidates restantes.
Selon cet attribut, les annonces sont slectionnes dans lordre suivant:
Un prfixe interne au systme autonome quil la gnr lemporte sur un prfixe
externe ce systme autonome, qui son tour lemporte sur un prfix appris par un
processus de redistribution statique ou dynamique.

65


Le processus peut maintenant passer la comparaison de lattribut MED contenu dans
les annonces candidates. Lannonce avec la valeur MED la plus petite est
slectionne. Rappelons-que lattribut MED permet de proposer un systme
autonome voisin un lien prfr pour le trafic entrant.

66


Ensuite, la comparaison porte sur le type de session BGP. Lannonce du prfixe en
provenance dun routeur dun systme autonome diffrent est prfre une annonce
en provenance du mme systme autonome.

67


Dans notre exemple, le routeur C1 reoit une annonce eBGP du prfixe de A en
provenance de B2, et deux annonces iBGP en provenance de C2 et C3. Selon le
critre tudi, lannonce en provenance de B2 est slectionne. Ainsi, C1 route le trafic
vers A en passant par B2 au lieu de passer par C2 ou C3.
Globalement, ce critre permet de prserver les ressources du systme autonome qui
droule le processus de slection en prfrant router le trafic directement vers le
voisin.

68


En poursuivant sur le mme objectif de prservation des ressources, le prochain
critre de comparaison est le cot du chemin interne. Lannonce qui utilise le chemin
le plus court vers le prochain saut est slectionne. En gnral, le cot du chemin est
valu selon la mtrique du routage interne.

69


Revenons au routeur C3 qui reoit deux annonces du prfixe de A. La premire indique
un prochain saut qui est C1, la deuxime C2. C1 compare les cots selon le protocole
de routage interne pour atteindre le prochain saut. Supposons que le cot du chemin
pour atteindre C1 est gal 10, alors que pour atteindre C2, ce cot est gal 100.
Dans ce cas, lannonce en provenance du routeur C1 est slectionne. Comme
indiqu, ce critre permet de joindre le plus rapidement la sortie du systme autonome,
afin de minimiser lutilisation des ressources internes telles que la capacit sur les
liens.

70


Si le processus ne russit pas dpartager les annonces candidates aprs la suite
des critres analyss prcdemment, un dernier critre est introduit. Ce critre est
typiquement bas sur les identifiants ou les adresses IP inclut dans lattribut
NEXT_HOP. Par exemple, lannonce en provenance du routeur avec lidentifiant le
plus petit est slectionne et le processus sarrte.

71


Analysons maintenant le traitement des informations de routage effectu par un
routeur BGP.
A la rception des annonces de prfixes, un routeur BGP applique des stratgies
dimport. Ces stratgies de routage peuvent consister par exemple en un filtrage de
certaines annonces, ou la modification dattributs tels que la communaut ou la
prfrence locale,
Aprs passage par les stratgies dimport, les annonces BGP sont stockes dans une
table ddie par voisin. Lensemble de ces annonces alimentent le processus de
slection tudi prcdemment. Ce processus slectionne la meilleure annonce par
prfixe.

Cette dernire gnre alors une information de routage constitue par le prfixe
destination et le prochain saut hrit de lattribut NEXT_HOP. Linformation de routage
sajoute dans la table de routage du routeur BGP et peut dsormais servir acheminer
les paquets vers la destination.

Suite lapparition ou au changement dune entre dans la table de routage, le routeur
applique des stratgies dexport et dcide des informations annoncer chaque
voisin. Ces annonces sont stockes dans des tables ddies puis transmises dans
des messages BGP vers les voisins correspondants.

72


Cet exemple permet dillustrer le traitement des informations de routage dans BGP.
Considrons cinq routeurs qui ont tabli des sessions de routage BGP. Le routeur R2
annonce R1 le prfixe 10.1.0.0/16 avec un AS_PATH contenant deux systmes
autonomes. Le routeur R3 annonce R1 le mme prfixe avec un AS_PATH
contenant trois systmes autonomes.

A la rception de ces annonces, R1 applique les stratgies dimport. Supposons que
ces stratgies sont transparentes dans cet exemple. Par consquent, R1 stocke les
annonces reues dans les tables ddies chaque voisin R2 et R3. Le processus de
slection traite ensuite lensemble des annonces reues pour le prfixe 10.1.0.0/16.
En comparant la longueur des chemins de systmes autonomes, R1 slectionne
lannonce en provenance de R2. Cette annonce est injecte dans la table de routage
de R1 qui peut dsormais router les paquets vers 10.1.0.0/16 en passant par R2.

Ltape suivante consiste annoncer ce prfixe aux voisins de R1. Supposons que la
stratgie dexport lui autorise uniquement dannoncer ce prfixe vers R4. Dans ce cas,
cette annonce est stocke dans la table dannonces envoyes ddie R4 en mettant
un attribut NEXT_HOP qui correspond ladresse de R1. Cette information est enfin
envoye dans un message BGP vers R4.

73


Dans cette leon, nous avons analys les diffrentes tapes de slection des
annonces BGP. Le processus prend en compte un ensemble de critres qui
proviennent des attributs transports (tels que la prfrence locale ou le chemin de
systmes autonomes) ou des configurations des routeurs (tels que le type de session
ou le cot du routage interne). Ce processus a pour objectif de slectionner une
annonce par prfixe. Les critres sont alors utiliss successivement afin datteindre
cet objectif.
Nous avons aussi rvl les diffrentes tapes de traitement des informations de
routage depuis la rception jusqu lenvoi des annonces BGP en passant par la
slection et la mise en place de la table de routage.

7. Leon 7 : Exemples de stratgies de routage Peering et


transit avec BGP

Bonjour et bienvenue dans cette leon, dans laquelle nous abordons des exemples de
dploiement de stratgies de routage BGP. Nous traitons ici de la mise en place des
accords de peering et de transit avec BGP.

74


Prenons lexemple de cinq systmes autonomes A, B, C, D, et E. Des accords de
transit sont conclus entre les diffrents systmes autonomes : A est fournisseur de
transit de B, B est fournisseur de C, et D est fournisseur de E. De plus, un accord de
peering est conclu entre B et D pour changer leur trafic ainsi que celui de leurs clients.

Dans un tel schma, comment sont tablies les stratgies de routage BGP ?
Quels sont les prfixes annoncs entre les diffrents systmes autonomes ?

75


Prenons le point de vue du systme autonome B et notons les annonces de prfixes
reues. B reoit un message BGP de C qui lui annonce son prfixe 10.2.0.0/16.
Il reoit sur le lien de peering lannonce du prfixe de D 192.168.1.0/24 et de son client
E 192.168.2.0/24.

Finalement, il reoit de la part de son fournisseur A la table globale de lInternet. Cette
table contient tous les prfixes dadresses publiques annoncs par tous les systmes
autonomes.

76


A ce stade, B a reu toutes les annonces de prfixes via A, D, et C. tablissons donc
les annonces de prfixes envoys par B. Ce dernier met en place des stratgies
dexport afin de relayer convenablement les prfixes vers les voisins.

En particulier, B annonce son prfixe interne son fournisseur A afin de le rendre
joignable depuis Internet. De plus, B annonce A le prfixe de son client C
conformment laccord de transit. C peut alors recevoir du trafic depuis lInternet via
B.

Notons que B ne doit en aucun cas annoncer A les prfixes de son voisin en peering
D ni de son client E. Sinon, B recevra du trafic depuis lInternet destination de D ou
de E. Ce trafic lui sera factur par A alors quil ne pourra pas recevoir une
compensation de la part D. En effet, laccord de peering avec D est un accord non
payant.

Selon les rgles de laccord de peering, B annonce D son prfixe et celui de son
client C. B et D peuvent donc maintenant changer directement du trafic vers leurs
prfixes et ceux de leurs clients sans passer par les fournisseurs.

Finalement, B envoie la table globale de lInternet vers son client C. Ce dernier peut
donc joindre lensemble des prfixes sur Internet via B.

77

Autrement, B peut choisir de remplacer lannonce de la table globale par une route par
dfaut. Cette solution rduit les possibilits de mise en place de stratgies de routage
sur C mais allge dune manire significative la charge de son routeur.

Ajoutons lexemple prcdent un accord de transit tabli entre C et D. Le systme


autonome B reoit maintenant trois annonces pour le prfixe 10.2.0.0/16: une annonce
en provenance directe de son client C. Une deuxime en provenance de son voisin D
en peering. Plus prcisment, D annonce son prfixe interne et les prfixes de ses
clients C et E. Une troisime annonce en provenance de A et inclue dans la table
globale de lInternet.

Dans ce cas de figure, comment peut-on traduire les prfrences de B entre les
diffrents accords ?
Quelle annonce sera slectionne par B afin de router le trafic vers le prfixe de C ?

B a donc reu lannonce du prfixe de C via trois types daccords diffrents : client,
fournisseur et peering. En prenant en compte les types de facturation de chacun de
ces accords, B prfre en premier lieu envoyer le trafic directement vers C. Sur ce lien,
il facture le dbit chang avec C selon laccord de transit. En deuxime lieu, B peut
choisir de passer par D pour atteindre C. Sur ce lien de peering, il ny a pas de
facturation mise en place. En dernier lieu, B peut envoyer le trafic vers C en passant
par A: dans ce cas, il sera factur selon laccord de transit sign conclu avec A.

78

A laide de BGP, la mise en place de cet ordre de prfrence est simple. Il suffit de
configurer lattribut de prfrence locale une valeur leve pour lannonce arrivant
depuis C. Une valeur moyenne peut tre choisie pour les annonces en provenance de
D. Enfin, une valeur faible est rserve aux prfixes de la table globale de lInternet
annoncs par A.

Les changes iBGP dans le systme autonome B permettent de slectionner
lannonce en provenance de C avec la valeur de la prfrence locale la plus leve.
Par consquent, le trafic de B vers C sera rout sur le lien direct. Si ce lien tombe en
panne, le trafic bascule sur le lien de peering et atteindra C via le voisin D. Finalement,
si les deux liens prcdents sont en panne, le trafic ira vers A qui offre le transit vers
tous les prfixes de lInternet.


Dans les exemples prcdents, nous avons mentionn la table globale de lInternet.
Cette table contient les prfixes routs de tous les systmes autonomes. Il existe
actuellement prs de 560 000 entres dans cette table de routage. En observant
attentivement lvolution de cette table, on peut retracer globalement lvolution de
lInternet.
Au dbut, la progression dans les annes 90 est lente. En particulier un palier est
constat entre 1997 et 1999; ce palier est d la mise en place du routage de prfixes
sans classes dadresses et de lagrgation de prfixes contigus. On note un autre
palier en 2001 qui fait suite lclatement de la bulle technologique. Finalement, la
croissance partir de 2010 est exponentielle et tmoigne de laugmentation du nombre
de prfixes annoncs, et donc des quipements connects Internet.
79


Dans cette leon, nous avons analys la mise en place des accords de peering et de
transit avec BGP. En particulier, nous avons tabli les stratgies dannonce de prfixes
et de slection des annonces reues. Ces stratgies renforcent les accords conclus et
satisfont les intrts et les engagements des systmes autonomes. Par exemple, un
systme autonome peut mettre en place des prfrences locales pour privilgier le lien
vers les clients, par rapport celui avec les voisins en peering, et en dernier lieu le lien
de transit payant.




80

Vous aimerez peut-être aussi