Demandez le programme !

Transmission de données dans un réseau.

Le but d'un réseau est de transmettre des informations d'un ordinateur à un autre.

Pour cela il faut dans un premier temps décider du type de codage de la donnée à envoyer, c'est-à-dire sa représentation informatique. Celle-ci sera différente selon le type de données (sons, texte, graphique, table, vidéos, ...)

La représentation de ces données peut se diviser en deux catégories :

Nos réseaux ne traitent que de signaux numériques.

Les données circulent sur Internet sous forme de datagrammes (on parle aussi de paquets). Les datagrammes sont des données encapsulées, c'est-à-dire des données auxquelles on a ajouté des en-têtes correspondant à des informations sur leur transport (telles que l'adresse IP de destination).

Protocoles

Un protocole est une procédure comprise par les deux unités qui doivent communiquer pour des données.

Lorsque vous rencontrez une personne nous suivons naturellement un ensemble de protocoles :

En informatique ils existent bon nombre de protocoles : HTTP, IP, TCP, UDP,...

Associer à chacun des noms de protocoles suivants la définition qui lui correspond :

Nom de protocoles

Définition

1. HTTP

A. Protocole qui gère l'adressage et la fragmentation des paquets de données dans les réseaux numériques.

2. IP

B. Protocole qui assure la bonne transmission des données entre une source et un destinataire.

3. TCP

C. Protocole qui définit la communication entre un navigateur-web et un serveur-web.

Code de déblocage de la correction :

Un service est une interface qui permet de mettre en place un protocole.

Pour récupérer sur son ordinateur un mail stocké sur un serveur gérant sa messagerie, on utilise un protocole nommée POP pour Post Office Protocol (=protocole de bureau de poste).

Le modèle TCP/IP

TCP/IP, un modèle en 4 couches

Le modèle TCP/IP et le modèle OSI

Pour communiquer nous avons besoin de définir des modèles qui constituent des normes de communication. Le modèle OSI est le modèle théorique qui encadre les échanges sur un réseau. Il comporte 7 couches que nous ne détaillerons pas cette année.

Ce premier un peu complexe et pas forcément ancré dans la réalité a été simplifié pour donner le modèle TCP/IP.

TCP/IP désigne communément une architecture réseau, mais cet acronyme désigne en fait 2 protocoles étroitement liés : un protocole de transport, TCP (Transmission Control Protocol) qu’on utilise « par-dessus » un protocole internet, IP (Internet Protocol).

Le modèle TCP/IP est une architecture réseau en 4 couches :

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. Par abus de langage, TCP/IP peut donc désigner deux choses : le modèle TCP/IP et la suite de deux protocoles TCP et IP.

On présente en général le modèle TCP/IP de haut en bas comme dans l'illustration ci-dessous contenant différents noms de protocoles :

Le modèle TCP/IP et le modèle OSI

La couche Application/Application Layer

La couche application est la couche la plus haute du modèle TCP / IP à quatre couches. La couche d’application est présente en haut de la couche de transport. La couche application définit les protocoles d’application TCP/IP et la manière dont les programmes hôtes se connectent aux services de la couche de transport pour utiliser le réseau.

La couche d’application inclut tous les protocoles de niveau supérieur tels que :

Cette couche fait appel à un ensemble de services pour mettre en place des protocoles.

C'est dans cette couche que les données sont découpées/organisées pour être envoyées.

La couche Transport/Tansport Layer

La couche de transport est la troisième couche du modèle TCP / IP à quatre couches. La position de la couche de transport se situe entre la couche d’application et la couche Internet.
La couche de transport a pour but de permettre aux périphériques des hôtes source et de destination d’engager une conversation. La couche de transport définit le niveau de service et le statut de la connexion utilisée lors du transport de données.

Les principaux protocoles inclus dans la couche transport sont TCP (protocole de contrôle de transmission) et UDP (protocole de datagramme utilisateur).

Le protocole TCP permet :

