Travaux Dirigés de Réseaux - DUT 1ère année

ENIT
Page 1 sur 60Lecteur de document UniversityLib

Travaux Dirigés de Réseaux - DUT 1ère année

ENIT · Computer Networks · lab

Voir tous les documents en réseaux

Travaux Dirig es de R eseaux - DUT 1ere ann ee

Copyright c

(cid:13)

Emmanuel Nataf & Jean Fran cois Mari

Les 7 couches du mod le OSI

tuyau logique,

sockets

Suite doctets, adr.

r seau

Suite de bits, adr. Phys.

Signaux, prises, cables,

bits

Simplification selon Unix

Les couches r seaux selon Unix

"

"

"

"

"

5

4

3

2

1

ex. TCP, UDP

ex. HTTP, FTP, DNS

Application couche 7

Transport

R seau Pour TCP/IP il s'agit de IP

Liaison ex. Ethernet, Token Ring, etc.

Physique ex. la boucle locale, lignes t l phoniques, radio

Couche physique

L'unit d'information typique de cette couche est le bit, repr sent par une certaine

"

"

"

diff rence de potentiel.

s'occupe de la transmission des bits de fa on brute sur un canal de

communication.

garantit la parfaite transmission des donn es (un bit 1 envoy doit bien tre

re u comme bit valant 1).

d crit les caract ristiques physiques de la communication :

/ Nature du m dia : les c bles, les liens par fibre optique ou par radio

/ Connecteurs,

/ Les types de codage ou de modulation,

/ Le niveau des signaux,

/ Les longueurs d'ondes,

/ La synchronisation

les distances maximales

"/ D crit les proc dures d' tablissement, de maintien et de lib ration du circuit de

donn es.

Topologie en bus

Connecteur 10Base2

Connecteur en T

Bouchon de terminaison

Connexion 10 Base5 (vampire et

vis)

me : 1 fil

Tresse : lautre fil

Connexion 10Base5

MDI (Medium Dependent Interface)

MAU (Medium Access Unit)

ou transceiver

Connecteur AUI (15 broches)

Attachement Unit Interface

Carte Ethernet

C ble AUI (50m maxi)

C ble de descente ou drop cable

Topologie en toile

Concentrateurs (hubs)

"/ Au centre de la topologie en toile

"/ R p te le signal toutes les machines

connect es

"/ Peut tre mis en cascade

"/ C ble CAT5 de longueur maximale de 100m

et minimale de 2,5m (entre 2 machines)

Connecteur RJ45

Connexion au hub

1

2

3

6

1

2

3

6

1

2

3

6

1

2

3

6

Cascade de hubs

1

2

3

6

1

2

3

6

1

2

3

6

1

2

3

6

1

2

3

6

1

2

3

6

C ble crois

1

2

3

6

1

2

3

6

Cascade de hubs

1

2

3

6

3

6

1

2

Port de cascade

1

2

3

6

1

2

3

6

1

2

3

6

1

2

3

6

C ble droit

1

2

3

6

1

2

3

6

Couche de liaison de donn es

"

"

"

"

"

"

transforme la couche physique en une liaison a priori exempte d'erreurs de

transmission pour la couche r seau.

fractionne les donn es d'entr e de l' metteur en trames, transmet ces trames en

s quence et g re les trames d'acquittement renvoy es par le r cepteur.

reconna t les fronti res des trames. Cela peut poser quelques probl mes,

puisque les s quences de bits utilis es pour cette reconnaissance peuvent

appara tre dans les donn es.

d tecte et la corrige les erreurs intervenues sur la couche physique.

int gre galement une fonction de contr le de flux pour viter l'engorgement

du r cepteur.

pour la couche physique, les donn es n'ont aucune signification particuli re.

L'unit d'information de la couche liaison de donn es est la trame qui est

compos es de quelques centaines quelques milliers de bits maximum.

La couche r seau

C'est la couche qui permet de g rer le sous-r seau, i.e. le routage des paquets sur

ce sous-r seau et l'interconnexion des diff rents sous-r seaux entre eux. Au

moment de sa conception, il faut bien d terminer le m canisme de routage et

de calcul des tables de routage (tables statiques ou dynamiques...).

La couche r seau contr le galement l'engorgement du sous-r seau. On peut

