Babel
Caractéristiques du protocole Babel
Bellman Ford
L'algorithme Bellman-Ford permet de trouver les plus courts chemins entre deux nœuds dans un réseau. Il converge en un temps qui est proportionnel au diamètre du réseau. Ce temps de convergence est relativement rapide lors de l'ajout d'un nouveau lien mais il est très lent lorsqu'un lien est cassé.
Ainsi, périodiquement chaque routeur annonce à tous ses voisins qui il
sait joindre sur le réseau avec le nombre de sauts pour l'atteindre. Les
routeurs exécutent un algorithme de routage dont le but est de
déterminer à qui envoyer les paquets.

Exemple:
Si l'on reprend le schéma précédent mais que le lien entre les nœuds S et A est coupé. Une boucle se forme.

On peut donc dire que RIP n'évite pas les boucles mais il les détecte.
Babel
Babel est un protocole de routage conçu pour les réseaux maillés. Il utilise l'algorithme Bellman-Ford (vu précédemment) mais apporte quelques améliorations.
En particulier, il améliore le temps de convergence en envoyant des
messages déclenchés lors d'un changement majeur de topologie, en plus
des messages périodiques.
Autre amélioration, un nœud Babel garde en mémoire des routes alternatives qui sont envoyées par d'autres voisins, en plus de celle utilisée comme route principale pour joindre un nœud. Ainsi, en cas de défaillance de cette route, le nœud peut utiliser l'une de ces routes pour continuer d'émettre.
De plus, il se sert d'une variante de l'algèbre ETX pour décider du meilleur lien. En effet, il va choisir les liens en prenant en compte la qualité de la propagation radio entre 2 nœuds. Suite à une instabilité, il se comporte de façon raisonnable. C'est à dire qu'il est conçu pour réagir rapidement aux instabilités. En particulier, il évite les boucles (contrairement à RIP qui fait de la détection de boucles). S'il soupçonne qu'il y a une possibilité de boucle, alors il préfère ne pas prendre la route.
C'est un protocole ouvert : RFC 6126.
Enfin, Babel a été conçu pour supporter des milliers de routeurs, mais dans la pratique il n'a jamais été testé à grande échelle.
Protocoles réactifs et proactifs
Autre caractéristique de Babel, c'est un protocole dit proactif. C'est à
dire qu'il construit les tables de routage avant que la demande en soit
effectuée. L'avantage est que les routes sont immédiatement disponibles.
L'inconvénient est que le trafic de contrôle et de mise à jour peut être
important et partiellement inutile.OLSR et DSDV sont aussi des protocoles proactifs pour réseaux maillés.
A l'inverse des protocoles dit réactifs comme DSR (Dynamic Source Routing) ou AODV (Ad hoc On-Demand Vector Routing). Une route est établie uniquement sur demande. L'avantage est qu'il ne charge pas le trafic. L'inconvénient est qu'il met plus de temps pour "ouvrir" une route.
Avantages de Babel
- Il réutilise 50 ans de recherche dans les protocoles de routage filaire.
- C'est un protocole familier des gens du routage sauf qu'il est adapté aux réseaux maillés. Il a donc une plus grande chance de marcher dans les réseaux hybrides (filaires et sans fil).
- Il permet de garder la plus grande passante entre plusieurs nœuds,
et est très rapide dans la "reconstruction" de routes.