La table de routage
La table de routage est un élément essentiel dans le fonctionnement des réseaux informatiques, en particulier lorsqu’il s’agit de déterminer la meilleure façon de diriger les paquets de données vers leur destination. En d’autres termes, elle est similaire à une carte routière pour les paquets qui circulent à travers un réseau.
Chaque routeur dans un réseau possède sa propre table de routage qui contient des informations sur les réseaux auxquels il est connecté et comment atteindre d’autres réseaux qu’il ne connaît pas directement. Ces informations sont utilisées par le routeur pour décider du chemin que le paquet doit emprunter pour atteindre sa destination finale de manière efficace. La décision est basée sur l’adresse IP de destination du paquet.
Avec le temps et à mesure que le réseau évolue, la table de routage peut être mise à jour manuellement par un administrateur réseau ou automatiquement grâce à des protocoles de routage dynamique. Ces mises à jour permettent d’assurer que les paquets suivent toujours le chemin le plus optimal ou le plus approprié, en fonction des conditions changeantes du réseau.
La table de routage, avec ses multiples entrées, joue un rôle critique pour garantir que les données soient acheminées correctement à travers les vastes étendues d’un réseau. Sans cette table, les paquets seraient perdus, acheminés de manière inefficace ou ne parviendraient jamais à leur destination.
Le cas des PC
Tout comme les routeurs, les ordinateurs disposent également d’une table de routage, bien que généralement plus simplifiée. Cette table est utilisée par le système d’exploitation pour déterminer comment acheminer les paquets de données à partir de l’ordinateur. L’élément le plus crucial dans la table de routage d’un PC est la distinction entre le trafic destiné au réseau local et le trafic destiné à des réseaux extérieurs. Pour prendre cette décision, le PC utilise la combinaison de son adresse IP, de son masque de sous-réseau et de la table de routage.
- Trafic au sein du réseau local : Si l’adresse de destination d’un paquet se trouve dans le même sous-réseau que l’adresse IP du PC, le paquet est envoyé directement sur le réseau local. Cela est généralement géré en utilisant des protocoles comme ARP pour déterminer l’adresse MAC du destinataire sur le LAN.
- Trafic vers des réseaux extérieurs : Si l’adresse de destination n’appartient pas au même sous-réseau, le PC sait qu’il doit envoyer ce paquet à un appareil spécialisé pour le routage vers sa destination finale : la passerelle (ou default gateway). La passerelle est un routeur situé sur le même réseau local que le PC et sert de porte de sortie pour tout le trafic destiné à l’extérieur du réseau local.
Dans la table de routage d’un PC, vous trouverez généralement au moins une entrée pour le réseau local (indiquant que le trafic destiné à ce réseau doit être envoyé localement) et une entrée pour la route par défaut (indiquant l’adresse de la gateway par défaut pour tout autre trafic). Pour illustrer, imaginons un PC avec l’adresse IP 192.168.1.10/24. Si ce PC veut envoyer un paquet à 192.168.1.50, il reconnaît que cette adresse est sur le même sous-réseau et envoie donc le paquet directement sur le réseau local. Cependant, s’il veut envoyer un paquet à 8.8.8.8, il dirigera ce paquet vers sa passerelle, qui se charge ensuite de le router vers sa destination finale.
Le cas des routeurs
Le next hop
Lorsqu’un paquet arrive sur un routeur, l’une des principales décisions que le routeur doit prendre est de déterminer où diriger ce paquet ensuite, ce qu’on appelle souvent le « saut suivant » ou “next hop”. Pour ce faire, le routeur se réfère à sa table de routage. Cette table est composée d’une série d’entrées qui indiquent où et comment diriger les paquets en fonction de leur adresse IP de destination.
Si le routeur ne trouve pas d’entrée spécifique qui correspond à l’adresse IP de destination du paquet dans sa table de routage, il utilise ce que l’on appelle une « route par défaut ». La route par défaut est une entrée spéciale qui indique au routeur où diriger les paquets lorsque aucune autre entrée n’est applicable. Si cette route est manquante, et qu’un paquet ne correspond à aucun élément de la table, celui-ci est alors jeté.
Adresse réseau | Next hop |
192.168.0.0/24 | 10.1.1.1 |
192.168.10.0/24 | 10.1.1.2 |
192.168.20.0/24 | 10.1.1.3 |
0.0.0.0/0 | 10.1.1.254 |
Dans cette table de routage, on peut voir plusieurs entrées définies pour différentes adresses réseau. Par exemple, si un paquet a pour destination une adresse IP qui se situe dans le réseau 192.168.0.0/24, il sera dirigé vers le saut suivant à l’adresse 10.1.1.1. De même, pour un paquet destiné au réseau 192.168.10.0/24, le saut suivant est 10.1.1.2. Cependant, si le routeur reçoit un paquet dont l’adresse de destination ne correspond à aucune des adresses réseau spécifiées, comme 8.8.8.8 il utilisera la route par défaut, qui dans cet exemple est définie pour diriger les paquets vers 10.1.1.254. Cette route par défaut est essentielle, car elle assure que tous les paquets, indépendamment de leur destination, auront un endroit où être dirigés.
Les overlaps
L’overlap dans les tables de routage se produit lorsqu’il existe plusieurs entrées qui peuvent correspondre à une même destination. C’est un cas courant dans les réseaux réels où différents préfixes peuvent couvrir une même plage d’adresses IP. Dans un tel scénario, le routeur doit être en mesure de choisir la meilleure route possible. La manière dont cela est géré est par le biais de la longueur du préfixe, c’est-à-dire que les routes plus spécifiques ont une priorité sur les routes moins spécifiques.
Adresse réseau | Next hop |
192.168.0.0/16 | 10.1.1.1 |
192.168.10.0/24 | 10.1.1.2 |
192.168.20.0/24 | 10.1.1.3 |
0.0.0.0/0 | 10.1.1.254 |
Avec cette configuration, imaginons qu’un paquet arrive avec une adresse de destination de 192.168.10.50. Même si cette adresse correspond à la fois à l’entrée 192.168.0.0/16 et à l’entrée 192.168.10.0/24, le routeur privilégiera la route 192.168.10.0/24, car elle est plus spécifique. Ainsi, le paquet sera dirigé vers le saut suivant à l’adresse 10.1.1.2. De même, si un paquet arrive avec une adresse de destination de 192.168.30.50, qui ne correspond pas directement à l’une des entrées spécifiques, mais qui se trouve dans le range de 192.168.0.0/16, le paquet sera dirigé vers 10.1.1.1.
Le coût et la métrique
Les protocoles de routage automatisé sont essentiels pour maintenir les tables de routage à jour et adaptées aux conditions changeantes des réseaux. Ces protocoles permettent aux routeurs de partager des informations entre eux et de prendre des décisions sur les meilleurs chemins à emprunter pour acheminer les paquets.
Imaginez une ville où il y a plusieurs routes pour aller d’un point A à un point B. Si l’une de ces routes est bloquée ou encombrée, il serait préférable d’emprunter une autre route. De la même manière, dans un réseau, il peut y avoir plusieurs chemins possibles pour acheminer un paquet d’une origine à une destination. Pour déterminer le chemin optimal, les routeurs utilisent un système de “coût”.
Chaque route dans le réseau est attribuée à un coût en fonction de divers facteurs, tels que la vitesse de la liaison, la congestion, la distance ou même des préférences administratives. Le chemin le plus “rapide” ou le plus “efficace” pour acheminer un paquet est celui qui a le coût le plus bas. Ainsi, si un chemin devient soudainement moins favorable en raison d’un encombrement ou d’une panne, le routeur peut recalculer rapidement et choisir un autre chemin avec un coût inférieur.
Des protocoles comme OSPF ou RIP sont utilisés pour automatiser ce processus. Ces protocoles permettent aux routeurs de partager des informations sur les coûts des différentes routes avec leurs voisins, de sorte que chaque routeur peut mettre à jour sa table de routage en fonction des conditions les plus récentes du réseau.
Les métriques des tables de routage sont étroitement liées au concept de coût que nous avons évoqué précédemment. En fait la métrique est souvent utilisée comme une représentation chiffrée du coût. C’est cette valeur de métrique qui aide le routeur à déterminer le chemin optimal pour acheminer un paquet. Un chemin avec une métrique plus faible est généralement préféré, car il représente un coût inférieur. C’est-à-dire que si deux routes mènent à la même destination, mais ont des métriques différentes, le routeur optera pour la route avec la métrique la plus faible. La métrique peut être dérivée de plusieurs facteurs, tels que la vitesse de la liaison, le nombre de sauts (hops), ou la fiabilité de la liaison.
Adresse réseau | Next hop | Métrique |
192.168.0.0/16 | 10.1.1.1 | 10 |
192.168.10.0/24 | 10.1.1.2 | 5 |
192.168.10.0/24 | 10.1.1.3 | 15 |
192.168.20.0/24 | 10.1.1.3 | 8 |
192.168.20.0/24 | 10.1.1.4 | 8 |
0.0.0.0/0 | 10.1.1.254 | 20 |
Par exemple, si un paquet est destiné à l’adresse 192.168.10.50, le routeur comparera les métriques des deux routes possibles pour cette adresse. Le routeur choisira le chemin associé à la métrique la plus faible, soit le saut suivant à 10.1.1.2 avec une métrique de 5.
Dans les situations où deux routes mènent à la même destination et possèdent la même métrique, le routeur peut répartir le trafic de manière équitable entre ces routes. Par exemple un paquet est destiné à l’adresse 192.168.20.50, le routeur remarquera qu’il a deux options possibles avec des métriques égales pour cette destination. Dans ce cas, il ne favorisera pas un chemin sur l’autre en raison de la métrique, car elles sont identiques. À la place, le routeur répartira le trafic de manière équitable entre ces deux routes.