TCP/IP & OSI : les couches des réseaux

Lors de la conception des premiers réseaux informatiques, les ingénieurs se sont principalement concentrés sur l’aspect matériel, en reléguant l’aspect logiciel à l’arrière-plan. Cette stratégie ne s’applique plus. Les logiciels de réseau actuels sont très structurés.

1. Introduction

Afin de réduire la complexité de la conception, la plupart des réseaux sont organisés en couches, appelées couches ou niveaux, dont chacune est placée par-dessus la précédente. Le nombre de couches, ainsi que le nom, le contenu et la fonction de chaque couche, diffèrent selon les réseaux. Le rôle de chaque couche est de fournir des services à la couche supérieure, tandis que les détails de la mise en œuvre sont cachés de la couche. D’une certaine manière, on peut dire que chaque couche représente une boîte noire qui fournit certains services au niveau supérieur.
Lorsque la couche n d’une machine communique avec la couche n d’une autre machine, les règles et conventions de cette communication sont regroupées sous le nom de protocole de la couche n. En substance, un protocole est un accord entre les parties qui communiquent sur la manière dont leur dialogue doit se dérouler.
Un ensemble de couches et de protocoles forme une architecture de réseau. La spécification d’une architecture doit contenir suffisamment d’informations pour qu’un développeur puisse écrire le programme (ou le matériel) pour chaque couche, afin qu’il obéisse correctement au protocole concerné. Peu importe que les interfaces de toutes les machines d’un réseau soient les mêmes, tant que chaque machine peut utiliser correctement tous les protocoles. L’ensemble des protocoles utilisés par un système donné, avec un protocole par couche, est appelé une pile de protocoles.
Pour mieux comprendre ce que signifie la communication stratifiée, imaginez la situation suivante. Deux philosophes (processus de la couche 3) veulent se parler, mais l’un parle l’ourdou et l’anglais, et l’autre le chinois et le français. Comme ils ne peuvent pas partager une langue commune, ils engagent chacun un traducteur (processus de niveau 2), qui à son tour utilise une secrétaire (processus de niveau 1). Le premier philosophe envoie un message (en anglais) à son traducteur via l’interface 2/3, indiquant « J’aime les lapins ». Comme les traducteurs s’accordent sur une langue commune, en l’occurrence le néerlandais, le message est converti en « J’aime les lapins ».
Le traducteur transmet le message à sa secrétaire avant de l’envoyer, par exemple par courrier électronique (protocole de couche 1). Lorsque le message parvient à l’autre secrétaire, il est transmis au traducteur local, qui le traduit en français et l’envoie au deuxième philosophe via l’interface 2/3. Notez que les protocoles sont totalement indépendants tant que les interfaces ne sont pas modifiées. Les traducteurs pourraient passer au finnois, à condition qu’ils soient tous deux d’accord et qu’ils ne changent pas leurs interfaces aux couches 1 et 3. De la même manière, les secrétaires pouvaient choisir le téléphone au lieu du courrier électronique, sans déranger ni même avertir les autres couches. Chaque processus peut ajouter certaines informations, uniquement pour le processus des pairs, et ces informations ne sont pas transmises à la couche supérieure.

Le but d’un système à couches est de diviser le problème en différentes parties (les couches) en fonction de leur niveau d’abstraction.
Chaque couche du modèle communique avec une couche adjacente (la couche supérieure ou la couche inférieure). Chaque couche utilise donc les services des couches inférieures et fournit des services à la couche supérieure.
Entre deux appareils connectés, les couches doivent être identiques et pouvoir communiquer avec le même protocole.

2. Services avec et sans connexion

 

Les couches peuvent offrir deux types de services différents aux couches supérieures : avec connexion et sans connexion. Ce chapitre examine ces services et leurs différences.
Un service connecté suit le modèle du central téléphonique. Pour parler à quelqu’un, décrochez le téléphone, composez le numéro, parlez et raccrochez. De la même manière, pour utiliser un service de réseau avec une connexion, l’utilisateur doit d’abord établir une connexion, l’utiliser puis la libérer. L’aspect essentiel d’une connexion est qu’elle fonctionne comme un tuyau : l’émetteur injecte des objets (bits) d’un côté et le récepteur les capte de l’autre. Dans la plupart des cas, l’ordre dans lequel les bits sont transmis est maintenu.

