next up previous contents
Next: Les protocoles portés par Up: Le protocole IP Previous: Les adresses

Un mot sur le routage

C'est IP qui est responsable de l'acheminement des paquets ; c'est-à-dire que des paquets contenant des données ICMP, TCP ou UDP seront routés exactement de la même façon (sauf exceptions vicieuses, du genre un firewall qui empêche certains paquets de passer ; mais c'est un autre problème). De façon générale, un hôte ne sait pas en détail comment faire parvenir ses paquets à destination (NB : hôte désigne tout ce qui a une adresse IP : un serveur, une station de travail, un routeur, un hub intelligent, une cafetière... si si, je suis sérieux!). Dans le pire des cas, il suffit à un hôte de savoir comment joindre son routeur, sa ``gateway''. Ensuite, c'est ce routeur qui prendra des décisions, et qui passera les paquets à telle ou tel autre routeur, et ce jusqu'à ce qu'on arrive au réseau de la machine de destination. Exactement comme pour une lettre à la poste : celui qui poste la lettre ne sait pas forcément par où elle va passer. Elle va être acheminée de centre de triage en centre de triage, jusqu'à arriver au bureau de poste du destinataire où le facteur s'occupe de la dernière étape.

En général, les routeurs qui font un ``vrai'' travail de routage (par opposition au travail plus simple pour relier 2 réseaux, par exemple) ont des tables plus ou moins importantes qui les aident à savoir par où faire transiter les paquets, et ces routeurs échangent des tas d'informations entre eux afin de mettre ces tables à jour ; ainsi, si quelque part, quelquechose tombe en panne, le traffic sera redirigé par un autre chemin sans que les utilisateurs s'en rendent compte (enfin, eux ils verront peut être que ça rame à fond, mais les applications n'ont pas conscience de ce genre de choses - quoi que... - et elles ne planteront pas - quoi que...).

Le routage ``tout bête'', comment ça marche? Prenons l'exemple d'un hôte sur un réseau local, lequel réseau local est relié à Internet par un routeur. On va dire que l'adresse de cet hôte est 192.168.6.201. L'adresse du réseau est donc 192.168.6.0, et on admettra que le routeur a pour adresse 192.168.6.3. Cet hôte aura une table de routage primitive, indiquant : ``si tu as des paquets pour 192.168.6.201, ils sont pour toi, prends les. Si tu as des paquets pour 192.168.6.*, ils sont pour quelqu'un sur le réseau local, envoie les sur la carte réseau. Si tu as des paquets pour *.*.*.*, c'est pour le monde extérieur, envoie les au routeur, 192.168.6.3, et il se débrouillera''. Noter que l'ordre est important : si on avait mis la dernière entrée en premier, tous les paquets auraient été dirigés vers le routeur, MAIS l'hôte n'aurait jamais réussi à joindre ce routeur, puisqu'il n'est pas dans la table de routage. Ou plutôt : il y est, mais comme le système de routage s'arrête à la première correspondance trouvée, il ne serait jamais arrivé à l'entrée correspondante. (Pour tout faire passer par le routeur, il aurait fallu remplacer 192.168.6.* par 192.168.6.3).

Petite note technique concernant l'ordre d'examen des différentes routes : il arrive aussi qu'on examine d'abord les routes les plus ``précises'', c'est-à-dire en général celles qui pointent sur des hôtes, avant d'examiner celles, plus générales, désignant des réseaux. La ``précision'' d'une route est donnée par son masque.

NB : un routeur qui relie plusieurs réseaux entre eux a une adresse sur chaque réseau. Une même machine peut donc avoir plusieurs adresses IP, ça ne pose pas de problème. En général, on a une adresse par interface (c'est à dire par carte réseau/modem/etc.), mais on peut aussi avoir plusieurs adresses par interface - cela sert en général à faire du Virtual Hosting, voir plus bas.

Inversement, rien n'empêche d'assigner la même adresse à plusieurs interfaces - mais c'est pour des situations bien particulières. Cela ne permet pas, par exemple, de réaliser de la répartition de charge (load balancing) ; il faut des drivers (voire des cartes réseaux) étudiés pour.


next up previous contents
Next: Les protocoles portés par Up: Le protocole IP Previous: Les adresses
Jerome PETAZZONI
1999-04-02