Routeur
Un routeur est un équipement réseau informatique assurant le routage des paquets. Son rôle est de faire transiter des paquets d'une interface réseau vers une autre, au mieux, selon un ensemble de règles. Par exemple, une box internet associe un routeur (WI-FI ou filaire) à une passerelle.
Il y a souvent confusion entre routeur et relais[1], car dans les réseaux Ethernet les routeurs opèrent au niveau de la couche 3 du modèle OSI[1],[2].
Histoire
modifierLe premier équipement que l'on peut qualifier d'ancêtre du routeur est un relais de paquets nommé Interface Message Processor (IMP), en 1969. Les IMP interconnectés constituaient le réseau ARPANET, le premier réseau à commutation de paquets. Le concept de routeur, alors appelé passerelle (gateway), doit son origine à un groupe de recherche international nommé International Network Working Group (INWG) chargé d'étudier les aspects liés à l'interconnexion des réseaux au début des années 1970[3].
Ces passerelles se distinguaient des relais de paquets en ce qu'elles permettaient les connexions entre réseaux dissemblables, comme des liens série et des réseaux locaux. D'autre part, elles opéraient en mode sans connexion et n'assuraient pas le transport fiable de bout en bout, laissant la tâche de vérifier la bonne délivrance des données aux hôtes aux extrémités du réseau[pas clair].
Ces idées furent développées pour créer des réseaux opérationnels : d'une part le programme DARPA qui développe la suite de protocoles TCP/IP qui constitue aujourd'hui le protocole au cœur de l'Internet[4], et d'autre part le PARC Universal Packet (en) développé par Xerox PARC, qui obtint moins d'attention en dehors de Xerox[5].
Les premiers routeurs Xerox sont opérationnels en 1974. Les premiers routeurs IP proprement dits sont déployés par la société BBN dans le cadre du programme DARPA en 1975-1976. À la fin de l'année 1976, trois ordinateurs PDP-11 utilisés comme routeurs sont en service dans ce réseau expérimental[6].
Les premiers routeurs multi-protocoles furent développés par des chercheurs au MIT et à Stanford en 1981, toujours sur des PDP-11[7],[8],[9],[10].
Les réseaux actuels étant essentiellement basés sur IP, les routeurs multi-protocoles ont perdu l'importance initiale qu'ils avaient dans des réseaux où coexistaient AppleTalk, DECnet, IP et les protocoles Xerox (en).
Jusqu'aux années 1980, ce sont des ordinateurs à usage général qui servent de routeurs. Plus tard, du matériel spécialisé permettra d'accélérer l'analyse et le routage du trafic. Certains systèmes d'exploitation dédiés utilisés sur les routeurs, comme ceux de Juniper Networks ou d'Extreme Networks, sont dérivés de versions modifiées d'Unix.
Matériels et logiciels
modifier- Le routage est en 2018, très souvent associé au protocole de communication IPv4, alors que la migration vers IPv6 fait également intervenir le routage d'IPv6. D'autres protocoles moins populaires existent, et sont également routables.
- Les premiers routeurs d'ARPANET étaient appelés les Interface Message Processors.
- Bien que des ordinateurs ordinaires puissent être utilisés pour effectuer le routage, les routeurs modernes comportent en général du matériel supplémentaire pour accélérer les fonctions critiques comme le transfert (acheminement) de paquets ; ces routeurs spécialisés ne sont pas toujours compatibles avec IPv6.
- Ce type de matériel ne nécessite pas de stockage magnétique, une mémoire non volatile de petite taille suffit à en conserver les principaux paramètres en cas de rupture momentanée de l'alimentation secteur.
- Les routeurs actuels jouent pour les données un rôle analogue à celui des commutateurs téléphoniques pour la voix. Certaines fonctions de ces derniers sont d'ailleurs de plus en plus reprises par les routeurs dans la convergence appelée voix ou téléphonie sur IP (VoIP, ToIP).
- Un routeur doit être connecté à au moins deux réseaux informatiques pour être utile, sinon il n'aura rien à router. L'appareil crée et/ou maintient une table, appelée table de routage, laquelle mémorise les meilleures routes vers les autres réseaux, via les métriques associées à ces routes. (Voir l'article sur le routage pour plus de détails sur le fonctionnement de ce processus.)
- Un routeur moderne se présente comme un boîtier regroupant carte mère, microprocesseur, mémoire ROM, RAM ainsi que les ressources réseaux nécessaires (Wi-Fi, Ethernet…). On peut donc le voir comme un ordinateur minimal dédié, dont le système d'exploitation peut être un Linux allégé. De même, tout ordinateur disposant des interfaces adéquates (au minimum deux, souvent Ethernet) peut faire office de routeur s'il est correctement configuré (certaines distributions Linux minimales spécialisent la machine dans cette fonction).
La fonction de routage traite les adresses IP et les dirige selon l'algorithme de routage et sa table associée, cette dernière contient la correspondance des adresses réseau avec les interfaces physiques du routeur où sont connectés les autres réseaux.
Architecture
modifierOn retrouve quatre principaux composants[11] :
- Les ports d'entrée : ont plusieurs fonctions. Premièrement, ils exécutent une fonction de la couche physique en terminant une liaison physique entrante au niveau du routeur. Ils exécutent aussi une fonction de la couche de liaison pour relier la couche de liaison se situant à l'autre extrémité du lien d'entrée. Enfin, c'est au niveau des ports d'entrée que sont consultées les tables de routage afin de déterminer vers quel port de sortie sera dirigé un paquet (grâce à la matrice de commutation). Les ports d'entrée sont autonomes. En effet, chaque port contient une copie de la table de routage, ce qui permet de gagner en rapidité. Le nombre de ports d'un routeur peut être de quelques unités pour un routeur personnel à quelques dizaines pour un routeur d'entreprise.
- Les ports de sortie : Les ports de sortie reçoivent les paquets de la matrice de commutation, les stockent et les transmettent ensuite au lien de sortie.
- Processeur de routage : Dans les routeurs traditionnels, le processeur exécute le protocole de routage, maintient à jour les tables de routage et exécute les tables de transfert. Lorsqu'un port reçoit un paquet ayant pour destination le routeur, il l'envoie au processeur de routage qui recalcule les tables afin de les redistribuer aux ports par la suite.
- Matrice de commutation : Elle permet de relier les ports d'entrées et de sortie du routeur. Il existe différents types de commutations : via mémoire partagée, via un bus de communication ou bien via crossbar.
Fabricants de routeurs
modifierLes principaux fabricants de routeurs sont : Pour les entreprises, opérateurs télécoms et FAI :
Pour les particuliers (modem/routeur) :
Routeurs « logiciels »
modifierAvec un logiciel adapté, il est possible de transformer un ordinateur ordinaire (même d'un modèle ancien), voire un téléphone mobile en un routeur.
La plupart des systèmes d'exploitation basés sur UNIX (par exemple Linux ou xBSD) supportent nativement un routage « basique ». Ils disposent également des logiciels nécessaires au routage « avancé » :
Sous Windows, les logiciels WinRoute (en) (shareware) et Virtual Router (freeware), entre autres, permettent également ce genre de fonctionnalités.
Il existe des logiciels pour téléphones mobiles souvent interdits ou nécessitant de s'abonner à une option ou un forfait spécifique:
- JoikuSpot pour Symbian OS ;
- PdaNet pour Android.
Notes et références
modifier- Guy Pujolle, Les réseaux, Édition 2005, Eyrolles, chap. 27.
- « Définition des sept couches du modèle OSI et explication des fonctions », (consulté le ).
- (en) Davies, Shanks, Heart, Barker, Despres, Detwiler, and Riml, Report of Subgroup 1 on Communication System, INWG Note #1.
- (en) Vinton Cerf, Robert Kahn, "A Protocol for Packet Network Intercommunication", IEEE Transactions on Communications, Volume 22, Issue 5, mai 1974, p. 637 - 648.
- (en) David Boggs, John Shoch, Edward Taft, Robert Metcalfe, "Pup: An Internetwork Architecture", IEEE Transactions on Communications, Volume 28, Issue 4, avril 1980, p. 612- 624.
- (en) Craig Partridge, S. Blumenthal, "Data networking at BBN", IEEE Annals of the History of Computing, Volume 28, Issue 1, janvier-mars 2006.
- (en) Valley of the Nerds: Who Really Invented the Multiprotocol Router, and Why Should We Care?, Public Broadcasting Service.
- (en) Router Man, NetworkWorld.
- (en) David D. Clark, M.I.T. Campus Network Implementation, CCNG-2, Campus Computer Network Group, M.I.T., Cambridge, 1982; p. 26.
- (en) Pete Carey, A Start-Up's True Tale: Often-told story of Cisco's launch leaves out the drama, intrigue, San Jose Mercury News, .
- (en) Kurose, James F.,, Computer networking : a top-down approach
- Tenda France, tendacn.com, consulté le 31 janvier 2023