Vous êtes sur la page 1sur 31

A.

U: 2013/2014

BGP:
Border Gateway Protocol

Unité Pédagogique: Réseau


Unité d’enseignement: Réseaux IP et Routage

1
Responsable U.E: fatma.louati@esprit.tn
Introduction
 IGP (Interior Gateway Protocol) (RIP, IGRP, EIGRP, OSPF, …)
Protocoles de routage utilisés à l'intérieur d'un système autonome (AS)

 EGP (Exterior Gateway Protocol) (BGP)


Protocole de routage utilisé pour échanger des informations de routage
entre différents systèmes autonomes (AS)

“Un ensemble de routeurs sous une seule administration, qui utilise un


IGP et des métriques communes pour faire le routage des paquets à
l'intérieur d'un AS and et un EGP pour le routage vers d'autres AS’s.”
(RFC 1771)

Chaque entité est définit


par son numéro AS
2
Cas des AS «single-homed»

• Première alternative : routes statiques


Un AS Single-homed system n'a qu'un seul point de sortie
aussi connus comme des réseaux stub généralement utilisent une
route défaut pour le trafic destiné à l'extérieur de l'AS.

Dans ce cas, BGP n'est pas nécessaire


3
Cas des AS «single-homed»

• Utilisation d'un protocole IGP


Le FAI et le client peuvent utiliser un protocole IGP pour
partager les routes du client
A l'avantage de faire le ISP bénéficier du routage dynamique
Dans ce cas, BGP n'est pas nécessaire
4
Cas des AS «single-homed»

• Utiliser BGP
le réseau single-homed peut utiliser BGP pour incrémenter les
politiques de routage difficilement on obtient un AS, il faut
utiliser un numéro privé
Le FAI remplace le numéro privé pour l'annoncer au coeur de
l'Internet 5
Cas des AS «multi-homed»

Internal BGP (IBGP) - lorsque BGP est utilisé à l'intérieur d'un AS


External BGP (EBGP) - lorsque BGP est utilisé entre deux AS
Routeur de passage – un routeur BGP utilisé pour le passage du
trafic IBGP
Routeur frontalier – routeurs à la limite des AS utilisés pour
échanger des routes EBGP
6
Objectifs généraux de BGP
• Le protocole de routage BGP est un protocole permettant de
communiquer des informations de routage entre différents systèmes
autonomes.

• Echanger des routes (du trafic) entre organismes indépendants


 Opérateurs
 Gros sites mono ou multi connectés

• Etre indépendant des IGP utilisés en interne à un organisme

• Minimiser le trafic induit sur les liens

• Donner une bonne stabilité au routage


• Mémoriser tous les chemins (meilleurs chemins et de secours) vers toutes
les destinations 7
Spécifications du protocole BGP
BGP est un protocole de routage par vecteur de chemin
(Path vector) RFC 1772
Adresse IP du réseau de Adresse IP du prochain routeur Liste des AS traversés
destination (next hop) pour atteindre le réseau

• Une route indique la liste d'ASs qu'il faut traverser pour


arriver à la destination
• BGP a pour objectif :
• l'échange d'informations de routage entre les ASs
• garantir le choix d'une route sans boucle (loop-free)
• BGP4 est la première version de BGP qui supporte CIDR
et agrégation de routes.
8
Spécifications du protocole BGP
• BGP :
– N'utilise pas des métriques
– Fait les décisions selon des politiques de routage
– N'indique pas les détails internes des ASs
– Représente un arbre d'ASs
• Le transport de la session BGP utilise le TCP sur le port
179.
• BGP bénéfice de la fiabilité de TCP
• Les sessions BGP sont établies entre les routeurs de
bordure (ASBR).
• Protocole point à point entre routeurs de bordure.
• Routage asymétrique : Les paquets peuvent ne pas
emprunter le même chemin à l’aller et au retour.
9
Processus BGP
• L’automate à états finis du processus BGP

10
Fonctionnement
• Deux routeurs BGP s'échangent des messages pour ouvrir et
maintenir la connexion.

• Le premier flot de données est la table entière de routage.


Ensuite, des mises à jours incrémentielles sont envoyées lorsque
la table de routage change .