Un service avec raccordement suit le modèle du central téléphonique. Pour parler à quelqu’un, décrochez le téléphone, composez le numéro, parlez et raccrochez. De la même manière, pour utiliser un service de réseau avec connexion, l’utilisateur doit d’abord établir une connexion, l’utiliser puis la libérer. L’aspect essentiel d’une connexion est qu’elle fonctionne comme un tuyau : l’émetteur injecte des objets (bits) d’un côté et le récepteur les capte de l’autre.

L’aspect essentiel d’une connexion est qu’elle agit comme un tuyau : l’émetteur injecte des objets (bits) d’un côté et le récepteur les capte de l’autre. Dans la plupart des cas, l’ordre dans lequel les bits sont transmis est maintenu.
À l’inverse, un service sans connexion suit le modèle du système postal. Chaque message (lettre) contient l’adresse de destination complète, et chaque message est acheminé par les nœuds intermédiaires du système indépendamment de tous les messages ultérieurs. Les messages ont des noms différents selon le contexte : un paquet est un message sur la couche réseau. Lorsque les nœuds intermédiaires reçoivent un message dans son intégralité avant de le transmettre au nœud suivant, on parle de commutation de stockage et de retransmission. Normalement, lorsque deux messages sont envoyés à la même destination, le premier message envoyé sera le premier à arriver. Toutefois, il peut y avoir des retards qui font que le deuxième message arrive plus tôt.
Chaque service peut encore être caractérisé par sa fiabilité. Certains services sont qualifiés de fiables en ce sens qu’ils ne perdent jamais de données. En principe, un service fiable est mis en œuvre au moyen d’un système de notification dans lequel le destinataire confirme la réception de chaque message, de sorte que l’expéditeur est certain que le message est arrivé. Le processus de confirmation entraîne une surcharge de services et des retards, qui sont souvent utiles mais parfois indésirables.
Dans certaines demandes, les retards causés par les accusés de réception sont inacceptables. L’un d’eux est le transport de la voix numérisée, pour la voix sur IP (VoIP). Il est moins gênant pour les utilisateurs d’entendre occasionnellement du bruit sur la ligne de temps que de subir un retard causé par l’attente des confirmations. De plus, quelques mauvais pixels ne posent pas de problème lors d’une vidéoconférence, alors qu’il serait ennuyeux d’avoir des images saccadées en raison des arrêts de transmission associés à la correction des erreurs.
Un service peu fiable sans connexion (c’est-à-dire inconnu) est souvent appelé service de datagramme, tout comme le service télégraphique, qui n’envoie pas non plus de confirmation à l’expéditeur.
Dans d’autres situations, il est souhaitable, pour des raisons pratiques, de ne pas établir de connexion pour envoyer un message, mais la fiabilité est essentielle. Dans ce cas, le service de datagramme agréé peut être utilisé. Elle est similaire à l’envoi d’une lettre recommandée avec accusé de réception.

 

3. Modèles de référence

Bien que les protocoles du modèle OSI soient rarement utilisés de nos jours, le modèle lui-même est assez général et reste valable : les fonctionnalités étudiées à chaque niveau de couche sont toujours très importantes. Pour le modèle TCP/IP, c’est l’inverse qui est vrai : le modèle n’est pas largement utilisé, alors que les protocoles sont largement utilisés.

3.1. Le modèle de référence OSI/OSI

Le modèle OSI (Open Systems Interconnection) est basé sur une proposition développée par l’ISO (International Organization for Standardization) comme première étape vers la normalisation internationale des protocoles utilisés dans les différentes couches. Elle a été révisée en 1995. Il est appelé le modèle de référence OSI parce qu’il couvre les systèmes ouverts, c’est-à-dire les systèmes qui sont ouverts à la communication avec d’autres systèmes.
Les données transmises s’appellent une unité de données. Ils sont parfois appelés PDU (Protocol Data Unit) ; dans ce cas, leur nom est précédé de la lettre initiale de la couche d’où proviennent les données. Dans la couche application, par exemple, ils sont appelés APDU (Application Protocol Data Unit). Ainsi, dans la couche session, ils sont appelés APDU (Application Protocol Data Unit)… SPDU (Session Protocol Data Unit) …
Ce modèle est constitué de sept couches :

 

1. La couche physique

La couche physique est responsable du transfert des bits bruts sur un canal de communication. L’un des objectifs de la conception à ce niveau est de faire en sorte qu’un bit transmis d’un côté atteigne également 1 de l’autre côté et non 0. Les questions typiques sont les suivantes : quels signaux électriques doivent être utilisés pour afficher un 1 et un 0, combien de nanosecondes doit prendre un bit, si un bit peut être transmis de manière bidirectionnelle en même temps, comment une connexion initiale est effectuée puis relâchée lorsque les deux extrémités sont prêtes, ou le nombre de broches d’un connecteur et le rôle de chacune de ces broches. Les problèmes de conception concernent principalement les interfaces mécaniques et électriques et la synchronisation, mais aussi le support de transmission physique sous-jacent à la couche physique.

2. La couche de liaison des données

Le rôle principal de la couche liaison de données est de faire apparaître un support de communication non traité sur la couche réseau comme une connexion sans erreurs de transmission non détectées. Il le fait en masquant les erreurs réelles de sorte que la couche réseau ne les voit pas en mettant en œuvre des codes de détection d’erreurs . S’il s’agit d’un service fiable, le récepteur confirme la bonne réception de chaque trame en envoyant une trame d’accusé de réception à l’émetteur.
Un autre problème important à résoudre dans cette couche, mais aussi dans la plupart des couches supérieures, est d’empêcher la saturation d’un récepteur lent par les données d’un émetteur rapide. Utiliser des mécanismes de contrôle des flux pour éviter l’encombrement des données.

3. La couche réseau

La couche réseau contrôle le fonctionnement du sous-réseau. La couche réseau identifie les ordinateurs connectés au réseau et détermine comment les paquets sont acheminés de la source à la destination. Les itinéraires peuvent être sélectionnés à l’aide de tableaux statiques « câblés » dans le réseau et sont rarement modifiés ou, le plus souvent, mis à jour automatiquement pour éviter les composants défectueux. Ils peuvent également être déterminés au début de chaque appel, par exemple lors d’une connexion à partir d’un terminal (comme une connexion à une machine distante). Enfin, ils peuvent également être très dynamiques et peuvent être redéfinis pour chaque paquet afin de tenir compte de la charge actuelle du réseau.
Lorsqu’un paquet doit passer d’un réseau à l’autre pour atteindre sa destination, de nombreux problèmes peuvent se poser : la technique d’adressage du second réseau peut être différente de celle du premier, le second réseau peut refuser le paquet s’il est trop volumineux, les protocoles peuvent être différents, etc. La couche réseau doit gérer tous ces problèmes afin que les réseaux hétérogènes puissent être interconnectés.

4. La couche transport

La fonction de base de la couche transport est d’accepter les données de la couche supérieure, éventuellement de les diviser en unités plus petites, de les envoyer à la couche réseau et de s’assurer qu’elles arrivent correctement à l’autre extrémité.
La couche de transport est une véritable couche de bout en bout : elle transporte les données de la source à la destination. En d’autres termes, un programme sur la machine source a une conversation avec un programme similaire sur la machine de destination, en utilisant des en-têtes de message et des messages de contrôle. Dans les couches inférieures, chaque protocole se déroule entre une machine et ses voisins immédiats, et non entre les machines source et destination, qui peuvent être séparées par de nombreux routeurs.
C’est dans la couche transport que les erreurs de transmission sont corrigées et que l’acheminement correct des données est vérifié. Il optimise l’utilisation de la couche réseau et fournit des tâches de type fragmentation des messages. Si une connexion est interrompue, il est décidé de réinitialiser la connexion et de reprendre la transmission des données.
La différence entre les couches 1 à 3, qui sont enchaînées, et les couches 4 à 7, qui sont de bout en bout, est illustrée ci-dessous :

5. La couche session

La couche session permet aux utilisateurs de différentes machines d’établir des sessions les uns avec les autres. Une session offre une variété de services, dont la gestion du dialogue (surveillance de la ronde de transmission), la gestion des jetons (empêcher deux participants d’essayer la même opération critique en même temps) et la synchronisation (gestion des points de répétition permettant aux longues émissions de reprendre là où elles se sont arrêtées après une interruption).
Les ports de communication sont ouverts sur la couche session.

6. La couche de présentation

Contrairement aux couches inférieures, qui s’occupent principalement du transport des bits, la couche de présentation s’occupe de la syntaxe et de la sémantique des informations transmises. Permettre aux ordinateurs utilisant différentes représentations de données internes de communiquer.
C’est dans cette couche que les informations sont converties d’un format à un autre (ASCII, par exemple) pour assurer l’indépendance entre l’utilisateur et le transport.
Les opérations de conversion, de cryptage et de compression sont effectuées ici.

7. La couche d’application

La couche application contient divers protocoles dont les utilisateurs ont souvent besoin. HTTP (HyperText Transfer Protocol), qui constitue la base du World Wide Web, est un protocole d’application largement utilisé. Lorsqu’un navigateur veut afficher une page web, il transmet son nom au serveur qui l’héberge en utilisant le protocole HTTP, et le serveur envoie la page en réponse. D’autres protocoles d’application sont utilisés pour le transfert de fichiers, le courrier électronique et les actualités.

D’autres protocoles d’application sont utilisés pour le transfert de fichiers, le courrier électronique et les actualités.
Note : Les trois couches – application, présentation et session – collectent les données au niveau de l’utilisateur et les formatent pour les transmettre à l’application de destination.

 

3.2. Le modèle de référence TCP/IP

Parlons maintenant du modèle de référence utilisé par l’ancêtre des réseaux étendus, ARPAnet, et son célèbre descendant, l’Internet mondial. À l’origine, il s’agissait d’un réseau de recherche financé par le ministère américain de la défense (DoD). Il a fini par connecter des centaines de sites universitaires et gouvernementaux par le biais de lignes téléphoniques louées. Lorsque les réseaux satellitaires et radio sont apparus, une nouvelle architecture de référence a dû être développée pour permettre aux protocoles existants d’interagir avec eux.
Ainsi, dès le début, la capacité à connecter de nombreux réseaux de façon transparente a été l’un des principaux objectifs de conception d’ARPAnet. Cette architecture est ensuite devenue le modèle de référence TCP/IP, du nom des deux protocoles les plus importants.
Craignant que certains de ses précieux hôtes, routeurs et passerelles d’interconnexion soient soudainement neutralisés par une attaque de l’Union soviétique, le DoD avait un autre objectif important : s’assurer que le réseau survivrait à la perte d’équipements de sous-réseau sans interrompre les appels existants.

1. La couche réseau

Toutes ces exigences ont conduit au choix d’un réseau à commutation de paquets basé sur une couche sans connexions transversales aux différents réseaux. La couche inférieure de ce modèle, la couche liaison, décrit ce que doivent faire les liaisons telles que les lignes série et les connexions Ethernet conventionnelles pour répondre aux besoins de cette interconnexion sans connexion. Il ne s’agit pas du tout d’une couche au sens normal du terme, mais plutôt d’une interface entre les hôtes et les connexions de transmission.
Elle soutient les concepts suivants :
◦ acheminant les données sur le lien,
◦ synchronisation du transfert de données,
◦ format de données,
◦ conversion des signaux (analogiques/numériques),
◦ vérification des erreurs à l’arrivée.
Toutes ces spécifications sont transparentes pour l’utilisateur car toutes ces tâches sont en fait effectuées par le système d’exploitation et les pilotes de matériel pour la connexion au réseau (par exemple, le pilote de la carte réseau).

2. La couche Internet

La couche Internet est l’axe central qui soutient toute l’architecture. La figure de droite montre qu’elle correspond approximativement à la couche réseau du modèle OSI. Il permet aux hôtes d’introduire des paquets sur n’importe quel réseau et garantit qu’ils sont acheminés indépendamment vers leur destination (qui peut être sur un réseau différent de l’original). Les paquets peuvent même arriver dans un ordre complètement différent, auquel cas les couches supérieures les réarrangeront si cela fait partie des exigences de livraison. Notez que le terme « Internet » est utilisé ici dans le sens général d’inter-réseau, même si cette couche est présente dans l’Internet.

