centralweb - 1998f. playe1 tcp/ip - le routage dynamique ce cours est la propriété de la société...
TRANSCRIPT
CentralWeb - 1998 F. Playe 1
TCP/IP - Le routage dynamiqueTCP/IP - Le routage dynamique
Ce cours est la propriété de la société CentralWeb.Il peut être utilisé et diffusé librement à des fins
non commerciales uniquement.
CentralWeb 56, Boulevard Pereire - 75017 PARISTel : +33 01.46.31.44.88 Fax: +33 01.46.31.49.99
[email protected] / www.centralweb.fr
CentralWeb - 1998 F. Playe 2
Plan INTRODUCTION
Les techniques de routage L’évolution du routage Autonomous Systems Les algorithmes de routage Vector-Distance Link-state EGP RIP OSPF
CentralWeb - 1998 F. Playe 3
Introduction La technologie TCP-IP est de type «bout en bout» en opposition aux
technologies «point à point» (Cf X25), L’acheminement des paquets est réalisé par routage plutôt que par
commutation : IP est dit «sans états» X25/X75 maitiennent des états associés au circuit virtuel (adresse du
prochain relais, nombre de paquets restant à transmettre, contrôle de flux, etc.); si un de ces états est perdu, la communication est rompue.
Les éléments de l’interconnexion ne doivent fournir qu’un service minimum: router du mieux qu’ils peuvent (best efford);
IP over everything les services nécessaires à la communication (Contrôle de flux, gestion
des d’erreurs, congestion, etc.) sont réalisés de bout en bout à un autre niveau (Cf TCP).
CentralWeb - 1998 F. Playe 4
Introduction (suite) Paradoxalement le mode «bout en bout» est le plus robuste que le
mode point à point connecté; si un relais tombe en panne : les voisins du relais IP recalculent les tables de routage, et acheminent les
paquets suivants par une nouvelle route. dans la technologie «point à point», le circuit est rompu et la connexion
avortée. Conséquence : le routage IP doit être dynamiquement adaptatif
==> cohérence des tables de routage en permanence. Afin de limiter la taille des tables de routage et le traitement associé:
Le routage IP est effectué de saut en saut («next hop») depuis la source jusqu’à la destination,
A chaque saut, il y a prise de décision autonome afin de sélectionner la route qui acheminera le datagramme (VS technologies point à point),
A chaque étape, un relais n’a qu’une connaissance partielle du routage Le concept de route par défaut est au cœur du routage IP.
CentralWeb - 1998 F. Playe 5
Les techniques de routage Routage statique
convient uniquement pour des sites de taille modeste généralement le routage est modifié après découverte du problème ne peut gérer les changements de topologie non triviaux.
Routage dynamique indispensable dès que la topologie devient complexe, ==> protocoles de routage dont :
le but est de maintenir des informations associées aux routes de manière cohérente
le rôle n’est pas de router. les protocoles de routage sont de natures différentes selon qu’ils :
traitent des informations de routage à l’intérieur d’un domaine de routage ,
relient plusieurs domaines de routage.
CentralWeb - 1998 F. Playe 6
L’évolution du routage
ARPANETBACKBONE
P1 P2 P3
Réseau local 1
Réseau local 2
Réseau local 3
Core Gateways Pi = route défaut( Rli )
Arpanet : interconnexion de réseaux locaux -> Routage circulaire pour mettre en œuvre le routage par défaut.
R.L 2 vers R.L 1 ==> P2->P3->P1
Inefficacité du routage par défaut
CentralWeb - 1998 F. Playe 7
L’évolution du routage
Le Core System : système centralisé évitant le routage par défaut les passerelles internes au Core system connaissent la route pour atteindre n’importe
quelle station (pas de route par défaut) Les passerelles externes routent par défaut vers le Core. Devient impossible à gérer quand le système est de taille importante
CORE SYSTEM
L7
L1
L3
L5
L6L4
L2 Ln
Passerelles du coreinterconnectées
Passerellesexternes
CentralWeb - 1998 F. Playe 8
L’évolution du routage
La conception de «core» ne convient pas à l’interconnexion de backbones: il y plusieurs choix de routes possibles entre 2 stations
exemples : M1->P1-M4 ou bien M1->P1->P2->P3->M4 il faut maintenir la cohérence entre toutes les machines des 2 backbones les routes par défaut peuvent introduire des boucles
ARPANETBACKBONE
NFSNETBACKBONE
P1 P2 P3
M1
M3
M2
M4
CentralWeb - 1998 F. Playe 9
Autonomous System Les limites imposées par le «Core»
impossibilité de connecter un nombre arbitraire de réseaux, le core ne connaît qu’un seul réseau (local) par passerelle connectée les tables de routage et le trafic associé deviennent gigantesques quasi impossibilité de modifier les algorithmes de routage (base installée)
amenèrent le concept de «Système Autonome» (AS) : Domaine de routage (réseaux + routeurs) sous la responsabilité d’une
autorité unique. Architecture de routage indépendante des autres systèmes autonomes Exemple : réseau R3T2; un réseau de société multinationale, un provider correspond à un découpage de l’Internet. Un AS est identifié par un numéro unique (16 Bits) attibué par le NIC.
A l’origine, les AS étaient connectés sur le noyau ARPANET qui constituait également un AS, aujourd’hui, il existe seulement des AS interconnectés.
CentralWeb - 1998 F. Playe 10
Autonomous System (suite) La connexité d’un AS implique que tous les routeurs de celui-ci soient
interconnectés: 2 réseaux locaux d’une même société nécessitant un autre AS pour communiquer ne peuvent constituer un AS unique.
La connexité implique que les routeurs d’un AS échangent les informations de routage: un routeur dans un AS est dit «internal gateway» le protocole de routage entre «internal gateways» est appelé «Exterior
Gateway Protocol» Exemple : EGP. Le protocole de routage à l’intérieur d’une «interior gateway» est appelé
«Interior gateway Protocol»; Exemple de IGP’s: RIP, OSPF, IGRP. Les IGP’s n’échangent que les tables de routage internes à l’AS, mais
certains routeurs doivent d’autre part, dialoguer avec les «exterior gateways» pour découvrir les réseaux externes à l’AS.
EGP (External Gateway Protocol) a pour fonction l’échange d’information sur la connectivité entre AS’s. Cette information exprime un ensemble de réseaux connectés.
CentralWeb - 1998 F. Playe 11
Autonomous System (suite)
AS 1 AS 2
EGP
IGPs
IGPs
CentralWeb - 1998 F. Playe 12
Les algorithmes de routageDeux classes d’algorithmes existent : les algorithmes Vector-Distance
et les algorithmes Link-State.
Algorithmes Vector-Distance Algorithme de Belman-Ford, calcul de routes distribué. Un routeur diffuse régulièrement à ses voisins les routes qu’il connaît. Une route est composée d’une adresse destination, d’une adresse de
passerelle et d’une métrique indiquant le nombre de sauts nécessaires pour atteindre la destination.
Une passerelle qui reçoit ces informations compare les routes reçues avec ses propres routes connues et met à jour sa propre table de routage :
si une route reçue comprend un plus court chemin (nombre de prochains sauts +1 inférieur),
si une route reçue est inconnue.
CentralWeb - 1998 F. Playe 13
Algorithme Vector-distance
Destination Distance Route Destination Distance
Net1 0 Direct Net1 0
Net2 0 Direct Net4 3
Net4 8 Gate L Net17 6
Net17 5 Gate M Net21 4
Net24 6 Gate J Net24 5
Net30 2 Gate K Net30 10
Net42 4 Gate J Net42 3
Mise à jour des entrées dans la table de routage
Table actuelle informations reçues
CentralWeb - 1998 F. Playe 14
Vector-Distance : contruction des tables
A B C
D E
1 2
6 5
3
A L 0
4
B L 0
D L 0 E L 0
C L 0
A L 0
A
L
0
A 1 1
A 3 1
B L 0A 1 1
D L 0A 3 1
B L 0A 1 1
B L 0A 1 1
D L 0A 3 1
B 2 1A 2 2
D 6 1A 6 2B 4 1
D 3 1B 1 1
C L 0B 2 1A 2 2
C L 0B 2 1A 2 2
E L 0D 6 1A 6 2B 4 1
E L 0D 6 1A 6 2B 4 1
E L 0D 6 1A 6 2B 4 1 C 5 1
C 2 1
E 5 1D 5 2
E 4 1D 4 2
E 6 1A 1 1B 6 2
CentralWeb - 1998 F. Playe 15
A B C
D E
1 2
6 5
3
A L 0
4
B L 0
D L 0 E L 0
C L 0A 1 1
A 3 1
B 2 1A 2 2
D 6 1A 6 2B 4 1
D 3 1B 1 1
C 5 1
C 2 1
E 5 1D 5 2
E 4 1D 4 2
E 6 1A 1 1B 6 2
B L 0A 1 1C 2 1
E 4 1D 4 2
B L 0A 1 1C 2 1
E 4 1D 4 2
B L 0A 1 1C 2 1
E 4 1D 4 2
C 1 2E 1 2
E L 0D 6 1A 6 2B 4 1C 5 1
A L 0
D 3 1B 1 1
C 1 2E 1 2
C
ED
E L 0D 6 1A 6 2B 4 1C 5 1
C
ED
E L 0D 6 1A 6 2B 4 1C 5 1
C 6 2
Vector-Distance : la convergence
Convergence !
CentralWeb - 1998 F. Playe 16
A B C
D E
1 2
6 5
3
A L 0
4
B L 0
D L 0 E L 0
C L 0A 1
A 3 1
B 2A 2
D 6 1A 6 2B 4 1
D 3 1B 1
C 5 1
C 2 1
E 5 1D 5 2
E 4 1D 4 2
E 6 1A 1 1B 6 2
C 1E 1
C 6 2
Vector-Distance : la rupture
inf
infinf
inf 12
B L 0A 1C 2 1
E 4 1D 4 2
inf A 2 inf
E L 0D 6 1A 6 2B 4 1C 5 1
E L 0D 6 1A 6 2B 4 1C 5 1
E L 0D 6 1A 6 2B 4 1C 5 1
A 4 3A 5 3
D L 0A 3 1E 6 1A 1 1B 6 2C 6 2
B
CE
33
3 3
32
Reconstruction terminée
CentralWeb - 1998 F. Playe 17
coût liaison 5 = 10
A B C
D E
1 2
6 5
3
A L 0
4
B L 0
D L 0 E L 0
C L 0A 1 1
A 3 1
B 2 1A 2 inf
D 6 1A 6 2B 4 1
D 3 1B 1 1
C 4 2
C 2 1
E 2 infD 2 inf
E 4 1D 4 2
E 6 1A 1 1B 6 2
C 1 2E 1 2
C 3 3
Vector-Distance : L’effet rebond
C 2 infB 2 inf
C 1 2
C 1 2
C 2C 2C 1 3
C 1 3
C 1 3
C 1 2C 1 4
C 4 4
Vers C : Rebond entre A et B jusqu’au TTL
C L 0sans effet
C 4 4
C 4 2C 1 4
C 4 2C 1 4
C 3 5
C 1 5
C 1 5
C 1 5
C 1 6
C 4 6
Et le temps passajusqu’à ... 12
C 1 12C 1 11
C 3 12 C 4 11
C L 0
CC 5 10
C 5 10
C 5 10C 5 10
B+A+D+E
E 5 10D 5 11A 5 12B 5 11
C 3 12
C 4 11
C 6 11
C 4 11C 1 12
Convergence !!
CentralWeb - 1998 F. Playe 18
Algorithme V-D : Inconvénients
La taille des informations de routage est proportionnelle au nombre de routeurs du domaine,
Métrique difficilement utilisable : lenteur de convergence, Bouclage, éventuellement à l’infini, Pas de chemins multiples Coût des routes externes arbitraire.
CentralWeb - 1998 F. Playe 19
Algorithme Link State Basés sur la technique Shortest Path First (SPF) :
les passerelles maintiennent une carte complète du réseau et calculent les meilleurs chemins localement en utilisant cette topologie.
les passerelles ne communiquent pas la liste de toutes les destinations connues (cf Vector-Distance),
une passerelle basée sur l’algorithme SPF, teste périodiquement l’état des liens qui la relient à ses routeurs voisins, puis diffuse périodiquement ces états (Link-State) à toutes les autres passerelles du domaine.
Les messages diffusés ne spécifient pas des routes mais simplement l’état (up, down) entre deux passerelles.
Lorsque un message parvient à une passerelle, celle-ci met à jour la carte de liens et recalcule localement pour chaque lien modifié, la nouvelle route selon l’algorithme de Dijkstra shortest path algorithm qui détermine le plus court chemin pour toutes les destinations à partir d’une même source.
CentralWeb - 1998 F. Playe 20
Algorithme Link State: principesA B
D E
1 2
6 5
3 4
C
De à L D
A B 1 1A D 3 1B A 1 1 B C 2 1 B E 4 1 C B 2 1C E 5 1 D A 3 1 D E 6 1 E B 4 1 E C 5 1 E D 6 1
Tous les noeuds ont la même base de donnée==> pas de boucle.
Paquet de A vers C ==> calcule le + court chemin et sélectionne B, qui calcule à son tour le + court chemin vers C.
CentralWeb - 1998 F. Playe 21
A B
D E
1 2
6 5
3 4
C
Algorithme Link State: la rupture
Etat A-B down : inondation sur tous les interfaces sauf l’interface émetteur.
A B inf
B A inf
B A inf
A B inf
B A inf
Lorsqu’un message correspond à un étatdéja connu, le message n’est pas retransmis==> fin de l’inondation
B A infB A inf
A B inf
A B inf
B A inf
A B inf
De à L D
A B 1 infA D 3 1B A 1 inf B C 2 1 B E 4 1 C B 2 1C E 5 1 D A 3 1 D E 6 1 E B 4 1 E C 5 1 E D 6 1
CentralWeb - 1998 F. Playe 22
Algorithme Link State: incohérencesA B
D E
1 2
6 5
3 4
C
D E inf
E D inf
E D inf
E D infTables de B, C,E De à L D
A B inf 1A D 3 1B A inf 1 B C 2 1 B E 4 1 C B 2 1C E 5 1 D A 3 1 D E 6 1 E B 4 1 E C 5 1 E D 6 inf
Tables de A et D De à L D
A B inf 1A D 3 1B A inf 1 B C 2 1 B E 4 1 C B 2 1C E 5 1 D A 3 1 D E 6 inf E B 4 1 E C 5 1 E D 6 1
Le calcul SPF corrige les incohérences : A et D noteront que B, C, E sont inaccessibles;B,C,E noteront que A et D sont inaccessibles.
CentralWeb - 1998 F. Playe 23
Algorithme link state Cohérence des bases
les copies de chaque noeud doivent être identiques aux périodes de transition près.
on améliore le processus en protégeant les bases contre les erreurs : procédure d’inondation avec acquittement, transmission des paquets sécurisés, enregistrements de la base protégés par cheksum, enregistrements de la base soumis à temporisation et supprimés si non
rafraîchis à temps. messages pouvant être authentifiés.
Métriques multiples plus haut débit, plus bas délai, plus bas coût, meilleure fiabilité.
CentralWeb - 1998 F. Playe 24
Algorithme Link State (suite) Avantage des algorithmes Link State :
convergence rapide sans boucle, possibilités de chemins multiples, métriques précises et couvrant plusieurs besoins, traitement séparé des routes externes. chaque passerelle calcule ses routes indépendamment des autres. Les messages diffusés sont inchangés d’une passerelle à l’autre et
permettent un contrôle (debug) aisé en cas de dysfonctionnement. les messages ne concernent que les liens directs entre passerelles et ne sont
donc pas proportionnels au nombre de réseaux dans le domaine (VS V-D).
En conclusion, les algorithmes SPF sont mieux adaptés au facteur d’échelle que les algorithmes Vector-Distance.
CentralWeb - 1998 F. Playe 25
EGP : Protocole de routage extérieur EGP (Exterior Gateway Protocol): utilisé pour échanger les
informations de routage relatives au systèmes autonomes. EGP: essentiel dans la connectivité Internet (Core, inter-provider , ...) EGP : RFC827
EGP a trois fonctions principales : support d’un mécanisme d’acquisition permettant à une passerelles de
requérir, auprès d’une autre passerelles, qu’elles échangent leurs informations de routage,
test continu de l’accessibilité des passerelles EGP voisines, échange de messages d’information de routage avec les passerelles EGP
voisines.
CentralWeb - 1998 F. Playe 26
EGP : les messages Acquisition Request : Requête d’acquisition auprès d’une passerelle, Acquisition Confirm : Réponse positive à la requête d’acquisition, Acquisition Refuse : Réponse négative à la requête d’acquisition, Cease Request : Requête de terminaison auprès de la passerelle, Cease Confirm : Réponse positive à la requête de terminaison, Hello : Requête de réponse “alive” I heard you : Réponse à la requête Hello, Poll Request : Requête de mise à jour de routage Routing Update : Information d’accessibilité, Error : réponse à un message incorrect.
CentralWeb - 1998 F. Playe 27
EGP : format des messages
VERSION : version du protocole EGP pour contrôle de cohérence, TYPE : identifie le type de message CODE : sous-type des différents messages STATUS : erreurs propres aux messages CHECKSUM : résultat du calcul de contrôle effectué comme IP Numéro d’AS : numéro de système autonome de passerelle émettrice, SEQUENCE NUMBER : numéro que l’émetteur utilise afin de
synchroniser les messages et les réponses.
0 8 16 24 31
Version Type Code Status
Checksum Numéro d’AS
Numéro de séquence Données ...
CentralWeb - 1998 F. Playe 28
EGP : Messages d’acquisition Avant d’échanger des informations de routage, les routeurs adjacents,
doivent devenir «voisins». Devenir «voisins» ==> procédure d’acquisition (synchronis. bilatérale) La passerelle adressée est spécifiée (configurée) par les organisations
responsables des systèmes autonomes correspondant. En plus de l’en-tête commune, les messages d’acquisitions
comprennent deux champs de 16 bits chacun : HELLO INTERVAL : intervalle de temps à utiliser pour tester
l’accessibilité de la passerelle, POLL INTERVAL : fréquence maximale (N/s) de mise à jour du routage;
Valeur du champs CODE : 0 : Acquisition Request, 1 : Acquisition Confirm, 2 : Acquisition Refuse (exemple: manque de mémoire, interdiction
adm.), 3 : Cease Request (exemple : arrêt en cours) 4 : Cease Confirm.
CentralWeb - 1998 F. Playe 29
EGP : messages d’accessibilité EGP met en oeuvre des mécanismes d’accessibilté des réseaux ==>
échanger les listes de réseaux accessibles via chacun des voisins. La procédure consiste en des interrogations à intervalle régulier de
liste auprés de son voisin. Les messages échangés dans ce processus :
HELLO et I-HEARD-YOU (I-H-U) pour le contrôle d’accessibilité des passerelles voisines,
POLL Request sollicitant des réponses (Routing Update) sur les informations de routage.
Les messages HELLO et I-H-U sont composées uniquement de l’en-tête commune, CODE = 0 pour le message HELLO et 1 pour le message I-H-U.
POLL Request et Routing Update comprennent, en plus de l’en-tête commune, le champ IP SOURCE NETWORK (32 bits) qui spécifie un réseau commun aux deux systèmes autonomes sur lesquelles sont reliées les deux passerelles. (Prefixe IP de classe A, B, C).
CentralWeb - 1998 F. Playe 30
EGP : message d’accessibilité Les réponses (Routing Update ) contiennent des routes dont les
distances sont mesurées par rapport aux passerelles reliées au réseau IP SOURCE NETWORK; les raisons pour lesquelles l’émetteur de l’interrogation, indique l’adresse IP source sont les suivantes :
un routeur EGP peut être connecté à plusieurs interfaces et si l’adresse IP était absente, il ne saurait pas à quel réseau s’adresse la requête
La passerelle souvent rassemble l'ensemble des informations de routage de tout le système autonome : une suite de paires (adresse réseau, passerelle); la passerelle spécifiée pour atteindre le réseau dépend de l'entrée dans le système autonome c'est à dire du champ IP SOURCE NETWORK.
CentralWeb - 1998 F. Playe 31
EGP : messages d’accessibilité
P1 P3 P2
P4
IP Source Network
réseau 1
réseau 4
réseau 3
réseau 2
(P2, réseau 2)(P1, réseau 1)(P3, réseau 3)(P3, réseau 4)
EGP
IGP
CentralWeb - 1998 F. Playe 32
EGP : messages «Routing Update» Une passerelle extérieure émet des requêtes de mise à jour
d'information de routage (routing update),afin d'informer les passerelles voisines appartenant à d'autres systèmes autonomes.
Les messages de mises à jour sont composés de deux types de listes:
une liste interne contenant tout ou une partie des passerelles du système autonome et les réseaux accessibles à travers elles,
une liste externe structurée de la même manière mais identifiant des destinations extérieures au sytème autonome. Seules les passerelles appartenant à l’interconnexion (Core, Provider, BB) peuvent propager ces informations.
CentralWeb - 1998 F. Playe 33
Version Type
Code StatusChecksum Numéro
d’ASNuméro de séquence
Non utiliséRéseau IP Source
Adresse IP du routeur 1 (host id: 1,2,3 octets)# distancesdistance 1 # réseaux
Réseau 1,1,1Réseau 1,1,2
distance 2 # réseauxRéseau 1,2,1
Réseau 1,2,2
. . .
. . .
Adresse IP du routeur n# distancesdistance 1 # réseaux
Réseau n,1,1Réseau n,1,2
distance 2 # réseauxRéseau n,2,1
Réseau n,2,2
. . .. . .
. . .
EGP : Messages «Routing update»
CentralWeb - 1998 F. Playe 34
EGP : annonces des routes EGP peut ne pas annoncer les routes auxquelles il est relié.
AS «X»
AS «Y»
AS Provider
EGPBackdoor
By
Ax
N’annonce pas la route vers Ax
N’annonce pas la route vers By
CentralWeb - 1998 F. Playe 35
EGP : les métriques EGP annonce des métriques comprises entre 0 et 255 (inaccessible) Le mécanisme permet de couvrir les besoins inhérents aux IGPs et les
liaisons multiples entre AS
AS «X» AS «Y»
Liaison PrincipaleMétrique annoncée: Mp
Liaison BackupMétrique annoncée: Mb
Mp < Mb AS «X»
AS «Y»
Liaison BackdoorMétrique annoncée: Mb
Liaison ProviderMétrique annoncée: Mp
Métrique annoncée par le provider généralement assez grande (128) pour laisser fonctionner le backdoor
Mp >Mb ASProvider
CentralWeb - 1998 F. Playe 36
EGP : les contraintes Conçu pour un réseau hierachique de type BackBone (exemple
Arpanet/Nsfnet -> Réseaux régionnaux ->campus). Ajourd’hui le réseau est maillé et des boucles apparaissent Les routes multiples ne sont pas prises en compte
La distance est utlisée uniquement comme évaluation d’accessibilité (car la métrique est propre à un AS vs mesure universelle)
Taille des messages importante ==> fragmentation de datagrammes
Successeur d’EGP : BGP développé fin des années 80 qui permet : des mises à jour incrémentales ( vs tailles des messages), la conversion avec IGP’s des informations de routage (==>cohérence
entre métriques de routeurs interieurs et extérieurs) évite les boucles dans une topologie maillée
CentralWeb - 1998 F. Playe 37
RIP : Routing Information Protocol Protocole intérieur (Cf AS), RFC 1058. Berkeley made (BSD/routed) Conçu à l’origine pour les réseaux locaux, étendu aux réseaux
distants Peu performant, mais le plus employé au monde De type Vector/Distance Deux Version 1.0 et 2.0 Fonctionne au dessus d’UDP/IP ; port 520 (Cf <1024) Si une route n’est pas rafraichie dans les 3 Mns la distance=infini Mode Actif : Routeurs, Mode passif : machines (Historique :
Espionnage d’hôtes passifs dans les réseaux locaux). Les informations de routage sont émises toutes les 30 secondes et
indiquent pour un routeur donné, la liste des réseaux accessibles avec leur distance (next hop).
Les routes diffusées sont les routes propres + les routes acquises
CentralWeb - 1998 F. Playe 38
RIP Format des messages0 8 16 24 31
Commande Version Zéro
ID. Famille d’adresse
Adresse IP Réseau 1
Zéro
Zéro
Zéro
Métrique (Distance vers Réseau 1)
Adresse IP Réseau 2
Zéro
Zéro
Métrique (Distance vers Réseau 2)
. . .
1 : Request2 : Response
Version =1
Structure d’adresse
Socket / unix
Valeur 1 à 16 !
and so on !
CentralWeb - 1998 F. Playe 39
RIP : traitement des messagesVérification des champs du message
Si (entrée n’existe pas dans la table)
{ si (Mm < infini)
{ /* ajouter entrée dans la table */
Ea=Ma; Em=Mm; En=Mn;
Et=f(t); init(Eaj);
}
} sinon /* Entrée existante */
{ si (Em >Mm)
{ Em=Mm; En=Mn; Et=f(t); init(Eaj);
}
sinon si (En=sa) /* émetteur=NH */
{ Em=Mm; Et = f(t); init(Eaj);
}
}
Ea: Adresse destination
Em: Métrique associée
En: Adresse Next hop
Eaj: MAJ récente
Et:Temporisations
Entrée de la table de routage
Ma: Adresse destination
Mm : Métrique associée
Mn : Adresse Next hop
Message reçu
Sa
Algorithme de MAJ de la Base de routage
CentralWeb - 1998 F. Playe 40
RIP : les contraintes RIP 1 : Pas de routage par sous réseaux (masque non transmis) .
RIP 1 annoncent le réseau et non pas le sous-réseau
10.1.0.0(255.255.0.0)
10.2.0.0(255.255.0.0)
10.0.0.0(255.0.0.0)
10.0.0.0(255.0.0.0)
10.2.0.110.2.0.0 unreachable
Solution: liaison point à point dédiée au routage des 2 sous-réseaux
10.2.0.1
CentralWeb - 1998 F. Playe 41
RIP : les contraintes inconvénients des techniques Vector-Distance :
taille des informations de routage (proportionnelle au nombre de routeurs) Métrique difficilement utilisable, limitée à 16, pas de cohérence entre
domaine de routage (pas d’universalité entre AS), Bouclage, éventuellement à l’infini, Pas de chemins multiples
Amélioration apportée par RIP Version 2 Gestion de sous-réseaux et super-réseaux (Cf CIDR) utilisation de Multicast IP (224.0.0.9) au lieu de Broadcast IP Suppression de pics de transmission de messages : supprimer les
synchronisations involontaires des émissions de messages : introduction de gestion aléatoire du déclenchement des émissions (14 à 45 secondes).
Problèmes residuels importants Boucles, Métriques non appropriées aux réseaux modernes (Cf commerciaux ) Pas de chemins multiples
CentralWeb - 1998 F. Playe 42
OSPF : Open Shortest Path First Protocole link state (RFC 1247) destiné à remplacer les protocoles
intérieurs propriétaires et RIP. OSPF utilise la fonctionnalité “type de service” offerte par IP
permet d’installer plusieurs routes pour une même destination, selon des critères différents (ex : délai court, débit important). si plusieurs routes vers une même destination sont de coût équivalents,
OSPF répartit la charge équitablement parmi ces routes.
OSPF supporte l’adressage en sous-réseaux (subnets); Découpe d’un système autonome en aréas
isolement des informations de routage à l’intérieur de ces aréas ==> limitation des informations de routage dans le système autonome .
Des liens virtuels peuvent être établis dans la topologie de l’AS afin de cacher les connexions physiques d’une partie du réseau.
Les liens extérieurs avec d’autres systèmes autonomes (via EGP par exemple) sont pris en compte.
Echanges entre routeurs authentifiés ==> l’intégrité des messages.
CentralWeb - 1998 F. Playe 43
OSPF : les concepts, areas Le problème : dans les sytèmes de routage, si le réseau est trop grand
overhead du traffic dans le réseau, calculs trop longs, dimensionnement mémoire trop grand
La solution : routage hiérachique découpage du réseau en parties indépendantes (Areas) reliées par un BackBone (Area BackBone)
La fonctionnalité chaque area constitue un réseau indépendant
la table des liaisons ne contient de les liaisons de l’Area, le protocole d’inondation s’arrête aux frontières de l’Area, les routeurs ne calculent que des routes internes à l’Area
certains routeurs (area border routers) appartiennent à plusieurs Areas (en général une Area inférieure et une Area BB) et transmettent les informations récapitulatives des Areas qu’ils relient.
CentralWeb - 1998 F. Playe 44
OSPF: Concepts: Areas
A1 AB1
A2 AB4
a1
a2
b3
a3
BC1
BC3
b5
c1
c2
c3
C2
C4b4
BB0 BB2
b2 b6
b1
Area A Area C
BB
Routeurs externes
Routeurs inter-areas
AS
CentralWeb - 1998 F. Playe 45
OSPF, concepts : le routeur désigné Le problème: Sur un réseau où il y N
routeurs il y a N*(N-1)/2 adjacences. Chaque routeur doit annoncer N-1 liaisons
vers les autres routeurs Chaque routeur doit annoncer ses routes
vers un «réseau terminal» (Cf sous-réseaux). soit N² annonces (problème du carré de N)
A B
C D
N(N-1)/2 adjacences
La solution: Un routeur est désigné plus «égal que les autres» Les autres routeurs établissent une
adjacence avec ce routeur uniquement Le routeur désigné annonce vers le réseau
terminal soit N annonces
A B
C D
A est le routeur désigné
CentralWeb - 1998 F. Playe 46
OSPF, Fonctionnement Chaque routeur du système autonome où d’une area construit sa
propre base d’information décrivant la topologie de l’AS complet ou bien de l’area.
Au départ les routeurs utilisent des message "Hello" pour découvrir leurs voisins; une "adjacence" est formée lorsque deux routeurs communiquent pour échanger des informations de routage.
L’information élémentaire échangée entre routeurs décrit l’état (link state) des adjacences; cette information est fournie par un routeur donné puis propagée dans l'area ou l’AS.
A partir de sa base d’information (collection d’états des routeurs), chaque routeur construit un arbre du plus court chemin (SPF tree) dont il est la racine.
Cet arbre indique toutes les routes pour toutes les destinations du système autonome, plus les destinations extérieures.
CentralWeb - 1998 F. Playe 47
OSPF, la Base topologique La base d’information topologique d’un système autonome décrit un
graphe orienté. Les noeuds du graphe sont des routeurs ou bien des réseaux tandis que les liens représentent les connexions physiques.
Les réseaux sont dits de transit si plusieurs routeurs y sont connectés ou terminaux dans le cas contraire.
A chaque réseau est associé une adresse IP et un masque réseau. Une machine seule (host) est considérée comme un réseau terminal
avec un masque égal à 0xFFFFFFFF.
CentralWeb - 1998 F. Playe 48
RT1
RT2
N3
N1
N2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
7
68
131
1
N4
N9
1
H1
slip
10RT12
N10
2
RT9
N11
1
RT11 N8
1 2N6
1
RT8
RT7
1
N7
4
RT103 1
N12
N16
5lb
7
la
6
6AS border Router
2
9
OSPF : exemple
2
3
3
CentralWeb - 1998 F. Playe 49
RT1
RT2
N3
N1
N2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
7
68
131
3
N4
N9
1
H110
RT12N10
2
RT9
N11
1
RT11 N8
12
N6
1
RT8
RT7
1
N7
4
RT103
1
N12
N16
5
7
6
6
* *
*
*
*1
*
* *
**2
3*
*
** *
* * * *
*
*
*
*1
2
9
6
*7
6
annonces réseau
OSPF: Le graphe orienté
annonces routeur
CentralWeb - 1998 F. Playe 50
RT1
RT2
N3
N1
N2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
76
8
13
1
3
N4
N9
1
H110RT12
N10
2
RT9
N11
1
RT11 N8
12
N6
1
RT8
RT7
N74
RT103
1
N12
N16
5
7
6
1
62
3
8
1
7
88
5
1
6
2
1
11
1
1
2
9
OSPF : Le plus court chemin
CentralWeb - 1998 F. Playe 51
RT1
RT2
N3N1
N2
RT4RT5
RT3
N12 N13 N148 8 8
RT6
6
3
3
N4
N9
H110
RT12
N10
2
RT9
N11
RT11
N8
1
N6
RT8
RT7
4
RT10
3
1 N12
N157
1
62
3
2
9
7
La table de routage de R6
Dest. Next hop Distance
N1 RT3 10N2 RT3 10N3 RT3 7N4 RT3 8N6 RT10 8N7 RT10 12N8 RT10 10N9 RT10 11N10 RT10 13N11 RT10 14H1 RT10 21RT5 RT5 6RT7 RT10 8N12 RT10 10N13 RT5 14N14 RT5 14N15 RT10 17
N7
CentralWeb - 1998 F. Playe 52
Area 1
Area 2
RT1
RT2
N3
N1
N2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
7
68
131
1
N4
N9
1
H110
RT12
N10 2
RT9N11 1
RT11 N8
1 2N6
1
RT8
RT7
1
N7
4
RT103 1
N12
N16
5lb
7
la
6
6AS border Router
2
9OSPF : Configuration en areas
2
3
3 Area 3
internes
Area border
AS border
CentralWeb - 1998 F. Playe 53
Area 1
RT1
RT2
N3
N1
N2
RT4
RT3
131
1
N4
OSPF : Annonces de l’area 1 vers le BackBone
2
3
N1 4
N2 4
N3 1
N4 3
N1 4
N2 4
N3 1
N4 2
1
CentralWeb - 1998 F. Playe 54
Area 2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
7
6
N9
1
H110
RT12
N10 2
RT9N11 1
RT11 N8
1 2N6
1
RT8
RT7
1
N7
4
RT103 1
N12
N16
5
7
6
6
2
9
OSPF : les annonces du Backbone vers l’area 1
3 Area 3
8
14
15 11918
26 =min (N9, N10, N11) par RT5>RT6->RT10
1
14
20
16
20
1819
Destinations annoncées dans l’area 1 par RT3, RT4Dest RT3 RT4
N6 16 15N7 20 19N8 18 18N9-11,H1 19 26
RT5 14 8RT7 20 14
8
CentralWeb - 1998 F. Playe 55
Area 2
RT4 RT5
RT3
N12 N13 N14
88
8 8 8
RT6
7
6
N9
1
H110
RT12
N10 2
RT9N11 1
RT11 N8
1 2N6
1
RT8
RT7
1
N7
4
RT103 1
N12
N16
5
7
6
6
2
9
OSPF : les annonces du Backbone vers l’area 1
3 Area 3
8
14
15 11918
26 =min (N9, N10, N11) par RT5>RT6->RT10
1
14
20
16
20
1819
Distances Backbonecalculées par RT3, RT4vers depuis depuisABR RT3 RT4
86
RT3 * 21RT4 22 *RT7 20 14RT10 15 22RT11 18 25R6 8 15R5 14 8R7 20 14
CentralWeb - 1998 F. Playe 56
OSPF : La base de données Les états des liaisons sont enregistrés selon 5 types :
routeur, réseau, récapitulation de réseau IP, récapitulation de réseau externe, externe
L’identifiant de la liaison est choisi par le routeur annonçant Format d’un enregistrement :
Age de l’EL options Type d’EL
Identifieur d’état de liaison
Routeur annonçant (IP)
No de séquence d’EL
Checksum d’El longueur
. . .Depend du type d’enregistrement
à la IP
sur 32 bits, identifie l’antériorité
valeur TOS
Adresse IP généralement
CentralWeb - 1998 F. Playe 57
OSPF : La base de données Les liaisons de routeurs (type EL = 1)
récapitulent les liaisons attachées à ce routeur concernent soit un routeur inter-area, soit un point d’accès externe type de la liaison :
point à point vers un autre routeur reliant le routeur vers un réseau de transit reliant le routeur à un réseau terminal
E B 0 nombre de liaisons
Identifieur de liaison
Données de liaison
TOS defaut métrique, TOS défaut# TOS
TOS 1 métrique, TOS=10
TOS n métrique, TOS=n0
. . .
Routeur inter area ou externe
LIAISON point à point vers un autre routeur
Identifieur OSPFAdresse IP de l’interface routeur
LIAISON routeur ->réseau de transit
Adresse IP du routeur désignéAdresse IP de l’interface locale
LIAISON routeur ->réseau terminal
Adresse IP du réseau ou sous-réseauMasque réseau ou sous réseau
CentralWeb - 1998 F. Playe 58
OSPF : La base de données Les liaisons de réseau (type EL = 2)
annoncées par les routeurs désignés sur les réseaux de transit L’Identifieur de liaison correspond à l’adresse IP du routeur désigné vers
ce réseau
Masque de réseau ou sous-réseau
Routeur connecté
Routeur connecté
. . .
Routeur connecté
CentralWeb - 1998 F. Playe 59
OSPF : La base de données Les liaisons récapitulatives de réseaux IP (type EL=3)
annoncées par les routeurs inter-area un message par annonce (pas de groupage) Identifieur de liaison = adresse IP de réseau ou sous-réseau
TOS defaut métrique, TOS défaut0
TOS 1 métrique, TOS=10
TOS n métrique, TOS=n0
. . .
Masque de sous - réseau
CentralWeb - 1998 F. Playe 60
OSPF : La base de données Les liaisons récapitulatives de routeurs externes (type EL=4)
annoncées par les routeurs externes un message par annonce (pas de groupage) Identifieur de liaison = adresse IP du routeur externe
TOS defaut métrique, TOS défaut0
TOS 1 métrique, TOS=10
TOS n métrique, TOS=n0
. . .
Masque = FFFFFFFF
CentralWeb - 1998 F. Playe 61
OSPF : La base de données Les liaisons externes (type EL=5)
annoncées par les routeurs externes (Cf EGP, BGP) un message par annonce (pas de groupage) Identifieur de liaison = adresse IP du réseau ou sous-réseau destinataire
E, TOS defaut métrique, TOS défaut0
E, TOS 1 métrique, TOS=10
E, TOS n métrique, TOS=n0
. . .
Masque de réseau ou sous-réseau
Identifiant de route externe (defaut)
Identifiant de route externe (1)
Identifiant de route externe (n)
E=extern
CentralWeb - 1998 F. Playe 62
OSPF : Le calcul des routes La base de données permet de calculer les tables de routages Le calcul est effectué après tout changement de topologie Selon l’algorithme «link state» qui détermine
les chemins les plus courts les chemins aussi courts
OSPF transmet la table de routage à IP en transcodant les valeurs de TOS selon la RFC 1349
CentralWeb - 1998 F. Playe 63
OSPF : les sous-protocoles Le protocole Hello
vérifie que les liaisons sont opérationnelles permet l’élection du routeur désigné ainsi que le routeur back-up établit une connexion bilatérale entre 2 routeurs
En-tête OSPF : hello
Masque de reseau ou sous-réseau
Intervalle Hello Options Priorité
Intervalle de Mort (tempo.)
Routeur désigné (IP)
Back-up (IP)
Voisin
Voisin
. . .
Intervalle entrepaquets
O si processusnon terminé
O si processusnon terminé
bit T : routeur gérant le TOS BIT E : émet ou reçoit des routes externes
permet la sélection du «désigné» et «backup»
CentralWeb - 1998 F. Playe 64
OSPF : les sous-protocoles Le protocole d’échange
consiste en l’échange des tables «link state» entre 2 routeurs activé si la connexion bilatérale a réussit se situe entre routeur désigné et les autres routeurs sur les liaisons
réseaux et entre backup et autres routeurs initie les premiers échanges suppléé ensuite par le protocole d’inondation Fonctionne en Maitre/Esclave Echanges avec acquittements
options
Type d’EL
Identifieur d’état de liaison
Routeur annonçant (IP)
No de séquence d’EL
Checksum d’El age d’EL
. . .
0 0
En tete OSPF Type = 2
No Seq dans la base
Informations de synchronisation de protocole
CentralWeb - 1998 F. Playe 65
OSPF : les sous-protocoles Le protocole d’inondation
Activé lorsque l’etat d’une liaison change et que cet état était préalablement enregistré.
Peut aussi être activé sur demande d’état apres connexion bilatérale protocole avec acquittement Pour chaque annonce
si nouvelle valeur : l’annonce est réémises sur tous les interfaces
Acquittement vers l’émetteur
initial
Type d’EL
Identifieur d’état de liaison
Routeur annonçant (IP)
No de séquence d’EL
Checksum d’El age d’EL
. . .
En tete OSPF Type = 4
Nombre d’annonce1
CentralWeb - 1998 F. Playe 66
LS age = 0 ; valeur à l'init
LS type = 1 ; signifie router link
LS ID = 192.1.1.3 ; Router ID de RT3
Advertising router = 192.1.1.3 ; annonceur
bit E = 0 ; pas un ASBR
bit B = 1 ; RT3 = ABR
#links=2
link ID = 192.1.1.4 ; adr. IP du Des. Rout. RT4
Link Data = 192.1.1.3 ; RT3 interface
Type = 2 ; connecté a un réseau transit
metric = 1 ; coût
link ID = 192.1.4.0 ; adresse IP du réseau N4
Link Data = 0Xffffff00 ; masque du réseau
Type = 3 ; connecté a un réseau term.
metric = 2 ; coût
RT1RT2
N3
N1
N2
RT4
RT3 RT68
1
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
618.10.0.6
1
Annonces de RT3 vers le BB
CentralWeb - 1998 F. Playe 67
LS age = 0 ; valeur à l'init
LS type = 1 ; signifie router link
LS ID = 192.1.1.3 ; Router ID de RT3
Advertising router = 192.1.1.3 ; annonceur
bit E = 0 ; pas un ASBR
bit B = 1 ; RT3 = ABR
#links=1
link ID = 18.10.0.6 ; adr. IP du voisin RT6
Link Data = 0.0.0.0 ; interface SL
Type = 1 ; connecté a un routeur
metric = 8 ; coût
RT1RT2
N3
N1
N2
RT4
RT3 RT68
1
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
6
118.10.0.6
Annonces de RT3 vers Area 1
CentralWeb - 1998 F. Playe 68
LS age = 0 ; valeur à l'init
LS type = 4 ; sign. summary link to ASBR
LS ID = w.x.y.z ; Router ID de RT7
Advertising router = 192.1.1.4 ; annonceur
metric = 14 ; coût
RT1RT2
N3
N1
N2
RT4
RT3 RT68
1
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
6
118.10.0.6
Annonces de RT4 vers area1pour l’ASBR RT7
CentralWeb - 1998 F. Playe 69
LS age = 0 ; valeur à l'init
LS type = 2 ; signifie network link
LS ID = 192.1.1.4 ; Router ID de RT4
Advertising router = 192.1.1.4 ; annonceur
Network mask = 0Xffffff00 ; masque réseau
Attached Router = 191.1.1.4; Routeur RT4
Attached Router = 191.1.1.1; Routeur RT1
Attached Router = 191.1.1.2; Routeur RT2
Attached Router = 191.1.1.3; Routeur RT3
RT1RT2
N3
N1
N2
RT4
RT3 RT68
1
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
618.10.0.6
1
Annonces de RT4 (DR) pour N3
un network link par l’intermediaire du DR annonce tous les routeurs attachés à ce réseau
CentralWeb - 1998 F. Playe 70
LS age = 0 ; valeur à l'init
LS type = 4 ; sign. summary link to ASBR
LS ID = w.x.y.z ; Router ID de RT7
Advertising router = 192.1.1.4 ; annonceur
metric = 14 ; coût
RT1RT2
N3
N1
N2
RT4
RT3 RT68
1
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
6
118.10.0.6
Annonces synthèses de RT4 vers area1 pour l’ASBR RT7
CentralWeb - 1998 F. Playe 71
LS age = 0 ; valeur à l'init
LS type = 3 ; sign. summary link to Net
LS ID = 192.1.2.0 ; Adr. IP de N1
Advertising router=192.1.1.4 ; annonceur
metric = 4 ; coût
RT1RT2
N3
N1
N2
RT4
RT3 RT68
3
1
N4
72
3
11
192.1.4
192.1.2.
192.1.3
192.1.1
192.1.3.
6
118.10.0.6
Annonces (syntèses) de RT4 vers le BB pour le réseau N1