Social Icons

lundi 24 septembre 2012

Protocole OSPF

Définitions

Le protocole OSPF (Open Shortest Path First) est un protocole de routage à état de lien crée en 1988
par l’IETF (RFC 2328). C’est à l’heure actuelle l’IGP (Interior Gateway Protocol) le plus répandu.
OSPF est un protocole libre.

Caractéristiques

Principales caractéristiques d’OSPF :
  • Emission des mises à jour déclenchées par modification(s) topologique(s).
  • Connaissance exacte et complète de la topologie du réseau.
  • Chaque noeud connaît l’existence de ses voisins adjacents.
  • Utilisation d’un arbre du plus court chemin d’abord (SPF Tree) et d’un algorithme du plus court chemin d’abord (Algorithme SPF appelé aussi l'algorithme de Dijkstra) pour générer la table de routage.
  • Envoi des mises à jour topologiques via une adresse multicast et non broadcast.
  • Utilisation moindre de la bande passante
  • Protocole de routage classless supportant le VLSM.
  • Requiert des routeurs plus puissants.
  • Domaines de routage exempts de boucles de routage
  • Métrique utilisée : le coût (chaque liaison a un coût).
  • Détermination et utilisation d’un ou plusieurs domaines de routage appelés Areas (ou aires) au sein d’un même système autonome (AS).
Les interfaces OSPF distinguent quatre types de réseaux : 
  • Les réseaux multi-accès broadcast (BMA) comme Ethernet.
  • Les réseaux point-à-point.
  • Les réseaux multi-accès non broadcast ou encore Nonbroadcast multi-access (NBMA), tel que Frame Relay.
  • Les réseaux point-à-multipoint configuré manuellement par un administrateur
les Définitions
  • Neighbor
                         o Routeur voisin sur le même réseau. 
  • HELLO
                         o Protocole permettant la découverte et le maintient de liens entre les voisins. Les  paquets HELLO sont transmis toutes les 10s pour un réseau de type broadcast multiaccess (BMA) et toutes les 30s pour un réseau de type NonBroadcast Multi-access (NBMA).
  • LSU
                         o Paquet de mise à jour de données topologique. Permet d'avoir des informations sur
l'évolution topologique du réseau.
  • · LSA
                         o Contenus dans les LSUs, ils permettent d'avertir qu'une modification topologique à lieu.
  • SPF tree
                         o L'arbre du plus court chemin d'abord résultant de l'application de l'algorithme de Dijkstra.
  • Algorithme de Dijkstra
                         o L'algorithme de Dijkstra (ou algorithme SPF), publié par le scientifique allemand du même nom en 1959 est utilisé pour le calcul de l'arbre du plus court chemin d'abord.
  • Adjacencies database
                         o Base de données contenant les informations relatives aux voisins.
  • Topological database
                         o Base de données qui contient toutes les informations sur la topologie du réseau.
  • Routing table
                         o Table de routage avec les meilleures routes à destination de tous les sous-réseaux de la topologie.
  • Flooding
                          o Processus qui consiste à envoyer par tous les ports.
  • DR (Designated Router)
                          o Routeur élu pour centraliser toutes les informations topologiques.
  • BDR (Backup Designated Router)
                          o Routeur élu pour prendre le relais du DR en cas de panne.
  • NBMA (Non Broadcast Multi-access)
                          o Réseau multi-accès Non broadcast tel que Frame Relay.
  • ABR (Area Border Router)
                          o Routeur situé à la bordure d’une ou plusieurs aires.

Fonctionnement d'OSPF

Les aires

L'établissement de la base de données topologique, ainsi que le calcul du plus court chemin d'abord impose une grande charge de traitements pour chaque routeur.
Pour diminuer la taille de la base donnée topologique, les routeurs peuvent être regroupés en plusieurs aires (area) au sein d'un même système autonome (SA). On parle alors de multiple area OSPF (voir schéma ci-dessous), mais le cursus CCNA 3 ne s'attarde que sur l'emploi de single area OSPF.

Le protocole HELLO

Avant tout échange d'informations de données topologiques, le routeur implémentant OSPF doit s’assurer qu'il a des routeurs adjacents utilisant eux aussi OSPF. Ces routeurs adjacents sont appelés des « voisins » et chacun d’entre eux peut être voisin d’un ou de plusieurs routeurs.

Pour découvrir leurs voisins, chaque routeur utilisant OSPF comme protocole de routage va devoir recourir au protocole HELLO qui permet d'établir et de maintenir un échange avec les routeurs voisins.
 
Celui-ci va permettre à chaque routeur d’envoyer des paquets HELLO à intervalles réguliers sur chacune de leurs interfaces en utilisant l’adresse multicast 224.0.0.5. Les voisins découverts seront ensuite enregistrés dans une base de données de voisinage appelée Neighbor Database.

Les tables OSPF

OSPF utilise 3 tables : la table de voisinage, appelée Neighbor Database (dont on a vu le fonctionnement précédemment) ; la table topologique, appelée Topological Database ; et enfin la table de routage, appelée routing table.
 
La table topologique est établie de la manière suivante :

Dans un réseau point-à-point

Une fois que chaque routeur a appris l’existence de ses voisins, il va leur envoyer les informations concernant tous les réseaux qui lui sont directement connectés.

Ces informations envoyées vont permettre à chaque noeud de mettre rapidement à jour leur base de données topologique (Topological Database) et d’obtenir ainsi une connaissance complète de la topologie réseau.
 
Ces mises à jour topologiques, déclenchées à l’initialisation du protocole OSPF sur les routeurs et par la suite lors de chaque modification topologique, se font grâce à l’envoi de paquets LSU (Link State Update) contenant des LSA (Link State Advertisement) comme le montre le schéma ci-dessous.

Dans un réseau multi-accès

Les réseaux multi-accès fonctionnent suivant le même principe que les réseaux point-à-point, à la différence que dans les réseaux multi-accès tous les routeurs sont voisins.
 
Cela pose cependant un problème puisque chaque routeur maintient un lien avec tous ses voisins pour l'échange d'informations topologiques. Par conséquent plus il y a de routeurs sur le réseau, plus ces derniers sont sollicités à envoyer des paquets de mises à jour topologiques.
 
Pour palier à ce problème, le protocole HELLO va élire un DR (Designated Router) qui sera chargé de centraliser toutes les informations de modifications topologiques et de les retransmettre par la suite à tous les autres routeurs.

Il y aura ensuite l’élection d’un BDR (Backup Designated Router) servant de secours au cas où le DR (designated router) ne pourrait plus assurer son rôle. Nous verrons le processus d'élection dans la partie suivante.
 
Tous les routeurs transmettront donc leurs informations topologiques au DR (designated router) (ainsi qu’au BDR (backup designated router)) en utilisant l'adresse multicast 224.0.0.6, tandis que le DR redistribuera ces informations avec l'adresse multicast 224.0.0.5 à tous les autres routeurs comme indiqué ci-dessous.
La table de routage est établie de la manière suivante :

Une fois que tous les routeurs ont convergé, c'est-à-dire qu’ils ont tous la même vu complète du réseau, chacun d’entre eux va construire, à partir de sa base de données topologique, un arbre du plus court chemin d’abord (SPF Tree).
 
Cette construction va être réalisée grâce à l’algorithme SPF (Shortest Path First), aussi appelé l'algorithme de Dijkstra, qui va parcourir la base de données topologique et considérer chaque routeur comme étant des sommets reliés par des liens point-à-point. Le routeur qui implémente cet algorithme sera placé à la racine de l’arbre du plus cours chemin d'abord.

La métrique utilisée par OSPF étant le coût, calculée par les composants Cisco à l’aide de la formule suivante : coût=108/bande passante (s'exprime en bps), chaque lien va donc avoir un coût. La métrique d’une route est par conséquent calculée en faisant la somme de la bande passante de chaque lien de la route.
 
L'algorithme de Dijkstra va parcourir ensuite cet arbre du plus court chemin afin de déterminer les meilleures routes pour atteindre chaque réseau de destination (routes dont le coût est le plus bas). Ces routes seront ensuite ajoutées à la table de routage.

Au niveau de la table de routage, chaque route apprise par le protocole de routage OSPF se
manifestera par la lettre « O » devant celle-ci et aura une distance administrative de 110.

Election DR (Designated Router) / BDR (Backup Designated Router)

Dans le cas d'un réseau multi-acces, nous avons vu qu'il fallait procéder à l'élection d'un DR et d'un BDR. Cette élection se passe de la manière suivante.
 
Un routeur doit répondre à plusieurs critères pour être désigné DR (Designated Router) dans le réseau multi-accès. L'élection se fait grâce aux paquets HELLO qui contiennent l'ID du routeur et une priorité.
 
Lors du processus d’élection, le routeur ayant la plus grande priorité sur le réseau multi-accès sera élu
DR. Dans le cas d’une égalité des priorités, les routeurs devront comparer leur router-id. Le routeur
qui aura dans ce cas le plus grand router-id sera élu DR.

Une fois le DR désigné, le processus d’élection devra ensuite déterminer le BDR (Backup Designated Router). Cette élection se passe de la même manière que pour le DR, mis à part que le routeur devenu DR n'est pas candidat à l'élection du BDR.

Détermination du Router-ID

Si, lors de l'élection du DR ou du BDR, plusieurs routeurs ont la même priorité, on va comparer leur router-id, et prendre celui qui aura le plus grand.
 
Lorsqu’une instance OSPF est initialisée, un identifiant de routeur appelé router-id est déterminé. Ce
router-id n’est autre qu’une adresse IP définie sur l'une de ses interfaces.
 
Le router-id est déterminé selon les critères suivant :
  • S’il y a présence d’une ou plusieurs interfaces Loopback sur le routeur, son router-id correspondra à la plus grande adresse IP de toutes les interfaces Loopback configurées sur celui-ci.
  • Si aucune interface Loopback n’est présente sur le routeur alors son router-id sera la plus grande adresse IP de toutes les interfaces actives configurées sur celui-ci.
 
 
Pour fonctionner, un processus OSPF nécessite qu’il y ait au moins une interface active configurée sur
le routeur. Il est donc conseillé, pour éviter toute interruption du processus OSPF, de faire usage des
interfaces Loopback lorsque l’on configure ce protocole de routage sur un équipement.

Configuration

Commandes générales

  • router ospf {id de processus}
                                o Mode de configuration globale
                                o Active le protocole OSPF sur le routeur.
                                o Plusieurs processus peuvent être lancés sur un routeur.
  • network {préfixe}
                                o Mode de configuration du routeur
                                o Permet d'indiquer les réseaux utilisant OSPF directement connectés au routeur.
  • interface loopback {number}
                                o Mode de configuration globale
                                o Permet de créer une interface logique.
  • bandwidth
                               o Mode de configuration d’interface
                               o Permet de spécifier la bande passante sur l'interface.
  • ip ospf priority {number}
                               o Mode de configuration d’interface
                               o Permet de modifier la priorité d’une interface pour l'élection du DR.
                               o La valeur peut aller de 0 à 255. Attention, une priorité de 0 empêche le routeur d’être élu DR.
  • ip ospf cost {number}
                              o Mode de configuration d’interface
                              o Permet de spécifier le coût du lien relié à l'interface.
  • ip ospf hello-interval {intervalle}
                              o Mode de configuration d’interface
                              o Définit la fréquence d'émission des paquets HELLO.
  • ip ospf dead-interval {intervalle}
                              o Mode de configuration d’interface
                              o Définit la durée pendant laquelle un lien sera considéré comme actif, après que le routeur ait reçu un paquet HELLO d'un routeur voisin.

Commandes d'authentification

  • area {numéro de l'aire} authentication
                              o Mode de configuration du routeur
                              o Active l'authentification OSPF avec un mot de passe en clair.
  • ip ospf authentication-key {mot de passe}
                              o Mode de configuration d’interface
                              o Spécifie le mot de passe utilisé en clair
  • area {numéro de l'aire} authentication message-digest
                              o Mode de configuration du routeur
                              o Active l'authentification avec un mot de passe encrypté.
  • ip ospf message-digest-key {key-id} md5 {mot de passe}
                              o Mode de configuration d’interface
                              o Défini une key-id associée à un mot de passe encrypté.

Commandes de débogage

  • show ip ospf interface
                               o Mode privilégié
                               o Permet d'afficher la priorité de l'interface.
  • show ip protocols
                                o Mode privilégié
                                o Affiche les informations sur les protocoles de routage configurés sur le routeur.
  • show ip route
                                 o Mode privilégié
                                 o Affiche la table de routage du routeur.
  • show ip ospf
                                 o Mode privilégié
                                 o Affiche la durée depuis laquelle le protocole est activé, ainsi que la durée durant laquelle il n’y a pas eu de modification topologique.
  • show ip ospf neighbor detail
                                 o Mode privilégié
                                 o Affiche une liste détaillée des voisins, leur priorité et leur statut.
  • show ip ospf database
                                 o Mode privilégié
                                 o Affiche le contenu de la base de données topologique (router-Id, process-Id).

Exemple de Configuration

Topologie de test
La commande router ospf
 Pour activer OSPF sur un routeur, utilisez la commande suivante:
– R1(config)#router ospf process-id
– process-id
• Numéro de processus (1 à 65534) avec une signification locale OSPF Configuration de base
• Ce numéro n'a pas besoin d'être le même sur tous les routeurs OSPF

Commande network
– Requiert l'entrée de:
network address - Adresse du réseau
wildcard mask - Masque générique inverse du masque de sous-réseau
area-id - Numéro d'area OSPF
OSPF Configuration de base
– Exemple:
Router(config-router)# network network-address wildcard-mask area area-id
Commandes utilisées pour vérifier le Router ID courant
– show ip protocols
– show ip ospf
– show ip ospf interface

 Router ID et adresses d'interfaces Loopback

– L'adresse IP la plus élevée parmi les interfaces loopback sera utilisée comme Router ID si la commande router-id n'est pas utilisée
– Avantage de l'utilisation d'adresse d'interface loopback
• Une interface loopback n'est jamais "down"  Stabilité d'OSPF

Commande router-id
– Introduite dans l'IOS 12.0
– Syntaxe de la commande
 
• Router(config)#router ospf process-id
• Router(config-router)#router-id ip-address
 Valider la modification du Router ID
– Utiliser la commande:
Router# clear ip ospf process process-id

Vérification d'OSPF
Utilisez la commande show ip ospf neighbor pour vérifier et maintenir les réseaux OSPF
Cette commande affiche les informations suivantes:
– Adjacences des voisins
• Aucune adjacence indiquée par:
OSPF Configuration de base
– Pas de Router ID de routeurs voisins affichés
– L'état full n'est pas affiché
• Conséquence d'adjacence non établie
– Pas d'information d'état de lien échangée
– Arbres SPF et tables de routage incomplets

Examen de la table de routage
 Utilisez la commande show ip route pour afficher la table de routage
– Un "O" au début de la route indique que la source de la route est OSPF
– Note: OSPF n'agrège pas automatiquement à la frontière du réseau principal


Aucun commentaire :

Enregistrer un commentaire

Abonnez-vous par e-mail

Pour recevoire les nouvelles article