Protocoles de routage

71
ARS 00/01 1 Protocoles de routage • Création : – 1993 : Jean Luc Archimbaud (UREC) • Modifications – 1995, 1998 Bernard Tuy (UREC) – 2000-2001 : Christian Hascoët (CCR)

description

Protocoles de routage. Création : 1993 : Jean Luc Archimbaud (UREC) Modifications 1995, 1998 Bernard Tuy (UREC) 2000-2001 : Christian Hascoët (CCR). Plan. Introduction Domaine de routage (système autonome) Protocoles de routage Intra domaine, Distant Vector, Link State, DUAL - PowerPoint PPT Presentation

Transcript of Protocoles de routage

Page 1: Protocoles de routage

ARS 00/01 1

Protocoles de routage

• Création :– 1993 : Jean Luc Archimbaud (UREC)

• Modifications– 1995, 1998 Bernard Tuy (UREC)– 2000-2001 : Christian Hascoët (CCR)

Page 2: Protocoles de routage

ARS 00/01 2

Plan

• Introduction

• Domaine de routage (système autonome)

• Protocoles de routage– Intra domaine,

• Distant Vector, Link State, DUAL

– Inter domaine• EGP, BGP

Page 3: Protocoles de routage

ARS 00/01 3

Routage dynamique : Introduction (1)• TCP-IP : technologie de type bout en bout en opposition au

point à point comme X25• Acheminement des paquets réalisé par routage plutôt que par

commutation :– IP fait au mieux (sans état)

– X25 maintient des états associés au circuit virtuel • Adresse du prochain routeur, nombre de paquets restant à transmettre, contrôle de

flux, … : un état perdu => communication rompue.

• Gestion de la communication (contrôle de flux, corrections des d’erreurs, etc.) sont réalisés de bout en bout à un autre niveau par TCP (ICMP).

Page 4: Protocoles de routage

ARS 00/01 4

Routage dynamique : Introduction (2)

• Mode bout en bout par sa flexibilité est + robuste que le mode point à point– Si un routeur tombe en panne, ses voisins :

• Recalculent leur table de routage,

• Acheminent si possible les paquets restant à transmettre par une nouvelle route,

• Comparable à l'acheminement d'une lettre par la poste.

– En mode point à point :• circuit rompu => connexion perdue.

Page 5: Protocoles de routage

ARS 00/01 5

Routage dynamique : Introduction (3)• Routage IP est dynamiquement adaptatif

– Cohérence permanente des tables de routage,– Cherche aussi à limiter la taille des tables de routage (agrégation)

pour réduire les temps de traitement associé:– Routage IP effectué de saut en saut (next hop) depuis la source

jusqu’à la destination,– A chaque saut :

• Prise de décision autonome : sélection de la route à prendre,• Connaissance partielle du routage • Concept de route par défaut est au cœur du routage IP.

Page 6: Protocoles de routage

ARS 00/01 6

Routage dynamique : Introduction (4)

• Routage dynamique :– Rapidement obligatoire : fonction taille du réseau – Utilisation de protocole(s) de routage– But : maintenir la cohérence des informations associées

aux routes– Protocoles de routage de natures différentes si ils :

• Traitent le routage à l’intérieur d’un domaine de routage,

• Traitent le routage de plusieurs domaines de routage.

Page 7: Protocoles de routage

ARS 00/01 7

Domaine de routage : Système Autonome (1)

• Concept d'AS : Autonomous System– Découpage de l’Internet entre AS interconnectés – Domaine sous la responsabilité d’une autorité unique.

• Diminution table de routage

– Architecture indépendante des autres systèmes autonomes• Exemples : fournisseur d'accès, réseau de multinationale ...

– AS : numéro unique (2octets) attribué par RIPE, ARIN...• ftp://ftp.isi.edu/in-notes/iana/assignments/as-numbers.

– Appartenance : 1307 Jussieu, 2200 FT 1717 Renater

Page 8: Protocoles de routage

ARS 00/01 8

Domaine de routage : Système Autonome (2)

• RIPE : Réseaux IP Européens• ARPNIC : Asia Pacific Network Information Center• ARIN : American Registery for Internet Number

– USA et reste du monde

• Interrogation des bases de données (RFC 854) whois :• whois -h whois.ripe.net 134.157.0.0

• whois -h whois.ripe.net jussieu.fr

• whois -h whois.ripe.net hascoet

• http://www.ripe.net/cgi-bin/whois

• whois -h rs.internic.net (.com, .net, .org, .edu)

Page 9: Protocoles de routage

ARS 00/01 9

Domaine de routage : Système Autonome (3)Domain : jussieu.fr

Descr : Université Pierre et Marie Curie

Descr : Centre de Calcul Recherche, T55/65,

Descr : 4, place Jussieu F75252 Paris Cedex 05

admin-c : JG412-RIPE

tech-c : Christian Hascoet

tech-c : Jacky Thibault

Nserver : shiva.jussieu.fr

Nserver : cendrillon.lptl.jussieu.fr

Nserver : soleil.uvsq.fr

Dom-net : 134.157.0.0

Mnt-by : FR-NIC-MNT

Changed : [email protected] 19970219

Source : RIPE

Route : 134.157.0.0/16

Descr : RENATER

Descr : Université Pierre et Marie Curie

Descr : 4 place Jussieu 75252 PARIS Cedex 5

Desc r : FRANCE

Origin : AS 2200

Mnt-by : RENATER-MNT

Changed : [email protected] 19991008

Source : RIPE

whois -h whois.ripe.net 134.157.0.0

whois -h whois.ripe.net jussieu.fr

Page 10: Protocoles de routage

ARS 00/01 10

Traversée de systèmes autonomes (1)• r-jusren# traceroute ftp.univ-lyon1.fr1 r-rerif.reseau.jussieu.fr (134.157.255.1) [AS 1307] 0 ms

2 stlambert1.rerif.ft.net (193.48.53.197) [AS 2200] 0 ms

3 stamand1.rerif.ft.net (193.48.53.101) [AS 2200] 4 ms