galement y int grer des fonctions de comptabilit pour la facturation au

volume, mais cela peut tre d licat.

L'unit d'information de la couche r seau est le paquet.

Couche transport

responsable du bon acheminement des messages complets au destinataire.

prendre les messages de la couche session, de les d couper s'il le faut en unit s

plus petites et de les passer la couche r seau, tout en s'assurant que les

morceaux arrivent correctement de l'autre c t .

effectue donc aussi le r assemblage du message la r ception des morceaux.

responsable de l'optimisation des ressources du r seau : la couche transport cr e

une connexion r seau par connexion de transport requise par la couche session,

cette couche est capable de cr er plusieurs connexions r seau par

processus de la couche session pour r partir les donn es, par exemple pour

am liorer le d bit.

A l'inverse, cette couche est capable d'utiliser une seule connexion

r seau pour transporter plusieurs messages la fois gr ce au multiplexage.

Dans tous les cas, tout ceci doit tre transparent pour la couche session.

L'unit d'information de la couche r seau est le message.

La couche application

"/ point de contact entre l'utilisateur et le

r seau. C'est donc elle qui va apporter

l'utilisateur les services de base offerts par

le r seau, comme par exemple :

/ Web

/ Mail

/ Nfs

/ &

Chapitre 1

Physique des transmissions

1.1 Echantillonnage

1. On consid`ere le signal temporel p eriodique de fr equence 3 et de phase nulle donn e par

l equation :

x(t) = sin(2 3t)

On le num erise avec un convertisseur analogique / num erique fonctionnant avec une

fr equence d echantillonnage fe. Donner, en fonction de fe, l equation de la suite des

valeurs obtenues.

(a) on prend fe = 8, donnez les 8 premiers termes de la suite.

(b) m eme question avec fe = 6

(c) On code les valeurs avec V niveaux di erents. Calculer le d ebit en bit/s du

convertisseur. Retrouver le th eor`eme de Nyquist dans le cas g en eral.

2. Une ligne t el ephonique a une bande passante qui va de 300 Hz `a 3400 Hz et le rapport

S/N varie de 100 `a 1000.

(a) calculer les capacit es minimale et maximale de la ligne

(b) En prenant le rapport `a 1000, quel est le nombre de bits cod es par une modula-

tion ? Calculer le d ebit pratique en bit/s.

3. La voix est comprise dans une bande passante de 4000 Hz, `a quelle fr equence minimale

doit on echantillonner ? sachant quun echantillon est cod e sur 8 bits, donner le d ebit

minimal n ecessaire.

4. Une sortie analogique de musique est echantillonn ee `a 44 kHz et le codage est de 16

bits par echantillon. Quel est le volume correspondant `a 1 minute de son en st er eo ?

quel est le rapport maximal signal / bruit du syst`eme ?

1

2

Chapitre 1. Physique des transmissions

5. Quelle est la capacit e maximale en bps dune ligne ayant une bande passante de 105Hz

et un rapport signal/bruit de 10 dB ? M eme question avec 20 dB ?

1.2 Att enuation et gain

1. D emontrer que calculer latt enuation entre deux extr emit es dun canal compos e de

plusieurs sections revient `a additionner les gains (ou soustraire les att enuations) en

dB de chaque section.

2. Un canal de transmission est constitu e de trois sections, la premi`ere introduit une

att enuation de 16 dB, la seconde une amplication de 20 dB et la derni`ere une att e-

nuation de 10 dB. Avec un signal a 400 mW, donner la puissance a chaque extr emit e

de section.

1.3 Bruits

1. Donner la valeur du rapport S

N `a partir des valeurs suivantes :

(a) 3 dB

(b) 10 dB

(c) 12 dB

(d) 100 dB

1.4 D elais

Rappels

vitesse de propagation dun signal electrique dans lespace = 3

108m/s

vitesse de propagation dans un c able electrique = 2

108m/s

1. On emet une trame de 1000 bits. D eterminer les rapports des d elais de propagation

sur les d elais de transmission dans les cas suivants :

(a) 100 m de paires torsad ees `a 1 Mbps.

(b) 2,5 km de c able coaxial `a 10 Mbps.

(c) 50000 km despace `a 512 kbps.

