Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié1
Cours n° 2Cours n° 2
Liaison de données et tramesLiaison de données et trames
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié2
1. Délimitation de trames Fanions
2. Détection/correction d’erreurs Code de parité Code polynomial Code de Hamming
3. Contrôle de flux Protocoles à fenêtres d’anticipation
Sommaire
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié3
DéfinitionDéfinition
Assurer une transmission exempte d'erreurs sur un canal de communicationRécupération des paquets de la couche réseau,
Construction d’une (ou plusieurs) trame(s) pour chaque paquet,
Envoie de chaque trame à la couche physique
Emetteur
couche réseau
couche liaison
couche physique
couche réseau
couche liaison
couche physique
paquet
trame
bits
paquet
trame
Récepteur
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié4
1. DELIMITATION DE TRAMES1. DELIMITATION DE TRAMES
IntroductionIntroduction
Trames (Suites de bits ou de caractères de taille variable)
Détection du début et de la fin de la trame,
Synchronisation entre émetteur et récepteur
Trois méthodes de délimitationTaille de la trame,
Champs délimitateurs (fanions) en début et/ou en fin de trame
Transmission de la requête de délimitation à la couche physique
‘M’‘A’ ‘S’ ‘T’ ‘E’ ‘R’ ‘I’ ‘G’ ‘I’‘I’‘L’ ‘1’
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié5
1. DELIMITATION DE TRAMES1. DELIMITATION DE TRAMES
Taille de la trameTaille de la trame
Ajout d’un champ dans l'en-tête de la trame pour indiquer le nombre de caractères de la trame
Problème en cas de modification de la valeur du champ au cours de la transmission
Trames émises
Trames reçues
‘M’‘A’ ‘S’ ‘T’ ‘E’ ‘R’ ‘I’ ‘G’ ‘I’‘I’‘L’ ‘1’6 5 1
‘M’‘A’ ‘S’ ‘T’ ‘E’ ‘R’ ‘I’ ‘G’ ‘I’‘I’‘L’ ‘1’6 5 1
‘M’‘A’ ‘S’ ‘T’ ‘E’ ‘R’ ‘I’ ‘G’ 73‘I’‘L’ ‘1’6 4 01
w
Propagation de l’erreur
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié6
1. DELIMITATION DE TRAMES1. DELIMITATION DE TRAMES
FanionsFanions
Séquence particulière de bits signalant le début et la fin d’une trame
Adaptée à des trames de bits,Interdiction d’une séquence binaire identique dans la trame
Ajout de bits de transparencePas de perte de la synchronisationEnvoi de trames de taille quelconque
Exemple
Fanion 1 1 1 1 1 1
1 1 1 1 1 10 0Données 1 1 0 11 1
Trame 1 1 1 1 1 1 1 1 0 11 1 1 1 1 1 1 1 1 1 1 1 10 0 1 1 1 1 1 1 10
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié7
2. DETECTION/CORRECTION D’ERREURS2. DETECTION/CORRECTION D’ERREURS
Erreurs sur un canal de transmissionErreurs sur un canal de transmission
Causes
rayonnement électromagnétique (relais, émetteurs)
câblage mal isolé et effet de distorsion (longueur du câble)
10-15 pour les bus des ordinateurs (erreurs tous les 11 ans)
10-9 pour les réseaux locaux (erreurs toutes les 10 secondes)
10-5 pour le téléphone (100 erreurs par seconde)
10-2 pour le WIFI (100 000 erreurs par seconde)
Types d’erreursErreurs isolées
simples à détecter et à corriger, proportion élevée de trames affectées
Erreurs en rafalesdifficiles à détecter et à corriger, proportion faible de trames affectées
émis bits de nombre
erronés bits de nombreerreurd' Taux
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié8
2. DETECTION/CORRECTION D’ERREURS2. DETECTION/CORRECTION D’ERREURS
StratégiesStratégies
Détection des erreurs par le récepteurCode détecteurs d’erreurs
Demande d’une retransmission à l’émetteur
Détection et correction des erreurs par le récepteurCodes correcteurs d’erreur
canal unidirectionnel
grande distance entre l’émetteur et le récepteur (satellite)
Adaptation de la taille des trames transmisesDiminution de la taille des trames
en cas d’augmentation du taux d’erreur,en cas d’erreurs isolés
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié9
2. DETECTION/CORRECTION D’ERREURS2. DETECTION/CORRECTION D’ERREURS
Principe des codesPrincipe des codes
Mot de coded bits de données + c bits de contrôle = n bits d’information (à transmettre)
Distance de Hamming de deux motsNombre de bits différents entre deux mots
Distance de Hamming d’un codedistance de Hamming entre les 2 mots du code les plus proches
Capacité d’un code à détecter d erreursDistance de Hamming du code supérieure ou égale à d + 1
Capacité d’un code à corriger d erreursDistance de Hamming du code supérieure ou égale à 2*d + 1
Exemple : Soit le code C = { 0000 0000, 0000 1111, 1111 0000, 1111 1111 }
sa distance de Hamming est égale à 4
si un récepteur reçoit 0000 0111, peut t’il corriger l’erreur ?
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié10
2.1 CODE DE PARITE2.1 CODE DE PARITE
Principe et capacitéPrincipe et capacité
Ajout d’un seul bit (dit de parité) aux bits de donnéesParité paire des données
ajout d’un bit 0 Ex:
Parité impaire des données
ajout d’un bit 1 Ex:
Parité du nombre de bits à 1 du mot de code
Capacité du code de paritéDétection d’une erreur simple ou d’un nombre impair d’erreurs
Pas de détection d’un nombre pair d’erreurs
Pas de correction d’erreur
Distance de Hamming de 2
1 1 0 11 0
0 1 0 11 1
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié11
2.2 CODE POLYNOMIAL 2.2 CODE POLYNOMIAL
Principe et capacitéPrincipe et capacité
Transformation du mot de données en polynôme devient x3 + x2 +1
Division par un polynôme générateurMot de code constitué du quotient et du reste
Normalisation de polynômes générateur possédant de bonnes propriétésCRC 16 = x16 + x15 + x2 + 1
CRC CCITT = x16 + x12 + x5 + 1
Détection de toutes les erreurs simples et doubles, de toutes les erreurs en rafale de longueur 16
Adapté à des mots de données de taille variable
0 111
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié12
2.3 CODES LINEAIRES 2.3 CODES LINEAIRES
Principe et capacitéPrincipe et capacité
Ajout de c bits de contrôle aux d bits de données
Produit matriciel du mot de donnée par une matrice (c+d) X d dite génératrice
0 111 0 1 10 1 0 11 1 0 1
1 10 0=
Correction par le mot code le plus proche
Obligation de travailler sur des mots de données de taille fixe
Codes linéaires auto-correcteurs
Codage de la position d’un bit en erreur ou l’absence d’erreur
Distance de Hamming de 3correction des erreurs simples et détection des erreurs doubles
Exemple : Code de Hamming (7 , 4) d = 4, c = 3
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié13
3. CONTRÔLE DE FLUX 3. CONTRÔLE DE FLUX
Protocole EnvoyerProtocole Envoyer
HypothèsesMémoire tampon infinie et canal parfait (pas de pertes ni d'erreurs)
Paquet p
EmetteurTant que vrai répéter
t construireTrame(p)couchePhysique.prendreTrame(t)
Fin tant que
Récepteur Tant que vrai répéter
t couchePhysique.donnerTrame()Fin tant que
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié14
3. CONTRÔLE DE FLUX 3. CONTRÔLE DE FLUX
Protocole Envoyer et Attendre (Send and Wait)Protocole Envoyer et Attendre (Send and Wait)
Hypothèsesmémoire tampon finie et canal parfait (pas de pertes ni d'erreurs)
Envoie par le récepteur d’une trame d'acquittement après chaque trame reçue
Attente par l'émetteur de l’acquittement avant l’émission de la trame suivante
EmetteurTant que vrai répéter
t construireTrame(p)couchePhysique.prendreTrame(t)couchePhysique.attendreAquittement()
Fin tant que
Récepteur Tant que vrai répéter
t couchePhysique.donnerTrame()couchePhysique.envoyerAcquittement()
Fin tant que
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié15
3. CONTRÔLE DE FLUX 3. CONTRÔLE DE FLUX
Protocole Envoyer Attendre et Réémettre (1/2)Protocole Envoyer Attendre et Réémettre (1/2)
Hypothèsesmémoire tampon finie et canal imparfait (pertes et erreurs)
Utilisation d’une méthode de détection d’erreurs
Envoie par le récepteur d’une trame d'acquittement si la trame est correcte.Réémission de la trame si aucune trame d’acquittement n’est reçue
EmetteurTant que vrai répéter
t construireTrame(p)booléen ack fauxTant que ack = faux répéter
couchePhysique.prendreTrame(t)ack couchePhysique.attendreAquittement()
Fin Tant queFin tant que
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié16
3. CONTRÔLE DE FLUX 3. CONTRÔLE DE FLUX
Protocole Envoyer Attendre et Réémettre (2/2)Protocole Envoyer Attendre et Réémettre (2/2)
RécepteurTant que vrai répéter
t couchePhysique.donnerTrame()Si estCorrecte(t) alors
couchePhysique.envoyerAcquittement()Fin si
Fin tant que
ProblèmeBlocage en cas de perte de la trame d’acquittement
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié17
3. CONTRÔLE DE FLUX 3. CONTRÔLE DE FLUX
Protocole à fenêtres d’anticipationProtocole à fenêtres d’anticipation
Numérotation des trames et des trames d’acquittementDétection d’une trame perdue
Fenêtre de réception stockant les trames attenduesTaille (R) avec R = 1 généralementFenêtre d’émission indiquant la liste des numéros de trames dont on attend l’acquittement Taille (maxE) indiquant le nombre maximal de trames pouvant être envoyées sans acquittements (taille courante variable)Choix de maxE en fonction de la taille de la trame, du débit et du temps de propagation
Efficacité de la transmission = Tem/Ta Tem = maxE* Te temps d’émission maximal
Ta = Te + Tp temps d’émission + temps de propagation
Te = m / d m taille de la trame, d débit
Exemple d= 50kbits/s, m = 1000 bits, Tp = 250ms MaxE = 13
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié18
3.1 PROTOCOLE A FENETRES D’ANTICIPATION 3.1 PROTOCOLE A FENETRES D’ANTICIPATION
Stratégies d’acquittement (1/2)Stratégies d’acquittement (1/2)
Envoi d’un acquittement pour chaque trameMinimisation du temps de réponseDoublement du nombre de trames
trame 0
trame 1
trame 2 ack 0
ack 1
ack 2
Emetteur Récepteur
temps
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié19
3.1 PROTOCOLE A FENETRES D’ANTICIPATION 3.1 PROTOCOLE A FENETRES D’ANTICIPATION
Stratégies d’acquittement (2/2)Stratégies d’acquittement (2/2)
Envoi d’un acquittement toutes les trames reçuesAugmentation du temps de réponseMinimisation du nombre de trames d’acquittement
temps
trame 0
trame 1
trame 2
ack 2
EmetteurRécepteur
Masters ILGII et IILGI – Intranet internet extranet – 2006-2007 – Claude Montacié20
3.1 PROTOCOLE A FENETRES D’ANTICIPATION 3.1 PROTOCOLE A FENETRES D’ANTICIPATION
Stratégies de rejetStratégies de rejet
Rejet totalRejet des trames suivant une erreur de transmission
Rejet sélectifStockage des tramessuivant une erreur de transmissionRemise en séquence
Top Related