Académique Documents
Professionnel Documents
Culture Documents
Remerciements Bibliographie
! Certains transparents sont basés sur des ! « Réseaux », 4ième édition, Andrew Tanenbaum, Pearson
Education, ISBN 2-7440-7001-7
supports de cours de :
! « Réseaux et Télécoms », Claude Servin, Dunod, ISBN
! Danièle DROMARD (PARIS 6)
2-10-007986-7
! Andrzej DUDA (INP Grenoble/ENSIMAG)
! « Analyse structurée des réseaux », 2ième édition, J. Kurose
! Shivkumar KALYANARAMAN (RPI/ECSE) et K. Ross, Pearson Education, ISBN 2-7440-7000-9
! Alain MILLE (LYON 1) ! « TCP/IP Illustrated Volume 1, The Protocols », W. R.
! CongDuc PHAM (LYON 1) Stevens, Addison Wesley, ISBN 0-201-63346-9
! Michel RIVEILL (Université de Nice/ESSI) ! « TCP/IP, Architecture, protocoles, applications », 4ième
! l’Institut National des Télécommunications (INT) édition, D. Comer, Dunod, ISBN 2-10-008181-0
! Des figures sont issues des livres cités en ! « An Engineering Approach to Computer Networking »,
Addison-Wesley, ISBN 0-201-63442-6
bibliographie
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 3 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 4
1
Rappel : un protocole Rappel : rôle de la liaison de données
! Sans duplication
! syntaxe et sémantique des messages…
! Maintien des trames en séquence (dans l’ordre !)
! En particulier :
! Service fourni au réseau
! délimitation des blocs de données échangés
! Etablir, maintenir et libérer les connexions de liaison de
! contrôle de l'intégrité des données reçues données entre entités de réseau
! organisation et contrôle de l'échange
! Service bi-point et multipoint
! éventuellement, contrôle de la liaison
! En multipoint : la LD gère l’accès au support (CSMA/CD)
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 7 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 8
Notion de fanion
de fin de début
sens de la transmission
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 11 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 12
2
Notion de transparence Notion de transparence
Caractère
! Caractère d'échappement : le caractère suivant d'échappement
introduit à l'émission
n'est pas interprété ESC
sens de la transmission
! Fonctionnement
Fanion Données Fanion ESC Données Fanion
! Côté émission : insertion du caractère d'échappement
de fin de données de début
devant le caractère à protéger
ESC
! Côté réception : l'automate examine chaque caractère Caractère
d'échappement
pour découvrir le fanion de fin ; s'il rencontre le extrait à la réception
caractère d'échappement, il l'élimine et n'interprète
pas le caractère suivant -> il le délivre au système ! Et si on veut transmettre le caractère
d'échappement en tant que données ?
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 13 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 14
! Côté émission : si 5 bits consécutifs sont à "1", Fanion 0001110111111 00011111111 11111 000001110 Fanion
! s'il est à "0", le "0" est enlevé de la séquence (il a été sens de la transmission
introduit à l'émission)
! Permet la resynchronisation des horloges en
interdisant les longues séquences de bits à 1
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 17 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 18
3
Le contrôle d'intégrité
! Réseaux locaux : Teb=10 -9 ! Plus la longueur d'un bloc est grand, plus la
! Les erreurs se produisent généralement par rafale probabilité de réception correcte est faible !
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 21 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 22
! But : vérifier la validité des données reçues chez ! Le récepteur renvoie chaque message reçu (écho)
le destinataire ! L'émetteur compare l'écho au message initial et le
! Idée : ajouter une certaine redondance dans renvoie si les deux messages sont différents
l'information transmise Emetteur
Message
Récepteur
! 4 techniques
! la détection par écho Message Echo
=
! la détection par répétition Echo ?
! la détection d'erreur par clé calculée ! Utilisée par terminaux asynchrones (telnet, minitel, …)
! la détection et correction d'erreur par code ! Problèmes
! redondance totale
! l'écho peut lui-même être erroné
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 23 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 24
4
La détection par répétition La détection d'erreur par clé calculée
! Chaque message émis est suivi de sa propre réplique
! Si les deux messages sont différents, le récepteur ! L'émetteur ajoute au message une information
demande une retransmission supplémentaire (clé) calculée à partir du message
Emetteur Récepteur
Message d'origine
Réplique
Message ! Le récepteur recalcule la clé selon la même
=
Réplique ? méthode à partir des informations reçues et
Demande de retra
nsmission
compare à la clé reçue
! Utilisée dans les milieux sécurisés très perturbés ! Le récepteur ignore les données si les clés sont
(applications temps réel)
! Problèmes différentes et peut demander la retransmission
! redondance totale (reprise sur erreur)
! la réplique peut être erronée
! contrôle sur le récepteur
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 25 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 26
EMETTEUR RECEPTEUR
EMETTEUR RECEPTEUR
! La clé est parfois appelée ! Exemple : S en ASCII est représenté par 1010011 ->
! CRC : Cyclic Redundancy Check bit de parité = 0
! FCS : Frame Check Sequence ! Simple mais Redondance faible
Ne permet de détecter que les erreurs portant sur un
La clé peut elle-même être corrompue
!
!
nombre impair de bits
! Utilisé pour la transmission des caractères ASCII
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 27 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 28
EMETTEUR RECEPTEUR
Wait ACK
Send M1
Wait
5
Les mécanismes de base Les mécanismes de base
! La reprise sur temporisation
! Perte de l'ACK
EMETTEUR RECEPTEUR
EMETTEUR RECEPTEUR
Send M1
Wait
M1
Send
M1 est délivré au système
Time out Send M1 Wait ACK
M0
M0 M0
M0 Ns=1
Ns=1 Nr=1
Nr=1
Time out M0 ACK
ACK
Ns=1 Ns=0
M0 M0 est acquitté ! M0
Time out Ns=0 Nr=1
M0 M1
Ns=1 Nr=1
Ns=2 ACK
Le récepteur s'attend à
ACK recevoir M1 M1 est acquitté ! Nr=1
Il rejette M0 et l'acquitte
M2
M2 Ns>Nr
Ns=3
Le deuxième M0 reçu est rejeté M1 n'a jamais été reçu et pourtant il est acquitté
-> il faudrait numéroter aussi les acquittements !
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 35 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 36
6
Les mécanismes de base Les mécanismes de base
! Attend t-on pour envoyer Mi+1 que Mi soit acquitté ?
Mode Send&Wait :
Principe du piggybacking
!
!
! on attend (pas adapté pour RTT grand)
! il est quand même nécessaire de numéroter les acquittements ! Quand une trame arrive de A, l'acquittement est
! Si on n'attend pas, il faut pouvoir
envoyé par B dans la trame suivante à destination de
! stocker les messages non acquittés sur l'émetteur
Données utiles
Données transmises
E R
! RTT - Round Trip Time
t0 ! Ta - temps d'attente entre la
U bits utiles transmission du premier bit de Mi et
Ta G bits de gestion
le premier bit de Mi+1
RTT
K bits d'ACK
! Efficacité du protocole sans erreur :
E0 = U/N
t1
N=nb de bit total transmis (ou qui auraient Faire Du = Ehttp.Etcp.Eip.Eeth Dnominal avec la taille
pu être transmis) des en-têtes et la taille max des paquets-trames
N=U+G+K+D*RTT (D = débit nominal)
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 39 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 40
! Cas d'une transmission avec erreur ! Dans le mode Send & Wait, les performances
! p = (1-Teb) n probabilité pour qu'un bloc de n bits sont dégradées du fait de l'attente de l'ACK
soit correctement transmis avant d'envoyer un nouveau message.
! ici, n = U+G+K ! Protocole à anticipation
! L'efficacité du protocole avec erreur est alors : ! l'émetteur peut faire plusieurs émissions successives
E = E0*p sans attendre l'ACK des messages précédents
! -> il faut numéroter les acquittements
E= U*(1-Teb ) U+G+K/(U+G+K+D*RTT)
! -> il faut mémoriser TOUS les messages non acquittés
! Débit réel = débit vu par l'application sur l'émetteur dans des "buffers"
! -> quand un ACK arrive, l'émetteur peut libérer le
Débit réel = Débit nominal (D) * E
buffer correspondant au(x) message(s) acquitté(s)
! -> s'il n'y a plus de buffer libre, l'émetteur doit
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 41
attendre l'arrivée
Olivier Glück
d'un ACK pour continuer d'émettre
Licence Informatique UCBL - Module LIFASR6 : Réseaux 42
7
Les protocoles à anticipation
buffer 1 Les protocoles à anticipation
buffer 2
buffer 3
buffer 4
! Principe ! Fenêtre d'anticipation
E R (notée W) E R
M0 M1
M0 ! Taille optimale de la Tb U bits utiles
M3
n'attend jamais un ACK)
t1
M4 M1 M2 M3 ACK M1
! W optimale = E[Ta/Tb]+1
M4
M4 M5 M2 M3 ! dépend de RTT et de la
M5 taille de trame maximale
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 43 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 44
buffer 2
buffer 3
buffer 1
buffer 2
buffer 3
!
buffer qui contient le message Mi-1
E R E R
! exemple avec Ns et Nr stockés sur 3 bits chacun et
W=3 (taille de la fenêtre)
Ns=0 Nr=0 Ns=0 Nr=0
M0 M0
M0 M0
Ns=1 Ns=1
! Gestion sautante de la fenêtre M0 M1
Ns=2
M1
Nr=1
ACK
M0 M1
Ns=2
M1
Nr=1
ACK Nr=1
l'acquittement est différé et concerne plusieurs
M0 M1 M2 Nr=2 M0 M1 M2 Nr=2
! M2 ACK M2
Ns=3 Ns=3
messages M3 M1 M2 ACK Nr=2
Nr=3 Nr=3
L'émetteur est bloqué
M3 ACK ACK
Ns=4
si W=3, M0, M1 et M2 sont acquittés en une seule fois M3 M4 M2 ACK Nr=3 ACK Nr=3
! Ns=3
Ns=5 M4 ACK M3
ACK Nr=4
les émissions s'arrêtent quand les crédits d'émission
M3 M4 M5 M3
! M5 M3 M4
sont épuisés M3 M4 M5
M4
mais moins efficace si l’acquittement est perdu car Gestion glissante de la fenêtre Gestion sautante de la fenêtre
l’émetteur est alors bloqué pendant au moins 1 RTT
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 45 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 46
Les politiques de reprise sur erreur Les politiques de reprise sur erreur
buffer 1
buffer 2
buffer 3
buffer 1
buffer 2
buffer 3
buffer 1
buffer 2
buffer 3
E R E R
Nr=4 Reséquencement M2 M3 M4
M4
ACK M3 M3 délivré M2, M3, M4 délivrés
8
Les politiques de reprise sur erreur Récapitulatif sur les fenêtres
! le nombre de crédits est fixé une fois pour toute ; ! contrôle de flux de bout en bout
quand l'émetteur a épuisé ses crédits, il attend ! entre deux terminaux distants
contient le nouveau nombre de crédits disponibles plein et le moment où l’émetteur reçoit le message lui
indiquant qu’il n’est plus autorisé à émettre (plus de
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 53 crédit), beaucoup
Olivier Glück de messages
Licence Informatique sont: Réseaux
UCBL - Module LIFASR6 perdus 54
9
La signalisation
! Pour transférer des données sur une liaison, il est
nécessaire de transférer des messages de
signalisation pour :
établir la liaison, demande de la ligne, composition d’un
La signalisation !
numéro téléphonique, …
! contrôler la liaison durant l'échange (messages ACK, …)
! libérer les ressources en fin de communication
! La signalisation est l'ensemble de ces informations
de supervision (ou de contrôle)
! Deux types
! signalisation dans la bande
! signalisation hors bande (par canal dédié)
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 56
Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 57 Olivier Glück Licence Informatique UCBL - Module LIFASR6 : Réseaux 58
10