Pour quelles valeurs du rapport passe-t-on plus de temps dans la propagation que

dans la transmission ? (la vitesse de propagation du signal est de 2.108ms1 pour les

c ables et de 3.108ms1 dans lespace)

1.4. D elais

3

2. Pour chaque cas pr ec edent, calculer combien de bits peuvent etre pr esents en m eme

temps sur le support.

3. Le Round Trip Time (RTT) est le temps dun aller-retour entre deux machines. Quel

est le RTT pour un canal de communication passant par un satellite g eostationnaire

(36000 km et vitesse de la lumi`ere).

4. Un r eseau est compos e de deux machines reli ees entre elles par linterm ediaire dun

equipement (et des c ables entre les machines et l equipement). Lorsquune machine

emet des donn ees vers lautre, elle envoie des paquets dune taille xe (les donn ees sont

d ecoup ees en plusieurs paquets et une partie du dernier paquet est remplie de 0).

Un paquet doit etre enti`erement re cu par l equipement interm ediaire avant d etre emis

`a nouveau vers lautre machine. L equipement peut emettre et recevoir simultan ement

deux paquets di erents. On veut transmettre un chier de 10 Mo (10 millions doctets),

`a une vitesse de transmission de 100 Mb/s (1 M ega signie 106). Combien de temps

dure le transfert si les paquets sont de 10 000 000, 100 000, 1000 et 100 octets (on

n eglige les temps de propagation) ?

5. Un chier de 3,5 Mo est transmis `a 45 kbps vers un destinataire via un satellite

g eosta-tionnaire (voir gure 1.1). Ce dernier a une m emoire de r eception (buer) de

3000 octets, lorsquil a re cu un buer complet, ou quil d etecte la n de chier, il

se vide dans un second buer (d emission) si celui-ci est vide. Ce dernier retransmet

les donn ees vers le destinataire (toujours `a 45 kbps) en m eme temps que le buer de

r eception re coit les donn ees suivantes de l emetteur. Le temps de transfert entre les

deux buers est n egligeable.

buffer

r ception

buffer

Publicité

mission

Emetteur

R cepteur

Figure 1.1 Transmission par satellite

(a) Au bout de combien de temps le destinataire recevra-t-il le d ebut du chier

(b) Combien de fois les buers de r eception et d emission seront chacun remplis ?

(c) Quelle sera le volume (en bits) du dernier buer ?

(d) Au bout de combien de temps le destinataire recevra-t-il la n du chier ?

4

Chapitre 1. Physique des transmissions

(e) Que deviendrait ce temps si les buers sont de 3,5 Mo ?

6. Une chaine de t el evision retransmet un match de tennis depuis les USA jusquen

France. A cause dune panne sur un satellite, limage et le son empruntent des chemins

di erents : limage est transmise via un satellite en orbite g eostationnaire (hauteur 36

000 Km) alors que le son emprunte un c able sous-marin (distance 7000 Km). Quel est

le d ecalage temporel entre une action telle que le spectateur fran cais devant son ecran

de tv la voit (par exemple la frappe de la balle par la raquette) et le son occasionn e

tel que le m eme spectateur lentend.

Chapitre 2

Les types de transmissions

2.1 La transmission par modulation dune onde porteuse

2.1.1 Modulation dune onde porteuse

La modulation dune onde porteuse consiste `a modier : son amplitude, sa fr equence

et sa phase. Le triplet (amplitude, fr equence, phase) identie un etat de la modulation. Le

nombre de changement d etats par seconde sappelle la vitesse de modulation et se mesure

en bauds.

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0

sin(2pix)

0.5

1

1.5

2

2

2

1.5

1.5

1

1

0.5

0.5

0

0

-0.5

-0.5

-1

-1

-1.5

-1.5

-2

-2

0

0

2sin(2pi*x)

sin(2pix)

2sin(2pi*x)

0.5

0.5

1

1

1.5

1.5

2

2

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0

sin(2pix)

sin(22pi*x)

0.5

1

1.5

2

onde porteuse

modulation damplitude

modulation de fr equence

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0

sin(2pix)

sin(2pix + pi / 2)

0.5

1

1.5

2

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0

sin(2pix)

sin(2pix - pi / 2)

0.5

1

1.5

2

2

1.5

1

0.5

0

-0.5

-1

-1.5

-2

0

sin(2pix)

sin(2pix - pi)

0.5

1

1.5

2

modulation de phase +90

modulation de phase -90

modulation de phase de 180

Le couple (amplitude, phase) se repr esente par un point en coordonn ees polaires dans

un diagramme appel e : diagramme de Fresnel (cf. Fig. 2.1).

5

6

Exemple

Chapitre 2. Les types de transmissions

On consid`ere une modulation de phase poss edant 4 phases distinctes : 0, 90, 180, 270. Le

