Vous êtes sur la page 1sur 67

L’Internet et le routage

entre les réseaux


Architecture des systèmes téléinformatique
Tuesday, Jun 21, 2016
Clément A.
clement.amisi@unikin.ac.cd
Internet
 Interconnexion des plusieuers réseaux
 Pas de gestion centralisées

Autonomous
System
= Système Autonome

2
Systèmes autonomes (AS)
 Administrateur
 Autonomie de choix
 Des protocoles,

 Du plan d’adressage,

 De la topologie

 …

3
Numéros d’AS
 2 Octets (1)
 Exemples: 2200 pour Renater
 Attribué par IANA

4
(1) Depuis 2007, on peut représenter les numéros d’AS sur 4 octets
Structure de l’Internet
 Impossible à déterminer réellement
 Plus de 46000 AS différents en 2014

5
source: www.potaroo.net
Explications (diapo 5)
Du fait de son fort développement, il impossible de connaitre la taille ou
la topologie de l'internet.
Cependant, des mesures sont faites pour avoir une vision
approximative.
Sur le site de potaroo.net, on peut trouver une étude qui montre qu'elle
a identifier au moins 46.000 AS différents.
Le graphe qui trace le nombre des AS identifiés depuis 1997 jusqu'à
2013 montre que ce nombre ne cesse de croître rapidement.

6
Types d’AS
 AS de Terminal

AS B AS C

AS A

 AS de transit
AS B AS C

AS A
7
Explications (diapo 7)
Les AS peuvent être terminaux ou de transits.
S'ils sont terminaux ils génèrent ou consomment du trafic, alors que les
AS de transits utilisent une partie de leurs bandes passantes pour
acheminer du trafic entre leurs AS voisins.

8
Relation entre les AS
 Client/fournisseur
Achat du transit par le client
A client de B
B fournisseur de A AS B AS C

B client de C
AS A C fournisseur de B

 Peering
A client de B
B fournisseur de A AS B AS C

Peering entre
AS A B et C
9
Explications (diapo 9)
Les rélations entre AS sont principalement de deux types:
- Client-fournisseur ou
-de peering
Les clients souscrivent à une offre des services auprès des
fournisseurs qui leurs vent un accès à l'internet.
Quand les deux As échangent les trafics dans les proportions
comparables, il est plus pratique de négocier un accord de peering
grâce auxquels les deux AS échangeront gratuitement et librement
leurs trafics.
Il est à signaler que le peering peut être mis en œuvre dans un point
d'échange, tel que KINIX.

10
Classification des AS
 Niveau 1 (Tiers-1)
 Uniquement peering
Exemples: AT T, Global Crossing (GBLX),
NTT communications, Quest, Sprint,
TeliaSonera International Carrier, Tata
Communications, ...

 Niveau 2 (Tier-2)
 relation de peering et client/fournisseur
 achètent du transit
 Quelque Tier 2: comcast, Interoute,
 France Telecom, Tele2, Virgin media, ...

 Niveau 3 (Tier-3)
11
 Uniquement client/fournisseur
Explication (diapo 11)
Ces rélations(Clients-fournisseurs et Peering) sont à l'origines d'une
classification qui permet de repartir les AS selon 3 niveaux.
Dans le premiers niveau, les AS aussi appelé Tier-1, sont tous
complément connectés par une relation de peering.
Les AS de niveau 2 ou Tier-2, utilisent à la fois des rélations de peering
et des rélations client/fournisseur pour acheter du transit.
Les AS de niveau 3 ou Tier-3, utilisent exclusivement des rélations
client/fournisseur.

12
Source: CAIDA http://www.caida.org/ 13
Explication (diapo 13)
Ce graphique permet de visualiser, les rélations entre AS.
Il est disponible sur le site de CAIDA, et a été généré grâce à un outil
de mesure nommé "Archipelago".
La partie rouge représente les AS ayant plus des voisins dans
l'internet, c'est à dire le cœur de l'internet.
Si on regarde, la versions du graphe comportant les noms des AS sur
le site de CAIDA, on peut s'apercevoir, la petite quinzaine de Tier-1 qui
existent dans le monde, sont repartie dans cette partie rouge.

14
Propriétés des relations entre AS
 Pas réflexive
A client B
B fournisseur de A

AS A AS B

B n'est pas client de A


A n'est pas fournisseur de B
C fournisseur de B
 Pas transitive B client de C

