OSPF — Open Shortest Path First
Couche OSI : L3 — Réseau
Protocole IP : numéro 89
Version : OSPFv2 (IPv4 — RFC 2328) · OSPFv3 (IPv6 — RFC 5340)
OSPF est un protocole de routage intra-domaine (IGP — Interior Gateway Protocol). Là où BGP gère le routage entre opérateurs différents, OSPF gère le routage à l’intérieur d’un même réseau (entreprise, datacenter, cloud).
Principe : Link-State (état des liens)
Contrairement à RIP (qui compte les sauts), OSPF construit une carte complète du réseau (topologie) et calcule le chemin optimal avec l’algorithme de Dijkstra (SPF — Shortest Path First).
Chaque routeur connaît :
├── Tous les routeurs du réseau
├── Tous les liens et leur coût (bande passante, latence)
└── → Calcule le plus court chemin vers chaque destination
RIP : "Je connais mes voisins, et ce que mes voisins m'ont dit"
OSPF : "Je connais toute la topologie du réseau"
Fonctionnement : découverte des voisins
Routeur A ── Hello (multicast 224.0.0.5) ──► Routeur B
Routeur A ◄── Hello ──────────────────────── Routeur B
→ Voisinage (adjacency) établi
Routeur A ── LSA (Link State Advertisement) ──► tous les routeurs
"Je suis connecté à B (coût 10) et C (coût 20)"
Routeur B diffuse aussi ses LSA...
Routeur C diffuse aussi ses LSA...
→ Chaque routeur construit sa LSDB (Link State Database)
→ Chaque routeur calcule l'arbre SPF
→ Chaque routeur peuple sa table de routage
Coût OSPF
Le coût d’un lien est calculé par défaut comme : coût = 10^8 / bande_passante (bps)
| Lien | Bande passante | Coût OSPF |
|---|---|---|
| 100 Mbps (Fast Ethernet) | 100 000 000 | 1 |
| 10 Mbps | 10 000 000 | 10 |
| 1,544 Mbps (T1) | 1 544 000 | 64 |
| 64 Kbps | 64 000 | 1562 |
Les liens à 1 Gbps et 10 Gbps ont le même coût (1) avec la formule par défaut — il faut configurer manuellement ou changer la référence à
10^9.
Les états d’adjacence OSPF
Down → Init → 2-Way → ExStart → Exchange → Loading → Full
| État | Signification |
|---|---|
| Down | Aucun Hello reçu |
| Init | Hello reçu, mais notre routeur-id pas encore dans le Hello |
| 2-Way | Voisinage bidirectionnel établi |
| ExStart | Négociation du rôle Master/Slave pour l’échange de LSDB |
| Exchange | Échange des résumés de LSDB (DBD packets) |
| Loading | Demande des LSA manquants (LSR/LSU) |
| Full | LSDB synchronisée ✅ — adjacence complète |
Aires OSPF (Areas)
Pour les grands réseaux, OSPF divise le réseau en aires pour limiter la propagation des LSA :
Aire 0 (Backbone)
┌──────────────────────────┐
│ Routeurs ABR │
│ ABR = Area Border Router│
└──────────────────────────┘
/ \
Aire 1 Aire 2
┌─────────────┐ ┌─────────────┐
│ Routeurs │ │ Routeurs │
│ internes │ │ internes │
└─────────────┘ └─────────────┘
- Aire 0 (backbone) : obligatoire, toutes les autres aires s’y connectent
- ABR : routeurs à la frontière de deux aires
- Les LSA sont contenus dans leur aire → scalabilité améliorée
OSPF vs RIP vs BGP
| RIP | OSPF | BGP | |
|---|---|---|---|
| Type | IGP | IGP | EGP |
| Algorithme | Distance Vector (Bellman-Ford) | Link-State (Dijkstra) | Path Vector |
| Convergence | Lente (minutes) | Rapide (secondes) | Lente (configurable) |
| Métrique | Nombre de sauts (max 15) | Coût (bande passante) | Attributs multiples |
| Scalabilité | Petits réseaux | Moyens à grands | Internet entier |
| Protocole | UDP:520 | IP:89 (multicast) | TCP:179 |
En relation avec
- Protocoles OSI - Index — tous les protocoles par couche
- BGP — protocole de routage inter-AS (Internet), complémentaire d’OSPF
- Table de Routage — OSPF alimente la table de routage des routeurs
- Paquets IP et TCP — OSPF utilise des paquets IP (protocole 89)