8. Routage dans un réseau#
8.1. Rappels de Première#
8.1.1. Les modèles du réseau#
Afin de bien comprendre le principe d’un réseau, on s’intéresse dans un premier temps à modéliser les interactions sur celui-ci. L”OSI a proposé un modèle en couche assez théorique qui permet par exemple d’investiguer une panne.
n° |
Couche |
Exemple de norme |
---|---|---|
7 |
Applicationion |
Web |
6 |
Présentation |
HTML/XML |
5 |
Session |
HTTPS |
4 |
Transport |
TCP |
3 |
Réseau |
IP |
2 |
Liaison |
Ethernet |
1 |
Physique |
RJ45 |
Ainsi, on commence à une des extrémités du tableau et on se dirige vers l’autre extrémité en testant de façon rigoureuse les différents éléments du réseau.
On peut en provfiter pour rappeler quelques notions sur les différentes couches :
Sur la couche physique transitent des suites de bits, c’est à dire des éléments pouvant être à 0 ou à 1. Cette couche physique peut-être constitué par des supports variées : paire de cuivre, ondes (lumineuse ou hertzienne, …) Un problème sur cette couche correspond généralement à un problème dans le monde physique.
Sur la couche de liaison (souvent notée L2) transitent désormais des trames, des unités (regroupement de bits). Ces trames peuvent être reconnues par certains équipements (les switches). La norme désormais majoritaire de trame est Ethernet et on utilise essentillement de la commutation de trames (avec un commutateur ou switch). Cette commutation à ce niveau n’est possible que sur des «petits» réseaux.
Sur la couche de réseau transitent des paquets, qui permettent réellement de parler de réseau. Ici nos paquets seront de type IP (Internet Protocol). Cette couche doit prendre en charge trois fonctions :
le contrôle de flux
le routage
l’adressage
Sur la couche de transport on achemine des messages, c’est à dire des données utiles pour les utilisateurs finaux (on parle de datagramme TCP ou UDP, ou encore de paquet ICMP)
Sur la couche de session, on gère les connexions, c’est à dire un ensemble de paquets permettant la connexion entre deux éléments du réseaux. Il s’agit souvent de ce qu’on appelle «protocoles applicatifs» correspondant à des protocoles comme SSH, HTTP/HTTPS, IMAP, SMTP, … Dans cette couche, on gère l’établissement de la session.
Sur la couche de présentation, on gère la syntaxe utilisée pour communiquer. Par exemple, la syntaxe pour communiquer des pages WEB est constituée de «verbes» comme GET, …
Sur la couche d’application, on gère la sémantique de l’échange, c’est à dire le sens que l’on veut lui donner.
On peut noter que pour la éléments entre deux réseaux, seules les 3 premières couches sont utilisées :
+--+--------------+ +--+--------------+
|7 | Application | |7 | Application |
|6 | Présentation | |6 | Présentation |
|5 | Session | |5 | Session |
|4 | Transport | +--+----------+ |4 | Transport |
|3 | Réseau | |3 | Réseau | |3 | Réseau |
|2 | Liaison |----|2 | Liaison |----|2 | Liaison |
|1 | Physique | |1 | Physique | |1 | Physique |
+--+--------------+ +--+----------+ +--+--------------+
À côté et en parallèle de ce modèle assez complet et théorique, on utilise souvent un modèle simplifié, mais pratique, le modèle TCP/IP qu’on peut résumer avec le tableau suivant.
#id |
Couche |
---|---|
1 |
Application (Application web) |
2 |
Transport (TCP) |
3 |
internet (IP) |
4 |
Physique (Ethernet et réseau Physique) |
Avertissement
Les couches de ces deux modèles coïncident partiellement et le premier modèle (OSI) est très complet et ne précise rien quand aux technologies employées.
8.1.2. Les adresses sur le réseau#
Sur un réseau, on distingue plusieurs types d’adresses :
les adresses MAC (Media Access Control), sur la couche 2 du modèle OSI ;
les adresses IP (Internet Protocol), sur la couche 3 du modèle OSI.
(Adresse MAC)
Une adresse MAC est un ensemble de 6 nombres hexadécimaux à deux chiffres de la forme xx:xx:xx:xx:xx:xx
L’adresse MAC est celle présente dans une trame Ether sur la couche 2 du modèle OSI. C’est celle-ci qui est reconnue par les switchs.
Pour les adresses IP, on peut distinguer IPv4 avec des adresses codées avec 4 octets et les adresses IPv6 codées avec 8 blocs de 2 octets.
Calculer le nombre de total d’adresses IPv4 et IPv6.
On peut voir le Convertir une adresse IPv4 de la notation décimale à la notation binaire.
8.2. Notions sur le routage#
8.2.1. Nécessité du routage#
Il y a plusieurs arguments qui imposent le besoin de routage :
la commutation Ethernet ne gère que de petits réseaux
le besoin de cloisonner des réseaux (un service particulier d’une entreprises, une entreprise par rapport aux autres, …
la pénurie d’adresse IPv4 qui impose l’utilisation du NAT
8.2.2. Principe généraux#
(routage)
Le routage est l’action de transférer des paquets IP d’un réseau à un autre.
(routeur)
Un routeur est un équipement qui réalise l’action de routage.
Chaque équipement d’un réseau dispos d’une table de routage qui indique comment acheminer les paquets.
On peut schématiser un échange de type ICMP ECHO REQUEST/REPLY (le mécanisme
mis en œuvre lorsqu’on utilise la commande ping
.)
Avertissement
Le routage doit être fait dans les deux sens. Autrement dit, si on considère R1 d’ip 192.0.2.1 et de masque 255.255.255.0 et R2 d’ip 198.51.100.1 et de masque 255.255.255.0 liés par un cable, la table de routage de R1 doit contenir
Destination |
Passerelle |
Masque |
Metrique |
---|---|---|---|
198.51.100.0 |
192.0.2.1 |
255.255.255.0 |
100 |
et la table de routage de R2 doit contenir
Destination |
Passerelle |
Masque |
Metrique |
---|---|---|---|
192.0.2.0 |
198.51.2.1 |
255.255.255.0 |
100 |
Note
Dans l’exemple classique présenté ci-contre, les chemins aller et retour sont les mêmes, mais ça n’est pas une obligation.
8.3. Pratique du routage#
On peut distinguer 3 méthodes générales pour maintenir les tables de routages :
méthode statique : l’administrateur réseau configure les équipements avec les tables de routage
méthode à «vecteur de distance» : on définit une distance en nombre de sauts (routeurs traversés) pour construire, sur chaque routeur, la table de routage à partir des tables de routage des voisins.
méthode à «vecteur de chemin» : on minimise les chemins parcourus en affectant un coût à chaque chemin
8.3.1. Routage statique#
On considère le réseau suivant :
Dans ce réseau, pour passer du routeur 1 au routeur 5, on peut passer par :
directement
par R2
par R4
par R3 - R4
Sur R1, on aura la table de routage partielle suivante
Destination |
Passerelle |
Masque |
Metrique |
---|---|---|---|
192.165.25.0 |
192.0.2.2 |
255.255.255.0 |
100 |
10.125.14.0 |
203.0.113.2 |
255.255.255.0 |
100 |
10.0.12.0 |
176.18.5.2 |
255.255.255.0 |
100 |
Donner les tables de routages des autres routeurs
8.3.2. Routage avec RIP#
RIP (Router Information Protocol) est un protocole de routage à vecteur de distance. La distance retenue est le nombre de saut, c’est à dire le nombre de routeurs traversés. Dans l’exemple précédent, on a la distance entre R2 R3 qui est de 2.