diagramme de Fresnel qui lui correspond est donn e Fig. 2.1. Dapr`es le diagramme spatial,

la courbe repr esentant la s erie binaire : 10011111 est donn ee Fig. 2.2.

phase

0

90

180

270

info.

00

01

11

10

Figure 2.1 Modulation `a laide de 4 phases distinctes

Une phase code 2 bits. On divise la s equence de 8 bits `a envoyer en 4 s equences de 2

bits : 10 01 11 11. Au temps 0, le d ephasage se fait `a partir de la porteuse (en pointill es).

Aux autres temps, il est trouv e en applicant la phase correspondant `a la s equence suivante

de 2 bits. Les s equences : 10 01 11 11 sont associ ees aux phases : sin(x

/2), sin(x +

/2), sin(x + ), sin(x + ).

1

0.5

0

-0.5

-1

0

signal modul e

sin(x)

5

10

15

20

25

Figure 2.2 S equence de bits 10011111 modulant sin(x) dapr`es le diagramme de Fres-

nel donn e Fig.2.1. Une modulation code 2 bits. La s equence de 8 bits est envoy ee en 4

modulations

2.1. La transmission par modulation dune onde porteuse

7

2.1.2 Exercices

Les Modems V27

Publicité

La norme V27 d enit un modem fournissant un d ebit binaire de 4800 bps. Ce modem

utilise une modulation de phase `a 8 positions distinctes.

1. Quelle est la rapidit e de modulation de ce modem ?

2. Donner le diagramme spatial sachant que les phases sont r eparties r eguli`erement.

3. Pour chacune des modulations du diagramme, donner une valeur de sorte quil ny ait

quun bit de di erent entre deux modulations voisines.

Transmission de FAX

Lavis V29 d enit la constellation suivante pour un modem destin e `a une transmission

de 9600 bps :

6

5

4

3

2

1

32

2

-6 -5 -4 -3 -2 -1

0

1

2

32

-1

-2

-3

-4

-5

-6

32

2

2

2

3

4

5

6

32

1. Quel est le nombre de bits pour chaque modulation et rapidit e de modulation ?

2. commbien y a t-il de phases di erentes ? combien damplitudes di erentes ?

3. pour quelle(s) raison(s) nutilise t-on pas lensemble des 32 congurations ?

4. le premier bit sert `a coder lamplitude. Les 3 suivants, la phase. Proposer un code

pour chacun de ces groupes de sorte quil ny ait quun bit de di erent entre deux

modulations voisines.

8

Chapitre 2. Les types de transmissions

2.2 La transmission en bande de base

2.2.1 Codage NRZ

2.2.2 Codage de Manchester

Le codage Manchester utilis e dans une transmission consiste `a ajouter une transition au

1/2 temps bit ; si la valeur du bit est 0 alors la transition est du bas vers le haut et linverse

pour une valeur `a 1. Utilis e pour coder les trames ethernet. La s equence 010101 permet de

construire un signal de fr equence moiti e de la fr equence darriv ee des bits. Elle est utilis ee

pour synchroniser lhorloge du r ecepteur.

Figure 2.3 Codage de Manchester (source wikipedia)

2.2.3 Codage de Manchester di erentiel

Le codage Manchester di erentiel utilise toujours la transition au 1/2 temps bit mais on