Le protocole UDP encapsule moins d'informations sur le destinataire avec les données si bien qu'aucun accusé de réception n'assure la bonne réception de l'envoi. La fiabilité n'est plus garantie mais la mise en oeuvre est plus rapide (pas d'aller-retours).

Un datagramme est un ensemble de données généré par la couche de transport TCP.

Cette couche Transport rajoute des informations aux données à transmettre pour permettre entre autres la reconstitution des données complètes par le receveur une fois tous les paquets reçus.

Ces données rajoutées forment une en-tête.

On parle d'encapsulation.

La couche Internet/Internet Layer

La couche Internet est la deuxième couche du modèle TCP/IP à quatre couches.
Les couches Internet condensent les datagrammes en paquets de données.

Cette couche gère l'acheminement des datagrammes issus de la couche Transport entre une source et un destinataire, en particulier permettant leur routage à travers différents réseaux.

Les principaux protocoles inclus dans la couche Internet sont :

Une partie de ces protocoles seront survolés au chapitre ARSE4.

Un paquet est le nom que l'on donne à la capsule générée par la couche internet IP.

Cette couche Internet encapsule notamment les datagrammes générés par la couche transport TCP en rajoutant des informations sur les adresses IP source et de destination utilisées pour le transfert entre les hôtes et entre les réseaux.

16 octets sont réservés à l'en-tête de cette couche Internet.

La couche réseau/Network Access

La couche réseau ou couche d’accès réseau ou couche matérielle est la première couche du modèle TCP/IP à quatre couches.

La couche d’accès réseau définit en détail comment les données sont physiquement envoyées à travers le réseau, y compris la manière dont les bits sont signalés électriquement ou optiquement par les périphériques matériels qui interfacent directement avec un support réseau, tel qu’un câble coaxial, une fibre optique ou un fil de cuivre à paire torsadée.

Les protocoles inclus dans la couche d’accès au réseau sont :

Une trame est la structure de base des données gérées par la couche réseau.

Cette couche réseau rajoute aux paquets issus de la couche Internet différentes informations dont les adresses physiques MAC.

Ces adresse MAC seront étudiées elles aussi au chapitre ARSE4.

Encapsulation

À l'envoi d'un paquet de données, on parle d'encapsulation :

Encapsulation

À la réception d'un paquet de données, on parle de décapsulation :

Décapsulation

Ces encapsulation et décapsulations sont utilisés pour transférer des données entre deux périphériques sur un réseau.
Voici un exemple illustrant leur utilisation

Considérons un ordinateur dont le navigateur veut accéder au contenu d'une page Web stocké dans un serveur distant.
Pour cela, le navigateur du client va envoyer une requête HTTP au serveur. Une telle requête est un message. Nous verrons dans le chapitre ARSE4 cette requête plus précisément.
Pour simplifier l'exemple, on suppose que :