4 nio-i.cssi.renater.fr (193.51.206.145) [AS 1717] 4 ms

5 nio-n2.cssi.renater.fr (193.51.206.13) [AS 1717] 5 ms

6 lyon.cssi.renater.fr (195.220.98.6) [AS 1717] 8 ms

7 univ-lyon.cssi.renater.fr (195.220.98.26) [AS 1717] 20 ms

8 cs7505.univ-lyon1.fr (134.214.200.226) [AS 2060] 26 ms

9 cismserveur.univ-lyon1.fr (134.214.103.240) [AS 2060] 26 ms

• Disponible sur ftp://ftp.ripe.net/tools/traceroute.tar.Z

Page 11: Protocoles de routage

ARS 00/01 11

Traversée de systèmes autonomes (2)• r-jusren>traceroute atacama.ehess.fr1 r-rerif.reseau.jussieu.fr (134.157.255.1) [AS 1307] 0 ms

2 stlambert1.rerif.ft.net (193.48.53.197) [AS 2200] 0 ms…..6 195.83.239.142 [AS 2200] 12 ms

7 atacama.ehess.fr (193.48.45.1) [AS 1309] 12 ms

• r-jusren>traceroute ftp.cnam.fr1 r-rerif.reseau.jussieu.fr (134.157.255.1) [AS 1307] 0 ms

2 stlambert1.rerif.ft.net (193.48.53.197) [AS 2200] 0 ms …..6 195.83.239.74 [AS 2200] 8 ms

7 bose.cnam.fr (163.173.128.28) [AS 1309] 8 ms

Page 12: Protocoles de routage

ARS 00/01 12

Classes de protocoles de routage (1)

• Le concept AS implique que tous les routeurs de celui-ci soient interconnectés– Le réseau d'une société nécessitant un autre AS pour

communiquer ne peut constituer un AS. – Tous les routeurs d’un AS échangent leurs tables :

• IGP : protocole de routage entre routeurs d'un AS – Interior Gateway Protocol. Exemples : RIP, OSPF, EIGRP ...

• EGP : protocole de routage entre AS – Exterior gateway Protocol. Exemples : EGP, BGP.

Page 13: Protocoles de routage

ARS 00/01 13

Classes de protocoles de routage (2)Classe de protocole Nom du protocole

Routage intra domaine (stations, routeurs) RIP (version 1 ou 2)ICMP

Routage intra domaine (routeurs) RIP (version 1 ou 2)(E)IGRP (Cisco)

OSPFRoutage inter domaine (routeurs) EGP

BGP

AS N°XProtocole

Intra domaine

AS N°YProtocole

Intra domaine

ProtocoleInter domaine

Page 14: Protocoles de routage

ARS 00/01 14

Protocoles de routage interne

• 3 types d’algorithmes :– Distance-Vector

• RIP (Version 1 et 2), IGRP (Cisco)

– DUAL (Diffusing Update ALgorithm) (Cisco)• EIGRP

– Link-State• OSPF

Page 15: Protocoles de routage

ARS 00/01 15

Algorithme Distance-Vector (1) – Algorithme de Belman-Ford : calcul de routes distribué. – Un routeur par diffusion régulière informe ses voisins des routes qu’il connaît. – Une route est composée de :

• L'adresse du réseau de destination,• L'adresse du routeur pour atteindre le réseau de destination (next hop)• La métrique : nombre de saut(s) = nombre de routeur(s) à traverser pour atteindre le

réseau de destination.

– En réception, le routeur compare les routes reçues avec les siennes, il met à jour sa propre table de routage si :

– Une route reçue est meilleure (métrique inférieure),– Une route reçue est nouvelle.

Page 16: Protocoles de routage

ARS 00/01 16

Algorithme Distance-Vector (2)

• Avantages : – Simplicité de l'algorithme (charge CPU faible)– Interopérabilité (stations, routeurs)

• Inconvénients :– Convergence lente pour les grands réseaux– Le volume des informations échangées entre routeurs

est proportionnel aux nombres de réseaux

Page 17: Protocoles de routage

ARS 00/01 17

Table de routage Distance-Vector

• Cisco : show ip route

@IP # IP du T dernière InterfaceRéseau métrique next hop annonce apprentissage

134.157.27.0 2 134.157.1.126 0:00:28 Ethernet0

134.157.26.0 2 134.157.1.126 0:00:28 Ethernet0

134.157.25.0 3 134.157.1.126 0:00:28 Ethernet0

134.157.1.0 0 connecté Ethernet0....

134.157.130.0 0 connecté Ethernet1....

0.0.0.0 1 134.157.1.126 0:00:19 Ethernet0

Page 18: Protocoles de routage

ARS 00/01 18

Distance-Vector : éviter les boucles (1)– Horizon partagé :

• Ne renvoie pas des informations apprises sur une interface, en utilisant la même interface (ip split-horizon par défaut)

– Contenu des tables de routage des routeurs concernant IP1 :• R3 : Réseau IP1 à 2 sauts• R2 : Réseau IP1 à 1 saut

– 1) R1 tombe en panne– 2) R2 le détecte, et met la route pour IP1 à l'infini– 3) Donc R3 ne doit pas indiquer à R2 que IP1 est à 2 sauts, il doit

écouter uniquement les annonces de R2– no ip split-horizon : en cas de routage particulier sur une même

interface par exemple

R1R2R3 Réseau IP1

Page 19: Protocoles de routage

ARS 00/01 19

Distance-Vector : éviter les boucles (2)• Même scénario que précédemment, avec une topologie ≠

– Redondance de chemins avec l'ajout de R4

– L'horizon partagé ne peut pas à éviter les boucles

• D'ou la technique : – De demander au routeur de ne rien faire durant la période transitoire (hold

down) de changement d'état (changement important de métrique)

– Dans ce cas précis (entre R3 et R4) le routeur peut renvoyer sur l'interface d'apprentissage une route empoisonnée (= de métrique infinie) (Poison Reverse)