La couche Internet définit un format de paquet officiel et un protocole appelé IP (Internet Protocol), plus un protocole d’accompagnement appelé ICMP (Internet Control Message Protocol), qui aide au fonctionnement. Son rôle est d’acheminer les paquets IP vers leur destination. Les deux principales préoccupations à ce niveau sont donc le routage et la congestion (bien que l’IP n’ait pas été très efficace pour les éviter).

3. La couche transport

La couche située directement au-dessus de la couche Internet est désormais appelée couche de transport dans le modèle TCP/IP. Comme la couche de transport dans le modèle OSI, le rôle de cette couche est de permettre à des entités liées sur les hôtes source et destination de passer un appel.
Le problème est d’identifier ces demandes. En effet, selon la machine et le système d’exploitation, l’application peut être un programme, une tâche, un processus… Un système de numéros a donc été mis en place pour relier un type d’application à un type de données, ces identifiants sont appelés : ports.
La couche transport contient 2 protocoles qui permettent d’échanger des données indépendamment du type de réseau emprunté (c’est-à-dire les couches inférieures) :
Le premier, TCP (Transmission Control Protocol), est un protocole de connexion fiable qui garantit la livraison sans faille à chaque hôte du travail sur Internet d’un flux d’octets transmis par une machine. Il sépare le flux entrant d’octets en messages discrets et transmet chacun d’entre eux à la couche Internet. À l’arrivée, le processus TCP de destination fusionne les messages reçus dans un flux sortant. Le TCP permet également de contrôler le flux pour éviter qu’un émetteur rapide n’inonde un récepteur lent avec plus de messages qu’il ne peut en traiter.
Le second, UDP (User Datagram Protocol), est un protocole peu fiable et sans connexion qui permet aux applications d’effectuer elles-mêmes le séquençage et le contrôle de flux au lieu d’utiliser le TCP. Ce protocole est également largement utilisé pour les requêtes ponctuelles avec réponse dans les environnements client-serveur, et par les applications où la livraison des données en temps voulu est plus importante que leur précision, comme lors de la transmission de sons ou d’images. Les relations entre IP, TCP et UDP sont illustrées ci-dessous :

4. La couche d’application

Le modèle TCP/IP ne contient pas de couche session ou de couche présentation, car leur nécessité n’a pas été reconnue. Au lieu de cela, les applications contiennent simplement les fonctions correspondantes lorsqu’elles en ont besoin. L’expérience avec le modèle OSI a confirmé la pertinence de ce choix : ces couches sont peu utiles pour la plupart des applications.
Directement au-dessus de la couche transport se trouve la couche application, qui contient tous les protocoles de haut niveau. Les premiers à être développés sont Telnet (protocole de terminal virtuel), FTP (protocole de transfert de fichiers) et SMTP (protocole d’échange de courrier électronique). De nombreux autres protocoles ont été ajoutés au fil des ans. Il s’agit notamment du DNS (Domain Name System), qui permet de relier les noms d’hôtes à leurs adresses réseau, du HTTP (HyperText Transfer Protocol), qui permet de transférer des pages web, et du RTP (Real-Time Transfer Protocol), qui permet de diffuser en temps réel des médias en continu tels que la voix et la vidéo,

4. Comparaison des modèles OSI/OSI et TCP/IP

Les modèles de référence OSI et TCP/IP ont beaucoup en commun. Premièrement, ils sont tous deux basés sur le concept d’une pile de protocoles indépendante. Deuxièmement, leurs couches sont fonctionnellement presque identiques. Par exemple, le rôle des couches inférieures, y compris la couche transport, est de fournir un service de transport de bout en bout, indépendamment du type de réseau, aux processus qui veulent communiquer. De même, les couches situées au-dessus de la couche de transport sont des couches orientées vers les applications qui utilisent le service de transport.

Trois concepts forment le noyau du modèle OSI :
1. 1. Services.
2. 2. Interfaces.
3. 3. Les protocoles.
La principale contribution du modèle OSI a probablement été de rendre plus explicite la distinction entre ces trois concepts. Chaque couche fournit des services à la couche supérieure. La définition du service indique ce que fait une couche, mais pas comment elle le fait ni comment les entités supérieures y accèdent. Le

