Contenus | Capacités attendues | Commentaires |
---|---|---|
Transmission de données dans un réseau Protocoles de communication Architecture d’un réseau |
Mettre en évidence l’intérêt du découpage des données en paquets et de leur encapsulation. Dérouler le fonctionnement d’un protocole simple de récupération de perte de paquets(bit alterné). Simuler ou mettre en œuvre un réseau. |
Le protocole peut être expliqué et simulé en mode débranché. Le lien est fait avec ce qui a été vu en classe de seconde sur le protocole TCP/IP. Le rôle des différents constituants du réseau local de l’établissement est présenté. |
Dans ce chapitre, nous allons voir comment les ordinateurs peuvent communiquer entre eux sur internet grâce aux protocoles de communication.
Vidéo servie sans cookie via Project Segfault
Nous utiliserons des ressources du cours ICN proposées par le site https://pixees.fr/.
Bonne vidéo Monsiur techno: CC-BY-SA _0thnFumSdA -->
Afin de transmettre un message d’une machine à une autre sur un réseau, celui-ci est découpé en plusieurs paquets transmis séparément. Article paquet sur Wikipédia
On a vu en seconde les deux protocoles fondamentaux d’internet:
Chaque protocole ajoute des en-têtes aux paquets, sortes d’enveloppes cachant le contenu des paquets et permettant de leur ajouter des métadonnées.
Voici par exemple la structure d’un paquet ipV6 avec ses en-têtes.
Vidéo servie sans cookie via Project Segfault
Représenter des structures de réseaux en anneau et en bus et expliquer l’intérêt de ce type de structures.
Pourquoi les transmissions sont-elles effectuées par paquets sur un réseau?
Quel est l’élément central d’un réseau local?
Quel est le protocole qui permet d’identifier toutes les machines sur internet? Pourquoi en existe-t-il deux versions?
Qu’est-ce qu’un routeur? Comment fonctionne-t-il?
Mettre dans l’ordre les opérations suivantes lors d’une requête à serveur web depuis un navigateur sur un ordinateur à la maison. Certaines étapes manquent (par exemple d’autres recherches dans les tables de routage), on les ignore pour simplifier. L’ordinateur obtient l’IP du serveur par le protocole DNS.
Le modèle OSI (Open System Interconnection) est un modèle en couche dans lequel chaque couche a un rôle particulier dans la communication.
Il contient 7 couches alors que le modèle TCP/IP vu en seconde n’en contient que 4.
Lorsque la couche application envoie les données aux couches inférieures, elle y ajoute des métadonnées appelées «en-tête» ou «en-queue» destinées à la couche application de l’autre machine distante.
Chaque couche ajoute ses propres en-têtes à l’émission lorsque les données de l’application descendent les couches. Et ainsi la trame d’informations circulant sur la couche liaison est “surchargée des métadonnées” de chacune des couches supérieures.
À la réception, chaque couche récupère et détache les métadonnées qui lui sont destinées et transmet le message sans ces métadonnées à la couche supérieure.
Les applications:
On découpe le message en segments et on y ajoute un numéro de port qui correspond à l’application qui l’utilise:
L’état de la connexion est vérifié, si tous les segments sont bien reçus et conformes grâce au calcul d’une somme de contrôle.
La couche transport propose deux principaux protocoles pour le transfert de données vers une machine distante:
Chaque protocole est utilisé dans des applications différentes: temps réel pour l’UDP, non-temps réel, mais sensible à la perte au réordonnancement pour le TCP.
On ajoute les adresses IP de la source et du destinataire, la longueur du paquet, sa durée de vie pour former ce que l’on appelle un paquet IP.
Le paquet et encapsulé dans une trame qui contient l’adresse unique de la machine dans le réseau local.
Puis la trame va transiter à travers le réseau physique: Ondes radio, fibre optique, câbles RJ45… jusqu’à atteindre le réseau local de la machine destinataire ou chaque couche va utiliser les en-têtes fournis par la même couche que la machine source.
Le protocole du bit alterné est un protocole de réseau simple fonctionnant au niveau de la couche liaison de données (couche OSI 2) qui retransmet les messages perdus ou corrompus.
Il était utilisé dans le réseau ARPANET, l’ancêtre d’internet.
Alice veut envoyer à Bob un message M, qu’elle a prédécoupé en sous-messages M0, M1, M2,…
Nous sommes à la couche 2, on souhaite une solution légère qui assure que tous les paquets sont reçus dans l’ordre(pas comme en TCP couche 4).
On va simplement utiliser un en-tête à un bit.
Lorsque Alice envoie un message, elle le renvoie en continu, avec le même bit d’en-tête, jusqu’à ce qu’il reçoive un accusé de réception de B contenant le même bit d’en-tête. Lorsque cela se produit, A inverse le bit d’en-tête et commence à transmettre le message suivant.
Lorsque Bob reçoit un message qui n’est pas corrompu et a le bit d’en-tête 0, il commence à envoyer ACK0
(Accusé de réception de 0 aknowledgement en anglais) et continue à le faire jusqu’à ce qu’il reçoive un message valide avec le numéro 1. Puis il commence à envoyer ACK1
, etc.
Cela signifie qu’Alice peut toujours recevoir ACK0
alors qu’elle transmet déjà des messages avec le bit d’en-tête un. (Et vice versa.) Elle traite ces messages comme des codes d’acquittement négatif (NAK). Le comportement le plus simple est de les ignorer tous et de continuer à transmettre.
Article Alternating bit protocol sur Wikipédia anglais
Cas où le sous-message est perdu
Cas où le ACK est perdu
Le protocole a bien détecté le doublon du sous-message M1.
Cas où un sous-message est en retard
Le protocole a bien détecté le doublon du sous-message M1… mais que se passerait-il si notre premier sous-message M1 était encore plus en retard ?