B fournisseur de A AS B AS C
A client de B

AS A A n'est pas client de C


15
C n'est pas fournisseur de A
Explications (diapo 15)
Le routage dans l’Internet est complexe, car il doit refléter les rélations
entre AS et en particulier, le contrat qui les lient.
Ceci est mise en œuvre par l'administrateur du AS à travers les
politiques de routage.

Si on prend l'exemple de la relation client/fournisseur, elle est ni


réflexive, ni transitive. En effet, le fournisseur d'un AS n'est pas le
fournisseur du client de ce dernier.

16
Enjeu du routage
 Connectivité
 Stabilité des routes
 pas de boucles
 Utilisation des ressources de l'AS

17
Explications (diapo 17)
ainsi l'enjeu du routage des As est: la connectivité, tout en favorisant la
stabilité des routes tout évitant des boucles.

Mais c'est avant tout, l'utilisation des ressources de AS.


Accepter un trafic de transit, consomme de la bande passante, dans
l'AS.

18
Propriétés des mécanismes inter-
domaines
 Autonomie de gestion
 numérotation des machines, plan de routage interne,
coût, ...
 Confidentialité de l'état interne du réseau
 topologie, matrice origine/Destination, performances,
...
 Scalabilité
 passage à l'échelle

19
Explications (diapo 19)
Les mécanismes mise en œuvres entre les AS, doivent vérifier 3
grandes propriétés:
1. Autonomie: Un AS doit disposer de son autonomie de gestion. Le
mécanisme ne peut imposer à l'AS, une numérotation des machines,
un plan d'adressage, un protocole interne, une métrique, ect...
2.La confidentialité: Indique que l'état interne de l'As ne doit pas être
divulgué à l'extérieur, car ces informations sont stratégiques, ainsi on
ne peut divulguer la topologie de l'AS, les renseignements sur les E/S
du trafic ou alors encore ses performances.
3. Scalabilité: Enfin, tous les mécanismes entre les AS doit passer à
l'échelle, Ainsi il faut limiter l'impacte sur le performance des
mécanismes, du grand nombre des AS dans l'Internet.

20
Les protocoles de routage
 Interior Gateway Protocol (IGP)
 Protocoles de routage interne
 Encourage la coopération
 But: maximiser la connectivité
 Exemples: OSPF, ISIS, RIP, ...
 Exterior Gateway Protocol (EGP)
 Protocole de routage externe
 But:
 1: respecter les politiques de routage
 2: avoir une bonne connectivité
 protocole de routage externe: BGP 21
BGP

22
Introduction
 Border Gateway Protocol (BGP)
z
c
E
AS A

AS E

AS B AS Z

AS D AS C AS Y
23
Border Gateway Protocol
BGP
 RFC 4271 (version 4)
 Protocole de type "vecteur de chemins"
(path-vector)
 Echange fiable des informations de routage
(sur TCP)
 Association point-à-point explicite entre
routeurs

24
Rôle de BGP
 Informe de l'existance de réseaux
 Annonces

 Mise en œuvre des politiques de routage


 S'interface avec l'IGP
 Minimiser le trafic du protocole
 routage stable

25
AS et BGP
AS A

BGP

Route par
défaut

Route par AS Z
défaut
AS B

AS C
26
Explication (diapo 26)
Un système autonome s'il est connecté à un seul fournisseur de
service réseau, n'a pas besoin d‘exécuter BGP.
En effet, il a juste besoin d'une route par défaut vers son fournisseur
pour atteindre l'Internet.

27
AS et BGP
AS A

BGP

Route par
défaut

Route par AS Z
défaut
AS B

AS C
28
Explication (diapo 28)
Le recourt à BGP devient nécessaire, lorsqu'il lève du transit. Il faut
alors choisir, par quelle sortie envoyer les trafics,

29
AS et BGP
AS A

BGP

Route par
défaut

AS Z
AS B

AS C
30
Explication (diapo 30)
ou alors lorsqu'il est connecté à plusieurs fournisseurs des services
réseaux; on dit alors qu'il est multidomicilier.

31
AS et BGP
eBGP
External AS A
Border
Gateway
Protocol

eBGP
AS D
AS B iBGP
iBGP
eBGP
AS C External Border Gateway 32