rajoute une transition au d ebut du temps bit si le bit est `a 0, la signication de la transition

au 1/2 temps bit peut etre linverse que pour le codage Manchester.

1. Dessiner le signal pour la m eme valeur que lexercice p ec edent.

2. D ecoder les signaux ci-dessous.

Chapitre 3

Liaison de donn ees

3.1 R eseau Ethernet (protocole CSMA/CD)

1. Soit un r eseau local Ethernet en bus de longueur D km. La vitesse de propagation

du signal sur le support est de V km/s. La capacit e de transfert du support est de C

bit/s.

(a) Donnez la formule pour L, longueur minimale dune trame, pour que le protocole

CSMA/CD fonctionne.

(b) Donnez la valeur de L pour C = 10 Mbps, D = 2,5 km et V =100 000 km.s1.

Modier le r esultat obtenu de sorte `a ce quil soit exprim e en mots de 16 bits.

2. Pour les r eseaux `a 100 Mbps fonctionnant sous le m eme principe que CSMA/CD,

quelle est la distance maximale entre deux stations ? En d eduire la distance maximale

entre une machine et le hub.

3.2 Conguration des commutateurs et ponts

1. Dans le r eseau sch ematis e ci-dessous, on consid`ere que les tables de routage des

switches, faisant la correspondance entre les adresses mat erielles (A `a F) et les ports

(1 & 2) pour chaque switches sont vides. Donner la composition de ces tables `a chacun

des ev enements suivants, donn es dans lordre chronologique et indiquer quand ont lieu

les commutations :

9

10

Chapitre 3. Liaison de donn ees

(a) A

(b) B

(c) C

(d) F

(e) E

(f) D

B,

A

F,

A,

B,

A.

(g) Que se passe-t-il

pour

quel

ensuite

nimporte

echange ?

A

3.3 D ebits

B

E

1

S1

2

D

C

1

S2

2

F

1. Le r eseau local ci-dessous est constitu e de deux hubs `a 10 Mbits/s reliant 24 postes

de travail et 3 serveurs.

Serveur A

Serveur B

Serveur C

Hub 1

Hub 2

poste de travail 1

poste de travail 12

poste de travail 1

poste de travail 12

(a) Lorsquun utilisateur se sert dun poste de travail, il emet en moyenne 3 kbps vers

le serveur C et 1 kbps vers chaque serveur A et B. Ces deux derniers emettent

en moyenne 2 kbps chacun vers un utilisateur et le serveur C emet 5 kbps.

i. Quel d ebit binaire est n ecessaire pour un utilisateur ?

ii. Calculer les d ebits que devrait supporter chaque serveur lors dune utilisation

de tous les postes de travail.

iii. Quel est le d ebit entre les deux hubs ?

iv. Soit n le nombre dutilisateurs connect es, donner la formule permettant de

calculer le d ebit utilis e en fonction de n.

v. Calculer le nombre maximum de postes de travail qui puissent etre install es

sur ce r eseau.

(b) Un utilisateur peut avoir des pics de trac o`u les serveurs A et B lui envoient 0,5

Mbps et le serveur C 1 Mbps. Refaire les calculs pr ec edents.

3.4. Topologie

11

(c) Dans le cas dun pic de trac pour les 24 utilisateurs, calculer le temps moyen

dattente pour un utilisateur. On supposera que tous les utilisateurs sont trait es

de mani`ere equivalente en prenant la seconde comme unit e de temps.

(d) On remplace les hubs par des switches (switch1 et switch2), calculer le d ebit

entre ces deux switches suivant le nombre dutilisateurs connect es et leur r epartition

sur le r eseau.

3.4 Topologie

(a) Faire les sch emas logiques et physiques des topologies de r eseaux locaux suivantes

et etablir des devis pour le mat eriel r eseau.

i. Un bureau contenant deux postes xes et pouvant recevoir deux PC por-

tables. Le r eseau devra etre en Ethernet 100BaseT, le bureau fait 5m sur

3m.

ii. Un couloir contenant 20 bureaux du type pr ec edent (10 de chaque cot e, 2m

de couloir, utilisation de faux plafond), toujours en Ethernet 100BaseT ;

iii. trois etages compos es chacun dun couloir du type pr ec edent (hauteur de

3m), avec le r eseau en 100BaseT.

iv. Dans chaque etage, trois bureaux sont r eserv es aux services administratifs,

sept pour les d eveloppements et dix pour la production. Proposer lutilisation

dun switch et de hubs permettant de regrouper les di erents services dans

trois r eseaux logiquement s epar es, nemp echant pas les di erents services de

communiquer. Cela remet en cause les c ablages pr ec edents, ne pas refaire les

calculs de longueurs de c ables.

Chapitre 4

Protocole Kermit

4.1 Format de la trame Kermit

Les trames du protocole Kermit ont la structure g en erale suivante :

D but

Long.

Num.

Type

Donn es

Ctrl

Fin

Chaque champ, sauf pour les donn ees, a une longueur de 1 octet. Les valeurs pour le d ebut

et la n sont 01 et 0D. La longeur (champ Long.) donne le nombre doctets `a partir du

champ Num jusquau champ de contr ole (Ctrl.) inclus, la longueur dune trame ne peut

d epasser 94 octets. Le champ Num indique le num ero de la trame, qui evolue cycliquement

de 0 `a 63. Le type (champ Type) est une lettre signiant quel est le type de la trame (S

pour linitialisation, D pour les donn ees `a transmettre, Y pour conrmer la r eception

de donn ees, etc). Le champ de contr ole (Ctrl) est obtenu avec la formule :

((S + ((S AND C0)/40)) AND 3F ) + 20

o`u S est la somme des valeurs des octets compris entre le champ Long. inclus et Ctrl exclu.

4.2 Codage des donn ees

Une caract eristique importante est que tous les octets doivent etre achables et sont

sur 7 bits (code ASCII NVT Network Virtual Terminal), cest `a dire que leur valeur binaire

doit etre entre 32 et 126 (en d ecimal). Deux problemes sont a consid erer :

Les champs Long, Num et Ctrl peuvent avoir des valeurs hors de ces limites,

Les donn ees peuvent contenir toutes sortes de valeur sur 8 bits.

12

4.2. Codage des donn ees

13

Pour rem edier `a cela, on doit ajouter 32 aux entiers compris entre 0 et 94 dans les champs

Long, Num et Ctrl, ce qui les transposent dans lintervalle autoris e [32,126]. Lorsquun octet

de donn ee nest pas entre 32 et 126, on traite de la mani`ere suivante :

0 a 31 et 127 : on applique un ou exclusif bit a bit (XOR) avec 64 = 26 et on fait

pr ec eder du caract`ere #. Cest la m eme fonction tochar() qui sert pour le codage

et pour le d ecodage (unchar()) :

tochar(01) = A ;

01

A

unchar(A) = 01 ;

0D

M

tochar(0D) = M ;

unchar(M) = 0D ;

127 a 255 : on enleve 128 et on fait pr ec eder du caract`ere &

Kermit ore la possiblit e de coder la r ep etition de caracteres en utilisant le caractere ,

suivit du nombre de fois (cod e avec la regle pr ec edente) quest r ep et e le caractere, puis le

caractere a r ep eter.

Voici un exemple de trace hexad ecimale dune partie dun echange utilisant Kermit entre

