Revenir
Revenir

Protocole TCP/IP et routage

Lorsque deux personnes se parlent afin d'échanger des informations, elles suivent un protocole faisant...

Sommaire

Qu'est-ce qu'un protocole de communication informatique ?Qu'est-ce qu'un protocole de communication ?Les sept étapes d'un protocole de communication
Comment fonctionne le routage IP ?Qu'est-ce que le routage ?Qu'est-ce qu'un routeur ?Qu'est-ce qu'une table de routage ?Un exemple de routage IP
Comment le protocole TCP/IP transporte-t-il les données ?Qu'est-ce que le protocole IP ?Qu'est-ce que le protocole TCP ?Qu'est-ce que le protocole TCP/IP ?Qu'est-ce que l'encapsulation des données ?
L'encapsulation des données dans le protocole TCP/IP - Schéma

Qu'est-ce qu'un protocole de communication informatique ?

Qu'est-ce qu'un protocole de communication ?

Lorsque deux personnes se parlent afin d'échanger des informations, elles suivent un protocole faisant intervenir, d'une manière simplifiée, trois étapes :
  • établissement de la communication ;
  • échange d'informations ;
  • terminaison de la communication.
En informatique, un protocole est un ensemble de règles qui régissent la transmission de l'information sur un réseau. Il existe de nombreux protocoles, chacun spécialisé dans une tâche bien précise : DHCP, DNS, FTP, HTTP, HTTPS, POP, SMTP, SSH...
D'une manière générale, on peut décomposer un protocole de communication entre deux machines (ou services) en sept étapes. 

Les sept étapes d'un protocole de communication

1. Établissement de la connexion
Dans cette étape, les deux machines qui souhaitent communiquer établissent une connexion initiale. Cela peut impliquer l'échange de messages de synchronisation ou d'autres procédures pour établir une liaison fiable entre les dispositifs ou les applications.
2. "Handshaking" (poignée de main)
Une fois la connexion établie, les machines peuvent effectuer un processus de "handshaking" pour confirmer leur disponibilité et s'assurer qu'elles sont prêtes à communiquer. Cela peut inclure l'échange de messages spécifiques pour synchroniser les paramètres et les configurations.
3. Négociation des paramètres
Les machines peuvent négocier les paramètres spécifiques de la communication, tels que la taille maximale des paquets, les options de sécurité ou d'autres attributs. Cette étape permet de s'assurer que les deux machines sont d'accord sur les paramètres de la communication.
4. Échanges de données
Une fois que les paramètres sont négociés, les machines peuvent commencer à échanger les données réelles. Cela peut impliquer l'envoi de messages, de paquets ou d'autres formes d'unités de données spécifiques au protocole utilisé. Les données sont généralement divisées en segments ou en paquets pour faciliter la transmission.
5. Contrôle d'erreurs
Pendant la transmission des données, des mécanismes de contrôle d'erreurs sont utilisés pour garantir l'intégrité et la fiabilité des données. Cela peut inclure l'ajout de bits de contrôle ou de codes de correction d'erreurs pour détecter et corriger les erreurs éventuelles.
6. Contrôle de flux
Pour éviter la congestion et réguler le débit de la communication, des mécanismes de contrôle de flux peuvent être utilisés. Cela permet de gérer la vitesse à laquelle les données sont envoyées et reçues pour éviter les pertes de données ou les problèmes de performance.
7. Fermeture de la connexion
Une fois que toutes les données ont été échangées, les machines peuvent procéder à la fermeture de la connexion. Cela peut impliquer l'échange de messages de fin ou d'autres procédures pour signaler la fin de la communication et libérer les ressources associées.
Il est important de noter que la séquence et les détails spécifiques des étapes décrites précédemment, peuvent varier en fonction du protocole utilisé. Certains protocoles peuvent mobiliser des étapes supplémentaires ou des adaptations spécifiques afin de répondre aux besoins et aux fonctionnalités particulières de ceux-ci.

Comment fonctionne le routage IP ?

Qu'est-ce que le routage ?

Dans les réseaux à commutation de paquets, tels qu'Internet, le processus de routage consiste à sélectionner les chemins que doivent emprunter les paquets IP (Internet Protocol) pour se rendre de leur origine à leur destination. Ces décisions de routage Internet sont prises par des périphériques réseau spécialisés qui sont appelés routeurs.

Qu'est-ce qu'un routeur ?

Un routeur est un périphérique qui permet de connecter différents réseaux et de faire circuler les données entre eux. Un routeur peut être imaginé comme un carrefour où plusieurs routes se rencontrent et où les décisions sont prises pour guider les paquets de données vers leur destination.
Le rôle principal d'un routeur est de prendre des décisions de routage. Lorsqu'un paquet de données arrive au routeur, il examine l'en-tête du paquet pour déterminer sa destination. En se basant sur les informations contenues dans sa table de routage, le routeur choisit le meilleur chemin pour acheminer le paquet vers sa destination.
Un routeur peut être utilisé pour connecter différents types de réseaux, tels que des réseaux locaux (LAN) ou des réseaux étendus (WAN). En conséquence, il possède toujours deux interfaces réseau distinctes : une connectée au réseau local (LAN) l'autre au réseau étendu (WAN). Il peut également être utilisé pour connecter des réseaux filaires et sans fil.

Qu'est-ce qu'une table de routage ?

Les routeurs s'appuient sur des tables de routage internes afin de prendre des décisions d'acheminement des paquets à travers le réseau. Une table de routage enregistre les chemins spécifiques que les paquets doivent emprunter pour atteindre chaque destination pour laquelle le routeur est assigné.
Le processus de fonctionnement des routeurs est le suivant : lorsqu'un routeur reçoit un paquet, il examine les en-têtes du paquet afin de déterminer sa destination prévue. En utilisant les informations contenues dans ses tables de routage, le routeur décide du meilleur chemin pour acheminer le paquet.
Les routeurs effectuent cette opération de routage des millions de fois par seconde, en traitant des millions de paquets. Pendant son trajet vers sa destination, un paquet peut être acheminé à travers plusieurs routeurs différents.
Les tables de routage peuvent être de deux types : statiques ou dynamiques.
Les tables de routage statiques sont configurées manuellement par un administrateur réseau. Elles ne changent pas à moins d'une intervention manuelle.
En revanche, les tables de routage dynamiques se mettent à jour automatiquement. Les routeurs utilisent divers protocoles de routage pour échanger des informations avec d'autres routeurs et déterminer les chemins les plus courts et les plus rapides vers les destinations.
Le routage dynamique exige une puissance de calcul plus importante, c'est pourquoi les petits réseaux préfèrent généralement utiliser un routage statique. En revanche, pour les réseaux de taille moyenne et grande, le routage dynamique offre une meilleure efficacité en termes de performance et d'adaptabilité.

Un exemple de routage IP

Supposons, comme sur le schéma, que nous ayons un réseau local (LAN) avec l'adresse IP 192.168.0.0/24. Cela signifie que les trois premiers octets (192.168.0) représentent le réseau et le dernier octet (0) est réservé aux hôtes.
Le réseau local (LAN) et connecté à internet (WAN) via un routeur (box internet) qui possède deux interfaces réseau :
  • Interface 1 : Adresse IP 192.168.0.1/24 (connectée au réseau local)
  • Interface 2 : Adresse IP 10.0.0.1/24 (connectée au réseau externe du FAI)
Maintenant, supposons qu'un ordinateur ayant pour IP 192.168.0.101/24 sur le réseau local souhaite envoyer des données à un serveur possédant l'adresse IP 8.8.8.8 (représentant le serveur DNS de Google).
L'ordinateur consulte sa table de routage et remarque que l'adresse IP de destination (8.8.8.8) ne fait pas partie du réseau local. Il envoie donc le paquet au routeur, qui examine également sa table de routage.
Le routeur constate qu'il dispose d'une interface connectée au réseau local, mais que l'adresse de destination appartient à un autre réseau. Il décide donc de transmettre le paquet via son interface 2, qui est connectée au réseau externe.
Le routeur encapsule le paquet dans un nouvel en-tête IP avec l'adresse IP source de son interface 2 (10.0.0.1) et l'adresse IP de destination du serveur DNS (8.8.8.8). Ensuite, il envoie le paquet vers le réseau externe.
Le routeur externe, qui est responsable du routage des paquets sur Internet, reçoit le paquet. Il utilise ses propres tables de routage pour déterminer le prochain saut vers la destination finale.
Supposons que le routeur externe dispose d'une entrée dans sa table de routage indiquant que le réseau correspondant à l'adresse IP de destination (8.8.8.8) peut être atteint via une autre interface connectée à Internet. Le routeur externe encapsule à nouveau le paquet dans un nouvel en-tête IP approprié pour le prochain saut et le transmet vers ce réseau.
Ce processus se poursuit à travers plusieurs routeurs sur Internet jusqu'à ce que le paquet atteigne finalement le réseau du serveur DNS de Google.
Une fois que le paquet atteint le réseau du serveur DNS, les routeurs locaux acheminent le paquet vers l'adresse IP de destination spécifiée (8.8.8.8) jusqu'à ce qu'il atteigne le serveur DNS lui-même.
Le serveur DNS répond ensuite au paquet en suivant le même processus de routage inverse pour renvoyer les données demandées à l'ordinateur source sur le réseau local.

Comment le protocole TCP/IP transporte-t-il les données ?

Qu'est-ce que le protocole IP ?

Le protocole IP (Internet Protocol) utilise des adresses IP pour identifier de manière unique les dispositifs connectés à un réseau. Il est chargé du routage des paquets de données à travers les différents réseaux privés et publiques.
Il divise les données en petits paquets, ajoute des adresses source et destination à chaque paquet, et les envoie de manière indépendante vers leur destination. L'IP est un protocole sans connexion, ce qui signifie qu'il ne garantit pas la livraison des paquets ni ne vérifie si le destinataire les a reçus. Il est conçu pour être simple et efficace, en se concentrant sur le routage des paquets sur le réseau.

Qu'est-ce que le protocole TCP ?

Le protocole TCP (Transmission Control Protocol) est chargé d'assurer la fiabilité de la transmission des données.
Il fonctionne au-dessus du protocole IP et utilise un mécanisme de contrôle de flux et de retransmission pour s'assurer que les données sont correctement reçues par le destinataire. TCP établit une connexion virtuelle entre l'expéditeur et le destinataire avant d'envoyer les données et il garantit que les paquets sont reçus dans l'ordre correct et sans erreurs. Si des paquets sont perdus en cours de route, TCP demande leur retransmission.

Qu'est-ce que le protocole TCP/IP ?

Les protocoles TCP et IP travaillent en tandem afin d'assurer la communication efficace et fiable des données sur Internet entre les machines.
Sans IP, il n'y aurait pas de moyen de diriger les paquets vers leur destination, et sans TCP, il serait difficile de garantir que les données sont correctement reçues par le destinataire.
Ensemble ils constituent la norme universelle TCP/IP pour la communication internet des données entre les machines.

Qu'est-ce que l'encapsulation des données ?

L'encapsulation des données dans le protocole TCP/IP suit le modèle simplifié en 4 couches (application, transport, internet, réseau) de la modélisation OSI (Open Systems Interconnection). 
Le schéma au début de ce document récapitule le processus d'encapsulation puis de désencapsulation des données lors de leur traversée des couches successives du modèle OSI.
L'encapsulation en couches permet aux données de traverser le réseau de manière organisée et structurée, en ajoutant des informations de contrôle et d'identification à chaque étape.

L'encapsulation des données dans le protocole TCP/IP - Schéma