Couche Liaison : Principes et Protocoles
Ce document présente les principes fondamentaux et les protocoles de la couche liaison dans les réseaux informatiques. Destiné aux étudiants de première année en informatique (LFIG, ECOM, TSI), il couvre la structuration des données en trames, les méthodes de délimitation, les mécanismes de détection et correction d’erreurs, ainsi que les protocoles et formats de trames utilisés notamment en Ether
D'après le document Couche Liaison : Principes et Protocoles
Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.
Document source
Programming, Math, etc. · PDF · 43 pages · 2016
Afficher l'aperçu du document
Ce document présente les principes fondamentaux et les protocoles de la couche liaison dans les réseaux informatiques. Destiné aux étudiants de première année en informatique (LFIG, ECOM, TSI), il couvre la structuration des données en trames, les méthodes de délimitation, les mécanismes de détection et correction d’erreurs, ainsi que les protocoles et formats de trames utilisés notamment en Ethernet et HDLC.
Fonctionnement général de la couche liaison
La couche liaison a pour rôle d’assurer une transmission des données sans erreur sur un canal de communication. Elle reçoit des paquets de la couche réseau, les découpe en trames, puis transmet ces trames à la couche physique sous forme de bits.
couche réseau → paquet → couche liaison → trame → couche physique → bits
Les services principaux offerts par la couche liaison sont :
- La gestion de la délimitation des trames
- Le contrôle des erreurs (détection et correction)
- Le contrôle de flux
- Le contrôle d’accès au canal partagé (MAC)
Délimitation des trames
Pour identifier clairement les limites des trames sur le canal, trois méthodes principales existent :
- Compter les caractères : un champ dans l’en-tête indique la taille de la trame. Cette méthode est fragile car une erreur dans ce champ perturbe la synchronisation.
- Utiliser des champs délimiteurs (fanions) : une séquence binaire spécifique est placée au début et à la fin des trames. Des bits de transparence sont insérés pour éviter que cette séquence n’apparaisse dans les données.
- Violer le codage physique : technique moins courante où le codage normal est modifié pour marquer les limites.
Exemple de délimitation par comptage
Trames émises :
06 ‘S’ ‘U’ ‘P’ ‘E’ ‘R’ 03 ‘L’ ‘E’ 06 ‘C’ ‘O’ ‘U’ ‘R’ ‘S’
Trames reçues (avec erreur sur le champ longueur) :
06 ‘S’ ‘U’ ‘P’ ‘E’ ‘R’ 04 ‘L’ ‘E’ 06 43 ‘O’ ‘U’ ‘R’ ‘S’
Le code ASCII 43 remplace ‘C’, ce qui illustre une erreur due à la mauvaise interprétation du champ longueur.
Exemple de délimitation par fanions
Le fanion utilisé est la séquence binaire 01111110. Pour éviter qu’une séquence de cinq 1 consécutifs dans les données soit confondue avec un fanion, un bit 0 est inséré après toute séquence de cinq 1 successifs (bit de transparence).
Données : 01011001111110
Trame encadrée par fanions et bits de transparence :
01111110 010110011111010 01111110
Cette méthode est utilisée dans les protocoles HDLC et PPP.
Détection et correction d’erreurs
Les erreurs sur un canal de transmission sont causées par des perturbations et imperfections du support, entraînant des déformations du signal et des erreurs dans les bits reçus (0 au lieu de 1 ou inversement). Le taux d’erreur varie selon le type de réseau :
- 10^-9 pour les réseaux locaux
- 10^-5 pour le RTC
- Taux plus élevé pour la téléphonie sans fil
Deux stratégies sont possibles :
- Détecter les erreurs et demander une retransmission (codes détecteurs d’erreurs)
- Détecter et corriger les erreurs (codes correcteurs d’erreurs)
Le principe des codes repose sur l’ajout de bits redondants calculés à partir des données. Le récepteur effectue le même calcul pour vérifier la validité des données reçues. La correction est plus complexe que la simple détection et nécessite plus de bits de contrôle.
Un mot de code est constitué de :
d bits de données + c bits de contrôle = n bits transmis
Codes de parité
Parité verticale (VRC) : un bit de parité est ajouté à chaque bloc de 7 ou 8 bits. Ce bit vaut 0 si le nombre de bits à 1 est pair, sinon 1. Simple mais peu efficace, il ne détecte pas deux erreurs simultanées.
Parité longitudinale (LRC) : utilisée sur les bandes magnétiques, elle consiste à additionner les caractères d’un enregistrement et à ajouter un bit de parité par colonne de bits. L’utilisation combinée de VRC et LRC améliore la détection et parfois la correction d’erreurs.
Contrôle par redondance cyclique (CRC)
Le CRC est une méthode plus robuste de détection d’erreurs basée sur la division polynomiale des données par un polynôme prédéfini. Le reste de cette division est ajouté à la trame comme séquence de contrôle.
Sous-couche MAC (Medium Access Control)
La sous-couche MAC gère l’accès au support physique dans un environnement multipoint. Elle organise les bits en trames MAC et gère les adresses physiques des cartes réseau. Elle est indépendante du type de média (câble cuivre, fibre optique, onde hertzienne, etc.).
La couche liaison se divise ainsi :
- Couche de contrôle LLC (Logical Link Control) – norme 802.2
- Couche de contrôle d’accès au medium MAC – norme 802.3
Adressage physique et adresse MAC
Dans un réseau multipoint, chaque machine doit posséder une adresse physique unique. Les réseaux Ethernet, Token Ring et FDDI utilisent l’adressage MAC, une adresse sur 48 bits garantissant l’unicité mondiale d’un nœud.
Format d’une adresse MAC
| Champ | Bits | Description |
|---|---|---|
| I/G (Individual/Group) | 1 bit | 0 = adresse individuelle, 1 = adresse de groupe (multicast) |
| U/L (Universal/Local) | 1 bit | 0 = adresse universelle IEEE, 1 = adresse locale |
| Adresse constructeur | 22 bits | Identifie le fabricant |
| Sous-adresse | 24 bits | Identifie l’équipement |
Exemples d’adresses constructeur
| Constructeur | Adresse (3 octets) |
|---|---|
| Cisco | 00000C |
| 3Com | 0000D8, 0020AF, 02608C, 080002 |
| Intel | 00AA00 |
| IBM | 08005A |
Types d’adressage
- Broadcasting : adresse avec tous les bits à 1, pour diffusion générale
- Multicasting : bit I/G à 1, diffusion restreinte à un groupe
- Unicasting : bit I/G à 0, adresse unique d’un destinataire
Format des trames Ethernet
| Champ | Taille | Description |
|---|---|---|
| Préambule | 7 octets | Synchronisation du récepteur |
| SFD (Start Frame Delimiter) | 1 octet | Délimiteur de début de trame |
| Adresse MAC destination | 6 octets | Adresse du destinataire |
| Adresse MAC source | 6 octets | Adresse de l’émetteur |
| Longueur | 2 octets | Nombre d’octets du champ Données |
| Données | 0 à 1500 octets | Informations provenant de la sous-couche LLC |
| PAD (bourrage) | Variable | Octets de bourrage si données < 46 octets |
| FCS (Frame Check Sequence) | 4 octets | Détection d’erreurs |
Format des trames HDLC
Une trame HDLC est structurée comme suit :
01111110 Adresse Commande Données FCS 01111110 8 bits n bits 16 bits
- Fanions : délimiteurs de trame
- Adresse : champ parfois sous-utilisé en liaison point à point
- Commande : champ de contrôle des échanges
- Données : suite de bits groupés en octets (128 à 512 pour Transpac)
- FCS : séquence de détection d’erreurs calculée par division polynomiale (polynôme X^16 + X^12 + X^5 + 1)
Types de trames HDLC
- Trames I (Information) : transportent les données à transmettre
- Trames S (Supervisory) : gèrent les erreurs et le contrôle de flux
- Trames U (Unnumbered) : servent à l’établissement et à la libération de la liaison
Champ Commande
| Type de trame | Bits | Description |
|---|---|---|
| Trame I | 7 bits | N(S) : numéro de trame émise (modulo 8), N(R) : acquittement collectif, P/F : Poll/Final |
| Trame S | 7 bits | Valeurs S : 00=RR (Receiver Ready), 01=RNR (Receiver Not Ready), 10=REJ (Reject), 11=SREJ (Selective Reject) |
| Trame U | 7 bits | Valeurs M : 00111=SABM (établissement liaison), 01000=DISC (déconnexion), 01100=UA (acquittement non numéroté) |
Signification des champs dans la trame I
- N(S) : numéro modulo 8 de la trame envoyée
- N(R) : numéro de la prochaine trame attendue (acquittement collectif)
- P/F : Poll (demande d’acquittement immédiat par station primaire) ou Final (fin de transmission par station secondaire)
Signification des valeurs du champ S dans la trame S
- 00 (RR) : prêt à recevoir
- 01 (RNR) : pas prêt à recevoir
- 10 (REJ) : demande de retransmission des trames supérieures à N(R)
- 11 (SREJ) : demande de retransmission sélective de la trame N(R)
Signification des valeurs du champ M dans la trame U
- 00111 (SABM) : établissement de la liaison en mode équilibré (LAPB)
- 01000 (DISC) : demande de déconnexion
- 01100 (UA) : acquittement d’une trame non numérotée
Exemple d’échange entre deux stations
Station A Station B SABM, P DISC, P 0,0,P UA, F 1,0 RR,1,F 2,0,P SREJ,2,F 0,3,F 0,3,F 1,3,P UA, F
Glossaire des termes clés
- Trame : unité de données transmise par la couche liaison, composée d’un en-tête, des données et d’un contrôle d’erreurs.
- Fanion (flag) : séquence binaire spécifique utilisée pour délimiter les trames.
- Bit de transparence : bit inséré pour éviter la confusion entre les données et les fanions.
- VRC (Vertical Redundancy Check) : code de parité verticale ajoutant un bit de contrôle par bloc de bits.
- LRC (Longitudinal Redundancy Check) : code de parité longitudinale appliqué sur plusieurs blocs pour améliorer la détection d’erreurs.
- CRC (Cyclic Redundancy Check) : méthode de contrôle d’erreurs basée sur la division polynomiale des données.
- MAC (Medium Access Control) : sous-couche de la couche liaison qui gère l’accès au support physique et l’adressage physique.
- Adresse MAC : adresse physique unique sur 48 bits attribuée à chaque interface réseau.
- Trame I : trame de type information transportant les données.
- Trame S : trame de supervision pour la gestion des erreurs et du flux.
- Trame U : trame non numérotée utilisée pour établir ou libérer la liaison.
Points clés à retenir
- La couche liaison organise les données en trames pour une transmission fiable sur un canal.
- La délimitation des trames peut se faire par comptage ou par fanions avec bits de transparence.
- La détection et la correction d’erreurs reposent sur l’ajout de bits redondants (VRC, LRC, CRC).
- La sous-couche MAC gère l’accès au média et les adresses physiques uniques (adresses MAC).
- Les trames HDLC se divisent en trames I, S et U, chacune avec un rôle spécifique dans la communication.
- Le contrôle d’erreurs dans HDLC utilise un polynôme spécifique pour calculer le FCS.
Commentaires
Aucun commentaire pour le moment. Posez la première question.