iBGP Protocol
Explication (diapo 32)
Le protocole BGP établi explicitement des relations externes avec
certains routeurs des AS voisins; et des relations internes entre tous
les routeurs du système autonome qui exécutent BGP.
Ces routeurs de bordures d'AS dialoguent et échangent les annonces
apprises soit par le protocoles de routage internes soit par les
protocoles BGP sur les réseaux atteignables par ses AS voisins.

33
Annonce
=existence de réseaux
= propose de transporter du trafic vers ce
réseau:
 Un AS A annonce un réseau α à un AS B
s'il accepte de transporter du trafic de B
vers α
 B accepte l'annonce de α par A s'il
accepte d'envoyer le trafic vers α à
travers A
34
Explications (diapo34)
Transmettre une annonce du réseau n'est pas anodins. Cela signifie que l'on
connait un réseau qui est atteignable et que l'on accepte de transporter du
trafic à ce réseau.
Ainsi lorsqu'un AS A annonce un réseau alpha à un AS B, il indique
explicitement qu'il accepte de transporter les trafics envoyés par B à
destination du réseau alpha.
Lorsqu'un AS B reçoit l'annonce du réseau alpha en provenance de l'AS A il
choisit d'intégrer ou non dans son routage cette information. Il peut refuser si
sa politique ne permet pas de passer par l'AS A pour atteindre le réseau alpha,
ou alors s'il a déjà une route meilleure vers ce réseau.
BGP met en œuvre un routage par omission. En effet, un système autonome
peut avoir une connaissance totale des préfixes de l'internet, s'il est bien
connecté. Par contre, il n'annoncera pas tout!
L'enjeu d'un bon routage est donc la connectivité, mais surtout l'emploie des
ressources du système autonome par ses voisins si le routage est mal fait.
35
Routage path-vector
 Algorithme de Dijkstra non utilisable
 Topologie non connue
 pas de métrique commune aux AS
 Politique de routage
 (Policy-based routing)
 définie par l'administrateur de l'AS
 Contraintes économiques
 Contraintes politiques
 Contraintes de sécurité
 ...
36
Explication (diapo 36)
Pour choisir un chemin, on ne peut se contacter comme nous l'avons
vu précédemment d'appliquer une métrique et d'effectuer un algorithme
de Dijkstra.
D'une part, par ce que l'on ne peut diffuser la topologie complète de
l'internet ou des Systèmes Autonome; d'autres part, par ce que on ne
peut imposer à un système autonome une métrique unique
Enfin, les routes choisis doivent respecter les politiques de routages,
définies par l'administrateur, elles peuvent refléter les contraintes
économiques, politiques ou encore des sécurité.

37
Principe
α

AS A

AS B

AS C
AS D

AS E
38
Principe
α

AS A

Annonces
de α

AS B

AS C
AS D

AS E
39
Principe
α

AS A

Annonces
de α

AS B

AS C
AS D

AS E
40
Explications (diapo 38 à 40)
Un AS peut recevoir plusieurs annonces pour un même réseau.
Pour limiter la taille de la table de routage, il n'en gardera qu'une seule.
c'est à dire qu'il ne gardera qu'une seule route par destination données.
Dans la plupart des cas, le chemin choisi, sera le plus court en terme
d'AS traversés ou celui qui sera désigné comme le meilleur après avoir
appliqués une séries des critères.

41
Attributs
Drapeau Code Attribut
Bien connu obligatoire 1 ORIGIN
Infos
Bien connu obligatoire 2 AS_PATH (<65000 car n° d’AS publique)
route
Bien connu obligatoire 3 NEXT_HOP
Optionnel, non transitif 4 MULTI_EXT_DISCR (BGP-4) ou INTER-AS (BGP-3)
Préférence
de l’admin Bien connu facultatif 5 LOCAL_PREF
Bien connu facultatif 6 ATOMIC_AGGREGATE
Optionnel transitif 7 AGGREGATOR
Annonces de
routes Optionnel transitif 8 COMMUNITY.t
similaires
Optionnel, non transitif 9 ORIGINATOR_ID.
Optionnel, non transitif 10 CLUSTER_LIST
11 DPA
Optionnel, non transitif 12 ADVERTISER
Optionnel, non transitif 13 RCID_PATH/CLUSTER_ID

42
Explications (diapo 42)
Pour chaque annonces, on distingue un ensemble d'attributs qui
permettent de qualifier cette route.
Certains sont obligatoires, à ce moment là chaque routeurs doit les
mettre en œuvre, d'autres sont facultatifs.
Une partie des attributs donnent des informations sur la route.
D'autres indiquent une préférence de l'administrateur. Certains
attributs encore permettent d'attribuer un comportement similaires à
plusieurs annonces des routes.