deux machines E et R ; E envoyant un chier `a R.

E : 0 2 2 4 6 6 6 6 2 6 7 7 2 7 6 3 0

1 E 2 4 3 5 3 9 0 5 3 4 0 5 E 9 D

R :

E : 0 2 2 4 2 4 5 4 5 4 4 4 4 2 4 2 2 0

1 F 3 4 0 5 8 5 2 3 9 3 5 3 D 3 A D

R :

E : 0 2 2 4 4 7 2 4 2 4 2 4 2 5 4 0

1 D 4 4 A E F 1 3 D 3 A 3 A 7 D

R :

0 2 2 5 4 0

1 3 2 9 0 D

0 2 2 5 4 0

1 3 3 9 1 D

0 2 2 5 4 0

1 3 4 9 2 D

Exercice : D ecoder les champs de num eros et de type, reconstituer les echanges (utiliser

la table ASCII donn ee).

Exercice : V erier le champ de contr ole des trames emises par E.

Exercice : D ecoder les donn ees emises par la machine E.

14

Chapitre 4. Protocole Kermit

CAR BINAIRE DEC HEX

NUL

SOH

STX

ETX

EOT

ENQ

ACK

BEL

BS

HT

LF

VT

FF

CR

SO

SI

DLE

DC1

DC2

DC3

DC4

NAK

SYN

ETB

CAN

EM

SUB

ESC

FS

GS

RS

US

SP

!

#

$

%

&

(

)

00000000

00000001

00000010

00000011

00000100

00000101

00000110

00000111

00001000

00001001

00001010

00001011

00001100

00001101

00001110

00001111

00010000

00010001

00010010

00010011

Publicité

00010100

00010101

00010110

00010111

00011000

00011001

00011010

00011011

00011100

00011101

00011110

00011111

00100000

00100001

00100010

00100011

00100100

00100101

00100110

00100111

00101000

00101001

00101010

00101011

00101100

00101101

00101110

00101111

00110000

00110001

00110010

00110011

00110100

00110101

00110110

00110111

00111000

00111001

00111010

00111011

00111100

00111101

00111110

00111111

000

001

002

003

004

005

006

007

008

009

010

011

012

013

014

015

016

017

018

019

020

021

022

023

024

025

026

027

028

029

030

031

032

033

034

035

036

037

038

039

040

041

042

043

044

045

046

047

048

049

050

051

052

053

054

055

056

057

058

059

060

061

062

063

00

01

02

03

04

05

06

07

08

09

0A

0B

0C

0D

0E

0F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

1F

20

21

22

23

24

25

26

27

28

29

2A

2B

2C

2D

2E

2F

30

31

32

33

34

35

36

37

38

39

3A

3B

3C

3D

3E

3F

+

,

-

.

/

0

1

2

3

4

5

6

7

8

9

:

;

<

=

>

?

CAR BINAIRE DEC HEX

@

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

[

\

]

^

_

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

p

q

r

s

t

u

v

w

x

y

z

{

}

DEL

01000000

01000001

01000010

01000011

01000100

01000101

01000110

01000111

01001000

01001001

01001010

01001011

01001100

01001101

01001110

01001111

01010000

01010001

01010010

01010011

01010100

01010101

01010110

01010111

01011000

01011001

01011010

01011011

01011100

01011101

01011110

01011111

01100000

01100001

01100010

01100011

01100100

01100101

01100110

01100111

01101000

01101001

01101010

01101011

01101100

01101101

Publicité

01101110

01101111

01110000

01110001

01110010

01110011

01110100

01110101

01110110

01110111

01111000

01111001

01111010

01111011

01111100

01111101

01111110

01111111

064

065

066

067

068

069

070

071

072

073

074

075

076

077

078

079

080

081

082

083

084

085

086

087

088

089

090

091

092

093

094

095

096

097

098

099

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

40

41

42

43

44

45

46

47

48

49

4A

4B

4C

4D

4E

4F

50

51

52

53

54

55

56

57

58

59

5A

5B

5C

5D

5E

5F

60

61

62

63

64

65

66

67

68

69

6A

6B

6C

6D

6E

6F

70

71

72

73

74

75

76

77

78

79

7A

7B

7C

7D

7E

7F

Chapitre 5

TP analyseur de trames Kermit

5.1 Objectif

Il sagit danalyser une trame Kermit repr esent ee par un chier texte contenant un octet

par ligne comme montr ee dans la partie gauche de la table 5.1. La partie droite de la gure

donne le r esultat de lanalyse pour cette trame. Le programme donne pour chaque octet de

la trame en entr ee ou groupe doctets quand il sagit dune s equence d echappement sa

valeur telle quelle a et e encod ee par Kermit. Les caract`eres non imprimables sont remplac es

par le caract`ere . (cf. tables 5.1 et 5.2).

01

2E

22

44

63

65

63

69

20

65

73

74

20

75

6E

39

0D

<--> 20 ==

Trame no 2 type D

00 : 63 == c <--> 63 == c

01 : 65 == e <--> 65 == e

02 : 63 == c <--> 63 == c

03 : 69 == i <--> 69 == i

04 : 20 ==

05 : 65 == e <--> 65 == e

06 : 73 == s <--> 73 == s

07 : 74 == t <--> 74 == t

08 : 20 ==

09 : 75 == u <--> 75 == u

10 : 6E == n <--> 6E == n

CRC OK

<--> 20 ==

Table 5.1 Description des donn ees (gauche) et r esultats (droite)

15

16

Chapitre 5. TP analyseur de trames Kermit

5.2 Encodage des octets par Kermit

Avant de transf erer une trame doctets, Kermit transforme chaque octet en une suite de

plusieurs caract`eres imprimables. Ceux ci ont un code ASCII compris entre 32 et 126 (en

notation d ecimale) compris. Le principe est le suivant :