• Mais le "hold down" allonge le temps de convergence des annonces, la solution :– Mise à jour déclenchée (triggered update) : Changement dans table de

routage, annonce directe sans attendre la fin de la période

R2

R3

R1

R4

Page 20: Protocoles de routage

ARS 00/01 20

Distance-Vector : Table de routage réelle

• Cisco : show ip route (avec RIP)R 134.157.27.0 [120/2] via 134.157.1.126, 0:00:28, Ethernet0

R 134.157.26.0 [120/2] via 134.157.1.126, 0:00:28, Ethernet0

R 134.157.25.0 [120/3] via 134.157.1.126, 0:00:15, Ethernet0

C 134.157.1.0 is directly connected, Ethernet0....

C 134.157.130.0 is directly connected, Ethernet1....

R* 0.0.0.0 [120/1] via 134.157.1.126, 0:00:19, Ethernet0

Introduction du concept de distance administrative

Page 21: Protocoles de routage

ARS 00/01 21

Informations de "Distance"• Provenance Cisco * :

– Permet de rendre prioritaire des informations de routage par rapport à d'autres (classement des protocoles de routage)

– Configurable par l'administrateur • Exemple : distance eigrp 90 10 (rendre + prioritaire EIGRP % BGP)

Origine de la route Distance par défautDirectement connecté 0Route Statique 1BGP externe 20EIGRP 90IGRP 100OSPF 110RIP 120EIGRP Externe 170Inconnue 255

Page 22: Protocoles de routage

ARS 00/01 22

Distance-Vector : RIP V1• RFC 1058, très répandu (gated, routed sur les stations unix)• Base de nombreux protocoles : Appletalk, Novell ...• RIP Version 1 par défaut sur les cisco :

– Utilise des datagrammes UDP (port 520)• UDP : pas de garantie d'arrivée, pas de contrôle de séquencement

– 1 datagramme contient 25 entrées au maximum)

• Métrique limitée à 15 (≥ 16 : route inaccessible)• Ne véhicule pas le masque du réseau (masque implicite) => pas de

VLSM• Ne conserve que la meilleure route

– Le + court chemin en nombre de routeur(s) traversé(s) (saut) <=> la métrique la + faible (quantité, pas la qualité)

Page 23: Protocoles de routage

ARS 00/01 23

Distance-Vector : Principes de RIP V1

• Diffuse toutes les 30 s sa table de routage• Route est invalide au bout de 180 s : nombre de saut ≥ 16 si :

– Aucun message n'a été reçu

– Un message explicite a été reçu.

• Mais les paquets y sont toujours envoyés.• La route est maintenue dans les tables, mais les voisins sont

avertis du problème (hold down de 180s)• Au bout de 240 s, la route est obligatoirement enlevée des

tables (flush)

Page 24: Protocoles de routage

ARS 00/01 24

Distance-Vector : RIP V1 (3)• R2 : show ip route @IP-Réseau1 (à métrique 1)1) Known via "rip", distance 120, metric 1

Last update from R1 on Ethernet1, 00:00:00 ago

2) Passage à l'état inaccessible Known via "rip", distance 120, metric 4294967295 (inaccessible)

Last update from R1 on Ethernet1, 00:03:03 ago

Hold down timer expires in 178 secs

3) Known via "rip", distance 120, metric 4294967295 (inaccessible)

Last update from R1 on Ethernet1, 00:03:59 ago

Hold down timer expires in 115 secs

4) 240 s : suppression de la route de la table de routage % Subnet not in table

R1

R2

R3

@IP-Réseau1

Page 25: Protocoles de routage

ARS 00/01 25

Distance-Vector : RIP V1 (4)• R3 : show ip route @IP-Réseau1 (à métrique 2)1) Known via "rip", distance 120, metric 2

Last update from R2 on Ethernet0, 9 seconds ago

2) Known via "rip", distance 120, metric 16777215 (inaccessible)

Last update from R2 on Ethernet0, 19 seconds ago (triggered update)

Hold down timer expires in 172 secs

3) Known via "rip", distance 120, metric 16777215 (inaccessible)

Last update from R2 on Ethernet0, 191 seconds ago

Hold down timer expires in 0 secs

4) Known via "rip", distance 120, metric 16777215 (inaccessible)

Last update from R2 on Ethernet0, 213 seconds ago

5) Known via "rip", distance 120, metric 16777215 (inaccessible)

Last update from R2 on Ethernet0, 238 seconds ago

6) % Network not in table temps > 240 secondes

R1

R2

R3

@IP-Réseau1

Page 26: Protocoles de routage

ARS 00/01 26

Distance-Vector : RIP V2• RIP Version 2 : RFC 1387 et 1388• Diffusion multicast (224.0.0.9)• Véhicule le masque de réseau =>

– Permet l'utilisation de VLSM

– Agrégation de route • En place par défaut sur Cisco (désactivation no auto-summary)

• Premier protocole avec possibilité d'authentification– Commandes d'interface

• ip rip authentification mode (md5 | text) – RFC 1321 pour l'algorithme MD5, RFC 2082 Authentification

• ip rip authentification key-chain Clé

Page 27: Protocoles de routage

ARS 00/01 27

Cisco : Routage RIP• Les principales commandes :• router rip (commande globale)

