Un GPS qui recalcule tout seul
Quand une route est fermée, le GPS recalcule votre trajet. Il n'attend pas qu'un opérateur lui dicte un détour.
Dans un réseau d'agences, c'est la même idée. Chaque routeur annonce l'état de ses liens, et tous finissent avec la même carte.
OSPF fait exactement cela.
À la fin de cette leçon
Remarque
Je peux dire comment les routeurs OSPF apprennent le réseau.
Mots clés
| Mot | Ce que ça veut dire | Exemple |
|---|---|---|
| Voisin | un routeur du même lien qui fait aussi tourner OSPF | |
| Paquet hello | un court message qui sert à trouver et garder ses voisins | |
| Base d'états de liens | la carte de tous les routeurs et liens que détient un routeur (en anglais LSDB) | |
| Coût | un nombre pour un lien : plus il est bas, mieux c'est | |
| Aire | un groupe de routeurs qui partagent la même carte ; on dit aussi zone | area 0 |
| Plus court chemin | la route dont le coût total est le plus bas |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Les routes statiques ne suivent pas
Une route statique est écrite une fois et ne bouge plus. Si le lien tombe, la route reste et les paquets se perdent.
Avec cinquante routeurs, personne ne veut écrire toutes les lignes. Un protocole de routage laisse les routeurs partager ce qu'ils savent.
OSPF est l'un de ces protocoles. Avec lui, chaque routeur construit la carte complète du réseau.
Les routeurs se rencontrent par des hello
Un routeur envoie des paquets hello par chaque interface qui fait tourner OSPF. Celui qui en entend un sur le même lien répond.
Deux routeurs qui s'entendent deviennent voisins. Ils échangent leurs cartes. Quand les deux cartes sont identiques, l'état est Full.
OSPF circule directement sur IP, avec le numéro de protocole 89.
Exemple : les états d'un voisin
| État | Sens |
|---|---|
| Down | Aucun hello entendu |
| Init | Un hello est arrivé, mais il ne nous cite pas encore |
| 2-Way | Les deux côtés s'entendent |
| ExStart | Les deux décident lequel mène l'échange |
| Exchange | Les deux échangent un résumé de leurs cartes |
| Loading | Les deux demandent les parties qui manquent |
| Full | Les cartes sont identiques : le voisin est prêt |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Demander ses voisins OSPF à r2
sudo vtysh -N r2 -c "show ip ospf neighbor"Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Lire la table de r2 sans OSPF
sudo vtysh -N r2 -c "show ip route"Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Voir les programmes de chaque routeur
netlab statusAffichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Ce que disent les trois réponses
netlab status termine chaque routeur par une ligne daemons:. Un démon est un programme qui tourne en arrière-plan, et ospfd est celui d'OSPF.
La demande de voisins affiche % OSPF is not enabled in vrf default. Le programme tourne, mais personne ne lui a dit quelles interfaces utiliser.
La table liste seulement des lignes connectées, C, et les adresses du routeur, L. Aucune ligne ne commence par O, le code d'une route apprise par OSPF.
Chaque routeur construit la même carte
Chaque routeur décrit ses propres liens dans un message appelé annonce d'état de lien (LSA). Il l'envoie à ses voisins, qui la retransmettent.
Bientôt tous détiennent la même base d'états de liens : la carte de tous les routeurs et liens de l'aire.
Chacun calcule ensuite ses routes à partir de cette carte. Dans un grand réseau, on le découpe en plusieurs aires pour que chaque carte reste petite.
Le coût décide du meilleur chemin
Chaque lien a un coût. Par défaut, il vient de la vitesse : un lien plus rapide coûte moins. Une personne peut aussi le fixer à la main.
Le routeur divise une vitesse de référence, 100 Mbit/s sauf réglage contraire, par la vitesse du lien. Le coût ne descend jamais sous 1.
Le coût d'un chemin est la somme des coûts de ses liens. OSPF retient le plus court chemin : le coût total le plus bas, pas le moins de routeurs.
Lire une interface du routeur
sudo vtysh -N r2 -c "show interface to-r1"Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Une erreur fréquente
Attention
On croit souvent qu'OSPF prend le chemin qui traverse le moins de routeurs. Il additionne le coût de chaque lien. Trois liens bon marché peuvent battre un seul lien très cher.
Chaque routeur calcule le plus court chemin
Un routeur part de lui-même avec un coût de 0. Il prend ensuite le routeur le plus proche non réglé et ajoute le coût de chaque lien qui en part.
Il recommence jusqu'à avoir réglé tous les routeurs. Le résultat donne le coût le plus bas vers chacun, et le premier saut à prendre.
Exemple : r1 règle chaque routeur
| Étape | Réglé | Coût depuis r1 | Raison |
|---|---|---|---|
| 1 | r1 | 0 | Le départ |
| 2 | r4 | 5 | Le lien r1 vers r4 coûte 5 |
| 3 | r2 | 10 | Le lien r1 vers r2 coûte 10 |
| 4 | r3 | 20 | Par r2 : 10 plus 10 bat 5 plus 30 |
| 5 | r5 | 21 | Par r3 : 20 plus 1 |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Pour aller plus loin : un lien moins cher
Dans le tableau d'exemple, passez le coût du lien de r4 vers r3 de 30 à 12. Réglez de nouveau chaque routeur depuis r1, sur papier.
Quel premier saut r1 prend-il maintenant pour joindre r3 et r5, et pour quel coût ? Vérifiez avec votre chemin_le_plus_court, en écrivant ce graphe dans une liste de liens comme "r4 r3 12".