Article technique · pathfinder #3

Pathfinder - La correction (3/3)

Pathfinder - La correction (3/3)

Le point de départ

On reprend le même environnement : deux équipements, deux patch panels, un backbone. Deux liens sont établis entre les équipements.

Sur le papier, la redondance est présente.

Ce qui est validé

Les mécanismes habituels sont vérifiés : LACP, ECMP, répartition de charge, perte de lien. Le comportement attendu est observé.

Du point de vue logique, rien d’anormal n’apparaît.

Ce qui n’est pas observé

Le chemin physique réel n’est généralement pas analysé.

Si l’on déroule concrètement les deux liens, on constate qu’ils traversent les mêmes éléments physiques : mêmes patch panels, même châssis, même rack. Les points de passage critiques sont partagés.

On ne dispose pas de deux chemins indépendants, mais d’un seul domaine de défaillance.

Une limite des approches classiques

Changer d’interface, de VLAN ou de session ne modifie pas nécessairement le chemin physique. La diversité de configuration ne garantit pas l’indépendance réelle.

Il devient alors nécessaire de changer d’approche et d’introduire une méthode d’analyse.

Construire une méthode

En modélisant le réseau comme un graphe, il devient possible d’explorer les chemins de manière systématique.

La première étape consiste à reconstruire un chemin entre deux points. Dans ce contexte, un parcours en largeur (BFS) est suffisant. Il permet d’explorer le réseau sans biais et de trouver rapidement un chemin valide, en nombre minimal de sauts.

Cette approche fournit un premier résultat fiable, sans nécessiter d’hypothèse sur la topologie.

Une fois le réseau modélisé comme un graphe, la première étape consiste à reconstruire un chemin entre deux points.

Dans ce contexte, un parcours en largeur (BFS) est suffisant. Il s’agit d’un algorithme simple qui explore le réseau de proche en proche, en suivant toutes les connexions possibles jusqu’à atteindre la destination.

Son intérêt ici est direct : il permet de reconstruire rapidement un chemin réel, sans hypothèse sur la topologie ni connaissance préalable du réseau.

Les limites de BFS

Cette méthode montre cependant rapidement ses limites. BFS ne prend pas en compte les ressources déjà utilisées par un premier chemin. Il peut produire un second chemin qui réutilise les mêmes éléments critiques.

Autrement dit, il permet de répondre à la question « comment relier deux points », mais pas à « comment les relier sans partager les mêmes points de passage ».

Aller plus loin

Le problème change alors de nature. Il ne s’agit plus simplement de trouver un chemin, mais de construire deux chemins réellement indépendants.

Des algorithmes existent pour répondre à ce besoin. Dijkstra permet d’optimiser un chemin en fonction d’un coût, tandis que des approches comme l’algorithme de Suurballe permettent, dans un cadre théorique, de calculer deux chemins disjoints optimaux en une seule étape.

Dans notre cas, une approche plus pragmatique est retenue.

Un premier chemin est calculé à partir du modèle du réseau. Les ressources utilisées par ce chemin (ports, traversées, liaisons) sont ensuite exclues du graphe. Un second calcul est alors effectué sur ce graphe modifié, ce qui permet d’obtenir un second chemin indépendant.

Cette méthode ne garantit pas une optimalité globale au sens strict, mais elle présente deux avantages essentiels : elle reste simple à mettre en œuvre et elle s’adapte facilement à l’ajout de contraintes métier.

Ce que cela change

Appliquée au réseau physique, cette approche permet de dépasser les règles empiriques. Il n’est plus nécessaire de définir manuellement des exclusions locales. L’indépendance des chemins est obtenue par construction, à partir du modèle du réseau.

On passe ainsi d’une logique déclarative, où l’on suppose l’indépendance, à une logique démontrable, où cette indépendance est vérifiée.

Condition nécessaire

Cette démarche repose sur un prérequis essentiel : disposer de données terrain fiables. Le modèle doit refléter fidèlement le réseau physique, incluant les équipements, les ports, les traversées et les câbles.

Sans cette modélisation, aucun calcul pertinent n’est possible.

Mise en pratique

Un lab minimal permet de reproduire cette approche, de reconstruire les chemins et d’observer les dépendances réelles. Il constitue un support concret pour valider les hypothèses et tester différentes stratégies.

Repository Pathfinder

Conclusion

Un réseau mal compris est souvent un réseau supposé et les suppositions ne tiennent jamais en production.