La principale contribution du modèle OSI a probablement été de rendre plus explicite la distinction entre ces trois concepts. Chaque couche fournit des services à la couche supérieure. La définition du service indique ce que fait une couche, mais pas comment elle le fait ni comment les entités supérieures y accèdent. Le service précise la sémantique de la couche.
L’interface d’une couche indique aux processus situés au-dessus d’elle comment y accéder. Il précise les paramètres à utiliser et les résultats à attendre. Il ne dit rien non plus sur le fonctionnement interne de la couche.
Enfin, les protocoles pairs utilisés dans une couche sont son propre domaine. Elle peut utiliser le protocole qu’elle veut, pour autant qu’elle remplisse son rôle (c’est-à-dire qu’elle fournisse les services prévus). Il peut également modifier les protocoles sans affecter le fonctionnement des couches supérieures.

 

4.1. Critique du modèle de référence OSI/OSI

Lorsque la deuxième édition de ce livre a été publiée (1989), il était clair pour de nombreux experts du domaine que le modèle OSI et ses protocoles prendraient le dessus et balayeraient tout sur leur passage. Cela ne s’est pas produit pour plusieurs raisons importantes :
1. 1. Timing insuffisant : les protocoles de la pile TCP/IP étaient déjà largement utilisés dans les universités de recherche lorsque le modèle OSI a été publié. Bien que la vague d’investissement n’ait pas encore eu lieu, le marché universitaire était suffisamment important pour que certains fabricants commencent à proposer des produits TCP/IP avec prudence. Lorsque le modèle OSI est apparu, ils ne voulaient pas soutenir une deuxième pile de protocoles avant d’y être contraints. Il n’y a donc pas eu d’offre initiale. Les entreprises ont adopté une approche attentiste, aucune d’entre elles ne voulait prendre le risque d’être la première à se lancer et OSI a été un succès.
2. une technologie médiocre : le choix des sept couches était plus politique que technique, et deux d’entre elles – session et présentation – sont pratiquement vides, tandis que deux autres – liaison de données et réseau – sont tout simplement trop pleines.
Un autre problème avec l’OSI est que certaines fonctions, telles que l’adressage, le contrôle des flux et le contrôle des erreurs, se répètent dans chaque couche. Des études ont montré, par exemple, que le contrôle des erreurs doit être effectué au niveau le plus élevé pour être efficace, de sorte que la répétition à chaque niveau est souvent inutile et inefficace.
3. 3. Mauvaise mise en œuvre : Étant donné l’énorme complexité du modèle et des protocoles, il n’est pas surprenant que les premières mises en œuvre aient été importantes, lourdes et lentes. Tous ceux qui ont eu affaire à eux ont remarqué que cela s’est fait à leurs dépens. Dans ce contexte, l’OSI n’a pas tardé à devenir synonyme de mauvaise qualité.
En revanche, l’une des premières implémentations de TCP/IP, qui faisait partie de l’UNIX de Berkeley, a connu un certain succès (et gratuit, d’ailleurs). Il a rapidement gagné de nombreux partisans, ce qui a permis d’améliorer la situation, puis d’élargir la communauté des utilisateurs, ce qui a permis d’apporter d’autres améliorations.
4. 4. Mauvaise stratégie : après la première mise en œuvre, beaucoup de gens, surtout dans les milieux universitaires, pensaient que le TCP/IP faisait partie d’UNIX. Et le monde universitaire a vu en UNIX le nec plus ultra dans les années 1980. D’autre part, l’OSI était considéré comme le produit des services de télécommunications européens, puis de la Communauté européenne et plus tard du gouvernement des États-Unis.
4.2 Critique du modèle de référence TCP/IP
Le modèle TCP/IP et ses protocoles ont également leurs problèmes. Premièrement, le modèle ne fait pas de distinction claire entre les concepts de services, d’interfaces et de protocoles. Les bonnes pratiques en matière de génie logiciel ont montré que le

Les bonnes pratiques en matière de génie logiciel ont montré qu’il est essentiel de séparer la spécification de la mise en œuvre, ce que le modèle OSI fait soigneusement, mais pas le modèle TCP/IP. Par conséquent, il est difficile de s’appuyer sur le modèle TCP/IP pour concevoir de nouveaux réseaux utilisant les nouvelles technologies.
Deuxièmement, comme le modèle n’est pas du tout général, il ne décrit pas vraiment les piles de protocoles autres que TCP/IP. Il est totalement impossible de l’utiliser pour décrire, par exemple, la technologie Bluetooth.
Troisièmement, la couche de liaison n’est pas du tout une couche au sens où on l’entend habituellement dans le contexte des protocoles à couches, mais une interface (entre la couche réseau et la couche liaison de données). Cette distinction entre une interface et une couche est essentielle, mais le modèle TCP/IP n’en tient pas compte.
Quatrièmement, le modèle TCP/IP ne fait pas la distinction (ni même n’évoque) entre la couche physique et la couche de liaison de données, qui sont totalement différentes. La couche physique traite des caractéristiques de transfert du câble de cuivre, de la fibre optique et des canaux radio, tandis que la couche de liaison de données est chargée de déterminer le début et la fin des trames et leur transfert entre deux extrêmes.

La couche physique s’occupe des caractéristiques de transfert du câble de cuivre, de la fibre optique et des canaux radio, tandis que la couche de liaison de données est chargée de déterminer le début et la fin des trames et leur transfert entre deux extrémités avec le degré de fiabilité souhaité. Un modèle correct doit contenir ces deux couches avec une séparation claire entre elles, ce que ne fait pas le modèle TCP/IP.
Enfin, si les protocoles IP et TCP ont été soigneusement conçus et bien mis en œuvre, le développement des autres protocoles de la suite a été improvisé et généralement confié à des étudiants en doctorat. Comme leurs mises en œuvre étaient distribuées gratuitement, ces protocoles ont été tellement utilisés qu’il est encore difficile de les remplacer aujourd’hui.

Par exemple, le protocole de terminal virtuel Telnet a été conçu pour un terminal mécanique de type télétype à 10 caractères par seconde et ignore donc toutes les interfaces graphiques et la souris. Néanmoins, trente ans plus tard, il est toujours largement utilisé.

5. 5. Protocoles modèles OSI/OSI

couche de protocole
7. 8. BGP – DHCP – DNS – FTP – Gopher – H.323 – HTTP – IMAP – IRC – NFS – NNTP – POP3 – RTSP – SILC – SIMPLE – SIP – SMTP – SNMP – SMB-CIFS – SSH – TCAP – Telnet – TFTP – VoIP – XMPP – Application WebDAV.
6. Présentation AFP – ASCII – ASN.1 – MIME – NCP – SSP – TDI – TLV – Unicode – UUCP – Videotex – XDR.
5. Session AppleTalk – DTLS – H.323 – RSerPool – SOCKS – TLS
4. Transport DCCP – RSVP – RTP – SCTP – SPX – TCP – UDP
3. Réseau ARP – Babel – BOOTP – CLNP – ICMP – IGMP – IPv4 – IPv6 – IPX – IS-IS – NetBEUI – OSPF – RARP – RIP – X.25.
2. Token Ring Link – Token Bus – ARINC 429 – ATM – AFDX – Bitnet – CAN – Ethernet – FDDI – Frame Relay – HDLC – I²C – IEEE 802.3ad (LACP) – IEEE 802.1aq (SPB) – LLC – LocalTalk – MIL-STD-1553 – PPP – STP – Wi-Fi – X.21.
1. Physique 4B5B – ADSL – BHDn – Bluetooth – Câble coaxial – Encodage bipolaire – CSMA/CA – CSMA/CD – DSSS – E-carrier – EIA-232 – EIA-422 – EIA-449 – EIA- 485 – FHSS – IEEE 1394 HomeRF – IrDA – ISDN – Manchester – Manchester différentiel – Miller – MLT-3 – NRZ – NRZI – NRZM – Paire torsadée – PDH – SDH – SDSL – SONET – T-carrier – USB – VDSL – V. 21- V.23 – V.42-V.90 – USB sans fil – 10BASE-T – 10BASE2 – 10BASE5 – 100BASE-TX – 1000BASE-T

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *