Vous êtes sur la page 1sur 17

OSPF 1.

Introduction
Le protocole OSPF (Open Shortest Path First) a t dvelopp suite au besoin de la communaut Internet d'utiliser un protocole intrieur IGP (Internal Gateway Protocol) dans la pile des protocoles TCP/IP, non-propritaire et hautement fonctionnel. Les discussions sur la cration d'un IGP commun et inter-oprable pour l'Internet commena en 1988 et ne fut pas formalis avant 1991.

La prescription la plus rcente est la RFC 2328 (avril 1998 version 2). OSPF est un protocole de couche 3, annonc dans dans paquet IP avec le numro de protocole 89. Il n'utilise pas TCP pour la fiabilit qu'il assure par des mcanismes propres.

1.1. Comparatif fonctionnel des protocoles RIP et OSPF


La croissance rapide et l'expansion des rseaux a pouss RIP ses limites. RIP comporte certaines restrictions qui peuvent causer des problmes dans les rseaux larges :

RIP a une limite de 15 sauts. Un rseau qui comporte plus de 15 sauts (15 routeurs) est considr comme inaccessible. RIP ne supporte pas les masques longueur variable (VLSM : Variable Length Subnet Mask). Compte tenu du manque d'adresses IP et de sa flexibilit, le VLSM comporte des avantages considrables dans les plans d'adressage. L'envoi priodique de l'entiret des tables de routage en diffusion (broadcast) consomme une grande quantit de bande passante. Il s'agit d'un vritable problme dans les rseaux larges et spcifiquement sur les liaisons lentes et les nuages WAN. RIP converge plus lentement qu'OSPF. Dans les trs grands rseaux, la convergence doit tre rapide. RIP ne prend pas en compte les paramtres de dlai et de cot. Les dcisions de routage sont uniquement bases sur le nombre de sauts quelque soit la bande passante ou les dlais des lignes . Les rseaux RIP sont des rseaux plats. Il ny a pas de concept d'area (zone) ou de boundarie (frontire). Avec l'introduction du routage classless et l'utilisation intelligente de l'agrgation et de la summurization des routes, les rseaux RIP ont moins de succs.

Certaines amliorations ont t introduites dans une version nouvelle de RIP appele RIP2. RIP2 supporte le VLSM, permet l'authentification et les mises jour de routage multicast. Toutefois, ces amliorations restent faibles car RIP2 est encore limit par le nombre de sauts et une convergence lente qui conviennent mal aux rseaux tendus.

Voici les caractristiques comparatives d'OSPF :

Il n'y a pas de limite du nombre de sauts. OSPF tant un protocole de routage tat de lien, chaque routeur possde une connaissance complte des rseaux au sein d'une zone (area). Aussi, le danger de boucles de routage n'tant a priori plus prsent, la limite du nombre de sauts n'est plus ncessaire. L'utilisation intelligente du VLSM amliore les plans d'adressage (allocations d'adresses IP). Il supporte aussi l'agrgation et la summarization de routes. Il utilise IP multicast pour envoyer ses mises jour d'tat de lien. Cette mthode prend moins de ressources aux routeurs qui ncoutent pas de paquets OSPF. Aussi, ces mises jour sont envoyes uniquement lors d'un changement de topologie. On conomise de manire vidente la bande passante. Les mises jour sont seulement incrmentielles. OSPF a une meilleure convergence que RIP parce que les changements de routage sont propags instantanment et non priodiquement de manire incrmentielle grce aux relations de voisinage entretenues. OSPF est meilleur pour la rpartition de charge (load balancing). Le choix du meilleur chemin est bas sur le cot (la bande passante inverse). Cette mtrique peut tre dfinie manuellement sur les interfaces. OSPF permet une dfinition logique des rseaux o les routeurs peuvent tre rpartis en zones (area). Cela vitera une explosion de mises jour d'tats de lien sur l'ensemble du rseau. On peut galement ainsi fournir un mcanisme d'agrgation des routes et stopper la propagation inutile des informations de sousrseaux existants. Il permet l'authentification de routage par l'utilisation de diffrentes mthodes d'identification avec mots de passe. Il permet le transfert et l'tiquetage des routes extrieures injectes dans un Systme Autonome (AS) pour permettre de les maintenir par des EGPs comme BGP.

1.2. Les lments cls dOSPF.

Les routeurs OSPF entretiennent une relation oriente connexion avec les routeurs d'un mme segment physique. Dans la terminologie OSPF, on parlera d'adjacency, en franais, d'adjacence ou de contigut. Au lieu d'envoyer des mises jour entire lors d'un changement topologique, OSPF envoie des mises jour incrmentielles. OSPF nest pas limit par une segmentation dpendante de l'adressage IP ou des sous-rseaux, il utilise la notion d'area pour dsigner un groupe de routeurs. OSPF supporte entirement les possibilits du VLSM et de la summarization manuelle des routes. Grce la possibilit de donner des rles particuliers aux routeurs, la communication inter-routeurs est efficace. Bien qu'OSPF permette une communication inter-area, il reste un protocole de routage intrieur (IGP).

1.3. Que signifie Link-States / Etats de liens ?


OSPF est un protocole tat de lien. Nous pouvons penser qu'un lien est l'interface dun routeur. L'tat d'un lien est une description de cette interface et de la relation qu'elle entretient avec ses routeurs voisins. Une description de cette interface pourrait comprendre, par exemple, son adresse IP, le masque, le type de rseau connect, les routeurs connects, etc. L'ensemble de ces tats de liens forme la link-state database. La link-state database ou, dite aussi, topology table, est identique sur tous les routeurs dune zone.

OSPF 2. Hirarchie
Une caractristique principale d'OSPF est de supporter des inter-rseaux trs larges. Elle est possible grce au regroupement des routeurs dans des entits logiques appeles area ou zone.

La communication inter-zones ne laisse passer l'change d'informations minimales de routage uniquement pour que les zones restent connectes. Il en rsulte que tous les efforts de calcul de routes ne s'oprent qu'au sein d'une mme zone. Les routeurs d'une zone ne sont pas affects par les changements intervenus dans une autre zone. Dans un contexte o OSPF demande beaucoup de ressources en CPU et en mmoire, cette notion de conception est trs importante.

Un routeur OSPF peut prendre en charge trois types d'oprations : opration dans une zone, connexion inter-zone et connexion entre systmes autonomes (AS). Comme vu plus haut, pour remplir ces tches, un routeur doit remplir un rle et une responsabilit particulire qui dpend de l'hirarchie OSPF tablie.

Internal Router (IR) Un IR remplit des fonctions au sein d'une zone uniquement. Sa fonction primordiale est d'entretenir jour sa base de donne avec tous les rseaux de sa zone, sa base de donne d'tats de lien (link-state database), qui est identique sur chaque IR. Il renvoie toute information aux autres routeurs de sa zone, le routage ou l'inondation (flooding) des autres zones requiert l'intervention d'un Area Border Router (ABR). Backbone Router (BR) Une des rgles de conception OSPF est que chaque zone dans l'interrseau doit tre connecte une seule zone, la zone 0 ou la backbone area. La plupart des BR ont une interface connecte la backbone area et une ou plusieurs interfaces d'autres zones. Area Border Router (ABR) Un ABR connecte deux ou plusieurs zones. Un ABR possde autant de bases de donnes d'tats de lien qu'il y a d'interfaces connectes des zones diffrentes. Chacune des ces bases de donnes contiennent

la topologie entire de la zone connecte peut donc tre summarize, c'est--dire agrge en une seule route IP. Ces informations peuvent tre transmises la zone de backbone pour la distribution. Un lment cl est qu'un ABR est l'endroit o l'agrgation doit tre configure pour rduire la taille des mises jour de routage qui doivent tre envoyes ailleurs. Donc quand on parle des capacits d'OSPF de minimiser les mises jour de routage, on peut directement penser au rle rempli par les ABR. Autonomous System Boundary Router (ASBR) Il faut bien retenir qu'OSPF est un IGP (Interior Gateway Protocol), autrement dit quil devra tre connect au reste de l'Internet par d'autres AS. Ce type de routeur fera en quelque sorte office de passerelle vers un ou plusieurs AS. L'change dinformation entre un AS OSPF et d'autres AS est le rle dun ASBR et les informations quil reoit de l'extrieur seront redistribues au sein de l'AS OSPF.

OSPF 3. Le fonctionnement d'OSPF dans une zone


Cette section traite du fonctionnement dOSPF au sein d'une seule zone et de la manire dont la topology table ou la link-state database est contruite. La table de routage est constitue partir de cette base de donne. Ce rsultat est obtenu grce l'application de l'algorithme de routage SPF. En voici les diffrentes tapes.

1. D'abord, un routeur doit trouver ses voisins. Pour ce faire, il utilise des paquets Hello. Ds son initialisation ou la suite dun changement de routage, un routeur va gnrer un link-state advertisement (LSA). Cette annonce va reprsenter la collection de tous les tats de liens de voisinage du routeur. 2. Tous les routeurs vont s'changer ces tats de liens par inondation (flooding). Chaque routeur qui reoit des mises jour d'tat de lien (link-state update) en gardera une copie dans sa link-state database et propagera la mise jour auprs des autres routeurs. 3. Aprs que la base de donnes de chaque routeur soit complte, le routeur va calculer l'arbre du chemin le plus court (Shortest Path Tree) vers toutes les destinations avec l'algorithme Dijkstra. Il construira alors la table de routage (routing table), appele aussi forwarding database, en choisissant les meilleures routes. 4. Sil n'y a pas de modification topologique, OSPF sera trs discret. Par contre en cas de changement, il y aura change d'informations par des paquets d'tat de lien et l'algorithme Dijkstra recalculera les chemins les plus courts.

OSPF 4. L'algorithme du chemin le plus court


L'algorithme du chemin le plus court est celui qui est utilis par OSPF pour dterminer le meilleur chemin vers un rseau de destination.

Avec cet algorithme, le meilleur chemin est celui qui a le cot le moins cher, le plus faible. Il a t dcouvert par E. W. Dijkstra (1930-2002), un mathmaticien nerlandais (http://www.cs.utexas.edu/users/EWD/) . Il a t publi en 1959 et son utilisation dpasse largement le monde des rseaux. L'algorithme considre un rseau de noeuds connects par des liens point point. Chaque lien a un cot. Chaque noeud a un nom et possde une base de donne complte de tous les liens et a donc ainsi une connaissance complte de la topologie physique. Tous les routeurs de la base de donne d'tat de lien sont identiques. L'algorithme du chemin le plus court va alors calculer une topologie sans boucle en utilisant le noeud en question comme point de dpart et en examinant son tour les informations des ses noeuds contigus. On trouvera plus d'information sur l'algorithme de Dijkstra sous ce lien http://fr.wikipedia.org/wiki/Algorithme_de_Dijkstra.

OSPF 5. Les tats OSPF, la construction des adjacences


Avant de s'changer des informations de routage, les routeurs OSPF tablissent des relations ou des tats avec leurs voisins afin de partager efficacement les informations d'tats de lien.

Les protocoles vecteur de distance comme RIP utilisent aveuglment le broadcast ou le multicast en envoyant par chaque interface leur table de routage complte toutes les 30 secondes (par dfaut). A contrario, les routeurs OSPF comptent 5 diffrents types de paquets pour identifier les voisins et mettre jour les informations de routage tat de lien.

Type de paquet OSPF

Description Etablit et maintient les informations de contigut Type 1 Hello (adjacency information) avec les voisins. Type 2 Database Dcrit le contenu des bases de donnes d'tat de liens Description packet (DBD) (link-state database) des routeurs OSPF. Demande des lments spcifiques des bases de Type 3 Link-state request donnes d'tat de liens (link-state database) des (LSR) routeurs OSPF. Type 4 Link-state update Transporte les link-sate advertisements, les LSA, aux (LSU) routeurs voisins. Type 5 Link-state Accuss de rception des LSA des voisins. acknowledgment (LSAck) Ces cinq types de paquets font en sorte qu'OSPF soit capable de communications complexes et sophistiques. Les interfaces OSPF peuvent rencontrer sept tats et correspondent deux moments : dune part, la dcouverte des voisins et, dautre part, la dcouverte des routes. En voici brivement le descriptif.

OSPF 5.A. dcouverte des voisins


Les trois premires tapes visent dcouvrir le voisin. 1. Down State Dans cet tat, il n'y a pas d'change d'informations entre les voisins. OSPF attend le prochain tat qui est l'Init State. 2. Init State Les routeurs OSPF envoient des paquet Type 1 (Hello) a des intervalles rguliers (d'habitude 10 secondes) pour tablir une relation avec les routeurs voisins. Quand une interface reoit le premier paquet Hello, le routeur entre en Init State, ce qui signifie que le routeur sait qu'il y a un voisin en face et il attend d'entrer en relation avec lui dans la prochaine tape.

Il y a deux catgories de relations : Two-Way et Full Adjacency. Un routeur doit de toute faon recevoir un Hello d'un voisin avant d'tablir une relation. 3. Two-Way State Utilisant des paquets Hello, chaque routeur OSPF tente d'tablir un Two-Way State ou une communication bidirectionnelle avec chaque voisin qui est dans le mme rseau IP. En d'autres termes, les paquets Hello incluent la liste des voisins OSPF connus de l'envoyeur. Un routeur entre en Two-Way State quand il se voit dans le Hello d'un voisin.

Le Two-Way State est la relation la plus basique qu'un voisin OSPF peut tablir, mais dans cette relation aucune information de routage n'est partage. Pour apprendre l'tat des liens des autres routeurs et construire une table de routage, chaque routeur doit former une contigut entire (adjacency). Une adjacency est une relation avance entre des routeurs OSPF qui implique une srie d'tats progressifs qui ne comptent pas seulement des paquet Hello mais aussi les quatre autres types de paquets. Les routeurs qui tentent de devenir contigus ou adjacents avec un autre changent des informations de routage avant que toute adjacency soit entirement tablie. La premire tape est le ExStart State.

OSPF 5.B. Dcouverte des routes


Toute interface OSPF "non problmatique" est au moins en tat "Two Way". Selon les circonstances, elles pourront atteindre l'tat "Full Adjacency" en passant par d'autres tapes intermdiaires. Les connatre est trs utile pour le diagnostic. 4. ExStart State

Techniquement, quand un routeur entre en Exstart State, la conversation est caractrise par une contigut (adjacency) mais les routeurs ne sont pas encore entirement adjacents. L'ExStart est tabli en utilisant des paquets de Type 2 database description (DBD). Les deux routeurs voisins utilisent ces paquets pour ngocier qui sera le matre et qui sera l' esclave dans la relation.

Le routeur avec la plus haute OSPF ID gagnera et deviendra matre . Quand ces rles de matre et esclave sont dfinis, l'tat Exchange intervient et l'envoi d'informations de routage peut commencer.
5. Exchange State

Dans cet tat, les routeurs voisins vont utiliser des Type 2 DBD packets pour s'envoyer l'un l'autre des informations. En d'autres mots, Les routeurs dcrivent leur link-state database aux autres. Les routeurs comparent ce qu'ils apprennent avec ce qu'ils connaissent dj de leur link-state database. S'ils apprennent des informations sur des liens qu'ils ne possdent pas, ils demandent un mise jour complte leur voisin. Les informations de routage compltes sont change dans le Loading State.
6. Loading State

Aprs que la base de donnes ait t dcrite chaque routeur, ils peuvent demander des informations plus compltes en utilisant des Type 3 packets, appels link-state requests (LSRs). Quand un routeur reoit un LSR, il rpond avec une mise jour en utilisant un Type 4 link-state update (LSU) packet. Ces paquets Type 4 LSU contiennent les link-sate advertisements (LSAs) qui sont le coeur du protocole de routage tat de lien. Les LSU sont accuss de rception par des LSAcks, link-state acknowledgments.
7. Full Adjacency

Lorsque le Loading State est complet, les routeurs sont entirement adjacents. Chaque routeur garde une liste de ses routeurs voisins appele adjacency database. Elle ne doit pas tre confondue avec la link-state database ou la forwarding database.

OSPF 6. Topologies OSPF


Une relation de voisinage est ncessaire pour que les routeurs OSPF partagent des informations de routage. Un routeur va tenter de devenir adjacent (contigu) avec au minimum un autre routeur d'un rseau IP auquel il est connect. Certains routeurs essaient de devenir adjacents chaque routeur voisin. D'autres essaient dtre adjacents seulement un ou deux routeurs. Tout ceci est dtermin par le type de rseau auxquels ils sont connects. Lorsqu'une adjacence est forme entre deux voisins, les informations tat de lien sont alors changes.

Topologie Caractristiques Broadcast Multiacces Ethernet, FDDI, Token Ring NBMA (Non Broadcast MA) Frame Relay, X.25, SMDS Point-to-Point Circuit la demande

Election DR Oui Oui

PPP, HDLC Non Configur par un administrateur Non

Les interfaces OSPF reconnaissent automatiquement deux types de rseaux :


Broadcast multi-access, comme Ethernet Point-to-point networks

Contrairement aux rseaux NBMA et Circuits la demande, il n'y a pas besoin de les configurer. Notions de DR et BDR.

Dans un rseau multi-accs, beaucoup de routeurs peuvent tre connects. Si chaque routeur doit tablir une adjacence complte (Full Adjacency) avec tous les autres routeurs et changer des informations tat de lien avec chaque voisin, les machines pourraient subir des surcharges. Sil y a 5 routeurs, 10 relations d'adjacence seront ncessaires et 10 tats de lien envoys. Sil y a 10 routeurs, 45 adjacences seront ncessaires. En gnral, pour n routeurs, n*(n-1)/2 adjacences seront formes. La solution cette surcharge est l'organisation de l'lection dun routeur dsign (designated router, DR). Ce routeur devient adjacent tous les autres routeurs dans un segment de broadcast. Tous les autres routeurs sur le mme segment envoient leur informations d'tat de lien au DR. Le DR agit comme porte-parole pour le segment. En utilisant les exemples chiffrs exposs ci-avant, seulement 5 et 10 ensembles de link-state seront envoys. Le DR se chargera de renvoyer les informations d'tat de lien tous les autres routeurs du segment avec l'adresse multicast 224.0.0.5. Malgr tout le bnfice en efficacit de cette procdure d'lection, il y a un dsavantage : le DR sera un point unique de rupture. Un second routeur est aussi lu comme routeur dsign de sauvegarde (backup designated routeur, BDR). Pour tre sr que les DR et BDR voient l'tat de lien de tous les routeurs sur le segment, l'adresse multicast 224.0.0.6 est utilise pour TOUS les routeurs dsigns (DR). Les autres routeurs qui ne sont ni DR ni BDR sont appels DROTHER et s'arrtent l'tat Two Way, sans change d'informations de routage. Sur un rseau point--point, seuls deux points existent. Il n'y a pas d'lection de DR ou BDR. Chaque routeur devient entirement adjacent avec l'autre.

OSPF 7. Vue d'ensemble du protocole HELLO


Quand un routeur commence un processus de routage OSPF sur une interface, il envoie un paquet Hello et continue envoyer ces paquets intervalles rguliers. La rgle qui gouverne l'change des paquets Hello OSPF est appele le protocole Hello.

A la couche 3 du modle OSI, les paquets Hello sont adresss en multicast 224.0.0.5. Cette adresse est tous les routeurs OSPF . Les routeurs OSPF utilisent ces paquets Hello pour initier de nouvelles adjacences et pour s'assurer que les routeurs voisins sont fonctionnels. Les paquets Hello sont envoys toutes les 10 secondes par dfaut sur un rseau multiaccs et point--point et toutes les 30 secondes sur un NBMA. Dans un rseau multiaccs, le protocole Hello lit un DR et un BDR. Bien qu'un paquet Hello soit petit (moins de 50 bytes), il est en fait len-tte dun paquet OSPF qui prend la valeur de 1 dans le champ type.

Remarquons ici particulirement le champ Router ID dont nous avons parl plus haut et dont nous reparlerons encore. Ce champ est utilis pour identifier de manire unique un routeur OSPF. Il prendra la valeur de la plus haute adresse IP du routeur (32 bits). Puisqu'une adresse IP est cense tre unique dans un rseau, elle convient bien pour remplir ce champ. Aussi, parce qu'un routeur supporte de multiples adresses IP assignes pour l'interconnexion des rseaux, on utilisera volontiers l'adresse IP d'interfaces de loopback (virtuelles) qui ne participeront pas ncessairement au routage. Leur avantage est aussi dans le fait que ces interfaces ne tombent jamais (en fonction dune dpendance un lien physique). Notons enfin que les IOS Cisco prendront toujours en compte l'IP de linterface de loopback quand bien mme des interfaces physiques auraient une IP plus leve. Par contre, en absence d'interface de loopback, sur du matriel Cisco, l'IP la plus leve d'une interface physique sera prise.

Un Paquet Hello transporte des informations que tous les voisins doivent agrer avant qu'une adjacence soit forme et avant que les informations d'tat de lien soient changes.

Notons le champ Rtr Prio , Router Priority qui intervient dans la dsignation des rles entre routeurs OSPF.

OSPF 8. Oprations OSPF


Il est maintenant ncessaire de reprendre l'ensemble des concepts vu dans les sections prcdentes et d'envisager globalement les oprations d'OSPF au sein d'une zone. Etape 1 : Etablir ladjacence des routeurs.

Cette tape correspond un des 7 tats dcrits dans la section 5, Les tats OSPF. Dans des conditions de configuration correcte, les routeurs iront au moins jusqu'au Two-Way State. Si la liaison est point--point, les routeurs voisins deviendront adjacents. Dans le cas dun rseau multiaccs, les routeurs vont entrer dans un processus dlection pour devenir DR, BDR ou aucun des deux (DROTHER). Si une lection est ncessaire, autrement dit si les interfaces partagent un rseau multiaccs, les routeurs entrent dans l'tape 2 : Election dun DR et dun BDR. Sinon, les routeur entrent dans l'tat ExStart (cf. section 5.A) dcrit dans l'tape 3 : Dcouverte des routes.
Etape 2 : Election dun DR et dun BDR.

Parce que les rseaux multi-accs peuvent comporter plus de deux routeurs, OSPF lit un DR pour tre le point central des mises jour link-state. Le rle du DR est critique. Pour

cette raison, un BDR est lu comme remplaant immdiat du DR. Cette lection est fonction dun type de rseau (une interface LAN dans un rseau multiaccs). Cela signifie qu'un routeur qui a trois interfaces LAN OSPF pourrait prendre trois rles OSPF la fois (voir Election DR-BDR). Le processus lectoral du DR ou du BDR peut tre truqu Ainsi, les paquets Hello contiennent un champ Router Priority (8 bits) qui pourra dterminer une lection. Le routeur avec la plus haute priorit par rapport ses routeurs voisins gagnera l'lection DR. Le second avec la plus haute priorit gagnera l'lection BDR. Une fois que l'lection est termine, les rles sont dtermins jusquau moment o l'un est en panne, mme si de nouveaux routeurs s'ajoutent au rseau avec une plus haute priorit. Les paquets Hello informent les nouveaux venus de l'existence et de l'identification des DR et BDR. Par dfaut, tous les routeurs OSPF ont la mme priorit dune valeur de 1. Une priorit prendra une valeur de 8 bits, de 0 255. Elle est assigne sur une interface, le cas chant, manuellement. Une priorit de 0 assurera un routeur quil ne gagnera pas une lection sur une interface tandis qu'une priorit de 255 assurera sa victoire. Le champ Router ID est utilis pour dpartager des routeurs qui auraient ventuellement la mme priorit. On a vu plus haut que ce champ prendra la valeur de l'adresse IP la plus leve sur le routeur, avec sur les IOS Cisco, une prfrence absolue pour les interfaces de loopback. Quand une lection est finie et qu'une communication bidirectionnelle est tablie, les routeurs sont prts changer des informations de routage avec les routeurs adjacents et construire leur base de donnes de liens.
Etape 3 : Dcouverte des routes.

Les routeurs sont maintenant prts sengager dans le processus Exchange dcrit plus haut. Dans ltat ExStart, les routeurs vont dterminer qui commence envoyer les informations. Ici, le principe est dtablir une relation Matre/Esclave entre deux routeurs. Le routeur qui dclare la plus haute ID (la priorit nintervient plus) commencera et orchestrera lchange en tant que matre. Une fois que ces rles sont tablis, les routeurs entrent dans ltat Exchange proprement dit. Le matre mne lesclave un change de paquets Database Description (DBDs) qui dcrivent la base de donnes de liens de chaque routeur dans les dtails. Ces descriptions comportent le type dtat de lien, ladresse du routeur qui fait la publicit, le cot du lien et un numro de squence. Les routeurs confirment la rception des DBDs en envoyant des paquets LSAck (Type 5), qui contiennent une correspondance aux numros de squences envoys dans les DBDs. Chacun compare les informations quil reoit avec ce quil sait dj. Si des DBDs annoncent des nouveaux tats de lien ou des mises jours dtat de lien, le routeur qui les reoit entre alors en tat Loading et envoie des paquets LSR (Type 3) propos des nouvelles informations. En rponse aux paquets LSR, lautre enverra des informations compltes dtat de lien des paquets LSUs (Type 4). En fait, les LSUs transportent des LSAs.

Quand ltat Loading est termin, les routeurs entrent en Full Adjacency. Il faudra quils entrent dans cet tat dadjacence totale avant de crer leur table de routage et de router le trafic. A ce moment, les routeurs dune mme zone ont une base de donnes dtat de lien identique.
Etape 4 : Slection des routes appropries.

Aprs quun routeur ait complt sa link-state database, il peut crer sa table de routage et commencer transfrer le trafic. Comme mentionn plus haut, OSPF utilise comme mtrique le cot (Cost) pour dterminer le meilleur chemin vers une destination. La valeur par dfaut du cot dpend de la valeur de la bande passante dun lien. En gnral, plus la bande passante diminue plus le cot est lev. Voici les valeurs par dfaut du cot par rapport au type de mdia sur les IOS Cisco :

Medium Cot Ligne srie 56kbps 1785 T1 (ligne srie 1544kbps) 64 E1 (ligne srie 2048kbps) 48 Token Ring 4 Mbps 25 Ethernet 10 Token Ring 16Mbps 6 Fast Ethernet 100Mbps, FDDI 1 O la formule est : 108 / bandwidth = 100 000 000 /bandwidth Pour calculer le cot le plus faible vers une destination, le routeur excutera lalgorithme SPF. Pour simplifier, lalgorithme SPF fait la somme des cots partir de lui-mme (root) vers tous les rseaux de destination. Sil y a plusieurs chemins possibles vers une destination, celle qui a le cot le plus faible est choisie. Par dfaut, OSPF inscrit quatre routes quivalentes dans sa table de routage pour permettre la rpartition de charge (Load Balancing). Il arrive que certaines lignes, comme des lignes srielles, se montent ou se descendent rapidement (flapping). Le flapping provoquera lenvoi de LSUs qui pousseront les routeurs destinataires r-excuter lalgorithme SPF pour recalculer les routes. Le flapping prolong peut toucher svrement les performances des machines. Les calculs SPF rpts prendront beaucoup de ressources en CPU. Aussi, elles pourraient empcher la base de donnes de lien de converger. Pour combattre ce problme l IOS Cisco utilise un compteur de retenue SPF (SPF hold timer). Aprs avoir reu un paquet LSU, le compteur ne commencera le calcul SPF quaprs un certain laps de temps. La commande timers spf active lajustement de ce temps qui est de 10 secondes par dfaut.

Etape 5 : Maintien des informations de routage.

Quand un routeur a install ses routes dans la table de routage, il doit maintenir minutieusement ses informations de routage. Lorsquil y a changement dun tat de lien, les routeurs OSPF utilisent un processus dinondation (flooding) pour avertir les autres routeurs. Lintervalle de mort (dead interval) du protocole Hello fournit un mcanisme simple pour dclarer un lien rompu. Quand une interface na plus de nouvelles dun lien aprs cette priode (habituellement 40 secondes), le lien est rput down. (au sens OSPF cf. flooding) Le routeur qui a constat le lien down envoie un LSU avec les nouvelles information dtat de lien. Oui, mais qui ?

Sur un rseau point--point, il ny ni DR ni BDR. Les nouvelles informations dtat de lien sont envoys sur ladresse Multicast 224.0.0.5. Tous les routeurs OSPF coutent cette adresse. Sur un rseau multi-accs, un DR et un BDR existent et maintiennent les adjacences avec tous les autres routeurs du rseau. Si un DR ou un BDR a besoin denvoyer une mise jour dtat de lien, il le fera destination de ladresse 224.0.0.5. Quoi quil en soit, les autres routeurs du rseau sont adjacents uniquement au DR ou au BDR et nenvoient des LSUs qu ceux-ci. Cest pour cette raison que les DR et BDR ont leur propre adresse de destination multicast 224.0.0.6. Les routeurs qui ne sont pas DR/BDR envoient leurs LSUs sur 224.0.0.6, autrement dit, tous les routeurs DR/BDR .

Quand un DR reoit et accuse rception dun LSU destin 224.0.0.6, il inonde de LSU tous les autres routeurs du rseau sur 224.0.0.5. Chaque routeur accusera rception du LSU avec un LSAck. Si un routeur OSPF est connect un autre rseau, il inonde de LSU les autres rseaux en transfrant le LSU au DR dun rseau multi-accs ou au routeur adjacent sur un rseau P2P. Le DR, son ton tour, multicaste le LSU ses routeurs non DR/BDR de son propre rseau Ds quun routeur reoit un LSU, il met jour sa link-state database et met en uvre lalgorithme SPF pour calculer les nouvelles routes inscrire dans sa table de routage. Aprs lexpiration du compteur SPF, la route est inscrite dans la table de routage. Sur les routeurs Cisco, une vieille route est toujours utilise pendant que lalgorithme SPF calcule la nouvelle route et jusquau moment o le calcul sera fini. Il est important de remarquer que mme si aucun changement topologique nintervient, les informations de routage OSPF sont rgulirement rafrachies. Chaque entre LSA a sa propre dure de vie. Le compteur a une dure par dfaut de 30 minutes. Aprs que sa dure de vie soit coule, le routeur lorigine de cette information renvoie un LSU au rseau pour vrifier que le lien est toujours actif.

OSPF et Virtual Links


16 avril 2011 One Comment Par Remy Le protocole de routage dynamique OSPF ncessite la cration dune topologie correctement hirarchise et rpartie entre diffrentes areas (zones) permettant doptimiser les changes dinformations de routage entre les diffrents routeurs participant au protocole. Comme vous le savez, trs probablement, toute topologie OSPF ncessite a minima la prsence de larea 0 appelle Backbone Area . Le protocole OSPF impose par ailleurs que toute autre area soit limitrophe cette Backbone Area pour fonctionner.

Concept de virtual link en OSPF Dans lexemple prsent ci-dessus, lAREA 20 a du tre rajout la topologie OSPF existante pour une quelconque raison. Il est donc ncessaire de procder au rattachement la backbone area. Les virtual links permettent deffectuer cette opration, il faut toutefois prendre en considration que ceux-ci sont plus de lordre du dpannage quune relle fonctionnalit. Il faudra donc, dans la mesure du possible, limiter leur utilisation et respecter le fonctionnement natif dOSPF en positionnant le routeur ABR lidentique de R1 qui interconnecte lAREA 0 et lAREA 10. Au niveau de la terminologie, lAREA 10 est appele area de transit. Il faut par ailleurs noter que cette area ne peut pas tre une area stub pour que le virtual link soit oprationnel. Dans notre topologie, chaque routeur possde comme router-id son numro de routeur sur chaque octet (typiquement R1 a pour Router ID 1.1.1.1, R2 2.2.2.2 etc ). La configuration seffectue simplement de la faon suivante : Sur R2 : R2(config)#router ospf 1 R2(config-router)#area 10 virtual-link 3.3.3.3

Sur R3 : R2(config)#router ospf 1 R2(config-router)#area 10 virtual-link 2.2.2.2 Et voil, le virtual link va ensuite monter pour permettre aux deux routeurs de former ladjacence adquate. Le fonctionnement normal dOSPF veut que les paquets sont changs en multicast entre les diffrents routeurs. Dans ce cas prcis, la communication se fait en unicast. Dans le cas o un quipement ferait du filtrage entre les deux extrmits du virtual link, il faudra penser autoriser le protocole OSPF (IP Protocol n 89) transiter pour que cela fonctionne. Ltablissement du virtual link permet R3 de jouer le rle dABR grce sa nouvelle connexion la backbone area et de diffuser les LSA de type 3 (summary) pour les rseaux quil connait dans les diffrentes AREA. Il est possible de vrifier ltat du virtual link par la commande suivante : R3#show ip ospf virtual-links Virtual Link OSPF_VL1 to router 2.2.2.2 is up Run as demand circuit DoNotAge LSA allowed. Transit area 10, via interface Serial0/0, Cost of using 64 Transmit Delay is 1 sec, State POINT_TO_POINT, Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5 Hello due in 00:00:03 Adjacency State FULL (Hello suppressed) Index 1/2, retransmission queue length 0, number of retransmission 0 First 00(0)/00(0) Next 00(0)/00(0) Last retransmission scan length is 0, maximum is 0 Last retransmission scan time is 0 msec, maximum is 0 msec Enfin, nous pouvons vrifier sur R1 que les routes sont correctement diffuses vers le subnet attach larea 20 : R1#show ip route Codes: C connected, S static, R RIP, M mobile, B BGP D EIGRP, EX EIGRP external, O OSPF, IA OSPF inter area N1 OSPF NSSA external type 1, N2 OSPF NSSA external type 2 E1 OSPF external type 1, E2 OSPF external type 2 i IS-IS, su IS-IS summary, L1 IS-IS level-1, L2 IS-IS level-2 ia IS-IS inter area, * candidate default, U per-user static route o ODR, P periodic downloaded static route Gateway of last resort is not set 172.16.0.0/32 is subnetted, 1 subnets O IA 172.16.20.1 [110/129] via 10.0.0.2, 00:10:00, Serial0/0 10.0.0.0/30 is subnetted, 2 subnets

O IA 10.10.10.0 [110/128] via 10.0.0.2, 00:10:00, Serial0/0 C 10.0.0.0 is directly connected, Serial0/0 Ainsi que dans la database de R1 :

R1#show ip ospf database [...] Summary Net Link States (Area 0) Link ID ADV Router Age Seq# Checksum 10.10.10.0 2.2.2.2 744 080000001 0005485 10.10.10.0 3.3.3.3 7 (DNA) 080000001 0x00369F 172.16.20.1 3.3.3.3 7 (DNA) 080000001 0x00CC91