– version 1 | 2– network @IP-réseau (réseau concerné par RIP)– neighbor @IP-machine (avec qui les informations de routage sont

échangé, pour liaison point à point ou non broadcast) • interface Type-Int N°Int (commande d'interface)

– ip rip send version 1 "et/ou" 2 – ip rip receive version 1 "et/ou" 2

Page 28: Protocoles de routage

ARS 00/01 28

Distance-Vector : IGRP

• Internal Gateway Routing Protocol : Propriétaire Cisco (1985)• Principe proche de RIP pour la diffusion des tables de routage

– Temps 3 x supérieur (gain bande passante)– Split horizon et Poison reverse (contre les boucles)– Routage interne d'un AS (enregistré ou non) (filtrage possible des

annonces venant d'AS différents),

• Peut comprendre jusqu'à 4 chemins pour un même réseau• Métrique maximum : 100 par défaut (configurable)• Mais pas de VLSM et d'agrégation• Remplacé par EIGRP

Page 29: Protocoles de routage

ARS 00/01 29

Caractéristiques : EIGRP (Cisco)

• Propriétaire (Cisco) (début années 90)– Pallie aux limites d'IGRP (convergence, boucles)

• Gère jusqu'à 4 routes possibles pour un seul et même réseau avec un calcul spécifiques des métriques (identique à IGRP)

• Supporte en plus VLSM et l'agrégation de route (manuelle ou automatique)– ip summary-address eigrp AS @reseau masque

– auto summary (par défaut)

• Pas d'échange périodique des tables de routage, mais mise à jour partielle (gain de bande passante)

• Peut faire du routage pour IP, Appletalk, IPX (3 tables)

– Différence principale entre IGRP et EIGRP : DUAL• Diffusing Update Algorithm : Algorithme recherchant une convergence plus

rapide des informations

Page 30: Protocoles de routage

ARS 00/01 30

Métriques (E)IGRP : Principes• Calcul des métriques : combinaison de plusieurs données

– Données statiques :• Bande passante de la liaison (1200b/s a 10Gb/s) (bandwidth)

• MTU de la liaison

– Délai (DLY) : • 100 : Ethernet 100, FDDI ou ATM 155 Mb/s,

• 1000 : Ethernet 10,

• 20000 : Interface série ou RNIS.

• 100000 : Interface asynchrone

– Données calculées :• Charge liaison (rapport sur 255) (Load)

• Fiabilité de la liaison (rapport sur 255) (Rely)

Page 31: Protocoles de routage

ARS 00/01 31

Métriques (E)IGRP : Données (1)• Calcul des métriques : show interface fastEthernet 1/0FastEthernet1/0 is up, line protocol is up

Hardware is AmdFE, address is 00d0.0649.541c (bia 00d0.0649.541c)

Description: Interface RJ45 : Interconnexion vers RENATER

Internet address is 134.157.255.126/25

MTU 1500 bytes, BW 100000 kbit, DLY 100 µs, rely 255/255, load 31/255

Encapsulation ARPA, loopback not set, Keepalive set (10 sec)

Full-duplex, 100Mb/s, 100BaseTX/FX

ARP type: ARPA, ARP Timeout 04:00:00

Queueing strategy : fifo

Output queue 0/40, 0 drops; input queue 0/75, 1 drops

30 second input rate 16.538.000 bits/sec, 3644 packets/sec

30 second output rate 12.248.000 bits/sec, 3543 packets/sec

Page 32: Protocoles de routage

ARS 00/01 32

Métriques (E)IGRP : Données (2)• Calcul des métriques : show interface serial 1Serial1 is up, line protocol is up

Hardware is HD64570

Description: LS 256k vers CHU Broussais (75014)

Interface is unnumbered. Using address of Fddi0 (134.157.254.252)

MTU 1500 bytes, BW 256 Kbit, DLY 20000 µs, rely 255/255, load 61/255

Encapsulation HDLC, loopback not set, keepalive set (10 sec)

Queueing strategy: fifo

Output queue 0/40, 0 drops; input queue 0/75, 0 drops

5 minute input rate 13000 bits/sec, 12 packets/sec

5 minute output rate 62000 bits/sec, 13 packets/sec

DCD=up DSR=up DTR=up RTS=up CTS=up

Page 33: Protocoles de routage

ARS 00/01 33

EIGRP Principe (1)• Gestion des voisins (neighbor discovery/recovery): Hello (5s)

– Apprentissage dynamique des voisins (directement connectés)

• Échange entre voisins (fiable) :– Utilise le multicast (224.0.0.10) avec acquittement pour les mises à jour

• DUAL : Diffusing Update ALgorithm :– Prend les décisions de routage (si ≠ chemins) (load balancing),

– Trace les routes données par ses voisins (classés par ordre de métrique)

– Les sollicite pour trouver des routes de remplacement, et utilise leurs calculs pour connaître sa nouvelle route (diffusing computation)

– Il conserve les distances et destinations annoncées par ses voisins

Page 34: Protocoles de routage

ARS 00/01 34

EIGRP Principe (2)• Tables des voisins (≠ selon protocole): show ip eigrp neighbors

Address Int Hold (s) Uptime (= last update)

134.157.254.126 Fa2/0 12 1d16h …– Si aucun hello reçu durant Hold Time (3xHello) => Changement de topologie

• Tables de topologie : show ip eigrp topology [Réseau Masque]– Table des réseaux annoncés avec liste des voisins annonçant ses réseaux (métrique

annoncée par le voisin).

– État des voisins : Actif (calcul : pas voisin potentiel) ou Passif (pas de calcul de route)

– Exemple (pour 1 réseau) : show ip eigrp topology 134.157.1.0 255.255.255.128• From 134.157.254.123 (FastEthernet2/0) State is Passive, 1 Successor(s)

• Metric is 30720, Route is Internal,

• Vector metric : bandwidth 100000 Kbit, delay 200 µs, Reliability 255/255, Load 15/255, MTU 1500, Hop count 1

Page 35: Protocoles de routage

ARS 00/01 35

EIGRP Principe (3)• Marquage des routes :

– Interne : Apprise par EIGRP

– Externe : Apprise par un autre protocole de routage (redistribution)

– show ip route eigrp (Type D : EIGRP, D EX : EIGRP Externe)D 134.157.2.0/25 [90/30720] via 134.157.254.106, 6w4d, FastEthernet2/0

D 134.157.1.0/25 [90/30720] via 134.157.254.123, 2w3d, FastEthernet2/0

D EX 134.157.5.0/24 [170/53760] via 134.157.254.123, 2w3d, FastEthernet2/0

D 134.157.4.0/25 [90/284160] via 134.157.254.7, 1d23h, FastEthernet2/0

194.57.137.0/27 is subnetted, 2 subnets

D EX 194.57.137.96 [170/53760] via 134.157.254.7, 1d23h, FastEthernet2/0

D EX 194.57.137.64 [170/53760] via 134.157.254.7, 1d23h, FastEthernet2/0

D*EX 0.0.0.0/0 [170/30720] via 134.157.254.126, 1d18h, FastEthernet2/0

Page 36: Protocoles de routage

ARS 00/01 36

Cisco : Routage EIGRP

• router eigrp N°-AS (commande globale)– network @IP-réseau – Gestion du trafic (Cas de ≠ routes possibles) :

• Symétrique : trafic envoyé de manière égale sur les ≠ chemins

• Asymétrique : trafic envoyé de manière inversement proportionnelle aux métriques sur les 2 chemins.

• Ceci est réglable par traffic-share {balanced | min}– Si min est spécifié tout va vers la métrique la + courte

– Si balanced : on peut augmenter artificiellement la métrique avec variance multiple (1 par défaut (équilibré) jusqu’à 128) pour déséquilibrer les trafics

Page 37: Protocoles de routage

ARS 00/01 37

Filtrage des annonces

• router rip | igrp | eigrp– passive-interface Type-Int N°Int

• Pour ne pas envoyer d'update sur cette interface

• Exemple : Pas la peine d'envoyer du RIP sur un réseau, ou aucune machine ne l'écoute (réseau de machines avec une route par défaut)

– distribute-list N°Access-list in | out Type-Int N°Int• Pour filtrer (partiellement ou totalement) en entrée ou en sortie les

annonces pour le protocole de routage spécifié ci-dessus

• Exemple : envoie seulement de la route par défaut

Page 38: Protocoles de routage

ARS 00/01 38

Algorithme SPF : Shortest Path First

• Routeurs testent périodiquement l’état des liens (Link State) avec ses voisins• Diffusent périodiquement ces états à tous les autres routeurs du domaine

– Pour chaque routeur : BDD identique et cohérente grâce à une diffusion avec acquittement et validité limitée en temps, contrôle des enregistrement (cheksum)

• Établissement d'une carte des Link State complète du réseau – Métriques multiples fonction de paramètres multiples (débit, délai, coût, fiabilité).

• À partir ce cette carte, le routeur selon l’algorithme SPF (Dijkstra) : – Détermine localement le + court chemin vers chaque destination.

• Pas de diffusion périodiques des tables de routage, mais diffusion seulement des mises à jour de l’état (up, down) des routes (limite la taille des messages et la charge du réseau).

Page 39: Protocoles de routage

ARS 00/01 39

Open Shortest Path First : Caractéristiques (1)

• OSPF version 2 est un protocole Link State :– Ouvert (Open) : public, spécifications dans RFC 1583 (3/1994)– Créé pour remplacer RIP et les autres protocoles intérieurs propriétaires.

• Utilise IP (protocole N°89) et le multicast (224.0.0.5 (tous les routeurs OSPF de l'AS) et 224.0.0.6 (pour les DR))

• Calcule des coûts en guise de métriques

• OSPF utilise les types de service (champ precedence) d'IP – Permet la gestion de plusieurs routes pour une même destination,

• Selon critères du champ TOS : délai, débit, fiabilité, coût (1 à la fois).

• OSPF permet le load-balancing parmi les ≠ routes vers un même réseau.

Page 40: Protocoles de routage

ARS 00/01 40

Open Shortest Path First : Caractéristiques (2)

• OSPF supporte VLSM (masque véhiculé dans ces messages)• Découpe d’un système autonome en sous systèmes (aires,

areas) pour limiter les informations de routage à l'aire.• Sécurité : N° de séquence, Cheksum, Authentification

possible pour les échanges entre routeurs.• Envoie des LSA (Link State Announcement)

– Quand l'état d'une ligne change

– Ou toutes les 30 minutes.

Page 41: Protocoles de routage

ARS 00/01 41

OSPF: routage hiérarchique• Avec un réseau de grande taille, on risque d'avoir :

– Un overhead du trafic dû au transit des informations de routage, – Des calculs de route longs (CPU) + besoin de RAM important (coût)

• OSPF utilise un routage hiérarchique basé sur le découpage du réseau en aires (areas, codés sur 4 octets) (réseaux contigus)– Reliées par une dorsale (Backbone ou Area Backbone)– Chaque aire constitue un ensemble indépendant de réseau(x)

• La table des liaisons (Link State) ne contient que les liaisons de l’aire,• Le protocole d’inondation s’arrête aux frontières de l’aire,• Les routeurs ne calculent que les routes internes de l’aire des border routers appartenant à plusieurs aires (aire et backbone en général), ils transmettent les

informations récapitulatives des aires qu’ils relient.

Page 42: Protocoles de routage

ARS 00/01 42

OSPF : les Aires (1)• On distingue 3 classes d'aires :

– L'aire backbone (Area 0) : Unique• Chemin obligatoire pour passer d'une aire à l'autre

– Les aires secondaires• Tous les routeurs ont une vue complète de la carte du réseau

• Routeurs calculent localement la meilleure route entre 1 source et 1 destination.

– Les aires terminales (stub area)• Pas de vue complète de la carte du réseau

– Ajout d'une route par défaut (area X stub)– Suppression des routes externes (area X stub no-summary)

• Travail identique des routeurs

• Une aire ≈ environ 50 routeurs au maximum.

Page 43: Protocoles de routage

ARS 00/01 43

AREA 0

AREA 1

AREA 2AREA 3

AREA 4

AREA 5

Système Autonome

Aires secondairesAires terminales (stub)

OSPF : les Aires (2)Aire Backbone

Area Border RouterRouterAS Border Router

Page 44: Protocoles de routage

ARS 00/01 44

OSPF : Les routeurs

• AS Border : Routeur frontière de l'AS qui apprend les routes extérieures à l'AS (par EGP, BGP…)

• Area Border : Routeur appartenant à plusieurs aires (interfaces multiples ≈> aires multiples)– Maintient des BDD de topologie ≠ pour chaque aire

• Designated Router : Pour limiter les transactions entre routeur

Page 45: Protocoles de routage

ARS 00/01 45

OSPF : le routeur désigné (DR)• Sur un réseau de n routeurs :

– Chaque routeur a N-1 liaisons vers les autres routeurs– Au total n(n-1)/2 échanges

• Avec un routeur désigné (DR) :– Les autres routeurs ont 1 adjacence avec le DR uniquement– Seul le DR annonce vers l'extérieur : Réduction à n échanges

• Élection : fonction de priorité (configurable)– ip ospf priority N°– Élection d'un secours par sécurité– C'est hello qui se charge de surveiller le bon fonctionnement des DR

(primaire et secours)

A B

C D

A élu DR

B

D

A

C

Page 46: Protocoles de routage

ARS 00/01 46

Open Shortest Path First : Protocole(s) (1)

• OSPF est un protocole complexe, car :– Nécessite plusieurs "sous-protocoles" pour fonctionner et

chaque routeur gère plusieurs BDD (routes du réseau, tables de routages vers les autres réseaux du domaine, tables de routages vers les autres domaines)

• Hello utilisé pour :– Vérifier si les liaisons sont opérationnelles– Permettre l’élection du DR, ainsi que le DR de secours– Établir une connexion bilatérale entre 2 routeurs

Page 47: Protocoles de routage

ARS 00/01 47

Open Shortest Path First : Protocole(s) (2)• Échange (avec acquittement) utilisé quand :

– Si la connexion bilatérale a réussi :• Maître / Esclave, DR / Autres routeurs

– Échange des Link State entre DR et les autres routeurs

– Initie les premiers échanges (suppléé ensuite par l’inondation)

• Inondation (avec acquittement) utilisé quand :– L’état d’une liaison déjà connue change

– Sur demande d’état après connexion bilatérale

– Pour chaque annonce• Si nouvelle valeur : l’annonce est ré-émises sur toutes les interfaces

• Acquittement vers l’émetteur initial

Page 48: Protocoles de routage

ARS 00/01 48

OSPF : Principes

1) Local : Coût = 108 /(BP en bits) (Ethernet 10 = 10) - Priorité

2) Identification de ces voisins (Hello)

3) Formation d'une adjacence (2 routeurs échangeant les Link State des adjacences avec le DR (gain BP) qui lui transmet la BDD

