La couche Internet, ou couche réseau (couche 3) du modèle OSI, est une composante essentielle de l'architecture réseau. Elle assure l'interconnexion de réseaux hétérogènes distants sans connexion. Son rôle principal est de permettre l'acheminement des paquets de données à travers différents réseaux, indépendamment les uns des autres, jusqu'à leur destination finale. Cette couche est la clé de voûte de l'architecture TCP/IP, permettant l'injection de paquets dans n'importe quel réseau.

Routage : Le GPS d'Internet

La fonction principale de la couche réseau est le routage. Le routage est l'action de diriger des paquets d'un réseau à un autre. Pour illustrer ce concept, prenons une analogie : imaginez que vous êtes à Lyon et que vous voulez aller à Paris en voiture, mais vous ne connaissez pas la route. Vous allumez votre GPS, qui effectue une série de calculs pour déterminer le meilleur itinéraire. Les instructions du GPS, vous invitant à tourner à droite ou à gauche, sont comparables au routage, car elles ont le même but : vous faire prendre le meilleur chemin pour atteindre votre destination.

Dans le détail, le fonctionnement du routage est très différent, mais en surface, ça y ressemble. Les hôtes utilisent un processus appelé ANDing, ou ET logique, pour la transmission des paquets. Plus précisément, c'est le protocole IP (Internet Protocol) qui effectue cette vérification.

Au niveau de la couche réseau, le protocole IP doit vérifier s'il s'agit d'une communication intra-réseau (à l'intérieur du même réseau) ou d'une communication inter-réseau (entre réseaux différents). C'est un peu comme lorsque vous passez un appel : des procédures techniques au niveau de votre opérateur vérifient s'il s'agit d'un appel local ou international. Si la transmission est en dehors du réseau, les paquets sont transmis au routeur, qui se chargera du reste.

Rôle et Responsabilités de la Couche Internet

La couche réseau est responsable d'ajouter toutes les informations relatives au routage, notamment l'adresse IP du destinataire, dans l'en-tête du paquet. C'est la seule couche du modèle OSI qui utilise la connexion logique entre hôtes. Bien qu'elle détermine le chemin physique à emprunter en se basant sur l'adresse IP du destinataire, les conditions du réseau et d'autres facteurs, elle ne peut pas établir une connexion physique. Son rôle se limite à la connexion logique. Une fois que les informations spécifiques à la couche réseau sont ajoutées à l'en-tête du paquet, celui-ci descend vers la couche 2, la couche de liaison de données.

Lire aussi: Choisir les meilleures couches de piscine pour bébés

Matériel de la Couche 3 : Les Routeurs et Autres Équipements

Le matériel principal de la couche 3 est le routeur. Le routage est la fonction principale d'un routeur. D'autres matériels peuvent être utilisés, tels que les commutateurs avancés (advanced switches), aussi appelés "switchs de niveau 3", et les passerelles applicatives dont la fonction est de relier deux réseaux différents. Le commutateur avancé fonctionne de la couche physique à la couche réseau, voire à la couche transport du modèle OSI. La passerelle applicative, quant à elle, couvre toutes les 7 couches du modèle OSI, comme son nom l'indique.

Imaginez un réseau de milliers d'hôtes segmentés en une dizaine de sous-réseaux. Il faudrait beaucoup de routeurs pour assurer la communication entre ces 10 sous-réseaux. Les routeurs doivent s'assurer que chaque hôte de n'importe quel sous-réseau communique avec les hôtes de tous les sous-réseaux.

Pour implémenter un routage effectif, il faut que les routeurs sachent prendre des décisions, pour savoir par quel routeur passer pour arriver à tel sous-réseau. Les routeurs, pour ce faire, utilisent ce qu'on appelle une table de routage.

Tables de Routage : La Carte Routière des Routeurs

Quand un hôte X du réseau A veut communiquer avec un hôte Y du réseau B, les paquets sont envoyés au routeur AB qui relie le réseau A et le réseau B. Dans l'en-tête du paquet se trouve l'adresse IP de l'émetteur et celle du destinataire. Le routeur doit vérifier dans sa table de routage comment faire pour arriver au sous-réseau dans lequel se trouve l'adresse IP du destinataire. Cette table de routage contient les network ID de tous les routeurs qui sont directement connectés au routeur AB.

Router un paquet implique un coût, mais il ne s'agit pas d'argent. En termes de routage, plusieurs facteurs déterminent le coût d'un chemin. Un saut est défini par le passage d'un paquet par un routeur. Ainsi, le routeur AB va considérer tous les chemins qu'il a dans sa table de routage, voir quel est le chemin le moins coûteux en termes de sauts et va emprunter ce dernier pour router le paquet transmis par X.

Lire aussi: Comprendre les pleurs nocturnes de bébé