• BGP ne nécessite pas de mises à jour périodiques des tables de


routage. Par contre, un routeur BGP doit retenir la totalité des
tables de routage courantes de tous ses pairs durant le temps de la
connexion.

=>Des messages « keepalive » sont envoyés périodiquement pour


maintenir la connexion

• Tous les messages BGP sont unicast 11


Principes généraux du protocole BGP
• Le protocole pour le routage inter-domaine : "Exterior Gateway Protocol" :

- Ne tient pas compte de la structure interne des AS

• Sélection des routes basée sur

- le préfixe le plus spécifique

- le meilleur chemin : de plus court en nombre d' "Autonomous System"


(AS) !

• Supporte le CIDR "Classless InterDomain Routing » 

• Dans un protocole de routage externe ce sont les routeurs aux frontières des
AS appelés routeurs de bordure qui s’échange des informations de routage.

• Il va aussi propager des routes apprises depuis un autre AS. 12


Différence avec un protocole DV
• BGP fonctionne différemment d'un protocole "distance vector"
• Pas de transmission périodique des meilleures routes, mais uniquement des
modifications

• BGP mémorise toutes les routes vers toutes les destinations

• Récupération rapide lorsque une destination devient inaccessible par la


route initialement choisie

• BGP construit des routes sans boucle

• Le chemin suivi est décrit explicitement à l'aide de la liste des AS


traversés

• Les boucles sont facilement détectées 13


Loop Free
• Pour éviter les boucles, BGP construit un graphe avec
les données envoyées par les voisins

• La connexion entre deux AS représente un chemin (AS


Path )

• Le chemin pour atteindre un AS est représenté comme


une séquence de numéros d'AS.

• Grâce aux numéros d'AS, un système autonome peut


détecter un chemin qui passe deux fois par le même AS
14
Loop Free

15
Choix du chemin optimal exp : Cisco
1) BGP choisit la route avec le plus grand poids (weight). Par
défaut, une route directement connectée se voit attribuer le poids
32768 ;
2) Sinon, BGP choisit celle avec la plus grande "préférence locale".
Par défaut, une route issue d'un routeur interne à l'AS se voit
attribuer une préférence locale de 100 .
3) Sinon, BGP choisit une route de type "internal"
4) Sinon, BGP retiens la route avec le chemin (As-Path) le plus
court.
5) Sinon, BGP choisit la route avec la métrique la plus faible.

6)Sinon, La colonne Path indique la liste des systèmes autonomes à


traverser avant d'atteindre le réseau. Le i indique ici que les routes
sont de type IGP. En fait, BGP regroupe sous ce terme les routes16
Table BGP
R1# Show ip bgp

(*) : La route est valide


(>) pour indiquer que BGP considère que c'est la meilleure route.
(i pour internal) : si elle provient d'un routeur interne à l'AS.
Les paramètres Metric, LocPrf (Local Preference) et Weight sont
utilisés par BGP pour lire la meilleure route vers une destination. 
17
Choix de plus court chemin selon
AS-PATH
La stratégie la plus simple consiste à choisir le chemin le plus court

Pour deux annonces de réseaux identiques (mêmes préfixes),BGP préfère les routes avec le

AS_PATH le plus petit.

Dans cet exemple, AS7 choisit le chemin le

plus court (4, 2, 1)

AS_PATH (Liste des AS associés à une route)

18
La vie du processus
BGP
• 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 sécurisés par MD5

