CHAPITRE 3 :
COUCHE LIAISON DE
DONNÉES
Le Modèle OSI : Couches 2
Couche liaison de données : Fournit les moyens fonctionnels et procéduraux
nécessaires pour l'établissement, la gestion liaisons directes entre deux
équipements. Elle permet surtout de contrôler l'échange des informations
binaires, entre deux nœuds adjacents, contre les erreurs de transmission
engendrés par :
➢les médias et leur environnement,
➢le manque des ressources (mémoire et vitesse de traitement) nécessaires
chez les équipements, l'anomalie des équipements d'interconnexion.
2
Le Modèle OSI : Couches 2
Fonctionnalité :
❑Elle l’accomplit en fractionnant les données d’entrée de l’émetteur en
trames de données
❖crée et reconnaître les frontière des trames.
❖transmettre les trames en séquence
❖gérer les trames d’acquittement renvoyées par le récepteur.
❖retransmettre les trames perdus.
❑Le contrôle d’erreurs
✓Détection des erreurs (Obligatoire)
❖Code détecteurs
✓Correction des erreurs (Seulement pour un service fiable)
❖Code correcteurs
❖Retransmission des trames
3
Le Modèle OSI : Couches 2
Fonctionnalité :
❑Une autre fonction de cette couche est d’empêcher un émetteur rapide
de saturée de donnée un récepteur lent.
❖Utiliser un mécanisme de régulation de trafic pour que l’émetteur
connaisse à chaque instant la quantité de mémoire tampon disponible au
niveau du récepteur.
❑Les réseau à diffusion ont un problème bien spécifique à régler au
niveau de la couche liaison de données : celui de l’accès multiple à un
canal partagé.
❖C’est une sous couche spéciale, la sous-couche d’accès au support, qui
traite ce problème.
4
Le Modèle OSI : Couches 2
Tâches principales
❑Le découpage en trames
❑La détection et la correction des erreurs de
transmission
❑Le contrôle de flux : réduire la congestion dans le
réseau et régularisant le trafic
❑Le contrôle d’accès à un canal partagé par plusieurs
stations: réduire les collision
5
Le Modèle OSI : Couches 2
Cette couche est découpée en 2 sous-couches:
❑MAC (Medium Access Control)
❑LLC (Logical Link Control)
6
Sous-couche MAC (Medium Access Control)
❑Rôle :
❖Gestion de l'accès au support physique : La sous-couche MAC régule comment
plusieurs dispositifs partagent un même support de communication (par exemple, un
câble Ethernet ou un canal sans fil).
❖Adressage matériel : Elle utilise des adresses MAC (Media Access Control) uniques
à chaque appareil pour identifier les périphériques sur un réseau local.
❖Encapsulation des données : La sous-couche MAC ajoute des en-têtes et des queues
spécifiques, comme les adresses source et destination, pour transmettre les données
sur le réseau.
❖Implémentation :Réalisée par du matériel spécialisé : Typiquement gérée par une
carte réseau (comme Ethernet ou Wi-Fi).
❑Protocoles associés :
❖Ethernet (IEEE 802.3) : Utilisé dans les réseaux câblés.
❖Wi-Fi (IEEE 802.11) : Utilisé dans les réseaux sans fil.
❖Bluetooth et d'autres technologies. 7
Sous-couche MAC (Medium Access Control)
❑Fonctions spécifiques :
❖Gestion des collisions : Par exemple, avec CSMA/CD (Carrier
Sense Multiple Access with Collision Detection) pour
Ethernet.Détection et récupération d'erreurs :
❖Contrôle des erreurs simples, comme vérifier les champs CRC
(Cyclic Redundancy Check) dans les trames.
8
Sous-couche MAC (Medium Access Control)
❑Fonctions spécifiques :
❖Gestion des collisions : Par exemple, avec CSMA/CD (Carrier
Sense Multiple Access with Collision Detection) pour
Ethernet.Détection et récupération d'erreurs :
❖Contrôle des erreurs simples, comme vérifier les champs CRC
(Cyclic Redundancy Check) dans les trames.
9
Sous-couche LLC (Logical Link Control)
❑Rôle :
❖Gestion des erreurs : Contrairement à MAC, LLC est responsable de
la détection et de la correction des erreurs logiques dans les
communications.
❖Multiplexage des protocoles : Elle permet à plusieurs protocoles
réseau de partager une même liaison physique en identifiant le type de
protocole utilisé (par exemple, IPv4, IPv6, ou ARP).
❖Fiabilité de la transmission : Assure que les données arrivent
correctement à la destination via des mécanismes de retransmission, si
nécessaire.
❑Implémentation :
❖Réalisation logicielle : Souvent intégrée au logiciel réseau (comme
les pilotes ou les systèmes d'exploitation).
❖Protocole standardisé : Défini par IEEE 802.2.
10
Sous-couche LLC (Logical Link Control)
❑Fonctions spécifiques :
❖Encapsulation des données : Ajout d'un en-tête LLC aux données
avant leur transmission à la sous-couche MAC.
❖Contrôle de flux : Régule la quantité de données envoyées pour
éviter une surcharge de la liaison.
11
Le Modèle OSI : Couches 2
❑A quoi sert l’adresse MAC (Media Access Control) ?
❖A identifier une machine de manière unique (quelque soit le réseau local où la
machine est installée)
❖A déterminer le destinataire d’un message dans un réseau local : c’est
l’information dont se sert le commutateur pour commuter la trame sur le bon
port
❑Taillede octets
❑Les premiers octets désignent un constructeur (attribué par l’IEEE)
❑Par convention, l’adresse MAC est toujours représentée sous forme
hexadécimale.
12
Trame Ethernet
Préambule : un champs de 8 octets, sert à synchroniser les nœuds
récepteurs.
Adresse Destination : identifie le nœud destination de la trame.
Adresse Source : identifie le nœud émetteur.
Type : Indique le protocole utilisé au niveau supérieur (couche réseau).
Example : (0x0800 pour IPv4, 0x0806 pour ARP, 0x86DD pour IPv6).
Données : contient au minimum 46 octets d'informations et au maximum
1500. Ces données peuvent être des paquets IP, des trames ARP…
FCS (Frame Check Sequence = Séquence de Contrôle de Trame) : permet le
contrôle d'une transmission correcte.
Préambule @ Destination @ Source Type Données FCS
8 octets 6 octets 6 octets 2 octets 46 à 1500 octets 4 octets
13
Les méthodes de découpage en trames
❑Méthode 1: Compter le nombre de bits:
L’information sur le nombre de bits de chaque trames est inclus dans l’entête
de la trame
❑Exemple
3 trames:
❖Trame 1: 4 caractères
❖Trame 2: 6 caractères
❖Trame 3: 2 caractères
14
Les méthodes de découpage en trames
Méthode 2: Fanion ou drapeau:
❑Un fanion est une séquence spéciale de bits utilisée à chaque début et à
chaque fin de trames comme délimiteur de trames.
❖Début de trame : 01111110
❖Fin de trame : 01111110
❑Inconvénients :
❖Problème de transparence : transmission d’une donnée 01111110 va se
confondre avec le fanion
❑Problématique:
❖Une donnée peut avoir une séquence de bits similaire à celle du fanion.
❖Comment procéder pour transmettre cette donnée?
15
Les méthodes de découpage en trames
Méthode 2: Fanion ou drapeau:
❑Exemple
❖Soit la séquence suivante à transmettre
00110111110011111111001
❖L’application de la technique de découpage en trames utilisant le fanion
comme délimiteur donne ce qui suit :
❖Un bit 0 (en vert) est inséré après chaque suite de 5 uns (bits 1) pour
distinguer le fanion de la donnée 11111.
16
Détection d’erreur
Détection et Correction d’erreurs
❑D’une manière générale on doit, lors d’une transmission de données,
s’assurer que les données reçues n’ont pas été altérées durant la transmission.
❑Plusieurs facteurs peuvent modifier le contenu des données tel que les
interférences causées par des rayonnements électromagnétiques ou la
distorsion des câbles de transmissions.
Parité simple
Détection Codes détecteurs
d'erreurs: Duplication
Codes CRC
Codes correcteur Code de
Correction d'erreur : Hamming
18
Détection et Correction d’erreurs
❑Les méthodes de protection exploitent la redondance de données en ajoutant
des bits de contrôle aux bits de données.
❑Les bits de contrôle sont calculés, au niveau de l’émetteur, par un algorithme
spécifié dans le protocole à partir du bloc de données.
❑À la réception, on exécute le même algorithme pour vérifier si la redondance
est cohérente.
❑Si c’est le cas, on considère qu’il n’y a pas d’erreur de transmission et
l’information reçue est traitée ; sinon, on est certain que l’information est
invalide.
19
Détection et Correction d’erreurs : Duplication de données
❑On duplique l’information, par exemple on rajoute un bit identique pour chacun des bits à
transmettre
❑Le message code est un double exemplaire du message initial, le récepteur sait qu’il y a eu erreur
si les exemplaires ne sont pas identiques, il demande alors la retransmission du message. Si la
même erreur se passe sur les deux exemplaires, l’erreur ne sera pas détectée.
❑Exemple:
❖Données : 1 0 0 0 1 1
❖Message code : 1 1 0 0 0 0 0 0 1 1 1 1
❑Coût en taille : élevé
❑Coût en calcul : faible
❑Qualité de la détection d’erreur : Est-on capable de détecter 1 seul bit erroné ? 2 bits ?...
❑Si on envoie le message en trois exemplaires, le récepteur pourra même corriger l’erreur en
prenant les valeurs des deux copies identiques sans demander la retransmission de l’émetteur.
20
Détection et Correction d’erreurs : Duplication de données
❑On triple l’information
❑On rajoute deux bits identiques pour chacun des bits à transmettre
❑Exemple :
❖Données : 1 0 0 1 1
❖Message code : 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1
❑Coût en taille: très élevé
❑Qualité de la détection d’erreur :
❖Si il y a une seule erreur on peut la corriger ?
❖Si il y a deux erreurs ?
21
Détection et Correction d’erreurs : Le code de parité
❑On rajoute un bit à 1 ou 0 suivant la parité du nombre de bits à 1 dans les
données Le récepteur vérifie la valeur de ce bit de parité.
❑Exemple:
❖Données : 1 0 0 0 1 1 Message code : 1 0 0 0 1 1 1 Bit de parité: 1
❖Données : 1 1 0 1 0 1 1 Message code : 1 1 0 1 0 1 1 0 Bit de parité: 0
❑Très peu couteux en taille
❑Très peu couteux en calcul
❑Qualité de la détection d’erreur ?
❖Est-on capable de détecter 1 seul bit erroné ? 2 bits ?...
22
Détection et Correction d’erreurs : CRC
❑ Le CRC (Cyclic Redundancy Check) est un code qui permet de détecter les erreurs de
transmission.
❑ Il est obtenu en ajoutant aux données transmises M, les bits de redondance R, obtenus en
divisant T par G.
❑ T étant le mot de code obtenu en rajoutant d bits à 0 à la fin de M,
❑ G étant les bits représentant le polynôme générateur et d le degré de G.
❑ Le code E envoyé est la concaténation de M et R.
❑ À l'arrivée, le récepteur détecte une erreur si la division de E reçu par G ne donne pas un
reste nul.
❑ Plus performant et ne dépend pas de la taille des données
❑ Peu coûteux en taille
❑ Calcul coûteux mais souvent fait par hard : ou exclusif successifs au fur et à mesure que
la trame arrive
23
Détection et Correction d’erreurs : CRC
Principe de calcul d’un CRC
❑Basée sur des calculs de division de polynôme à coefficient dans [0, 1]
❑ Exemple: M = 1 0 1 0 1 représente 𝑴 = 𝒙𝟒 + 𝒙𝟐 + 𝟏
❑Soustraction et addition sont équivalentes à un ou-exclusif bit à bit
❑On fixe un polynôme générateur G de degré n qui détermine le nombre de bits de contrôle
❑T= Quotient*G + Reste donc : (T+Reste)%G = 0
❑ La trame envoyée E= (Données, Reste)
est divisible par G, il suffit à l’arrivée
de calculer la division de E par G. Si
le reste est non nul il y a une erreur
24
Détection et Correction d’erreurs : CRC
Exemple de calcul d’un CRC
❑6 bits de données : M = 110101 , Polynôme générateur 101 : 𝑮 = 𝒙𝟐 + 𝟏
❑ En rajoutant 2 bits à 0 à la fin de M, donc : T= 11010100
T= =G
M R
R=
❑On envoie E= 11010111
❑On peut avec n=16 détecter toutes les erreurs comportant un nombre impair de bits
et tous les paquets d'erreur de longueur ≤ 16 et, avec une très bonne probabilité, les
paquets d’erreurs de longueur supérieure.
❑Exemple: Ethernet utilise un champs CRC à 32 bits, Compression ZIP utilise un
CRC à 16 ou 32 bits
25
Résumé de la
méthode CRC
Contrôle de flux
❑Une source peut transmettre des données plus rapidement qu’une
destination puisse les traiter
❖Cela peut engendrer la perte d’une quantité d’information
❖Un protocole de ralentissement d’émission doit être déployé
❑Le protocole doit donc inclure des règles permettant de définir le
moment ou la source peut transmettre.
❑Ces règles empêchent la source de transmettre jusqu’à ce que la
destination lui en ait donné le droit.
❑Ce protocole est connu sous le nom de protocole de contrôle de flux.
❑Deux mécanismes principaux:
❖Stop and Wait
❖Fenêtre coulissante
27
Contrôle de flux
Méthode 1: Stop and Wait
❑La source transmet une trame.
❑Lorsque la destination reçoit la trame, elle indique qu’elle est prête
à recevoir une autre trame en transmettant un acquittement pour la
trame reçue.
❑La source doit attendre cet acquittement pour transmettre une autre
trame. (Stop and Wait)
❑La destination peut contrôler le flux de données en retenant un
acquittement à son niveau.
❑Ceci est nécessaire dans le cas où le trafic est dense
28
Contrôle de flux
Méthode 1 : Stop and Wait
❑Inconvénient : En un instant donné, une seule trame peut être
transmise sur le canal de transmission
29
Contrôle de flux
Méthode 2: Fenêtre coulissante
❑Pour améliorer l’utilisation du lien, il faut que plusieurs trames puissent être
en transit en même temps.
❖la source peut transmettre K trames sans attendre d’acquittement.
❑Chaque trame est marquée par un numéro de séquence pour conserver la
trace de quelles trames ont été acquittées.
❖Le numéro de séquence est un champ dans la trame, le nombre de numéros
de séquence est donc limité : Avec deux bits on peut avoir 4 numéros de
séquences différents.
❑La destination transmet un acquittement pour les trames reçues.
❖Cet acquittement signifie également que le récepteur est prêt à recevoir K
trames suivant le numéro de séquence inclus.
❖Plusieurs trames peuvent être acquittées à l’aide d’un seul acquittement.
❑La source maintient une liste des numéros de séquence de trames pouvant
être transmises et la destination maintient une liste des numéros de séquence
de trames pouvant entre reçues. 30
Contrôle de flux
31
Contrôle de flux
Étapes illustrées :
❑Initialisation :
❖L'émetteur commence à transmettre des trames dans la plage autorisée
par sa fenêtre d'envoi (par exemple, les trames 0 à 2 au départ).
❖Le récepteur commence à recevoir les trames et les traite dans l'ordre.
❑Transmission des premières trames :
❖L'émetteur envoie les trames 0, 1, et 2.
❖Une fois les trames correctement reçues, le récepteur envoie un accusé
de réception (RR3), indiquant que toutes les trames jusqu'à 2 ont été
reçues.
❑Déplacement de la fenêtre (RR3) :
❖Suite à l'accusé de réception RR3, la fenêtre d'envoi de l'émetteur
coulisse pour permettre l'envoi des trames suivantes (3, 4, et 5).
❖L'émetteur peut envoyer les trames suivantes pendant que le récepteur
traite celles déjà reçues.
❑Transmission continue :
❖Ce processus se poursuit avec l'envoi de nouvelles trames et la
réception d'accusés, comme RR4 qui indique que le récepteur est prêt à
recevoir à partir de la trame 4. 32
Gestion de l’accès au medium
❑Une machine qui veut émettre :
❖Ecoute si le câble est libre
❖Si oui, elle envoie sa trame
❖Si non, elle attend que le câble soit libre
❑Si deux machines émettent au même moment, il y a collision
❖Les 2 trames sont inexploitables
❖Les 2 stations détectent la collision, elles réémettront leur trame
ultérieurement après un temps d’attente aléatoire
33
Gestion de l’accès au medium
❑Gestion de l’accès au medium (sur Ethernet) selon la méthode
CSMA/CD (Carrier Sense Multiple Access/Collision detection):
❑Principes :
❖Carrier Sense : chaque station est à l'écoute pour détecter la
présence d'un signal
❖Multiple Access : plusieurs stations peuvent émettre en même
temps
❖Collision Detection : chaque station sait si elle a provoqué une
collision
34
Gestion de l’accès au medium
Définitions :
❑Temps de propagation (TP) : temps nécessaire à un bit pour
parcourir le médium (fct de la longueur du médium et de la vitesse
de propagation).
❑Temps de transmission (TT) : Il s'agit du temps nécessaire à la
transmission d'une trame (fct du nombre de bits à transmettre et de
la vitesse de transmission).
❑Temps d'occupation de ligne (T) : le temps entre le début
d'émission et la fin de la réception d'une trame.
T=TP + TT
35
Gestion de l’accès au medium
Fonctionnement CSMA/CD :
❑Une machine A cherche à transmettre des informations à une
machine B.
❑Elle commence par écouter le médium pendant un temps prédéfini.
❑Puis si le temps d'inoccupation est suffisant, elle prend le médium
et émet sa propre trame.
❑Pendant l'émission, elle écoute afin de détecter les collisions
possibles. Tant qu'il n'y a pas de collisions, on émet jusqu'à la fin de
la trame.
❑Si une collision est détectée, il y a arrêt de l'émission.
36
Gestion de l’accès au medium
1
[Link] 37
Gestion de l’accès au medium
3
[Link] 38
Gestion de l’accès au medium
Le délai d’attente après la détection d’une collision
Après l'interruption, l'adaptateur entre dans une attente
exponentielle :
Après m collisions, l'adaptateur choisit un entier K au hasard dans
{1,2,…,2m-1}.
L'adaptateur attend Kx512x(le temps de transmission d’un bit) et
retourne à l'étape1.
39
Éléments d’un réseau : Pont
❑Le pont (bridge) se présente sous forme d’un boîtier munie d’un
nombre limité de ports, il permet d’interconnecter des réseaux
travaillant avec le même protocole.
❑Contrairement au répéteur, qui travaille au niveau physique
(signal), le pont travaille également au niveau logique (adresse
IP), c’est-`a-dire, qu’il est capable de filtrer les messages en ne
laissant passer que ceux dont l’adresse correspond à une machine
située à l’opposé du pont.
❑C’est un dispositif de la couche 2 du modèle OSI.
40
Éléments d’un réseau : Pont
❑Le pont permet de segmenter un réseau local en deux pour améliorer les
performances. En effet, cela permet de réduire le trafic (les collisions
notamment) sur chacun des réseaux et d’augmenter le niveau de
confidentialité car les messages destinés à un réseau ne peuvent pas être reçus
par l’autre segment.
41
Éléments d’un réseau : Commutateur
❑Le commutateur (switch) est un pont multiports, il permet de connecter plusieurs
appareils en réseau. C’est généralement un boitier disposant plusieurs ports Ethernet
(entre 4 et plusieurs dizaines).
❑Les commutateurs sont un peu plus intelligents que les concentrateurs. En effet,
La différence avec le concentrateur, c’est que le commutateur sait quels sont les
ordinateurs qui sont autour de lui. Ainsi, si il reçoit une trame pour l’ordinateur X, il
ne l’envoie qu’à l’ordinateur X et pas aux autres.
❑Apprend où se trouvent les postes :
❖Adresse MAC de la carte
❖Adresse IP du poste
❑Il commute (il branche) l’entrée des données vers la sortie où est l’ordinateur
concerné.
❑La principale caractéristique d’un switch est de savoir déterminer sur quel port il
doit envoyer une trame en fonction du destinataire. Ce qui limite l’encombrement
du réseau (bande passante).
42
Éléments d’un réseau : Commutateur
❑Dispositif de la couche 2 du modèle OSI
❑Permet l’élaboration d’un réseau local
❑la majorité des switches peuvent utiliser le mode Full duplex. La
communication est alors bi-directionnelle
43
La commutation des trames:
Deux techniques de commutation de trames:
1) Store and forward :
❑Le switch reçoit l’intégralité de la trame,
❑Mémorise la trame entièrement
❑Analyse son entête et
❑Renvoie la trame à la destination.
❑Il s’assure aussi que la trame n’est pas corrompue.
2) Cut through :
❑le switch commence à analyser la trame avant sa réception intégrale.
❑Dès qu’il identifie l’adresse MAC de la destination il entame la procédure de
redirection des données vers la destination.
44
La commutation des trames:
❑Critique:
❖Cut through est plus rapide mais moins fiable que Store
and Forward.
❖Store and Forward est moins rapide mais ne transmet que
les trame sans erreurs
45