En réseau, un chemin est la même chose qu'un chemin dans le contexte naturel. Pour aller à l'école, au travail ou autre, il y a souvent plusieurs itinéraires possibles. Il y a plusieurs moyens pour arriver quelque part. Une table de routage contiendra toutes ces informations, et c'est par rapport à cette table qu'un routeur prendra la décision effective pour transmettre un paquet.

L'intelligence qui est derrière les décisions des routeurs est fournie par les protocoles de routage. La commande "route" sert à manipuler les tables de routage.

Sous Windows, tapez route print dans votre invite de commande pour voir à quoi ressemble une table de routage. Vous obtiendrez naturellement une table différente.

Les colonnes d'une table de routage incluent :

  • Netmask : diminutif de "Network Mask", cette colonne correspond au masque du réseau.
  • Interface : un routeur a plusieurs interfaces.
  • Metric : il s'agit d'une valeur numérique, et les différentes entrées de la table ont différentes valeurs de métriques. Quand plusieurs chemins conduisent au même réseau de destination, le routeur se base sur le chemin qui a la plus petite valeur dans la colonne métrique de sa table.

Il s'agit ici de l'ID d'un réseau qui n'est pas directement lié au routeur, d'où son appellation réseau distant. Il peut alors être atteint via les autres routeurs voisins. Il s'agit de l'ID d'un réseau qui est directement lié au routeur local. La colonne Gateway de la table correspondra alors à l'adresse IP de l'interface du routeeur qui est liée à ce réseau avoisinant.

Lire aussi: Guide pour une Couche Confortable

Il s'agit d'une route vers une adresse IP précise, ce qui permet d'effectuer un genre de routage plus direct. Si c'était une adresse IP, ce serait ça, mais là, on parle d'un masque. Dans celui-ci, tous les bits sont allumés, ce qui signifie que le réseau de destination ne comporte que l'adresse indiquée.

Toutes les routes que vous ajoutez manuellement dans votre système sont supprimées lorsque vous redémarrez votre ordinateur. Si vous voulez qu'une route "persiste" il faudrait donc ajouter une route… persistante. Pour ajouter une route persistante dans votre table de routage sous Windows, il suffit d'ajouter le switch -p à la fin d'un ajout statique. Sous Linux, cela dépend des distributions. Une méthode pour les systèmes Debian consiste à ajouter la commande précédée du mot-clé "up" à la fin du fichier /etc/network/interfaces.

En toute logique, c'est la route qui est utilisée lorsque la table de routage ne comprend aucune route valable vers le réseau de destination. Dans ce type de route, les colonnes Network Destination et Netmask auront une valeur numérique de 0.0.0.0. En théorie, n'importe quel réseau destination devrait fonctionner avec un masque 0.0.0.0.

Algorithme de Sélection de Route : Comment le Protocole IP Choisit son Chemin

Un algorithme est une suite d'instructions précises et ordonnées conduisant à l'accomplissement d'une tâche précise. L'algorithme de sélection de route désigne la suite d'étapes que le protocole IP utilise pour choisir une route.

Si un hôte A veut communiquer avec un hôte B, grâce au ANDing, il déterminerait si son destinataire (l'hôte B en l'occurrence) était dans le même réseau que lui. Le protocole IP fouille les entrées de la table de routage afin de déterminer la route-hôte qui correspond à l'IP du destinataire. L'adresse IP se trouvera dans l'en-tête IP du paquet.

Si le protocole IP ne trouve aucune route-hôte, il va scanner les colonnes "Adresse Réseau" et "Masque" pour chercher la route qui peut mener au réseau du destinataire. S'il y a plusieurs chemins possibles pour arriver au destinataire, c'est la route ayant le plus grand nombre de bits masqués qui sera choisie, car on cherche le cas le plus précis. Et s'il y a deux routes ayant le même nombre de bits masqués ?

Si, dans la table de routage, il n'y a aucune route conduisant au destinataire, la dernière option sera alors de localiser la passerelle par défaut. Ce cas peut être intégré au point précédent, puisqu'il correspond techniquement à prendre le cas le moins précis (destination : 0.0.0.0/0), celui qui autorise tous les bits à ne pas correspondre au network ID de destination.

S'il n'y a pas de passerelle par défaut, le paquet à ce stade est "délaissé" et une erreur ICMP est envoyée à l'émetteur. Si le système a pu localiser une route conduisant au sous-réseau du destinataire, il va alors falloir déterminer l'adresse physique (MAC) du routeur qui conduira le paquet au bon endroit. La transmission des données dans un réseau local se fait en utilisant les adresses MAC.

Si le protocole IP trouve le routeur qu'il faut, cela veut dire qu'il est dans le même sous-réseau que l'émetteur, donc il faudra trouver son adresse physique ! C'est ici qu'intervient le module ARP (Address Resolution Protocol) qui est un protocole à cheval sur les couches 2 et 3. ARP est spécifique à IPv4. Une table ARP contient une correspondance entre les IP et leurs adresses physiques respectives. Pour IPv6, on parle plutôt de table de voisinage.

Types de Routage : Unicast, Multicast, Broadcast et Anycast

Il existe 4 types majeurs de routage ou méthodologies de routage : unicast, multicast, broadcast et anycast.

  • Unicast : consiste à transmettre les paquets à un seul destinataire (uni comme unique, un). Un exemple de routage unicast est lorsque vous visitez une page web.
  • Multicast : c'est un peu comme effectuer plusieurs unicast à un groupe déterminé, mais en n'utilisant qu'une seule adresse. Sur un réseau, différents hôtes peuvent s'abonner ou se retirer d'un groupe pour recevoir des données sans que l'émetteur n'ait quoi que ce soit à changer. Cela a diverses applications, comme la transmission d'informations de routage ou encore la diffusion de flux multimédia. Les récepteurs sont alors sous une même adresse IP multicast. En IPv4, les adresses multicast sont forcément de classe D.
  • Broadcast : on envoie à tout le monde. On peut envoyer des paquets en broadcast sur son réseau logique. La dernière adresse IP d'un sous-réseau était son adresse de broadcast. On peut donc l'utiliser pour communiquer avec tous les hôtes de son propre sous-réseau. On peut utiliser l'adresse 255.255.255.255. Avec celle-là, vous pouvez contacter tout le monde. Les routeurs ne laissent pas passer ces broadcasts, mais cette adresse permet d'arroser tous les hôtes de votre réseau physique. Vous pouvez contacter un hôte dans un réseau logique différent du vôtre s'il est dans le même réseau physique. Le broadcast n'existe pas en IPv6.
  • Anycast : le principe de l'anycast, c'est de router des paquets au destinataire le plus proche lorsqu'il existe plusieurs chemins conduisant au même réseau. Si trois routeurs B, C, D conduisent tous les trois au routeur E, un routeur A enverra alors … communiquer directement entre eux. à 0).

Modèle TCP/IP et Couches Réseau

Le modèle TCP/IP est une architecture réseau en 4 couches dans laquelle les protocoles TCP et IP jouent un rôle prédominant, car ils en constituent l'implémentation la plus courante. Le modèle TCP/IP s'est progressivement imposé comme modèle de référence en lieu et place du modèle OSI.

L'origine du modèle TCPIP remonte au réseau ARPANET. ARPANET est un réseau de télécommunication conçu par l'ARPA (Advanced Research Projects Agency), l'agence de recherche du ministère américain de la défense (le DOD : Department of Defense). Outre la possibilité de connecter des réseaux hétérogènes, ce réseau devait résister à une éventuelle guerre nucléaire, contrairement au réseau téléphonique habituellement utilisé pour les télécommunications mais considéré trop vulnérable. Il a alors été convenu qu'ARPANET utiliserait la technologie de commutation par paquet (mode datagramme), une technologie émergeante promettante. C'est donc dans cet objectif et ce choix technique que les protocoles TCP et IP furent inventés en 1974.

Le modèle TCP/IP comprend quatre couches :

  1. Couche hôte réseau : Cette couche semble regrouper les couches physique et liaison de données du modèle OSI. En fait, cette couche n'a pas vraiment été spécifiée ; la seule contrainte de cette couche, c'est de permettre un hôte d'envoyer des paquets IP sur le réseau. L'implémentation de cette couche est laissée libre et est typique de la technologie utilisée sur le réseau local.
  2. Couche internet : Cette couche est la clé de voûte de l'architecture. Cette couche réalise l'interconnexion des réseaux (hétérogènes) distants sans connexion. Son rôle est de permettre l'injection de paquets dans n'importe quel réseau et l'acheminement des ces paquets indépendamment les uns des autres jusqu'à destination. Du fait du rôle imminent de cette couche dans l'acheminement des paquets, le point critique de cette couche est le routage.
  3. Couche transport : Officiellement, cette couche n'a que deux implémentations : le protocole TCP (Transmission Control Protocol) et le protocole UDP (User Datagram Protocol). TCP est un protocole fiable, orienté connexion, qui permet l'acheminement sans erreur de paquets issus d'une machine d'un internet à une autre machine du même internet. Son rôle est de fragmenter le message à transmettre de manière à pouvoir le faire passer sur la couche internet. A l'inverse, sur la machine destination, TCP replace dans l'ordre les fragments transmis sur la couche internet pour reconstruire le message initial. UDP est en revanche un protocole plus simple que TCP : il est non fiable et sans connexion. Son utilisation présuppose que l'on n'a pas besoin ni du contrôle de flux, ni de la conservation de l'ordre de remise des paquets.
  4. Couche application : Contrairement au modèle OSI, c'est la couche immédiatement supérieure à la couche transport, tout simplement parce que les couches présentation et session sont apparues inutiles. Le point important pour cette couche est le choix du protocole de transport à utiliser.

tags: #la #couche #internet #fonctionnement

Articles populaires: