TCP/IP
- Que signifie TCP/IP?
- Différence entre standard et implémentation
- TCP/IP est un modèle en couches
- Présentation du modèle OSI
- L'intérêt d'un système en couches
- Le modèle OSI
- Le modèle TCP/IP
- Encapsulation des données
- La couche Accès réseau
- La couche Internet
- La couche Transport
- La couche Application
Que signifie TCP/IP?
TCP/IP est une suite de protocoles. Le sigle TCP/IP signifie «Transmission Control Protocol/Internet Protocol» et se prononce «T-C-P-I-P». Il provient des noms des deux protocoles majeurs de la suite de protocoles, c'est-à-dire les protocoles TCP et IP).
TCP/IP représente d'une certaine façon l'ensemble des règles de communication sur internet et se base sur la notion adressage IP, c'est-à-dire le fait de fournir une adresse IP à chaque machine du réseau afin de pouvoir acheminer des paquets de données. Etant donné que la suite de protocoles TCP/IP a été créée à l'origine dans un but militaire, elle est conçue pour répondre à un certain nombre de critères parmi lesquels :
- Le fractionnement des messages en paquets ;
- L'utilisation d'un système d'adresses ;
- L'acheminement des données sur le réseau (routage) ;
- Le contrôle des erreurs de transmission de données.
La connaissance de l'ensemble des protocoles TCP/IP n'est pas essentielle pour un simple utilisateur, au même titre qu'un téléspectateur n'a pas besoin de connaître le fonctionnement de son téléviseur, ni des réseaux audiovisuels. Toutefois, sa connaissance est nécessaire pour les personnes désirant administrer ou maintenir un réseau TCP/IP.
Différence entre standard et implémentation
TCP/IP regroupe globalement deux notions :
- La notion de standard : TCP/IP représente la façon dont les communications s'effectuent sur un réseau.
- La notion d'implémentation : l'appellation TCP/IP est souvent étendue aux logiciels basés sur le protocole TCP/IP. TCP/IP est en fait un modèle sur lequel les développeurs d'applications réseau s'appuient. Les applications sont ainsi des implémentations du protocole TCP/IP.
TCP/IP est un modèle en couches
Afin de pouvoir appliquer le modèle TCP/IP à n'importe quelles machines, c'est-à-dire indépendamment du système d'exploitation, le système de protocoles TCP/IP a été décomposé en plusieurs modules effectuant chacun une tâche précise. De plus, ces modules effectuent ces tâches les uns après les autres dans un ordre précis, on a donc un système stratifié, c'est la raison pour laquelle on parle de modèle en couches.
Le terme de couche est utilisé pour évoquer le fait que les données qui transitent sur le réseau traversent plusieurs niveaux de protocoles. Ainsi, les données (paquets d'informations) qui circulent sur le réseau sont traitées successivement par chaque couche, qui vient rajouter un élément d'information (appelé en-tête) puis sont transmises à la couche suivante.
Le modèle TCP/IP est très proche du modèle OSI (modèle comportant 7 couches) qui a été mis au point par l'organisation internationale des standards (ISO, organisation internationale de normalisation) afin de normaliser les communications entre ordinateurs.
Présentation du modèle OSI
OSI signifie Open Systems Interconnection, ce qui se traduit par Interconnexion de systèmes ouverts. Ce modèle a été mis en place par l'ISO afin de mettre en place un standard de communications entre les ordinateurs d'un réseau, c'est-à-dire les règles qui gèrent les communications entre des ordinateurs. En effet, aux origines des réseaux chaque constructeur avait un système propre (on parle de système propriétaire). Ainsi de nombreux réseaux incompatibles coexistaient. C'est la raison pour laquelle l'établissement d'une norme a été nécessaire.
Le rôle du modèle OSI consiste à standardiser la communication entre les machines afin que différents constructeurs puissent mettre au point des produits (logiciels ou matériels) compatibles (pour peu qu'ils respectent scrupuleusement le modèle OSI).
L'intérêt d'un système en couches
Le but d'un système en couches est de séparer le problème en différentes parties (les couches) selon leur niveau d'abstraction.
Chaque couche du modèle communique avec une couche adjacente (celle du dessus ou celle du dessous). Chaque couche utilise ainsi les services des couches inférieures et en fournit à celle de niveau supérieur.
Le modèle OSI
Le modèle OSI est un modèle qui comporte 7 couches, tandis que le modèle TCP/IP n'en comporte que 4. En réalité le modèle TCP/IP a été développé à peu près au même moment que le modèle OSI, c'est la raison pour laquelle il s'en inspire mais n'est pas totalement conforme aux spécifications du modèle OSI. Les couches du modèle OSI sont les suivantes :
Niveau | Ancien modèle | Nouveau modèle |
---|---|---|
Niveau 7 | Couche Application | Niveau Application |
Niveau 6 | Couche Présentation | Niveau Présentation |
Niveau 5 | Couche Session | Niveau Session |
Niveau 4 | Couche Transport | Niveau Message |
Niveau 3 | Couche Réseau | Niveau Paquet |
Niveau 2 | Couche Liaison Données | Niveau Trame |
Niveau 1 | Couche Physique | Niveau Physique |
- La couche physique définit la façon dont les données sont physiquement converties en signaux numériques sur le média de communication (impulsions électriques, modulation de la lumière, etc.).
- La couche liaison données définit l'interface avec la carte réseau et le partage du média de transmission.
- La couche réseau permet de gérer l'adressage et le routage des données, c'est-à-dire leur acheminement via le réseau.
- La couche transport est chargée du transport des données, de leur découpage en paquets et de la gestion des éventuelles erreurs de transmission.
- La couche session définit l'ouverture et la destruction des sessions de communication entre les machines du réseau.
- La couche présentation définit le format des données manipulées par le niveau applicatif (leur représentation, éventuellement leur compression et leur chiffrement) indépendamment du système.
- La couche application assure l'interface avec les applications. Il s'agit donc du niveau le plus proche des utilisateurs, géré directement par les logiciels.
Le modèle TCP/IP
Le modèle TCP/IP, inspiré du modèle OSI, reprend l'approche modulaire (utilisation de modules ou couches) mais en contient uniquement quatre :
Modèle TCP/IP | Modèle OSI |
---|---|
Couche Application | Couche Application |
Couche Présentation | |
Couche Session | |
Couche Transport (TCP) | Couche Transport |
Couche Internet (IP) | Couche Réseau |
Couche Accès réseau | Couche Liaison données |
Couche Physique
|
Comme on peut le remarquer, les couches du modèle TCP/IP ont des tâches beaucoup plus diverses que les couches du modèle OSI, étant donné que certaines couches du modèle TCP/IP correspondent à plusieurs couches du modèle OSI.
Les rôles des différentes couches sont les suivants :
- Couche Accès réseau : elle spécifie la forme sous laquelle les données doivent être acheminées quel que soit le type de réseau utilisé
- Couche Internet : elle est chargée de fournir le paquet de données (datagramme)
- Couche Transport : elle assure l'acheminement des données, ainsi que les mécanismes permettant de connaître l'état de la transmission
- Couche Application : elle englobe les applications standard du réseau (Telnet, SMTP, FTP, ...) Voici les principaux protocoles faisant partie de la suite TCP/IP :
Modèle TCP/IP |
---|
Couche Application
TCP ou UDP |
Couche Internet
IP, ARP, RARP |
Couche Accès réseau
FDDI, PPP, Ethernet, Anneau à jeton (Token ring) |
Encapsulation des données
Lors d'une transmission, les données traversent chacune des couches au niveau de la machine émettrice. A chaque couche, une information est ajoutée au paquet de données, il s'agit d'un en-tête, ensemble d'informations qui garantit la transmission. Au niveau de la machine réceptrice, lors du passage dans chaque couche, l'en-tête est lu, puis supprimé. Ainsi, à la réception, le message est dans son état originel...

A chaque niveau, le paquet de données change d'aspect, car on lui ajoute un en-tête, ainsi les appellations changent suivant les couches :
- Le paquet de données est appelé message au niveau de la couche Application
- Le message est ensuite encapsulé sous forme de segment dans la couche Transport
- Le segment une fois encapsulé dans la couche Internet prend le nom de datagramme
- Enfin, on parle de trame au niveau de la couche Accès réseau
La couche Accès réseau
La couche accès réseau est la première couche de la pile TCP/IP, elle offre les capacités à accéder à un réseau physique quel qu'il soit, c'est-à-dire les moyens à mettre en oeuvre afin de transmettre des données via un réseau.
Ainsi, la couche accès réseau contient toutes les spécifications concernant la transmission de données sur un réseau physique, qu'il s'agisse de réseau local (Anneau à jeton - token ring, ethernet, FDDI), de connexion à une ligne téléphonique ou n'importe quel type de liaison à un réseau. Elle prend en charge les notions suivantes :
- Acheminement des données sur la liaison
- Coordination de la transmission de données (synchronisation)
- Format des données
- Conversion des signaux (analogique/numérique)
- Contrôle des erreurs à l'arrivée
- ...
Heureusement toutes ces spécifications sont transparentes aux yeux de l'utilisateur, car l'ensemble de ces tâches est en fait réalisé par le système d'exploitation, ainsi que les drivers du matériel permettant la connexion au réseau (ex : driver de carte réseau).
La couche Internet
La couche Internet est la couche "la plus importante" (elles ont toutes leur importance) car c'est elle qui définit les datagrammes, et qui gère les notions d'adressage IP.
Elle permet l'acheminement des datagrammes (paquets de données) vers des machines distantes ainsi que de la gestion de leur fragmentation et de leur assemblage à réception.
La couche Internet contient 5 protocoles :
- Le protocole IP
- Le protocole ARP
- Le protocole ICMP
- Le protocole RARP
- Le protocole IGMP Les trois premiers protocoles sont les protocoles les plus importants de cette couche...
La couche Transport
Les protocoles des couches précédentes permettaient d'envoyer des informations d'une machine à une autre. La couche transport permet à des applications tournant sur des machines distantes de communiquer. Le problème consiste à identifier ces applications.
En effet, suivant la machine et son système d'exploitation, l'application pourra être un programme, une tâche, un processus...
De plus, la dénomination de l'application peut varier d'un système à un autre, c'est la raison pour laquelle un système de numéro a été mis en place afin de pouvoir associer un type d'application à un type de données, ces identifiants sont appelés ports.
La couche transport contient deux protocoles permettant à deux applications d'échanger des données indépendamment du type de réseau emprunté (c'est-à-dire indépendamment des couches inférieures...), il s'agit des protocoles suivants :
- TCP, un protocole orienté connexion qui assure le contrôle des erreurs
- UDP, un protocole non orienté connexion dont le contrôle d'erreur est archaïque
La couche Application
La couche application est la couche située au sommet des couches de protocoles TCP/IP. Celle-ci contient les applications réseaux permettant de communiquer grâce aux couches inférieures.
Les logiciels de cette couche communiquent donc grâce à un des deux protocoles de la couche inférieure (la couche transport) c'est-à-dire TCP ou UDP.
Les applications de cette couche sont de différents types, mais la plupart sont des services réseau, c'est-à-dire des applications fournies à l'utilisateur pour assurer l'interface avec le système d'exploitation. On peut les classer selon les services qu'ils rendent :
- Les services de gestion (transfert) de fichier et d'impression
- Les services de connexion au réseau
- Les services de connexion à distance
- Les utilitaires Internet divers