4) Diffusion de sa configuration locale vers l'ensemble des autres routeurs (numérotation séquence limite propagation message et risque de boucle)

5) Une fois BDD synchrone, Algorithme SPF entre ses données locales et la BDD (construit un arbre SPF du + court chemin dont il est la racine).

6a) Modification ensuite possible routeur désigné et BDD

6b) Échange périodique de LSA ou à chaque mise à jour

Page 49: Protocoles de routage

ARS 00/01 49

OSPF : show ip ospf database (1)

R2 : 172.16.3.1 pour Area N°0 (backbone) Link ID ADV Router Age (s) N° Seq Checksum Link count

Router Link States

172.16.2.1 172.16.2.1 1086 80000003 0xC088 1

172.16.3.1 172.16.3.1 1085 80000003 0xDA4B 1

Net Link States

172.16.1.2 172.16.3.1 1085 80000001 0xFF39

Summary Net Link States

172.16.2.0 172.16.2.1 1130 80000001 0x8D47

172.16.3.0 172.16.3.1 1112 80000003 0x951B

172.16.4.0 172.16.3.1 1107 80000001 0xF2B4

172.16.3.0 Stub Area 1

172.16.1.0Aera 0

172.16.2.0Area 2

172.16.4.0Stub Aera 1

.1R1.1

.2R2.1

.254R3.1

Page 50: Protocoles de routage

ARS 00/01 50

OSPF : show ip ospf database (2)

R2 : 172.16.3.1 pour Area N°1Link ID ADV Router Age (s) N° Seq Checksum Link count

Router Link States

172.16.3.1 172.16.3.1 1122 80000003 0xF82F 1

172.16.4.1 172.16.4.1 1128 80000004 0x77F5 2

Net Link States

172.16.3.254 172.16.4.1 1128 80000001 0x1742

Summary Net Link States

0.0.0.0 172.16.3.1 1173 80000001 0x479

172.16.1.0 172.16.3.1 1082 80000003 0xC9EA

172.16.2.0 172.16.3.1 1078 80000001 0x2784

172.16.3.0 Stub Area 1

172.16.1.0Aera 0

172.16.2.0Area 2

172.16.4.0Stub Aera 1

.1R1.1

.2R2.1

.254R3.1Routes supprimées

si stub no-summary

Page 51: Protocoles de routage

ARS 00/01 51

OSPF : Table de routageR2# show ip route

Codes: C - connected, O - OSPF, IA - OSPF inter area

Gateway of last resort is not set

172.16.0.0/24 is subnetted, 4 subnets

O 172.16.4.0 [110/20] via 172.16.3.254, 00:02:33, Ethernet1

C 172.16.1.0 is directly connected, Ethernet0

O IA 172.16.2.0 [110/20] via 172.16.1.1, 00:02:33, Ethernet0

C 172.16.3.0 is directly connected, Ethernet1

R3# show ip route

Gateway of last resort is 172.16.3.1 to network 0.0.0.0

172.16.0.0 255.255.255.0 is subnetted, 4 subnets

C 172.16.4.0 is directly connected, Ethernet1

O IA 172.16.1.0 [110/20] via 172.16.3.1, 00:11:37, Ethernet0

O IA 172.16.2.0 [110/30] via 172.16.3.1, 00:11:38, Ethernet0

C 172.16.3.0 is directly connected, Ethernet0

O*IA 0.0.0.0 0.0.0.0 [110/11] via 172.16.3.1, 00:11:38, Ethernet0

172.16.3.0 Stub Area 1

172.16.1.0Aera 0

172.16.2.0Area 2

172.16.4.0Stub Aera 1

.1R1.1

.2R2.1

.254R3.1Routes supprimées

si stub no-summary

Page 52: Protocoles de routage

ARS 00/01 52

OSPF : Table de routageR2# Configuration du routage (area border)router ospf 1

network 172.16.1.0 0.0.0.255 area 0

network 172.16.3.0 0.0.0.255 area 1

area 1 stub no-summary

R3# Configuration du routagerouter ospf 1

network 172.16.3.0 0.0.0.255 area 1

network 172.16.4.0 0.0.0.255 area 1

area 1 stub

172.16.3.0 Stub Area 1

172.16.1.0Aera 0

172.16.2.0Area 2

172.16.4.0Stub Aera 1

.1R1.1

.2R2.1

.254R3.1

Cohérence desdéfinitions

Page 53: Protocoles de routage

ARS 00/01 53

Routage OSPF

• Les principales commandes :

router ospf N°AS

network @IP wildcard-mask area N°X

network @IP wildcard-mask area N°Y

...

area N° stub [no-summary]

area N° authentication

...

interface Type N°

ip ospf cost coût

Page 54: Protocoles de routage

ARS 00/01 54

Routage Extérieur

• 2 protocoles de type externe :

– EGP : Exterior Gateway Protocol• L'ancien (Avril 1994)

– BGP : Border Gateway Protocol• Le nouveau (Mars 1995) en version 4

Page 55: Protocoles de routage

55

Nombre de routes sur Internet

• Source : http://www.employees.org/~tbates/cidr.hist.plot.html

Nombre de routes

Nombre de jour depuis le

01/01/1994

Mise en place du CIDR

Page 56: Protocoles de routage

56

Évolution du nombre d'AS

• Source http://www.employees.org/~tbates/cidr.as.plot.html

Nombre d'AS

Nombre de jour depuis le

01/10/1996

Page 57: Protocoles de routage

ARS 00/01 57

EGP : Caractéristiques (1)• EGP (RFC 904) : 1 des premiers protocoles de routage inter-domaine entre

le cœur ARPANET et les réseaux connectés au cœur

• Utilise obligatoirement une topologie hiérarchisée– Topologie en étoile avec pour base le cœur du réseau S’appuie sur l’hypothèse d’un

réseau fédérateur ou les différents AS se rattachent par un routeur unique

– Ne gère pas les problèmes de boucles (catastrophe), ni les métriques

• Repose sur le concept de voisinage : échange 2 à 2 sans diffusion– Voisin EGP intérieur : routeur situé dans un même AS.

– Voisin EGP extérieur :routeur situé dans un autre AS

– Un voisin EGP doit n’être qu’à un seul saut IP (en théorie).

• Ne donne pas d’information – sur des réseaux hors de son AS, ou sur les sous-réseaux

Réseau fédérateur

AS N°X AS N°Y AS N°Z

Page 58: Protocoles de routage

ARS 00/01 58

EGP : Caractéristiques (2)• Pas de diffusion. Les routeurs échangent à intervalle régulier :

– des informations 2 à 2 des messages du type :• "Es tu la ?" (hello) <====> "oui, je suis là !" (I heard you)

• "Envoie moi ta liste de réseaux accessibles " <====> "voici ma liste"

• EGP est +un protocole d’accessibilité qu'un protocole de routage (RFC)– Les métriques sont utilisées pour rendre prioritaire un routeur par rapport à un

autre

• Utilise des datagrammes IP (numéro de protocole 8)

• Implémenté par de nombreux constructeurs.

• Utilisé à Jussieu jusqu'en 96 (Interconnexion avec RENATER)

• En fin de vie, remplacé maintenant par BGP 4 sur l'internet

Page 59: Protocoles de routage

ARS 00/01 59

EGP : Fonctions principales• Périodiquement : définit les temps avec ses voisins qu'on lui a explicitement donné

– EGP Neighbor FAS/LAS State SndSeq RcvSeq Hello Poll j/k Flags

– 192.44.54.1 1309/1307 UP 5TE 10052 11286 60 180 4 Perm,Act

• Poll : échange avec ses voisins l'accessibilité des réseaux qu'il possède – EGP: from 192.44.54.1 to 192.44.54.126 vers=2, as=1309, seq=12358

• Type=POLL, Code=0, Status=1 (UP), Net=192.44.54.0

• Hello : Test si ses voisins sont OK– Question EGP: from 192.44.54.126 to 192.44.54.1 vers=2, as=1307, seq=11123

• Type=REACH, Code=HELLO, Status=1 (UP)

– Réponse EGP: from 192.44.54.1 to 192.44.54.126 vers=2, as=1309, seq=11123• Type=REACH, Code=I-HEARD-YOU, Status=1 (UP)

• Routing Update : indique le réseau vers l'AS distant, et le nombre de routeurs internes et externes– EGP: from 192.44.54.1 to 192.44.54.126, vers=2, as=1309, seq=11123

• Type=UPDATE, Code=0, Status=1 (UP), IntGW=1, ExtGW=0, Net=192.44.54.0

192.44.54.1

192.44.54.126

EGP

AS X

AS Y

Page 60: Protocoles de routage

ARS 00/01 60

EGP : Exemple• Les principales commandes :

autonomous-system AS_Local (Commande globale)

router egp AS_Distant

network @IP-Réseau….

neighbor @IP-Voisin

• Exemple réel (Ancienne configuration de Jussieu) :

autonomous-system 1307

router egp 1309

network 134.157.0.0

network 132.227.0.0...

neighbor 192.44.54.1

ip route 0.0.0.0 0.0.0.0 192.44.54.1

Page 61: Protocoles de routage

ARS 00/01 61

BGP : Caractéristiques (1)• BGP : pour le routage moderne inter AS (existe aussi en interne)

– BGP 4 remplace petit a petit EGP sur l’Internet

– Pour résoudre la limitation d'EGP (détection des boucles de routages)

– Routeur interne à un AS connaît le routeur vers d'autres AS

– BGP 4 supporte CIDR (préfixe IP annoncé + résumé de route)

– Historique : Version BGP N° RFC Date

1 1105 janvier 19892 1163 juin 19903 1267 octobre 19914 1771 mars 1995

Page 62: Protocoles de routage

ARS 00/01 62

BGP : Caractéristiques (2)

• Communication entre routeurs BGP : même réseau et même AS – À l'initialisation pour comparer ses tables

– Et déterminer qui est l'AS border router (routeur vers les autres AS)

• Il se peut qu’un AS ne soit qu’un lieu de passage d’un AS vers un autre– => les updates BGP consiste donc en une liste de paires de N°réseau/N°AS.

– Le chemin vers l’AS contient la liste des AS à traverser et les réseaux à utiliser.

• Transports des mises à jour fiable : TCP port 179

• Métriques de BGP : donne le degré de préférence pour un chemin donné– Fixés par l'administrateur en fonction du nombre d'AS traversé, de la vitesse des liens,

de leur fiabilité ...

Page 63: Protocoles de routage

ARS 00/01 63

BGP : Messages (1)

• A l'initialisation BGP échange toute sa table de routage (open message) avec un autre routeur.

• Open message (avec ACK de l'ouverture de sessions) :– Définit et échange de nombreux paramètres

– Numéro d'AS de l’expéditeur

– Hold-timer : temps maximum (sec) entre 2 keepalive => routeur H.S.• Hold-timer : 180 s, keepalive : 60 s

– Type d'authentification (md5 ou non)

– Version de BGP utilisée (la version la plus récente)

• Ensuite ne sont envoyés que les changements (update message)

Page 64: Protocoles de routage

ARS 00/01 64

BGP : Messages (2) • Update Message : Les informations (obligatoires) qui sont échangées

– Origin : IGP, EGP, Incomplète.• IGP : si le réseau est interne à l'AS• EGP : si l'information apprise par EGP (peu de poids).• Incomplète : si appris par ailleurs (statique par exemple).

– AS path : liste d'AS à traverser pour atteindre la destination.– Next hop : @IP du routeur à utiliser pour aller vers la liste de réseau.– Les autres informations sont optionnelles :

• communauté, préférences locales, agrégation ..

• Construit 3 tables (RIB : Routing Informations Base)– Adj-RIB-In : Informations reçues (Sans calcul)– Adj-RIB-Out : Informations à envoyer, classées par routeur destination– Loc-RIB : Sélection des routes par le routeur (Calcul)

Page 65: Protocoles de routage

ARS 00/01 65

BGP : Messages (3)

• Autres types de messages :– Keepalive : pour vérifier que la liaison est bonne (tant que la

valeur de hold-time n'est pas dépassée)

– Notification : réponse à une erreur (open, update ...)

• BGP utilise 1 seul et unique chemin vers un autre AS– Sélection par des poids

– neighbor {@IP | Peer group name} weight Poids)

Page 66: Protocoles de routage

ARS 00/01 66

BGP : Commandes de Baserouter bgp AS

network @IPreseau

neighbor @IP remote-as AS

neighbor @IP version N°

neighbor @IP password XXXX• Si plusieurs neighbor avec politique équivalente => création

de peer group (update + efficace)– pour simplifier la configuration

neighbor Nom_Peer_Groupe peer-group

neighbor @IP peer-group Nom_Peer_Groupe

...

Page 67: Protocoles de routage

ARS 00/01 67

BGP : Exemple réel router bgp 1307

redistribute eigrp 1307

neighbor 134.157.4.129 remote-as 789

neighbor 134.157.4.129 description IN2P3 Jussieu

neighbor 134.157.4.129 ebgp-multihop 255 <=== utilise IGP

neighbor 134.157.4.129 version 4

neighbor 134.157.255.1 remote-as 1309

neighbor 134.157.255.1 description EA France Telecom

neighbor 134.157.255.1 version 4

neighbor 134.157.255.1 distribute-list 21 out

no ip classless

ip route 0.0.0.0 0.0.0.0 134.157.255.1

Page 68: Protocoles de routage

ARS 00/01 68

BGP : Exemple réel • Utilisation de BGP pour le multicast (mbgp)router bgp 1307

redistribute dvmrp route-map dvmrp2mbgp

neighbor 193.48.56.49 remote-as 2200 nlri multicast

neighbor 193.48.56.49 description Vers fmbone2 (NIO)

neighbor 193.48.56.49 distribute-list 10 in

neighbor 193.48.56.49 distribute-list 1 out

route-map dvmrp2mbgp

set nlri multicast

set origin igp

Page 69: Protocoles de routage

ARS 00/01 69

BGP : Table de routageshow ip route bgp

B 194.254.61.0/24 [20/0] via 134.157.255.1, 06:04:59

B 194.214.31.0/24 [20/0] via 134.157.255.1, 5d02h

B 194.199.14.0/24 [20/0] via 134.157.255.1, 1d23h

B 193.48.227.0/24 [20/0] via 134.157.255.1, 5d02h

B 193.52.227.0/24 [20/0] via 134.157.255.1, 5d02h

B 194.214.14.0/24 [20/0] via 134.157.255.1, 2d05h

B 192.54.209.0/24 [20/0] via 134.157.255.1, 5d02h

B 194.57.211.0/24 [20/0] via 134.157.255.1, 5d02h

...

Page 70: Protocoles de routage

ARS 00/01 70

Résumé

Cisco# show ip route summaryRoute Source Networks Subnets Memory (octets)

connecté 0 4 576

statique 4 1 720

eigrp 1307 10 367 54288

bgp 1307 1055 9 153216

----------------- -------- ----- ---------

Total 1079 381 220440

Page 71: Protocoles de routage

ARS 00/01 71

Vue Intérieure / Vue Extérieure• Soit un réseau de classe B

– Pour un exemple de gain significatif– Vous pouvez créer un grand nombre de sous réseaux– L'annonce faite vers l'extérieur se limite à @IP/16

SousRéseau 1

SousRéseau 2

SousRéseau 3

SousRéseau 4

Etc ...

SousRéseau 5

Classe B /16

uniquement

SousRéseau 6