43
Quelques attributs de route
 Next_Hope
 adresse IP du routeur vers lequel on doit
envoyer les paquets routés
 Origin
 Indique comment BGP a appris la route:
par un protocole de route interne ou
externe? (ou route statique)

44
Attribut AS_PATH
Annonces de α α

AS A

AS_PATH = [A]
• Liste d'AS
traversés pour
cette route
• Evite les boucles
AS B
dans les
annonces
AS C
AS D • Permet de choisir
le chemin le plus
court
AS E
45
Explications (diapo 45)
L'attribut AS_PATH contient la liste des Systèmes Autonomes,
parcourues par l'annonce de la route.
Cela permet de choisir entre plusieurs chemins, la route qui traverse le
moins des Systèmes Autonomes.
Cette t'attribut se permet aussi de s'assurer que la route ne présente
pas des boucles. En effet, lorsqu'un AS reçoit cette annonce,
il vérifie que l'AS n'est déjà dans l'As_PATH. S'il s'y trouve déjà, il ne
propagera pas cette annonce vers ses voisins pour ne pas générer des
boucles

46
Attribut AS_PATH
Annonces de α α

AS A
AS_PATH = [A] • Liste d'AS
AS_PATH =
[A,B,C] traversés pour
cette route
• Evite les boucles
AS B
dans les
AS_PATH = [A,B,C]
* annonces
AS C AS D • Permet de choisir
AS_PATH = [A,B,D]
le chemin le plus
AS_PATH = [A,B,C]
court
AS_PATH = [A,B,D,C]
AS E
47
Explications (diapo 47)
Sinon il pourra propager l'annonce à ses voisins, si sa politique de
routage lui permet.

48
LOCAL_PREF
 Métrique
 Permet de
AS A AS B favoriser une
route de sortie
de l'AS
LOCAL_PRE
 La plus grande
F=10
LOCAL_PRE
LOCAL_PREF= valeur est
AS_PATH=[C] 100
F=20
AS_PATH=[C] préférée
AS_PATH=[C]

AS C

49
Explications (diapo 49)
Dans un AS, lorsque plusieurs routeurs peuvent faire sortir le trafics,
l'attribut LOCAL_PREF permet à l'administrateur d'indiquer sa route de
sortie préférée.
Chaque AS, choisit sa route de façon indépendante. Un administrateur
ne peut imposer ses choix eux autres systèmes autonomes.

50
MULTI_EXIT_DISCRIMINATOR (MED)

 Discrimine les
entrées
AS A AS B
 Métrique
 La plus petite
valeur est
MED =10
préférée
AS_PATH=[C]
MED =20
MED =50  Peut être propagé
AS_PATH=[C]
AS_PATH=[C] au sein d'un AS
mais pas vers un
AS C AS extérieur

51
Explications (diapo 52)
Lorsque plusieurs routes permettent de faire entrer du trafics dans un
AS, BGP offre, cependant un moyen de recommander une route plutôt
qu'une autre à un AS voisin grâce à l'attribut MED.

52
Exemple: Algorithme de Cisco
(simplifié)
Préférer le chemin:
 avec le plus grand poids (WEIGHT) (Specific to CISCO)
 Avec le plus grand LOCAL_PREF,
 Local avant l'annonce transmise par un réseau,
 Avec le plus petit AS_PATH,
 Avec le plus petit attribut Origin (IGP < BGP < INCOMPLETE);
 Avec le plus petit multi-exit discriminator (MED),
 Transmis par eBGP plutôt que par iBGP,
 La plus petite métrique IGP pour le routeur désigné par l'attribut next
hop de BGP,
 Celui qui été annoncé le premier (le plus vieux), si les deux chemins
sont externes,
 la route qui provient du routeur BGP ayant le plus petit identifiant,
 Le chemin qui vient du voisin ayant la plus petite adresse IP. 53
Prise en compte d'une
annonce

Annonce BGP
de α

IBGP

Table de
routage
54
Prise en compte d'une
annonce
Annonce Annonce
de α de α
Annonce BGP
Annonce
de α de α

IBGP

Table de
routage
55
Prise en compte d'une
annonce
Annonce
de α

Annonce Annonce
de α de α

Annonce BGP
de α Annonce
de α

