Université de La Rochelle
Master CCI
Réseaux TD n° 3 : LLC Exercice 1 :
1. Quelle Quelle est la distance distance de Hamming entre deux deux mots valides valides dans le code ASCII ASCII ? 1, car pour passer d'un mot valide à un autre mot valide du code il suffit de modifier un seul bit. En d'autres termes : tous les mots possibles sont valides. 2.
Quels sont les types d’erreurs que permet de déceler un tel codage ? Rappel : pour une distance de Hamming donnée dist - on peut détecter avec certitude n bits, avec n +1 dist - on peut corriger avec certitude n bits, avec !n +1 dist - le but d'un code détecteur "et éventuellement correcteur# d'erreur est d'augmenter la valeur de dist $ans notre cas, aucune détection n'est possible : n % &.
. !n c"oisit un code # trois $its% les mots de code valides sont ceux dont les trois $its sont identiques. Quelle est la distance de Hamming ? es mots valides sont : &&& et 111. (our passer d'un mot valide à l'autre il faut c)anger * bits. a distance de Hamming est donc de *.
&. Si une erreur se produit produit sur un seul $it% $it% quels sont les mots que l’on peut o$tenir% o$tenir% et par quel mot valide c"acun peut il 'tre remplacé sans am$igu(té ?
es mots erronés avec 1 seul bit fau sont : &&1, &1&, 1&&, 11&, 1&1, &11 (uisue la distance de Hamming est *, on doit pouvoir détecter au maimume *-1%! bits et corriger "*-1#! % 1 bit "cf. rappel cidessus#. a correction consite à revenir au mot valide le plus proc)e du mot erroné reu. /insi, les * premiers premie rs mots seront seront remplacés remplacés par &&& &&& "car ils ont ont une distance distance de 1 avec &&& et une distance distance de ! avec 111, il est bien sur nécessaire de faire la supposition u'il n'0 a pas eu plus d'une erreur# et les trois derniers par 111 "pour des raisons similaires#
Exercice 2 ) *e C+C ,0clic Redundanc0 )ec2 - est un code qui permet de détecter les erreurs de transmission. Il est o$tenu en aoutant aux données transmises ,I- les $its de redondance ,+- o$tenus en divisant C / par 0. C/ étant le mot de code o$tenu en raoutant d $its # / # la in de I% 0 étant les $its représentant le polyn2me générateur et d le degré de 0. *e code C envoyé est la concaténation de I et de +. 3 l’arrivée% le récepteur détecte une erreur si la division de C re4u par 0 ne donne pas un reste nul. Il existe mét"odes pour calculer le C+C ) la division polynomiale $inaire% la division polynomiale sym$olique sym$olique et les registres # décalage. 5ous allons étudier uniquement les deux premi6res qui sont similaires. 1. Calcule7 la mét"ode de la division division polynomiale sym$olique le $loc $loc de contr2le ,C+C,C+C- correspondant # la 4 suite de $its 1100101010101011 en utilisant le polyn2me générateur G(x) =x + x3 + x + 1 I 8 11//1/1/1/1/1/11 % d 8 & ⇒ C/ 8 11//1/1/1/1/1/110000 ⇒ C/,x- 8 x19: x1;: x1<: x1: x11: x9: x=: x<: x& 0 8 11/11 ⇒ 0,x- 8 x&: x: x:1 !n eectue la division de C/,x- par 0,x- ,la division polynomiale sym$olique est immédiate voir l’exemple du suet de >-. R(x) = x3 donc R = 1000 on !rans"e! a#ors C = $ R = 1100101010101011 1000
@. *a détectio détection n d’erreurs d’erreurs utilise utilise le C+C x% + x4 + x + 1. *e récepteur re4oit la séquence $inaire suivante 101011000110 . *e message estil correct ,tester avec la mét"ode de division polynomiale $inaire- ? C 8 101011000110 % I 8 101011 % + 8 000110 % 0 8 1010011 Bour vériier que le message est correct il aut aire la division de C re4u par 0. Si le reste est nul ,et il l’est normalement- alors c’est $on.
Université de La Rochelle
Master CCI
Exercice 3 ) ans l’alp"a$et ASCII le mot !SI D se code par les caract6res de = $its suivants ) E!’ 8 1001111, ‘S’ = 1010011 et EI’ 8 1000011 1. *a *+C ,ongitudinal Redundanc0 )ec2 - consiste # raouter un $it de parité # la in d’un $loc de données ,octet% caract6re% suite de $its%F-. *a G+C ,3ertical Redundanc0 )ec2 - consiste # calculer les $its de parité entre plusieurs $locs de données en vertical )1 $it de parité pour les $its qui sont # la m'me position dans les diérents $locs considérés. onne7 la G+C du mot !SI D en utilisant une parité paire pour calculer le *+C de c"aque caract6re. 1001111 1 1010011 0 1000011 1
G+C ↑ *+C
1011111 0 ←
@. Com$ien d’erreurs ce code peutil détecter ? Com$ien peutil en corriger ? 4l peut détecter 5usu6à * erreurs, s'il 0 en a uatre, on n'est pas sur de détecter car on retombe sur un code valide. 4l peut corriger 1 erreur "la position du bit est donnée par l6intersection de la ligne du bit incorrect dans le 3R avec la colonne du bit incorrect dans le R. orsu'il 0 a plus de ! erreurs l'ambigu7té emp8c)e la correction de l'erreur. 4l faut raisonner par l6eemple : modifier un bit, puis !, puis * puis 9 "par eemple considérer le carré supérieur gauc)e : 1& sur la premire ligne et 1& sur la seconde#. 4l est également possible de déterminer la distance de Hamming, c6est un mo0en simple et efficace. ;n constate ue sur un bit uelconue de données il 0 a trois bits de contr
Exercice 4 ) 1.
Comment s’eectue la sync"ronisation dans une procédure H*C , Hig) level $ata in2 ontrol - ? a s0nc)ronisation dans H$ est effectuée via le fanion d6ent8te : &111111&. e codage utilisé doit assurer asse= de transitions dans le fanion pour ue le récepteur puisse se s0nc)roniser.
2.
!n désire transmettre la suite de $its de données ) /111111//11/111/. Quelle est la suite de $its qui est réellement transmise au niveau p"ysique ? 6utilisation du fanion nécessite l6utilisation de bits de brouillage "ou de transparence# pour éviter de trouver une séuence de bits identiue au fanion dans les données. $ans H$, on introduit un bit à & à c)aue fois u6une séuence de > bits à 1 est rencontrée. ;n garantit ainsi l6absence d6une séuence de ? bits à 1 consécutifs et donc on évite l6apparition de fanions parmi les données. e récepteur effectue l6opération inverse : à c)aue fois u6il repre une suite de > bits à 1 il tente de supprimer le =éro ui suit. @i le =éro est absent, alors on est forcément en train de recevoir un fanion. a suite &111111&&11&111& devient à l6émission &11111 0 1&&11&111& "bit de transparence en gras#
. !n désire maintenant transmettre les $its ) /11/11/1//111/11/11111//. Suite # une erreur de transmission le récepteur re4oit la séquence ) /11/11/1//111111/11111//. Comment le récepteur interpr6te cette séquence de données ? *e récepteur re4oit la séquence ) /11/11/1/0111111011111// Il la découpe en ) trame1 'anion trame @ +econnaissance du anion au milieu des données ⇒ le récepteur pense recevoir deux trames. &. 3 quel niveau peuton détecter cette erreur ? Indique7 le type de reprise sur erreur qui sera entrepris en sac"ant que la taille minimale d’une trame est de & octets. ! cas possibles :
Université de La Rochelle
Master CCI
a. la trame 1 ou ! fait moins de 9 octets "taille minimale d6une trame# ou fait un nombre entier d6octets "nb de bits n6est pas multiple de A# ⇒ elle est ignorée "car impossible# et c6est le mécanisme de B4CE-;DB ui permettra de réémettre la trame "puisue le récepteur n6aura pas acuitté la trame ni positivement, ni négativement# b. la trame 1 ou ! fait plus ue 9 octets et un nombre entier d6octets ⇒ l6interprétation des différents c)amps de la trame, notamment celui du R, va montrer ue la trame est incompré)ensible, donc elle sera re5etée et le re5et est signalé soit par un acuittement négatif soit par une trame de re5et. a reprise se fera donc, soit par l6envoi d6un re5et, soit par acuittement négatif, soit par attente de réémission suite à l6epiration du temporisateur de l6émetteur.
Exercice ) Soit une liaison de données entre deux stations A et utilisant le protocole H*C ,c. Annexe-. *a suite ci dessous arrive # la station . S 8 /111111///////1///1/1//111/11111/1//11111////1/1/11//11111////1/1/ //111111//111111//111111///////1/1///1//1//1/111/11111/1/1/111111/ 1. Quelles sont les trames ? es trames sont délimitées par des fanions. orsu6une station émet une seule trame cette dernire est délimitée par deu fanions "un devant et un derrire#. orsu6une station envoie plusieurs trames d6affilée au m8me récepteur elle peut séparer ses trames avec un seul fanion "le fanion de fin d6une trame est également le fanion de début de la suivante# mais elle peut également envo0er plusieurs fanions afin d6occuper le canal et garder la parole "c6est le cas ici#.
S se décompose en @ trames ) trame 1 ) //////1///1/1//111/1111101//111110///1/1/11//111110///1/1// trame @ ) //////1/1///1//1//1/111/1111101/1
@. Quels sont les éléments $inaires apr6s traitement de la transparence $inaire ? transparence $inaire 8 raouter dans les données un $it # / apr6s une suite de < $its # 1. Apr6s traitement de la transparence $inaire on a ,les $its de transparence sont en gras cidessus- ) trame 1 ) //////1///1/1//111/111111//11111///1/1/11//11111///1/1// trame @ ) //////1/1///1//1//1/111/111111/1 . Quels sont les c"amps et leurs signiication ? &. +eprésente7 le diagramme correspondant # l’éc"ange. trame 1 des!ina!aire ) //////1/ co""ande ) //1/1//1
trame @
éc"anges
des!ina!aire ) //////1/ co""ande ) 1///1//1
1/ Jtrame S // Jtype ++ 1 J K 8 1 //1 J 5,r- 8 1
/ J trame I /1/ J 5,s-8 @ 1 J B 8 1 //1 J 5,r- 8 1 données ) *C ) //1/111/111111/1 données ) 11/111111//11111///1/1/1 *C ) 1//11111///1/1//
;n constate ue dans les deu cas l6adresse du destinataire et la m8me donc les ! trames vont dans le m8me sens et proviennent du m8me émetteur "ce ui confirme la remarue de la uestion 1#. @ouvent H$ est utilisé en point à point, l6adresse sert 5uste à identifier la partie ui parle.