Les données de la requête vont suivre les modifications et cheminement suivant :

  1. Au niveau de l'ordinateur client, il y a une encapsulation :

    1. Le navigateur prépare la requête : couche Application.

    2. Cette requête est encapsulée dans un datagramme (ou plusieurs) par le protocole TCP : couche Transport.

    3. Ces datagrammes sont encapsulés avec des adresses IP dans des paquets pour pouvoir circuler dans le réseau : couche Internet.

    4. Ces paquets sont encapsulés avec des adresses physiques MAC dans des trames : couche Réseau.

    Une fois encapsulée dans une trame, le tout peut circuler et être orienté dans les réseaux.
    La trame est transmise, par une succession de bits, au routeur R1.

  2. Au niveau du routeur R1 :

    1. Décapsulation pour lire une partie du contenu des en-têtes :

      Lorsque la trame arrive au routeur 1, celui-ci a besoin de connaître l'expéditeur et le destinataire.
      Pour cela, il va décapsuler :

      • les trames pour récupérer les adresses physiques MAC,

      • les paquets pour récupérer les adresses logiques IP.

      Avec ces adresses (et sa table de routage cf. cours de Terminale dessus), le routeur va pouvoir acheminer les données à l'intermédiaire suivant : le routeur 2.

      Cependant, pour pouvoir être renvoyées sur le réseau, les données doivent être encapsulées sous forme d'une trame. D'où :

    2. Encapsulation pour le renvoi sur le réseau :

      Comme il y a eu deux niveaux de décapsulation, il faut encapsuler deux fois pour transformer les données en paquet puis trame.

    3. Le routeur 1 envoie la trame vers le routeur 2.

  3. Au niveau du routeur R2 :

    Le même besoin des adresse MAC et IP conduit au même travail de décapsulation et d'encapsulation avant que ce routeur n'envoie la trame réencapsulée vers le serveur destinataire.

  4. Au niveau du serveur :

    Le serveur doit récupérer la requête HTTP qu'il vient de recevoir encapsulée dans une trame.
    Pour cela, il doit enlever les différentes en-têtes en décapsulant :

    1. d'abord la trame pour extraire le paquet IP,

    2. ensuite le paquet IP pour extraire le datagramme,

    3. enfin le datagramme pour extraire les données correspondant à la requête HTTP.

    Une fois la requête reçue et extraite, le serveur peut traiter la demande.
    Sa réponse contenant le code de la page Web suivra lui aussi une succession d'encapsulations et de décapsulations à travers son acheminement sur le réseau.

Protocole du bit alterné

Nous avons vu qu'une donnée ( image, texte, vidéos...) est découpée en paquets pour être transportée sur le réseau. Comment s'assurer que l'ensemble des paquets est arrivé à son destinataire et surtout qu'il soit assemblé dans le bon ordre?

Le protocole du bit alterné est une réponse.

Tooma veut envoyer à Pascual un fichier. La donnée à envoyer est alors tronçonnée et encapsulée en 4 paquets : C1, C2, C3 , C4

Pascual va recevoir les paquets, il faudra alors reconstituer la donnée et ne pas mélanger les paquets.

Nous allons explorer dans cet exemple deux tentatives de protocole pour arriver finalement au protocole du bit alterné.

  1. Ce qu'on pourrait imaginer mais qui n'arrive pas.

    Imaginez que l'on soit capable de dire qu'un paquet met un temps $t$ pour arriver jusqu'à Pascual. Il suffirait alors d'attendre suffisamment longtemps entre chaque envoi de paquets pour être sûr que chaque capsule a été envoyée dans le bon ordre.

    image du cas impossible

    Oui mais voila, il est impossible d'être certain du temps de parcours du paquet. Par conséquent cette solution n'est pas satisfaisante.

  2. Vers une première solution

    L'idée ici est que Tooma doit attendre un accusé de réception ( ACK=acknowledgement) pour envoyer un nouveau paquet.

    image du cas impossible

    Là encore ça ne fonctionne pas, si le ACK ne part pas on va avoir un doublon de paquet. Tooma va renvoyer un paquet déjà existante et provoquera un doublon.

  3. Le protocole du bit alterné

    Chaque paquet va être accompagné d'un "flag". En fait un bit qui vaut en départ 0.

    Chaque ACK portera le bit correspondant au paquet reçu.

    A chaque nouvel envoi le bit est alterné, il change de valeur.

    image du cas impossible

Ce protocole est simple et léger (un seul bit pour le "flag"). Il a été utilisé assez longtemps.
Ce protocole peut être mis en défaut :
par exemple, la première trame arrive très en retard ; elle a été ré-émise et reçue depuis, puis une seconde trame et la première trame arrive en retard mais entre la deuxième et la troisième : cette trame en retard est acceptée et la troisième est refusée car le réceptionneur attend désormais une trame de "flag" 1.
Il peut aussi se passer le cas où l'accusé de réception de la première trame arrive très en retard après l'envoi d'une troisième trame qui elle se perd. La perte de cette troisième trame est cachée par la réception en retard du premier accusé de réception.

Ce protocole est désormais remplacé par d'autres protocoles, plus robustes mais plus complexes.

QCM

Questions issues de la Banque Nationale de Sujets

