03-cours
7 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
7 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

RéseauxCouche LiaisonE. JeandelRésumé des épisodes précédentsLa couche physique nous permet une transmission brute de bits par un mediumreliant une machineA à une machineB.La couche liaison7.6.2.1 La couche liaison de données fournit les moyens fonctionnels et procédu-raux nécessaires d’une part à la transmission en mode sans connexion entre entitésde réseau et, d’autre part, en mode connexion, à l’établissement, au maintien et à lalibération des connexions de liaison de données entre entités de réseau, ainsi qu’autransfert des unités de données de service de liaison de données. Une connexion deliaisondedonnéesestconstruiteàpartird’uneouplusieursconnexionsphysiques.Plusieurs services– Service sans connexion, sans acquittement– sans connexion, avec– Service avec connexion, avec acquittement, fiablePlusieurs services– Acquittement : L’emetteur sait que le message a été reçu.– Connexion : Dialogue préalable pour se “connecter”.– Téléphone vs Lettres vs Lettres+ARPlusieurs services– Envoi de fichier ?– Multimédia ?– VoIP ?– Liaison cablée point-à-point ?– sans fil ?– Liaison modem ?Que faut-il faire ?– Être capable d’envoyer des messages sur le medium– Détecter les erreurs– Que faire s’il y a des erreurs ?11 TramesTramesUne donnée échangée au niveau liaison s’appelle unetrame.– Données + CommandesProblème : comment délimiter les trames ?Découpage de trames (Solutions)– Indiquer la taille de chaque trame– Codage de début et de fin– ...

Sujets

Informations

Publié par
Nombre de lectures 60
Langue Français

Extrait