si loctet est le code ASCII dun caract`ere imprimable, il est inchang e.

si loctet nest pas imprimable, il est pr ex e par # ou & et transform e en une suite de

un ou plusieurs caract`eres imprimables.

si loctet est un caract`ere de pr exe (#, &, ~), il est pr ex e par # et devient respecti-

vement ##, #&, #~.

si loctet est r ep et e, on compresse la r ep etition en introduisant le facteur de r ep etition

devant loctet qui sera eventuellement pr ex e par # ou &.

5.3 D ecodage des octets par Kermit

la s equence ## code #

la s equence #~ code ~

la s equence #& code &

la s equence #c code le caract`ere dont le code est obtenu par un ou exclusif de c

avec 64.

la s equence &c code loctet dont le code est 128 plus le code de c. Attention, c peut

etre pr ex e par #.

la s equence ~fd repr esente une r ep etition de loctet d par le facteur de r ep etition f.

Attention, d peut etre pr ex e par & et #. Le facteur de r ep etition est un entier cod e

par la fonction Kermit tochar().

5.4 Exemples

A reste A

#A devient 1

#B devient 2

#Z devient 26 (en d ecimale)

## devient #

&#A devient 129 (en d ecimale)

La table 5.2 donne dautres exemples (`a consommer avec mod eration !)

5.5. Simplications

17

== #

== ~

== &

Trame no 1 type D

00 : 23 23 == ## <--> 23

02 : 23 7E == #~ <--> 7E

04 : 23 26 == #& <--> 26

06 : 41 == A <--> 41 == A

07 : 23 42 == #B <--> 2 == .

09 : 26 41 == &A <--> C1

11 : 23 3F == #? <--> 7F

13 : 26 23 41 == &#A <--> 81 == .

16 : 7E 22 26 23 43 == ~"&#C <--> 83 83 == ..

21 : 42 == B <--> 42 == B

22 : 7E 23 42 == ~#B <--> 42 42 42 == BBB

25 : 7E 24 23 42 == ~$#B <--> 2 2 2 2 == ....

CRC OK

== .

== .

Table 5.2 Les di erentes possibilit es dutilisation de pr exes

5.5 Simplications

On suppose que les s equences d echappement sont enti erement comprises dans une

trame. Elles ne chevauchent donc pas 2 trames.

On nanalyse quune seule trame qui sera de type donn ees (D) ou acquittemnt (Y ou

N)

Le pseudo-CRC tient sur un octet, il sera v eri e. Dans le cas o`u celui est faux, la

valeur correcte sera ach ee par un message :

Bad CRC, found 8 (0x38) , expected 9 (0x39)

5.6 Questions

Le tableau 5.3 donne le squelette du programme `a compl eter qui constituera les ana-

lyseurs de trames de dicult e croissante. Compl eter le programme principal et ecrire la

fonction decodeChar telle quelle est donn ee dans le squelette du programme en respectant

son prol. Dans les versions 1 `a 3, le CRC nest pas calcul e ni v eri e. Pour chaque ques-

tion, donnez les trames qui permettent de tester de la fa con la plus compl`ete possible. Les

r esultats de lanalyseur respecteront le format des exemples.

18

Chapitre 5. TP analyseur de trames Kermit

;

;

:

:

}

{

}

l e

l e

l e

. . .

l e s

i o c )

t r a m e s

e t met

{

. . .

c a r a c t .

s u i v a n t

r e s u l t a t

l e s 15 A

i n t i o c )

r e A o i t

b i n i n t e r

c o m p l e t e r

( 0 s i o k )

i n t pos ,

l a q u e s t i o n

r e s u l t a t du

i n t t a i l l e ,

i n t p l b i n )

l e d e b u t d une

i n t b i n i n t e r [ ] ,

i n c r e m e n t e d e un .

; / c u r r e n t c h a r /

t a i l l e d e b i n i n t e r [ ]

s e q u e n c e s d e c h a p p e m e n t

e s t un c a r a c t d e p r e f i x e

b i n a i r e = c e q u e k e r m i t a

} / s w i t c h c u r r e n t c h a r /

l e nombre d e r r e u r s d e t e c t e e s

i n t d ecod eCh...