• Chaque routeur BGP échange avec ses voisins des messages pour ouvrir et négocier les
paramètres la session BGP.
• Ces informations sont formées principalement par le chemin (liste de numéro d'AS) qui
doit être suivi pour atteindre une destination.
• Ces informations permettent de construire un graphe formé d'AS (sans boucle) sur lequel
une politique de routage peut être appliquée pour contraindre certains chemins.
19
La vie du processus
BGP
Message OPEN

• 1er message envoyé après l’ouverture de la


session TCP informe son voisin de :
• Sa version de BGP

• Son numéro d’AS

• D’un numéro identifiant le processus BGP

• Temps maximum en secondes entre deux


paquets de sonde
• Identificateur (adresse) du routeur BGP
émetteur 20
La vie du processus
BGP
Message KEEPALIVE

• Confirme un OPEN.

• Des messages sont transmis périodiquement pour vérifier le


bon fonctionnement de la session BGP.

• Réarme le minuteur contrôlant le temps de maintien de la


session

• Si le temps de maintien est non égal a 0


• Il est réémis toutes les 30 secondes

21
La vie du processus
BGP
Message UPDATE
• Sert à échanger les informations
de routage:
• Routes à éliminer (éventuellement)
• Ensemble des attributs de la route
• Chaque réseau est défini par
(préfixe, longueur)
• Envoyé uniquement si
changement.
• Active le processus BGP:
• Modification des RIB (Update,
politique de routage, configuration.)
• Émission d’un message UPDATE
vers les autres voisins 22
La vie du processus
BGP
Message NOTIFICATION
• Ferme la session BGP
• Ferme aussi la session TCP
• Annule toutes les routes apprises par le BGP
• Peut provoquer des instabilités de routage injustifiées
• Un incident ne veut pas forcément dire que toutes les routes
apprises précédemment sont devenues fausses
• Emis sur incidents:
• Pas de KEEPALIVE pendant 90s (holdtime)
• Message incorrect
• Problème dans le processus BGP
23
Les attributs de routes obligatoires
• ORIGIN : donne l’origine de la route
• IGP(i) : la route est intérieure à l’AS d’origine
• EGP (e) : la route a été apprise par le protocole EGP
• Incomplète (?) : l’origine de la route est inconnue ou apprise par un
autre moyen (redistribution des routes statique ou connectées dans
BGP)
• AS_PATH
• Donne la route sous forme d’une liste de segments d’AS
• Les segments sont ordonnés ou non (AS_SET)
• Chaque routeur rajoute son numéro d’AS aux AS_PATH des routes
qu’il a apprises avant de les ré-annoncer
• NEXT_HOP
• Donne l’adresse IP du prochain routeur qui devrait être utilisé (peut
éviter un rebond si plusieurs routeurs BGP sont sur un même réseau
local) 24
IBGP versus EBGP
• Lorsque BGP s'exécute à l'intérieur d'un AS, il est appelé
• Internal BGP (IBGP).
• Un routeur de transit execute IBGP
• Utilisé presque exclusivement dans le cas des AS multihomed
• BGP entre deux AS est appelé External BGP (EBGP)
=>Un routeur de frontière

25
Les domaines de transit
• Un Internet Exchange Point est une infrastructure physique
permettant aux différents fournisseur d’accès internet  (ou FAI ou
ISP) d'échanger du trafic  internet entre leurs réseaux de système
autonome grâce à des accords mutuels dits de «peering».

• Un domaine de transit autorise l'utilisation de son infrastructure


par certains domaines pour transmettre des paquets vers d'autres
domaines

26
Peering
• Il y a, en pratique, 2 types de "peering" BGP :

• – "customer-provider peering"

• • Relation asymétrique dans laquelle un client (un domaine de

• routage) achète une connectivité à l'Internet auprès d'un

• fournisseur d'accès (un autre domaine de routage).

• – "shared-cost peering"

• • Relation symétrique où deux domaines de routage acceptent

• d'échanger gratuitement leurs paquets à travers un point

• d'interconnexion. 27
customer-provider peering
• Le client envoie ses routes internes et les routes apprises de ses
propres clients au fournisseur

• – Le fournisseur annoncera ces routes sur tout l'Internet

• Le fournisseur annonce à son client toutes les routes qu'il connaît

• – le client est capable d'atteindre n'importe qui sur l'Internet

28
Shared Shared--cost cost peering
• Chaque "peer" envoie à l'autre ses propres routes et celles de ses
clients

• Le point d'interconnexion sera utilisé par l'un des pair BGP pour
atteindre les destinations ou les destinations des clients de l'autre
pair.

29
Défauts de BGP

• BGP choisit un seul chemin (pas d'équilibrage de charge)

• Routage Asymétrique

30
A.U: 2013/2014

Réf: Chapitre 6 CCNP (Routing)

Unité Pédagogique: Réseau


Unité d’enseignement: Réseaux IP et Routage

31

Vous aimerez peut-être aussi