IBGP

Table de
routage
56
Prise en compte d'une
annonce

BGP

Annonce Annonce
Annonce de α de α IBGP
de α Annonce
de α

Table de
routage
57
Prise en compte d'une
annonce

BGP

α α
α α IBGP
α α

Table de
routage
58
Prise en compte d'une
annonce

BGP

α α
α α IBGP
α α

Table de
routage
59
Prise en compte d'une
annonce

BGP

IBGP

α α
α α Table de
α α routage
60
Prise en compte d'une
annonce

BGP

IBGP

α α
α α Table de
α α routage
61
Explications (diapo 54 à 61)
une fois qu'une nouvelle annonce a été retenue, le routeur des
bordures du AS, va la répercuter à tous les routeurs des bordures qui
participent à BGP au sein du SA, grâce à leurs liaisons BGP internes
et éventuellement à ses AS voisin, grâce à ses liaisons BGP externes.

Il va également injecter cette route dans le protocole de routage interne


afin de l'intégrer au table de routage.

62
BGP: type de messages

Message Type Raison

Open (ouverture) 1 Se connecter à un voisin (acquisition)

 Acquitter un message Open


Keepalive (sonde) 4  Garder le contacte avec le voisin

 Envoyer des infos sur une route


Update (mise à jour) 2  Lister des routes à éliminer

Notifier de la détection d’une erreur


Notification 3 (et fermer la connexion)
63
Explications (diapo 63)
Pour permettre ces échanges, BGP met en œuvre plusieurs types des
messages, un message d‘ouverture de connexion BGP. Rappelez-vous que les
routeurs qui échangent les informations par BGP, sont explicitement
paramétrés par l'administrateur ds systèmes autonomes.
L'ouverture de la connexion fait suite à une décision administrative, d'établir
une collaboration entre deux systèmes autonomes .Les désignations mettant
en œuvre cette coopérations est faite par les administrateurs des systèmes
autonomes.
Cette ouverture de connexion est acquittée par les messages ''Keeplive''. Le
message de ‘’Keepalive‘’est envoyé périodiquement pour garder les contacts
avec les autres nœuds BGP.
Le message ''Update'' permet d'envoyer des informations des informations sur
une route ou d'indiquer la liste de routes à effacer.
Enfin, le message de notifications, peuvent être utilisés en cas d'erreurs avant
de fermer la connexion.
64
Echanges des messages
Voisin A
Voisin B

TCP open
TCP ok
TCP ack Ouverture de la connexion TCP

BGP open
Ouverture de la session BGP
BGP open
Keepalive Phase finale de l’ouverture de la
Keepalive session
Keepalive
Echanges périodique pour maintenir
Keepalive l'adjacence

BGP update
BGP update Echanges de mises à jour de routes

65
Explications (diapo 65)
résumons les phases du protocole:
Lors de la première phase, la phase d'acquisition des voisins, un
routeur qui veut échanger des informations, envoie une demande
d‘ouverture de connexion, grâce au message ''open''.
Si l'autre routeur accepte la requête, il envoie un message ''Keeplive''.
Pendant la durée de la connexion, le routeur doit garder conatcte avec
ses voisins; pour cela il envoie un message Keeplive de façon
périodique.
Dans la phase de mise à jour des connectivité avec d'autres réseaux,
chaque routeur a une base des données de réseau, qu'il peut atteindre
les routes préférées de ces réseaux.
Si la Base des données change, on envoie ce changement à l'aide d'un
message ''update''.
66
Résumé
Lors de cette présentation, nous avons abordé le protocole BGP.
Contrairement aux protocoles de routage internes, le but n'est pas
d'échanger le plus d'informations possibles, pour améliorer la
connectivité.
Il faut filtrer les informations à diffuser et mettre en œuvre les
informations explicitement, des relations de voisinages qui respectent
les politiques de routages, et donc les accords entre les systèmes
autonomes.
BGP a pour rôle de propager des annonces de réseaux tout en limitant
la taille de table de routage, pour cela il garde une seule route pour
toutes les destinations connues. Le choix de la route à garder est fait
grâce à l'algorithme de sélection de routes BGP. Nous avons vu les
grands principes de BGP. Pour aller plus loins sur l‘étude de ce
protocole, nous vous invitons à consulter les références proposées
dans les notes du cours ainsi que les standards de l'IETEF. 67

Vous aimerez peut-être aussi