Propriétaire des ressources ci-dessous : ministère de l'Éducation nationale et de la jeunesse, licence CC BY SA NC

Voici une sélection de questions issues de la banque nationale de sujets, répondez à ces questions (attention, cette sélection n'est pas exhaustive).

Dans un réseau informatique, que peut-on dire de la transmission de données par paquets ?

Réponses :

A- Cela empêche l’interception des données transmises.

B- Cela garantit que toutes les données empruntent le même chemin.

C- Cela assure une utilisation efficace des liens de connexion.

D- Cela nécessite la réservation d’un chemin entre l’émetteur et le récepteur.

Code de déblocage de la correction :

Quel est le principe de l'encapsulation des données dans un réseau informatique ?

Réponses :

A- Cacher les données afin que l'on ne puisse pas les lire.

B- Mettre les données les unes à la suite des autres.

C- Chiffrer les données afin que l'on ne puisse pas les lire.

D- Inclure les données d'un protocole dans un autre protocole.

Code de déblocage de la correction :

Lors d'un échange TCP/IP entre deux machines sur le réseau Internet, un paquet n'arrive pas à destination. Qui gère le renvoi du paquet ?

Réponses :

A- Le protocole IP de la machine de départ.

B- Le protocole IP de la machine d'arrivée.

C-Le protocole TCP de la machine de départ.

D- Le protocole TCP de la machine d'arrivée.

Code de déblocage de la correction :

Dans le protocole de communication IP :

Réponses :

A- Les données sont envoyées en une seule partie.

B- Les données sont envoyées en plusieurs parties qui suivent le même itinéraire au sein du réseau.

C-Les données sont envoyées en plusieurs parties qui suivent des itinéraires différents au sein du réseau et arrivent à destination en respectant l’ordre de leur envoi.

D- Les données sont envoyées en plusieurs parties qui suivent des itinéraires différents au sein du réseau et arrivent à destination dans un ordre quelconque.

Code de déblocage de la correction :

Autres QCM

Une trame (Ethernet) est envoyée sur le réseau Internet. L’entête de cette trame contient :

Réponses :

A- L’adresse IP du destinataire.

B- L’adresse IP de l'expéditeur.

C- Les données transmises.

D- L’adresse MAC du destinataire puis l’adresse MAC de l'expéditeur.

Code de déblocage de la correction :

Combien de couches constituent le modèle TCP/IP ?

Réponses :

A- 4.

B- 5.

C- 6.

D- 7.

Code de déblocage de la correction :

Quel élément n'est pas une couche du modèle TCP/IP ?

Réponses :

A- Application.

B- Internet.

C- Liaison de données.

D- Transport.

Code de déblocage de la correction :

Pour renvoyer une trame reçue au bon destinataire sur le réseau, un routeur décapsule :

Réponses :

A- Rien : il renvoie la trame directement à tous les périphériques connectés à lui.

B- La couche Réseau pour récupérer les adresses physiques MAC.

C- La couche Internet pour récupérer les adresses MAC et les adresses IP.

D- Toutes les couches pour lire la totalité du message.

Code de déblocage de la correction :

Sur quelle couche du modèle TCP/IP se trouve les protocoles UDP et TCP ?

Réponses :

A- Application.

B- Transport.

C- Internet.

D- Réseau.

Code de déblocage de la correction :

Sur quelle couche du modèle TCP/IP se trouve le protocole HTTP ?

Réponses :

A- Application.

B- Transport.

C- Internet.

D- Réseau.

Code de déblocage de la correction :

Bilan

  1. la définition de protocole
  2. la définition de TCP
  3. la définition de IP
  4. la définition d'une trame
  5. la définition d'un paquet
  6. la définition de service
  7. Les 4 couches qui constituent le modèle TCP/IP
  8. Transmission de données
  9. Perte de paquets(bits alternés)
  10. encapsulation
  11. HTTP

Sitographie/bibliographie

Licence Creative Commons
Les différents auteurs mettent l'ensemble du site à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International