Aller au contenu principal

7. Bringing Up Adjacencies (Établissement des adjacences)

Ce chapitre décrit en détail comment les routeurs OSPF établissent et maintiennent les relations d'adjacence. L'adjacence est au cœur du protocole OSPF et détermine quels routeurs synchroniseront leur base de données d'état de lien.

Aperçu du chapitre (Chapter Overview)

L'établissement d'adjacence est un processus en plusieurs étapes impliquant :

  • Découverte de voisins
  • Confirmation de communication bidirectionnelle
  • Négociation de la relation maître/esclave
  • Synchronisation de base de données
  • Atteinte de l'état d'adjacence complète

7.1 Relation de voisinage vs Adjacence (Neighbor vs Adjacency)

Distinction conceptuelle

ConceptDéfinitionÉtat
Voisin (Neighbor)Routeur directement connecté découvert via Hello2-Way ou plus
Adjacence (Adjacency)Voisin synchronisant LSDBÉtat Full

7.2 Machine à états de voisin (Neighbor State Machine)

Diagramme de transition d'état

Down → Init → 2-Way → ExStart → Exchange → Loading → Full

(pas d'adjacence)

Détails des états

1. Down (Inactif)

  • État initial
  • Aucun paquet Hello reçu
  • Voisin inaccessible

2. Init (Initialisation)

  • Paquet Hello reçu du voisin
  • Hello ne liste pas ce routeur
  • Communication unidirectionnelle

3. 2-Way (Communication bidirectionnelle)

  • Hello reçu contient l'ID de ce routeur
  • Communication bidirectionnelle établie
  • Point de décision : établir ou non l'adjacence

4. ExStart (Début d'échange)

  • Négociation de la relation maître/esclave
  • Le plus grand Router ID devient Master
  • Détermine le numéro de séquence DD initial

5. Exchange (Description de base de données)

  • Échange de paquets Database Description (DD)
  • Décrit le contenu de la LSDB locale
  • Seulement les en-têtes LSA, pas les LSA complets

6. Loading (Chargement)

  • Demande des LSA manquants ou expirés
  • Envoie Link State Request (LSR)
  • Reçoit Link State Update (LSU)

7. Full (Adjacence complète)

  • Base de données complètement synchronisée
  • État opérationnel normal
  • Calcul de route possible

7.3 Décision de formation d'adjacence (Adjacency Formation Decision)

Matrice de décision

Type de réseauAvec qui établir adjacenceRaison
Point-à-pointTous les voisinsUn seul voisin
Point-à-multipointTous les voisinsTraité comme plusieurs point-à-point
BroadcastDR et BDRRéduire le nombre d'adjacences
NBMADR et BDRRéduire le nombre d'adjacences

7.4 Élection DR et BDR (DR/BDR Election)

Algorithme d'élection

Moment de l'élection

  • L'état de l'interface passe de Waiting à DR ou DROther
  • Le paquet Hello déclenche un recalcul

Règles d'élection

  1. Comparaison de priorité

    • Router Priority = 0 : ne participe pas à l'élection
    • Plus la priorité est élevée, plus prioritaire
  2. Comparaison de Router ID

    • En cas de priorité identique, le Router ID le plus grand l'emporte
  3. Élection en deux phases

    • Phase 1 : Élire le BDR
    • Phase 2 : Élire le DR

7.5 Paquets Database Description (Database Description Packets)

Format de paquet DD

Champs d'en-tête

ChampTailleDescription
Interface MTU16 bitsTaille MTU de l'interface
Options8 bitsCapacités optionnelles
Flags8 bitsDrapeaux I/M/MS
DD Sequence Number32 bitsNuméro de séquence

Description des bits de drapeau

  • I (Init) : Premier paquet DD
  • M (More) : Plus de paquets DD à suivre
  • MS (Master/Slave) : 1=Master, 0=Slave

Moment de génération LSR

Conditions de déclenchement

  • État Exchange : le voisin a des LSA plus récents
  • État Loading : continuer à demander les LSA manquants
  • État Full : demander occasionnellement les LSA manquants

Objectif des LSU

Scénarios d'utilisation

  1. Réponse à LSR (unicast)
  2. Inondation de nouveaux LSA (multicast/broadcast)
  3. Rafraîchissement périodique de LSA

Moment de confirmation

Confirmation différée

  • Confirmation en lot après réception de plusieurs LSA
  • Délai généralement < 1 seconde
  • Réduit le nombre de paquets

Confirmation immédiate

  • Réception de LSA en double
  • Réception d'une instance LSA plus ancienne

7.9 Maintenance d'adjacence (Adjacency Maintenance)

Rôle du protocole Hello

Surveillance continue

  • Envoie périodiquement des paquets Hello
  • Surveille les Hello des voisins
  • Le voisin expire si aucun Hello dans Dead Interval

Intervalle Hello

  • Point-à-point/Broadcast : 10 secondes
  • NBMA : 30 secondes

Intervalle Dead

  • Par défaut : Hello Interval × 4
  • Point-à-point/Broadcast : 40 secondes
  • NBMA : 120 secondes

7.10 Exemples de formation d'adjacence (Adjacency Formation Examples)

Exemple 1 : Lien point-à-point

Routeur A ←────────→ Routeur B

Étape 1 : Les deux envoient Hello
A → B : Hello (liste de voisins vide)
B → A : Hello (liste de voisins vide)

Étape 2 : Confirmer communication bidirectionnelle
A → B : Hello (liste de voisins contient B)
B → A : Hello (liste de voisins contient A)
État : 2-Way

Étape 3 : Négocier maître/esclave
A → B : DD (I, M, MS=1, Seq=X)
B → A : DD (I, M, MS=0, Seq=X)
A devient Master

Étape 4 : Échanger descriptions de base de données
A → B : DD (M, MS=1, Seq=X+1) [Liste d'en-têtes LSA]
B → A : DD (M, MS=0, Seq=X+1) [Liste d'en-têtes LSA]
...continuer jusqu'à ce que l'échange soit terminé

Étape 5 : Demander les LSA manquants
A → B : LSR [demande LSA 1, 2, 3]
B → A : LSU [LSA 1, 2, 3]
A → B : LSAck [confirme 1, 2, 3]

Étape 6 : Atteindre l'état Full
État : Full
Calcul de route possible

Résumé technique (Technical Summary)

Mécanismes clés

  1. Piloté par machine à états

    • Transitions d'état claires
    • 7 états de voisin
    • Comportement piloté par événements
  2. Synchronisation fiable

    • Mécanisme de numéro de séquence
    • Confirmation et retransmission
    • Coordination maître/esclave
  3. Conception optimisée

    • DR/BDR réduisent les adjacences
    • Confirmation en lot réduit le trafic
    • Synchronisation de base de données par étapes

Références (References)


Note : L'établissement d'adjacence est la base du protocole OSPF. Comprendre les transitions d'état et l'ordre d'échange de paquets est crucial pour le dépannage.