Un des protocoles les plus utilisés par les gestionnaires de réseau: Le protocole OSPF pour Open Shortest Path First.
Pour permettre a chaque routeur de découvrir son voisinage et de le diffuser aux autres routeurs OSPF s'appuie sur une base de donnée locale sur chaque routeur désignée LSDB pour Link State DataBase. Elle contient donc la cartographie du réseau, c' est à dire l'ensemble des routeurs composant le réseau et des liens entre ces routeurs.
La LSDB se construit à la réception de paquets de contrôle et elle est utilisée une fois constituée pour calculer localement les routes par le biais de l'algorithme de Dijkstra.
Pour identifier les voisins directs, OSPF s'appuie sur l'envoi régulier de paquets Hello.
Qu'entend on par routeur voisin?
Chaque routeur a plusieurs interfaces, chaque interface a sa propre adresse logique de réseau (adresse IP). Un routeur peut donc être vu comme un élément matérialisant la frontière de ses sous-réseaux, il fait parti de chacun de ces sous-réseaux. Deux routeurs sont dits voisins s'ils ont tous les deux une interface faisant parti du même sous réseau.
Le routeur envoi donc dans chaque sous-réseau auquel il est connecté, un paquet qui annonce sa présence à tous les autres routeurs du même sous-réseau. Ce paquet Hello n’intéresse pas les terminaux, qui ne participent pas au processus de routage. Le paquet Hello est envoyé à destination d'une adresse IP multicast (224.0.0.5) permettant d'atteindre l'ensemble des routeurs OSPF et eux seulement.
En configuration standard, un paquet Hello est envoyé toutes les 10 secondes ou 30 secondes selon le type de réseau.
Outre la découverte, le retour des paquets confirme que les voisins sont toujours fonctionnels, c'est donc également un moyen de détecter les pannes.
En l'absence de réception de 4 paquets Hello consécutifs, e voisin est considéré en panne et supprimé de la liste de voisins.
Le paquet Hello contient:
Le routeur dispose donc d'une liste de voisins, et des caractéristiques des liens qui le relie à ses voisins. C' est cette information qu'il va transmettre à tous les autres routeurs faisant parti du réseau afin de leur permettre de mettre à jour leur table.
Pour cela le protocole OSPF définit 4 types de messages:
Sur certains types de réseaux, la surcharge du protocole peut devenir importante: plus le nombre de routeurs augmente plus le nombre de paquets Hello et d'annonce DBD augmentent.
Pour limiter cette charge, les routeurs peuvent être paramétrés pour élire un routeur particulier dit routeur désigné qui se chargera de recevoir l'ensemble des informations transmises par les routeurs et de les rediffuser ensuite.
Cette élection est réalisée au moyen des paquets Hello en définissant d'abord un critère.
Pour rester efficace même sur de plus grands réseaux, OSPF permet de diviser un grand réseau en aires. L'administrateur réseau doit définir les aires (quel routeur appartient à quelle aire).
Une fois les aires définies, OSPF s'exécutera indépendamment dans chaque aire comme s'il s'agissait de réseaux distincts. Seuls les routeurs à la frontière de chaque aire se synchroniseront pour calculer les routes dans le réseau global. Pour cela les routeurs aux frontières des différentes aires définissent une nouvelle aire particulière appelée Backbone (épine dorsale).
La division en aires permet de limiter le nombre de récepteurs concernés par chaque émission, ainsi que la taille de la base de données des liens. Elle réduit donc la charge du protocole aux grandes échelles.
Pour conclure