Le protocole OSPF (Open Shortest Path First) est l’un des protocoles de routage dynamique les plus utilisés dans les environnements professionnels. Basé sur l’algorithme de Dijkstra, il permet à chaque routeur de construire une vision complète de la topologie réseau pour calculer les meilleurs chemins.
Cet article présente le fonctionnement global d’OSPF, puis s’attarde sur une phase fondamentale mais souvent mal comprise : la phase EXSTART, au cœur du processus d’établissement d’une adjacence stable.
🔹 1. Définition et fonctionnement général d’OSPF
OSPF est un protocole Link-State, ce qui signifie qu’il repose sur :
- l’échange d’informations d’état de liens (LSA),
- la synchronisation d’une base de données (LSDB),
- un calcul de route basé sur SPF (Shortest Path First).
Chaque routeur OSPF :
- Émet des paquets Hello pour découvrir ses voisins
- Établit une relation de voisinage
- Forme des adjacences complètes avec certains voisins
- Échange les informations sous forme de LSA
- Met Ă jour sa LSDB et recalcul son SPF
OSPF supporte également :
- la segmentation logique en aires,
- l’élection de DR/BDR sur les réseaux multi-accès,
- plusieurs types de réseaux (Broadcast, Point-to-Point, NBMA,liens virtuels et point-to-multipoint).
🔹 2. Les états de voisinage OSPF (Neighbor States)
Pour qu’une adjacency soit formée, deux routeurs OSPF traversent plusieurs états :
- Down → Aucun Hello reçu
- Init → Hello reçu, mais communication unidirectionnelle
- Two-Way → Hello mutuel, relation bidirectionnelle
- ExStart → Négociation maître/esclave
- Exchange → Échange des DBD (résumé LSDB)
- Loading → Demande de LSA manquants (LSR/LSU)
- Full → LSDB synchronisée
Parmi ces états, la phase EXSTART est cruciale, car elle conditionne tout le processus d’échange de bases de données.
🔥 3. Focus : la phase EXSTART
La phase EXSTART est l’un des moments les plus critiques dans la formation d’une adjacency OSPF.
C’est souvent à cet endroit que les problèmes se produisent (MTU mismatch, négociation incorrecte, perte de paquets, etc.).
🎯 Objectif de la phase EXSTART
Durant EXSTART, deux routeurs doivent :
- Décider qui sera le maître (Master)
- Décider qui sera l’esclave (Slave)
- Choisir un numéro de séquence DBD initial
- Préparer l’échange structuré des LSDB
Cette hiérarchie permet de synchroniser correctement les informations de routage.
🔸 3.1. Qui devient maître ?
OSPF désigne comme maître le routeur ayant :
👉 le plus grand Router-ID
Ce choix est simple, prévisible et stable.
Le maître contrôle :
- l’ordre des paquets,
- le numéro de séquence DBD,
- le rythme de la négociation.
L’autre routeur devient l’esclave.
🔸 3.2. Le rôle des bits I, M et MS dans le DBD
Durant EXSTART, les routeurs échangent des paquets DBD (Database Description), qui contiennent trois drapeaux essentiels :
| Bit | Signification | RĂ´le |
|---|---|---|
| I (Init) | Premier DBD | Démarre la synchronisation |
| M (More) | DBD supplémentaires | Indique qu’il y a encore des données à envoyer |
| MS (Master/Slave) | Maître = 1 | Le maître mène la danse |
Le tout premier DBD du maître contient :
- I = 1
- M = 1 (si plusieurs DBD sont nécessaires)
- MS = 1
L’esclave répond avec :
- I = 0
- M = 0
- MS = 0
👉 Ce comportement confirme que la négociation est réussie.
🔸 3.3. Le numéro de séquence DBD
Le maître choisit un DBD Sequence Number, qui servira de référence pour tous les DBD suivants.
Ce numéro permet d’assurer :
- un ordre correct,
- qu’aucun DBD n’est perdu,
- qu’aucun paquet ancien n’est réutilisé par erreur.
🔥 3.4. Pourquoi EXSTART est une source de problèmes ?
Plusieurs dysfonctionnements surviennent fréquemment à ce stade :
✔️ Mismatch MTU
Si les routeurs n’ont pas la même MTU, ils restent bloqués en EXSTART/EXCHANGE.
✔️ Mauvaise configuration réseau (NBMA, Frame Relay)
Les Hellos peuvent ne pas ĂŞtre vus mutuellement.
✔️ Filtrage en amont (ACL, Firewall)
Les DBD ne passent pas correctement.
✔️ Numéro de séquence incorrect
Peut obliger OSPF à réinitialiser la session.
Lorsque EXSTART échoue, l’adjacency ne parvient jamais à FULL.
🔹 4. Après EXSTART : Exchange, Loading et Full
Une fois la négociation EXSTART terminée :
✔️ 4.1. Exchange
Les routeurs échangent les DBD, c’est-à -dire un résumé de leurs LSDB.
✔️ 4.2. Loading
Chaque routeur identifie les LSA manquants et envoie des Link State Requests (LSR).
Le voisin répond avec des Link State Updates (LSU).
✔️ 4.3. Full
Les deux LSDB sont synchronisées.
La relation est alors pleinement opérationnelle.
🔹 5. Conclusion
OSPF est un protocole puissant et robuste, mais la compréhension de ses mécanismes internes est cruciale pour le dépanner efficacement.
Parmi toutes les phases du voisinage OSPF, EXSTART est sans doute la plus stratégique, car elle établit la hiérarchie (maître/esclave) et les paramètres d’échange.
Une mauvaise négociation durant EXSTART peut empêcher totalement la formation d’une adjacency, d’où l’importance de comprendre :
- les bits I/M/MS,
- la sélection du maître,
- le numéro de séquence,
- et les conditions préalables (MTU, Hello, DR/BDR).
Maîtriser cette phase, c’est maîtriser la logique interne d’OSPF.


