Upload
buicong
View
214
Download
0
Embed Size (px)
Citation preview
Réseaux Informatiques Janvier, 2018 1
Cliquez pour modifier le style du titreChapitre 4
Couche Liaison
Réseaux Informatiques
République Tunisienne Ministère de l’Enseignement Supérieur
de la Recherche Scientifique *****
Université de la ManoubaEcole Supérieure d’Economie Numérique
Principes et Protocoles
Réseaux Informatiques Janvier, 2018 2
Introduction
• Cette couche doit assurer une transmission exemptée
d'erreurs sur un canal de communication.
• Les données sont fractionnées en trames.
Réseaux Informatiques Janvier, 2018 3
Description
• La couche liaison récupère des paquets de la couche réseau.
• Pour chaque paquet, elle construit une ou plusieurs trame(s).
• La couche liaison envoie chaque trame à la couche physique.
Réseaux Informatiques Janvier, 2018 4
couche réseau
couche liaison
couche physique
couche réseau
couche liaison
couche physique
paquet
trame
bits
paquet
trame
Emetteur Récepteur
Description
Réseaux Informatiques Janvier, 2018 5
Services offerts
• Gestion (délimitation) de trames
• Contrôle (détection et correction) d’erreurs
• Contrôle de flux
• Contrôle d'accès à un canal partagé (MAC)
Réseaux Informatiques Janvier, 2018 6
Délimitation de trames
Réseaux Informatiques Janvier, 2018 7
Délimitation des trames
• Problème:
Le récepteur doit savoir le début et la fin d’une trame.
Afin de reconstituer à partir des suites binaires les trames
envoyées.
• Solution :
Une trame doit commencer par un marqueur de début de
trame et se terminer par un marqueur de fin de trame.
Réseaux Informatiques Janvier, 2018 8
Délimitation des trames
• Il existe trois méthodes :
Compter les caractères
Utiliser des champs délimiteurs de trame
Ils se situent en début et en fin de trame
Des bits (ou caractères) de transparence sont nécessaires
Violer le codage, normalement, utilisé dans la couche
physique
Réseaux Informatiques Janvier, 2018 9
Compter les caractères
• On utilise un champ dans l'entête de la trame pour indiquer
le nombre de caractères de la trame
• Problème : si la valeur du champ est modifiée au cours de la
transmission
• Méthode rarement utilisée seule.
Réseaux Informatiques Janvier, 2018 10
Exemple
‘S’ ‘P’‘U’ 03 ‘L’‘R’‘E’ ‘E’ ‘C’06 ‘R’ ‘S’‘U’‘O’06
• Trames émises:
• Trames reçues:
‘S’ ‘P’‘U’ 04 ‘L’‘R’‘E’ ‘E’ 4306 ‘R’ ‘S’‘U’‘O’06
code ASCII de ‘C’
Réseaux Informatiques Janvier, 2018 11
Utiliser des délimiteurs
• Un fanion (délimiteur) est placé :
Au début de chaque trame
A la fin de chaque trame (en fait, au début de la suivante)
• Un fanion (flag) = séquence particulière de bits
• Des bits de transparence sont alors nécessaires pour qu’une
séquence binaire dans la trame ne corresponde
accidentellement au fanion.
Réseaux Informatiques Janvier, 2018 12
• Fanion : 01111110
• Bit de transparence : 0 inséré après toute séquence de cinq
1 successifs dans la trame.
Les bits insérés à l’émission sont éliminés par l’interpréteur
de réception.
• Technique utilisée dans :
HDLC
PPP
Exemple
Réseaux Informatiques Janvier, 2018 13
01111110 01111110
01011001111110
• Données :
• Trame :
010110011111010
Exemple
Réseaux Informatiques Janvier, 2018 14
Exemple
Réseaux Informatiques Janvier, 2018 15
Utiliser des fanions
• Avantages
Permet toujours de retrouver la synchronisation
Permet l'envoi de trames de tailles quelconques
Technique la plus simple
• Cette technique est utilisée, également, en considérant des
caractères de délimitation et des caractères de transparence.
Réseaux Informatiques Janvier, 2018 16Couche liaison Page 16
Détection et correction d’erreurs
Réseaux Informatiques Janvier, 2018 17
Transmission d’information
canal
émetteur récepteur
bruit
Réseaux Informatiques Janvier, 2018 18
Causes d’erreurs sur un canal
• Perturbations et imperfections des supports de transmission
� déformations des signaux transmis � erreurs sur les
données binaires reçues (0 au lieu de 1 ou vice-versa).
• Nécessité d'un mécanisme de contrôle et de vérification de
validité des séquences binaires transmises.
Réseaux Informatiques Janvier, 2018 19
Taux d’erreur sur un canal
• 10-9 pour les réseaux locaux
• 10-5 pour le RTC
• Taux élevé pour la téléphonie sans fil.
nombre de bits erronésTaux d'erreur
nombre de bits émis=
Réseaux Informatiques Janvier, 2018 20
Deux stratégies possibles
• La destination peut :
Détecter les erreurs, puis demander une retransmission
Code détecteurs d’erreurs
Détecter et corriger les erreurs
Codes correcteurs d’erreur
Réseaux Informatiques Janvier, 2018 21
Principe des codes
• Exploiter la redondance d’informations
Ajouter à chaque bloc de données à émettre des bits
supplémentaires (redondants), qui sont calculés en fonction
de ces données.
Le récepteur refait le même calcul sur les données reçues et
compare le résultat avec les bits rajoutés par l’émetteur
pour vérifier s'il y’avait eu des erreurs de transmission.
• Corriger est plus difficile que détecter
Plus de bits de contrôle
Réseaux Informatiques Janvier, 2018 22
Mot de code
d bits de données
+
c bits de contrôle
=
n bits d’information (à transmettre)
Un tel mot de n bits est appelé un mot de code
Réseaux Informatiques Janvier, 2018 23
Contrôle de parité verticale (Vertical Redundancy Check VRC)
• A chaque bloc de bits (7 ou 8) est ajouté un bit de parité :
bit de contrôle.
• Si le nombre de bits de type ‘1’ dans le bloc est pair, le bit
de contrôle = 0, sinon, il est égal à 1.
• Simple, mais peu efficace � Ne permet de détecter que les
erreurs portant sur un nombre impair de bits.
Réseaux Informatiques Janvier, 2018 24
Contrôle de parité longitudinale (Longitudinal Redondancy Check LRC)
• Principe :
Contrôler l'intégrité des données d'un caractère
Contrôler l'intégrité des bits de parité d'un bloc de caractères.
Rajouter à chaque colonne représentant une suite de bits de
même rang un bit de parité.
Effectuer cette opération même sur le rang des bits de parité.
L’utilisation du VRC et du LRC simultanément permet de
détecter plus d’erreurs et d’en corriger parfois.
Réseaux Informatiques Janvier, 2018 25
Contrôle par redondance cyclique (CRC)
Réseaux Informatiques Janvier, 2018 26
Contrôle par redondance cyclique (CRC)
Réseaux Informatiques Janvier, 2018 27
Contrôle de flux
Réseaux Informatiques Janvier, 2018 28
• Principe de base : il est interdit à l'émetteur d'envoyer des
trames sans avoir auparavant reçu une permission implicite
ou explicite du récepteur.
• Mécanismes mis en œuvre
Utilisation d'acquittements
Gestion de temporisateurs
Numérotation des trames
Limitation du nombre de trames pouvant être envoyées par
l'émetteur.
Contrôle de flux
Réseaux Informatiques Janvier, 2018 29
Contrôle de flux
Etablissement de la liaison• Le circuit de données est préalablement établi entre A et B.
Trame de demande d’établissement
Trame de confirmation d’établissement.
Réseaux Informatiques Janvier, 2018 30
Transfert de données
Trame de données ou d’information
Contrôle de flux
Réseaux Informatiques Janvier, 2018 31
Libération de la liaison
Trame de demande libération
Trame de confirmation
Contrôle de flux
Réseaux Informatiques Janvier, 2018 32
Fiabilité du transfert
ARQ (Automatic Repeat reQuest) • C’est une méthode de contrôle d’erreur pour la
transmission de données.
• Elle utilise des acquittements et des temporisateurs pour
parvenir à une transmission efficace de l'information.
• Un acquittement : est un message envoyé par le récepteur
vers l'émetteur afin de lui informer que la trame émise a
été bien reçue.
• Temporisateur (timeout): permet de borner le délai de
réception des acquittements
Deux types de protocoles ARQ• Protocole «envoyer et attendre» (Send and Wait).
• Protocole «à fenêtre d'anticipation» (SlidingWindow).
Réseaux Informatiques Janvier, 2018 33
Protocole «envoyer et attendre» (Send and Wait)
Principe• L'émetteur envoie une seule trame de données à la fois.
• Après avoir émis une trame, l'émetteur n'envoie pas de
données supplémentaires tant qu'il n'a pas reçu
d'acquittement (ACK) de la part du destinataire.
• Le destinataire n'envoie un ACK qu'après avoir reçu une
trame correcte.
• Si l'émetteur ne reçoit pas d'ACK avant l'expiration d'un délai
prédéfini (appelé temporisateur ou timeout), il réémet la
trame précédemment envoyée.
Avantage • Empêche l'émetteur d'envoyer des données plus
rapidement que le récepteur ne peut les traiter.
Réseaux Informatiques Janvier, 2018 34
Efficacité du «Send and Wait»
• Efficacité = taux d’occupation de la voie
= taux d’utilisation du canal de transmission
= temps de transmission (trame ou fichier) / temps
de transfert (trame ou fichier)
Réseaux Informatiques Janvier, 2018 35
Performance des communications
Réseaux Informatiques Janvier, 2018 36
Protocole «Send and Wait»
Réseaux Informatiques Janvier, 2018 37
Protocole «Send and Wait»
Réseaux Informatiques Janvier, 2018 38
Protocole «Send and Wait»
Réseaux Informatiques Janvier, 2018 39
• Ce protocole est unidirectionnel et ne permet qu’une faible
utilisation de la capacité du canal.
• La liaison de données est inoccupée la plupart du temps.
• L’émetteur passe son temps à attendre l’acquittement du
récepteur.
• Le récepteur passe son temps à attendre la trame de données
de l’émetteur.
• Mauvaise utilisation du circuit lorsque le temps de propagation
est important.
�Solution : Protocole à fenêtre d’anticipation (Sliding Windows)
Protocole «Send and Wait»
Réseaux Informatiques Janvier, 2018 40
Principe du protocole avec fenêtre d’anticipation• Transmission de données et acquittements dans les 2 sens
(mode bidirectionnel).
• Envoi d’un certain nombre de trames sans attendre
d'acquittement (pipelining).
• Acquittements ajoutés à des trames de données envoyées
dans l'autre sens (Piggypacking).
• L’émetteur stocke les trames non acquittées dans des
mémoires tampons (Buffer) .
• Si la fenêtre atteint son maximum, on n'envoie plus rien
jusqu'à une libération, ( réception de l’acquittement).
�Plus d'efficacité, Plus de complexité de gestion et besoin de
tampons pour trames non encore acquittées (et susceptibles
d'être réémises).
Protocole «Sliding Window»
Réseaux Informatiques Janvier, 2018 41
• Les trames émises ont un numéro de séquence codé sur n
bits (0:2^(n)-1), où n est la longueur du champ numéro de
séquence.
• Fenêtre d'émission (côté émetteur) : la liste des numéros de
séquence des trames autorisées à être émises .
• Fenêtre de réception (côté récepteur) : la liste des numéros
de séquence des trames autorisées à être reçues.
• Taille (maximale) = nombre de trames autorisées d’être
émises sans attendre les acquittements.
• Contenu de la mémoire tampon = numéros de séquence
des trames envoyées mais non encore acquittées.
Protocole «Sliding Window»
Réseaux Informatiques Janvier, 2018 42
Types d’acquittements :• Lorsque plusieurs trames doivent être acquittées, il est possible:
D’envoyer un acquittement « individuel » pour chaque trame
D’envoyer un acquittement « collectif » en indiquant:
Le plus grand numéro de trame parmi celles qui sont acquittées
Ou le numéro de la prochaine trame attendue.
Protocole «Sliding Window»
Réseaux Informatiques Janvier, 2018 43
Erreurs de transmission• Si une trame située au milieu d'une série est perdue ou erronée ?
• Deux techniques de rejet sont possibles :
1) Technique de rejet total :
• Le récepteur rejette toutes les trames qui suivent celle qui est erronée.
• Retransmission de toutes les trames qui suivent la trame erronée.
Inconvénient : le canal est mal exploité.
Avantage : pas besoin de mémoires tampons.
2) Technique de rejet sélectif :
• Le récepteur stocke les trames non erronées . Quand le récepteur
reçoit la trame erronée, il envoie un acquittement de cette trame.
Avantage : moins de retransmission de trames et le canal mieux exploité.
Inconvénient : besoin de mémoires tampons.
Protocole «Sliding Window»
Réseaux Informatiques Janvier, 2018 44
Sous-couche MAC
• Cette sous-couche a pour rôle de :
gérer l’accès au support physique car il s’agit d’une liaison
multipoint,
structurer les bits d’information en trames,
gérer les adresses physiques (dites MAC) des cartes réseaux.
• Elle est indépendante du média : câble cuivre, fibre
optique, onde hertzienne …
Réseaux Informatiques Janvier, 2018 45
Adressage physique
• Dans le cas d’une liaison multipoint, il est nécessaire de
disposer d’une adresse physique pour chaque machine.
A B C D
Adresse de A ? Adresse de B ? Adresse de C ? Adresse de D ?
Réseaux Informatiques Janvier, 2018 46
• Les réseaux Ethernet, Token Ring et FDDI utilisent le même
type d’adressage : l’adressage MAC.
• Cette adresse (sur 48 bits) permet d’identifier de manière
unique un nœud dans le monde.
Adresse MAC
Réseaux Informatiques Janvier, 2018 47
Adresse MAC
• I/G (Individual/Group)
si le bit est à 0 alors l’adresse spécifie une machine unique
(et non un groupe).
• U/L (Universal/Local)
si le bit est à 0 alors l’adresse est universelle et respecte le
format de l’IEEE.
I/G Adresse Constructeur Sous-adresseU/L
22 bits1 bit 24 bits
Format d’une adresse MAC
Réseaux Informatiques Janvier, 2018 48
Adresse MAC
Adresse Constructeur
• Une adresse universelle est attribuée par l’IEEE à chaque
constructeur.
Constructeur Adresse (3 octets)
Cisco 00000C
3Com 0000D8, 0020AF,
02608C, 080002
Intel 00AA00
IBM 08005A
Réseaux Informatiques Janvier, 2018 49
Adresse MAC
Types d’adressage
• Adresse pour la diffusion générale (broadcasting) : tous les
bits à 1
• Adresse pour la diffusion restreinte (multicasting) : bit I/G à 1
• Adresse correspondant à un unique destinataire (unicasting) :
bit I/G à 0
Réseaux Informatiques Janvier, 2018 50
Format des trames Ethernet
Préambule DonnéesSFD Adr. MAC dst Adr. MAC src long PAD FCS
6 octets 2 octets 4 octetsn octets
10101010101010101010101010101010101010101010101010101010 10101011
7 octets 1 octet
Réseaux Informatiques Janvier, 2018 51
Champs de la trame
• Préambule : sert à synchroniser le récepteur.
• SFD (Start Frame delimiter) : délimiteur.
• Longueur : nombre d’octets du champ Données.
• Données : informations provenant de la sous-couche LLC. La
longueur de ce champ est comprise entre 46 et 1500 octets.
• Bourrage (PAD) : octets de bourrage sans signification,
insérés si la longueur du champ données est insuffisante
(inférieure à 46 octets).
• FCS : champ pour la détection d’erreurs.
Réseaux Informatiques Janvier, 2018 52
Réseaux Informatiques Janvier, 2018 53
Protocole HDLC
• Offre un service de transfert de données fiable et efficace
entre deux systèmes adjacents.
• Protocole utilisant le mode connecté.
• Utilisé comme protocole de la couche liaison de données
dans les normes X.25 en usage dans les réseaux publics de
transmission numérique de données.
Réseaux Informatiques Janvier, 2018 54
• Fanion
Constitué de 8 éléments binaires (01111110) – 7E (hexadécimal).
Délimite la trame : fanion de tête et fanion de queue.
Un fanion de queue peut être fanion de tête de la trame suivante.
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 55
• Lorsqu’un caractère dans un champs quelconque comprend
une suite de 6 bits à « 1 », un bit « 0 » est inséré après le
cinquième bit à l’émission pour éviter une confusion avec un
fanion, il sera éliminé à la réception.
01111110 devient 011111010
01111111 devient 011111011
011111110 devient 0111110110
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 56
• Adresse (8 bits, extensible à 16 bits)
Désigne l’adresse du destinataire à qui est envoyée la trame.
Ou l’adresse du terminal qui transmet les données.
• Commande (8 bits, extensible à 16 bits)
Identifie le type de trame.
On distingue trois types de trames :
Les trames d’informations (I Information)
Les trames de supervision (S Supervisory)
Les trames non numérotés (U Unnumbered)
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 57
Trames d’information (I)
• Contiennent un champs de données.
• N(s) et N(r) : numéros des trames émises et reçues.
• P/F : bit de contrôle de la liaison.
P(Poll)=1: indique qu’un acquittement immédiat est demandé.
F(Final)=1 : acquittement immédiat d’une trame.
F=0 : réponse par une trame d’information.
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 58
• Trames de supervision (S)
Permettent de contrôler l’échange de données
On distingue 4 types de trames de supervision: codées dans le
sous-champ Type du champ Commande
1) RR (Received & Ready) – 00 : acquittement
Confirme la réception des trames de données de numéro < N(R)
Demande la transmission des trames suivantes.
2) RNR (Received & Not Ready) – 10 : contrôle de flux
Confirme la réception des trames de données de numéro <
N(R)
Interdit la transmission des trames suivantes.
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 59
3) REJ (Reject) – 01 : protection contre les erreurs
Confirme la réception des trames de données de numéro < N(r).
Demande la retransmission des trames de numéro >= N(R).
4) SREJ (Selective Reject) – 11 : protection contre les erreurs.
Confirme la réception des trames de données de numéro < N(R).
Demande la retransmission de la trame de numéro = N(R).
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 60
• Trames non-numérotées
Gèrent la liaison : établissement, libération, …
Ne possèdent pas de numéro.
MMMMM : code le type des trames non-numérotées
Trame d’établissement de la connexion (commande):
SABM (Set asynchronous balanced mode) : 11100
Trame de libération de la connexion (commande) :
DISC (Disconnection) : 00010
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 61
• Trame de confirmation (réponse) : acquittement d’une trame
de type DISC, SABM
UA (Unnumbered acknowledgment) : 00110
• Trame de rejet définitif d’une trame (réponse)
FRMR (Frame reject) : 11000
• Trame d’indication de connexion interrompue
DM (Disconnected mode) : 10001
Structure de la trame HDLC
Réseaux Informatiques Janvier, 2018 62
Structure de la trame HDLC
Information
• Contient les informations transmises.
FCS (Frame Check Sequence)
• Champ de contrôle d’erreur : détecte les informations
transmises de façon erronée.
• Constitué du reste de la division polynomiale (CRC) du message
transmis (adresse, commande, information) par le polynôme
générateur de degré 16.
• Le CRC, calculé à l’émission, est vérifié à la réception.
Réseaux Informatiques Janvier, 2018 63
Ouverture de connexion :
• L’émetteur émet une trame SABM ou SABME (U).
• Le correspondant l’acquitte avec une trame UA (U).
• Sans réponse, l’émetteur renouvelle sa demande au bout d’un
temps T. Il abandonne au bout de N2 tentatives.
Le compteur N2 est initialisé à 10, il est décrémenté de 1 à chaque
tentative.
Établissement d’une communication
Réseaux Informatiques Janvier, 2018 64
Transfert de données :
• Quand la connexion est établie, des trames d’information sont
échangées entre les terminaux.
• L’échange est contrôlé par les trames de supervision.
• L’acquittement de chaque trame émise peut être :
Explicite : par une trame RR (s)
Implicite : par comparaison des champs N(r) et N(s)
• La trame REJ(s) est utilisée pour indiquer une trame
d’information erronée (numéro de séquence invalide, …)
• La trame RNR(s) acquitte la trame (I) : N(r) -1 et demande à
l’émetteur d’arrêter provisoirement l’émission : contrôle de flux.
Établissement d’une communication
Réseaux Informatiques Janvier, 2018 65
Établissement d’une communication
Transfert de données :
Réseaux Informatiques Janvier, 2018 66
Déconnexion :
• Envoi de la trame DISC (U).
• Acquittement par la trame UA (U) : déconnexion
Établissement d’une communication
Réseaux Informatiques Janvier, 2018 67
• Scénario de transfert de données : transfert unidirectionnel
Fonctionnement d’HDLC
Réseaux Informatiques Janvier, 2018 68
• Scénario de transfert de données : transfert bidirectionnel
Fonctionnement d’HDLC
Réseaux Informatiques Janvier, 2018 69
• Scénario de transfert de données transfert avec perte
Fonctionnement d’HDLC
Réseaux Informatiques Janvier, 2018 70
Fonctionnement d’HDLC
• Scénario de transfert de données transfert avec contrôle de flux
Réseaux Informatiques Janvier, 2018 71
Contrôle de fluxMécanisme avec fenêtre d’anticipation de largeur N
• Une station est autorisée à émettre plusieurs trames
successives pendant le délai de propagation aller-retour
sans atteindre la taille de la fenêtre d’anticipation.
�Utilisation efficace de la bande passante.
• Problème : Comment résoudre le problème des trames
perdues ou erronées ?
RETRANSMISSION (GO-Back-N) de toutes les trames à partir
de la trame erronée ou perdue au moyen de la trame de
supervision REJ.
REJET SELECTIF (Selective Reject) au moyen de la trame de
supervision SREJ.
Réseaux Informatiques Janvier, 2018 72