RÉseaux Couche Liaison E. Jeandel
RÉsumÉ des Épisodes prÉcÉdents La couche physique nous permet une transmission brute de bits par un medium reliant une machineAÀ une machineB.
La couche liaison 7.6.2.1La couche liaison de donnÉes fournit les moyens fonctionnels et procÉdu-raux nÉcessaires d’une part À la transmission en mode sans connexion entre entitÉs de rÉseau et, d’autre part, en mode connexion, À l’Établissement, au maintien et À la libÉration des connexions de liaison de donnÉes entre entitÉs de rÉseau, ainsi qu’au transfert des unitÉs de donnÉes de service de liaison de donnÉes. Une connexion de liaison de donnÉes est construite À partir d’une ou plusieurs connexions physiques.
Plusieurs services – Servicesans connexion, sans acquittement – Servicesans connexion, avec acquittement – Serviceavec connexion, avec acquittement, fiable
Plusieurs services – Acquittement: L’emetteur sait que le message a ÉtÉ reÇu. – Connexion: Dialogue prÉalable pour se “connecter”. – TÉlÉphonevs Lettres vs Lettres+AR
Plusieurs services – Envoide fichier ? – MultimÉdia? – VoIP? – LiaisoncablÉe point-À-point ? – Liaisonsans fil ? – Liaisonmodem ?
Que faut-il faire ? – trecapable d’envoyer des messages sur le medium – DÉtecterles erreurs – Quefaire s’il y a des erreurs ?
1
1 Trames Trames Une donnÉe ÉchangÉe au niveau liaison s’appelle unetrame. – DonnÉes+ Commandes ProblÈme : comment dÉlimiter les trames ?
DÉcoupage de trames (Solutions) – Indiquerla taille de chaque trame – Codagede dÉbut et de fin – Reporterle problÈme À la couche physique
Codage de dÉbut et de fin (Mode octet) M a r s e i l l e # (header) M a r s e i l l e (footer) # On repÈre le dÉbut (resp. fin) de la trame par le caractÈre #.
Codage de dÉbut et de fin (Mode octet) R o o m: # 1 3 4 9 Y E S! I Wo n # (header) R o o m: # 1 3 4 9 (footer) # # (header) R o o m: !# 1 3 4 9 (footer) # # (header) Y E S! !I Wo n (footer) #
Codage de dÉbut et de fin (Mode bit) – Oncode le dÉbut et la fin par le fanion01111110 – Danstout le texte, une suite de 5 caractÈres1consÉcutifs est remplacÉe par 111110
Codage en couche physique Example du Codage Manchester.
2
2 DÉtectiond’erreurs ProblÉmatique – Latransmission dans le medium n’est pas parfaite. – Lacouche physique n’offre aucune garantie.
Erreurs – Uncode de paramÈtre(n, m)est un procÉdÉ qui transformenbits enm > n bits. On notef(x)la fonction. – EngÉnÉral, les codes ajoutent auxnbits existants,mnbits de contrÔle. Ce n’est pas toujours le cas. – Unmotxest transmis aveckerreurs si le rÉsultat de la transmission contientk bits diffÉrents de leur valeur initiale. – Uncode dÉtectekerreurs si, lorsqu’un motf(x)est transmis avec moins dek erreurs, on peut se rendre compte que le message est erronÉ. – Uncode corrigekerreurs si, lorsqu’un motf(x)est transmis avec moins dek erreurs, on est capable de retrouverf(x).
Premier exemple (Bit de paritÉ) – Onajoute À un message denbits un bit de paritÉ – Lebit vaut0s’il y a un nombre pair de1dans le message, et1sinon. – Detecteune erreur. – N’encorrige aucune.
Distance de Hamming – Ladistance de Hamming entre deux motsxetyest le nombre de bits sur lesquels ils diffÈrent.
d(00010,01010) = 1 d(00011010,00001011) = 2 – OnnoteB(x, k)la boule de centrexet de rayonk: c’est l’ensemble des mots qui diffÈrent dexpar moins dekbits.
0 1k |B(x, k)|=C+C+∙ ∙ ∙+C m mm
Distance de Hamming (Reformulations) – Uncode dÉtectekerreurs si pour toutx6=y,B(x, k)ne contient pasy. – Uncode corrigekerreurs si pour toutx6=y,B(x, k)etB(y, k)ne s’intersectent pas. – Uncode dÉtectekerreurs si la distance entre deux mots de code est supÉrieure À k+ 1 – Uncode corrigekerreurs si la distance entre deux mots de code est supÉrieure À 2k+ 1
3
ProblÉmatique Compromis À trouver : – EfficacitÉdu code : rapportn/m – PropriÉtÉsde correction du code Limite thÉorique :
Pourk= 1:
n0 1k m 2 (C+C+∙ ∙ ∙+C)2 m mm
n m 2 (m+ 1)2
Codes de Hamming – Codeoptimal corrigeant une seule erreur – Lesbits de contrÔle sont situÉs aux puissances de2. i i – Lebit de contrÔle en position2est la paritÉ de tous les bits ayant2dans leur dÉcomposition en binaire. a b c d
1 2 3 4 5 6 7 x y a z b c d 001 010 011 100 101 110 111 x y a zb c d x=a+b+d y=a+c+d z=b+c+d
Codes Polynomiaux (CRC (Cyclic Redundancy Check)) P i – OnreprÉsente le motaipar le polynÔmeaiX. – Oncalcule le rÉsultat modulo un polynÔmeP(et modulo2). 5 2 – Exemple: Calcul du CRC de110011110pour le polynÔmex+x+ 1(CRC-5-USB)
8 74 3 25 2 x+x+0 +0 +x+x+x+x+0x+x+ 1 8 53 32 x xx x+x+ 1 7 54 2 x0x x0x x0 7 42 x xx 5 x0 0 0x0 5 2 x x1 2 x x1 2 – RÉsultat:x+x+ 1
4
Codes Polynomiaux (CRC (Cyclic Redundancy Check)) – FacilesÀ calculer par un circuit Électronique – Despetits polynomes peuvent dÉtecter beaucoup d’erreurs.
3 Protocoles ProblÉmatique Transmettre un message deAÀB, en tenant compte – Deserreurs – Despertes – Dutemps de traitement (couches supÉrieures. . . )
Protocole minimal Aenvoie toutes ses trames dÈs que possible while(1) physical.put(network.nextframe()); BreÇoit toutes les trames dÈs que possible while(1) network.handleframe(physical.get()); ProblÈmes Bdoit tre capable de traiter la trameiavant que la tramei+ 1ne soit arrivÉe. – Nemarche pas si perte ou erreurs.
Protocole avec attente Aattend queBait traitÉe la trame avant d’envoyer la suivante physical.put(network.nextframe()); A: while (1) wait_acknowledgement();
network.handleframe(physical.get()); B: while(1) acknowledge(); Pour prÉvenirA, le rÉcepteurBpeut utiliser le mme medium : acknowledge() { physical.put(frame_ack);} ou un tout autre moyen/rÉseau/medium. – NegÈre toujours pas les erreurs
5
Protocole avec erreurs (Essai1) Aattend queBait validÉ la trame avant d’envoyer la suivante A: while (1) frame = network.frame[i]; physical.put(frame); correct = physical.get(); if (correct) i++;
B: while(1) frame = physical.get(); if correct(frame) physical.put(1); network.handleframe(frame); else physical.put(0);
Protocole avec erreurs (Essai2) On suppose qu’une trame non correcte (avec une CRC invalide) n’est vue ni deA ni deB – Idem,maisArenvoie la trame si un certain dÉlai est passÉ A: while (1) frame = network.frame[i]; physical.put(frame); received = physical.get() // timeout(); if (received &&!timeout) i++;
B: while(1) frame = physical.get(); physical.put(1); network.handleframe(frame);
Protocole avec erreurs (Essai3, correct) – Idem,maisBrenvoie le numÉro de la trame qu’il attendait. A: while (1) frame = network.frame[i]; physical.put(frame); correct = physical.get() // timeout(); if ((correct == i) &&!timeout) i++;
B: while(1) frame = physical.get(); if (frame.number == i) physical.put(i++); network.handleframe(frame); Note : on peut se contenter d’envoyerimod 2plutÔt queien gÉnÉral
6
Protocole avec fentre AenvoieNframes avant d’attendre queBacquittex – VoirdÉmo
Deux protocoles – Go-Back-N.Taille de fentreN, messages numÉrotÉs de1ÀN+ 1. – PossibilitÉd’envoyer un NAK “je n’ai pas reÇu le message” – RÉpÉtitionsÉlective. Taille de fentreNA, NB, messages numÉrotÉs de1ÀNA+ NB.
Bidirectionnel Aenvoie des donnÉes ÀBetBdes donnÉes ÀA – LeACK est encapsulÉ dans les frames de donnÉes piggybacking
4 Envrai HDLC (High-Level Data Link Control - ISO 13239) Flag Adresse Commande DonnÉes CRC Flag 8 88/16 Variable16 8 – Flag01111110, un seul sÉpare deux trames. – Troistypes de trames : Information (i.e. DonnÉes) , Supervision (e.g. ACK), Autre – DonnÉes: La commande contient le numÉro de la trame envoyÉe, et celui de la trame attendue (ACK) – Supervision: (ex.) Reject/Selective Reject : La commande contient un numÉro de trame À rÉenvoyer UtilisÉ par ex dans ISDN/RNIS (NumÉris), ou X.25
PPP (Point to Point Protocol (RFC 1661)) – EncapsulÉedans HDLC – Lechamp Adresse et le champ commande ne sont pas utilisÉs – Lechamp donnÉes contient le protocole, et les donnÉes associÉes UtilisÉ partout
5 Suite La semaine prochaine – Onreste sur la couche liaison – Ons’intÉresse aux rÉseaux locaux, et rÉseaux À diffusion
7
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents