Vous êtes sur la page 1sur 884

Rseaux et Protocoles

NFP 104

G.Florin S.Natkin
1

Plan du cours
INTRODUCTION NOTION GNRALES
1. NIVEAU PHYSIQUE
1.1. Transmission sur un canal
1.2. lments de technologie
2. NIVEAU LIAISON
2.1 Liaison point point
2.2 Liaison dans les rseaux locaux
3. NIVEAU RSEAU
3.1 Problmes gnraux de la couche rseau
3.2 Exemple de protocole : IP
4. NIVEAU TRANSPORT
4.1 Problmes gnraux de la couche transport
4.2 Exemples de protocoles : TCP/UDP

Bibliographie
Andrew Tanenbaum : Rseaux, Pearson Education,
4ime dition 2003. Traduction en franais de Computer
Networks
Claude Servin : Rseaux et Telecom , Dunod, Paris 2006
James F Kurose, Keith W Ross: Computer Networking,
Addison Wesley 2001
Laurent Toutain : Rseaux locaux et Internet Herms
Stevens W.R : TCP/IP Illustrated, Addison Wesley 1993.
Bouyer, G : "Rseaux synchrones tendus PDH et SDH",
Herms
Les pages WEB : Groupes de travail, constructeurs, cours
universitaires, ... Et les RFC Internet

Premier Chapitre

Introduction
Notions gnrales concernant les
rseaux

Introduction Notions gnrales

Origine des rseaux - Evolution

Tltraitement
Au dbut de linformatique : problme majeur
rentabiliser des units centrales coteuses.
Egalement: installer les terminaux prs des utilisateurs.
Solution : Mettre en place une organisation des
moyens informatiques qui s'adapte l'approche centralise.
S'affranchir des contraintes gographiques de localisation
des systmes informatiques.
Voie point point srie

Processeur
central

Processeur
dentres
sorties

Terminaux
Voie multipoint srie

Bus E/S parallle


6

Interconnexion des processeurs:


Gestion des ressources
A) Optimisation des ressources (partage)
B) Donner accs des ressources distantes
rares/chres.
Exemples 1 : puissance de calcul, logiciels spciaux
Exemples 2 : priphriques spciaux rapides, archivage
Unit
Centrale 1

Liaison
Inter
calculateurs

Puissance
Fonctionnalits

Unit
Centrale 2

Terminaux
7

Interconnexion des processeurs:


Sret de fonctionnement
La tolrance aux pannes
Permettre des applications sensibles de continuer de
fonctionner en prsence de pannes.
Exemple : Architecture Projet Apollo 1965.
Liaisons Inter calculateurs: synchronisation

Unit
Centrale 1

Unit
Centrale 2

Voteur

Unit
Centrale 3

Vote majoritaire
2 sur 3

Unit
Centrale 2

Unit
Centrale 2

Alternants passifs
(en attente de panne)
8

Les rseaux gnraux dordinateurs


Exprimentation du rseau ARPA ("D-ARPA Defense
Advanced Research Project Agency")
Ensemble de travaux universits/industries sur contrat militaires
partir de 1967 avec des objectifs initiaux de sret de fonctionnement.
Dveloppement des principes essentiels des rseaux informatiques
Protocoles de communications couches basses
Niveau liaison et rseau : dveloppement de la commutation de paquets.

Protocoles d'applications (courant 1970) : Sessions distance,


Transport de fichiers, Messagerie
Succs considrable de lexprience ARPA => Internet.
Dveloppement de projets similaires : Exemple cyclades.

Architectures constructeurs :
IBM SNA ("System Network Architecture" 1974)

La normalisation : Exemple X25 (1974)

Notions relatives aux rseaux


gnraux dordinateurs
Rseau gnral : Ensemble des systmes informatiques
autonomes capables d'changer des informations en
univers htrogne.
Autonomes : Mmoire propre chacun des sites.
Pas de synchronisation matrielle puissante (mmoire
partage).

Echanges : Communications en mode message


asynchrone "Asynchronous message passing" (ide de
faible couplage).
Sur des distances quelconques => Dbits plus faibles (mais en
accroissement constant, et en fonction des moyens financiers).

Htrognes : faire fonctionner ensemble des


systmes d'origines diffrentes.

10

Terminologie
Commutateurs
Sous-rseau

Hte

Ordinateurs Htes ("Hosts Computers")


Les systmes informatiques interconnects.

Sous-rseau de communication ("Communication


Subnet") : Le moyen de communication des htes.
Des calculateurs spcialiss (ou non) dans la commutation :
Commutateurs, noeuds de commutation, routeurs, "Packet
Switches","Nodes","Routers
Des voies physiques de communication: Liaisons spcialises,
voies, canaux, rseaux de transport dinformations.
11

Topologies

Boucle ou anneau (ring)

Bus (bus)

Complte ou clique (fully connected)

Etoile (star)

Arbre (tree)

Maille (meshed) 12

Rseaux gnraux et
communications interinter-personnelles
Convergence de deux tendances dans les annes 1970:
informatique et tcommunications => la tlmatique (1981)
Rseaux gnraux Rsultat de l'exprience ARPA.
Les rseaux d'ordinateurs sont des supports fiables de transport de
messages textuels =>Dveloppement des messageries.

Techniques de commutation
La construction des autocommutateurs volue vers les techniques
numriques et la commutation temporelle synchrone => Premier
commutateur temporel 1975.

Concrtisation: le RNIS Rseau Numrique


Intgration de Service (dbut des annes 1980)
Intgration sur le mme support de transmissions voix, donnes et
images (faiblement animes)
13
Dbits de base 64 kilobits/seconde, 2 mgabits/seconde

Rseaux locaux
("LAN Local Area Networks")
Rseaux locaux : communications en mode message
asynchrone dbit lev sur des distances plus faibles.
A) Exprimentation : darchitectures de rseaux en
boucles ou sur bus courte distance (rseaux filaires et
hertziens).
B) Rseau Ethernet : rseau filaire en bus ( partir de
1972).
Diffusion grande chelle partir de 1980 (10 Megabits/s).
Amliorations constantes : 100 Mb/s, 1Gb/s, annes 2000 10
Gb/s).

C) Rseaux locaux radio : depuis 1970


Rseau Aloha => Rseaux Wifi (1997).

14

Systmes rpartis (Distributed


(Distributed
systems,
systems, N-tiers,
tiers, Peer to peer)
peer)
Notion de systme rparti ou distribu ( partir de 1980)
Utilisation dun rseau dans une approche d'homognisation.
Systme et application commune permettant d'offrir un service rseau
quivalent celui d'un processeur unique.

Rsolution des problmes de dsignation.


Exemple : localisation des fichiers.

Rsolution de problmes de gestion de ressources.


Exemple : slection d'un processeur pour excuter une tche.

Rsolution de problmes de synchronisation.


Exemple : contrle d'excution rpartie en squence, en parallle.

Exemples de systmes: Mach, Chorus.


Evolution ultrieure : les systmes d'objets rpartis, les
15
approches composants logiciels (Corba, EJB).

Dveloppement des applications


des rseaux et systmes rpartis
Communications inter personnelles
Tlphonie, diffusion radio/tlvision, informations (Web).

Algorithmique parallle
Calcul intensif, grilles de calcul (Grid computing).

Informatique industrielle
Systmes rpartis de contrle de procds.

Informatique d'entreprise
Architectures client-serveur.

Intelligence artificielle
Rseaux de neurones, systmes multi-agents.

Multi mdia
Jeux en rseaux.
16

Introduction Notions gnrales

Problmes rsolus dans les


rseaux

17

Objectif
Prsenter des problmes importants de la
construction des rseaux.
En se limitant aux couches basses.
Problmes que l'on doit rsoudre dans un ou
quelquefois dans plusieurs des niveaux d'une pile de
protocoles.
Donner des ides gnrales de solutions.
Des solutions prcises seront revues propos de
chaque niveau.
Z Lordre de prsentation des problmes nest pas significatif
de leur importance.

18

1) Modulation, Synchronisation,
Reprsentation des informations
Fonction de base des rseaux : acheminer des
suites binaires, structures, interprtables.
Problmes de synchronisation:
Synchronisation trame : A quel moment une
suite binaire significative est elle prsente ?
Synchronisation bit : A quel moment un bit (un
symbole) doit-il tre chantillonn.
Problmes de modulation: comment sont
reprsents les units dinformation (bits, symboles).
Problmes de codage : comment sont cods les
donnes (octets, caractres, numriques, ).
19

2) Gestion des connexions: les


modes avec ou sans connexion
Mode sans connexion (non connect):
Les changes peuvent tre raliss tout instant sans
prcautions particulires.
Exemples : courrier postal, protocoles IP, UDP, courrier
lectronique SMTP .

Mode en connexion (mode connect) :


Les changes sont contrls par des connexions:
dlimitation dans le temps par deux phases douverture et
de fermeture de connexion.
Exemples : tlphone, protocoles PPP, TCP .
20

Gestion des connexions :


le mode connect
Ouverture: Dlimitation de dbut des changes.
Dsignation du destinataire atteindre .
Ngociation de qualit de service QOS "Quality Of
Service".

Paramtres qualitatifs Ex: mode simplex, l'alternat, duplex.


Paramtres quantitatifs Ex : dbit, taux d'erreur rsiduel accept.

Dsignation de la connexion : notion de rfrence de


connexion.
Fermeture: Dlimitation finale des changes.
Dconnexion abrupte ("Destructive release"):
Perte des informations en transit.

Dconnexion ordonne ("Orderly release"):

Echange des donnes en cours avant fermeture

Dconnexion ngocie ("Negociated release")


Fermeture avec l'accord des deux parties.

21

3) Eclatement/Recombinaison
clatement ("Splitting") : Une connexion de niveau N+1
est clate sur plusieurs connexions de niveau N.
Utilisation : pour amliorer le dbit (usage peu frquent).
Opration inverse sur le site distant: la recombinaison
=>Problme : reconstruire la squence initiale
(utilisation de numros de squence).
Hte metteur A

Niveau N+1

Hte destinataire B
Recombinaison

Eclatement

Niveau N

22

4) Multiplexage (accs multiple)


Multiplexing
Multiplexing
Multiplexage (switching) : Acheminer plusieurs flots de
messages de niveau N+1 sur un mme flot de niveau N.
Problme rsoudre: rassembler puis sparer les
messages appartenant aux diffrents flots de communication.
Hte destinataire B

Hte metteur A
Niveau N+1

Dmultiplexage

Multiplexage

Niveau N
23

Utilisation du multiplexage
Multiplexage de flots appartenant des usagers
diffrents: protocoles d'accs multiple.
Exemple: tlphonie, rseaux d'ordinateurs.

Multiplexage de flots appartenant un mme


usager.
Exemple: ouverture de plusieurs connexions diffrentes
entre deux htes pour le mme usager.

Multiplexage de flots appartenant des


protocoles diffrents.
Exemple: multiplexage des protocoles TCP/IP et Novell sur le
mme cble Ethernet.

=> Le Multiplexage est omniprsent en


rseaux tous les niveaux.

24

Solutions de multiplexage :
a) Multiplexage en frquence
FDMA 'Frequency Division Multiple Access.
AMRF 'Accs multiple rpartition de frquences.
Multiplexage analogique : chaque usager utilise une
bande de frquence fixe selon un codage prdfini pendant
une plage de temps (selon rservation frquence/temps).
Code

Usager 1

Les usagers sont spars par les frquences.


La largeur de bande est limite par le
Temps
nombre n d'usagers (pour un usager B/n).
Chaque usager dispose en continu de son
canal: qualit garantie mais perte de
ressources si l'usager ne transmet pas.
Frquence Les usagers n'ont pas se synchroniser.
Les usagers utilisent le plus souvent le
Usager n
mme codage (mais les codages peuvent aussi
tre diffrents).
25

Multiplexage frquentiel : exemple


du multiplexage de voies physiques
Principe : Le spectre d'une voie rapide est dcoup en
bandes troites associes chaque voie basse vitesse.
S(t)
A(f)

2
3
4

S(t)

A(f)

1 2 3 4
M
U
X

A(f)

D 2
E
M 3
U
X 4

Applications anciennes: tlphonie fixe (groupes


primaires quaternaires) ou cellulaire (Radiocom 2000),
rseaux locaux "Broadband".
Application actuelle: modulation OFDM, multiplexage
dans des fibres optiques WDM 'Wavelenght Division
26
Multiplexing (16), Dense-WDM (80-160), Ultra-dense (400).

Solutions de multiplexage :
b)Multiplexage en temps (temporel)
Chaque usager utilise des d'intervalles de temps
(mthode de partage du temps), d'une bande de
frquences prdfinie, le plus souvent selon le
mme principe de codage.
Les usagers sont spars par le

Code
Usager n

Temps

Usager 1
Frquence

temps.
Les usagers mettent et reoivent
de faon discontinue dans le temps :
ils doivent se synchroniser.
Meilleure optimisation possible des
ressources.
27

Multiplexage temporel (1) :


multiplexage temporel synchrone
TDMA "Time Division Multiple Access",
AMRT "Accs Multiple Rpartition de Temps"
Exemple: multiplexage temporel synchrone de voie physique
S1(t)
S2(t)
S3(t)
S4(t)

t
t
t
t

Principe :

1
2
3
4

1 2 3 4 1
t

S1(t)

S2(t)

S3(t)

S4(t)

t
t
t
t

Des intervalles de temps constants d'une voie haute vitesse sont priodiquement
attribus des chantillons de n voies basse vitesse (mme sil ny a n'a rien
transmettre).
On forme des trames rptes de manire synchrone.

Applications :
Tlphonie fixe et RNIS-BE (Rseau Numrique Intgration de Services Bande
28
troite). Tlphonie mobile GSM.

Multiplexage temporel (2) :


multiplexage temporel asynchrone
ATDM "Asynchronous Time Division Multiplexing"
MTA "Multiplexage Temporel Asynchrone"
En franais assez souvent => Multiplexage statistique.
Principe : Les units de donnes significatives (messages)
des voies basses vitesses sont acquises selon leur rythme
d'arrive et sont mises sur la voie haute vitesse.
Multiplexage des rseaux informatiques tous les
niveaux: multiplexage de niveau liaison sur niveau physique,
niveau rseau sur liaison, transport sur rseau, etc
Rseaux locaux: partage d'une voie commune en comptition
Ethernet, Wifi.
Internet : protocoles PPP, MPLS , IP, TCP
Rseau ATM "Asynchronous Transfer Mode".
29

Exemple : le multiplexage temporel


asynchrone dune voie physique
Notion de multiplexeur statistique : Partage d'une voie
haut dbit en plusieurs voies bas dbits.
Principe :

Les donnes sont chantillonnes lorsquelles sont prsentes sur des


voies basses vitesses et sont rassembles en trames sur la voie haute
vitesse.
Un codage dadresse ou un code prfixe permettent de dterminer si
un chantillon est prsent ou pas dans la trame.
S1(t)
S2(t)
S3(t)
S4(t)

t
t
t
t

1
2
3
4

4 2 1

43
t

Trame n+1 Trame n

2
3
4

S1(t)
S2(t)
S3(t)
S4(t)

t
t
t
t
30

Solutions de multiplexage :
c) Multiplexage en code
CDMA Code Division Multiple Access.
AMRC 'Accs multiple rpartition de codes.
Les usagers utilisent des codes diffrents sur une bande
de frquences prdfinie pendant une plage de temps
donne (selon rservation).
Temps
Code

Usager n

Usager 1

Les usagers sont spars par le code utilis.


Les usagers peuvent mettre et recevoir de
faon continue et simultanment dans la
mme bande de frquence.
Les usagers n'ont pas besoin de se
synchroniser dans le temps ni de se distinguer
dans le domaine des frquences..
Frquence
31

Exemple trs simplifi de CDMA :


1) Emission
Bit Bi =0 ou 1 reprsent en niveaux (NRZ).
0 => +1 et 1 => -1 pendant un temps bit Tb.
B1
0

B2

B3

B4

B5
1

Tb

Pour chaque usager dfinition d'une squence d'talement.


Chaque temps bit est divis en n 'chips' (Tb = n* Tc)
Exemple pour n=4 : On utilise un code pour 0 C1=+1, C2=1, C3=+1, C4=-1 (pour 1 loppos).
V1,1

Tc

V1,4

32

Exemple trs simplifi de CDMA :


2) Rception
Squence reue.
V1,1

V1,4

Tc

Dcodage pour : C1=+1, C2=-1, C3=+1, C4=-1


On calcule Bi = (1/n) j=1,4 Vi,j Cj
Pour le bit B1 = (1/4)*(1+1+1+1+1) =1
Pour le bit B2 = (1/4)*(-1-1-1-1-1) =-1 etc
On restitue la squence mise :
B1
0

B2

B3

B4

B5
1

33

Fonctionnement trs simplifi de


CDMA avec plusieurs utilisateurs 1)
Squences de chips: On choisit des vecteurs orthogonaux
(les produits scalaires de squences associes deux
usagers s'annulent).
Exemple: Usager-1 (+1, +1, +1, +1)
Usager-2 (+1, -1, +1, -1)
Usager-3 (+1, +1, -1, -1)
Usager-4 (+1, -1, -1, +1)
Hypothses simplificatrices :
Bits synchroniss lmission.
Pas de retards diffrents de propagation.
Pas de bruit.
34

Exemple de CDMA avec plusieurs


utilisateurs (2)
Un scnario de fonctionnement ou les quatre usagers
mettent ensemble
Emission Usager-1 bit a (+a, +a, +a, +a)
Usager-2 bit b (+b, -b, +b, -b)
Usager-3 bit c (+c, +c, -c, -c)
Usager-4 bit d (+d, -d, -d, +d)
Signal mis pendant un bit
(a+b+c+d),(a-b+c-d),(a+b-c-d),(a-b-c+d)
Rception de la transmission de l'usager 2
1/4[(a+b+c+d)-(a-b+c-d)+(a+b-c-d)-(a-b-c+d)]
= 1/4 [4b] = b
35

Conclusion CDMA
Ide dutiliser les codages : pour distinguer les usagers
dans une approche de transmissions simultanes (en
comptition avec collisions).
Transposer lide dans le monde rel : problmes
importants de mise au point

Squences de chips non synchronises.


Squences de chips non orthogonales : beaucoup d'usagers =>
nombreuses squences de codage pas toutes orthogonales.
Prsence de bruit.
En utilisation mobile et communication hertzienne : Effet Doppler du
aux mobiles en mouvement.
Communications hertziennes : Rflexions multiples.

Applications

Transmissions militaires.
Tlphonie mobile de troisime gnration UMTS.

36

5) Commutation (
(switching
switching)
switching)
Objectif gnral : Acheminer un message dans un rseau
maill en visitant des commutateurs successifs.
Commuter (switching): Raliser l'aiguillage d'une donne
d'une voie entrante dun commutateur sur une voie sortante.
Router (routing): Dterminer le chemin suivre pour aller
d'un point un autre (calculer des routes optimales).
Optimiser: Grer des files d'attente associes aux voies (en
entre, en sortie ou au milieu)
pour satisfaire des critres de qualit de services (temps de rponse,
gigue, dbit ).
et limiter au maximum les pertes de messages dues la
congestion.

Un problme majeur en rseaux : la commutation est


traite aux niveaux 2 et 3.

37

Solutions de commutation :
a) Commutation de circuit
Principe : Un chemin permanent (un circuit) est
tabli entre deux entits communicantes et assure un
dbit (une bande passante) fixe.
Avantages

Existence d'un canal totalement disponible et indiffrent


au type de donnes transfres.
Permet de rserver une capacit nette pour des trafics
synchrones ou temps rel: voix, image, donnes
chances.

Inconvnients

La capacit mise disposition n'est pas toujours adapte


au besoin et peut-tre parfois extrmement mal
employe (donnes sporadiques en informatique, voix ou
images compresses).
38

Solutions de commutation de
circuit : a1) Commutation spatiale
Principe : tablissement d'un lien mtallique permanent au
moyen d'aiguillages d'interconnexion.
Exemple type ("crossbar") : Commutateur N entres N
sorties : N2 aiguillages commands par adresses destinations.
Entres

Adresses

Optimisation pour N grand : diminuer


le nombre de points d'aiguillages => notion
de rseau d'interconnexion
Utilisation
Commutation tlphonique ancienne.
Commutation lectronique haut dbit
(accs mmoire, commutateurs gigabits,
Sorties
....).
39

Solutions de commutation de circuit :


a2) Commutation temporelle synchrone
Chaque entre est chantillonne de faon synchrone.
On constitue une trame d'entre. On crit la trame en mmoire.
Une table de correspondance entre voies d'entre et voies de sortie dfinit
les rgles d'aiguillage.
Chaque trame est relue et affiche sur les voies de sortie selon la table.
Commutation
Mmoire

Organe d'entre
Voie 1
Voie 2
Voie 3
Voie 4

X
Y
Z
T

X
Y
Z
T

Scrutation
T

Trame d'entre

Organe de sortie
Z
Y

Adresses

Trame de sortie

2
4
1
3

Utilisation
Commutation tlphonique filaire actuelle, RNIS.

X
T
Y

Voie 1
Voie 2
Voie 3
Voie 4

40

Solutions de commutation :
b) Commutation de paquets
Packet switching : Une commutation temporelle asynchrone.
Les paquets ont une entte avec l'adresse du destinataire.
Les paquets arrivent de faon asynchrone (multiplexage asynchrone).
Les paquets sont mis en file d'attente entre aprs acquisition sur une
voie d'entre,
Les paquets sont aiguills vers une file de sortie en fonction de
l'adresse destinataire atteindre par un organe de commutation.
Les paquets en file de sortie sont renvoys sur la voie de sortie.

Hte Commutateur de paquets


B
Packet switch
A
C B
B
Commutateur de paquets
Packet switch
C

Organe de Files dattente


commutation

C
C

C
41

Commutation de paquets :
Terminologie, Concepts associs
Commutation de messages, de paquets, de
cellules

Commutation de messages: ancienne commutation de


donnes de taille quelconque => problmes d'allocation de
tampons (Exemple : rseau SITA au dbut).
Commutation de paquets: la taille des paquets est borne
par connexion usager et permet une meilleure gestion
mmoire (X25).
Commutation de cellules: la taille des cellules est
strictement fixe et identique pour tous les usagers =>
efficacit maximale en gestion mmoire. (ATM)

Circuits virtuels et datagrammes

Circuits virtuels : les paquets empruntent le mme chemin.


Datagrammes : les paquets circulent indpendamment les
42
uns des autres.

Commutation de paquets :
Avantages et inconvnients
Avantages
Apporte une grande adaptabilit aux dbits soumis par
les usagers.
Optimise les voies de communication.

Inconvnients
L'opration de commutation est plus complexe qu'en
commutation de circuits et les dbits commuts sont plus
faibles.
Les trafics voix image ont des caractristiques synchrones
qui rendent dlicate l'utilisation de la commutation de paquet.

Applications
Commutation des rseaux informatiques : Ethernet, ATM,
MPLS, IP, X25.
43

6) Fragmentation / Segmentation
Fragmentation
Problme: Dans le cas ou une information usager transporter au niveau
N+1 (N-SDU) est trop longue pour la taille (d'un maximum impos) des
messages du niveau (N-PDU).
Exemple: Ethernet taille maximum 1500 octets
Notion de MTU : Medium Transmission Unit.

Autre situation: La voie de communication est trop bruite.


Exemple : Wifi.

Solution (rencontre dans certains niveaux 2,3,4): dcouper les


messages longs en morceaux plus courts (segmentation ou fragmentation).
Opration inverse : rassemblage (identifiant de fragment, position).
Une N-SDU

Quatre N-PDU
44

7) Groupage (Concatnation)
Problme : dans le cas ou une information
transporter (N-PDU) est trop petite par rapport la
taille des messages qui optimisent les performances
du niveau (taille fixe ou d'un minimum donn)
Optimisation (groupage) : regroupement de
messages courts (rare).
Opration inverse : dgroupage (bas sur la
position des diffrents messages courts).
1

Trois N-SDU

Une N-PDU
45

8) Contrle de flux
Flow control
Problme : diffrences de vitesse entre lmetteur et le
destinataire (htrognit des puissances de calcul, de la
capacit mmoires, des dbits des voies de communication)
=> Arrives sporadiques qui ne peuvent tre traites par le
destinataire (pertes de messages).
Solution indispensable (niveaux 2, 3, 4) : Adaptation de la
vitesse de l'metteur celle du rcepteur par rtroaction au
moyen de messages spcifiques: les crdits.
Contrle de flux inter sites "Peer flow control"
Entre deux niveaux apparis => contrle de flux dfini dans un
protocole.

Contrle de flux inter niveaux "Inter layer flow control "

Entre un niveau N+1 et le niveau N : la solution dpend de l'implantation


du fournisseur de logiciel systme/rseau.
46

9) Contrle derreur
Error control
Problmes : Perte de messages
Bruit sur les voies de communication, dans les mmoires.
Incapacit de stocker (congestion).
Solution indispensable (niveaux 2, 3, 4) : contrle de
l'intgrit des donnes transfres
Codes auto correcteurs d'erreurs : Dfinir un code qui
permet de savoir sil y a eu erreur et qui permet de corriger
cette erreur.
Codes dtecteurs d'erreurs: Dfinir un code qui permet
de dtecter la modification ou la perte des donnes
changes et retransmettre en cas d'erreur.
Contrle total ou contrle partiel :
Contrle sur la totalit du message : protocole et usager.
Contrle sur les enttes protocolaires : traiter uniquement
des problmes protocolaires (exemple : erreurs de routage).
47

10) Contrle de squence


Proprits dordre
Problme : assurer le respect de proprits d'ordre dans les
communications
A) Ordre local (livraison en squence, besoin frquent)
On attend en gnral dun protocole quil prserve l'ordre des donnes
qui lui sont confies par un metteur.
Si le rseau perd, duplique ou dsquence les informations il faut
restituer les donnes dans l'ordre des soumissions.

B) Ordre global (cas des communications en diffusion)

Tous les destinataires dune suite de messages reoivent les messages


dans le mme ordre.

C) Ordre causal:

Tous les destinataires reoivent les messages dans le mme ordre qui
est celui de la relation de causalit des instants dmission.
Un message en cause un autre sil est dlivr avant lmission de lautre.
Ordre causal = ordre de prcdence intersites dduit des
communications par messages.
48

11) Qualit de service


QOS Quality Of service
Problme: respect de proprits dans les communications.
Point de vue ancien: fournir deux niveaux qualitatifs

Transfert de donnes normales ("Normal data flow") : Les donnes


habituellement changes.
Transfert de donnes expresses ("Expedited data transfer") : Les
donnes devant circuler rapidement (exemple alarmes, exceptions).

Point de vue actuel: essentiel pour les donnes multimdia


A) Proprits qualitatives ou smantiques
Exemple : proprits dordre, existence de canaux unidirectionnels ou
bidirectionnels

B) Proprits quantitatives : qualit de service


temporelle (donnes temps rel, multimdia)

Nombreux paramtres quantitatifs de qualit: Temps de transmission


(latence), Variation du temps de transmission (gigue), taux derreur.

Contrats de qualit de service:

Responsabilit de l'usager 'usage parameter control et responsabilit


49 du
prestataire de service.

12) Contrle de congestion


Congestion control
Problmes:

viter en prsence d'une surcharge la diminution


anormale des performances => continuer satisfaire les
contrats de qualit de service en prsence des surcharges
acceptes.
viter le phnomne d'croulement (thrashing) c'est
dire l'effondrement du trafic utilisateur transport.

Solutions (indispensables aux niveaux 2 et 3) :

Allouer suffisamment de ressources : bande passante,


puissance de commutation, tampons.
viter la destruction de messages par manque de
ressources conduisant des pertes par le dveloppement de
protocoles de prvention ou de traitement de la congestion
par exemple utilisation de messages de signalement de
surcharge.
50

13) Compression
Problme :
viter de transmettre un volume de donnes important
risquant de gaspiller la bande passante disponible.
Solutions :
Quelquefois prsentes au niveau physique et surtout
de niveau application.
Dtecter les redondances prsentes dans les donnes et
les supprimer en utilisant un codage plus efficace.
Quelquefois utile dans les donnes informatiques mais trs
efficace dans la transmission dimages et de son.
51

14) Dsignation et liaison


Naming,
Naming, Binding
Binding
Problmes:

Dsignation : construire des ensembles de noms logiques ou


dadresses physiques (dans le contexte de grands rseaux).
Liaison : tablir un lien entre un nom logique et une adresse physiques
permettant de retrouver la localisation dun destinataire.

Solutions de dsignation (niveaux 2, 3, 4) :

Dfinition de la structure des noms et adresses dans les rseaux


(approches hirarchiques)
Dfinition des autorits responsables de lattribution des noms et
adresses

Solutions de liaison (niveaux 2, 3, 4) :

Dfinition des services et protocoles de recherche (utilisant


surtout des annuaires) pour tablir une liaison entre un nom et un
attribut qui est le plus souvent une adresse.
On peut aussi associer un nom de nombreux autres types dattributs
utiles comme des cls, des alias, des serveurs .
52

15) Scurit
Security
Security
Problme: rsister aux actions de malveillance pour assurer
Confidentialit : donner accs en lecture aux personnes
autorises.
Intgrit : donner accs en criture aux personnes
autorises
Protection : vrifier de manire gnrale les droits de
chaque usager.
Authentification : vrifier lidentit dun usager.
Non rpudiation : assurer quun usager est bien lauteur
dune action.
Solutions indispensables (niveaux 2, 3, 4) :
Utiliser des fonctions cryptographiques : chiffres,
fonctions de hachage, gnrateurs de nombres alatoires.
Utiliser des protocoles de scurit : des changes de
messages ddis la scurit.
53

16) Administration de rseau


(Network management)
Problme: Assurer le suivi de l'exploitation dun rseau dans
cinq domaines.

Gestion des configurations : suivre le parc des moyens matriels et


logiciels dploys et suivi des versions.
Gestion des pannes : suivre ltat de fonctionnement des appareils.
Gestion de la comptabilit: tablir les consommations de ressources
des usagers pour facturer.
Gestion des performances : suivre les performances des diffrents
dispositifs (dbits, temps de rponse).
Gestion de la scurit : dfinir la politique de scurit et administrer
les paramtres de la scurit (identificateurs, cls, mots de passe)

Solutions indispensables aux niveaux 1,2,3,4 :


Utiliser des logiciels dadministration qui implantent
des protocoles dadministration et des services de
prsentation des donnes dadministration.
54

Introduction Notions gnrales

Modle de rfrence pour les


architectures de rseaux :
Le modle OSI

55

Introduction :
Notion de modle de rfrence
Pourquoi dfinir un modle de rfrence
d'architecture de rseaux?
1) Pour permettre la construction rationnelle
des logiciels rseaux.
Modularit, Extensibilit,
Paralllisme, Tolrance aux pannes.

2) Pour rgler des problmes d'incompatibilit


entre diffrentes choix techniques.
=> Notion d'ouverture (architecture de
systme ouvert).
56

Architectures de systmes ouverts


Ralisation de louverture (1)
Objectif : Assurer que des logiciels rseaux
htrognes peuvent tre intgrs dans des
ensembles cooprants de grande dimension sans
entraner des cots trop importants.
Techniques employes
1) La normalisation ("Standardization"):
Production de spcifications papiers faisant rfrence pour la
dfinition des diffrents aspects dun fonctionnement rseau.
=> Une norme prcise des fonctionnements communs
obligatoires (mandatory) et donc par suite autorise des
variantes sur les points optionnels et surtout sur les points
57
non spcifis.

Architectures de systmes ouverts


Ralisation de louverture (2)
2) L'interoprabilit ("Interoperability") :
Production dimplantations qui peuvent effectivement
changer des informations significatives.
=> Non seulement la connexion physique est ralise mais
galement tous les protocoles employs sont compatibles.

3) La portabilit ("Portability"):
Un mme logiciel portable peut tre excut sur une
grande varit de machines.
=> On peut ainsi utiliser une implantation commune qui
aura de bonnes chances dtre compatible avec elle mme.
58

Architectures de systmes ouverts


Ralisation de louverture (3)
4) L'extensibilit ("Scalability") :
Signifie quun systme ouvert peut supporter des extensions de
configuration jusqu une taille trs importante (arbitraire si possible).
=> Dans son dveloppement un systme ouvert peut accompagner
l'extension des demandes des applications en leurs assurant des
performances acceptables.
=> Terminologie : Passage lchelle.

5) L'intgration ("Integration") :
Signifie que les applications doivent avoir une interface bien dfinie et
que les implantations respectent ces spcifications.
=> Les applications peuvent tre assembles (composes) pour former
un systme complexe fonctionnant correctement dans la mesure ou les
clients respectent les interfaces des applications serveuses.
=> Terminologie : Interface de programmation dapplication API
Application Programming Interface.
59

Organisation des architectures de


rseaux
Organisation en couches ou niveaux (Layers, OSI)
Pour modulariser et structurer les diffrentes fonctions:

Eviter les approches "fourre-tout" ou tous les aspects sont mls dans
le mme logiciel.

On situe dans une hirarchie de couches (une pile ou "stack")


les diffrentes fonctions raliser (Dijskstra 1968).
Chaque niveau est dfini en termes du service rendu au niveau
suprieur.
Chaque niveau est dfini par la faon de dialoguer avec un niveau
analogue.

Organisation oriente composants logiciels (objets)


On ne pas une seule pile (une hirarchie de rutilisation).
Tous les composants sont sur le mme plan: utilisables via
leur API par dautres composants (Exemple CORBA).
60

Organisation en couches
Services et protocoles: un exemple
Exemple (A.S. Tannenbaum):
Deux philosophes qui ne parlent
pas la mme langue souhaitent
mener un dbat philosophique
par la poste).
Ils produisent des textes
philosophiques.
Ils utilisent les services de
traducteurs.
Les textes circulent par la
poste.

PHILOSOPHE

PHILOSOPHE

TRADUCTEUR
A

TRADUCTEUR
B

SERVICES POSTAUX

61

Notion de service
(flches verticales)
Interface du service de traduction : requtes ou
primitives.
Pourriez vous envoyer un texte mon ami le philosophe B qui habite
telle adresse.
Oui c'est possible ou Non j'ai trop de travail.
Un texte pour vous est arriv de B.

Interface du service postal

Mettre une lettre la poste


Effectuer un envoi recommand (qualit du service).
Guichet surcharg (file d'attente)
Le bureau de poste est ferm.

62

Notion de protocole :
(flches horizontales)
Protocole entre philosophes
Cher et estim collgue.
Thse, antithse, synthse.

Protocole entre traducteurs


Votre cinquime paragraphe du dernier texte tait
incomprhensible.
Dans une langue "pivot" (anglais) : Que pensez vous
d'utiliser pour le prochain envoi l'allemand afin de ne pas
perdre la main.

63

Architecture de communication :
Prsentation formelle des notions
Architecture de rseau ("Network Architecture")

Spcification d'un ensemble de fonctions dcoupes en niveaux


hirarchiss

Couches ou niveaux ("Layers") dfinis par:

Une interface de service : des primitives daccs au service.


Un protocole de communication entre un niveau N et un niveau N
distant.

Services et protocoles

Le niveau N communique avec le niveau N+1 auquel il fournit un


service.
Le niveau N communique avec le niveau N-1 auquel il demande un
service
Les services rendus servent tablir finalement un dialogue
(protocole) entre deux niveaux N apparis.
Le niveau le plus bas est celui de la communication effective sur
une voie physique de bits d'information.
64

Reprsentation des niveaux,


protocoles et services
Exemple dune architecture
trois niveaux.
Sur le schma: distinction flots
de contrle et flots de donnes
(exemples RNIS, ATM).
Selon les choix de conception
ces flots:

Hte A

Protocole

Hte B
3

de niveau 3
Interface 3/2

Circulent sur le mme canal


physique ou la mme voie
Interface 2/1
logique
Circulent sur des canaux
physiques ou des voies logiques
diffrentes.

Protocole
2

de niveau 2

Protocole
1
de niveau 1
65

Notions lies aux services :


Primitives de service
Primitive de service (IDU Interface Data Unit)
Une fonction prcise active dans un niveau par un autre
niveau.
Exemples : demande de connexion, demande de
transfert,
Caractristiques associes : type, paramtres dappel
et de rponse
- type de l'opration (de la primitive).
- adresse du destinataire et adresse de lmetteur.
- spcification de qualit de service attendu.
- donnes usager.
66

Notions lies aux services :


Services et entits de services
Service
Ensemble de primitives changes par un niveau donn
et le niveau suprieur. Les primitives de service circulent
dans les deux sens N vers N+1 et N+1 vers N.
Profil d'appel des primitives : analogue de la signature.
Contraintes denchanement : l'interprtation dune
primitive dpend de l'tat. Par exemple : dans un certain
tat d'un niveau certaines primitives sont utilisables et
d'autres pas.

Notion d'entit de service


Instance d'un ensemble de primitives permettant la
ralisation effective du service (analogue de l'instanciation
de classe en approche objet).
67

Notions lies aux protocoles


Units de donne protocolaires (PDU Protocol Data Unit)
Spcification d'un ensemble de donnes types, changes entre deux
niveaux apparis. Selon les niveaux : trames, paquets, segments, messages.
Exemple : demande de connexion, transfert de donnes....
Caractristiques associes : les informations transportes
- type de l'opration
- adresse du destinataire
- informations auxiliaires transportes
- donnes usagers

Protocole
Dfinition de lensemble des PDU changes par un niveau avec un niveau pair.
Dfinition des contraintes d'enchanement.
Dans un tat d'un niveau certains messages sont interprtables et d'autres pas.
L'interprtation d'un mme message peut tre diffrente selon l'tat.

=> Indterminisme des applications rseaux.


68

Approfondissements:
Services
Unit de donnes d'interface : IDU Interface Data Unit
Objets changs entre les niveaux lors de l'mission d'une primitive
de service => Composs de deux parties:

1) Units de donnes de service : SDU Service Data Unit


La partie que l'usager souhaite transmettre effectivement l'usager
distant.

2) Informations de contrle de l'change : ICI Interface


Control Information
L'ensemble des informations de contrle qui permettent au niveau
destinataire de traiter correctement la requte.
N-IDU

Type de la requte, adresse destinataire,


Autres informations dans le dialogue entre Niveau N+1
niveaux (par exemple pour rguler le flux
d'informations sur l'interface de service).
La normalisation ne spcifie pas comment
Niveau N
sont changes les SDU.

ICI

ICI

SDU

69
SDU

Approfondissements:
Point daccs de services
Guichet permettant une
entit de demander un service
Entit N+1
une autre entit .
Entit N+1
Sa ralisation dpend des
SAP
choix d'implantation du logiciel
SAP
rseau par le fournisseur.
Exemples: en appel systmes,
Entit N Entit N
appel de procdure.
SAP : Service Access Point
Le point d'accs de service
Entit N
est l'lment essentiel de la
Ralisation d'un SAP
dsignation dans les rseaux.
en schma producteur
Autres dnominations: port,
consommateur
porte, "sockets", prises.
70

Approfondissements:
Protocoles
Units de donnes de protocole ("PDU Protocol Data
Unit")
L'ensemble des objets changs entre niveaux apparis.
Compos d'un (N+1)-PDU et d'une information de contrle (N)-PCI.

Informations de contrle
protocolaire ("PCI "Protocol
Control Information")
Ensemble des informations
de contrle de l'change entre niveaux.
Exemples :
- adresses metteur et destinataire
- type
- version de protocole utilise.

(N+1)-PDU
(N+1)-PDU Message (Transport)
(N)-PCI

(N+1)-PDU

(N)PDU Paquet (Rseau)


(N-1)-PCI (N)-PCI

(N+1)-PDU

(N-1)-PDU Trame (Liaison)


71

Approfondissements:
Rsum de la structuration OSI
Niveau N+1
(N)- IDU
Niveau N
SDU

PCI

(N)-PCI

(N)-SDU

ICI

ICI

(N)-PDU

(N-1)- IDU
Niveau N-1

72

Exemple dun dialogue avec accord


confirm OSI (handshake
(handshake)
handshake)
Utilisateur de service Fournisseur de service de
(client)
communication

Serveur distant

Requte
"SDU"
"Request"

Indication

Message
"PDU type REQ"

"SDU"
"Indication"
Rponse

Confirmation
"SDU"

Message
"PDU type RESP"

"SDU"
"Response"

"Confirmation"
Couche N +1

Couche N

Couche N

Couche N +1
73

Commentaires: dialogue avec


accord confirm OSI (handshake
(handshake)
handshake)
Primitives De Service
Requte ("Request") :
Initialise par le niveau N+1 pour obtenir un service du niveau N
Exemple de primitives : Connect-Request, Data-Request.
Indication ("Indication") :
Le niveau N avise le niveau N+1 de l'activation d'un service.
Exemple de primitives : Connect-Indication, Data-Indication.
Rponse ("Response") :
Rponse du niveau N+1 au niveau N sur une indication
Exemple : Connect-Response.
Confirmation ("Confirmation") :
Du niveau N au niveau N+1 en terminaison du service requis;
Exemple : Connect-Confirmation)
Units de protocole
REQ: PDU qui achemine la requte entre le client et le serveur:
RESP: PDU qui achemine la rponse entre le serveur et le client.

74

Introduction la spcification des


services et des protocoles
Dfinition de toutes les squences correctes d'changes
de d'units de service et de protocole
"ASDC Abstract Service Definition Convention"
"FDT Formal Definition Techniques"

Exemple de solution (la plus rpandue)


- Automate d'tats finis ("Finite State Machine")
- Notion d'tat ("state")
- Notion de transition ("transition") entre tats.
- Gnration dvnements (missions d'information) !info.
- Traitement dvnements (rceptions d'information) ?info.
Besoin de mthodes formelles de spcification et de
preuve de comportements corrects FDT
Dtection des interblocages, des rceptions non spcifies.

75

Exemple partiel du service


d'accord confirm de connexion
? CONNECT.response
CONNEXION
FERMEE
? CONNECT.request

! CONNECT.indication

CONNEXION
SORTANTE

CONNEXION
ENTRANTE

! CONNECT.confirmation

? CONNECT.request

? CONNECT.response

CONNEXION
OUVERTE
76

Le modle OSI (ISO/IEC


7498)
(
Open System Interconnection
Interconnection
Principes de base du modle
Les fonctions excuter doivent tre divises en niveaux sparables
du point de vue physique et logique.
Les fonctions associes dans un niveau doivent avoir une finalit
cohrente.
Chaque couche doit contenir un volume suffisant de fonctions afin
de minimiser le nombre des couches.
Les protocoles doivent agir uniquement l'intrieur de la mme
couche.
Les interfaces entre couches doivent tre aussi simples que possible de
manire minimiser les changes entre couches.
Les couches doivent pouvoir tre modifies sans que soient affects
les services qu'elles offrent.
Une fonction devrait n'apparatre qu'une seule fois.
L'ensemble doit tre efficace en termes de performances
77

Les sept couches


HOTE A

HOTE B
Protocole d 'Application

Application

Prsentation

Session

Transport

Protocole de prsentation

Protocole de session

Protocole de Transport

Application

Prsentation

Session

Transport

Sous-rseau de communication
3

Rseau

Rseau

Rseau

Rseau

Liaison

Liaison

Liaison

Liaison

Physique

Physique

Physique

Physique

IMP

IMP

Protocole Rseau Hote-IMP


Protocole Liaison Hote IMP
Protocole Physique Hote IMP

78

1 - Niveau Physique
Objectif: Fournir les moyens ncessaire l'activation au maintien et la
dsactivation des connexions physiques destines la transmission de suites
binaires.
Mcaniques : Exemples: connecteurs, forme des prises, utilisation des
broches pour les diffrents signaux.
lectriques : Exemples: modulations, utilisation des niveaux disponibles
pour coder un bit, dures.
Procduraux : Exemples: protocoles de synchronisation entre l'metteur et
le rcepteur, multiplexage, transmission bidirectionnelle, l'alternat.
Notion de niveau physique
Dfinit la globalit de la chane de transmission,
Exemple : Ethernet au niveau physique sur paire torsade (100 Base T).

Notion d'interface standard


Entre la voie physique de transmission et le systme informatique (interface
ETTD-ETCD). Constitue une partie du niveau physique.
Exemple : interface Ethernet sur paire torsade RJ45.

79

2 - Niveau Liaison (1) :


Voies multipoints partages
Objectif : Le niveau liaison assure le transfert d'informations
entre deux calculateurs relis par une voie physique.
Selon le support physique et les options de conception
une partie des fonctions suivantes est offerte.
Voies multipoints
Partage de l'accs au mdium ("MAC Medium Access Control")
Autres fonctions (contrle derreur, de flux, administration, ).
Exemples :

Rseau Ethernet filaire IEEE 802-3 (10 Mb/s 10 Gb/s)


Rseau Hertzien WIFI 802-11 (1 Mb/s 54 Mb/s)
Gestion de boucles jeton IBM ISO 8802-5, FDDI ANSI X3T9
Rseaux locaux industriels (FIP, Profibus, CAN, )

80

Niveau Liaison (2) :


Techniques en point point
Gestion de liaison entre deux voisins relis par une voie
physique quelconque (typiquement une liaison spcialise).
Fonctions ralises

Dlimitation/mise en correspondance d'units de donnes.


Multiplexage de flots de donnes d'origine diffrentes.
Contrle d'erreur : transformer une voie bruite en une voie de taux
d'erreur acceptable.
Contrle de flux.
Contrle de squence.
tablissement et libration de connexions.
Fonctions d'administration de liaison
Fonctions dauthentification et de scurit.

Exemples d'implantations

Niveaux liaisons en connexion type HDLC High Level Data Link


Communication (LAPB, LAPD ).
Internet PPP: Point to Point Protocol.

81

Niveau Liaison (3) : Techniques de


commutation rapide
Utilisation de la commutation pour acheminer rapidement des trames au
niveau liaison entre des stations relies en mode multipoint.
Solutions considres maintenant comme de niveau liaison.
1) Commutation de rseaux locaux (LAN Switching).
Utilisation de techniques de commutation pour acheminer plus efficacement les
trames de rseaux locaux Ethernet.

2) ATM : Asynchronous Transfer Mode


Rseau numrique intgration de service large bande ralisant une
commutation de cellules haut dbit utilis pour acheminer rapidement les
datagrammes IP (appoche htrogne avec IP).

3) MPLS : Multi Protocol Label Switching


Utilisation de techniques de commutation pour acheminer rapidement des
datagrammes IP en cur de rseau (trs intgr IP).

4) Relais de trames FR Frame Relay.


Une simplification pour amliorer la vitesse de commutation des commutateurs
X25.
82

3 - Niveau Rseau
Objectif : Raliser la commutation de paquets dans un sous-rseau de
communication principalement en dterminant comment les paquets sont
commuts d'un hte source vers un hte destinataire.
Selon les options : une partie des fonctions suivantes est ralise
Adressage uniforme de tous les htes connects au rseau.
Routage (en point point ou en diffusion) : change d'units de donnes entre
sites relis par un rseau (indpendamment de la technologie du rseau, local,
maill,...).
Contrle de congestion
Fragmentation.
Multiplexage (des connexions de rseau sur des connexions de liaison).
Contrle de squence.
Contrle d'erreur (dtection et correction des erreurs d'hte hte).
Contrle de flux.
Gestion des connexions.

Exemple : IP Internet Protocol


X25 niveau paquet.

83

4 - Niveau Transport
Objectif : Assurer un service de transmission fiable entre processus (donc
de bout en bout, "end to end").
Le premier des niveaux utilisable directement par l'utilisateur final pour
dvelopper des applications.
Il rsume les fonctions de tlcommunications des couches basses.

Fonctions ralises (selon les options de conception)

Gestion des connexions.


Multiplexage des connexions de transport sur des connexions de rseaux.
Contrle d'erreur.
Contrle de flux.
Contrle de squence.
Segmentation.
Gestion de la qualit de service.

Exemples de protocoles de transports:

Internet TCP Transmission Control Protocol (en connexion).


Internet UDP User Datagram Protocol (sans connexion).
Internet RTP Real-Time Transport Protocol (orient donnes multimdia).
Autres protocoles : Novell SPX "Sequenced Packet eXchange" , IBM SNA84
Niveau "Transmission Control, OSI

5 - Niveau Session (1):


Lapproche OSI
Objectif : le niveau session structure et synchronise le dialogue entre deux
entits.
Le transport offre une voie logique de communication par message
asynchrone ("un tube") sans organisation spcifique des donnes changes.
La session permet de structurer les changes pour les coordonner.

L'approche OSI de la couche session


La session dfinit des fonctions de reprises sur pannes et de
synchronisation
Structuration des changes en units de travail

Activits (travail important)


Dialogue (partie d'un travail)
Notion de point de synchronisation pour dlimiter des parties d'un change.

Fonctions de reprise arrire en cas de panne.


Difficult majeure: la session OSI a t dfinie prmaturment alors
que le domaine de la structuration et de la synchronisation rpartie tait peu
avanc.
85

Niveau Session (2) :


Lappel de procdure distante
Objectif : lappel de Procdure Distante APD RPC Remote
Procedure Call permet un usager dexcuter une procdure
ou une fonction sur un autre site
En lui passant dans un message d'appel des paramtres d'appel.
En recevant en retour des paramtres en rsultat.
Un mode de communication synchrone deux messages.

Problme difficile

Assurer en environnement rparti une smantique pour l'appel de


procdure distante voisine de celle connue en univers centralis.

Exemples:

SUN-RPC : Remote Procedure Call


OSF-DCE:Open Software Foundation/Distributed Computing Environment
OMG-CORBA: Object Management Group/Common Object Request
Broker Architecture
Java-RMI : Remote Method Invocation.
Web Services : SOAP Simple Object Access Protocol.
86

6 - Niveau Prsentation
Objectif : grer la reprsentation (le codage) des donnes changes.
Les conversions

Ncessaires pour tous les types de donnes


Types chanes de caractres.
Types numriques: entiers, flottants, ...
Types complexes: articles, ensembles, unions, tableaux...

Dfinition de deux notions.

Syntaxe abstraite : permettant la dfinition d'une grande varit de structures


de donnes (analogue de la syntaxe de dfinition de types dans un langage
volu).
Syntaxe de transfert : une reprsentation unique dans le rseau utilise pour
transfrer les donnes dans les messages.

Exemples de niveau prsentation:

Rseaux publics: Syntaxe abstraite ASN1 X208 Syntaxe de transfert X209.


SUN-OS: XDR : "eXternal Data Representation".
CORBA IDL Interface Definition Languages , CDR Common data
Representation.
Web Services : WSDL Web Services Definition Languages , XML eXtended
87
Markup Language

7 - Niveau Application
Objectif : Le niveau application est dfini pour fournir
l'utilisateur des fonctions dont il a besoin
couramment.
en termes d'un cadre de dveloppement d'une
application informatique rpartie (structuration objet),
en termes de "bibliothques" de protocoles (fonctions
rseaux) prdfinies qui dchargent l'utilisateur de travaux
rptitifs de programmation d'applications souvent utilises.

Les moyens prcdents permettent lutilisateur


de dvelopper ses propres applications considres
elles aussi comme de niveau application.
88

Quelques exemples de protocoles


de niveau application (1)
Dsignation : Crer des espaces de noms et grer des annuaires
permettant un utilisateur de retrouver des caractristiques associes ces
noms (principalement l'adresse rseau d'un correspondant).
Exemples : Internet DNS Domain Name System , LDAP Lightweight Directory
Access Protocol.

Messagerie : Permettre d'changer du courrier lectronique entre usagers


Exemples : Internet SMTP Simple Mail Transfer Protocol, protocoles de relve
de courrier POP Post Office Protocol, IMAP Internet Mail Access Protocol, format
dchange MIME Multimdia Internet Mail Exchange.

L'change de documents lectroniques : Permettre d'changer des


documents structurs (textes, images, son, vido).
Exemples : Documents gnraux WEB Protocole HTTP, Langages de
structuration de documents HTML Hyper Text Markup Language et XML Extended
Markup Language
L'change de donnes informatises: change de documents administratifs
standards sur des rseaux de transmission de donnes (commandes, factures, ....)
entre agents conomiques. Normes EDI Electronic Data Interchange
89

Quelques exemples de protocoles


de niveau application (2)
Transfert de fichier : Dplacer des fichiers (plats en gnral
d'un site un autre).
Trs nombreux protocoles proposs
Exemple : Internet FTP File Transfer Protocol

Accs aux fichiers distants : Accs unifi en univers rparti


diffrents fichiers (ralisation des requtes d'accs).
Exemple : SUN-OS NFS Network File System.

Gestion transactionnelle : Cohrence, persistance de


donnes distribues (assurer le maintien cohrent de donnes
accdes en parallle en prsence de pannes). Optimiser.
Exemple : X-Open DTP Distributed Transaction Processing. OSI TP.

Accs aux bases de donnes distantes: Permettre un


client d'accder une base de donnes distante (le plus
souvent au moyen de requtes SQL)
Exemple : ODBC Open Data Base Connectivity.

90

Conclusion : Modle de rfrence


en couches
Un incontestable succs : trs nombreuses ralisation de modles
darchitectures de rseau en couches dont lInternet.
Des critiques diverses de ces modles

Les niveaux ne sont pas galement remplis.


Certaines fonctions sont dplaces au cours du temps => Ncessaire volution
historique.
Certaines fonctions peuvent tre rptes plusieurs niveaux (selon les choix
des profils). Par exemple Contrle d'erreur ou Contrle de flux.
=> Ces
rptitions dues des dveloppements spars ne sont pas forcment inutiles.
Les modles en couches des rseaux sont domins par une approche
tlcommunications et n'intgrent pas assez les approches informatiques.
Exemple : gestion vnementielle des applications en mode message => volution
vers l'approche objet.

En fait les modles en couches des architectures de rseaux sont


utiliss dans les aspects transmission des informations.
Plus on se rapproche des applications informatiques
traditionnelles, plus on retrouve la structuration de ces
applications (exemple organisation de la couche application).
91

Introduction Notions gnrales

Quelques exemples
darchitectures de rseaux

92

Rseaux dinfrastructure (rseaux


dorsaux, "Backbone
"Backbone Networks")
Objectif : Dfinir des infrastructures de tlcommunications
permettant d'acheminer des donnes numriques
Sur nimporte quelle distance.
En gnral pour des volumes et des dbits trs importants
Pour des donnes varies : tlphonie, informatique,
multimdia etc (les diffrents trafics qu'un oprateur ou un
grand compte doit supporter).
Deux gnrations successives:
PDH "Plesiochronous Digital Hierarchy".
SDH "Synchronous Digital Hierarchy".
93

SDH "Synchronous
"Synchronous Digital
Hierarchy"
Hierarchy"
Hirarchie numrique synchrone : G707 , G708, G709 Normes
drives des travaux SONET ("Synchronous Optical NETwork") (Bellcore).
Solution de niveau physique et liaison :
Traite les problmes de PDH => un rseau d'infrastructure plus souple.
Verrouillage de trames, justification et pointeurs achemins dans les trames qui
permettent de compenser les problmes de dlais de propagation et dcalages
d'horloges.
Dbit
Pointeurs : L'accs des circuits de faibles Trame
STM-1 (OC3)
155,520 Mb/s
dbits dans des trames de dbits levs se
fait simplement (extraction rapide).
STM-4 (OC12)
622,080 Mb/s
Rseaux maills SDH et boucles SDH.

Exemples de normes et de dbits :

STM-16 (OC48)

2488,320 Mb/s

STM-64 (OC192)

9953,280 Mb/s

STM-128 (OC384)

20 Gb/s

STM-256 (OC768)

40 Gb/s

94

RTC Rseau Tlphonique


Commut
POTS Plain Old Telephone System.
Rseau filaire de transport de la voix mais aussi ouverture au
transport de donnes numriques (informatique, fax, ).
Interface de l'usager
Canaux de 300 3400 Hertz de bande passante.
Protocole de signalisation dans la bande : mission d'appel dcrochage
de combin), Enregistrement du numro demand, Surveillance, Libration
du circuit.

Fonctionnement interne
Multiplexage de voies MIC 64 Kb/s
Rseau de signalisation : Systme de signalisation no 7
Trs grand nombre de problmes rsoudre : Tolrance aux pannes,
quilibrage de charge, Acheminement international.
95

Architectures de rseaux sans fils


Rseaux personnels sans fils (WPAN)
Bluetooth : IEEE 802.15.1.
Rseaux locaux sans fils (WLAN)
WiFi : IEEE 802.11.
Rseaux mtropolitains sans fils (WMAN)
Wimax : IEEE 802.16.
Rseaux tendus sans fils (WWAN)
GSM : Global System for Mobile.
GPRS : General Packet Radio Service.
UMTS : Universal Mobile Telecommunication System.
96

Rseaux ATM
Asynchronous Transfer Mode
Objectif : Utilisation de la commutation de paquet pour
construire un rseau intgration de services haut dbit.
RNIS-LB large bande B-ISDNBroadband Integrated Service Data Network

Hirarchie des protocoles


Contrle

Donnes

Couche suprieure
AAL Couche d'adaptation
- rseau
ATM Couche liaison
SDH

U
S
A
G
E
R

Couche physique
97

Rseaux Locaux
Local Area Networks
Objectif : Dfinir des moyens de communication d'entreprise

dbit lev (10Mb/s 10 Giga bits/s) sur des distances


courtes (kilomtres).

Le niveau liaison dans les rseaux locaux de type IEEE802 ou ISO 8802
dfinit le tramage et rsout le problme d'accs au mdium ("MAC Medium
Access Control"). Il dfinit le codage de niveau physique.
LIAISON
PHYSIQUE

Point point
802 - 2
Accs au mdium 802.X (3->N)
802.X (3->N)

Exemples de quatre architecture de rseaux locaux


IEEE 802-3 Ethernet : Rseau comptition sur bus filaire.
IEEE 802.11 Wifi : Rseau comptition sur voie radio.
98

Architectures compltes :
Internet
Hritier du rseau ARPANET
Construction du rseau ARPANET partir de 1967 sous
forme de contrats entre l'ARPA (ministre de la dfense des
USA) et des organismes industriels et universitaires.
Dveloppement de protocoles de transmission (couches
basses) aujourd'hui abandonns puis dveloppement
d'applications : beaucoup sont encore utilises (transfert de
fichiers FTP, accs distant TELNET,... ).

INTERNET
Cration suite la sparation d'ARPANET en 1983 entre un
rseau militaire et un rseau civil.
Architecture 7 couches en volution constante pour tenir
compte des progrs technologiques et recherche.
99

Organisation de la pile Internet


7. Application
6. Prsentation

SMTP "Simple
Mail Transfer
Protocol"

FTP: "File
Transfer
Protocol"

3. Rseau
2. Liaison
1. Physique

NFS: "Network
File System"
XDR:"External
Data
Representation"
RPC:"Remote
Procedure Call"

5. Session
4. Transport

Applications pile
SUN/OS

Applications TCP/IP
directes
EXEMPLES

TCP: Transmission Control Protocol (connect)


UDP: User Datagram Protocol (non connect)
IP: Internet Protocol
Encapsulation IP sur LAN ou PPP
Pratiquement tout support de transmission
Lignes
Rseaux
Publics spcialises
Point Point

Rseau
Rseaux tlphonique
Locaux
RNIS, ATM

100

Introduction Notions gnrales

Conclusion

101

Conclusion : Notions Gnrales


Domaine des rseaux informatiques : un axe essentiel du
dveloppement des techniques numriques (donnes, son,
images).
Domaine vaste et complexe qui comporte aussi bien des
techniques de tlcommunications (plutt matriels) que des
aspects de plus en plus smantiques (logiciels) des interactions
entre machines.
Grande htrognit des propositions malgr des efforts de
normalisation et d'homognisation multiples.
Evolutivit des concepts et des techniques trs importante.
Importance considrable des perspectives de
dveloppement industriel.
102

Second Chapitre

Niveau Physique

103

Plan du cours physique


Transmission sur un canal
Transmission en bande limite
Transmission en prsence de bruit
Dtection et correction des erreurs
Reprsentation des signaux

Technologie du niveau physique


Les contrleurs
Les interfaces standards
Les modems
Les voies de communication
Les rseaux au niveau physique
Rseau tlphonique commut
Rseaux PDH et SDH

104

Rappel des objectifs du


niveau physique
Dfinition :
Transmission effective des informations
binaires sur une voie physique en sadaptant aux
contraintes du support physique utilis.

Problmes rsoudre
Problmes de synchronisation : dlimitation
des informations significatives.
Problmes de modulation : reprsentation des
bits (lectronique ou optique).
Problmes mcanique : ralisation des
105
connecteurs (connectique).

Niveau Physique

Premire partie

Transmission du signal

106

Introduction : canal de
transmission
Disposer d'un support
Physique qui vhicule les
signaux lectromagntiques:

Ordinateur A

fils mtalliques => signaux lectriques


Atmosphre
=> ondes radio
fibre optique => lumire

Contrleur
Source

Canal

Ordinateur B

Dispositifs
d'adaptation au
canal (modems)
Milieu

Destination

Canal de transmission : une source (dispositif d'adaptation


en mission), un mdium (un milieu de transmission) et une
destination (dispositif d'adaptation en rception).
Type de canal de transmission tudi : unidirectionnel
(ou simplexe).
107

Problme principal du canal :


le dbit binaire
Quel dbit d'information peut-tre
transmis par un canal de transmission en
fonction des caractristiques de ce canal ?
La bande passante : bande des frquences qui
sont transmises par le canal.
La dformation du signal : distorsions
apportes par les imperfections de la transmission.
Le bruit : influences externes provoques dans le
canal par le milieu extrieur.
108

Etude 1 : Canal sans bruit en bande


limite
La bande de frquence est limite une valeur B.
On ne sintresse pas au problme des bruits additifs.
La source code les donnes mettre (les bits) par une
fonction g(t) du temps : une reprsentation dans le domaine
temporel dun signal numrique ou analogique/continu.
g(t)
g(t)
0 1 0 1 1
t

Outil de cette tude : l'analyse de Fourier.


Objectif : Introduire l'importance de la disponibilit d'une
109
large bande passante => passer dans le domaine frquentiel.

Fonctions sinusoides
On dcompose un signal selon un somme de fonctions
sinusodes.
Le signal analogique lmentaire est le sinus (ou le cosinus).

g (t ) = c sin(2ft + )

Signal priodique caractris par trois paramtres:


amplitude c, frquence f, phase
g(t) +c
Priode T avec f=1/T
t

c sin( )
-c

110

a) Cas ou la fonction g(t) est


priodique
Correspond une prsentation dans un cas trs
particulier: g est priodique (par exemple une horloge).
g(t) peut-tre reprsente comme une somme infinie de
+
fonctions sinus ou cosinus.

g (t ) = c0 + cn cos(2nft n )

n =1
f la frquence du signal priodique f = 1/T ou T est la priode.
Chaque terme en cosinus est caractris par :
. nf est une harmonique du signal.
. une composante d'amplitude:
. une composante de phase: n

cn
111

Reprsentation spectrale
Spectre d'amplitude : Reprsentation des amplitudes cn en
fonction des frquences.
Fonction priodique=> spectre de raies : une raie est
associe chaque harmonique.
Amplitude

A(f)

0 f 2f

nf

Frquence
f

Spectre de puissance :Reprsentation des puissances


contenues dans les diffrentes harmoniques.
Puissance moyenne d'un signal Puissance P(f)
Frquence
T

P= 1
T

g(t)2 dt =
0

c 2n
n=0

0 f 2f

nf

112

Premire application de cette


reprsentation
Lorsque l'on transmet un signal A(f)
on le dforme de manire
B
diffrente selon les frquences.
f
Dformation fondamentale : on
ne transmet jamais toutes les
Filtre passe-bas
A(f)
frquences => Les frquences
leves disparaissent.
B
Un canal se comporte comme
f
un filtre.
Filtre passe-bande
Exemple : Bande passante rseau
113
tlphonique commut 300-3400 Hz

Distorsion due la suppression des


frquences leves sur une horloge
1.2
f0(x)
f1(x)
f2(x)
f3(x)
f4(x)

0.8

0.6

f0(x)

0.4

f1(x)

0.2

f2(x)

f4(x)
f3(x)

-0.2
-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

114

b) Cas ou la fonction g(t) est


non priodique
Intgrale de Fourier
Un signal non priodique peut tre mis sous la
forme d'une intgrale de fonction sinusodale:
g (t ) =

S ( ) cos(t ( ))d

0
Spectre continu : Pour toutes les frquences f
(avec =2f la pulsation) on a :

S()
( )

une amplitude
une phase

115

Notion de fonction de
transfert
Canal par nature imparfait => chaque composante est
dforme de faon diffrente selon la frquence.
Fonction de transfert du canal A(
), B(
) .
Attnuation en amplitude : A(
) le coefficient multiplicatif qui
caractrise l'attnuation en fonction de la frquence (rsistance,
dispersion donde).
Retard de phase : B(
) le coefficient additif caractrisant le retard en
fonction de la frquence.

Modifications apportes au signal: Si le signal g(t) est


mis, le signal reu est alors r(t): +

r (t ) =

g (t ) =

S ( ) cos(t ( ))d
0

A( )S ( ) cos(t ( ) + B( ))d
0

116

Mesure de lattnuation:
le dcibel
L'attnuation (affaiblissement) est une perte de puissance
qui sexprime en dcibels:
S=10*log10(PS/PE) (valeur ngative).
Le dcibel est la reprsentation en logarithmes d'un
rapport de puissances (meilleure chelle, et les pertes en
cascade sexprime par des additions).
On peut aussi exprimer les pertes sur des tensions
N=20*log10(TS/TE) puisque P=U2/R.

Une puissance de signal peut tre donne en dcibel par


watt ou par milliwatt dBmW:
SdBmW=10*log10P (ou P est en milliwatt).
Pour contrecarrer laffaiblissement on utilise des
amplificateurs qui procurent un gain.
G=10*log10(PS/PE) a une valeur positive.

117

Engagements contractuels sur les


voies de communication
Notion de gabarit : Performance les plus mauvaises
offertes par la voie en termes d'attnuation et de
dphasage: les gabarits.
Exemple: Gabarit de rseau tlphonique commut
Affaiblissement en dcibel

6
5

Dphasage en ms

1,5
1
f en hz

300 500

1900

2600

800 1000

f en hz
2400 2600
118

Rsultat dchantillonnage de
Shannon, Nyquist
B La largeur de bande d'un filtre en hertz : on transmet
un signal au travers de ce filtre.
R La rapidit de modulation en bauds : le nombre
d'intervalles lmentaires par unit de temps (secondes) qui
permettent l'change dun chantillon (dun symbole).
V La valence d'un signal chantillonn : le nombre de
symboles diffrents qui peuvent tre distingus par intervalle.
Q La quantit d'information par intervalle en bits

Q = log2 V
C Le dbit maximum d'informations en bits/seconde

C= R log2 V = 2B log2 V

119

Interprtation de Shannon, Nyquist


Thorme dchantillonnage
Un signal peut (thoriquement) tre reconstruit partir dune frquence
dchantillonnage gale deux fois la largeur de bande (deux fois la
frquence maximale du signal pour un filtre passe-bas).
Soit encore : toutes les frquences infrieures la moiti de la
frquence dchantillonnage peuvent tre exactement restitues.
Exemple : Le son CD est chantillonn 44100 fois par seconde => on ne
peut restituer correctement que les frquences de 0 22050 Hz.

Rsultat de dbit maximum pour un signal support de


largeur de bande B.
Le dbit maximum thorique est atteint pour R = 2B (en chantillonnant
2B fois par unit de temps on atteint le dbit maximum).
Dans une bande B pour augmenter le dbit au il faut augmenter V la
120
valence (le nombre de symboles par intervalles lmentaires).

Etude 2: Transmission en
prsence de bruits.
Objectif de la thorie de l'information de Shannon
Modliser un canal soumis un bruit additif.
Dterminer la capacit maximum de transmission d'un canal

Origine des bruits


Thermiques : Bruit de fond des rsistances.
Diaphoniques : Influence permanente d'un conducteur
sur un autre.
Impulsionels : Influences transitoires des impulsions
Harmoniques : Phnomnes de battements, de rflexions.
121

Entropie dune source


Hypothses :
Une source met des messages (ou symboles) pris dans un ensemble
(un alphabet) donn fini (cas infini non trait ici)

X = x1 , x2 , x3 ,..., xk ,..., xM
Les messages mis sont alatoires sinon il n'y a pas de communication
d'information => Ensemble des probabilits a priori
p ( x1 ), p ( x2 ), p ( x3 ),..., p ( xk ),..., p ( xM )

L'entropie d'une source H : cest la quantit d'information


moyenne apporte par la source
Quantit d'information apporte par le message k : log 2 p( xk )
Quantit moyenne : esprance mathmatique pour tous les messages
M
possibles :

H = p ( xk ) log 2 p ( xk )
k =1

122

Influence du bruit:
probabilits a posteriori
Le rcepteur reoit des messages qui appartiennent un
ensemble qui n'est pas ncessairement identique celui mis
par la source.

Y = y1 , y2 , y3 ,..., yi ,..., y N

Le bruit intervient pour modifier un message mis xk en


un message reu yi selon une probabilit a posteriori
(probabilit conditionnelle) : la probabilit que l'metteur ait
envoy xk sachant que le rcepteur a vu arriver yi

p( xk / yi )
123

Information mutuelle et
capacit dun canal
Information mutuelle de deux messages mis et reus
La quantit d'information apporte lorsqu'on reoit yi alors
p( xk / yi )
que xk a t mis:

I ( xk , yi ) = log2 (

p ( xk )

Si yi et xk sont indpendants I(xk ,yi)=0


Si p(xk/yi)=1 on retrouve -log2(p(xk))
Information mutuelle moyenne : source/destinataire
Exemples:

I ( X , Y ) = X Y p( xk et yi ) I ( xk , yi )
Capacit d'un canal : La valeur maximum de l'information
mutuelle moyenne sur toutes les distributions a priori.

C = max p ( xk ) I ( X , Y )

124

Rsultats de Shannon
Premier rsultat de Shannon : une source n'est
caractrise que par son entropie.
On ne change rien sur l'information gnre par la source
en changeant de codage.
La seule mesure de linformation qui compte est lentropie
(son dbit en bit/unit de temps).
Second rsultat de Shannon : dbit maximum C
Si H C il existe une codification des messages qui sur une
priode suffisamment longue permet de transmettre les
messages avec une probabilit d'erreur rsiduelle aussi
faible que l'on veut.
Si H>C il n'existe pas de codification qui assure sur une
125
priode de dure arbitraire une transmission sans erreurs.

Interprtation de Shannon
Dans le premier cas : capacit du canal excdentaire
Sur une longue priode cet excdent est important.
Il permet d'ajouter des redondances (sans changer
l'entropie de la source) => On peut gnrer des codes
correcteurs d'erreur aussi efficaces que l'on veut.
On abaisse ainsi le taux d'erreur rsiduel arbitrairement.
Dans le second cas : capacit du canal dficitaire
Sur une priode courte on peut transmettre correctement
mais ensuite on aura des erreurs non corriges.
Avant ce rsultat on pouvait penser que le bruit introduisait
une borne infranchissable sur le taux d'erreur rsiduel.
Shannon montre que le bruit intervient sur le dbit du
126
canal et non sur sa prcision.

Obtention dun dbit lev


Pour augmenter le dbit d'un canal taux
d'erreur donn on peut:
Augmenter la complexit de codage des
quipements terminaux pour se placer au plus prs
de la capacit maximale (des limites du thorme).
Augmenter la capacit du canal (bande
passante, puissance) en conservant des techniques
de codage simples.
Jouer sur les deux aspects.
127

Rsultat particulier de
Shannon
Canal de bande passante limite : B.
S
C = B log2 (1+ )
Puissance moyenne du signal : S
N
Puissance moyenne d'un bruit additif : N.
Bruit blanc: nergie rpartie de faon uniforme sur le
spectre
Gaussien: l'apparition d'un bruit suit une loi de Gauss.
Exemple: B= 3100 Hz 10 log10 S/N = 20 db
S/N = 100
C = 3100 * 6,6 = 20600 b/s
Remarque: Dans ce cas Shannon montre que le nombre de
niveaux max V qui peuvent tre discrimins est donn par:
S
2B log2 V = B log2 (1 + S/N)
V =
1 +
N 128

Niveau Physique

Dtection et correction
des erreurs

129

Introduction: Gnralits
concernant les codes de blocs
Existence de bruits qui perturbent les
transmissions.
Suite binaire mise M : un n uple binaire (un bloc).
Suite binaire reue M=> MM (des bits sont modifis).

Distance entre deux messages

d ( M , M ' ) = M (i ) M ' ( i )

001

011

101

111
000

i
100

010
110

Distance de Hamming : cest le nombre de bits dans M et


M' qui sont diffrents.
Gomtriquement : c'est une distance dans l'espace n
130
dimensions entre les points M, M.

Solution 1: Dtection des erreurs


et retransmission
Une ide de redondance temporelle (dans le temps).
A) Dtection d'erreur par adjonction de redondances : tous les
messages xi transmis on ajoute f(xi).

{ xi } --> { yi = (xi , f(xi) ) }


B) Vrification de f par le rcepteur : un message reu yj
yj = ( xj , zj ) est correct si zj = f(xj).
C) Retransmission si erreur.
Notion de code : A partir de l'ensemble des symboles mettre xi on cr
un ensemble yi de messages mis: un code.
Notion de distance dun code : cest la plus petite distance entre deux
symboles diffrents (distance des messages les plus proches infj,k [d( yj , yk )]
Un code de distance D est dtecteur de D-1 erreurs.
Des erreurs de distance suprieure D-1 peuvent ne pas tre
131
dtectes.

Solution 2: Correction des


erreurs (codes correcteurs)
Une ide de redondance spatiale (masquage derreur).
A) Comme prcdemment adjonction de redondances :
tous les messages xi transmis on ajoute f(xi).
B) Vrification de f par le rcepteur : si un message reu yj
appartient au code on laccepte.
C) Correction immdiate quand le message reu est erron
Message faux yj = ( xj , zj ) avec zj f(xj).
On fait l'hypothse que le bruit altre probablement un
petit nombre de bits.
On corrige un message erron par le mot du code
correct le plus proche du message erron reu.

( xi , f ( xi )) = inf k ( d (( xk , f ( xk )), ( x j , z j ))

132

Codes correcteurs:
reprsentation gomtrique
On trace des sphres centres sur chaque mot d'un code (les
messages corrects) de rayon d (distance de Hamming).
d

Messages corrects: carrs noirs


Messages incorrects : croix.

Les erreurs de faible poids (portant sur un petit nombre de


bits) ont une probabilit d'apparition forte par rapport aux
erreurs de fort poids => correction des messages dans une
sphre par le message au centre de la sphre.
Possibilit de faire des erreurs de correction si le poids
des erreurs est trop lev.
133

Codes correcteurs:
Nombre derreurs corriges
Code correcteur de distance D.
d

Si D=2d : correction
des erreurs de poids d-1.

Si D=2d+1 : correction
des erreurs de poids d.

D = 2d

d-1

D = 2d+1

Problme de construction d'un code correcteur: carter


les mots du code dans lespace, le plus possible et de faon
rgulire (par le choix de la fonction de redondance f). 134

Paramtres dun code


a) Taux d'erreur brut

t=

Qualit de la voie

b) Efficacit d'un code

e=

Nombre de messages faux


Nombre de messages total
Nombre de messages reconnus faux

En dtection

c) Taux d'erreur rsiduel


Erreurs non dtectes
ou non corriges

b) Rendement d'un code


Surcharge due au codage

q=

r=

Nombre de messages total


Nombre de messages
finalement faux
Nombre de messages total
Nombre de bits utiles reus
Nombre total de bits transmis
135

Exemple 1 de codes :
Codes linaires en blocs
Mots du code (blocs): ensemble de n-uples binaires
(vecteurs de n bits) formant un espace vectoriel sur (0,1) pour
les oprations ou exclusif , et logique . (notion de corps de
Galois deux lments GF(2)).

0 1
0 0 1
1 1 0

. 0 1
0 0 0
1 0 1

Notion despace vectoriel : Si X1 et X2 appartiennent au


code
X1

X2 appartient au code.

Quelque soit k scalaire k.X1 appartient au code => ici 0 appartient au


code.
136

Matrice de gnration dun code


linaire
Matrice G rectangulaire qui fait correspondre un message Y
de k bits un mot du code X de n bits (G a k lignes, n colonnes).
X =Y . G
(1,n) (1,k)

(k,n)

G ajoute une redondance de m= n-k bits.


Exemple: le contrle de parit (code linaire le plus simple).
(x1,... , xk, xk+1)=(x1, ... , xk)
xk+1 =x11xx2 ... x k

1
1
0

01
1
1
11

Notion de code spar : Bits d'informations, puis


bits de redondance (contrle, parit).
... , x )
G est de la forme G =[ Ik,kPk,n-k] X = (y ,y , ... , y , x 137
1 2
k k+1
n

Matrice de contrle dun code


linaire
V' l'espace orthogonal de V : tout mot du code X dans V a
un produit scalaire nul avec tout vecteur X dans V'.
Tout message X' en erreur (n'appartenant pas au code)
appartient V'.
Tout message X' (en erreur) a un produit scalaire non nul
avec au moins un vecteur V
Soit H (n, n-k) la matrice gnratrice de l'orthogonal : la
matrice forme au moyen des vecteurs d'une base de V'.
Syndrome derreur d'un message:

S=XH

Si S = 0 le message est prsum correct


Si S diffrent de 0 le message est erron.
138

Construction de la matrice de
contrle
Trs facile : pour les codes spars
On vrifie que si G = [ Ik,kPk,n-k ]
Alors H =

Pk,n-k
In-k,n-k

Exemple du contrle de parit:G =

1
0

01
1

11

H= [ 1 1 .... 1 1 1]
S=(X1, , XK+1)H
S=X1 XK+1
Application : codes de Hamming (mmoires)

139

Exemple 2 de codes :
Codes polynomiaux
Principe de la gnration de la redondance.
A un message par exemple 1 1 0 1 1 1 on associe un polynme -->

x 5 x 4 x 2 x 1

On veut ajouter deux bits de redondance on multiplie par x2 -->

x 7 x 6 x 4 x 3 x 2

On choisit un polynme gnrateur de degr infrieur au degr du


polynme message:
x2x1
x7x6 x4x3x2
Exemple : x 2 x 1
x7x6x5
5x31
x
Les bits de redondance ajouts
5x4x3x2
x
au message sont les coefficients
5x4x3
x
du polynme reste dans la division
x2
du polynme message
x2x1
par le polynme gnrateur.
Le message transmis est donc: 1 1 0 1 1 1 1 1
x1 140

Codes polynomiaux:
Prsentation formelle
Message de k bits : M
Polynme associ au message M(x) de degr k-1: On
dcale de m positions ! x m M (x)
G(x) le polynme gnrateur du code de degr m.
On effectue la division: xm M(x) = G(x) Q(x) R(x)
On obtient un reste R(x) de degr m-1 au plus qui a la
proprit suivante.
xm M(x) R(x) = G(x) Q(x)
L'ensemble des polynmes x m M(x) R(x)
forment un code polynomial (tout mot du code donne un
reste nul dans la division par G(x))
Tout mot hors du code (message erron) donne un reste
non nul.
141

Codes polynomiaux:
Proprits
Nombreuses proprits des codes polynomiaux: 2 exemples.
A) Un code polynomial dtecte toute erreur simple.
Une erreur simple est une erreur additive de la forme: E (x)= x i
Pour que cette erreur soit indtecte, E(x) doit tre divisible par G(x).
Si G(x) a plus d'un seul terme il ne peut tre diviseur de E(x).

B) Un code polynomial qui gnre m bits de redondance


dtecte toutes les rafales d'erreurs de longueur < m.
Une rafale de longueur k est une erreur additive de la forme:

E(x)=x i (x k-1 x k-2 . . . x 2 x 1)

Pour que cette erreur soit indtecte, E(x) doit tre divisible par G(x).
A) Si G(x) a un terme constant il ne peut pas avoir xi en facteur.
B) Si k-1 est plus petit ou gal m-1 le degr de

( x k -1 x k -2 . . . x 2 x 1 )

est infrieur au degr de G(x) et G(x) ne peut donc le diviser.

142

Codes polynomiaux:
Exemples de polynmes
CRC-12 : Dfinition d'un polynme gnrant 12 bits de
redondance (systmes tlcoms, caractres 6 bits).

G(x)=x12x11x3x2x1
Avis V41 CCITT : Dfinition d'un polynme CRC-CCITT
(protocoles de liaisons en point point drivs de HDLC).
G (x )= x 16 x 12 x 5 1
CRC-IEEE 802 : Dfinition d'un polynme gnrant 32 bits de
redondance pour les rseaux locaux: Ethernet, Wifi.
G (x )= x 3 2 x 2 6 x 2 3 x 2 2 x 1 6 x 1 2

x 11 x 10 x 8 x 7 x 5 x 4 x 2 x 1

143

Niveau Physique

Reprsentation des signaux :


Synchronisation, Modulation

144

Introduction :
Transmission en bande de base
On s'intresse une transmission srie.
Le signal est dans sa reprsentation de base (tel quil est
gnr par un systme informatique).
Exemple type: le codage NRZ-L en reprsentation
temporelle et frquentielle.
a (f)

s (t)
01001110 011
t

Le signal occupe une bande de frquence naturelle en


fonction de sa reprsentation et il est envoy directement
sous cette forme dans un mdium de communication. 145

Transmission en modulation
Modulation (d'onde porteuse) Le signal s(t) est
reprsent au moyen d'une onde porteuse qui modifie le
codage de base pour s'adapter un canal de transmission.
b (f)
Positionnement dans le spectre a (f)
Remise en forme pour occuper
la bande disponible.
f
s (t)
0 1 0 0 1 1 1 0 0

Exemple type:
s (t)sin w t
la modulation d'amplitude

t
a0
a1

t
146

Introduction :
Problmes de synchronisation
Le rcepteur d'un signal doit connatre la
position de chaque bit pour chantillonner
correctement les valeurs.
Nombreuses difficults:
Echantillonnage des bits en prsence de
multiples alas de fonctionnement (gigue, drive
entre les horloges, dlais de propagation,...).
Dtermination du dbut des suites binaires
significatives (notion de trames de bit).
147

Terminologie concernant les


signaux (1)
Signaux Isochrones (gaux)
Il existe un cart fixe entre deux signaux successifs.
Exemple son : le rseau tlphonique chantillons de 8
bits isochrones selon un intervalle de 125 microseconde.
Exemple image : codage vido 50 images par seconde
images espaces de 40 millisecondes.
L'intervalle constant doit tre reproduit fidlement chez le
rcepteur sous peine de perte de qualit de la restitution.
Signaux anisochrones (non gaux)
Il n'y a pas d'intervalle fixe entre les signaux.
Il peut tre trs important de restituer l'espacement
variable de l'mission lors de la dlivrance au rcepteur
148
(contraintes temps rel).

Terminologie concernant les


signaux (2)
Signaux synchrones (ensembles)
Des signaux synchrones sont la mme cadence (sont
rythms par la mme horloge).

Signaux asynchrones (antonyme du prcdent)


Des signaux asynchrones n'apparaissent pas selon un
rythme constant dfini par une horloge mais apparaissent
alatoirement.

Signaux plsiochrones (voisins)


Des signaux plsiochrones sont rythms par des horloges
dont les frquences sont peu diffrentes (plsio =
voisin).
149

Transmission synchrone
Horloge transmise sur un canal s (t)
spcial entre metteur et destinataire.
0 1 0 0 1 1 1 0 0 1 1
Les deux sites utilisent
la mme base de temps
t
=> Gnration et chantillonnage
selon le mme rythme.
Ncessite une bonne qualit h (t)
d'acheminement de l'horloge
=> Solution assez coteuse en
bande passante ncessitant
t
un canal spcial pour l'horloge.
150

Transmission asynchrone
Start Stop
Pas d'horloge commune =>asynchronisme sur l'instant de
commencement d'une suite binaire.
On ne transmet que des suites binaires courtes
isochrones (en fait des octets).
On table sur une drive relative entre l'horloge d'mission
et de rception qui permet de ne pas perdre la synchro bit.
Adapt des dbits faibles.
s (t)
0 0 1

Niveau
de
rfrence

Bit
start

Un octet
1 1 0 0

Changement par rapport


au niveau de rfrence

1 1

Niveau
de
rfrence

Bits
stop

1 ou 1,5 ou 2
Ici 2 151

Transmission plsiochrone
Les horloges metteur et destinataire ont des frquences
diffrentes mais voisines (drive max tolre lie au dbit).
Le rcepteur synchronise une horloge de rception sur
l'horloge d'mission. Exemple: usage d'un prambule qui est
un signal dhorloge prsent dans tout message.
Le message est ensuite chantillonn correctement par
le rcepteur mais il est limit en taille selon les drives
relative des horloges tolres.
Adaptation aux vitesses relatives des horloges:
=> techniques de justification.
Dtermination de la position des informations significatives:
=> techniques de pointeurs.
152
Dtails : PDH et SDH.

Techniques de codage
Signaux bande de base en amplitude
Codages NRZ "Non Retour Zro"
Le niveau est constant sur un intervalle (il n'y a pas de
transition de retour zro)
NRZ-L ("Level") On utilise deux niveaux pour coder le 0 et le 1.
Exemple: V24.
NRZI ("Inverted") Codage diffrentiel des 1. Chaque nouveau 1 entrane
un changement de polarit par rapport au prcdent 1 alors que le 0
n'entrane pas de modification. Exemple: Ethernet 100 sur fibre.
NRZI

NRZ-L

0 1 0 0 1 1 1 0 0

0 1 0 0 1 1 1 0 0
t

t
153

Signaux bande de base en amplitude


Les codages AMI et pseudo ternaire
Trois niveaux : 0 , +V, -V volts (code bipolaire).
Bipolaire AMI: "Alternate Mark Inversion" Un 0 est reprsent
par le signal 0 volts et un 1 est reprsent alternativement par
+V et -V volts : Exemple: RNIS Bus d'abonn.
AMI
0 1 0 0 1 1 1 0 0
t

Pseudo ternaire : On inverse le 0 et le 1 dans le schma


prcdent.
154

Techniques d'embrouillage
("Scrambling
("Scrambling")
Scrambling")
Problme des codages NRZ ou AMI : Absence de
transitions dans de longues squences de symboles identiques.
Solution => Utiliser un codage prliminaire qui permet de
forcer l'apparition de transitions dans ces squences.

Embrouillage par code polynomial


Technique employe dans un embrouilleur additif : Ou
exclusif avec une squence pseudo alatoire (0 et 1 alatoires).
La squence pseudo-alatoire peut-tre obtenue comme le
quotient dune division rpte indfiniment par un polynme
gnrateur (circuit LFSR Linear Feedback Shift Register).
Opration ou exclusif avec la mme squence l'arrive.
Exemple: Rseau ATM => Polynme X31

X28 1

155

Codages HDB3 et B8ZS


Codage pour rsoudre le problme des suites de 0 dans le code AMI.
On remplace des suites de 0 de taille fixe (soit 4 soit 8 bits) sans
transitions par des suites de longueur identique possdant des transitions.

B8 ZS "Bipolar with eight zero substitution


Si la dernire excursion tait positive (+) : 8 bits 0 => 000+-0-+
Si la dernire excursion tait ngative (-) : 8 bits 0 => 000-+0+ Utilisation: Rseau tlphonique RNIS amricain.
HDB3 "High Density Bipolar - three zero"
4 bits conscutifs 0 sont
remplacs selon la polarit de la
Polarit
Nombre
Nombre
prcdente
d'excursions impair
d'excursions pair
dernire excursion et le nombre
d'excursions depuis la dernire
000 +00+
violation.
+
000+
-00156
Utilisation : RNIS europen.

Exemples B8ZS et HDB3


AMI
1

1
t

B8ZS
1 1

0
V
+

0 1
V
+

V
HDB3
1 1

t
157

Codages nB/mB
On reprsente n bits transmettre par m bits (n<m).
On peut ainsi choisir des configurations m bits qui
prsentent un bon quilibre de 0 et de 1 (un nombre suffisant
de transitions).
Exemple: Ethernet 100 Mb/s (et FDDI) Codage 4B/5B : 4
bits usagers sont transmis par des groupes de 5 bits.
On choisit des configurations binaires telles qu'il existe toujours au moins
une transition par groupe de trois bits.
Les autres configurations sont utilises pour la signalisation (dlimiteurs
de trames, acquittements en fin de trame...)

Autres exemples: Rseau Ethernet Gigabit et FC ("Fiber


Channel") Codage 8B/10B.
158

Signaux bande de base en amplitude


Modulation dimpulsion en amplitude
PAM Pulse Amplitude Modulation.
Impulsions damplitudes diffrentes (codages RZ avec
retour zro) => transitions sur tous les bits.
Exemple PAM-5 : on utilise 5 impulsions (autres versions
PAM-8 PAM-10 PAM-12 PAM-16).
Utilisation PAM-5: Ethernet 100 Base T2.
PAM5
+2
+1
0
-1
-2

159

Signaux bande de base en phase


Code biphase (code Manchester)
Utilisation de deux signaux dhorloge en opposition de phase.
Le signal prsente toujours une transition au milieu de l'intervalle:
Pour coder un 0 transition vers le haut.
Pour coder un 1 transition vers le bas.

Biphase
Manchester

0 1 0 0 1 1 1 0 0
t

Exemple: Ethernet 10 Mb/s.


Avantages: Bonne occupation de la bande. Mise en uvre trs simple. Pas
de composante continue (pas de problmes sur les suites de symboles
identiques). Transitions en milieu de priode.
160
Inconvnients: Ncessite une bande passante trs large.

Signaux bande de base en phase


Code biphase diffrentiel
Codage en phase: On a toujours deux signaux en opposition de phase.
Codage du 0 : transition en dbut de priode (le 0 provoque toujours un
changement de signal => modulation diffrentielle).
Codage du 1 : absence de transition (le 1 conserve le mme signal).
Exemple: Boucle IBM IEEE 802.5.
Avantages Inconvnients: Voisins de ceux du code Manchester.

Biphase diffrentiel
0 1 0 0 1 1 1 0

0
t

161

Comparaison des diffrentes


techniques de codage
Puissance par unit de bande passante de diffrents codages en fonction de
la frquence normalise.
1.4

B8ZS, HDB3

1.2
1.0

NRZI

0.8

AMI

0.6

Manchester

0.4
0.2

NRZI
0.2

0.4

0.6

0.8

1.0

1.2

1.4

1.6

1.8

2.0

162

La transmission analogique
Modulation d'onde porteuse
Limitation des bandes de frquence disponibles
Exemple : Tlphone 300 3400 Hertz.

Affaiblissement et dformation des signaux dus


aux caractristiques des cbles, ou des voies
hertziennes....
Modems : Ncessit de dispositifs d'adaptation de la
source au canal (modulation lmission /
dmodulation la rception).
Terminologie UIT-CCITT : les ETCD (quipement
de terminaison de circuit de donnes).
163

Transmission en modulation
Principe gnral
Signal de base : S(t)
Porteuse sinusodale : P(t)=Ao sin (ot + o)
Modulation d'onde porteuse :
On transforme S(t) en X(t) = f(S(t)) en introduisant
l'information du signal de base dans l'une des
composantes.
Amplitude A
Frquence
Phase
164

Modulation damplitude, de frquence,


de phase
Modulation damplitude : X(t) = f(S(t)) = A(S(t) sin (0t + o)
Exemple de base: Utilisation de deux amplitudes
Codage du 0 : A1 sin (0t + 0) Codage du 1 : A2 sin (0t + 0)
Modulation de frquence : X(t) = f(S(t)) = Ao sin ((S(t)t + o)
Exemple de base: Utilisation de deux frquences 1 et 2 .
Modulation FSK "Frequency Shift keying"
Codage du 0 : Ao sin (1t + o) Codage du 1 : Ao sin (2t + o)
Modulation de phase : X(t) = f(S(t)) = Ao sin (0t + (S(t))
Exemple de base: Utilisation de deux phases
Modulation PSK "Phase Shift keying"
Codage du 0 : Ao sin (0t + 1) Codage du 1 : Ao sin (0t + 2)

165

Transmission en modulation
Exemples
0

Amplitude

Frquence
Phase
166

Modulations combines damplitude


et de phase
Exemple 1 : Modulation QPSK Quadrature Phase
Shift Keying.
Quatre signaux de phases
diffrentes et de mme amplitude.
Utilisation : Wifi.

Exemple 2 : QAM Quadrature


Amplitude Modulation
Modulation d'amplitude et de phase.
Diagramme spatial ou constellation
Utilisation: nombreuses ADSL,WIFI...
Exemple: QAM-32 Modem V32 (4+1)bits/baud.

167

Niveau Physique

Seconde partie

Technologie du niveau
physique

168

Introduction
ETTD

ETCD

Source

Modem

Interface standard

Mdium

ETCD

ETTD

Modem

Dest

Interface standard
Circuit de donnes (physique)
Liaison de donnes (liaison)

ETTD : quipement terminal de traitement des donnes


ETCD : quipement de terminaison de circuit de donnes.

Diffrents lments intervenant dans la transmission


Contrleur de communication.
Interface standard.
Modem.
169
Mdium/Voie de communication.

Technologie du niveau Physique

Contrleurs de
communications
(cartes rseaux)

170

Diffrentes fonctions dun contrleur


(dune carte rseau) (1)
Carte rseau = carte dentre/sortie
Dirige par des commandes dentres sorties
Gnrant des interruptions.
Lecture/criture des informations en mmoire centrale
(mode canal , DMA Direct Memory Access).
Orientation principale: communications sries.

Transmission en mission
Gestion des dlimiteurs.
Emission donnes: acquisition des mots mmoire,
srialisation, modulation.
Gnration des codes dtecteurs (ou correcteurs).
171

Diffrentes fonctions dun contrleur


(dune carte rseau) (2)
Transmission en rception
Gestion des dlimiteurs.
Dsrialisation, criture avec gestion de mmoire
tampon (registres dcalages, ou mmoire locale carte).
Vrification des codes.

Gestion de l'accs au mdium (rseaux locaux).


Administration/configuration
Adaptation aux diffrents dbits
Adaptation aux diffrents modes:synchrone, asynchrone
Gestion du mot d'tat (status word).

Logiciel systme de pilotage : pilote (driver).


172

Technologie du niveau Physique

Interfaces standards

173

Introduction aux interfaces


standards
Notion dinterface standard: Lensemble des spcifications
mcaniques et des utilisations des signaux lectriques
permettant une normalisation des interfaces de communication
physique ETTD-ETCD.
Exemples: (trs trs grande varit).
Interfaces sries ITU/CCITT V24/V28 RS232C; RS422/V11,
RS423/V12 , V35, X21.
Interface USB (Universal Serial Bus).
Interface Firewire IEEE 1394.
.

Autre besoin : interfaces ETCD mdium de communication.


Interfaces tlphoniques (pratiquement diffrentes dans tous les
pays , RJ11)
174
.

Exemple de linterface V24


Lavis V24 du CCITT dfinit les spcifs fonctionnelles de
la jonction avec de nombreux modems bas dbit.
Lavis V28 correspond aux caractristiques lectriques
des signaux de la jonction.
Spcifications V24/V28 (ITU), RS232C (EIA) trs voisines
Les protocoles sont cods par des niveaux ouverts/ferms
sur des signaux (nomenclature srie 100) correspondant des
broches du connecteur DB25. Exemple: signal 125 broche 22.
Trois tapes principales
tablissement / libration du circuit
Initialisation
Transmission

175

Interface V24 :
Quelques signaux importants

tablissement et libration du circuit


125 (22): Indication d'appel (cot modem), ETCD -> ETTD.
(ex : sonnerie du tlphone)
108 (20): Autorisation de connexion (du modem) ETTD->ETCD.
107 (06): Acquittement (le modem est reli la ligne) ETCD -> ETTD.

Initialisation
105 (04): Demande pour mettre ETTD-> ETCD
106 (05): Prt mettre ETCD -> ETTD
109 (08): Dtection de porteuse ETCD -> ETTD

Transmission
103 (02): Donnes ETTD -> ETCD
104 (03): Donnes ETCD -> ETTD
113 (24): Horloge mission (gnre par le terminal)

176

Interface V24 :
Complments

Reprsentation logique de linterface


Terre de protection (1)
Transmission de donnes (2)

ETTD

Rception de donnes (3)


Demande pour mettre (4)
Prt mettre (5)
Poste de donnes prt (6)
Terre de signalisation (7)
Dtection du signal de ligne (8)

ETCD

Equipement terminal de donnes prt (20)

123

11 12 13

Connecteur (mle cot ETTD)


25
14
Normes lectriques V28
(-3V) (-25V)
: 1 logique
(+4V) (+25V)
: 0 logique (on prend -5,+5 v)

177

Technologie du niveau Physique

Modems

178

Catgories de modems
Modulateurs/dmodulateurs
1) Modems tlphoniques : utilisation du
tlphone fixe sur paire tlphonique.
Modems anciens (dbits faibles)
Modems ADSL Asymmetric Digital
Subscriber Line
2) Modems cables
HFC Hybrid Fiber Coaxial Cable : utilisation
des cbles de tldistribution.
179

Modems anciens
Exemple : Avis V23
Dbit : 600/1200 bits/seconde (Modem du minitel)
Transmission : asynchrone
Support utilisable : Rseau commut (2 fils) ou LS (4 fils)
Mode : Duplex l'alternat (ancien)
Duplex intgral : 600b/s ou 1200 b/s voie de retour 75b/s.
Principe : modulation de frquence pour les deux canaux
Voie
descendante

Voie de
retour

2100 Hz

390 Hz

1300 Hz

450 Hz

390 450

1300

2100180

Modems anciens
Exemple : Avis V32
Dbit : 2400,4800,9600 bits/seconde.
Transmission : synchrone.
Support utilisable : 2 fils ou Rseau Tlphonique Commut.
Mode : duplex intgral
Principe de modulation : QAM Quadrature Amplitude
Modulation)
Rapidit de modulation: 2400 bauds ;
Valence: 32 => Le dbit rel 12 000 b/s
est suprieur au dbit utile permettant
l'utilisation d'un code correcteur implant
par le modem.

181

Tableau des normes


de modems anciens
Mode

Dbit

V21

Async

300b/s

Fr

RTC-LS2

Dup

V22

Syn/Async

600-1200b/s

Ph

RTC-LS2

Dup

RTC-LS2

Dup

V22bis Syn/Async

Modul

Trans

Avis

1200-2400b/s Am Q

Support

V23

Syn/Async

1200-75b/s

Fr

RTC-LS2

Dup

V26

Syn

2400b/s

Ph

LS4

Dup

V27

Syn

4800b/s

Ph-D

LS4

Dup

V29

Syn

9600-4800b/s Ph+A

LS4

Dup

Syn/Async 9600-4800b/s Am Q

RTC-LS2

Dup

V32bis Syn/Async 14400-4800b/sAm Q


14400-12000b/sAm Q
Syn
V33

RTC-LS2

Dup

LS4

Dup

Syn/Async 33600-2400b/s Am Q

RTC-LS2

Dup

V32

V34

Explications
- Syn: Synchrone
- Async: Asynchrone
- Am Q : modulation
d'amplitude et de
phase (QAM).
- Ph : modulation de
phase
- Fr : modulation de
frquence
- RTC : Rseau
tlphonique
commut
- LS 2/4 : liaison
spcialise 2 ou 4
fils.
- Dup : mode
bidirectionnel
simultan
182

Le modem V90/V92 (56 Kb/s)


Kb/s)
Rappel
Les modems traditionnels considrent le RTC (Rseau
Tlphonique Commut) comme un rseau entirement
analogique.
Mais le RTC est pratiquement numrique 64Kb/s.
Le tlphone numris MIC avec un bruit de
quantification des codecs de l'ordre de 36db offre un dbit
maximum thorique de l'ordre de 35 Kb/s
D'ou la norme V34 constituant une limite pour lapproche
analogique avec un dbit de 33,6 Kb/s.

183

Principes d'une nouvelle gnration de


modems sur RTC
Sortie
numrique

Seule partie
analogique
Modem client
Site
Client

Codec
Transmission
Paires tlphoniques
2 fils

"Modems"
Rseau
serveurs
numrique
64 Kbs Multiplex
T ou E
Site
Serveur

En fait le rseau tlphonique est numris 64 Kb/s sur toute


son tendue (sauf le rattachement abonn).
Les serveurs d'accs peuvent tre directement rattachs au
rseau numrique via des multiplexes PDH (T Etats-Unis ou E Europe).
La seule partie analogique est le rattachement usager sur lequel
le rapport signal bruit permet un dbit suprieur 33,6 kbs.
184

La solution V90
(Rockwell , US Robotics)
Le modem V90 offre deux dbits diffrents
33600 b/s sens client vers serveur (transmis en mode V34).
56000 b/s sens serveur vers client (le plus intressant tudier)

A 56 kb/s le cot serveur envoie des configurations


numriques sur 8 bits vers le client.
En fonction de la loi de quantification le codec serveur gnre des
"symboles" analogiques
Le modem client interprte la modulation reue (les signaux
analogiques reus) pour reconstituer les octets transmis.

Problme de mise en uvre:


Le codec est conu pour traiter des signaux de voix humaine (les niveaux
de quantification les plus faibles sont privilgis) d'ou un problme de
discrimination dans le domaine des autres niveaux.
Utilisation d'une technique de codage sur la partie analogique qui seffectue
185
avec perte de 8Kb/s ramenant le dbit atteint 56 Kb/s.

Conclusion Modem V90


Impossibilit de fonctionner 56 Kb/s dans les deux sens:
V90 : 34 Kb/s quand mme => pas trs grave car la voie descendante
est souvent privilgie par rapport la voie montante.
Modem V92 voie montante 48 Kb/s plus dautres amliorations
Pour que le dbit 56 Kb/s fonctionne il faut que le RTC soit
entirement numrique MIC et selon la mme loi de quantification.

Pas de section analogique


Pas de conversion loi A en loi interne.
Pas de section avec codage non MIC (exemple pas de sections
impliquant une conversion vers ADPCM)
Lors de l'tablissement de la communication les modems opposs
doivent tester s'ils peuvent effectivement fonctionner 56 Kb/s sinon
repli en V34 (ou moins encore).
186

Le modem ADSL ANSI T1.413, UIT G992


(Asymmetric
(Asymmetric Digital Subscriber Line)
Ide principale : Utilisation de la bande passante des paires
tlphoniques de raccordement abonn/autocommutateur.
Exemple: 1,1Mhz sur moins de 3000 m.Pas utilisable au del de 6000 m.

Solution frquente : Multiplexage frquentiel de trois canaux.


1) Canal tlphonique (3,4khz) : vers le rseau tlphonique classqiue.
2) Canal numrique montant (upstream) abonn -> central (max 1 Mb/s).
3) Canal numrique descendant (downstream) central -> abonn (max 8
Mb/s).
=> Dbits asymtriques dpendant de la qualit et de loffre.

Canal
Tlph
onique

Canal
Descendant
(Downstream)

Canal
Montant
(Upstream)

3,4khz 30khz

138khz

1104khz

187

Codage des voies numriques


1) CAP Carrierless
Carrierless Amplitude Phase
Modulation damplitude et de phase en sadaptant en dbit
la qualit de la bande disponible pour un canal numrique.
Faible cot, faible latence => technique trs classique (bien
0010
matrise).
0110
0001
0111
0101

0000

0011

0100

15
1111

1100

Modulation utilise
pour les 4 derniers bits :
axe des x.

1000

1001
1011
1010

1101
1110

Constellation utilise
188
4 bits (valence 16).

Codage des voies numriques


2) DMT Discrete
Discrete MultiTone
MultiTone
Technique plus fiable et plus sophistique, la plus
lgante.
Division du spectre en 256 canaux de 4 Khz (exactement
4312,5 Hz) => Partage des canaux dpendant de loprateur.
Exemple de partage : 1 canal tlphonique, 5 non utiliss,
32 flux montant et 218 flux descendant gres
indpendamment en modulation damplitude et de phase.
Tl
phone

Canal Montant
(32 bandes)

37

Canal Descendant
(218 bandes)

Total 1,1 Mhz

189

Technique de dcouverte adaptative du


rapport signal bruit (bande par bande).
La qualit de la transmission nest pas la mme : pour tous les
abonns, et dans chacun des 256 canaux (section de la paire torsade,
imperfections de la paire, longueur, )
Dbit thorique maximum par canal de 4khz 60 Kb/s : soit pour le
canal montant 1,5 Mb/s et pour le canal descendant 14,9 Mb/s.
b/s

db

Dbit maximum
thorique

b/s
Rapport signal bruit

Dbit rcuprable canal


par canal

Exemples de performances du canal descendant.


Dbit
1,5 Mb/s
6,1 Mb/s

Section
0,5 mm
0,4 mm

Distance
5,5 Km
2,7 Km

190

Un exemple de diagramme rel

191

ADSL: un ensemble complexe de


techniques de transmission
Embrouillage des signaux.
Correction automatique derreur par code correcteur
derreurs dans les trames (FEC Forward Error Correcting Code
Reed-Solomon).
Codage QAM pour chaque canal: rapidit de modulation
4000 baud, dfinition de la constellation utilise permettant
selon le rapport signal bruit jusqu 15 bits par intervalle ).
Tramage : 68 trames ADSL sont regroupes dans une super
trame.
Synchronisation des trames.

192

ADSL: aspects architecturaux


Rseau
numrique
Int V (ATM)

Ordinateur
Int Tsm (USB,
Ethernet)

ATU-C
(DSLAM)

ATU-R

Sparateur
Splitter

Sparateur
Splitter

Codec /
Autocom

Tlphone

Oprateur

Abonn

ATU ADSL Transceiver Unit


(C Central, R Remote):
lessentiel du modem ADSL.
DSLAM Digital Subscriber
Line Access Multiplexer :
multiplexeur daccs ADSL
chez loprateur
Interface V : nom gnrique
ADSL de linterface avec le rseau
numrique de loprateur
(exemple un rseau ATM +IP)
Interface Tsm : nom gnrique
de linterface entre le modem ADSL
et lordinateur usager (branchement
sur port USB ou sur port ethernet).
193

Technologie du niveau Physique

Voies de communications
(mdia)

194

Introduction
Objectif du chapitre : apcifier les caractristiques des
cblages utiliss couramment dans lentreprise.
Paires torsades.
Fibres optiques.
Cbles coaxiaux.

Les paires torsades


Deux conducteurs en cuivre, isols.
Enrouls de faon hlicodale autour de laxe
(lenroulement permet de rduire les inductions
lectromagntiques parasites de lenvironnement).
Utilisation courante
Rseaux tlphoniques.
Rseaux locaux.

195

Paires torsades blindes


STP "Shielded
"Shielded Twisted Pairs"

Fournies en cbles de 2 paires.


Chaque paire est blinde.
L'ensemble est galement blind.
Possibilits importantes -> 500 Mhz.
En fait diffrentes difficults.
Plus coteux l'achat et l'installation.
Assez encombrant.
Problmes poss par les courants dans les blindages lorsque les
appareils relis sont des potentiels diffrents.

Exemple dutilisation: Boucle IBM avec le connecteur DB9


ou le connecteur IBM UDC "Universal Data Connector"
Performances exploites faibles en dbit => 16 Mb/s.
196

Paires torsades non blindes


UTP "Unshielded
"Unshielded Twisted Pairs"
Fournies en cbles de 4 paires.
Possibilits significatives (en dveloppement
permanent).
Pour un cot raisonnable.
Existence de diffrentes catgories de paires
UTP aux caractristiques trs normalises (normes
EIA 568):
Impdance caractristique.
Influence d'une paire sur l'autre en db.
Attnuation (en db).
197

Les catgories EIA568B "Commercial


BuildingTlcommunications"
BuildingTlcommunications"
Cat 1: Anciennement recommande pour le tlphone (actuellement non
recommande).
Cat 2: Anciennement recommande pour la boucle IBM 4Mb/s.
(actuellement non reconnue).
Cat 3: Recommande pour les bandes de frquences jusqu 16 MHz.
Utilisation typique pour le rseau Ethernet 10 Mbit/s.
Cat 4: Anciennement recommande jusqu 20 MHz typiquement pour la
boucle IBM 16 Mbit/s.
Cat 5: Performance jusqu 100 MHz pour le rseau Ethernet 100 Mbit/s
(actuellement non recommande).
Cat 5e: Recommande pour les performances jusqu 100 MHz pour
Ethernet 100 Mbit/s et Ethernet Gigabit.
Cat 6, 6A: Performance jusqu 250 MHz (Ethernet Gigabit ou 10G).
Cat 7: Performance jusqu 600 MHz (en fait quatre paires torsades
blindes STP). (Ethernet Gigabit ou 10G).
198

Cbles coaxiaux
Deux conducteurs concentriques: un conducteur
central le coeur, un matriau isolant de forme cylindrique,
une tresse concentrique conductrice:
Tresse mtallique
Cur de cuivre
Gaine de protection
Isolant

Meilleures caractristiques que les paires torsades


(largeur de la bande passante et protection contre les
rayonnements parasites).
Actuellement en perte de vitesse au profit des paires
torsades ou des fibres.
199

Fibres optiques
Fibre optique = guide de lumire.

Cur
transparent

Enveloppe
protectrice

Un cur transparent (plastique, verre)


Entour d'une gaine puis une enveloppe
Gaine
Le cur a un indice de rfraction plus lev que la gaine pour
confiner la lumire

Systme de transmission fibre : Trois composants


Conversion d'un signal lectrique en signal optique source de
lumire : Diode LED "Light Emitting Diode" ou Diode laser.
Fibre optique : qui joue le rle dun guide dondes lumineuses.
Dtecteur de lumire : photodiode de type PIN ("Positive Intrinsic
Negative") ou avalanche, qui restitue un signal lectrique.

Diffrents types de fibre


Fibres saut dindice, gradient dindice, cristaux photoniques.
200
Fibres multimodes, fibres monomodes.

Avantages des fibres optiques


Bande passante trs importante (de lordre de 1 GHz/km
=> dbit binaire trs important).
Faible affaiblissement de lordre de 0,25 dB/km.
Plusieurs dizaines de kilomtres entre amplificateurs.
Peu sensible aux perturbations lectromagntiques
Taux derreur trs faibles
Utilisation dans des environnements difficiles (variation
de temprature...).
Matire premire bon march.
Lgret et faible volume qui permettent la pose de
tronons longs avec plusieurs fibres.
Possibilit de multiplexage en longueur donde (WDM).
201

Problmes des fibres optiques


Les raccordements (pissures optiques) restent dlicats
raliser sur le terrain et introduisent un affaiblissement.
Les drivations ne peuvent seffectuer quau prix dune
perte de puissance importante (limitation de lutilisation
de la fibre optique pour la diffusion).
Rgnration, amplification et commutation optique
restent des sujets de recherche.
Malgr cela : Bande passante trs importante,
affaiblissement trs bas,
=> Les liaisons optiques sont trs utilises.
202

Technologie du niveau Physique

Rseaux au niveau physique


Exemple du rseau tlphonique
commut et des rseaux PDH, SDH
203

Introduction la transmission
tlphonique numrique
La transmission numrique offre des performances
suprieures la transmission analogique:
Faible taux derreur des liaisons numriques. Les rpteurs
numriques, rgnrateurs de signaux, ... ne connaissent pas les
inconvnients des amplificateurs utiliss par les supports analogiques.
Les informations de type voix, images et donnes,
reprsentes sous forme numrique peuvent facilement tre
multiplexes sur un mme support de transmission.

Utilisation de la numrisation dans le Rseau


Tlphonique Commut => RNIS Rseau Numrique
Intgration de Services (bande troite):
Canaux de communication B 64 Kb/s

204

MIC Modulation dImpulsion Code


PCM "Pulse code modulation"
Une technique pour la transmission du son sans
compression utilise par le tlphone (galement disques
compacts audio, fichiers sons).
Le MIC se dfinit par trois caractristiques
principales :
Echantillonnage.
Quantification.
Codage.

Notion de codec (codeur/dcodeur): convertisseur dun


signal analogique sonore en signal numrique et
inversement.
205

MIC Echantillonnage
Echantillonnage : le processus de choix des instants de
prise de mesure sur un signal continu (par exemple: la voix
parle).

Bande passante vise : B=4000 Hz.


Frquence dchantillonnage Nyquist : R = 2B = 8000
chantillons/s
Priode : 1 chantillon/125s)
chantillons sur 8 bits => Dbit binaire 64 Kb/s.
206

MIC Quantification
Quantification :
le processus de conversion dune mesure dun signal continu en une
valeur numriques entire.
Lamplitude entre deux valeurs voisines dfinit la prcision.
Lerreur qui rsulte du processus de quantification est appel le
bruit de quantification.

tablissement de la correspondance effective


Mesure du signal analogique sur 13 bits en Europe (14 bits aux USA).
Fourniture dun nombre sur 8 bits
Le plus simple serait une correspondance linaire:
En fait on utilise une courbe semi-logarithmique
garantissant une prcision relative constante
(les petites valeurs sont quantifis avec 16 fois
plus de prcision que les grandes).

En Europe : Loi A. Aux USA,Japon : Loi Mu.


207

MIC Codage
Codage: tape finale de reprsentation numrique
des octets => Utilisation d'un codage de la valeur
numrique quantifie.
En Europe: mthode ADI "Alternate Digital
Inversion"
1 bit sur 2 invers : 0000 -> 0101

Aux USA : mthode ISC "Inverse Symmetrical


Coding"
Inversion par groupes de deux bits : 0011 -> 1100.
208

Autres procds de codage


numrique de la voix
Techniques de compression pour un codage limitant la
bande passante utilise => proprits de la voix humaine.
Modulation MIC diffrentielle (DPCM "Differential Pulse
code modulation")
On code la diffrence entre la valeur courante et la valeur prcdente
Exemple DPCM : Si des carts entre chantillons de 16 incrments,
ou plus, sont trs peu probables alors un codage sur 5 bits est suffisant.
Lorsque lcart est suprieur 16 incrments de quantification
lencodage utilise plusieurs chantillons pour rtablir la situation.

Modulation DELTA
On code sur un seul bit chaque chantillon en indiquant s'il est plus
grand ou plus petit que le prcdent de une unit.
Problmes de rtablissement en cas de variations rapides.
209

Rseau tlphonique :
Fonctions de signalisation
Sur tout rseau tlphonique, nombreuses fonctions de
signalisation indispensables d'accs au rseau et
d'administration (exemple : lusager dcroche, compose un
numro, le prestataire taxe ...)
Rseau tlphonique ancien: signalisation dans la bande =>
problmes.

Rseau tlphonique numrique: un rseau numrique de

signalisation (hors bande) utilise un protocole systme de signalisation n7)


SS7 Signalling System 7
Canal B
donnes
Terminal
RNIS

Canal D
signal
DSS1

Transit
donnes
Autocom

Autocom
Transit
signalisation
SS7

Canal B
donnes
Terminal
RNIS

Canal D
signal
DSS1

210

Les hirarchies de multiplexage


dans les rseaux tlphoniques
Ncessit du multiplexage : pour optimiser les supports
Transport des circuits tlphoniques en multiplexage de circuits basse
vitesse 64 Kb/s sur des voies haut dbit.
Un chantillon chaque 125 micro secondes => Trames de n chantillons
rptes chaque 125 micro secondes.

Rappel: deux grandes classes de techniques de multiplexage


Multiplexage par Rpartition de Frquence (MRF ou FDM
"Frequency Division Multiplexing") une bande de frquence chaque
signal transport => Solution ancienne
Multiplexage Rpartition dans le Temps MRT ("TDM Time
Division Multiplexing") une tranche de temps chaque signal transport.

Les deux approches industrielles de multiplexage temporel.


PDH Plesiochronous Digital Hierarchy
SDH Synchronous Digital Hierarchy

211

Problmes poss par la transmission


haut dbit en continu: Verrouillage
Dtermination de l'emplacement des informations
significatives
Les infos multiplexes sont "trames": assembles dans des
trames de taille fixe les trames sont mises en continu.
Exemple du multiplex T1 pour 24 voies tlphoniques MIC (tatsUnis)=> Il faut pouvoir retrouver les trames en rception en prsence
de multiples alas de transmission (bruits, dsynchronisations ...).

Notion de "verrouillage de trame": Une trame est dite


"verrouille" pour le rcepteur s'il est correctement synchronis
sur son dbut.
Trame de 193 bits
chaque 125 microseconde
Voie 0 Voie 1
Dbit 1544 Kilobit/s

Dlimiteur
de 1 bit (0, 1 en alternance)

Voie24 Voie 0 Voie 1


Dlimiteur
de 1 bit (0,1)

212

Problmes de synchronisation
dhorloges
Diffrences de fabrication => Diffrences de frquence
Les informations sont gnres avec des horloges qui ne peuvent
gnrer de manire parfaites des frquences identiques.
Dfinition de tolrances sur les

Drive d'horloges ("Wander")


La frquence d'une horloge dpend de la temprature et peut donc subir
des drives lentes ( l'chelle de plusieurs heures ou mme plus) autour
d'un valeur moyenne.
La variation en frquence dune horloge par rapport une autre doit
tre borne
Exemple: une horloge pour gnrer le multiplex PDH 2,048 Mb/s doittre plus ou moins 5 10-5 ou encore + - 50 ppm (parties par million).

213

Problmes de synchronisation
dhorloges
Gigue ("Jitter")
La frquence d'un signal peut prsenter des variations instantanes
(autour d'une frquence moyenne) lorsque des retards diffrents sont
introduits dans le traitement des signaux.
Signal avec gigue

Dphasages

Signal sans gigue


intervalles isochrones

Les signaux issus de lignes diffrentes prsentent des retards de


propagation lies la distance.
=> Dphasages entre les signaux.

Dbits
Les diffrents appareils intervenant dans une chane de transmission ne
214
traitent pas exactement les informations la mme vitesse.

Solutions de synchronisation
dhorloges: techniques de justification
Justification Positive, Nulle ou Ngative
Deux sites relis par une voie haut dbit:
Les horloges de A et B sont identiques => Justification nulle
Pas de justification: on rmet le mme nombre de bits
L'horloge de A est plus rapide que celle de B => Justification
ngative
Pour un nombre de bits donn arrivant en B de A, on doit en
renvoyer plus.
L'horloge de A est plus lente que celle de B => Justification
positive
Pour un nombre de bits donn arrivant en B de A on doit en
renvoyer moins.
215

Fonctionnement de la justification
Prsentation de la justification dans le cas dun seul bit : on ajoute
ou lon retranche un seul bit
Charge Utile (n bits)
Entte
par trame.
CP CN JP JN
CP: bit de contrle
de justification positive
Pas de justification
CN: bit de contrle
CP CN JP JN
de justification ngative
A
A A
.........
A A
0 0
JP: bit de justification
Justification positive ( B le site courant plus rapide)
positive
CP CN JP JN
JN: bit de justification
A A
.........
A A
1 0
ngative
Justification ngative ( B le site courant plus lent)
CP CN JP JN
0 1 A A

........

A A

216

Utilisation des pointeurs


Situation du problme :
Quand des trames successives sont soumises des justifications
successives de mme sens
=> Les dlimitations entre les zones transportes glissent
l'intrieur des conteneurs de charge utile

Utilisation de pointeurs.
Un pointeur est associ la charge utile de la trame.
Sa valeur ne change pas tant que la position relative de cette charge
utile dans la trame ne varie pas.
Le dbut des informations significatives peut avancer ou tre retard
par rapport la valeur initiale => Modification du pointeur
La charge utile peut flotter dans lespace allou dans les trames.
Pointeur plac dans une entte protocolaire : le surdbit.
217
Permettant daccder aisment (indirection) aux infos transportes.

Fonctionnement des pointeurs en


SDH
Surdbit

30

Dbut en 30

1
Pointeur
Pointeur
avec ind
de justif

30(0)

30(0)

30
2
30(-)

Pointeur
29(0)
dcrment

Donnes

Surdbit

Donnes

29

30(+)
n+1

n-1

1
31(0)
n

n
Justification Ngative
Horloge locale plus lente

Justification Positive
Horloge locale plus rapide

Remarque: Prsentation comme en SDH, la justification porte sur des


octets et les trames ont une reprsentation matricielle.
On montre trois trames successives dans les deux cas de justification.
218

Explications fonctionnement des


pointeurs
Si lhorloge locale a une frquence plus faible que celle
du site dorigine du signal transport:
On associe au pointeur une indication de justification
ngative (-).
Un octet de donne est retranch vers le surdbit.
Dans la trame suivante la valeur du pointeur est
diminue de 1.
Si lhorloge locale a une frquence plus leve
On associe au pointeur une indication de justification
positive (+).
Un octet de bourrage est insr dans la charge utile.
Dans la trame suivante le pointeur est augment de219
1.

PDH "Plesiochronous
"Plesiochronous Digital
Hierarchy"
Hierarchy"
Hirarchie numrique plsiochrone : solution maintenant
un peu ancienne.
Solution de niveau physique et liaison :
Modulation, synchronisation bit et trame en prsence de dlais de
propagations et dcalages d'horloge (techniques de justification).
Ralisant le multiplexage temporel de voies tlphoniques MIC (64kb/s).

Exemple de normes et de dbits :


Trame

Dbit

Nb circuits

Avis CCITT

TN1 E1

2 048 Kb/s

30

G.704, G.706

TN2 E2

8 448 Kb/s

120

G.741, G.742

TN3 E3

34 368 Kb/s

480

G.751

TN4 E4

139264 Kb/s

1920

G.751

220

Exemple PDH : le multiplex E1 2 048


Kb/s
Kb/s G704 (TN1)
32 IT (Intervalles)

IT0

Synchro

Canal 0

Fanion de 8 bits

Canal 1

Usager

IT16

Canal17

Signalisation

IT31

Canal30
Usager

Surdbit:
Ncessaire au maintien et la rcupration du synchronisme: l'IT0
achemin dans le premier octet entte.
Utilis en version multitrame il offre des possibilits de transmission
d'informations multiples et complexes.

Dbit utile: on a 30 voies tlphoniques MIC et une voie


IT16 permettant l'acheminement de la signalisation pour les
221
30 voies.

G704

Utilisation du surdbit (IT0)


En regroupant 16 trames (multi-trame) on dispose de 128
bits chaque 2 millisecondes utiliss pour de nombreuses
fonctions:
Une zone de verrouillage de trame pour dfinir le
dbut des trames (la synchronisation trame).
Une zone pour la justification bit.
Une zone pour des signaux d'alarme (en cas de
mauvais fonctionnement).
Une zone de contrle de qualit : CRC-4.
Des zones libres d'usage spcifiques (par exemple
caractre national).
222

Introduction aux rseaux SDH


Synchronous Digital Hierarchy
Problmes de la hirarchie PDH
Manque de flexibilit de la hirarchie plsiochrone: pour accder
une donne dans un multiplex il faut dmultiplexer tous les niveaux.
Dveloppement partir de 1980 dune nouvelle technologie:
SONET Synchronous Optical Network (Bellcore) => SDH.

Originalit synchrone : tous les noeuds dun rseau utilisant


la hirarchie numrique synchrone sont synchroniss
Horloges de rfrence dune prcision spcifie 10-11.
On a encore des drives sensibles (utilisation trs haut dbit).

Originalit pointeurs : la technique des pointeurs


Permet de compenser les problmes de variation de frquence du signal
Mais aussi d'accder directement aux donnes l'intrieur des trames
par des mcanismes d'indexation simples ...
223

Exemple STMSTM-1
"Synchronous Transport Module

1"

Multiplex primaire de la hirarchie SDH


Trame de base constitue de 2430 octets mis toutes les 125 s, soit
9 octets
261 octets
155,520 Mb/s.
Organise en 9
pointeur
9 ranges
ranges de 270 octets.
.........

Surdbit de
section (SOH)
(5,184 Mb/s)

Unit Administrative (UA)


150,336 Mb/s

Dans une trame STM-1, les informations sont places dans des
conteneurs qui peuvent tre vus comme une structure hirarchise de
groupage.
Le conteneur + son surdbit forment un conteneur virtuel (VCn).
STM1 -> Un conteneur VC4 ou plusieurs conteneurs plus petits: VC-1 (1,544
2,
224
048 Mb/s), VC-3 (34,368 44,736 Mb/s).

Conclusion SDH
Utilisation de SDH trs importante
et trs varie
Trame
Dbit
Pratiquement toutes les
STM-1 (OC3)
155,520 Mb/s
Transmissions longue distance.
STM-4 (OC12)
622,080 Mb/s
Rseaux tlphoniques
STM-16 (OC48)
2488,320 Mb/s
(RTC et mobiles)
STM-64 (OC192)
9953,280 Mb/s
Transport de cellules ATM,
STM-128 (OC384)
20 Gb/s
de paquets IP (IP sur SDH).
Niveau physique pour
STM-256 (OC768)
40 Gb/s
Ethernet 10 Gigabits/s.
Construction darchitectures de rseaux SDH
Avec des rpartiteurs, des brasseurs, des multiplexeurs.
Topologie en boucle SDH privilgie.
225
La hirarchie SDH est encore en dveloppement.

Niveau Liaison
"Data link Layer"
Protocoles Point Point
Rseaux locaux
226

Niveau Liaison
"Data link Layer"

Protocoles Point Point


"Point to Point Protocols"
Protocols"
Introduction.
I Solutions gnrales.
II Protocoles industriels
Conclusion.

227

Niveau Liaison En Point point

Introduction
Problmes rsolus dans les
protocoles de niveau liaison en
point point
228

Situation du sujet: le niveau


liaison point point
Liaison A

Liaison B

Voie physique

Le niveau liaison contrle les communications


ralises au niveau physique entre des sites relis par une
voie point point (implantation logicielle).
Le niveau liaison masque les caractristiques de la
couche physique (tous types de voies) aux entits de rseau.
Exemple type: PPP dans lInternet
Le niveau liaison point point rsout des problmes
non rsolus au niveau physique (transparent suivant).
Niveau liaison point point: trs stabilis (thorie
1960/1970, normes 1970/1990)
229

Principaux problmes rsolus dans


le niveau liaison point point
Selon les choix de conception on trouve tout
ou partie de solutions au problmes suivants :

1 Dlimitation des trames.

2
3
4
5
6
7

Contrle derreurs.
Contrle de flux.
Contrle de squence.
Gestion des connexions.
Multiplexage.
Fonctions d'administration.
230

1 - Dlimitation des trames


("tramage", "framing
"framing").
framing").
Fonction basique de tous les protocoles de

liaison : acheminer des trames (des suites binaires


structures).
Ncessite de retrouver la synchronisation trame en relation avec les
erreurs (trames bruites).

Fonction considre comme de niveau liaison


Synchronisation bit => niveau physique (horloges).

Synchronisation trame => plutt niveau liaison (dlimiteurs)

Exemple type : Fonction quasi unique dans les


protocoles de liaison sans connexion
Un seul type de trame existe qui doit essentiellement tre dlimit
=> Protocole SLIP ("Serial Line Interface Protocol")
231

2 - Dtection et correction des erreurs :


A) Contrle derreurs ("
("Error
Error control")
Bruits au niveau physique : Solution niveau liaison
=> codes dtecteurs derreurs.

A) Si le taux derreurs est inacceptable


Taux d'erreur de la voie physique : exemple 10-3 10-5 par bits.
=> Le protocole de liaison amne le taux d'erreur rsiduel
un niveau acceptable au moyen de retransmissions
(exemple > 10-12 par bits).
=> Protocoles avec contrle derreurs : LAPB (Link Access
Protocol B), IEEE 802.11 (WiFi "Wireless Fidelity").
232

2 - Dtection et correction des erreurs :


B) Destruction silencieuse
B) Si le taux derreurs du au bruit est considr
comme acceptable :
Pas de contrle derreur (le contrle derreur est renvoy
au niveau transport).
=> Destruction silencieuse des trames errones ("Silent
Discard").
=> Exemple type : PPP (Point to Point Protocol en mode
standard, Ethernet IEEE802.3).

233

3 - Contrle de flux
(Flow
(Flow Control)
Cas 1 : Contrle de flux jug indispensable

Problme : adapter la vitesse de l'metteur celle


du rcepteur.
Si le dbit dun metteur est trop important
relativement aux performances dun rcepteur
On doit rguler les changes : ralentir lmetteur pour
viter les pertes de trames dues l'impossibilit de
stocker les trames entrantes en cas de trafic lev.
=> Exemples : Protocoles LAPB, IEEE 802.3x (Contrle de
flux en Ethernet)

Cas 2 : Si les pertes de trames dun rcepteur


sont juges acceptables : pas de contrle de flux
=> Exemples : Protocoles SLIP, PPP (mode standard).
234

4 - Livraison en squence
(respect de la causalit)
Voie physique : mdium causal :

Causalit de propagation des ondes: les bits ne peuvent remonter le


temps (arriver avant dtre mis) ou se dpasser sur les cbles.

Problme: les erreurs de transmission et les


retransmissions produisent des modifications de la
squence mise (lacunes, dsquencements) ou
des duplications.
Le contrle de squence assure, en liaison avec le contrle derreur et le
contrle de flux, la dlivrance des trames au rcepteur dans lordre
exact de la soumission par l'metteur

Exemples :

Protocoles de liaison avec contrle de squence : Protocoles


LAPB, IEEE 802.11 Wifi.
Protocole sans contrle de squence : SLIP, PPP en
standard.
235

5 - Gestion des connexions


Protocoles en mode connect
=> Identification de flots spars par changes pralables de
messages de connexion ( la fin messages de dconnexion).
Exemples de mode connect BSC (Binary synchornous
Communications) , LAPB, LLC2 (Logical Link Control 2), PPP.

Protocoles en mode non connect


=> Les changes ont lieu avec des trames de donnes qui
peuvent tre transmises tous moments.
Exemples d'implantation du mode sans connexion: SLIP,
LLC1 (Logical Link Control 1 sur rseau local), Ethernet, Wifi.
236

6 - Multiplexage
Multiplexage : gestion de plusieurs flots de donnes identifis
et dlivrs des entits de rseau diffrentes.
Utilisation 1 : Coexistence de trafics pour des architectures de rseaux
diffrentes sur la mme voie physique :
Exemples : Coexistence Internet, Novell, Apple Talk , SNA, OSI .
Utilisation 2 : coexistence dun trafic pour des entits de rseaux
diffrentes dans une mme architecture:
Exemples : En Internet protocoles ICMP, ARP , RARP

Solution statique : Utilisation dune zone identifiant les


diffrents flots selon des valeurs fixes (normalises).
Exemples : PPP , Ethernet/DIX (Digital/Intel/Xerox),
LLC/SNAP (Logical Link Control/Subnetwork Access Protocol)
237

7 - Administration du niveau liaison


Fonctions dadministration (Network Management) :
gnralement selon une approche normalise et par niveaux

Exemple : SNMP Simple Network Management Protocol.

Cas du niveau liaison : des fonctions spcifiques sont


dfinies dans les protocoles (rglages, adressage, )
Essentiellement valable pour le protocole PPP Internet:
Un protocole qui dveloppe beaucoup cet aspect

Gestion des configurations : ngociation de paramtres de


fonctionnement, fourniture dadresses.
Gestion des pannes : mcanismes de diagnostic (bouclage).
Gestion de la scurit : authentification dun nouveau client.
Gestion des performances : pas dexemple au niveau liaison.
Gestion de facturation des ressources : pas dexemple de liaison.
238

Niveau Liaison En Point point


Chapitre I
Solutions gnrales pour la
ralisation des protocoles de
liaison en point point
Dlimitation des trames
Contrle derreur, de flux, de squence
239

Solutions gnrales pour les protocoles


de liaison en point point

I.1
Dlimitation des trames

240

Dlimitation des trames


Position du problme
Retrouver la synchronisation trame :
mise en correspondance "une pour une"
entre une trame mise et une trame reue.

Difficults du problme
Le bruit peut faire perdre la synchronisation trame.
Le bruit peut crer des trames fictives ( une trame mise peut
correspondre une trame ou plusieurs trames reues en raison du
bruit dcoupant ou crant des trames parasites).

La solution de base:
Se donner un mcanisme de sparation des trames.
Associer une trame un code polynomial dtecteur d'erreur.
Quand on dcide qu'une trame est dlimite en rception on
vrifie la correction au moyen du code polynomial.
Si elle est incorrecte ou spare en plusieurs trames incorrectes
241
on abandonne les informations reues (destruction silencieuse).

Trames sans dlimiteurs


(dans un flux continu synchrone)
Solution utilise pour des trames de longueur fixe en flux continu:
Pour chaque trame : un code polynomial correct se rpte en position fixe.
On fait fonctionner un automate qui se recale sur chaque bit considr
comme un dbut de trame et vrifie lexactitude du code polynomial.
Approche probabiliste : On peut se recaler une fois par hasard mais pour
delta trames successives correctes => trs faible risque derreur de synchro.
Non Synchronis en recherche bit
bit

Exemple ATM
- Cellules de 53 octets
- HEC : Header Error Control
(code polynomial)

Hunt

Alpha HEC
conscutifs
faux
Sync

HEC correct
HEC faux

Presync

Delta HEC
conscutifs
corrects

Accrochage

Synchronis

Pour des trames de longueur variable (pas dexemple industriel)


Difficults supplmentaires

242

Trames avec dlimiteurs: Transparence


caractre (Character
(Character Stuffing)
Stuffing)
Trames constitues de caractres d'un alphabet normalis (ex
ASCII,EBCDIC) => les trames sont multiples de 8 bits.
Caractres de contrle : des codes caractres particuliers.
Solution retenue en : BSC, SLIP, PPP mode standard.
Exemple dans les protocoles BSC (Binary Synchronous Communication)

STX ("Start of TeXt")


- Dlimiteur dbut de bloc de texte
ETX ("End of TeXt")
- Dlimiteur fin de bloc de texte
DLE ("Data Link Escape") - chappement de liaison

Pour une trame purement alphanumrique: pas de problme


d'ambigut entre caractres de contrle et donnes dans les blocs texte.
Si une trame comporte des caractres de contrle parmi des
caractres alphanumriques dun bloc => transparence caractre
Tout caractre de contrle (qui n'est pas le dlimiteur dbut ou fin)
apparaissant dans le bloc est prcd de DLE.
ETX -> DLE ETX; STX -> DLE STX; DLE -> DLE DLE
A la rception les DLE ajouts pour la transparence sont retirs.

243

Exemple de transparence
caractre en BSC
Bloc transmettre :
C E C I

E S

U N

T X

STX

E S

U N

T X

DLE STX ETX

Bloc transmis :
STX C E C I

Pas de problme : pour restituer le bloc initial

Pour distinguer les dlimiteurs rels en dbut et fin de bloc (sans


DLE devant)
Pour distinguer les codes caractres identiques transmis dans la
charge utile (ils sont prcds dun DLE que lon supprime la
rception).

244

Trames avec dlimiteurs: Transparence


binaire (Bit Stuffing)
Stuffing)
Les trames sont constitues de suites binaires.
Chaque trame est dlimite par une suite binaire rserve.
Exemple de la famille des protocoles SDLC/HDLC/LAPB:
Dlimiteur : drapeau, fanion ou "flag" huit bits 01111110.
Le fanion ne doit jamais apparatre dans la suite binaire
dune trame sous peine de dcider la fin de trame.
Procdure de transparence binaire
- En sortie quand on a 5 bits 1 conscutifs => on insre
automatiquement un bit 0 aprs
- En entre le bit 0 suivant 5 bit 1 est enlev (sauf bien
sur pour les fanions dbut et fin qui sont interprts comme
des dlimiteurs).
245

Exemple de transparence
binaire en SDLC/HDLC/LAPB
Suite binaire transmettre :

010010000011111101111100
Suite binaire aprs adjonction des bits de
transparence :

0100100000111110 10111110 00
Trame transmise avec ses dlimiteurs (fanions) :

01111110 0100100000111110 10111110 00 01111110


En rception : suppression des bits de
transparence et des fanions.

246

Trames avec dlimiteurs:


Violation de code
Problmes des techniques de transparence bases sur
l'utilisation de dlimiteurs forms de configurations binaires
lgales (caractres de contrle, fanions, ...).
Allongement des trames du aux informations de transparence
(quelques pour cent).
Temps perdu l'mission et la rception (surtout en logiciel).

Autres solutions : dfinir des modulations utilises comme


dlimiteurs (en plus de la modulation des donnes trame 0,1) .

Augmenter la valence des signaux de niveau physique pour crer des


dlimiteurs.
Ces signaux ne peuvent donc apparatre dans le flot normal des
donnes dune trame.

De nombreuse variantes de ce principe ont t dveloppes.

Les problmes de la transparence sont rsolus.


Mais le modulateur doit tre plus complexe.
Solution trs utilise (par exemple dans les rseaux locaux).

247

Exemple de dlimiteurs dans le protocole


IEEE 802.3u Ethernet 100 Base T
Code 4B/5B

Donnes binaires utilisateur: groupes de 4 bits


Donnes transmises: pour chaque groupe de 4 bits un groupe de 5 bits.
16 configurations ncessaires pour les donnes utilisateurs.
16 configurations disponibles pour des besoins protocolaires : symboles
inter trames, dlimiteurs etc

Dlimiteurs

Symbole
Symbole
Symbole
Symbole
Symbole

J 11000 First Start Of Frame (Invalid code)


K 10001 Second Start of Frame (Invalid code)
T 01101 First End Of Frame (Invalid code)
R 00111 Second End of Frame (Invalid code)
I 11111 Idle (Invalid code)

Structure dune trame


I I I I J K ...... Groupes donnes de trame T R I
Solutions en FDDI, Ethernet 1000 , 10G : trs similaires.
248

Solutions gnrales pour les protocoles


de liaison en point point

I.2
Contrle derreur, de flux, de
squence

249

Introduction : prsentation gnrale


des protocoles tudis
Solutions de complexit croissante aux problmes:
- Contrle d'erreur.
- Contrle de flux
- Respect de la causalit (livraison en squence).
Traitement conjoint des problmes
Codage des solutions en langage style ADA
Protocoles examins (selon lapproche de A. Tannenbaum)
- Protocole 1 "Sans contrle d'erreur et de flux"
- Protocole 2 "Envoyer et attendre"
- Protocole 3 "Bit altern"
- Protocole 4 "A fentre glissante et rception ordonne"
- Protocole 5 "A fentre glissante et rejet slectif"
250

Protocole 1 : Sans contrle derreur ni


contrle de flux
Pas de contrle de flux

La couche rseau du rcepteur est toujours prte recevoir: les


pertes de trames dues au manque de contrle de flux sont ngligeables
(temps de calcul ngligeables, mmoire toujours disponible pour stocker).
Ou le contrle de flux est prvu ailleurs (assur dans un autre niveau).

Pas de contrle derreur

Les pertes de trames dues au bruit sont tolrables.


Ou le contrle d'erreur est prvu ailleurs (assur dans un autre niveau).

Nature de la solution
- Solution de base d'un protocole sans connexion qui se contente
d'acheminer des trames et laisse aux niveaux suprieurs toutes les tches.
- Mise en place de la programmation pour les solutions suivantes.
- Le code ne dcrit quune transmission unidirectionnelle.
Solution des protocoles Internet : SLIP, PPP en mode standard.
251

Protocole 1 : Dclarations
-- Zone de donnes utilisateur (paquet rseau)
-- Par exemple: taille de paquet 1500 octets.
type paquet is array (integer range 1..1500) of character ;
-- Type de trame de niveau liaison utilise.
-- Une seule information : la charge utile (le paquet).
type trame is record
info : paquet ;
end record;
-- Type vnement en entre.
-- Un seul vnement : larrive dune trame
type Type_Evnement = (Arrive_Trame ) ;
252

Protocole 1 : Codage de lmetteur


procedure metteur_1 is
s
: trame ;
-- La trame liaison en mission
tampon
: paquet ;
-- Le paquet rseau mettre
begin
loop
recevoir_couche_rseau (tampon) ; -- Paquet envoyer
s.info := tampon ;
-- Prparer une trame
envoyer_couche_physique(s) ; -- La faire mettre
end loop
-- Boucle infinie
end emetteur_1 ;
253

Protocole 1 : Codage du rcepteur


--- Procdure excute par le rcepteur
-procedure rcepteur_1 is
vnement : Type_Evnement ;-- vnement traiter;
r
: trame ;
-- La trame en rception
begin
loop
attendre (vnement) ;
-- Attendre une arrive
recevoir_couche_physique (r) ; -- Prendre trame arrive
envoyer_couche_rseau(r.info);-- Passer l'utilisateur
end loop
-- Boucle infinie
end rcepteur_1;
254

Protocole 2 : Arrt et attente


("Stop and Wait")
Wait")
Solution simpliste uniquement de contrle de flux.
Ide de base : pour ne pas saturer le rcepteur freiner
l'metteur.
Solution de rtroaction du rcepteur sur l'metteur:
. Le rcepteur informe l'metteur qu'il peut accepter un
nouvelle trame en envoyant une trame de service ne
contenant pas de donnes.
. Cette trame sappelle en rseau un crdit (CDT) : un
crdit d'une unit donne un droit pour mettre une nouvelle
trame.
. L'metteur doit attendre d'avoir un crdit pour
envoyer une trame.
=> Famille des solutions de contrle de flux: Solutions
bases crdits.
255

Protocole 2 : Codage de lmetteur


--- Code prsent => Solution unidirectionnelle
-- Une voie de retour pour des trames de service (toujours des crdits).
-- Dclarations : pas de changement par rapport au protocole 1
-procedure metteur_2 is
-- Les variations par rapport au code du protocole 1 sont en italique.
vnement : Type_Evnement ;
-- Un vnement traiter
s
: trame ;
-- Trame en mission
tampon : paquet ;
-- Paquet mettre
begin
loop
recevoir_couche_rseau (tampon) ;
-- Un tampon envoyer
s.info := tampon ;
-- Prparer une trame
envoyer_couche_physique(s) ; -- La faire mettre

attendre(vnement) ;

end loop
end metteur_2 ;

-- Attendre un crdit

-- Boucle infinie
256

Protocole 2 : Codage du rcepteur


-procedure rcepteur_2 is
--- Les variations par rapport au code du protocole 1 sont en italique
vnement: Type_Evnement;
-- Evnement traiter
r
: trame;
-- Une trame en rception
s
:trame;
--Une trame de crdit
begin
loop
attendre (vnement) ;
-- Attendre arrive de trame
recevoir_couche_physique (r);
-- Prendre trame arrive
envoyer_couche_rseau(r.info) ;
-- Passer l'utilisateur
envoyer_couche_physique(s);
-- Envoyer le crdit
end loop
-- Boucle infinie
end rcepteur_2;
257

Protocole 3 : PAR "Protocole


"Protocole avec
Acquittement et Retransmission"
Solution globale: problmes de contrle de flux, derreur, de
squence

Pour une voie physique bruite (utilisation dun code dtecteur derreur)
et avec un rcepteur capacit de traitement et de mmoire limite.

Nombreuses appellations pour une classe de protocoles voisins.


- Protocole PAR ("Positive Acknowledgment with Retry).
- Protocole du Bit altern ABP ("Alternate bit protocol").
- Protocole ARQ ("Automatic Repeat Request").
Introduction des notions suivantes
- A) Acquittement positif (dune trame correcte).
- B) Dlai de garde (pour retransmission sur erreur).
- C) Identification des trames (par un numro de squence).
Exemples dimplantation de protocoles de ce type : BSC Binary
Synchronous Communications, GSM Global System for Mobile, WIFI258

A) Acquittements positifs
"Positive Acknowledgments"
Acknowledgments"
Acquittement positif : une information protocolaire qui circule pour
indiquer la bonne rception d'une trame de donne.
Utilisation des acquittements positifs
Rgle 1 : Une trame n'est acquitte positivement que si elle est reue
correctement (code dtecteur correct).
Rgle 2 : Toute trame correcte doit tre acquitte positivement afin
que l'metteur ne la retransmette plus.
Remarques
- Stratgie de reprise : en acquittement positif la reprise sur erreur est
confie l'metteur qui doit s'assurer qu'une trame a bien t reue.
- Acquittements positifs et crdits
=> Lacquittement positif a une signification dans le contrle d'erreur
alors que le crdit sert dans le contrle de flux.
=> Une trame unique (baptise acquittement "ACK") est souvent utilise
(exemple dans le protocole PAR) double sens pour signifier :
. dernire trame correcte (acquittement positif)
259
. acceptation d'une autre trame (crdit de une trame).

Acquittements ngatifs
"Negative Acknowledgments"
Acknowledgments"
Acquittement ngatif : une information protocolaire indiquant la
mauvaise rception d'une trame de donne.
Utilisation des acquittements ngatifs
- Rgle 1 : Une trame n'est acquitte ngativement que si le destinataire ne
la pas reue alors quil sait qu'elle a t mise.
Apprentissage : . Signal indiquant une trame en erreur (rare).
. Absence dune trame dans une suite numrote.
- Rgle2 : Un acquittement ngatif est une demande de retransmission.
Remarques:
- Stratgie de reprise : en acquittements ngatifs le traitement des
erreurs est confi au rcepteur qui doit dcouvrir l'absence d'une trame,
en demander la retransmission pour que celle-ci soit bien reue.
- Le protocole PAR na pas besoin des acquittements ngatifs.
- On peut concevoir de multiples variantes de protocoles utilisant la fois
des stratgies d'acquittements ngatifs et positifs.
- Des protocoles probabilistes bass uniquement sur les acquittements
260
ngatifs sont possibles.

B) Dlais de garde :
Temporisateurs , ""Timers
Timers"
Timers"
Ncessit de conserver copie d'une trame .
. Si la trame est bruite on doit la retransmettre.
. Si la trame est correcte mais l'acquittement positif bruit on
ne sait pas si la trame a t reue => on retransmet.
Problme: en labsence dacquittement positif on ne peut
conserver indfiniment les copies.
Utilisation d'un dlai de garde (temporisateur)

Rveil de l'metteur chance.


Retransmission de la trame

Protocole PAR : seul mcanisme de reprise, l'metteur


retransmet systmatiquement une trame sur chance
du dlai.
Remarque : L'usage du dlai de garde ralentit la reprise sur
erreur car le dlai de garde doit tre nettement suprieur la
somme des dlais d'mission et de retour dacquittement.261

Fonctionnement avec dlais de


garde (temporisateurs)
Site A
Armement
Temporisation
T3
Dsarmement
Temporisation
Armement
Temporisation
T3
Echance
Temporisation
Retransmission

Site B
Trame(CRC)

T2 CRC correct
Vers
Couche
Rseau
Rceptrice

ACK

Trame(CRC)

Trame(CRC)
ACK

T1

Trame(CRC')
CRC' incorrect
Destruction

CRC correct
262

C) Identification des trames : numros


de squence ("Sequence
("Sequence numbers")
numbers")
Exemple de problme sans Site A
identifiant
Armement
Temporisation
Une trame est reue
T3
correctement mais
CRC incorrect
l'acquittement positif
ACK perdu
correspondant se perd ...
Echance
La couche liaison rcepteur Temporisation
reoit deux fois la trame Retransmission
puisque l'metteur rmet.
T3
=> Duplication non
dtecte (non respect de CRC correct
Dsarmement
la squence)
Temporisation

Site B
Trame(CRC)
ACK

Trame(CRC)
ACK

CRC correct
Acquittement
Vers Couche
Rseau
Rceptrice

Trame(CRC)
CRC correct
Acquittement
Vers Couche
Rseau
Rceptrice
Duplication

" Ncessit d'un numro de squence de trame (identifiant


entier de la trame) pour viter les duplications et assurer le
263
respect de la squence d'mission (causalit).

Exemple de fonctionnement du
protocole PAR
Site B

Site A

Trame (0,CRC)
T3
Dsarmer T3

ACK
Trame (1,CRC)

T3
T3 expire
Retransmission
T3 expire
Retransmission
T3
Dsarmer T3

Acquittement
Dlivrance Trame(0)
CRC incorrect
Ne rien faire

Trame (1,CRC)
T3

CRC correct

Acquittement
Dlivrance Trame(1)

ACK
Trame (1,CRC)
ACK

CRC correct

CRC correct
Acquittement
Trame(1) dj dlivre
Duplication => abandon
264

Fonctionnement en utilisant en
plus des acquittements ngatifs
Armement

Site A

T3
Dsarmement
Armement
T3
Dsarmement
Armement
T3

Trame (0,CRC)

Site B
Dlivrance

ACK
Trame (1,CRC)
NAK
Trame (1,CRC)
ACK

Echance
Retransmission

Signalement
CRC incorrect
NAK:Demande de
retransmission
Dlivrance

Trame (1,CRC)
ACK
Trame (0,CRC)
Dlivrance

- Les acquittements
ngatifs ne sont pas
indispensables
car le fonctionnement
de base est fourni par
les acquittements
positifs, les
temporisateurs et les
numros de
squence.
- Les acquittements
ngatifs, servent
acclrer les
retransmissions en
cas d'erreur.
265

Protocole 3 PAR : Codage


Prsentation de la solution code
Utilisation unique des acquittements positifs.
Utilisation dun dlai de garde (fonctions
darmement et de dsarmement dun temporisateur).
Identification des trames sur un bit (numros de
squence 0 et 1) => Protocole de bit altern.
Solution unidirectionnelle (un seul sens est dcrit)
Utilisation dune voie de retour pour la circulation
des acquittements positifs.

266

Protocole 3 PAR :
Codage des dclarations
--- Variations par rapport au protocole 2 en italique
--- Dclarations globales
--- Type numro de squence d'amplitude 0..maxseq=1

maxseq: constant :=1;


type numero_sequence is integer range 0..maxseq;

type paquet is array ( integer range 1..128 ) of character ;


type trame is record

seq : numero_seq ;

info : paquet ;
end record;
type Type_Evnement = (Arrive_Trame, Erreur_Trame, Horloge);
267

Protocole 3 PAR :
Codage de lmetteur
procedure emetteur_3 is
vnement
:Type_Evnement;
s
:trame;
tampon
:paquet;

Proch_Trame_A_Envoyer : numero_sequence;
begin

Proch_Trame_A_Envoyer := 0;

recevoir_couche_rseau (tampon);
loop

s.seq := Proch_Trame_A_Envoyer ;
s.info := tampon ;
envoyer_couche_physique(s) ;

dmarrer_horloge (s.seq) ;
attendre(vnement) ;

if vnement = arrive_trame then


dsarmer_horloge(s.seq) ;

inc(Proch_Trame_A_Envoyer:);

-----

Evnement traiter;
Trame en mission;
Paquet mettre

Num prochaine trame mise

-- Init pour le premier message


-- Un tampon est envoyer
----------

Prparer numro de trame

Partie information usager


Faire partir la trame

Armer un dlai de garde


Attendre un crdit / un acquit
C'est l'acquittement attendu
Plus besoin d'un rveil
+1 pour le prochain message

recevoir_couche_rseau (tampon);
Un tampon est envoyer
endif -- Cas d'une retombe de garde : on ne fait rien donc on remet
end loop
-- Boucle infinie
end emetteur_3;

268

Protocole 3 PAR :
Codage du rcepteur
procedure rcepteur_3 is
vnement: Type_Evnement;
r
: trame;
s
: trame;

trame_Attendue: numero_sequence

-----

trame_Attendue := 0 ;

-- Initialisation attente de la trame 0

begin

Un vnement traiter;
Une trame en rception
Une trame de crdit /acquit (ack)

Numro de squence prochaine trame recevoir

loop
attendre (vnement) ;
-- Attendre arrive trame
-- Deux cas possibles: la trame est correcte ou en erreur
if vnement == Arrive_Trame then -- Cas d'une trame correcte
recevoir_couche_physique (r);
-- Prendre la trame arrive
if r.seq ==Trame_Attendue then
-- C'est la bonne trame
envoyer_couche_rseau(r.info) ; -- La passer l'utilisateur
inc (Trame_Attendue) ;
-- Prparer trame suivante
endif;
-- Dans tous les cas : en squence ou pas on doit acquitter
envoyer_couche_physique(s);
-- Envoyer le crdit / acquit
endif
-- Dans le cas d'une erreur on ignore la trame reue
end loop
-- Boucle infinie
end rcepteur_3;

269

Protocole 3 PAR : Conclusion


1) Problmes de robustesse
Fonctionnement correct dans toute configuration:
. de perte de messages ou d'acquittements.
. de rglage des dlais de garde.
. de dlai d'acheminement.
Besoin de preuve dun protocole :
Smantique (preuve de programme)
Temporelle (contraintes de synchro et de temps rel)

Difficult: Le protocole n'est pas gnralement


pas reconfigur chaque fois que l'on change de
support physique ou de dbit.
270

Exemple de problme de robustesse

Combinaison d'un dlai de garde court et d'une perte de message.


Site A
Armement

Site B
Trame (0,CRC)

T3
Echance
Retransmission
Acquittement T3
pris pour la
retransmission
T3
Acquittement
qui est pris pour
celui de la trame 1
en erreur.

ACK
Trame (0,CRC)
Trame (1,CRC)
ACK

CRC correct
AcquittementTrame(0)
Dlivrance
CRC correct
Acquittement
Abandon car duplication
CRC incorrect

Le problme: les acquittements ne sont pas correctement associs aux


messages.
Solution : Identifier dans les acquittements le numro du message 271
acquitt. => Solution des protocoles fentres glissantes.

Protocole 3 PAR : Conclusion


2) Problmes de performance
Chaque acquittement positif occupe une trame
uniquement ddie cette fonction => Relativement coteux
pour une opration trs simple.
. Gestion d'une interruption pour chaque acquittement.
Sauvegarde du contexte + Traitant d'interruption +
Droutement couche liaison + Restauration du contexte.
. Rservation puis libration d'un tampon pour chaque

acquittement.

Si les dlais de transmission sont longs, l'attente d'un


acquittement est longue => metteur inactif
. Le taux d'utilisation de la voie peut devenir trs faible.
. Exemple des voies satellite (temps de propagation 250
milliseconde): Le taux d'utilisation de la voie peut tomber
272
quelques pourcent.

Protocole 4 : A fentre glissante avec


rception des trames en squence
Objectifs : corriger les dfauts du protocole PAR.
- Protocole robuste qui traite correctement le problme de contrle
d'erreur, de flux, de livraison en squence
. en prsence de perte de messages ou d'acquittements
. pour tout rglage des dlais de garde

- Protocole performant qui optimise l'utilisation de la voie en fonction des


temps de transmission
. Protocole performant pour diffrents modes de fonctionnement.

Reprise des outils dj vus:


Acquittements positifs, dlais de garde, numros de
squence de message.
Utilisation des notations des protocoles type LAPB.

273

Amlioration 1 : Emission en
anticipation ("Pipelining
("Pipelining")
Pipelining")
Anticipation des missions : ne pas attendre
l'acquittement d'une trame avant d'envoyer les
suivantes.
Pour viter d'tre bloqu en attente
d'acquittement: arrt & attente.
Pour rsoudre le problme d'inactivit de la
voie si les temps de transmission sont longs
avec des messages courts.

Remarque : L'anticipation augmente la


longueur des trames en enchanant la
transmission de plusieurs trames conscutives.
On minimise donc l'importance relative du
temps de propagation aller retour et on
amliore le taux d'utilisation du canal.

I(0)
I(1)
I(2)
RR(1)
RR(2)
RR(3)

Exemple dchange : I(n) ("Information") : Trame d'information numro n


274
RR(n) ("Receiver Ready") : Trame d'acquittement pour I(n-1)

Anticipation : Rgles de
fonctionnement (1)
Rgle 1 - L'metteur doit conserver copie des trames jusqu'
rception de l'acquittement correspondant.
=> Pour retransmission si les trames ont t bruites.
Rgle 2 - Chaque trame est identifie par un numro de squence.
Les trames successives sont numrotes circulairement (modulo
Maxseq+1) par des entiers successifs.
=> Pour respecter la rception l'ordre d'mission.
=> Pour pouvoir ventuellement dtecter des erreurs de transmission par
des lacunes dans la suite des numros reus.
Fonctionnement avec la rgle 2:
L'expditeur maintient une variable d'tat V(s) qui dfinit le numro de la
prochaine trame mettre.
Chaque trame est transmise avec un numro de squence en mission
N(S) qui est la valeur courante de V(S) au moment de l'mission.
275

Anticipation : Rgles de
fonctionnement (2)
Rgle 3 - Utilisation indispensable d'un ensemble de numros de
squence de cardinal plus lev que pour le bit altern (2 numros) pour
permettre une anticipation relle.
Sur n bits : 2n numros diffrents. Trames numrotes de 0
Maxseq = 2n - 1.
Choix Maxseq=7
n = 3 Peu de possibilits d'anticipation.
Choix Maxseq=127 n = 7 Encombrement dans les messages.
Rgle 4 - L'anticipation ne peut pas tre autorise sans limite.

On n'exercerait aucun contrle de flux.

On ne disposerait pas de la capacit mmoire suffisante pour les


copies de trames en attente d'acquittement.

Notion de crdit maximum statique (taille maximum de la


fentre d'anticipation).
276

Amlioration 2 : Regroupement
des acquittements
Il est inutile et coteux d'envoyer
un acquittement pour chaque
trame d'information.
On peut acquitter plusieurs
trames d'information I par une
seule trame RR d'accus de
rception condition d'adopter une
convention:
Acquittement pour I(n-1) vaut
pour I(n-2), I(n-3), ... Etc
toutes les trames en attente
d'acquittement.

I(0)
I(1)
I(2)

RR(3)

Exemple d'mission avec anticipation


et de regroupement des acquittements
277

Regroupement des acquittements :


Rgles de fonctionnement (1)
Rgle 1 - Le rcepteur maintient une variable d'tat V(R) qui dsigne
le numro de squence de la prochaine trame attendue
=> Cette variable est incrmente de 1 chaque fois qu'une trame est reue
en squence sans erreur.
Rgle 2 - La variable de rception V(R) est reporte dans le champ
N(R) (le numro de squence de rception port dans les acquittements
retourns l'metteur RR(N(R)).
Rgle 3 - Cohrence initiale des numros de squence et numros
d'acquittement: N(S) et N(R) = 0 au dbut de la communication.
Rgle 4 - La signification de l'acquittement: RR(N(R)) acquitte toutes
les trames en attente d'acquittement dont le numro N(S) est infrieur ou
gal N(R)-1 => Non pas une seule trame dont le numro serait
N(S)=N(R)-1.
278

Amlioration 3 : Acquittements insrs


dans les trames infos (piggybacking
(piggybacking)
piggybacking)
Insertion d'un champ acquittement
(N(R)) dans lentte des trames d'infos.
=> Toute trame d'information devient un
acquittement positif pour des trames
du trafic chang en sens inverse.
I(N(S),N(R)) acquitte toutes les trames
d'information transmises dans l'autre sens
avec des numros de squence N(S)
infrieur ou gal N(R)-1
L'acquittement insr cote quelques
bits par trame d'information
Peu de trames d'acquittement explicites.
Beaucoup plus de possibilits
d'acheminer des acquittements, sauf si le
trafic d'informations est trs faible dans un
sens: retour un acquittement explicite.

I(0,0)
I(1,0)
I(2,0)

I(0,0)

I(3,1) I(1,2)

Exemple d'mission avec


anticipation, acquits
insrs et regroups
279

Ralisation des amliorations :


Notion de fentre dmission
La fentre d'mission ("Sender's Window") est l'ensemble
des numros de squence des trames dont l'mission en
anticipation est autorise.

Trames d'information dj mises et en attente d'acquittement.


Trames mettre prochainement.

Dfinie par : s =< N(S) < s+ We:


s est le numro de la plus ancienne trame non acquitte, qui est la
limite infrieure de la fentre.
s+We est la limite suprieure de la fentre, qui est le numro de la
premire trame dont l'envoi est interdit.
We crdit maximum constant: taille max de la fentre en mission.

Quand une (ou plusieurs) trames sont acquittes la


fentre d'mission glisse circulairement vers le haut.
Notion de protocole fentre glissante (ou coulissante) ("Sliding
280
Windows Protocols")

Protocoles fentres glissantes :


Exemple de fentre dmission
Numros de
squence de
trames
acquittes

Numros
de
squence
de trames
en attente
d'ack
2

Espace du pass

Numros de
squence dont
l'utilisation
est interdite

Numros
de
squence
utilisables
en
mission

Espace de numrotation courant


Fentre
courante

Limite
infrieure
de fentre
Pointeur dbut
de fentre s
"Acquittement attendu"

Taille 4
We=4

Limite
suprieure
de fentre

Pointeur courant
"Prochaine trame
mettre" V(S)

Pointeur fin de
fentre s + We
281

Protocoles fentres glissantes :


exemple de glissement aprs RR(4)
7

Espace du pass

Espace de numrotation courant

Trames acquittes

Fentre
courante

Limite
infrieure
de fentre

Taille 4
We=4

Limite
suprieure
de fentre

282

Ralisation des amliorations :


Notion de fentre de rception (1)
Fentre de rception ("Receiver's Window") :
l'ensemble des numros de squence des trames que
le rcepteur est autoris recevoir.
=> Toute trame dont le numro de squence
correspond un numro de la fentre de rception
est accepte.
=> Toute trame dont le numro de squence est
l'extrieur de la fentre de rception est dtruite.

283

Ralisation des amliorations :


Notion de fentre de rception (2)
Une trame reue correctement et dont le numro de
squence correspond au niveau bas de la fentre en
rception:
=> peut-tre dlivre l'utilisateur car elle est en squence
(respect de l'ordre d'mission),
=> La fentre en rception peut glisser d'une unit vers le
haut,
=> La trame peut-tre acquitte vis vis de l'metteur,
Ces oprations sont ralises de faon plus ou moins rapide
sans incidence sur le fonctionnement correct du protocole.
La fentre d'mission et la fentre de rception peuvent tre
de tailles diffrentes.
284

Fentre de rception dans le


protocole 4
Taille de la fentre en rception : 1
Le rcepteur est donc oblig de recevoir les trames correctement les
unes aprs les autres exactement dans l'ordre d'mission (un seul
tampon suffit).
Quand une trame est en erreur le rcepteur (qui persiste a ne vouloir
qu'une seule trame) perd toute la srie de trames mises en
anticipation par l'metteur :
=> Effort d'anticipation perdu (optimisation venir protocole 5)

Stratgie de reprise sur erreur

Stratgie de dlai de garde et acquittement positif


Stratgie d'acquittement ngatif

Technique retour arrire de n : "Go back n"

Lorsque le rcepteur constate une lacune dans la squence des


trames et il demande la retransmission de toutes les trames non
acquittes avec : N(S) > N(R)-1
285

Exemple de fentre en rception


dans le protocole 4
Fentre en rception
Numros de
Numros de
squence de
squence de
trames
trames en
reues en Fentre anticipation
squence courante

Fentre en rception
aprs arrive de I(3)
Numros de
Numros de
squence de
squence de
trames
trames en
reues en Fentre anticipation
squence courante

7 0 1 2 3 4 5 6 7 0 1 2 3
Espace du pass
Espace du futur
Espace du futur
Espace du pass
Trames
Trames trop prcoces pour
Trames
Trames
trop
prcoces
pour
dupliques
le rcepteur
dupliques Taille 1
Wr = 1 le rcepteur
7 0

1 2 3

Pointeur fentre
Rception : trame attendue

Pointeur fentre
Rception : trame attendue
286

Exemple de fonctionnement
du protocole 4
Couche Liaison
Emetteur
I(0,0)
0
1
2
Fentre d'mission 3
de taille 7
plus rien mettre 4
5
Fin de

Temporisation
pour message 2 !

Couche Liaison
Rcepteur
RR(1)
RR(2)

2
3
4

Vers
Couche
Rseau

0
1
E : Trame
I errone
I : Trames
I ignores
2
3
4

5
RR(6)

5
287

Approfondissement 1 : taille maximum


de la fentre en mission
Ancienne Fentre
rception

Rcepteur

Nouvelle Fentre
rception

Hypothse: 8 numros de
squence et taille de
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
fentre 8
Si RR(2) se perd pour une
Emetteur
fentre correcte :
Cas de problme
retransmission accepte des
Cas ou tout va bien
trame 'se' perdue
Toutes les trames correctes trames des trames 2, 3, 4
Toutes les trames
sont incorrectes
=> En fait duplication.
RR(2) mis => Mme info
RR(2) mis
Il y ambiguit quand: se =
se + We mod (maxseq +1)
Ancienne Fentre Nouvelle Fentre
mission
mission perdue
=> On ne peut pas utiliser
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
une fentre comportant
la totalit des numros.
se

se+We-1se+We se+2We-1

288

Approfondissement 1 : formalisation
problme de taille maximum (1)
Hypothse : We = Maxseq +1
Un metteur met toute sa fentre: s < N(S) < s+We-1
Cas 1 : La premire trame s est en erreur
Si s est en erreur, le destinataire retourne un acquittement
portant N(R) = s => Dans ce cas l'acquittement signifie
qu'aucun message n'est reu correctement (attente de s).
Cas 2 : Toutes les trames sont reues correctement
Le destinataire retourne un acquittement N(R) = s+We
=> Dans ce cas l'acquittement signifie que toutes les
trames sont reues correctement (attente de s+We).
289

Approfondissement 1 : formalisation
problme de taille maximum (2)
Pour qu'il n'y ait pas dambigut possible sur la
signification il faut que les deux acquittements:
N(R) = s et N(R) = s+We
soient distinguables (soient des valeurs diffrentes)
Si We = Maxseq +1: Pas de distinction entre cas 1 et cas 2
N(R) = s = s+We = s + Maxseq +1 mod (Maxseq+1)
Pour que les We+1 nombres allant de s s+We soient
tous distincts modulo Maxseq+1 il faut We < Maxseq+1.
=> On doit prendre au plus We = Maxseq
Exemples : n = 3 , 2n = 8, We=7 trames en anticipation.
Cas n = 7 , 2n = 128, We = 127 trames en anticipation.
290

Approfondissement 2 : Niveaux de
contrle de flux
1 Contrle de flux par fentre d'mission (rappel)
Avec une fentre glissante, si le destinataire sabstient de retourner des
acquittements, il est assur de ne pas recevoir plus de We trames
dinformations s'il retient ses acquittements.
Problme - Cette technique ne peut plus s'appliquer lorsqu'un site
peut obliger l'autre acquitter (mode commande rponse).

2 Suspension temporaire des changes


Permet au destinataire de demander l'arrt temporaire (puis la
reprise) du protocole.
Exemple : RNR (non Prt recevoir) demande la suspension
RR ou REJ permettent de reprendre
Autres exemples : (XOFF, XON) ou (WACK, ENQ) , Ethernet 802.1q
Ne convient pas si un nombre important de trames peuvent
291
tre mises pendant la transmission de la demande darrt.

Protocole 5 : A fentre glissante


et rejet slectif
Objectif : Conserver le bnfice de l'anticipation en cas
d'erreur.
Solution : utiliser une fentre de rception de taille
suprieure 1
=> Wr>1 dfinit la plage des numros N(S) de trames
d'informations acceptables par le destinataire.
=> Le rcepteur accepte des trames dsquences (avec
des lacunes dans la numrotation).
=> Le rcepteur doit donc grer pour chaque trame de la
fentre un boolen indiquant l'arrive correcte.
=> Le rcepteur reconstitue la squence complte des
trames mises par retransmission sur chance de dlai
de garde ou sur acquittement ngatif.
292

Exemple de fonctionnement en mode


de rejet slectif
Couche Liaison
Site A 0

L'acquittement
ngatif est baptis
galement rejet
slectif (SR(N(R)
"Selective Reject")
Cest une demande
de retransmission
d'une seule trame
d'information en
erreur (de numro
de squence N(R)).

Temporisation
pour messages 2
Temporisation
pour messages 3

2!
3!

1
2
3
4
5
6
2
3
7
8

I(0)
I(1)
I(2)
I(3)
I(4)
I(5)
I(6)
I(2)
I(3)
I(7)
I(8)

Couche Liaison
Site B
RR(1)

RR(2)

1
E
3
4
5
6
2
I

SR(2)

RR(7)

7
RR(9)

Vers
Couche
Rseau

stockes
2,3,4,5,6
Vers
Couche
Rseau

8
293

Approfondissement 1 : Problmes de
taille de fentres en rejet slectif
Dimensionnement des fentres mission et
rception
- We < Wr : pas trs utile car Wr-We tampons en rception
ne sont jamais utiliss.
- We > Wr : on ne traite pas compltement le problme de
perte du bnfice d'anticipation en cas d'erreur.
- We = Wr : choix rationnel.

Problme : le protocole en rejet slectif


fonctionne til avec We = Wr = maxseq (la valeur
dtermine pour le protocole 4).
294

Approfondissement 1 : Perte dun


acquittement pour une fentre pleine
Rcepteur

RR(s+Wr)

Ancienne Fentre
rception

Ex: We = Wr = 7

Nouvelle Fentre
rception

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

s+Wr-1

Emetteur
Cas de problme
RR(s+Wr) perdu
Ancienne Fentre
mission

s+2Wr-1
s+Wr
Cas ou tout va bien
RR(s+Wr) correct
Nouvelle Fentre
mission

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

s+We-1 s+We s+2We-1=s+We+Wr-1


=s+Wr
Retransmissions acceptes des trames 3,4,.. : duplication
s

295

Approfondissement 1 : Formalisation du
problme de taille en rejet slectif
Si We = Wr = W : il y ambigut entre deux
fentres d'mission successives quand
s = s + 2*We -1 mod (maxseq +1)
=> W = maxseq/2 +1
=> On ne peut pas utiliser plus de la moiti des
numros de squence disponibles.
Relation plus gnrale : si We diffrent de Wr
s = s + We + Wr -1 mod (maxseq +1)
We + Wr - 1 = maxseq +1
Ambigut si We + Wr = maxseq +2
296

Approfondissement 2 : Gestion de
temporisateurs multiples
Les protocoles fentres glissantes rejet slectif
impliquent une temporisation associe chaque
message.
Gestion d'un chancier (une liste chane par ordre
croissant de dates d'chances).
Armement d'un temporisateur ("Start_timer")
. Insertion d'vnements gnrer dans la liste.
Dsarmement d'un temporisateur ("Stop_timer")
. Retrait de la liste de l'vnement associ
chance d'un temporisateur ("Alarm")
. Dclenchement de traitement de temporisateur sur
arrive en chance du temporisateur de la tte de liste.
297

Approfondissement 2 : Schma avec


temporisateurs multiples
Horloge temps rel
Interruptions
Priodiques
(tops)

Tte de liste

Compteur de tops: date courante


5

La temporisation de la
trame 1 est chance : 5

Fin de liste

12

17

19

24

Date en nombre de
tops d'expiration

Numro de squence
de la trame associe
298

Conclusion : Solutions gnrales aux


problmes des protocoles de liaison
Existence de solutions satisfaisantes construites
pour des voies physiques bruites bas dbit.
. Solution au problme du contrle d'erreur, de
contrle de flux, de contrle de squence.
Rutilisation de ces solutions dans les rseaux
sans fils (bruits et dun dbit pas trs lev).
Renouvellement du problme :
A) Liaison sur cble coaxial ou fibre optique : faible bruit
et haut dbit.
B) Les applications vises sont de plus en plus multimdia:
besoin de solutions de communication qualit de service
=> La couches liaison traite la dlimitation, le
multiplexage, ladministration mais pas de contrle
d'erreur ni de flux (reports au niveau transport)
299

Niveau Liaison En Point point


Chapitre II
Protocoles industriels
II.1 Protocole trames de bits
II.2 Protocole PPP

300

Protocoles de liaison en point point :


Exemples industriels

II.1
Protocoles trames de bits

301

Introduction : Rappel des protocoles


synchrones en mode caractre
Les premiers protocoles de liaison
implants (dfinis avant 1970).
Protocoles en mode caractre BSC "Binary
Synchronous Communication"
L'unit d'information est le caractre.
Certains caractres sont rservs aux besoins du
protocole : les caractres de contrle subsistent

dans le jeu de caractres ASCII)

Il a exist de multiples versions de protocoles


bases sur des principes et une utilisation des
caractres de contrle souvent trs voisins.

Exemple : Protocole BSC 3780


302

Evolution vers les protocoles


trames de bits
Volont de construire des protocoles
indpendants dun jeu de caractres.

Si l'on transporte des caractres 10 bits ou des mots 60


bits il faut dcouper et coder les donnes au format
caractre du lien.
Il faut traiter chaque fois le problme de la
transparence en fonction du code caractre et traiter
spcifiquement les caractres de contrle.

Consquence pour les protocoles trames


de bits:

a) La charge utile devient une suite de bits.


b) Abandon des caractres de contrle et dfinition
dun format de trame au moyen de zones ayant un
rle et un codage binaire (structure de message).
303

Protocoles trames de bits :


Historique
istorique et normes associes (1)
IBM a dvelopp vers 1970 SDLC ("Synchronous
Data Link Communication") pour SNA.
SDLC a t soumis l'ISO pour normalisation. Modifi il
est devenu HDLC "High-level Data Link
Communication".
SDLC a t soumis l'ANSI pour devenir le standard
amricain qui l'a modifi et est devenu ADCCP
("Advanced Data Communication Control
Program")
Le CCITT a adopt et modifi HDLC qui est ainsi devenu
le LAP ("Linkage Access Protocol") pour le standard
de rseau X25.
Le CCITT a modifi X25 dont le LAP qui est devenu le
LAPB ("Linkage Access Protocol" B ou Balanced)
304

Protocoles trames de bits :


historique et normes associes (2)
Les IEEE ont normalis comme l'un des standards de
liaison sur les rseaux locaux une version modifie
lgrement : le LLC2 ("Logical Link Control type 2")
Une autre version : le LAPD ("Linkage Access
Protocol on the D channel") est dfinie pour servir
de protocole de liaison sur les canaux D du RNIS.
Une version LAPX est spcifie pour fonctionner avec
des changes l'alternat (LAP semi-duplex).
Une version LAPM (LAP Modem) est spcifie pour la
corrections derreurs dans les modems.
Le standard Internet PPP (Point to Point Protocol)
en version de base reprend diffrents ides des
protocoles trames et possde une version avec
contrle derreur qui est un version de LAPB.
305

Protocoles trames de bits :


Principes gnraux
Nombreux points communs : protocoles fentres.
Mais variantes de dtail, lies des contextes dutilisation
qui rendent ces protocoles incompatibles
Quelques choix communs
Utilisation du principe d'anticipation.
Numros de squence
En gnral sur 3 bits (au maximum 7 trames en anticipation).
Variantes sur 7 bits (exemple LAPD).

Regroupement des acquittements.


Acquittements insrs ("piggybacking").
Choix dans la plupart des cas dune fentre en
rception de taille 1 (sauf HDLC, ADCCP).

306

Protocoles trames de bits :


Rappel voies multipoint
Deux modes de fonctionnement :

Symtrique (Balanced) : point point.


Dissymtrique (Unbalanced) : en scrutation matre esclave
(mode multipoint) ("polling- selecting").

Organisation arborescente (en grappe) des voies


multipoint

Site matre (calculateur): qui dispose de toutes les fonctions


(autre terme: primaire) et supervise les communications.
Sites esclaves (terminaux): qui ne disposent pas de certaines
fonctions (autre terme: secondaire) et qui obissent au matre.
Esclave 2

Maitre
Esclave 1

Esclave 3

Esclave 4
307

Protocoles trames de bits :


la
a gestion des voies multipoint
Une classification des fonctions est effectue :
fonctions primaires et fonctions secondaires (pour
caractriser les modes matre et esclave).
Sont considres comme primaires :
- Mise en ligne ou hors ligne (mise d'une station en l'tat
d'mettre ou de recevoir).
- L'initiative dans la validation des donnes
(sollicitation des acquittements).
- Les traitements en cas d'erreur de protocole.
Sont considres comme secondaires :
- L'initiative d'mission de donnes (une fois le mode
d'change tabli)
308
- ... les autres fonctions

Protocoles trames de bits :


les
es diffrents modes d'change
Distinction dans les modes d'utilisation des fonctions
primaires et secondaires
Mode normal de rponse NRM ("Normal Response
Mode") : Configurations dissymtriques
- L'initiative de l'attribution du mode d'change est
rserv uniquement la station primaire.
Mode asynchrone ABM ("Asynchronous Balanced
Mode") : Configurations symtriques
- Mode asynchrone symtrique applicable aux liaisons
point point en rseau..
- Une station recevant une commande doit y rpondre
immdiatement (voir plus loin bit P/F).
309

Protocoles trames de bits :


la
a structure des trames (1)
8
01111110
Fanion

8
Adresse
A

>=0

16

Contrle Donnes Code dtecteur


C

FCS

8
01111110
Fanion

1) Les fanions et la transparence binaire (bit stuffing)


- Une mthode pour dlimiter les trames qui prserve les proprits
de transparence des donnes utilisateur.
- Chaque trame commence et se termine par la chane 01111110
(Terminologie Drapeau, fanion ou flag)
- A lmission quand on dtecte une donne avec une de suite de
5 bits 1 conscutifs on insre un 0, en rception le bit 0 suivant 5
bit 1 est automatiquement enlev.
- Un fanion dlimiteur 01111110 est donc toujours considr
310
comme tel.

Protocoles trames de bits :


la
a structure des trames (2)
2) Le champ adresse (A)
Permet de traiter les voies multipoint (adresse d'une station secondaire).
Pour les voies point point (on distingue les commandes des rponses).
3) Le champ contrle (C) contient :
- Le type de la trame.
- Le numro de squence
- Les acquittements.
- Le bit de commande rponse.
4) Le champ donnes (I)
Il peut tre arbitrairement long ( traiter en liaison avec le CRC dont
l'efficacit dcrot en raison de la probabilit d'erreurs en rafale).
5) Le champ dtection d'erreur (FCS "Field Check sequence") .
Gnr par le polynme du CCITT: X16 + X12 + X5 + 1
En LAPB une variante est applique pour dtecter les pertes de fanions.
311

Protocoles trames de bits :


les trois catgories de trames
1. Information :Trame I ("Information")
Transportent des informations significatives
2. Supervision : Trame S ("Supervision")
Utilises pour superviser les changes de trames I.
Exemples : Envoyer un acquittement explicite
Demander une suspension temporaire
3. Gestion : Trame U ("Unnumbered")
Assurent les fonctions ncessaires avant et aprs
l'change des donnes.
Exemples : connexion, dconnexion d'une station,
traitements d'erreurs de protocole.
312

Protocoles trames de bits :


les trois catgories de trames
Trame I

1
0

Trame S

1
1

3
N(S)

1
P/F

3
N(R)

1
P/F

3
N(R)

1
P/F

3
M

1
Trame U

N(S) : numro de squence en mission


N(R) : numro de squence de la prochaine trame
non encore reue.
S : type de la fonction de supervision
M : type de la trame non numrote
313

Le Bit P/F : Scrutation/Fin d'mission


Commande/Rponse ("Poll
("Poll/final")
Poll/final")
Premire Signification en mode normal de rponse :
Invitation mettre ou fin d'mission (un primaire gre un
groupe de secondaires):
- Dans les trames de commande le bit 1 not P signifie "invitation
pour la station adresse mettre (polling)".
- Dans les trames de rponse en provenance de stations secondaires
ce bit 1 not F signifie fin de transmission.
Seconde Signification en mode asynchrone quilibr :
Commande Rponse.
- La station A recevant une trame avec le bit P l'interprte comme
une commande mise par le primaire distant B.
Exemple type: commande d'acquittement immdiat destination du
secondaire local.
- A doit rpondre immdiatement la commande par une trame de
rponse avec le bit F positionn car le site distant B a arm un
dlai de garde pour retransmettre.
314

Problme du bit
it P/F en mode
symtrique
Les deux stations possdent :
- les fonctions primaires (mettent des trames de commande avec bit P).
- les fonctions secondaires (mettent des trames de rponses avec bit F).
Mais un seul bit pour deux significations
Une station A recevant un bit P/F ?
1- C'est un bit P que B a mis par ses fonctions primaires.
2- C'est un bit F en rponse un bit P que A avait envoy avant.
Site B
Site B Site A
Site A
I(0,0,1)
?I(0,0,P)
I(0,1,1)

?I(0,1,F)

I(0,0,1)

I(0,0,1)

?I(0,0,P) ?I(0,0,P)
I(1,1,1)
?I(1,1,F)

315

Solution bit
it P/F en mode symtrique
disposer de deux bits

1) En LAPB on ne dispose pas de deux bits dans l'octet de contrle.


On conserve la structure du champ contrle => On utilise ladresse.
- Si une station agit comme primaire elle place l'adresse de la
station loigne (cas d'une initiative d'mission, bit P)
- Si une station agit en secondaire elle place dans les trames son
adresse (cas dune rponse bit F).
Primaire
abonn

Commande
Rponse

Rponse
Secondaire
Abonn Commande

Secondaire
Transpac

Adresses
trames
Transpac : 1

Primaire
Transpac

Adresses
trames
Abonn : 3

2) Dans les protocoles LAPD, Relais de trame on a dfini le format des


trames pour faire place un bit de plus C/R (commande/rponse).
316

Les quatre types de trames de


supervision (1)
Type 0 - RR Prt recevoir ("Receiver Ready")
- Station prte recevoir des trames I.
- Permet d'accuser rception des trames dont le numro de
squence est infrieur ou gal N(R)-1.
=> Trame utilise lorsqu'il n'y a pas suffisamment
de trafic dans un sens pour transporter les
acquittements.
Type 1 - REJ Rejet ("Reject")
- Acquittement ngatif (protocole 4).
- Le champ N(R) dsigne la premire trame en squence
qui n'a pas t reue.
=>L'metteur doit rmettre toutes les trames
depuis N(R).
317
- Toutes les trames jusqu' N(R)-1 sont acquittes.

Les quatre types de trames de


supervision (2)
Type 2 RNR- Non prt recevoir "Receiver not ready"
- Indique une incapacit temporaire accepter les trames
d'informations suivantes (en cas de saturation des tampons
par exemple).
- Mcanisme de contrle de flux plus fort que celui de la
fentre (un tat d'exception) qui finit avec RR ou REJ.
Type 3 SR - Demande de retransmission slective
"Selective Reject"
- Demande de retransmission de la seule trame dont le
numro est contenu dans N(R)
Non applicable au LAPB et SDLC.
Applicable HDLC et ADCCP.
318

Trames non numrotes (type U) :


Ouverture de connexion
Distinction des modes d'change en ouverture:
. Mode normal de rponse NRM
. Mode symtrique asynchrone ABM
Distinction de deux formats de trames :
. Format standard : Champ commande sur 8 bits (n squence 3 bits).
. Format tendu : Champ commande sur 16 bits (n squence 7 bits).
Demande une station loigne de se mettre en ligne dans un
mode d'change
. SNRM : Mise en mode normal de rponse standard ("Set Normal
Response Mode")
. SNRME: Mise en mode normal de rponse tendu ("Set Normal
Response Mode Extended")
. SABM : Mise en mode asynchrone symtrique standard ("Set
Asynchronous Balanced Mode")
. SABME : Mise en mode asynchrone symtrique tendu ("Set
319
Asynchronous Balanced Mode Extended")

Trames non numrotes (type U) :


Autres trames de gestion de connexion
DISC : Dconnexion ("Disconnect")
. Demande de fin du mode oprationnel (par exemple dans le cas o une

station suspend son fonctionnement pour une opration de maintenance).

UA : Rponse d'accus de rception non numrot (


"Unnumbered Acknowledge")
. Acceptation par laquelle une station notifie son accord une commande
non numrote (commande U)

. Il n'y a pas d'autre champ utilis


DM : Rponse mode dconnect ("Disconnect Mode")
. Indique que la station n'est pas en ligne et ne peut pas accepter de
trame.
320

Trames non numrotes : Trames de


rapport derreurs protocolaires

Trames qui indiquent qu'une condition d'erreur ne peut tre


corrige par retransmission car la trame est incorrecte smantiquement
(erreur de protocole).
FRMR: Rejet de trame ("FRaMe Reject") Applicable au LAPB.
Champ
d'information
F

FCS
20 bits

1 1 0

1 0 0

Remplissage 4 bits
: nombre entier d'octet

code MMP/FMMM
8

12
0

0
champ de commande
de la trame rejete

V(S)

16
V(R)

V(S) : Numro d'mission en cours la station secondaire.


V(R) : Numro de rception en cours la station secondaire.

bit W - Commande invalide :


Exemple : une trame de supervision
de type 3 demande de rptition
slective n'est pas admise en LAPB.
bit x : Prsence indue d'un champ
d'information (les trames S et U
n'ont pas de champ d'information
en gnral sauf FRMR et CMDR).
bit y : Champ d'information de la
trame reue trop grand pour une
station secondaire (ou trop petit).
Exemple : Trame de moins de 32
bits interdite en HDLC.
bit z : Numro de squence
incorrect - accus de rception
d'une trame non mise. 321

Trames non numrotes (type U) :


Autres trames
UI : Trame de gestion d'information non numrotes
("Unnumbered Information")
Pour les protocoles sans connexion, un seul type de
trame UI (applicable PPP).
Pour changer des informations protocolaires.
Exemple : obtention dynamique d'une adresse (LAPD)
XID : Trame d'identification ("eXchange IDentifier")
Pour changer les identificateurs de stations.
Cette trame peut comporter un champ d'information gr par
le niveau suprieur
(Applicable au LAPD)
322

Protocoles trames de bits :


Le protocole LAPB
Rappel de la situation du protocole (niveau liaison dans
les rseaux publics "Transpac").
X25 PLP "Packet Layer protocol"
X25 LAPB "Linkage Access Protocol B"
X21 Niveau Physique

Rsum des trames utilises en LAPB


SABM
UA
DISC
DM
FRMR
I
RR
RNR
REJ

:
:
:
:
:
:
:
:
:

Ouverture de connexion.
Acquittement non numrot.
Fermeture de connexion.
Indication de mode dconnect.
Erreur de protocole.
Trame d'information.
Acquittement explicite.
Suspension temporaire.
Rejet d'une suite de trames I.

323

Protocoles trames de bits :


Le protocole LAPD
Rappel de la situation du protocole : niveau liaison pour
le canal D dans le rseau numrique intgration de services
(RNIS)
X25 PLP

Q930-I451 ProtocoleD

Q921-I441 LAPD
I431 "Interfaces S/T"

Principes gnraux du protocole LAPD

- En mode connect
Echange de trames numrotes I en mode asynchrone quilibr tendu (SABME).
Amlioration des possibilits d'adressage: affectation dynamique d'adresse (XID).
En cas de violation de protocole il y a rinitialisation complte sans notification de
cause (pas de FRMR).
- En mode non connect
Echange de trames d'informations non numrotes UI sans correction d'erreur
324 ni
contrle de flux.

Protocole LAPD :
Format des adresses
8

2
SAPI
TEI

C E
R A
E
A

E/A : Bits d'extension d'adressage.


C/R : Bit distinguant les commandes des rponses.
SAPI : Service Access Point Identifier Permet le
multiplexage de diffrents flux de rseau sur une liaison.
TEI : Terminal End-Point Identifier Adresse de l'appareil
physique (une appareil peut utiliser plusieurs adresses).
325

Protocoles trames de bits :


Adressage en LAPD
NIVEAU 3

Commutation
X25

Autres possibilits
SAPI 63 Adressage
SAPI V Videotex
SAPI T Tlaction
SAPI X Telex

NIVEAU 2

Signalisation
ProtocoleD

SAPI 16

SAPI 0

LAPD

SAPI 0
SAPI 16
TEI 5 TEI 10
TEI 17
TEI 67

NIVEAU 1
TEI 17 TEI 5 TEI 10TEI 67
CANAL D

326

LAPD : Gestion des identificateurs de


terminaux
a) Affectation statique
" Gnre par le fabricant de 0 63.
" Problme en cas de configurations conflictuelles.

" b) Affectation dynamique


" Existence d'une fonction de la couche liaison permettant

de demander un TEI la mise sous tension d'un terminal.


" TEI non dj affect entre 64 et 126.
" Utilisation de trames UI types de SAPI 63 TEI 127 pour

le protocole d'attribution d'adresse.


"
"
"
"
"
"

Demande d'identit
Identit refuse
Vrification d'identit
Rponse la vrification
Suppression d'identit.
Demande de vrification.

327

LAPD : Rsum des trames utilises

SABME
UA
DISC
DM
XID
UI
I
RR
RNR
REJ

:
:
:
:
:
:
:
:
:
:

Ouverture de connexion mode tendu.


Acquittement non numrot.
Fermeture de connexion.
Indication de mode dconnect.
Echange d'identificateur.
Information non numrote.
Trame d'information.
Acquittement explicite.
Suspension temporaire.
Rejet d'une suite de trames information.
328

Protocoles de liaison en point point :


Exemples industriels

II.2
Protocole PPP
("Point to Point Protocol")
1
2
3
4
5

Gnralits
La transmission de donnes
La configuration de liaison
La configuration de rseau
La compression denttes

329

Protocole PPP
("Point to Point Protocol")
Protocol")

II.2.1
Gnralits
A)
B)
C)
D)

Historique
Objectifs gnraux
Architectures
Organisation du protocole
330

A) Historique des protocoles de liaison


point point avec IP
IP (1980) : dfini pour linterconnexion de rseaux.
Besoin dune adaptation des paquets IP aux diffrents
rseaux viss:
IP sur rseaux locaux (Ethernet, )
IP sur rseaux longues distance (X25)
Besoin d'un protocole de liaison point point pour
acheminer les paquets IP sur voies sries.
Solutions propritaires trs simples (dbut 1980).
Normalisation minimum: SLIP (1984,RFC en 1988)
Cration dun groupe de travail IETF pour une
solution complte : PPP (RFC 1134 nov1989)
Amliorations successives de PPP : RFC complmentaires.
331
Version en cours RFC 1661 (juillet 1994)

A) Protocole SLIP (RFC 1055 juin 1988)


("Serial Line Internet Protocol")
Protocol")
Solutions propritaires 3COM, SUN 1984 (R. Adams)
SLIP Implant en 1984 sur BSD. RFC en 1988.
Solutions adoptes dans SLIP:
Dlimitation en transparence caractre
Dfinition d'un caractre de fin de trame "END" (0xC0) et
dune transparence: si END apparat dans les donnes
squence d'chappement 0xDB, 0xDC.
Si 0xDB apparat dans les donnes => mission 0xDB, 0xDB

Uniquement prvu pour transporter de lIP


Amlioration : compression des enttes (RFC1144
Van Jacobson ) => CSLIP (Compressed SLIP).
SLIP: un protocole qui a t quand mme trs utilis.
332

B) Objectifs gnraux de PPP


Pallier les insuffisances de SLIP
Pas de multiplexage, de traitement d'erreurs, daffectation
d'adresse IP, dauthentification daccs=> Protocole presque vide
La RFC na jamais t approuve dfinitivement.

PPP : une solution universelle pour la communication


au niveau liaison en point point.
Grande varit dappareils viss : htes, routeurs, points daccs
Grande varit de protocoles de niveau 3 (multiplexage de flots
dorigines trs diverses Internet, Appletalk, IPX, )
Grande varit de voies de communication tous dbits.
Liaisons spcialises sries synchrones, asynchrones (ADSL).
Architectures de rseaux pouvant tre utilises comme des voies de
communication point point: RTC, RNIS, X25, FR, ATM, rseaux locaux.

Implantation de solutions pour de trs nombreux problmes.


333

C) Architectures de rseaux avec PPP :


Solution de base
Serveur
daccs

Poste client

Modem

R
T
C

Modem

Communication physique

Communication liaison PPP

Rseau
dentre
prise

334

C) Architecture de fournisseur daccs


Internet (FAI, ISP )
Poste client

Modem

R
T
C

NAS : Network
Access Server

Rseau prestataire backbone


(ATM, MPLS avec IP)
Firewall

Serveur
RADIUS

Rseau Internet
335

C) Notion de NAS :
Network Access Server
NAS (Network Access Server) : Systmes ddis
supportant de nombreux types daccs physiques sries
(modems V90, canaux B, T2 , V35, Ethernet, ).
NAS : relais de ngociation en PPP pour laccs Internet
: ladresse IP, type de compression,
NAS : installs sur tout le territoire (dans les autocoms).
Utilisation dun serveur centralis pour lauthentification
et la comptabilit (RADIUS).
NAS : achemine ensuite les donnes en PPP/IP sur tous les
types de mdia voulus (ATM, Ethernet, SDH, FR) avec le
poste serveur.
336

C) Architecture de fournisseur daccs


avec ADSL
Poste client

ATU - R

DSLAM

BAS : Broadband
Access Server

Rseau prestataire
backbone
(ATM, FR, avec IP)
Firewall

Serveur
RADIUS

Rseau Internet
337

C) Notion de DSLAM et de BAS


ATU-R ADSL Transceiver Unit- Remote terminal end : Le
modem (cot usager)
DSLAM Digital Subscriber Line Access Multiplexer : un
multiplexeur de voies ADSL (avec modem cot prestataire).
BAS Broadband Access Server : le NAS pour voies ADSL.
PPP

PPP

AAL5

AAL5

ATM
ADSL
Client

ATM
ADSL

SDH

DSLAM

PPP

ATM
SDH

SDH

BAS
(vers le rseau
Internet)

338

D) Organisation gnrale de PPP :


les grandes parties
Protocole de transmission de donnes :
Un protocole pour communiquer (encapsuler des datagrammes
provenant de plusieurs protocoles de niveau rseau ).

Protocole de contrle de liaison :


LCP : Link Control Protocol
Un protocole pour tablir, configurer, tester une connexion de
liaison.

Protocoles de contrle rseau :


NCPs : Network Control Protocols
Une famille de protocoles pour tablir, configurer des paramtres
pour les protocoles de niveau rseau.

Protocoles dauthentification :

Une famille de protocoles pour contrler laccs au rseau. 339

D) Organisation gnrale de PPP :


la suite des protocoles PPP
Niveau rseau
Internet Protocol (IP)

Autre protocole

Niveau liaison
CHAP
PAP

Compression denttes

NCP

Contrle derreur,
squence, flux

LCP

Protocole de
transparence
Authentification
Niveau physique

Donnes

Configuration
340

Protocole PPP
("Point to Point Protocol")
Protocol")

II.2.2
La transmission des donnes

A)
B)
C)

Mcanismes de transparence
Contrle derreur, de flux, de squence.
Multiplexage (encapsulation multimulti-protocole)
protocole)
341

Introduction : organisation gnrale de


la transmission des donnes
Protocole de transparence
Doit fonctionner avec les principales voies de communications
existantes (synchrones trame de bits, asynchrones avec format
caractres) => Deux sortes de transparence.

Protocole de contrle derreur, de flux, de squence


Trs voisin de LAPB.

Multiplexage (encapsulation multi protocole)


PPP permet le multiplexage de diffrents flots provenant de
diffrents niveaux rseaux (cods sur 2 octets).

Compression des enttes (Van Jacobson RFC 1144).


Compression des enttes PPP : Recherche dun surcot minimum.
Ex: PPP utilise 8 octets pour le tramage pouvant tre rduits 2 ou
4 octets lorsque des mcanismes de compression sont utiliss.
342
Compression des enttes IP, TCP.

Introduction :
Format de la trame PPP
8
01111110

Fanion

8
Adresse

>=0

Contrle

Donnes

1 ou 2
Protocole

>=0

16
Code dtecteur

FCS

8
01111110

Fanion

>=0

Information Bourrage

Reprend le format de la trame HDLC.


Ajoute une possibilit dencapsulation multi-protocole.

343

A) Dlimitation (mcanismes de
transparence) : Gnralits
Adaptation la voie physique (RFC1662 PPP in
HDLC Framing)
Deux types de voies => deux mthodes diffrentes de
transparence:
Voies synchrones au niveau bit (bit synchronous)
=> Transparence binaire HDLC.
Comme dans les protocoles trames de bits on rajoute un 0 aprs tout
squence de 5 bits 1 (bit stuffing).

Voies asynchrones par octet ou synchrone au


niveau octet
=> Transparence caractre PPP.

344

Transparence caractre :
Le mode par dfaut
Dlimiteur de trame
Comme en HDLC fanion 01111110 en hexa 0x7F.
Caractre dchappement (escape)
Caractre 01111101 en hexa 0x7d.
Caractres de contrle : Ils dpendent de la voie utilise.
Les caractres de contrle soumis au mcanisme de
transparence sont dfinis par une table de bits ACCM
(Async Control Character Map).
Si le bit ACCM est 1 le caractre associ est remplac
par une squence dchappement de deux caractres:
Le caractre escape.
Le caractre de contrle en ou exclusif avec 0x20.
345

Transparence caractre (suite)


Les caractres compris entre 0 et 31 (0x00 et 0x20) sont en
gnral rservs au pilotage des modems.
Si on veut les utiliser au niveau liaison, il faut les mettre
dans la table ACCM.
Exemples dapplication de la transparence PPP:
0x05 est cod 0x7d, 0x25. (Contrle modem code 5)
0x7e est cod 0x7d, 0x5e. (Flag Sequence)
0x7d est cod 0x7d, 0x5d. (Control Escape)
0x03 est cod 0x7d, 0x23. (ETX)
0x11 est cod 0x7d, 0x31. (XON)
0x13 est cod 0x7d, 0x33. (XOFF)
346

B) Contrle derreur, de flux, de


squence : Choix PPP deux solutions
1 Solution standard (par dfaut) :
Transmission non fiable,
Pas de contrle d erreur, de flux, de squence.
2 Solution fiable (en option) :
Transmission fiable en mode connect
Contrle derreur, de flux, de squence
347

Contrle derreur, de flux, de squence :


Transmission non fiable

RFC 1662 PPP in HDLC Framing : Mode par dfaut.


Protocole de liaison sans connexion.
Pas de de contrle derreur, de squence, de flux.
Les trames incorrectes (FCS faux) sont dtruites.
Une seule trame UI Unnumbered Information
Fanion
0x7E

Adresse
0xFF

Contrle
0x03

Donnes

FCS

Fanion
0x7E

Fanion : un octet (0x7e) pour la synchro trame. Un seul fanion entre deux trames.
Adresse : un octet (0xff), adresse diffusion en multipoint (All-Stations address).
Champ Contrle : un octet (0x03), type Unnumbered Information (UI) avec bit
Poll/Final (P/F) bit zro.
Champ code polynomial : Frame Check Sequence (FCS) deux octets. Possibilit de
348
ngocier un code sur 32-bit (quatre octets).

Contrle derreur, de flux, de squence :


Transmission fiable
Transmission fiable : Numbered Mode RFC 1663 PPP
Reliable Transmission
Mode ngociable en dbut de transmission :
Si lon considre que la liaison nest pas assez fiable.
Si lon veut viter des problmes avec la compression.

Protocole dfini en fait par la norme ISO 7776


(Description of the X.25 LAPB-Compatible DTE Data
Link Procedure).
Remarque : Possibilit dutiliser des tailles de fentre de
1 127, modes douverture de connexion SABM (1 7) ou
SABME (1 127).
349

C) Multiplexage et zone de donnes


Format de la zone donnes de la trame
Type de protocole rseau transport
Charge utile (paquet rseau, LCP, )
Bourrage

Type de protocole rseau transport


Valeur sur deux octets dfinie par le RFC1340 dfinissant les
codes des protocoles autoriss (IANA-ICANN).
Quelques exemples de valeurs possibles
0x0021 IP
0x002B IPX
Ox8021 IPCP
0xC021 LCP
0x002D TCP/IP avec compression
0x002F TCP/IP Sans compression
Codage du type de protocole sur deux octets ramen un
350
octet par ngociation si ncessaire.

Zone donnes : taille maximum et


bourrage
Zone des donnes usager : longueur maximum
en PPP
Terminologie liaison : MRU Maximum Receive Unit
Valeur ngociable ltablissement de la liaison :
valeur par dfaut = 1500 octets.
Fragmentation par le niveau rseau.

Bourrage
Si le mdium de transmission utilise un format fixe
(taille de paquets, de cellule ATM, )
et que cette taille obligatoire de la trame ne correspond
pas la taille de linformation transporter.
351

Protocole PPP
("Point to Point Protocol")
Protocol")

II.2.3
La configuration de liaison
(LCP Link Configuration Protocol
A) Gestion de connexion avec LCP
B) Le protocole LCP
C) Les options de configuration LCP.
352

A) LCP et la gestion de connexion


LCP permet douvrir, de fermer la liaison PPP : gestion
de connexion.
LCP permet de ngocier des paramtres de
fonctionnement louverture (puis de rengocier),
Existence de paramtres par dfaut automatiquement
changs au dbut entre pairs sans intervention oprateur.
Configuration possible par loprateur louverture.
Exemples de ngociation
Dfinir le format dencapsulation (ngociation de la compression)
Dfinir la taille maximale des trames (taille MRU).

LCP permet de dtecter certaines conditions derreur


(liaison en fonctionnement correct, en panne, en boucle)
353

Automate LCP
Dead
?Up
?Down

Establish

?LCP Ok

?LCP Fail
Terminate

Authenticate
?Fail
?Fail
Network
?NCP Ok

?Closing
Open

354

tablissement d'une connexion PPP :


Commentaire des diffrentes phases (1)
Liaison non oprationnelle (Link Dead)
Le niveau physique nest pas prt.
Un vnement externe (dtection de porteuse, dmarrage
oprateur, ) permet de passer ltat prt.

Liaison en cours dtablissement (Link Establishment


phase).
Le LCP (Link Control Protocol) tablit les paramtres de liaison.

Authentification (Link Authentication Phase)


Lauthentification (si elle est demande) prend place aussitt que
possible aprs tablissement des paramtres de liaison.
Si lauthentification choue on termine.
355

tablissement d'une connexion PPP :


commentaire des diffrentes phases (2)
Ngociation des paramtres de rseau (NetworkLayer Protocol Phase).
Chaque niveau rseau (comme IP, IPX, ou AppleTalk) configure
ses propres paramtres (Network Control Protocol).

Ouvert (Open Phase)


Aprs avoir atteint cet tat PPP peut transporter les paquets de
donnes.

Termin (Link Termination Phase)


PPP termine dans diffrents cas: perte de porteuse, mauvaise
qualit, mauvaise authentification, expiration dun dlai
dinactivit, fermeture dcide par loprateur.
LCP change des paquets de terminaison.
Informe le niveau rseau de la fermeture.
356

B) Le protocole LCP
Protocole qui permet principalement la ngociation des
options de configuration dune liaison PPP.
Existence dune configuration par dfaut.
LCP permet de modifier ces options.
Chaque extrmit propose ses options.
Principales notions
Dfinition des messages LCP et principes de la ngociation.
Dfinition des options (attributs) ngociables.
Les messages LCP sont encapsuls dans la zone
information dune trame PPP (type de protocole
357
C021).

Protocole LCP :
Format de la trame LCP
0

Code

Ident

Longueur

4
Donnes

Reprsentation uniquement de la charge utile LCP.


Code ( code) : sur un octet le type LCP.
Identificateur ( Identifier) : sur un octet il permet dassocier les
requtes et les rponses.
Longueur (Length) : sur deux octets, la longueur inclut le code,
lidentificateur et la donne.
Donnes (Data) : la zone donnes est vide ou son format est dfini
par le code type : contenu essentiel les valeurs ngocies.
358

Protocole LCP :
Liste des types LCP (codes)
Code
1
2
3
4
5
6
7
8
9
10
11
12

Dsignation du paquet
Configure-Request
Configure-Ack
Codes valables
Configure-Nak
pour IPCP et LCP
Configure-Reject
Terminate-Request
Terminate-Ack
Code-Reject
* Protocol-Reject
* Echo-Request
* Echo-Reply
* Discard-Request
* RESERVED

* Codes valables
pour LCP
seulement
359

Protocole LCP :
Description dtaille de types LCP (1)
Configure-Request
Pour ouvrir une connexion : le paquet Configure-Request contient
toutes les options que lon modifie par rapport aux valeurs par dfaut

Configure-Ack
Si toutes les options de configuration sont reconnues et acceptes
rponse : configure-Ack.

Configure-Nak
Si toutes les options de configuration sont reconnues mais certaines ne
sont pas acceptables: rponse Configure-Nak.
Le champ donnes contient les valeurs de configuration non acceptes

Configure-Reject
Si certaines options de configuration ne sont pas reconnues ou ne sont
pas acceptables dans le cadre dune ngociation prvue par
ladministrateur rseau alors la rponse est un configure-Reject.360

Protocole LCP :
Description dtaille de types LCP (2)
Terminate-Request et Terminate-Ack
Pour fermer une connexion LCP.

Code-Reject : Type LCP inconnu (champ code).


Protocol-Reject : Type de protocole inconnu (champ proto).
Echo-Request et Echo-Reply
Permet de tester une liaison PPP : change dun nombre magique sur
4 octets caractristique de lmetteur si une valeur a t ngocie
(sinon 0). Le nombre magique doit tre celui du site distant. Si cest
celui du site local il y a une boucle.

Discard-Request
Outil de test de liaison : une mission simple, local vers distant, avec
destruction immdiate du paquet.
Utilisation : Dverminage, test de performance,
361
Contient un nombre magique sil a t ngoci (sinon 0).

C) Valeurs ngociables :
Options de configuration
Donnes ngociables : codes type, longueur, valeur
0
Type

Longueur

Valeur

Diffrents types de donnes ngociables


0

RESERVED

Protocol-Field-Compression

1
2
3
4

Maximum-Receive-Unit
Async-Control-Character-Map
Authentication-Protocol
Quality-Protocol

8
9
10
11

Addre-and-Contr-Field-comp
FCS Alternatives
Padding protocol
Numbered mode

5
6

Magic-Number
Reserved

etc ..
362

Description de quelques options (1)


Maximum-Receive-Unit (MRU)
La valeur de la taille maximum par dfaut est de 1500 octets. Une
implantation doit toujours tre capable de recevoir cette taille.
Par cette ngociation on peut indiquer au site distant que lon peut
recevoir des paquets de plus grande taille ou que lon demande la
transmission de paquets de plus petite taille.
Async-Control-Character-Map
Permet de redfinir la tables des codes caractres qui seront soumis
la transparence caractres.
La table est sur 32 bits (4 octets) et concerne les codes caractres de
0x0000 0X0020.
Authentication-Protocol
Permet de dfinir le protocole dauthentification utilis :
PAP (code protocole 0xC023, CHAP (code 0xC223).
363

Description de quelques options (2)


Quality-Protocol
Pour ngocier le type de protocole de gestion de la qualit de la liaison
(valeur sur 2 octets). Principal choix: LQR Link Quality Report 0xC025

Magic-Number
Pour detecter les liaisons qui bouclent (looped-back links).
Chaque cot tire alatoirement un nombre alatoire sur 4 octets (le
nombre magique qui doit changer chaque nouvelle ouverture.

Protocol-Field-Compression (PFC)
Pour demander la compression de la zone protocole (de 2 1 octet).
Le FCS est alors calcul sur la trame compresse (pas sur la trame
originale non compresse).

Address-and-Control-Field-Compression (ACFC)
Pour demander la compression des zones adresses et contrle dans les
364
trames PPP. Le FCS est calcul sur la trame compresse.

Protocole PPP
("Point to Point Protocol")
Protocol")
II.2.4
La configuration de rseau
(NCP Network Configuration
Protocol

365

Introduction NCP
NCP permet la ngociation doptions de configuration du
niveau 3 rseau dans le cadre du niveau 2 liaison.
Fonctions ncessairement dpendantes du protocole
rseau utilis => Existence de protocoles spcifiques NCP
par type de rseau.
Exemples de RFC NCP existantes :
RFC 1332 IPCP pour IP
RFC 2023 IPV6CP pour IPV6
RFC 1552 IPXCP pour IPX
RFC 1378 ATCP pour AppleTalk
RFC 1377 0SINLCP pour OSI
RFC 2097 NBFCP pour NetBeui .. Etc
366

Le protocole IPCP
IP Configuration Protocol
Protocol
Protocole qui utilise les messages de LCP (types 1 7)
pour ngocier des options relatives IP:
Exemple 1) Type doption 2: IP-Compression-Protocol
Une faon de ngocier la compression des enttes IP : thoriquement
un code sur deux octets permet de slectionner la compression
souhaite => Pratiquement deux possibilits : 002d
Compression
TCP/IP Van Jacobson ou par dfaut pas de compression.

Exemple 2) Type doption 3 : IP-Address


Lmetteur peut dans un Configure-Request demander dutiliser une
adresse IP sil en connat une (0 sinon).
Le site distant peut accepter ladresse propose ou rejeter par un NAK
en retournant une autre adresse.
=> Deux zones adresses IP (propose et affecte) pour la ngociation,

Affectation dadresses plus utilise => DHCP

367

Protocole PPP
("Point to Point Protocol")
Protocol")

Conclusion

368

Raisons du succs
du protocole PPP
Hgmonie du protocole IP
=> PPP est obligatoirement le niveau liaison le plus rpandu.

Mais aussi beaucoup de qualits


Protocole de convergence adapt tout

pour toutes les voies point point et tous les rseaux .


pour toutes les architectures de rseau et tous les
protocoles.

Rassemble la plupart des concepts et solutions..


Enrichit les fonctions habituellement dvolues au niveau
liaison par des fonctions dadministration et de scurit
(LCP, NCP, authentification).
En constante amlioration.
369

Protocoles de liaison en point point :


Exemples industriels

Conclusion

370

volution des protocoles de liaison


industriels
Historiquement : grande varit de propositions qui
diffrent souvent peu : des options juges ncessaires dans le
domaine vis.
=> Trop grande htrognit.
Une orientation des protocoles les plus anciens vers
des solutions assez riches en termes de contrle d'erreur,
de flux, de squence
=> Solutions juges plutt coteuses justifies par les
taux derreurs.
Changement d'orientation avec Internet :
Redistribution des fonctions en s'orientant vers un dcoupage ou le
rle de contrle derreur, de flux, de squence est allg si ncessaire.
Les fonctions dadministration sont renforces.
371

Bibliographie :
Cours de liaison point point
A. S. Tannenbaum Computer Networks
Prentice Hall.
W.R. Stevens "TCIP/IP Illustrated, The
protocols" , Addison Wesley.
L. Toutain Rseaux locaux et Internet
Herms.
Sites web et RFC.
372

Niveau Liaison
RSEAUX LOCAUX
LAN, Local Area Networks
Introduction
1 Rseaux locaux partags
2 Rseaux locaux commuts.
Conclusion
373

Introduction: caractristiques
communes des rseaux locaux
Un rseau local dessert un ensemble de stations.
Problme principal pos => accs multiple.
Selon des protocoles situs aux niveaux physique
et liaison.
Un rseau local ne dessert quune organisation
correspondant un domaine priv. Il chappe
gnralement aux contraintes dun oprateur de
tlcommunications
=> Notion de rseau local d'entreprise ou de
rseau local domestique
Problme induit par les rseaux locaux:
374
l'interconnexion des rseaux locaux.

Caractristiques techniques communes


des rseaux locaux
1) Le diamtre de la surface desservie dpend
de la technologie adopte: il nexcde pas
gnralement pas quelques kilomtres.
2) Le dbit binaire nominal est au minimum
mesur en dizaines de mgabits par
seconde (jusqu 10 gigabits/s) avec des taux
derreurs faibles.
3) Normalisation : IEEE 8.02 (Institute of
Electrical and Electonics Engineers) - ISO 8802.
375

Les deux mthodes de ralisation :


a) Rseaux locaux partags shared
shared
shared
1) Utilisation dune voie commune multipoint
- Bus srie (Ethernet IEEE 802.3).
- Bande de frquence hertzienne (WIFI 802.11).
- Boucle (IBM 802.5).

Station A

Station B

Station C

2) Partage de la voie commune multipoint:


le problme du contrle de l'accs au mdium (MAC
"Mdium Access Control") consiste dterminer la station
376
qui, un instant donn, a le droit dmettre.

Les deux mthodes de ralisation :


b)Rseaux locaux commuts switched
switched
switched
1) Utilisation de techniques de commutation pour faire
communiquer des stations au niveau liaison (niveau 2).
2) Exemples de techniques de commutation employes :
Commutation temporelle asynchrone ( mmoire
partage, mdium partag).
Commutation spatiale (matrices daiguillages).
3) Pour des raisons de compatibilit, les rseaux locaux
commuts offrent , les mmes mthodes daccs,
ladressage, les mmes formats de trames que les
rseaux partags => possibilit de mixage des approches
partages et commutes.
377

Rseaux locaux partags:


mode de fonctionnement half duplex
Existence dune voie unique de communication
partage
- Une seule station peut mettre un instant donn
- Vers un ou plusieurs destinataires (mdium
diffusion)
- Mode de communication demi-duplex: half duplex.
Limitation du dbit de transmission de lensemble des
stations au dbit du mdium partag.
Contraintes de distances lies au mdium, au codage
des donnes et au protocole de partage.
378

Rseaux locaux commuts:


mode bidirectionnel ( full duplex )
Station A

Station B

Connexion directe entre deux stations ou entre une


station et un commutateur (cblage en toile)
Une seule station connecte => pas de partage de voie
commune.
Une station peut mettre un instant donn vers le commutateur
et recevoir en mme temps.
Mode de communication bidirectionnel simultan (full duplex)
possible.

Possibilit de paralllisme : dbit plus important.


Moins de contraintes de distance.
379

Dcoupage en couches li aux


rseaux locaux IEEE 802

NIVEAU
LIAISON

NIVEAU
PHYSIQUE

OSI

Logical
Link LLC
Control

NIVEAU
LIAISON
"classique"
Medium
Partage de
Access MAC
l'accs la voie Control
Spcifications Physical PMI
indpendantes Medium
Spcifications independent
Physical PMD
dpendantes
Medium
du mdium
dependent
IEEE 802
380

Rseaux locaux

Rseaux locaux partags


1 Critres de classification des
mthodes de partages.
2 Rseaux en comptition.
3 Rseaux Ethernet.
4 Rseaux WIFI.
381

Rseaux locaux partags

Critres de classification
des rseaux locaux
partags
- Critres qualitatifs
- Critres de performance
- Critres de sret de fonctionnement
382

Critres qualitatifs : Topologie


Bus ou voie hertzienne

Chaque station est directement relie aux autres par un canal


unique de communication (bus srie coaxial ou voie hertzienne).
Un message vhicul par le canal peut-tre reu par toutes les
stations: diffusion trs facile raliser mais notion de promiscuit
promiscuous mode => problmes de scurit.
Une station vrifie, d'aprs l'adresse contenue dans le message, si le
message lui est destin.
Mdium passif : lectronique plus simple, moins de pannes.
La bande passante de la voie limite les performances.
Exemples: Ethernet (sur cble), WIFI (sans fil).

383

Critres qualitatifs : Topologie


toile

Rpteur

Un concentrateur (un hub) relie les stations.


Un concentrateur est un rpteur de signal: "Repeater Hub".
Les rpteurs peuvent tre interconnects (arbre).
Le cblage en toile permet de dcoupler chaque station du
reste du rseau.
Problme de la fiabilit du rpteur: lectronique active.
Exemple: rpteur Ethernet.
Le cblage type en matire de rseaux locaux partags.

384

Critres qualitatifs : Topologie


Boucles ou Anneaux (1)
Shunt

Insertion de message
Retrait
Interface de boucle

Les stations sont rattaches au moyen d'interfaces


selon une topologie en boucle.
Une interface de boucle retarde le message dans
un registre et rgnre le signal.
Un message envoy par une station fait un tour
complet et est retir par son metteur.
L'adresse destinataire permet de dterminer si
une interface donne doit prlever le message ou non.

385

Critres qualitatifs : Topologie


Boucles ou Anneaux (2)
On doit dfinir la politique de partage de la boucle:
Plateau tournant ( Slotted ring J.R. Pierce)
Jeton circulant ( Token ring E.E. Newhall).
Un anneau est une structure active, (rgnration
de signal/retard dans les stations).
Problmes de fiabilit dus aux interfaces
Ncessit de prvoir le retrait ("shunt") de stations
sur panne.
Exemples : Boucle jeton Token Ring IBM 802.5 ,
Boucle FDDI ANSI X3T9
386

Critres qualitatifs :
partage en coopration
Une approche classique.
Les stations cooprent et par un dialogue pralable
dfinissent qui peut accder la voie.
Implique peu ou prou une connaissance globale.
Exemples de protocoles en coopration:
Passation de jeton : Bus jeton (802.4), Boucle
jeton (802.5), FDDI (X3T9).
Scrutation ( polling ) : 100 Base VG Anylan, bus de
terrain.
Rservation statique dintervalles temporels (TDMA:
Time division Multiplexing Access).
387

Critres qualitatifs : partage en


comptition ( contention )
Une approche probabiliste.
Les stations s'emparent de la voie sans
certitude sur son inoccupation.
Il y a ncessairement des collisions d'accs
A
A Retransmission
la voie.

Connaissances
S1
locales
S2
Ex: Ethernet 802.3
WIFI 802.11. S3

B Retrans

B Retrans

C Retransmission

388

Critres de performances
Rseau local => Ajout d'une attente de plus :
le temps d'accs la voie commune (au mdium).
Arrive de
requte

Requte en
tte de file

Voie alloue
la requte

Fin de la
requte

Choix entre les requtes en


tte de file
SITE A

SITE B
Progression dans
la file locale

389

Critres de performances :
Point de vue de l'utilisateur
Qualit de service temporelle (QOS)

Temps de rponse / latence (moyenne), gigue (second moment)


quit des services ou garantie dun niveau de service.

Si l'on soumet une voie un trafic de plus en plus lev :


phnomne de congestion.
Exemple : si le dbit soumis croit vers le dbit maximum le
temps de rponse tend vers l'infini (voie sature).
Temps de
rponse
Dbit
soumis
Dbit nominal

390

Critres de performances :
Point de vue global
Maximisation du dbit global.
Prvention de lcroulement ( thrashing ).
Si le trafic coul continue crotre avec la charge la
voie est dite adaptative la charge ou rgule. Si le
trafic diminue avec la charge et tend vers 0 la voie est
non adaptative ou croule.
Taux
utile 1
Voie idale
Voie rgule
Voie croule
Dbit soumis
391

Critres de
sret de fonctionnement
Le rseau local doit tre sr de fonctionnement
("dependable") (Panne du rseau : arrt de nombreuses
fonctions de l'entreprise).
Critres quantitatifs classiques, Fiabilit, Disponibilit,

Evitement des pannes : un dispositif (un ensemble de


fonctions) "peu fiable" ne doit pas tre indispensable au
fonctionnement.
Partage daccs centralis (dissymtrique)
Un dispositif joue un rle primordial dans le partage (exemple un
arbitre)

Partage daccs dcentralis (symtrique)


Aucun site n'est essentiel au partage de la voie.

Tolrance aux pannes : introduction de redondances.


392

Conclusion: proprits principales


Critres qualitatifs

Topologie d'interconnexion.
Coopration / Comptition.

Critres de performance

QOS : Temps de rponse.


Dbit global, Protocole Adaptatif/Non adaptatif.

Sret de fonctionnement

Centralis / Dcentralis.
393

Rseaux locaux partags

Protocoles de partage
dune voie commune en
comptition

394

Introduction: protocoles en
comptition (contention protocols)
tude des protocoles avec accs en
comptition :
mission sans tre certain dtre le seul mettre.
Ncessit de prvoir des retransmissions.

Type de mdium partag : Bus ou voie radio.


Solution : Rseau filaire Ethernet 802.3
Solution : Rseau radio wireless WIFI 802.11
Une proportion trs importante des protocoles
de partage de voie commune.
395

Introduction: caractristiques
dun protocole en comptition
coute et Acquisition :
actions entreprises pour
s'emparer de la voie
coute et
Ajournement
commune.
NON
acquisition
Ajournement
Voie libre
Ajournement : actions
entreprises si l'on constate
OUI
que la voie est occupe.
Rsolution
Dtection des collisions :
des collisions
Acquisition
moyens par lesquels un
conflit d'accs la voie
est dtect.
NON
OUI
Rmission
Rsolution des collisions : Dtection Collision
stratgie adopte pour
des collisions
retransmettre une trame
en collision.
396

A) coute pralable et acquisition


mission sans coute pralable: (mission
sourde N. Abramson) "Aloha Pur" .
Un metteur passe immdiatement en toutes
circonstances en mode acquisition.
Les stations ncoutent pas la voie.
mission avec coute pralable:(CSMA "Carrier
Sense Multiple Access", L.Kleinrock) Ethernet, WIFI
Si la voie est dtecte libre, l'metteur passe en
mode acquisition.
Si la voie est dtecte occupe, l'metteur passe
en mode ajournement.
397

coute pralable en rseau radio: le


problme des stations caches
Rseaux radios : coute pralable possible mais
des difficults.

B
A

C
Station cache: Obstacle

Station cache: Affaiblissement


398

coute pralable en rseau radio: le


problme des stations exposes

Stations exposes A et C

A met vers B.
C qui fait de
lcoute pour
mettre vers D
constate la
transmission de A
et attend sa fin.
D est hors de
porte de A donc
lattente de C est
inutile.
399

Intervalle de vulnrabilit: cas


dune acquisition sans coute
Intervalle de temps pendant lequel deux stations ne
peuvent commencer d'mettre sans coute et provoquer
une collision
Il suffit que le dernier bit d'une trame se superpose avec
le premier bit dune autre trame pour qu'il y ait collision.
S1
S2

M'

M''

Intervalle de vulnrabilit 2T
Hypothse: messages de dure T fixe

Pour qu'une trame de dure T soit transmise sans collision il


faut qu'aucune autre trame de dure T ne soit transmise
pendant un intervalle 2T =>performance trs mdiocre.
400

Intervalle de vulnrabilit: cas


dune acquisition avec coute
Intervalle de temps pendant lequel deux stations peuvent mettre et
provoquer une collision malgr lcoute.
A

Tp

A et B situes aux extrmits du mdium, A coute le canal, ne


dtecte rien, dcide d'mettre t0 .
Soit Tp le temps de propagation entre A et B (fonction de la vitesse
de la lumire , des retards introduits sur le cble par les lments
matriels : transmetteurs, rpteurs, ... ).
B peut commencer mettre entre t0 et t0 + Tp (pour lui la voie est
libre) => on a une collision.
Lintervalle de vulnrabilit est Tp.

401

B) Ajournement (deference)
Ajournement Persistant (Ethernet)
mission immdiate si la voie est libre ou ds que la trame
courante est finie.
Hypothse de la solution: Le trafic sur la voie est faible
La probabilit pour que deux nouvelles demandes apparaissent pendant la
transmission d'une trame est faible.

Ajournement non Persistant (WIFI)


Emission immdiate si la voie est libre. Si la voie est occupe
diffrer la transmission comme sil y avait collision.
Hypothse de la solution: Le trafic sur la voie est lev
Si une trame a risqu d'interfrer avec une autre c'est qu'il y a de la
charge qui ncessite dj dappliquer un retard adaptatif.
402

C) Dtection des collisions :


Par coute de la voie
Quand lcoute des collisions est possible
La stratgie dcoute dpend du mdium utilis
Si on a deux signaux spars (transmit/receive) exploitation en
parallle du signal mis et du signal reu (exemple 10 Base T).
Mesure de la puissance moyenne du signal.
La puissance moyenne sur la voie en cas de collision est anormale
(plusieurs signaux sont superposs exemple 10 Base 2, 10 Base 5).

Lcoute suppose lexistence d'une dure minimum de la


collision permettant la dtection.
Solution type : le CSMA/CD Carrier Sense Multiple Access /
Collision Detection Ethernet 802.3
403

Dtection des collisions : Cas dune


coute impossible
Rseaux radios : lcoute des collisions est non prvue
(trs coteuse ou impossible).
A la place utilisation d'un protocole de liaison classique :
code dtecteur derreurs, accus de rception positif si la
trame est correcte
dlai de garde, retransmission si la trame est incorrecte
Les collisions sont traites comme des erreurs de
transmission sur les trames.
Solution du rseau WIFI (un protocole de base et un
protocole plus sophistiqu, le CSMA/CA Carrier Sense with
Multiple Access/ Collision Avoidance ).
404

802.11-WIFI : Le mode de base de


dtection des collisions
Lmetteur dtecte la voie libre
pendant un dlai DIFS.
Il met une trame Data.
Une collision peut avoir lieu sur la
trame data. Lmetteur attend une trame
de rponse de type Ack.
Ack doit tre mis aprs une attente
courte baptise SIFS.
Si lAck nest pas transmis cest quil y a
eu problme. Le rseau est nouveau
partageable aprs DIFS.
Pendant ce temps les autres sont en
attente (indicateur NAV Network
Allocation Vector ).

metteur Destinataire Autre


DIFS

DATA
SIFS

ACK

405

N
A
V

802.11-WIFI : le CSMA/CA ( Collision


Avoidance ) avec lchange RTS/CTS
Aprs un silence DIFS lmetteur met
un message court RTS (Request to send)
signalant quil veut mettre.
Le destinataire transmet une rponse
courte dacceptation CTS (Clear To Send).
RTS-CTS russi: la trame est transmise.
La collision peut avoir lieu que sur le
message court RTS => limitation de la
dure dune collision.
CTS correct indique quil ny a pas eu de
collision sur RTS (dtection des collisions).
La trame data suivie de son acquittement
positif peut tre change sans collision.

Autre

DIFS

RTS
SIFS

CTS
SIFS

DATA

N
A
V

SIFS

ACK
406

Le CSMA/CA et le problme des


stations caches et exposes
RTS(A,B)

RTS(A,B)
A

CTS(A,B)

CTS(A,B)

Data(A,B)

La station cache D qui peroit le CTS reste silencieuse (la


dure du message DATA circule dans RTS et dans CTS)
RTS(A,B)

RTS(A,B)
B

CTS(A,B)
Data(A,B)
Ack(A,B)

D
Data(C,D)
Ack(C,D)

La station expose C entend RTS(A,B) mais pas le CTS(A,B):


C dduit quune transmission de C vers D ne peut interfrer en
407
B ni gner A tant que A transmet DATA (A,B).

D) Rsolution des collisions :


retransmission non adaptative
La prochaine tentative aprs une collision est effectue
selon une distribution qui ne dpend pas du dbit
soumis au rseau (non adaptative la charge).
Exemple: Tirage alatoire d'une dure dattente selon une
distribution statique ou mme dpendante du site.
A forte charge de toutes faons les stations provoquent de
plus en plus de collisions et la voie est non rgule =>
croulement.
408

Rsolution des conflits :


Rmission adaptative
La prochaine tentative aprs une collision est effectue aprs une
attente proportionnelle la charge.
Solution centralise : Un site dadministration mesure en
permanence le trafic par observation de la voie.
Il diffuse priodiquement ses mesures aux stations qui les utilisent
pour dfinir un dlai de retransmission adaptatif en fonction de la
charge.
Solution rpartie : Chaque site se base sur des connaissances
purement locales pour dterminer sa politique de retransmission.
Excellente solution: prendre comme indicateur de charge le nombre
de collisions qu'un message vient de rencontrer.
Algorithme du retard binaire exponentiel ( BEB Binary Exponential
Backoff ) : deux versions trs voisines de cette solution sont utilises
en Ethernet et WIFI.
409

Rsolution des conflits:


Algorithme du retard binaire Ethernet
Retard_Binaire (nb_collision: entier)
ST : flottant :=51.2 ; fact_mult, delai : flottant ;
dbut
si ( nb_collision < 10 ) alors
fact_mult := 2**nb_collision ;
sinon
fact_mult := 2**10;
finsi;
dlai := ST * int (random*fact_mult);
attendre (dlai);
fin;
410

Commentaires : algorithme du
retard binaire Ethernet
On attend un dlai distribu alatoirement,
(random est un gnrateur de nombre alatoire [0,1[).
Uniformment distribu sur un intervalle,
Qui double chaque collision,
Pendant les 10 premires tentatives.
On value lattente en nombre entiers de "slot time" ST.
(int est une fonction qui rend la valeur entire par dfaut).
On montre que cette solution est non croule
pour moins de 1024 stations.
On fait au maximum 16 tentatives (caractristique
non intgre au retard binaire).
411

Rseaux locaux partags

Rseaux locaux Ethernet


Historique
Niveau liaison
Ethernet 10 Mb/s
Ethernet 100 Mb/s
Ethernet Gigabit
Ethernet 10 Gigabits
Auto ngociation
412

Historique Ethernet
0rigine R.M Metcalfe (Rank Xerox Palo Alto). Dbut des
travaux 1973. Article CACM 1976 (Metcalfe et Boggs).
Protocole en comptition sur coaxial 2,94 Mb/s (1976).
Brevet Ethernet (1977): dbut de lindustrialisation.
Norme DIX ("Digital Intel Xerox") 10 Base 5 (1980)
Normalisation IEEE 802.3 (1983)
10 Base 2 (1986), 10 Base T (1991), 10 Base F (1994)
Ethernet 100 Mb/s : 802.3u (1995)
Ethernet gigabit/s : 802.3z/802.3ab (1998)
Ethernet 10 Gigabits/s : 802.3ae (1999-2006)
413

Ethernet niveau MAC : principales


caractristiques de la version de base
- protocole daccs au mdium en comptition.
- coute de porteuse (CSMA).
- ajournement persistant (1-persistant).
- dtection de collisions par coute (CD).
- retransmission avec retard binaire.
- destruction silencieuse des messages bruits.
- sans connexion.
- pas de fragmentation, de reprise sur erreur,
de contrle de flux.
- dlivrance au mieux (Best Effort).
414

Ethernet : Notion de tranche canal


(ST Slot Time )
Principe CSMA/CD : toute collision doit tre dtecte par
le niveau MAC et celui-ci doit assurer la retransmission.
ST est un dlai fix par la norme Ethernet.
a) Dans le dlai ST toute station dtecte coup sur
toute collision.
Consquences :
ST fixe la taille minimum d'une trame.
Aprs quune station a pu transmettre pendant une
dure au moins gale ST, elle a acquis la voie : elle
ne doit plus rencontrer de collision.
b) Dans le dlai ST toute collision est termine (on ne
poursuit pas une collision sur toute la dure dun message
ventuellement long).
415

Ethernet :
Fixation de ST > Dlai d'aller retour
Dlai d'aller retour (Round Trip Propagation Delay)
A et B situes aux extrmits du rseau. Une collision sur une
trame de A vers B n'est perue en A qu' t0 + 2 Tp
A

Tp

Tp le temps maximum de propagation du signal


Ethernet 10 Mb/s : Dlai d'aller retour 2 Tp = 46,4 s.
ST > 2 Tp fix 51,2 s = 46,4 + 4,8 s (512 temps bit)
=> La taille minimum d'une trame Ethernet est de 64
octets (valeur fixe sans compter le prambule).
416

Ethernet : Le renforcement de
collision ( brouillage jam )

Brouillage ("Jam") : Aprs dtection de collision l'metteur


transmet sur le mdium une information non significative.
La dure du brouillage est le plus souvent de 3,2 s .

Ide de dure minimum dune collision (renforcement de


collision): toute trame en collision une dure minimum pour
tre dtectable par tous (au moins 96 temps bits).
Ide de limitation de la dure dune collision la dure
maximum ncessaire la dtection de la collision plus la dure
du brouillage. Le brouillage fixe la dfinition de ST donc la
dure maximum dune collision.
ST : Dlai d'aller retour (46,4 s)+Brouillage (4,8 s)
417

Ethernet : comportement gnral


Yes

Deferring On ?
No
Start Transmission

No
Transmission
Done?

Collision
Detect ?

Yes
Send Jam

No

Increments Attempts

Yes
Yes

Too many
attempts
No
Compute Back Off
Wait Back Off Time

Done

Excessive Collision Error

418

Ethernet : structure de la trame


7 1 2/6 2/6 2
D
LD
S P D AD AS ou
T
T

0 - 1500
Donnes

0-46 ou 0-54
Bourrage

12

Autre
Code S trame

P : Prambule Preamble : 7 octets 101010 synchro bit.


DDT : Dlimiteur dbut de trame Start Of Frame: 10101011 synchro octet.
AD : Adresse Destination Destination address (6 octets) possibilit 2 octets.
AS : Adresse Source Source Address (6 octets) (ou 2 octets).
LD : Longueur des donnes Lenght (802.3) ou T: Type de la trame (DIX).
Donnes + Bourrage: La charge utile de 1500 octets au plus (Entte +
Donnes + Bourrage + Code : longueur min 64 octets).
Code: Code polynomial dtecteur derreur (FCS Frame Check Sequence).
S : Silence inter-trame IFG Inter Frame Gap (9,6 micro seconde soit 96
temps bit).

419

Ethernet : adressage IEEE 802


1

22 bits

Identifiant constructeur
I/G U/L (Organization Unique Identifier)

24 bits

Identifiant carte rseau


(Serial Number)

Notation : 6 groupes de 2 chiffres hexadcimaux 00-DD-01-30-C3-17


Format canonique grand boutiste sur les octets, petit boutiste sur les bits.
I/G : Adresse Individuelle/Groupe (Individuelle = 0 ; Groupe = 1)
"Broadcast" (tous les bits 1) adresse diffusion gnrale FF-FF-FF-FF-FF-FF
"Multicast" G=1 + adresse de diffusion sur groupe : 01-00-5E-00-A8-76
U/L : Adresse Universelle (unique) / Locale (non unique) (U=0 ; L= 1)
Identifiant constructeur ( OUI Organisation Unique Identifier) (RFC
1340), carte ( SN Serial Number ).
Exemple : 00-AA-00-08-C3-98 , Les trois octets de gauche 00-AA-00
dsignent le constructeur INTEL, les trois octets de droite 08-C3-98 sont
420
ladresse unique dune carte rseau.

Ethernet partag : performance


Temps de rponse pour un utilisateur :
Dbit soumis < 50% : bon comportement , temps dattente moyen < 1 ms.
50% < Dbit soumis < 80% : dlai supportable < 10 milliseconde.
Dbit soumis > 80% : mauvais comportement (exemple 100 stations, dbit
soumis 90 % 10 Mb/s temps dattente moyen 10 seconde).

Dbit maximum :
Une ide fausse : on ne rcupre pas plus de 37% de la bande passante.
Mesure sur un Ethernet rel de 10 Mb/s avec 24 stations mettant en
permanence des messages de 64 octets: taux de trafic utile 90%.
Trois paramtres influencent le dbit maximum rcuprable :
Le nombre de stations connectes: 1 1024, en fait moins de 200 souhaitable.
Le dbit soumis par station: normalement le trafic est trs sporadique avec un
dbit soumis en moyenne faible (un dbit constant lev nest pas prvu).
Taille des trames : effet des collisions plus important pour des trames petites,
remplissage en donnes utilisateurs moindre pour des trames petites (64 = 46+18
14888 trames/s 5,476Mb/s , 1518= 1500+18 812 trames/s 9,744 Mb/s).
421

Rseaux locaux Ethernet

Ethernet:
les standards 10 Mb/s au
niveau physique

422

Ethernet 10 Mb/s : configuration


au niveau physique
Interface indpendante (MII "Medium Independent Interface"): 10
Mb/s AUI : "Attachment Unit Interface" , Cble drop/"Transceiver Cable"
Raccordement au mdium (PMA "Physical Medium Attachment"):
Transmetteur "Transceiver" ou MAU "Medium Attachment Unit"
Prise sur le cble (MDI "Medium Dependent Interface")
Mdium
Mdium

Ethernet
Carte

Carte

rseau

rseau

MDI
AUI
Cble drop

Ethernet

Unit de

MDI

raccordement
MAU

au cble
Interface
Bus
interne

Hte

Standard
MII

(MAU)

Bus
interne

Hte

423

Modle gnrique de dcoupage en


couches du niveau physique ETHERNET
MII: Medium Independent
Interface (optionnel)

LLC

MDI: Medium Dependent


Interface

MAC
Rconciliation

Liaison

MII

Physique

PCS
PMA

PCS: Physical coding


sublayer
PMA: Physical medium
attachment

Sous-niveaux
indpendants
du mdium

Auto-ngociation

Mdium

Sous-niveaux
dpendants
du mdium

MDI
424

L'interface indpendante 10 Mb/s


("AUI : "Attachment user interface")
Transmetteur/MAU
Station
Coupleur Ethernet
(carte rseau)

Emission
Contrle sortie
Rception
Contrle entre
Alimentation
fournie par l'hte au
transmetteur
Cble drop: 50 m max

Sortie
sur cable
Entre

Segment
Ethernet

sur cable

Alimentation, Donnes en mission, Donnes en rception


Contrle en entre: Transmetteur disponible IDL : aucun signal.
Transmetteur indisponible CS1 : horloge demi frquence bit Ethernet.
Erreur qualit du signal CS0 : horloge la frquence bit Ethernet.
(1) Signal impropre (coupure, MAU HS) (2) Collision
Contrle en sortie (Trs peu Implant).
425

Les diffrents standards de niveau


physique Ethernet 10 Mb/s
Systme de dsignation physique Ethernet : A, L, B
A : Dfinit la vitesse : 1, 10, 100, 1000, 10G.
L : Deux valeurs BASE : bande de base. BROAD : bande large (broadband).
B : Dfinit la longueur maximum d'un segment exprime en centaines de
mtres ou dfinition dun type de mdium.
Exemple : 10 BASE 2 10 Mb/s en bande de base, longueur max d'un
segment 200m (environ), 100 BASE T2 100 Mb/s en bande de base sur deux
paires torsades.

Principaux standards 10 Megabits/s

Ethernet
Ethernet
Ethernet
Ethernet

gros
fin
paire torsade
fibre optique

10 BASE 5
10 BASE 2
10 BASE T
10 BASE FL
426

10 BASE 2 Ethernet fin


"Thin Ethernet , Thinnet"
Spcification trs voisine du 10 BASE 5.
Version plus conomique pour rseaux de stations ou de micros.
Caractristiques du cble coaxial fin
Diamtre 0.2 pouce 5 mm.
Impdance caractristique 50 Ohms.
Longueur maximum du tronon 185 m.
Espacement des transmetteurs 5 m.
Maximum de 30 transmetteurs par tronon.
Raccordement au cble : prise BNC (Bayonet Neil-Concellman).
Caractristiques de la signalisation
10 Mgabits/seconde, bande de base, code "Manchester".

427

10 BASE 2 ETHERNET FIN


Architecture du rseau
Terminateur

TRONCON RACINE ("BACKBONE")


10BASE5 ou 10 BASE 2
Terminateur
Cot 10B5
Rpteur
Cot 10B2

Rpteur

T BNC

Contrleur
+
Transmetteur
Sur la carte

1 0 0 1 1

T BNC

Stations

Grappe de stations
10 BASE 2

Troncon fils
Ethernet fin
Grappe de stations

428

10 BASE T
Ethernet sur paires torsades
A partir des ides de Starlan rseau en comptition sur paires
torsades: 10 Base T est devenu le standard le plus rpandu.
Utilisation de la paire torsade : mdium conomique, redfinition
des prises standards (MDI RJ45) et des transmetteurs (MAU).
Topologie en toile avec des rpteurs autre terminologie
(concentrateurs, hubs, rpteurs multiports, repeater hubs ).
Rpteur Hub (n ports)

R
Station de travail
Carte rseau
avec MAU MAU
Interne

Prise
RJ45

MAU

Prise
RJ45
Paire torsade (100 m max)

Port
429

10 BASE T : signalisation
Ethernet 10 BASE-T utilise deux paires torsades
de catgorie 3 ou suprieure.
Paire mission TR transmit data
Paire rception / coute des collisions RD receive data

Connecteur normalis 8 broches RJ-45


Broches 1 TD+, 2 TD- , 3 RD+, 4 inutilis, 5
inutilis, 6 RD- , 7 inutilis , 8 inutilis).
1 TD+
2 TD3 RD+
6 RD-

1 TD+
2 TD3 RD+
6 RD-

Construction dun cble crois

430

Fonctionnement
dun rpteur multiport
Propagation : Un signal valide arrivant sur l'un des ports
du rpteur est rgnr et rediffus sur les autres ports.

Restauration de lamplitude ( signal strenght )


Re-synchronisation selon lhorloge du rpteur ( timing )
Restauration de la forme des bits ( symmetry )

Collisions : Si deux ports sont en collision, le rpteur


doit le dtecter et gnrer un signal de renforcement
Renforcement de collision : en cas de dtection de collision entre
deux entres A et B, le rpteur gnre sur tout ses ports de sortie
un signal de brouillage jam (une suite de 32 bits 01010). La dure
du fragment, bits transmis et brouillage est de 96 bits au moins.
Extension des fragments : si une suite de bits de taille infrieure
96 bits circule, un rpteur doit gnrer la place au moins 96 bits.

431

10 BASE T Fonctionnement
multi segments , multi rpteurs
On peut mler les standards 10 BASE 2, 10 BASE 5, 10 BASE T en
respectant la contrainte de dtection des collisions.
Empiriquement on peut cascader au plus quatre rpteurs multiports et
au plus cinq segments dont trois coaxiaux.
Sinon technique prcise de validation dune architecture par
valuation du diamtre de collision.
R
10 Base T
A

R
10 Base 2

10 Base 5
10 Base 2

R
10 Base T
B

Exemple d'interconnexion de rseaux 1OBASE 2, 5 et T


432
avec 4 rpteurs

10 BASE F : Ethernet sur fibre optique


Utilisation d'un mdium fibre optique en point a point
entre transmetteurs optiques.
Une fibre en mission, une fibre en rception.
Cblage en toile avec des rpteurs (hubs).
Plusieurs variantes 10base FL (Link), 10 Base FB
(Backbone), 10 Base FP (Passive).
10 BASE FL Fibre 62,5/125 micromtres, mission LED,
longueur d'onde 1300 nm.
Longueur maximum d'un segment 2km.
Nombre maximum de stations : 1024
Solution fibre optique plus chre mais la plus rsistante
aux perturbations lectromagntiques ou aux coutes.
433

Conclusion : Ethernet 10
Un standard quon ninstalle plus mais
une base installe encore trs importante.
Le dbit de 10 Mgabits/s reste suffisant
pour la plupart des applications.
Pas forcment ncessaire de transformer
trs rapidement toutes les infrastructures sauf
besoin prcis (scientifique ou multimdia).

434

Rseaux locaux Ethernet

Ethernet:
les standards 100 Mb/s au
niveau physique

435

Standard 1OO BASE T


"Fast Ethernet" "IEEE 802.3u"
Objectif : conserver une compatibilit maximum avec le
standard 10 Mb/s => Changer uniquement le dbit.
Ethernet 100 base T conserve dEthernet 10 tout le niveau
liaison : le protocole CSMA/CD, le format des trames etc...
Modifications temporelles: ST 5,12 s , IFG 0,96 s.
Niveau Physique : plusieurs standards selon les supports
de communication (adaptation du nombre de paires et
adaptation des codages).
100 BASE TX
100 BASE X
100 BASE FX
100 BASE T
100 BASE T4 ou 100 BASE 4T+
100 BASE T2
436

Ethernet 100 Base TX sur paires


torsades: architecture
Rpteur 100
Multiport
"Hub"

10 mtres

Rpteur 100
Multiport
"Hub"

100 mtres
Station

Maximum
210 mtres

Station

Fonctionnement avec des rpteurs 100 type II : Distance


station rpteur 100 mtres, distance rpteur-rpteur 10 m.
Rpteur Ethernet 10/100: un seul dbit 10 Mb/s ou 100
Mb/s un instant donn.
437

Le standard 100 Base TX: quelques


lments de niveau physique
Utilisation de 2 paires UTP 5 norme EIA 568 avec
connecteur RJ45 (galement STP avec connecteur DB9).
Gestion des signaux sur les paires comme en 10 BAS T
. une paire pour l'mission (donnes)
. une paire pour la rception/dtection des collisions
Dbit possible sur UTP5 125 Mb/s (et plus).
Utilisation dun niveau physique (trs voisin de FDDI):
Codage 4B/5B : Au moyen dune table, 4 bits (nibble) sont mis en
correspondance avec 16 codes groupes de 5 bits, pour garantir un
front tous les trois bits au plus. Les autres codes groupes de 5 bits
servent pour la signalisation (3) ou sont inutiliss (11).
Modulation MLT3 (Multi Level Transmission-3 pseudo ternaire).

438

Le standard 100 Base FX


Appartient au standard 100 base X donc il est
trs voisin du standard 100 Base Tx.
Fonctionnement sur deux fibres multi modes au
lieu de deux paires torsades.
Distance maximum : 400 mtres en mode half
duplex et 2000m en mode full duplex.
Utilisation du code 4B/5B / modulation NRZI.
1

1
439

Le standard 100 Base T4


Uniquement en mode half duplex avec utilisation de
4 paires UTP de catgorie 3 (ou suprieures)
- Trois paires pour l'mission/rception (donnes)
- Une paire pour la dtection des collisions
Modulation 25 Mbaud/s sur UTP3.
Utilisation d'un code ternaire

Code trois niveaux: -1 , 0 , +1 (codage de trits)

Code 8B6T ("8 bits" cods par 6 "trits").

3 trits reprsentent 3*3*3 = 27 valeurs.


27 valeurs diffrentes permettent de coder 4 bits (plus dautres).
On code 8 bits sur 6 symboles ternaires (2 fois 3 trits successifs).

Dbit: (25 mbaud) * 4 bits =100 Mb/s.


440

Le standard 100 Base T2


Utilisation de 2 paires UTP 3 ou de qualit suprieure.
- Dual duplex baseband : on met simultanment sur deux
paires dans les deux sens. Sur une paire le signal qui circule est
une somme des signaux mis dans les deux sens
- Le signal reu est obtenu par soustraction dans le signal qui
circule du signal mis.
Utilisation d'un code 5 niveaux (valence 5)

-2, -1 , 0 , +1, +2

Code PAM 5x5 (Pulse Amplitude Modulation).

On code 4 bits par deux symboles 5 niveaux (en parallle sur 2 paires)
Dbit: (25 mbaud) * 4 bits =100 Mb/s.

Une norme astucieuse mais chre et sortie tardivement


441

Conclusion : Ethernet 100


Le standard de base Ethernet.
En dveloppement important.
Prix des cartes bon march.
Inconvnient important pour un rseau local
d'entreprise en mode partag =>faible extension
gographique
Utilisation plus importante en mode commut

Distances plus grandes.


Inter fonctionnement entre Ethernet 10Mb/s et
100Mb/s).
442

Rseaux locaux Ethernet

Ethernet:
les standards au Gigabit/seconde

443

Introduction: Ethernet Gigabit


Refaire une multiplication par 10 du dbit (1995-1998).
Pour aller vite rcupration des deux technologies: Ethernet
802.3 et Fibre Channel X3T11.
Utiliser la technologie 0,3 microns (interfaces bas prix).
Crer un rseau gigabit qui apparaisse du point de vue des
couches suprieures comme un rseau Ethernet habituel.
. Format des trames identique.
. Niveau MAC compatible (adresses, diffusions, ...)
. Administration identique (10 , 100, 1000 Mb/s).
Versions "half duplex" et "full duplex".
1000 BASE CX
1000 BASE X
1000 BASE FX

Niveau physique Gigabit

1000 BASE T

1000 BASE LX

444

Niveau MAC : Ethernet Gigabit partag


IEEE 802.3z Half Duplex
Longueur min 520 octets en 1000 base T et 416 octets en 1000 base X
0 - 1500
0-46 ou 0-54
4
7 1 2/6 2/6 2
D
LD
Donnes
P D AD AS ou
Bourrage
Code Extension
T
T
Format des trames inchang (compatibilit logicielle) =>
Ncessit de dtecter les collisions sur la trame la plus courte.
Longueur min 512 bits 1000 Mb/s donne un dlai de
dtection de collision de 512 nanosecondes => trop court.
Allongement de la trame minimum au niveau physique.
Une trame Mac de 64 octets est complte si ncessaire par
bourrage (notion dextension de trame).
On atteint ainsi un diamtre de collision de 200 m : les
stations peuvent se trouver 100 m dun hub gigabit.
445

Niveau MAC : Ethernet Gigabit


Rafales de trames (Frame Bursting)
Dure maximum (5,4 trames de dure max)
Trame avec extension IFG Trame Mac

IFG

Trame Mac

Transmission dune premire trame avec ventuellement


bits dextension pour acqurir la voie.
Ensuite mission dune rafale de trames ( frame burst )
sans repasser en mode acquisition pour une dure maximum
de 5,4 trames de taille maximum.
Les silences inter trames sont garnis par des bits
dextension.
446

Niveau MAC 802.3x : Contrle de flux


("Flow Control")
Haut dbit => ne pas perdre de trames par crasement dans les
tampons dentre du rcepteur .
Introduction dans Ethernet Gigabit d'une technique de contrle de
flux au niveau liaison (mode full duplex).
Une solution retenue trs rustique de type arrt et attente (X-On /
X-Off).
Une trame de contrle MAC (8808) baptise "Pause" (0001), permet
un destinataire de demander un metteur de suspendre pour
un certain dlai ses missions (en nombre de slots, exemple 3).
La mme trame "Pause" avec un dlai nul permet de mettre fin
avant terme l'arrt.

Entte

2
Contrle MAC
x8808
Type/longueur

2
2
Code Pause Dure de pause
Bourrage
x0001
x0003
Donns + Bourrage
447

Niveau physique : Ethernet Gigabit


1000 Base X

Standard 1000 BASE LX


Laser ondes longues sur fibres monomodes ou multi
modes (1300 nanomtres).
Distance 550m 3 km selon les fibres.
Standard 1000 BASE SX
Laser ondes courtes (850 nanomtres) sur fibres multi
modes.
Distance 250 550 m selon les fibres.
Standard 1000 BASE CX
Ethernet gigabit sur paires torsades (2 paires STP
Shielded Twisted Pairs)
Distance 200m.
448

Niveau physique : Codage 1000 Base X


Origine : Fibre Channel niveau 1 FC-1
Objectifs du codage 8B/10B NRZ (origine IBM)
=> Minimisation du bruit (des erreurs)
Maintenir "l'quilibre" i.e. le mme nombre de bits 1 que de bits
0.

=> Amlioration de la synchro bit


=> Dtection d'erreurs
=> Sparation donnes/contrles
Pour des donnes normales utilisateur D-type
Pour des donnes protocolaires K-type (Caractres spciaux par
exemple dlimiteurs, signalisation)

449

Niveau physique : codage 1000 Base X


8B10B
Code 8B/10B: Reprsentation des octets 8 bits par des
symboles 10 bits.
512 symboles pour les donnes (2 reprsentations par octet)
Quelques symboles pour la signalisation
Les autres symboles sont invalides (permet la dtection derreurs)

RD "Running Disparity"
Indicateur de la disparit entre les 1 et les 0.

Si un groupe de bits autant de 1 que de 0 => RD inchange


Si un groupe de bits plus de 1 que de 0 => RD positive
Si un groupe de bits moins de 1 que de 0 => RD ngative
Chaque donne significative deux reprsentations dfinies par des
tables :L'une en cas de RD positive, L'autre en cas de RD ngative En
cas de RD inchange la norme dfinit un des deux codes utiliser.
450

Niveau physique : codage 8B10B


Exemple
Exemple : Le caractre spcial
(type K) Dlimiteur appel
"virgule"
Octet x'BC' b'1011 1100'
Dcoupage 3 bits+5 bits 101 11100
Notation normalise Zxx.yy
Z: Type K ou D Virgule : K28.5
xx:DEFGH dcimal .yy:ABC en dcimal
Symboles mis sur 10 bits
avec RD ngative 001111 1010
avec RD positive 110000 0101

A B C D E

Fonction 5B/6B

FGH

Fonction 3B/4B

a b c d e i f g h j

451

Niveau physique : Ethernet Gigabit


1000 Base T
Support 4 paires torsades de catgorie 5.
Rcupration des progrs raliss a propos de lEthernet 100
100 Base T a montr quon peut transmettre 125 Mb/s sur UTP 5.
100 Base T4 a montr quon peut transmettre sur trois paires.
100 base T2 a montr que lon peut transmettre en PAM 5 simultanment
dans les deux sens.

Transmission octets par octets


Encodage initial (code correcteur derreur FEC forward error correction)
A chaque intervalle, transmission sur 4 paires dun octet sous la forme de 4
symboles PAM5 (chaque symbole de valence 5 code 2 bits plus une
information de code correcteur derreur).
Dbit atteint 125 mbaud/s x 8 bits = 1 gigabit/s.

452

Conclusion : Ethernet Gigabit


Une utilisation dj importante dans les rseaux
locaux au niveau infrastructure ( backbone ).
Cartes rseaux sur PC un prix accessible.
Le mode half duplex a t maintenu mais le
standard a vocation a tre utilis en mode full
duplex.
Avenir de ce standard : la connexion filaire de
stations de travail.
453

Rseaux locaux Ethernet

Ethernet:
les standards 10 Gigabits/s

454

Introduction: Ethernet 10 Gigabits


Groupe de travail IEEE partir de 1999. Publication de la norme
IEEE802.3 ae en 2002. Fin des travaux 2006
Objectif poursuivi: crer un rseau compatible Ethernet.
. Format des trames identique (adressage, tailles min et max, ...)
. Compatibilit fonctionnelle norme 802.3 (contrle de flux, )
Trois particularismes
Version "full duplex" uniquement.
Distance possible sur fibre monomode 40 km.
Compatibilit dune version 10G avec le rseau longue distance sur
fibre optique : SONET OC-192c / SDH VC4-64C

Niveau physique : codages X, R, W mdium S, L, L4, E, T

455

Niveau physique: Les codages


10G BASE X utilise le codage 8B/10B.
10G BASE R utilise le codage 64b/66b.
10G Base W utilise comme support de
communication des conteneurs SONET OC192 ou
SDH VC 64 .

456

Niveau physique: Fibres optiques


10G Base S

Deux fibre multimodes 850 nanomtres srie.


Distance maximum 65 mtres

10G Base L4

Deux fibre multimodes 1310 nanomtres multiplexage en longueur


donde (utilisation du multiplexage en longueur d onde WDM
Wavelenght Divison Multiplexing.
Distance maximum 300 mtres

10G Base L

Deux fibre monomodes 1310 nanomtres


Distance maximum 10 kilomtres

10G Base E

Deux fibre monomodes 1550 nanomtres


Distance maximum 40 kilomtres

457

Exemples dEthernet 10G sur fibre


En combinant un choix de codage et un choix de fibre.
10GBase-SR 850-nm serial LAN Multimode 65
10GBase-LX4 1,310-nm WDM LAN Multimode 300
10GBase-LR 1,310-nm serial LAN Single-mode 10,000
10GBase-ER 1,550-nm serial LAN Single-mode 40,000
10GBase-SW 850-nm serial WAN Multimode 65
10GBase-LW 1,310-nm serial WAN Single-mode 10,000
10GBase-EW 1,550-nm serial WAN Singel-mode 40,000
458

Niveau physique: Ethernet 10G Base T


Le standard 10 GB sur paires torsades
Utilisation de 4 paires torsades UTP catgorie 6 ou
7 (Class E ou Class F).
Distances maximum dpendantes de la paire utilise.
100 m sur catgorie 7 (class F)
55 m sur catgorie 6 (class E)

Mode full duplex avec annulation dcho.


Code PAM 10 , 10 niveaux codent 3 bits.
Rapidit de modulation 833 Mgabaud.
Dbit 4 paires x 833 mgabaud x 3 bits/baud=10GB.
Difficults de mise au point.
459

Conclusion : Ethernet 10 Gigabit


Encore en cours de mise au point.
Des produits dj diffuss.
Pour linstant un standard pour oprateurs ou
rseaux trs importants.

460

Rseaux locaux Ethernet

Ethernet:
Lauto ngociation

461

Caractristiques gnrales de l
lauto
autoautongociation
Lauto-ngociation sert dterminer la meilleure
option possible de communication entre deux
extrmits dune voie sur paires torsades.
Il fonctionne par change des capacits de
communication entre partenaires Ethernet (entre deux
stations connectes directement ou entre une station et
un rpteur ou un commutateur).
La ngociation ralise par un protocole situ au niveau
physique.
Uniquement dfinie pour les versions Ethernet paires
torsade partir de 802.3u Ethernet 100.
Ce protocole est excut linitialisation dune voie
de communication ou lors dune restauration manuelle
dune liaison.
Origine NEC Nwau, normalisation IEEE 802.3 u (1995)
462

Tableau des modes de


communication ngociables
Priorit
1
2
3
4
5
6
7
8
9

Type
10 Base T Half duplex
10 Base T Full duplex
100 Base TX Half-duplex
100 Base T4 Half-duplex
100 Base T2 Half-duplex
100 Base TX Full-duplex
100 Base T2 Full-duplex
1000 Base T Half-duplex
1000 Base T Full duplex

Dbit
10 Mb/s
2x10 Mb/s
100 Mb/s
100 Mb/s
100 Mb/s
2x100 Mb/s
2x100 Mb/s
1000 Mb/s
2X1000 Mb/s
463

Fonctionnement de l
lauto
autoauto-ngociation
En 10 base T mission initiale dune squence dimpulsions (NLP
Normal Link Pulse) puis entretien de ltat oprationnel par des NLP
chaque 16 milliseconde.
Lauto-ngociation transforme linitialisation les signaux NLP en signaux
baptiss FLP (Fast Link Pulse), qui vhiculent des mots de 16 bits LCW
(Link Code Word) qui codent le niveau de communication possible.

S0 S1 S2 S3 S4 A0 A1 A2 A3 A4 A5 A6 A7 RFAckNP
Le LCW de base
S0 S4 : Slecteur de rseau local (code 00001 pour Ethernet)
A0 : 10 Base T HD, A1 : 10 Base T FD, A2 : 100 Base TX HD, .
RF : Remote Fault, signalisation derreur lextrmit distante
Ack : Acquittement de rception dun mot LCW de 16 bits reu.
NP : Next Page existence dun autre mot suivre .
Un systme distant qui possde les fonctions dauto ngociation acquitte et
propose son propre niveau.
464

Modes de dtection parallle


En labsence du protocole dauto ngociation (pas de signaux
FLP) possibilit de dtection parallle (parallel
detection):
Si un systme ne sait gnrer que le signal NLP le mode de
communication slectionn est le 10 Base T half duplex.
Observation des signaux gnrs par le partenaire: si un partenaire
gnre des signaux en 100 base TX ou 100 Base T4, la forme
caractristique de ces signaux permet un mcanisme dit de
dtection parallle de se positionner quand mme 100 Mb/s.
Existence de problmes possibles avec lauto ngociation (slection
dun niveau trop bas) ou problmes avec le mode de dtection
parallle.

Lauto ngociation en Ethernet gigabit est modifie


(nouveau LCW, ngociation pour lutilisation du
contrle de flux) .
465

Conclusion : Ethernet
Le standard en rseau local filaire qui a effac
tous les autres.
Un ensemble de concepts qui ont
considrablement volus. En fait Ethernet a t
rinvent plusieurs fois ce qui a assur sa survie
et son succs.
Un avenir assur pour ce standard: prochaine
tape envisage 100 Gigabits/seconde ?
466

Bibliographie
Charles E. Spurgeon, Ethernet : the definitive guide ,
Oreilly, 2000
Alexis Ferrro, Les rseaux locaux commuts et ATM ,
InterEdition, 1998
Sites web :
Gigabit alliance http://www.10gea.org/

467

Rseaux locaux partags

Rseaux locaux sans fils


(Wireless LAN)
IEEE 802.11 WIFI
Gnralits
Niveau liaison
Niveau physique
468

Gnralits Wifi: diffrentes


catgories de rseaux sans fils
1) Rseaux personnels sans fils (WPAN)
Bluetooth (IEEE 802.15.1), HomeRF, ZigBee IEEE
(802.15.4), Infrarouges
2) Rseaux locaux sans fils (WLAN)
WiFi IEEE 802.11, HiperLAN, DECT
3) Rseaux mtropolitains sans fils (WMAN)
Norme IEEE 802.16 (boucle locale radio) Wimax
4) Rseaux tendus sans fils (WWAN)
GSM (Global System for Mobile), GPRS (General
Packet Radio Service), UMTS (Universal Mobile
Telecommunication System).
469

Gnralits Wifi
(Wireless Fidelity)
Recherches sur les rseaux locaux sans fils depuis
le dbut des annes 1970.
Normalisation wifi: fin des annes 1990.
Avantages du sans fil
Ne pas avoir cbler un btiment.
Plus de souplesse et de mobilit.

Dploiement des rseaux Wifi

Rseaux domestiques.
En entreprise.
Lieux de fort passage (hotspots).
Fournisseurs daccs sans fils WISP Wireless Internet
Service Provider
470

Gnralits WIFI:
Quelques lments darchitecture
1) WIFI : un rseau local radio.
Dfinition sur les deux niveaux physique et liaison.
2) WIFI : deux organisations architecturales.
Le mode infrastructure (centralis).
Le mode ad hoc (distribu).
3) WIFI : deux protocoles diffrents daccs au mdium.
PCF Point Coordination Function (en coopration).
DCF Distributed Coordination Function (en comptition).
Pouvant tre utiliss simultanment par une station.
4) WIFI : diffrents niveaux physiques selon le dbit, le
codage, la bande de frquences utilise.
802.11, 802.11a , 802.11b , 802.11g, en cours 802.11n.
5) Consortium de dveloppement : WIFI Alliance 471

Gnralits WI FI :
Le modle de rfrence WIFI
Liaison
Physique

LLC
MAC

Administration MAC

PLCP

Administration
physique

PMD

Transmission de
donnes

Administration
de
station

Administration
rseau

LLC Logical Link Control .


MAC Medium Access Control.
PLCP Physical Layer Convergence Protocol.
PMD Physical Medium Dependent.
Administration physique (Physical Management).
Administration MAC (MAC Management).
472
Gestion de Station (Station Management).

Rseaux locaux partags


wifi
LE NIVEAU LIAISON
MAC Medium Access Control
Mode ad hoc
Mode infrastructure

473

Le niveau liaison Wifi :


Le mode adhoc (distribu)
IBSS Independent Basic
Service Set : ensemble
Sta 5
de stations avec coupleurs
sans fils, communicantes
IBSS
Sta 2
dans la mme bande.
Sta 4
IBSS
Sta 6

Sta 3

Terminologie: mode
ad hoc, peer to peer
Protocole DCF :
Distributed Coordination
Function.
474

Le niveau liaison Wifi :


Le mode infrastructure (centralis)

BSS

ESS

- AP Access Point
commutateur.

BSS

- Station de travail
avec un coupleur WIFI.

AP
AP
DS Systme de
distribution

- BSS (Basic Service


Set): un seul AP.
- ESS (Extended
Service Set) : plusieurs
AP connects par un
autre rseau (rseau
Ethernet ou sans fil).
- Changement de point
daccs: handover/
roaming (itinrance).
475

Le niveau liaison Wifi : DCF


Distributed Coordination Function

1) Protocole en comptition avec coute (CSMA).


2) Ajournement non persistant.
3) Dtection de collisions par accus de rception.
4) Retransmission sur collision (binary backoff).
5) Gestion de la fragmentation.
6) Pas de gestion de connexion.
7) Pas de contrle de flux.
8) Pas de garantie de livraison sans erreurs.
9) Pas de qualit de service (en version de base)
476

Le niveau liaison Wifi : DCF


Ecoute et ajournement non persistant
1) Ecouter la voie, transmettre si la voie est libre.
2) Si la voie est occupe choisir un intervalle
dattente alatoire (backoff) dans lintervalle
[0,CW] (CW contention window).
3) Dcompter des intervalles de temps (tranche
canal Slot Time) quand le medium est libre.
4) Le dcompte est suspendu quand le mdium
redevient occup.
5) Quand lintervalle dattente devient nul et que la
voie est libre commencer mettre (une trame de
donnes ou de contrle par exemple RTS).
477

Le niveau liaison Wifi : DCF


Diagramme dcoute et dajournement
Schma extrait de la norme 802.11

Notions utilises
Silence inter trame (IFS Inter-Frame Spacing)
DIFS: Distributed IFS (50s); PIFS: Point IFS(30s); SIFS: Short IFS (10s)
Fentre de collision CW (Contention Window)
Tranche canal (Slot Time) 20 s
478
Attente en nombre entier de tranches (Backoff)

Le niveau liaison Wifi : DCF


Transmission directe dune trame
Source
Destination
Autre

DIFS

Trame
SIFS Ack Retour au
partage en
comptition
Ecoute physique
de la voie.

Acquittement positif ACK obligatoire aprs un silence SIFS


(protocole PAR Positive Acknowledgment Retry ou encore ARQ
Automatic Repeat ReQuest).
Mcanisme dcoute physique pour une autre station.
479

Le niveau liaison Wifi : DCF


Evitement des collisions : CSMA/CA
Schma extrait de la norme 802.11

Echange RTS CTS (Request To Send/Clear To Send) pour une trame donnes.
Utilisation des silences courts SIFS (lchange est prioritaire)
Acquittement positif ACK obligatoire.
Mcanisme dcoute virtuelle (indicateur NAV pour une autre station). 480

Le niveau liaison Wifi : DCF


Lalgorithme du retard binaire
255

Cwmax

255

127
63

CW Contention Window
31
15

7
Cwmin
0
Tentative initiale Troisime tentative Sixime tentative
Attente = Random() * ST (Backoff Time).
Random = Entier alatoire uniformment distribu sur [0,CW].
CW = Entier entre CWmin CWmax qui double chaque tentative.
ST = Valeur caractristique du niveau physique (Slot Time).
481
802.11a et g : cwmin=15 cwmax=1023; 802.11b : cwmin=31 cwmax=1023

Le niveau liaison Wifi : PCF


Point Coordination Function
1) Fonctionnement en scrutation (polling) par le
PC (Point Coordinator).
2) Une station met si elle est autorise par le PC.
3) Le PC slectionne une station en plaant son
adresse dans la trame.
4) Les trames sont acquittes. Si lacquittement ne
revient pas le PC ou la station effectuent la
retransmission.
5) PCF a plutt t destin des changes qualit
de service.
482

Le niveau liaison Wifi : PCF


Protocole de scrutation
Schma extrait de la norme 802.11

Intervalle de rptition: mode PCF (contention free) puis DCF.


PIFS puis trame Beacon : ouverture dun intervalle sans collision (mode PCF)
483
CF-end fin de squence Poll Ack sous contrle du PC.

Le niveau liaison Wifi : autre fonction


Fragmentation
MSDU: charge utile
EntteMAC

CORPS

Fragment 0

FCS
EntteMAC

EntteMAC

CORPS

FCS

CORPS FCS

Fragment 2

Fragment 1

Schma extrait de la norme 802.11


484

Le niveau liaison Wifi :


Format de trame (MAC)
2

FC D/ID Adresse 1

6
Adresse 2

6
Adresse 3

Corps de la trame
0 2312 octets

Seq Adresse 4
FCS
4 octets

1) FC (Frame Control): version de protocole, type de trame etc.


2) Dure / ID : Dure d'utilisation du canal de transmission.
3) Champs adresses : Une trame peut contenir jusqu 4 adresses (mode
adhoc adresse 1 destination et adresse 2 source).
4) Contrle de squence : pour la fragmentation (numro de fragment
sur quatre bits et numro de squence de la trame sur douze bits).
5) Corps de la trame : charge utile dau maximum 2312 octets.
6) FCS (Field Check Sequence): somme de contrle de niveau MAC :
x32+ x26+ x22+ x16+ x 2+ x11+ x10+ x8+ x7+ x5+ x4+ x2 + x+485
1

Approfondissement: la zone
contrle de trame (FC)
Version (2 bits)

Type (2 bits)

To
From
More
Retry
DS (1) DS (1) Frag (1) (1 bit)

Sous-type (4 bits)
Power More
WEP
mngt (1) data(1) (1 bit)

Order
(1 bit)

1) Version du protocole: Actuellement 0 en premire version.


2) Type et sous type: Dfinition du type de la trame (2 bits + 4 bits).
3) To et From DS (Distribution System) : Trame vers ou en provenance du
systme de distribution (AP point daccs). Les 2 bits 0 mode Ad hoc.
4) More : Il reste des fragments mettre (bit more de la fragmentation).
5) Retry: La trame est une retransmission dune trame prcdente errone.
6) Power management : A 1 la station entre en mode conomie.
7) More data : A 1 des donnes sont mettre vers une station en conomie.
8) WEP : A 1 la trame est chiffre en WEP (Wireless Equivalent Privacy).
486
9) Order : Trame de la classe de service strictement ordonn.

Approfondissement: quatre cas


de transmission en wifi
Cas 1 (mode adhoc): Transmission directe entre
deux stations (dans un IBSS).
Cas 2 (mode infrastructure) : Transmission dune
station vers le point daccs (qui doit ensuite
relayer vers une station destinataire).
Cas 3 (mode infrastructure) : Transmission par un
point daccs dune trame vers son destinataire.
Cas 4 (mode infrastructure avec rseau de
distribution sans fil): Transmission intermdiaire
dune trame dun point daccs un autre point
daccs.
487

Approfondissement: rles des


adresses MAC
Cas To DS From DS Adresse 1 Adresse 2 Adresse 3 Adresse 4

1
2
3
4

0
1
0
1

0
0
1
1

DA
BSSID
DA
RA

SA
SA
BSSID
TA

BSSID
DA
SA
DA

N/A
N/A
N/A
SA

Toutes les adresses sont au format IEEE 802 sur 48 bits.


DA (Destination Address) : Adresse destination .
SA (Source Address) : Adresse source.
BSSID : Adresse du Basic Service Set soit ladresse MAC de lAP (mode
infrastructure) soit ladresse de lIBSS (mode ad hoc).
RA : adresse de lAP destinataire (dans le systme de distribution sans fils).
TA : adresse de lAP source (dans le systme de distribution sans fils).
N/A : Non applicable.

488

Rseaux locaux partags wifi

Le niveau physique
802.11 b
802.11 g

489

WIFI niveau physique : bandes


de frquences utilises
Bandes de frquences ISM (Industrie /Scientifique
/Medicale), aucune autorisation nest ncessaire mais
lutilisation est mal rgule (interfrences).
100 Mhz
26 Mhz 83,5 Mhz
802.11 b et g
5725 5825

902 928 2400 2483,5

Bande de frquences U-NII (Unlicensed-National


Information Infrastructure). IEEE 802.11 a
100 Mhz
200 Mhz
802.11 a
5150

5350

5725 5825

490

WIFI niveau physique :


Principaux standards
IEEE 802.11 (1997) : 1 et 2 Mb/s (ISM 2,4 Ghz).
IEEE 802.11b (1999) : 1, 2, 5.5, 11 Mb/s
(ISM 2,4 Ghz)
IEEE 802.11a (2001) : 6, 9, 12, 18, 24, 36, 48, 54
Mb/s (U-NII 5Mhz).
IEEE 802.11g (2003) : 1,2, 5.5, 11,6, 9, 12, 18, 24,
36, 48, 54 Mb/s (ISM 2,4 Ghz) Compatible 802.11b
IEEE 802.11n : En dveloppement.
491

Rseaux locaux partags wifi :


Niveau physique

Le niveau physique wifi


selon la norme 802.11b

492

Niveau physique 802.11b :


Principales caractristiques
1) IEEE 802.11(1997) : Dbits 1 Mb/s (Basic Rate) et 2 Mb/s
(Extended Rate) selon trois codages,
FHSS (Frequency Hopping Spread Sequence)
DSSS (Direct Sequence Spread Spectrum)
IR (Infra rouge).
2) IEEE 802.11 b (1999): Amlioration des codages
802.11 1997 (baptiss HR/DSSS (High rate) pour atteindre les
dbits de 5,5 Mb/s et 11 Mb/s (Enhanced rates).
3) 802.11b : Adaptation du dbit (technique de codage) en
fonction du rapport signal bruit (variable rate shifting).
4) 802.11b : Indication des distances en intrieur : 11
Mbit/s (30 45 m) ; 5,5 Mbit/s (45 75 m) ; 2 Mbit/s (75
100 m) ; 1 Mbit/s (100 300 m).
5) 802.11b : Utilisation de la bande ISM 2,4 2,4835493Ghz.

Le niveau physique WIFI 802.11 b :


Format des trames DSSS
Signal

Service

Longueur

Sync (128) SFD (16) (8) (8) (16) CRC (16) Corps MAC FCS (32)
Prambule
Entte PLCP
Trame MAC
144 bits 1Mb/s
48 bits 1 Mb/s
1,2 DBPSK 5.5,11 DQPSK
Prambule Preamble :
Synch (128 bits): Squence 0101 (128 bits entte normal, 56 bits entte court).
SFD (16 bits Start Frame Delimiter): Dlimiteur dbut F3A0 ou 1111 0011 1100 0000

PLCP Physical Layer Convergence Protocol .


Signal (8 bits): dbit en centaine Kb/s hexa 0A, 14, 37, 6E pour 1, 2, 5,5, 11 Mb/s.
Service (8 bits) : 0.
Longueur (16 bits): de la trame en octets (pour dterminer la fin).
Header Error Check Field : CRC (16 bits) sur lentte PLCP selon
G(X)= X**16 + X**12 + X**5 + 1

Trame de niveau MAC avec code polynomial FCS.

494

WIFI 802.11b : Le dcoupage en


canaux de la bande 2,4 Ghz
1

3 4

22 Mhz

2,402 Ghz
11
1
6

6 7

11

6
1

11

9 10 11 12 13 14

2,483 Ghz
Trois canaux disjoints dans la
bande 2,4 Ghz
Une utilisation des trois
canaux en mode cellulaire.
495

Niveau physique 802.11b :


Codages et modulations
Dbit
en b/s

Nb bits cods Longueur


par symbole du symbole

1 Mb/s

1 bit

2 Mb/s

2 bits

5,5 Mb/s

4 bits

11 Mb/s

8 bits

11 bits
code Barker
11 bits
code Barker
8 signaux
code CCK5,5
8 signaux
code CCK11

Dbit en
symboles /s
1 Mga
symboles /s
1 Mga
symboles /s
1,375 Mga
symboles /s
1,375 Mga
symboles /s

Modulation
DBPSK
DQPSK
QPSK
QPSK

DBPSK : Differential Binary Phase Shift Keying DQPSK : Differential


Quadrature Phase Shift Keying QPSK Quadrature Phase Shift Keying
CCK : Complementary Code Keying (Optionnel PBCC Packet Binary 496
Convolutional Coding)

Niveau physique 802.11b: Code DSSS


Direct Sequence Spread Spectrum
Etalement de spectre squence directe
0
1

Signal initial
Signal tal

1 0 11 0 1 1 1 0 0 0 0 1 00 1 0 00 1 11 1 0 1 1 0 1 11 0 0 0
Choix dune squence de 11 bits
(squence Barker) pour reprsenter un 1
(10110111000). Son complment
reprsente un 0 (01001000111).
Introduction de redondances
permettant la correction derreurs / gain
de 10 dcibel.

Spectre initial
Spectre tal
497

Niveau physique 802.11 b :


Modulations utilises en 802.11 b
Dbit 1 Mb/s : Modulation de phase diffrentielle binaire (un bit
par intervalle) (DBPSK Differential Binary Phase Shift Keying).

Bit 0

Bit 1

Changement Changement de
de phase 0 phase Pi (180 )

Dbit 2 Mb/s : Modulation de phase diffrentielle de porteuses en


quadrature (deux bits par intervalle). DQPSK Differential Quadrature
Phase Shit Keying.
Bits 11 (Pi/2 90)
00 01
11
Bits 00 (0)

Bits 01(Pi 180)

Bits 10 (3pi/2 270)

498

Niveau physique 802.11b : Code CCK


Complementary Code Keying
Exemple du code CCK 11 Mb/s : on gnre des symboles de 8 signaux
DPSK (mot de code de 8 signaux pouvant avoir quatre phases diffrentes).
Premire tape : 8 bits (d1, d2, d3, d4, d5, d6, d7, d8) transmettre
gnrent 4 valeurs de phase 1 , 2 , 3, 4 gales aux valeurs des dibits,
(d1, d2) (d3, d4) (d5, d6) (d7, d8). (les phases i sont codes 0, 1, 2, 3).
Seconde tape : les quatre phases 1 , 2 , 3, 4 gnrent les 8 phases
(1 , 2, ...., 8 ) codes 0, 1, 2, 3 des huit signaux QPSK dun symbole
transmis (comme dans un code linaire).
1
(1 , 2, ...., 8 )= (1 , 2 , 3, 4 ) 1
1
1

1
0
1
1

1
1
0
1

1
0
0
1

1
1
1
0

1
0
1
0

1
1
0
0

1
0
0
0

+( 0 0 0 2 0 0 2 0 )

c = (ej1/2,ej2/2, ej3/2,ej4/2, ej5/2,ej6/2,ej7/2,ej8/2)

0
3

499

Rseaux locaux partags wifi :


Niveau Physique

Le niveau physique wifi


selon la norme 802.11g

500

Niveau physique 802.11g :


Principales caractristiques
1) Hritage 802.11a (2001) :

Utilisation de la solution OFDM (Orthogonal Frequency Division


Multiplexing) avec les mmes modulations (DBPSK, QPSK et QAM).
Dbits repris en 802.11g DSSS-OFDM: 6, 9, 12, 18, 24, 36, 48, 54 Mb/s

2) Compatibilit 802.11b (1999) :

Utilisation de la bande ISM 2,4 2,4835 Ghz.


Utilisation des standards 802.11b ERP-DSSS: 1, 2 ERP-CCK: 5.5, 11 Mb/s
(ERP Layers Extended Rate Physical layers ensembles de codages/modulations).

3) Codage/modulation optionnels: CCK/OFDM PBCC/DPSK


ERP-OFDM: 6, 9, 12, 18, 24, 36, 48, 54 et ERP-PBCC: 5.5, 11, 22, 33Mb/s
4) 802.11g (2003): Adaptation du dbit aux conditions de transmission
5) 802.11g: distances de 40m 140 m pour des dbits de 6 54 Mb/s
501

Niveau physique 802.11g : OFDM


Orthogonal Frequency Division Multiplexing

1) Technique majeure dans les transmissions numriques (annes 1960)

2) Applications multiples: Radio numrique (DAB Digital Audio Broadcasting),


Tlvision numrique hertzienne DVB-T (Digital Video Broadcasting - Terrestrial, Accs aux
rseaux numriques par le tlphone filaire ADSL (Asymmetric Digital Subscriber Line).

3) FDM Multiplexage frquentiel : utilisation dun dcoupage en sous canaux


=> OFDM = modulation porteuses multiples
Modulation dans chaque sous canal minimisant les interfrences entre canaux.
Solution au problme des trajets multiples dus aux rflexions: canaux troits et
intervalles de garde (91 ns avec cho 500ns ou 3200 ns + garde de 800 ns).

4) O Orthogonalit: Espacer trs rgulirement les canaux

Les porteuses forment un ensemble orthogonal quil est facile de sparer

k (t) = ejkt ; k (t)*l (t) dt = 0 si k l ; = T si k = l


T

5) Utilisation de circuits spcialiss de transforme de Fourrier (pour la


modulation dans les sous canaux).
6) C pour Codage (COFDM): Entrelacement des bits, Rservation de sous canaux pour
transmettre des informations de redondances => correction derreurs.
502

WIFI 802.11g : Le dcoupage


dun canal OFDM
Donnes
48 sous canaux de 312,5 khz

Porteuses pilotes
4 sous canaux
de 312,5 khz

16,25 Mhz
Canaux de donnes (et de redondances): 48
Donnes codes lmission au moyen dun code correcteur
derreurs. Selon les dbits ou 1/3 ou des canaux sont utiliss pour
la redondance de donnes.
Sous canaux servant la transmission de porteuses pilotes: 4
On y met des squences de donnes fixes.
Utilises pour valuer les dlais de propagation et les interfrences de symboles.
503

Niveau physique 802.11g :


Codages et modulations en OFDM
Dbit Dbit par Bits cods Dbit en M Code
Modulation
binaire sous canal par symb symboles /s (FEC)
6 Mb/s 0,125 Mb/s
9 Mb/s 0,1875 Mb/s
12 Mb/s 0,25 Mb/s
18 Mb/s 0,375 Mb/s
24 Mb/s 0,5 Mb/s
36 Mb/s 0,75 Mb/s
48 Mb/s 1 Mb/s
54 Mb/s 1,125 Mb/s

1 bit
1 bit
2 bits
2 bits
4 bits
4 bits
6 bits
6 bits

12 Ms/s
12 Ms/s
24 Ms/s
24 Ms/s
48 Ms/s
48 Ms/s
72 Ms/s
72 Ms/s

24/48
36/48
48/96
72/96
96/192
144/192
192/288
216/288

BPSK
BPSK
QPSK
QPSK
16-QAM
16-QAM
64-QAM
64-QAM

FEC : Forward Error Correction QAM : Quadrature Amplitude Modulation

504

WIFI 802.11g : Le format de trame


DSSS-OFDM (pur 802.11g)
Prambule
16 s

Signal+Service
6,133 s

Data
max 2346

Tail
6 micro secondes

PPDU (PLCP PDU)


Modulation OFDM
6 Mb/s

Modulation OFDM
6 54 Mb/s

PPDU (PLCP PDU): Une unit de protocole de niveau physique.


Lentte PLCP est transmise 6 Mb/s.
Prambule: Synchronisation pour une transmission OFDM.
Zone signal (24 bits): le dbit de transmission utilis pour la zone donnes
et sa longueur (un symbole de 4 s 6 Mb/s). La zone service est de 2/3 de
symbole soient 16 bits (inutilise).
La zone de donnes contient une trame de niveau MAC dune longueur
maximum de 2346 octets.
A la fin TAIL est une zone de silence de 6 micro secondes.
505

WIFI 802.11g : Le format mixte


dune trame compatible 802.11b
Sync
128 bits

SFD Signal Service Longueur CRC


16 bits

Prambule

8 bits

8 bits

16 bits

Entte PLCP
Modulation DBPSK
1 Mb/s

16 bits

Long Sync
8 s

Signal Field
4 s

Data
Symbols

Signal

Extension 6 s

PSDU (PLCP SDU)


Modulation OFDM
6 Mb/s

Modulation OFDM
6 54 Mb/s

PSDU (PLCP SDU): la charge utile dune trame au niveau physique aprs le
prambule et la zone PLCP comme en 802.11b 1 Mb/s (la partie signal de
la zone PLCP code par un dbit 3 Mb/s tous les dbits OFDM).
Les deux premires zones sont toujours mises 6 Mb/s:
Long Sync (Long Training Sequence) est une squence de synchronisation
de deux fois 4 micro seconde plus un intervalle de garde.
OFDM Signal dfinit le dbit et la longueur pour la partie OFDM Data Symbols.

Data symbols: la partie MAC habituelle suivie de 6 s de silence (signal


506
extension).

Liste des autres standards


802.11
802.11c : Protocole de ralisation des ponts 802.11
802.11d : Harmonisation internationale des rseaux
802.11.
802.11e : Qualit de service en wifi (transmission de
la voix et de la vido).
802.11f : Itinrance entre AP (roaming).
802.11h : Gestion de la bande 5 Ghz en Europe
rglementation frquences, relation avec HiperLAN2 .
802.11i : Amlioration de la scurit.
802.11j : Adaptation la rglementation japonaise.
507

WIFI : Conclusion

Avantages
Supprime les cblages (construction ad-hoc ).
Dbit acceptable pour un grand nombre dapplications.
Inconvnients
Surcharges protocolaires (11 Mb/s => 6,38 Mb/s rels).
Problmes des transmissions hertziennes.

Distances assez faibles, Interfrences

Problmes de scurit
Mise en uvre de litinrance entre cellules (Roaming)
Qualit de service (tlphone sur wifi).
508

Bibliographie Wifi
Documents web
Normes relatives au Wifi. http://www.ieee.org/
Davor Males, Guy Pujolle Wifi par la pratique ,
Eyrolles, 2002
Mustafa Ergen, IEEE 802.11 Tutorial, Universit
de Californie Berkeley, Juin 2002

509

Rseaux locaux

Rseaux locaux commuts


"Lan Switching"
1 Notions gnrales.
2 Techniques de commutation.
3 Techniques de routage.
4 Rseaux locaux virtuels.
510

Commutation de rseaux locaux

Notions gnrales

511

Besoin de rseaux locaux


commuts
Nombreuses limitations du mode Ethernet partag
(Ethernet unidirectionnel Half duplex )
Performances en dbit : Pour des grands rseaux (milliers de stations)
et de gros volumes de donnes (accs fichier, multimdia).
Difficults dextension en distance: problme des collisions.
Scurit : tout message est accessible par toutes les stations.
Problme essentiel du mode partag: mode diffusion gnrale de tous
les messages (mode promiscuous ), tous les tronons sont relis par des
rpteurs donc toutes les stations voient passer toutes les trames point
point, toutes les diffusions, toutes les collisions, toutes les erreurs

La dgradation des performances et de la scurit a conduit


progressivement une inadaptation de l'architecture partage.
512

volution historique (1) :


rpteurs, ponts
Dispositifs pour amliorer les rseaux Ethernet
Rpteur ou hub (pour mmoire) : recopie de niveau physique, bit
bit des informations de tronon tronon (propre au mode partag).
Pont ( bridge ) : historiquement un matriel de connexion entre
deux rseaux locaux agissant en recopiant toutes les trames dun tronon
sur lautre (agit au niveau trame par exemple en stockage et retransmission)
=> Ne propage pas les erreurs ou les collisions : limitation des
domaines de collision chaque rseau local).
A

Pont

Port lan 1
Port lan 2
513

volution historique (2) :


ponts filtrants, commutateurs

Ponts filtrants (filtering bridges) : Historiquement la premire version de la


commutation des rseaux locaux: un pont filtrant agit entre deux tronons et ne
laisse passer que le trafic devant transiter d'un tronon l'autre (forwarding)
=> Les diffusions s'tendent encore tous les tronons.
Commutateur de rseau local (lan switch) : Un dispositif capable de
commuter un grand nombre de tronons de rseaux locaux (8, 16 , 32...) de
standards ventuellement diffrents.
COMMUTATEUR
Ports rseaux locaux
Station

Station

Station

Rseau local
boucle IBM
802.5

Une station en
Ethernet
Un tronon Ethernet

Station

514

Commutateur de rseaux locaux :


architecture en couches, routage
Niveau Rseau

Paquet
Liaison
LLC

Niveau Liaison

Niveau Physique

Commutateur de
rseaux locaux

Liaison
MAC

Paquet

Commutation

Paquet

Routage

LLC

Paquet
LLC

Mac Paquet
802.3

Mac Paquet
802.3

Mac Paquet
802.5

Mac Paquet
802.5

Mac

Mac

Mac

Mac

Paquet

Paquet

Paquet

Paquet

Boucle jetons

Ethernet

Table de
routage

Paquet

Adresse

Port

Date

42:AB:E3:10:98:33

19:27

5C:72:C2:C3:51:01

19:29
515

Commutateurs de rseaux locaux:


Le fonctionnement transparent
Transparence (Transparent Bridges/Switches)
On branche physiquement une configuration de commutateurs et de
stations quelconque et lensemble doit s'autoconfigurer sans aucune
intervention humaine (fonctionnement plug and play ).

Apprentissage a posteriori (Backward Learning ) :


A chaque arrive de trame sur un port, les commutateurs notent dans la
table de routage ladresse dmission avec son port.
- A l'initialisation les tables de routage sont vides.
- Toutes les trames circulant sur les tronons relis un commutateur
sont coutes.
- Les adresses sources et les ports sont nots dans la table.
- Si la destination dune trame relayer n'est pas connue, la trame est
diffuse sur tous les ports pour atteindre son destinataire.
- Si une destination est connue la trame est recopie sur le seul port
516
de ladresse destination sauf si c'est le mme port que celui de la source.

Commutateurs de rseaux locaux:


Exemple de lapprentissage
Port 1

Commutateur1
Port 3

Port 2

Port 1

Commutateur2
Port 2

Trame C vers D : le commutateur 1 diffuse sur les ports 1, 2 et apprend


que la station C est du cot du port 3. La trame est dlivre D.
Trame B vers C : le commutateur 1 ne retransmet pas la trame et apprend
que la station B est du cot du port 3. La trame est dlivre C.
Trame F vers A : les commutateurs 1 et 2 reoivent et diffusent. Le
commutateur 2 apprend que F est du cot du port 2 et le commutateur 1
que F est du cot du port 2. La trame est dlivre A.
517

Commutateurs de rseaux
locaux: un peu de terminologie

Selon le point de vue par lequel on considre le


dispositif ou selon ses fonctions.
Commutateur de rseaux locaux "Lan switch"
Pont (par analogie des fonctions) "Bridge"
Commutateur de niveau 2 "Layer 2 switch"
Commutateur multi-niveaux (2 niveaux supports,
LAN et IP ou LAN et ATM) "Multi layer switch"
Proxy LAN emulation client" Proxy LEC " ou Dispositif
de priphrie (d'un rseau ATM) " Edge device "
518

Mode Ethernet Bidirectionnel (1)


( Full Duplex )
Rappel Mode Ethernet partag :

protocole l'alternat
"half duplex" soit on met soit on reoit. En 10 BAS T connexion avec deux
paires. Paire mission TX + paire rception RX. RX sert en coute de
collision si TX met) sinon RX reoit seule.
C
o
n
t
r
o
l
e
u
r

E
t
h
e
r
n
e
t

TX

TX

Dtection
de
collision

Dtection
de
collision

RX

RX

C
o
n
t
r
o
l
e
u
r

E
t
h
e
r
n
e
t

Avec lutilisation d'un commutateur Ethernet et avec


une seule station par port : pas de collisions
=> Possibilit de suppression de la gestion des
519
collisions.

Mode Ethernet Bidirectionnel (2)


( Full Duplex )
Modification de l'interface ethernet pour utiliser
les deux paires simultanment en transmission
On connecte directement TX sur RX en mode bidirectionnel.
Reste le format des trames et les techniques de communication physique.
Notion de carte et de port Ethernet "full duplex" avec dbit double de 2
fois 10 Mb/s ou 100 Mb/s ou 1 Gb/s (10 Mb/s mission 10 Mb/s rception).
TX

TX

Dtection
de
collision

Dtection
de
collision

RX

RX

520

Commutation de rseaux locaux

Techniques de
commutation

521

Commutation en mmoire partage (en


stockage et retransmission)
Terminologie anglaise: shared memory
store and forward
La trame entrante est entirement reue et
stocke dans la mmoire.
2 Le module de commutation extrait
l'adresse de destination.
3 L'adresse est envoye la table de
routage.
4 Le rsultat de la recherche est retourn.
5 L'adresse du port sortie est propage
6 La trame est renvoye partir de la
mmoire sur le port de sortie appropri.
Problme: le retard de commutation.

Organe de
commutation
"Switching
engine"
2

Table de
3 routage
"Lookup
4 table"

5
Mmoire de stockage
"Shared memory"
1
6
Ports

522

Commutation la vole
Terminologie anglaise: Cut through, On
the fly, fragment free, fast forward.
1 Lorgane de commutation lit le dbut de
trame et extrait l'adresse destination. La
trame continue d'arriver.
2 L'adresse est envoye la table de
routage.
3 Le rsultat de la recherche est retourn.
4 Le module de commutation renvoie la
trame sur le port de sortie ds que
possible (de prfrence avant qu'elle ne soit
entre totalement).
Problmes : tests de correction de la trame
et conflits daccs aux ports de sortie.

Organe de
commutation
"Switching
engine"
1

Table de
3 routage
"Lookup
4 table"

2
Ports d'entre

523

Techniques pour la commutation


la vole : commutation spatiale
Rappel commutation spatiale
( cross bar , matrix )
Pour N ports de communication
(N petit), utilisation d'une matrice
NxN de points de connexions
(Matrice "Cross point")
Utilisation d'aiguillages btis
autour de circuits intgrs
assembls en matrice.
Retard de commutation trs faible
et commutation en parallle
possible.

1
1

2
3
4
5
6

524

Commutation spatiale: Gestion des


conflits d'accs par files d'attente.
Exemple : Kalpana EPS 1500 2-15 ports 10BAS2, 10BAST, 10BASFL, AUI,
1700 adresses par port, 6000 adresses par commutateur.
"EPP Ethernet Packet Processor
Processeur de ports d'entre/sortie
avec gestion de tampon (256 trames
1
1518 octets)
128 K
EPP A
(1) Port A: trame destination de D
128 K
4
3
- Port D occup en sortie par B (2)
- EPP A stocke sa trame en entre
128 K
(1) Port A: trame destination de D
EPP B
2
128 K
- Autre cas (3): le Port D est occup en
entre (Ethernet half duplex impossible
de sortir)
- Le port D stocke une trame commute
525
dans ses tampons de sortie (4).

Architecture de commutateurs bus


Pour N ports de communication, utilisation d'un bus haut
dbit qui assure la fonction de commutation.
Ncessit de tampons pour traiter les conflits d'accs.
1

3
4

B
U
S

3
4

Gestion des adresses et des files dattente au niveau des


526
cartes de gestion de port.

Techniques pour la commutation la


vole: commutateurs de cellules bus
Architecture de commutateur type ATM
Utilisation dune architecture existante commutation de
cellule (en anglais cell backplane switch ).
Dcoupage dune trame en cellules courtes de taille fixe
(cellule ATM 53 octets dont 48 de charge utile).
Chaque cellule est tiquete avec un entte qui dfinit le port
de sortie.
Les cellules sont commutes puis stockes dans les tampons
du port de destination.
La trame est rassemble partir de ses cellules et
transmise.

527

Comparaison des deux types


darchitectures
En stockage et retransmission
- On examine la trame en entier.
- On peut dtecter tous les cas de trames errones.
- Seules les trames correctes sont relayes.
- Le temps de commutation est plus important.

En commutation la vole
- Seuls les premiers octets sont stocks.
- La trame est passe au destinataire sans examiner la fin.
- Certaines trames en erreur peuvent tre relayes.
- Le retard de commutation dune trame est plus faible.
528

Commutation de rseaux locaux

Techniques de routage

529

Position du problme de routage


En prsence dun ensemble de commutateurs de rseaux
locaux interconnects: comment trouver le chemin qui
permet daller dun point un autre.
Construction pour chaque commutateur dune table de
routage ( forwarding data base )
Port 1

Commutateur1
Port 3

Port 2

Port 1

Commutateur2
Port 2

Rappel: volont dauto configuration automatique du


530
routage au moyen de techniques dapprentissage

Problme de l'existence de deux ponts


en parallle: la tempte de diffusions
Port 1

Rseau 1
Port 1

Commutateur1
Port 2

Station A

Commutateur2
Rseau 2

Port 2

Routeur B

Trame en diffusion gnrale adresse FF:FF:FF:FF:FF (par exemple


protocole ARP, B routeur veut apprendre ladresse de A) : A reoit mais les
deux commutateurs 1 et 2 reoivent aussi par leur port 2 cette diffusion et
selon la rgle rpercutent la trame sur le rseau 1 par leur port 1.
Le commutateur 1 reoit alors une diffusion du commutateur 2 sur son
port 1 et doit donc replacer cette trame sur le rseau 2 par son port 2 (il
en est de mme pour le commutateur 2).
Les trames en diffusion vont donc circuler indfiniment entre les
commutateurs (notion de tempte de diffusion broadcast storm ) 531

Problme de l'existence de deux ponts


en parallle: linstabilit des tables
A

Port 1

Rseau 1
Port 1

Commutateur1
Port 2

Commutateur2
Rseau 2

Port 2

Trame de A vers B: le commutateur 1 apprend que la station A est


accessible par son port 1.
Mais les deux commutateurs 1 et 2 reoivent par leur port 1 et
rpercutent la trame sur le rseau 2 par leur port 2. B reoit.
Le commutateur 1 reoit une seconde fois la trame sur son port 2 et donc
considre que la station A est accessible par son port 2 ce qui est
faux. Le commutateur 2 fait la mme erreur.
Les communications senchanent et les tables de routage oscillent en
532
permanence.

Le routage par arbre couvrant :


principes gnraux (1)
La norme 802.1 D dfinit le protocole de routage par arbre
couvrant : STP Spanning tree protocol .
La solution la plus immdiate au problme des circuits :
n'avoir qu'un seul chemin pour aller d'un point un autre
au moyen de commutateurs de rseaux locaux.
Soit le graphe dont les sommets sont les commutateurs et
les arcs sont les tronons de rseaux locaux: pour n'avoir
qu'un seul chemin d'un point un autre du graphe on utilise
un arbre couvrant.
L'arbre couvrant est construit automatiquement par
dialogue entre les commutateurs: utilisation de trames Hello
et BPDU Bridge Protocol Data Units (Radia Perlman 1992).
533

Le routage par arbre couvrant :


principes gnraux (2)
Principe de routage: en fonctionnement normal, pour aller
dun point un autre on utilise larbre. On va d'un
commutateur la racine puis de la racine un autre
commutateur ce qui dfinit un chemin unique.
Certains chemins sont abandonns. Ils ne peuvent servir que
sur panne et reconfiguration du rseau avec un autre arbre.
Commutateur A
Tronon 1000

Port 1

Port 1

Commutateur B
Port 2

Commutateur A

Port 2

Tronon 100

Port 1

Commutateur C
Port 2

Tronon 10

Hte 2

Port 3

Hte 1

Port 1
Tronon 1000
Port 1

Commutateur B
Port 2

Tronon 10 Hte 2

Port 2
Tronon 100
Port 1

Commutateur C
Port 3
Port 2

Hte 1
534

tapes de construction de larbre


couvrant : tape 1
lection du commutateur racine de larbre
Le commutateur de plus faible priorit puis de plus
faible adresse mac est lu par change de messages.
Priorit : 0 32768 dfinie par configuration
Identifiant unique: adresse MAC unique de lun des ports.
En runissant les deux notions: Identificateur de pont
(BID Bridge ID ): priorit (2 octets), adresse MAC (6 octets)
Exemple: priorit 32768 (8000 en hexadcimal), adresse
MAC 00:A0:D6:13:43:65, identificateur du commutateur pour
les comparaisons 8000:00A0:D613:4365.
535

tapes de construction de larbre


couvrant : tape 2
lection du port racine de chaque commutateur
Pour chaque commutateur on doit dterminer un port unique
qui le connecte la racine: le port racine ( root port ).
On dtermine tous les chemins du commutateur vers la racine
Pour chaque chemin on calcule le cot du chemin partir dun
cot attribu chaque lien (chaque tronon de rseau local).
On choisit le port racine comme celui de plus court chemin
et en cas dgalit de plus faible priorit (selon une priorit
dfinie par configuration).

536

tapes de construction de larbre


couvrant : tape 3
lection du port dsign
Un tronon est possiblement connect la racine par
plusieurs commutateurs (plusieurs ports de commutateurs).
On doit dterminer lun de ces ports de commutateur comme
port dsign . Cest un port unique qui permettra au
tronon de communiquer avec la racine.
On slectionne comme port dsign celui de chemin le
plus court jusqu la racine (puis celui dont ladresse MAC
est la plus petite).
Les autres ports sont bloqus.
537

Approfondissements : cots des


diffrents types de rseaux locaux
Dbit

Cot Recommand

Intervalle de cot
recommand

4Mbps

250

100 1000

10Mbps

100

50 600

16Mbps

62

40 400

100Mbps

19

10 60

1Gbps

3 10

10Gbps

15
538

Approfondissements : tats dun port


Les ports participants lalgorithme de larbre couvrant
peuvent tre dans cinq tats:
Listening - coute : met/reoit des BPDU pour la construction de
larbre mais ne relaye pas les trames.
Learning - Apprentissage : apprend lexistence dadresses MAC mais
ne relaye pas les trames.
Blocking - Bloqu : en coute uniquement des trames de type BPDU,
ne relaye pas les trames normales.
Forwarding - Relais : port qui met et reoit des trames de la racine.
Disabled - Dconnect : port sans aucune activit.

539

Approfondissements : un exemple
de fonctionnement
tape 1
Commutateur A
Tronon 1000

Port 1

Port 2

Port 1

Commutateur B

Tronon 100

Port 1

Commutateur C

Port 2

Port 2
Tronon 10

tape 1 : lection du commutateur racine avec les donnes suivantes


Commutateur A : Priorit=10 , MAC=00B0D7000001, ID=000A00B0D7000001
Commutateur B : Priorit=27 , MAC=00B0D7000002, ID=001B00B0D7000002
Commutateur C : Priorit=32768 , MAC=00B0D7000003,
ID=800000B0D7000002

On lit le commutateur A.
540

Approfondissements : un exemple de
fonctionnement
tape 2
Commutateur A
Tronon 1000

Port 1

Port 2

Port 1

Commutateur B

Tronon 100

Port 1

Commutateur C

Port 2

Port 2
Tronon 10

tape 2 : lection des ports racine avec les donnes suivantes


Commutateur A : Port 1 Cot 4 Priorit 128, Port 2 Cot 19 Priorit 128
Commutateur B : Port 1 Cot 4 Priorit 128, Port 2 Cot 100 Priorit 128
Commutateur C : Port 1 Cot 19 Priorit 128, Port 2 Cot 100 Priorit 128
Commutateur B Chemin de B A: Par le port 1 cot 4, par le port 2 cot
119 donc port 1 moins cher port racine.
Commutateur C Chemin de C A: Par le port 1 cot 19, par le port 2 cot
541
104 donc port 1 moins cher port racine.

Approfondissements : un exemple de
fonctionnement
tape 3
Commutateur A
Tronon 1000

Port 1

Port 2

Port 1

Commutateur B

Tronon 100

Port 1

Commutateur C

Port 2

Port 2
Tronon 10

tape 3 : lection des ports dsigns avec les donnes suivantes


Tronon 1000 : Commutateur A Port 1 Port dsign commutateur A racine
Tronon 100 : Commutateur A Port 2 Port dsign commutateur A racine
Tronon 10 : Commutateur B Port 2 cot 4, et Commutateur C Port 2 cot
19. Le cot le plus faible gagne. Le port 2 commutateur B est dsign. Le
port 2 commutateur C ntant pas dsign est bloqu.
542

Conclusion : construction de larbre


couvrant
La principale consquence de la mthode de routage par arbre
couvrant est quil ne sert rien de crer des chemins
redondants pour amliorer les performances => on ne
garde qu un seul chemin actif les autres sont bloqus.
Les seules redondances de chemin utilisables le sont
pour des objectifs de sret de fonctionnement.

543

Annexe: ponts en routage par la source


"Source routing bridges"
La solution par arbre couvrant optimise mal les ressources
offertes par les diffrents commutateurs.
Solution diffrente au problme de routage adopte par IBM
pour les boucle jeton et utilise uniquement dans ce cas
Chaque station mettrice doit connatre la topologie
densemble du rseau des commutateurs.
Pour chaque trame transmise lmetteur place dans la trame la
liste des commutateurs traverser.
On peut avoir plusieurs routes pour aller dun point un autre
et optimiser les communications.
=> Allongement des tailles maximum de trame possible
uniquement pour les communications entre commutateurs.544

Commutation de rseaux locaux

Les rseaux locaux


virtuels

545

Position du problme des rseaux


locaux virtuels
Cration de "sous rseaux locaux" regroupant des stations
sur une base logique et non topologique.
Les groupes cohrents indpendamment de la localisation
gographique des stations forment des rseaux locaux
virtuels ou VLAN Virtual LAN .
Principe fondamental: ne permettre les communications
entre stations qu lintrieur dun rseau virtuel.
Un VLAN dfinit un sous rseau ferm de stations, un domaine de
collision, un domaine de diffusion gnrale et de diffusion sur groupe.

Pour communiquer entre deux rseaux virtuels il faut


passer par des stations appartenant aux deux VLAN et
utiliser le routage de niveau rseau => dans un systme de
VLAN, il doit donc tre possible pour une station
546
dappartenir plusieurs VLAN.

Diffrentes catgories de VLAN


VLAN de type 1 : par ports
Les stations connectes un mme port dun commutateur font
obligatoirement partie du mme VLAN.
Simplification de la gestion des VLAN: le numro de VLAN est associ au
numro de port par ladministrateur rseau (notion de VLAN port based )
La scurit est excellente: toutes les stations sur un tronon peuvent
communiquer parce quappartenant au mme VLAN.
Lien inter commutateurs
Commutateur 1
Rseau
virtuel
1

Commutateur 2

Rseau
virtuel
2
Rseau virtuel 3
547

Diffrentes catgories de VLAN


VLAN de type 2 : par adresses MAC
Chaque station caractrise par son adresse MAC peut appartenir un
VLAN donn (notion de VLAN address based ).
Un administrateur doit dcider laffectation dune station un VLAN.
Le numro de VLAN doit apparatre dans la table de routage.
Lien inter commutateurs
Commutateur 1
Rseau
virtuel 1

Commutateur 2

Rseau
2
virtuel

Rseau virtuel 3
548

Diffrentes catgories de VLAN


VLAN de type 3 : par adresses rseaux
Chaque station est galement caractrise par son adresse IP.
Si le commutateur de rseau local analyse les charges utiles des trames et
quil sagit de paquets IP, une station peut appartenir un VLAN donn
sur la base de son adresse IP (notion de VLAN network address based ).
L administrateur systme doit dfinir les VLAN par des ensembles
dadresses IP ou des plages dadresses IP (des sous rseaux IP).
Autres possibilits de dfinition des VLAN
(si l on analyse les charges utiles).
Par type de protocole destinataire.
Par numro de port TCP.
Par identificateur de compte utilisateur (login par exemple en telnet).
.
549

Fonctionnement des VLAN


Solution des messages de signalisation
Les commutateurs changent des messages de
signalisation (courts) comportant une adresse MAC et le
numro de rseau virtuel associ pour mise jour des tables
de routage.
Un message de signalisation est gnr lors de la mise
sous tension d'une station et propag tous les
commutateurs du rseau.
Les tables de routage sont changes priodiquement.
Problmes de performances si le rseau est grand :
Surcharge dchanges de messages de signalisation
Taille des tables de routage et cot de la recherche en table.
550

Fonctionnement des VLAN:


Solution de lestampillage de trames
La norme 802.1 Q ( Frame tagging )
Estampillage: ajouter la trame Ethernet (aprs ladresse source) des
informations (4 octets) dfinissant le VLAN de lmetteur.
8 octets

8 octets

Adresse
destination

Adresse
source

4 octets

VPID
Ethertype

Tag Control Information


802.1p/Q

2 octets 42 1500 octets

Longueur/
Ethertype

Donnes
.

Solution de VLAN par ports: Pour viter les problmes en cas de


diffusion un seul VLAN est dfini par port (la solution ne concerne que les
VLAN de type 1).
Connaissance des commutateurs: VLAN dappartenance des stations
qui lui sont connects (en fait VLAN des ports du commutateur).
Utilisation des estampilles: uniquement pour les changes entre
commutateurs ce qui vite les problmes dus au fait de rallonger la taille
maximum de la trame Ethernet de 1518 1522 octets.
551

Approfondissement: signification des


diffrents champs
8 octets

8 octets

Adresse
destination

Adresse
source

2 octets 42 1500 octets

VPID
Ethertype

VPID
Ethertype
2 octets

Tag Control Information


802.1Q

User
Priority

CFI
.

VLAN
Identifier

3 bits

1 bit

12 bits

Longueur/
Ethertype

Donnes
.

Champ VPID (VLAN Protocol Identifier): Code ETHERTYPE fix 0x8100.


Champ UP ( User Priority ): 3 bits permettant de dfinir 8 niveaux de priorit
pour une trame (sans rapport avec les VLAN mais introduit propos d une
modification du format de la trame Ethernet).
Champ CFI ( Canonical Format Identifier ): Indique pour le routage par la
source que le format est standard.
Champ VID (Vlan Identifier): Indique pour quel VLAN circule la trame (12552
bits).

Approfondissement: fonctionnement de
base de lestampillage de trames:
Rception de trame non estampille: le commutateur
affecte le numro de VLAN du port darrive (ou un numro par
dfaut en labsence de configuration).
Rception dune trame estampille: gnre soit par un
commutateur 802.1 Q soit par une station capable de gnrer
le format 802.1Q. Le commutateur considre le VLAN de
lestampille (VLAN pour lequel circule la trame)
Dcision de routage ( forwarding decision )
Trame Broadcast, Multicast et Unicast destinataire encore inconnu: la
trame est renvoye sur tous les ports ayant mme VLAN que la trame.
Trame Unicast de destinataire connu: la trame est renvoye sur le port
destinataire si le VLAN du port correspond au VLAN de la trame.

Dautres stratgies propritaires peuvent tre implmentes


553
par des commutateurs pour des VLAN par adresses.

Conclusion :avantages et inconvnients


des rseaux locaux virtuels
Avantages des rseaux virtuels:
Amliorer la scurit en limitant la circulation des trames
(totale indpendance des trafics sur un cblage commun).
Amliorer les performances en limitant ltendue des
diffusions au rseau virtuel dappartenance de lmetteur.
Amliorer la gestion de la configuration du rseau:
dfinition des groupes d'utilisateurs sans se soucier de
l'endroit ou ils sont connects.
Inconvnients des rseaux virtuels:
Lourdeur de ladministration.
Contrainte des mcanismes de scurit sur les usagers.
Ralentissement des communications entre rseaux
554
virtuels.

Commutation de rseaux locaux

Conclusion

555

Commutateurs de rseaux
locaux: Avantages (1)
Organisation : Sadapte toute topologie existante, organise par
tronons de rseaux, en reliant des ensembles de matriels disperss
gographiquement sur des tronons de rseaux locaux spars.

Extension en distance : On peut s'affranchir des contraintes de


distance maximum des rseaux locaux par des liaisons spcialises entre
commutateurs.

Extension en performances :
Limitation du trafic aux tronons concerns ,
Limitation des domaines de collision ,
Possibilit de limitation des diffusions avec les rseaux locaux virtuels.

Scurit : On peut interdire slectivement le franchissement des


commutateurs. En particulier le mode coute gnrale des rseaux locaux
("promiscuous") qui permet beaucoup de piratage peut-tre trs rduit avec
556
les rseaux locaux virtuels.

Commutateurs de rseaux
locaux: Avantages (2)
Tolrance aux pannes : Approche trs tolrante puisqu'elle spare
diffrents tronons qui peuvent s'arrter sparment (possibilit de traiter
par exemple le problme des avalanches ou temptes de diffusion).

Interconnexion de rseaux locaux htrognes : Possibilit


de supporter plusieurs standards de rseaux locaux ayant des formats de
trames voisines (par exemple type IEEE 802) en rsolvant nanmoins des
problmes non ngligeables d'htrognit.

Adressage (unification autour de ladressage IEEE 802)


Dbits 802.3 10 Mb/s , 100 Mb/s 802.5 16 Mb/s ("Token ring") 802.11
Taille maximum des trames 1500 ou 4500 octets Segmentation non prvue au
niveau liaison.

Cots:

plus importants que pour les rpteurs mais trs supportables et


en diminution constante.
557

Commutateurs de rseaux
locaux: Inconvnients
Retards : Lors de la traverse des commutateurs.
Limitation dues aux tailles des tables de routage : le
nombre des adresses utilisables nest pas illimit (existence de tables
dont la taille ne peut-tre arbitraire).

Limitation du dbit support : un commutateur peut entrer en


surcharge ou en congestion en cas de pic de trafic => Ncessit
dassurer un dimensionnement correct d'une architecture de
commutateur.

Une administration un peu plus complexe : malgr le


mode transparent en cas dutilisation des rseaux virtuels.

Ensemble d'inconvnients faibles en regard des


avantages
558

Niveau Rseau
"Network Layer"
Gnralits: problmes de routage et de
commutation.
Protocole IP ("Internet Protocol")
Protocol")
559

Niveau Rseau
"Network Layer"

Gnralits problmes de routage et


de commutation
Introduction
Adressage
Routage/Commutation
Contrle de congestion

560

Problmes gnraux de ralisation


du niveau rseau

Introduction
Choix de conception.
Rseaux datagrammes.
Rseaux circuits virtuels.
561

Rseaux datagrammes
Modle analogue celui de la poste
Les datagrammes sont des paquets routs indpendamment
les uns des autres.
Chaque datagramme comporte dans son entte l'adresse du
destinataire.

6 7 4 5

Reoit
Emet

3 1 2

5 3 1 2

10

4 3 2 1

Choix coteux du point de vue du routage


Chaque datagramme subit un routage.

Choix permettant plus d'optimisation


562

On peut tenir compte dinformations rcentes pour raliser le routage

Options des rseaux


datagrammes
Solutions des problmes dadressage et de routage.
Difficults pour la livraison en squence:

Non respect de l'ordre local d'mission du site A lors de la dlivrance en B


Les messages ne se suivent pas.

Difficults pour le contrle de flux d'hte hte


Difficult de rtroaction du destinataire sur l'metteur.

Pas de contrle d'erreurs


Possible mais non retenu.

Gestion des ressources

Optimisation globale favorise par le traitement sur chaque datagramme.


Difficult pour satisfaire des contraintes de QOS spcifiques de chaque usager
Difficult pour la rservation des tampons, de la bande passante.
Traitement des problmes de congestion.

Les problmes non rsolus sont reports au niveau transport.


Exemple : IP Internet Protocol

Le dernier des protocoles datagrammes mais le plus important.


Autres exemples historiques : Cyclades, Decnet
563

Rseaux circuits virtuels


Modle analogue celui du tlphone
Circuit virtuel = chemin fixe tabli entre deux htes.
Le chemin est initialis au pralable:
Exemple "paquet d'appel" rout de l'metteur au destinataire.

Les donnes empruntent ensuite toujours ce chemin


S'il y a une panne => il faut reconstruire le circuit virtuel.

Simplification des oprations de commutation.


B

Reoit
Emet
4 3 2 1

4 3

2 1

5 3 1 2

564

Rseaux circuits virtuels bas


dbits
Un ensemble d'options assez compltes pour une
couche rseau consistante: Exemple X25 niveau paquet
Fonctions dadressage et de routage.
Gestion des connexions.
Livraison en squence (d'hte hte)
Respect de l'ordre local d'mission du site A lors de la dlivrance en B
Les paquets se suivent sur le circuit virtuel.

Contrle de flux (d'hte hte)


Par rtroaction sur le circuit virtuel.

Allocation pralable de ressources sur un circuit virtuel.


Assure la fourniture dune qualit de service donne.
565

Rseaux circuits virtuels haut


dbit
Relais de trames FR, "Frame Relay"
Un allgement des choix X25 (rseaux publics de
transmission de donnes) afin de permettre la
commutation efficace de trafics de plus hauts dbits.

ATM "Asynchronous Transfer Mode


Rseau numrique intgration de service large bande.
Transmission de donnes multimdia image, voix,
donnes => Satisfaction des contraintes de qualit de
service pour ces trois types de donnes.

MPLS "Multi Protocol Label Switching"


Mmes objectifs que ATM avec des amliorations et en
sintgrant mieux IP.
566

Choix techniques des rseaux


circuits virtuels hauts dbits
Adressage et routage
Communication en mode connect
Livraison en squence
Paquets la suite selon un circuit virtuel.

Sans contrle d'erreur


Haut dbit : taux derreur faible.
Contrle d'erreur par retransmission inadquat pour le multimdia.

Sans contrle de flux


Inutile pour les trafics isochrones (sons, images).

Protocoles supplmentaires d'adaptation spcifique du type


de donnes changes.
Garantie de qualit de service (mode circuit virtuel). 567

Relations entre mode avec ou sans


connexion et mode datagramme ou CV
Rappel
Mode connect : Les changes ne peuvent avoir lieu
qu'entre deux vnements ouverture et fermeture.
Mode non Connect : Les changes dans une
peuvent prendre place tout moment.
Mode datagramme : Pas de chemin fixe.
Mode Circuit virtuel : Mme chemin fixe.
568

Associations entre modes de


fonctionnement

Association entre rseaux circuits virtuels et


communications en connexions
Dsignation des connexions ou des circuits virtuels.
Facilite la gestion des ressources et la qualit de service (QOS).
Facilite la correction des erreurs de transmission.
Facilite la livraison en squence d'hte hte.
Facilite le contrle de flux d'hte hte.

Association entre mode datagrammes et communications


sans connexions
Difficults pour la livraison en squence d'hte hte.
Difficults pour le contrle de flux d'hte hte.
Difficults pour la gestion des ressources et la qualit de
service.
569

Diffrences entre modes de


fonctionnement
A) Possibilit de construire un protocole en
mode connect sur un rseau datagrammes
(puisqu'on peut communiquer).
B) Utilisation dans un rseau circuits virtuels
comme X25 du routage du paquet d'appel pour
transmettre des datagrammes (option "fast select").
Conclusion : Il est tout fait impropre d'utiliser
les quivalences
Datagramme = Mode non connect.
Circuit virtuel = Mode connect.

570

Problmes gnraux de ralisation


du niveau rseau

Adressage

571

Adressage/Nommage
Adressage/Nommage/Dsignation
Nommage/Dsignation :
Position du problme (1)
Addressing, Naming : L'ensemble des techniques associes
aux adresses et aux noms (ici au niveau 3 rseau).
1) Politique de structuration des diffrentes zones.
Comment est organise la structure de donnes nom ou adresse.
Exemple : les adresses X121 des rseaux publics de transmission de
donnes (type TRANSPAC).

08 0

75

04

2577

12

Code rseau
Numro interne: usage libre
(4 chiffres)
(10 chiffres)
Zone (1) Pays (2) Rseau (1)
Exemple de structuration
Dpart(2) Circons (2) Num Ordre (4) Comp Util (2)

2) Dfinition des autorits administratives comptentes


dans l'attribution des diffrents champs des noms et adresses.
Exemples d'autorits : Organismes internationaux, Oprateurs de
tlcoms, fournisseurs d'accs rseaux, socits dlgataires.
572
Ex adresses IP : ISOC -> IANA -> RIPE -> Oprateur -> Entreprise.

Adressage/Nommage
Adressage/Nommage/Dsignation
Nommage/Dsignation :
Position du problme (2)
3) Politique de stockage et d'accs aux diffrents
moyens de dsignation : adresses ou noms.
Utilisation dans les annuaires : exemple DNS
Utilisation dans les tables de routage (tous les protocoles).

4) Politique d'utilisation des adresses dans le


cadre des oprations de routage.
Cas des datagrammes. Dans chaque paquet figurent:
L'adresse de l'metteur
L'adresse du destinataire.

Cas des circuits virtuels.


Dans le paquet appel figurent les adresses metteur et destinataire.
573
Dans chaque paquet figure ensuite l'identifiant du circuit virtuel.

Dfinitions relatives aux noms et


adresses
Nom/Adresse
Nommer: Identifier de faon unique.
Adresser: Identifier de faon retrouver dans un rseau.

Nom/Adresse physique ou logique


Physique: Identification associe des aspects matriels invariants
(numro de srie, adresse unique MAC) => Plutt une adresse.
Logique: Identification selon une chane de caractres quelconque =>
Plutt un nom.

Nom/Adresse fixe ou mobile


Fixe: qui ne peut suivre le dplacement de l'appareil connect
Exemple: numro de tlphone attach un autocommutateur).
Mobile: qui permet de retrouver un destinataire indpendamment de la
localisation gographique. Exemple : numro de tlphone portable
574
localisable dans une cellule du rseau.

Adressage global / Adressage local


Pour aller un endroit on peut :
Donner l'adresse de l'endroit => Notion d'adresse "globale"
Exemple : Mr X, appartement y, z rue de .....
Dfinir le chemin emprunter => Notion d'adresse "locale"
Exemple : Tourner gauche puis 2 ime droite ....

Adressage global
Un identifiant unique du site destinataire achemin dans chaque
message pour dterminer son routage et sa dlivrance.
Exemple: adresse IP, adresse ATM.

Adressage local
Un chemin dfini par la suite des dcisions prendre lors de la traverse
de chaque commutateur.
Exemple: identification des circuits virtuels en X25, ATM , MPLS ....575

Structuration des adresses


globales : Adressage plat
Dfinition : Les adresses sont dfinies dans une zone de n
bits sans rgles de structuration particulire permettant la
localisation.
Avantages
Peu de problmes d'administration.
Pas de perte de place : les adresses sont plus courtes
=> Minimisation de l'encombrement dans les messages.

Inconvnients
N'offre pas de moyen li la structure des adresses pour retrouver un
correspondant
=>Inadapt aux grands rseaux.

Exemple : Adresses de liaison de niveau MAC : IEEE 802.


576
Conclusion : Utilisation dans les petits rseaux.

Structuration des adresses


globales : Adressage hirarchique
Dfinition : les adresses sont dfinies avec des
rgles de structuration par champs qui correspondent
des regroupements gographiques/topologiques :
Exemple de dcoupage gographique : pays,
rgion, entreprise, rseau, sous/rseau ...
Notion de hirarchisation du routage/ agrgation
de routes:
Atteindre un routeur dans le pays puis atteindre un routeur
dans la rgion etc .

Tous les systmes d'adressage de niveau 3 sont


hirarchiques.
577

Adressage hirarchique :
avantages, inconvnients
Avantages
Adapt aux grands rseaux => Possibilit de grer de grands
espaces. L'administration des adresses peut se faire de faon locale
chaque unit de dcoupage.
Adapt la localisation
Les adresses permettent de localiser le destinataire.
Au moyen dun routage hirarchis.

Inconvnients
Encombrement Le dcoupage opr peut-tre plus ou moins
efficace dans chaque champ
=>gnralement les adresses sont volumineuses.
grande perte de capacits d'adressage (gaspillage d'adresses).

Changement de localisation difficile


Un site qui change de localisation doit changer dadresse.
Sauf mise en place un mcanisme de redirection.

578

Exemple dadressage hirarchique


1) Adressage E164
Utilisation : Le plan de numrotation du tlphone classique. RTC: Rseau
Tlphonique Commut ou PSTN/POTS: Public Switched Telephone
Network ou Plain Old Telephone System
Mais aussi rseaux de tlphonie mobile, rseau RNIS (Rseau Numrique
Intgration de Service), rseaux ATM publics .

Structure :
Adresse base sur un systme de 15 chiffres dcimaux maximum cods
en BCD (Binary Coded Decimal) deux chiffres par octets.
Forme gnrale dune adresse tlphonique gographique.

1 3 chiffres Dcoupe variable (lg max = 15 lg code pays)


Code destination
Code pays
Numro d'usager
nationale
Country code National Destination Subscriber Number
Code

Autres structures : Services, adresses rsaux (code pays spcial).


579
Reprsentation en DNS: 2.4.2.4.5.5.5.1.e164.arpa (numro 1-5554242).

Exemple dadressage hirarchique


2) Adressage normalis OSI 8348
Utilisation : rseaux ATM privs
Format variable en deux parties pour des adresses de
NSAP ("Network Service Access point")
Taille maximum : 20 octets.
Structure :
DSP
IDP

AFI

IDI

HO-DSP

LO-DSP
ESI

SEL

IDP "Initial Domain Part" : Spcifie le format de l'adresse (AFI) puis


l'autorit responsable de l'attribution de cette adresse (IDI).
DSP "Domain Specific Part" : Spcifie plus particulirement un site.
Spar en trois parties: "High Order Bits" (pour le routage), une partie
identificateur de site ("End System Identifier) plus un slecteur d'application
580
(SEL) ("Low Order Bits").

Exemples dadressage hirarchique


Autres exemples
3) Adressage des rseaux publics X121
Sur 14 chiffres dcimaux (4 chiffres pour le rseau, 10 chiffres pour
ladresse hte dans le rseau).
Pour un rseau diffrentes possibilits de structuration de la partie
numro interne.
208 0
Code rseau
Numro interne
(4 chiffres)
(10 chiffres)
Pays (3) Rseau (1) Depart(2) Circons (2) Num Ordre (4) Comp Util (2)

4) Adressage IP (Internet niveau 3)


Deux normes d'adressage correspondent aux deux versions
successives majeures.
IPV4 Adresse sur 32 bits.
IPV6 Adresse sur 128 bits.
Trait en dtail dans le cours IP.

581

Utilisation des adresses globales :


routage saut par saut en IP
Prfixe Dest

Masque Dest

Prochain saut

Interface

192.168.43.0

/24

170.65.9.4

Liaison 1

Liaison 0
Ether1
A

Datagramme IP
Destination
192.168.43.17

Hop by hop routing

170.65.9.4

Liaison 1
B

Ether0

C
Rseau
Destination
192.168.43.0

Hte
Destination
192.168.43.17

582

Adresses locales dans les


rseaux Circuits Virtuels (CV)
Problme d'identification d'un circuit virtuel.
Comment dsigner un chemin pour aller d'un point un autre dans
un rseau circuits virtuels (CV) ?

Nom unique global de CV.


Par exemple : adresse appelant, adresse appel, numro CV.
Solution trs encombrante Exemple: 30 digits pour des adresses
X121 plus un numro de CV.
N'apporte pas de solution particulire pour le routage.

Nom contextuel local de CV.


Gestion locale de noms de petite taille (par exemple 12 bits).
Problmes dhomonymie : l'ouverture dun CV sur un site on lui
attribue un numro libre.
Chaque commutateur travers doit pouvoir modifier le numro du
circuit virtuel en lui attribuant un nom unique libre localement.
Dans chaque commutateur il faut une table de routage :
583
correspondance entre les circuits entrants et sortants.

Fonctionnement de l'adressage
local dans les circuits virtuels
A

D
E

C
A

E 2 B 1

B
Rseau avec un CV E A B C D

A 1 C 3
B 3 D 0

Entrants Sortants Entrants Sortants Entrants Sortants

Tables des CV entrants et sortants en A B C


(tables de routage locales)

2
Paquets de E
vers A

1
Paquets de A
vers B

3
Paquets de B
vers C

0
Paquets de C
vers D

volution des enttes de paquets (dsignation du circuit virtuel)


584

Problmes gnraux de ralisation


du niveau rseau

Commutation et routage
Introduction/gnralits
Exemples de protocoles de routage

585

Introduction / gnralits
Acception traditionnelle
Commutation (switching) : terminologie cre
dans le contexte des rseaux tlphoniques.

Opration de retransmission dune information dun


port entre vers un port de sortie ralise plutt par du
matriel spcialis en mode circuit.
Exemple: la commutation de rseaux locaux, ATM.

Routage (routing) : terminologie cre dans le


contexte des rseaux IP.

Opration de retransmission dinformation ralise


par un ordinateur utilisant un logiciel, des tables de
routage, une technique de stockage et retransmission.
586
Exemple: le routage IP.

Notions de commutation
et de routage
Pour acheminer un paquet : deux problmes rsoudre.

Problme A) Construire des routes (des tables de routage dans les


routeurs) pour aller dun metteur un destinataire
=> Le travail ralis par un protocole de routage (dynamique).
Problme B) Raliser effectivement lacheminement : acqurir un
paquet, consulter son entte, consulter une table de routage, renvoyer
le paquet dans la bonne direction.

Terminologie classique pour les problmes A et B

Problme A) Dcouverte des routes (route discovery), annonce des


routes (route advertisment).
Problme B) Relayage (forwarding), commutation (switching).

Spcialisation terminologique constate.

Problme A) Routage (routing) : le problme de construction des


routes (des tables de routage) par un protocole de routage.
Problme B) Commutation (switching): lacheminement, le
relayage dun paquet par un commutateur.
587

Les trois ides principales pour raliser


le routage dans un rseau maill
1) Routage utilisant la diffusion (Broadcast routing)
Tous les sites du rseau tant atteints, seuls les destinataires adresss
dans le message dlivrent le message => Besoin dune diffusion
Diffusion naturelle sur une voie commune partage (rseau local).
Diffusion ralise sur rseau maill par inondation (Flooding).
Chaque nud retransmet le paquet sur tous ses liens adjacents.

2) Routage dfini par la source (Source routing)


La route est dtermine par lmetteur et insre dans le paquet.
Les routeurs successifs appliquent cette route pour acheminer le paquet.

3) Routage dfini saut par saut (Hop by hop routing)


Chaque routeur doit connatre des routes vers tous les destinataires en
changeant des informations sur la topologie du rseau.
Chaque routeur applique une dcision de routage vers un routeur 588
voisin.

La gestion des tables de routage en


mode saut par saut
Dans un routeur : partir d'une adresse destinataire
choisir la meilleure direction de sortie.
Les noeuds mmorisent dans des tables de routage des
informations du type: destinataire ; prochain site atteindre
(par quel port latteindre, quel contrleur de voie physique
utiliser).

Utilisation du routage saut par saut


Dans le mode datagramme -> pour chaque paquet.
Dans le mode circuit virtuel -> l'tablissement de
chaque circuit virtuel (ou lors de sa reconstruction).

Routage saut par saut : de trs loin le plus employ


au niveau 3.
589
Les autres solutions sont employes de faon marginale.

Routage saut par saut : Notion darbre


couvrant (arbre de routage)
Le rseau de communication est
considr comme un graphe.
Chaque commutateur est considr
comme la racine d'un arbre
couvrant (spanning tree).
L'arbre dfinit les chemins pour
atteindre tous les htes du rseau.
Exemple d'un arbre couvrant
pour le noeud 12 dans un rseau de
type grille.

Exemple de table
de routage pour le nud 12

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

6 ...

Destinataire

Adjacent
Prfr

7 13 13 7

...
590

Arbre couvrant des plus courts


chemins
Construction d'un arbre couvrant qui optimise un critre de cot.
=> Notion darbre couvrant des plus courts chemins.

Diffrents critres de cots (mtriques, "metrics")


Longueur du chemin : en nombre de commutateurs traverss.
Dlai de traverse du chemin : temps effectif dacheminement (somme
des dlais d'attente dans les files des commutateurs, de propagation, ).
Dbit dun chemin : dbit des commutateurs et des voies empruntes.
Bande passante des voies empruntes sur un chemin : un chemin qui
ne comporte que des voies 100 Mb/s est jug prfrable un chemin qui
emprunte une voie 56000b/s.
Fiabilit d'un chemin : on utilise les chemins selon leur fiabilit.
Cot montaire effectif : diffrences entre une voie loue cot
marginal minime ou une voie avec tarification au volume (Transpac).
591

Gestion des tables de routage


Routage statique (sans prise en compte de cots)
Dfinition statique de tables (compatibles).

Routage dynamique avec des cots fixes (stabiliss)

Principe d'optimalit (Bellman): Si J est sur le chemin optimal de I


K alors le chemin de J K est aussi optimal.
Justification du routage saut par saut (tables de routage locales
chaque routeur).

Routage dynamique (cots variables, modification


permanente des cots)

Prise en compte des informations les plus rcentes.


Problme de routage : problme de contrle optimal (mesure de
cot puis rtro action sur le routage du rseau)
Possibilit de bouclage pour certains messages.
Besoin dune convergence rapide vers une solution stable si les cots se
592
stabilisent.

Qualits d'un algorithme de


routage
Correct : Permet d'atteindre effectivement le destinataire.
Adaptatif : volutif en fonction de la charge (vite la
congestion).
Optimal : Choix du meilleur chemin au sens de critres
Usager => Satisfaction dun contrat de service (QOS)
Exploitant rseau => Taux d'utilisation des ressources rseaux.

Robuste : Prvu pour tolrer les pannes du rseau


Stable : Convergence rapide d'un routage dynamique vers de
nouvelles tables lors de modifications (sans oscillations).
Simple : Comportement facile dcrire (peu de types de
messages diffrents).
Efficace: Ne consommant pas beaucoup de ressources (temps
de calcul, nombre de messages changs).
quitable : Traite tous les usagers de la mme faon.
593

Algorithmes de routage :
Quelques dfinitions
Routages plats ("flat routing")
Gestion d'un seul chemin par destinataire.

Routages multi-chemins ("multi path")


Gestion de plusieurs chemins.

Routage non hirarchique


Pour un grand rseau ncessit d'une trs grande table
Encombrement mmoire important.
Temps de recherche important (de nombreuses recherches par seconde)

Routage hirarchique : Exemple deux niveaux


Division du rseau en rgions ou domaines.
Deux types de routages pouvant relever de solutions diffrentes
Routage intra-domaine (chaque domaine ralise un routage interne).
Routage inter-domaine (pour chaque domaine un (ou plusieurs)
commutateur sont spcialiss dans le trafic inter domaines (trafic externe).
594

Classification
des algorithmes de routage
Critre dadaptabilit en fonction de la charge.

Routage "statique" , "non adaptatif", "prdtermin"


Tables non modifies en fonction des conditions de charge.
Dtermination manuelle des tables.

Routage "dynamique", "adaptatif", "volutif".

Tables modifie priodiquement en fonction de la charge et des pannes.

Critre de sret de fonctionnement.


Routage "centralis" , "dissymtrique".

Un site spcialis calcule les tables de routage et les distribue.


=> Problmes de panne et de surcharge du site centralis.

Routage "dcentralis" , "rparti" , "symtrique".

Toutes les stations calculent les informations de routage .


Routage local : connaissances locales (longueur des files dattente).
Routage global : connaissances changes avec le reste du rseau (le
voisinage immdiat ou tout le rseau).

Routage hybride : Pouvant utiliser la fois un site central et un


algorithme rparti.
595

Commutation et routage

Exemples de protocoles de
routage

596

Routages par inondation


"Flooding"
Flooding"
Rappel

Construction dun protocole dinondation pour atteindre tous


les destinataires potentiels et dlivrer qui de droit.

Inondation gnrale ("Flooding")

Pour tout paquet arriv dans un routeur on retransmet une


copie sur tous les adjacents.
Complment indispensable: stratgie d'arrt de l'inondation.

Inondation slective ("Selective Flooding")


On transmet le paquet sur tous les adjacents d'un
commutateur pris dans une liste.

Soit tire alatoirement dans l'ensemble des voisins.


Soit correspondant des sites en direction du destinataire

Ncessit d'une stratgie d'arrt de l'inondation (comme


prcdemment).
597

Stratgies darrt de linondation


Solution 1 : Liste des sites dj visits

On vite de renvoyer une copie du paquet au site dont on l'a reu


(puisqu'il le connat dj).
On note dans chaque message la liste des sites dj visits pour ne pas
leur renvoyer (risque dallongement excessif des messages).

Solution 2 : Dure de vie

On note dans chaque copie le nombre de commutateurs traverss.


La copie est dtruite aprs traverse de n commutateurs.
On doit prendre n > diamtre du rseau => beaucoup de surcharge.

Solution 3 : Estampille

Les paquets sont identifis : estampille comportant l'adresse metteur et


le numro de squence de l'metteur.
La premire copie reue fait l'objet d'une inondation et les copies
ultrieures sont dtruites.
Ncessite de mmoriser des estampilles sur chaque routeur.
Cot de linondation: seulement deux copies dun mme message sur
598
chaque liaison (une dans chaque sens).

Conclusion :
Routages par inondation
Avantages

Technique trs simple mettre en oeuvre.


Trs robuste : dtermine un chemin s'il existe.
Dtermine le chemin le plus court (permet de dlivrer
des paquets trs vite sauf problmes de surcharge).

Inconvnients

Induit une charge leve.

Utilisation de l'inondation

Domaine des cas de pannes frquentes ou importantes


(rseaux militaire, reconstruction d'un rseau).
Implantation de protocoles diffusion gnrale
Exemple : utilisation de linondation dans lchange des
informations de topologie et de cot dans les protocoles de
routage (OSPF).
599

Routages par la source


"Paquets flchs","Source Routing"
Principe gnral
Chaque metteur doit connatre la topologie
densemble du rseau et dterminer son arbre de routage.
Dans chaque paquet l'metteur dfinit le chemin qu'il
doit emprunter pour atteindre son destinataire.
Les routeurs appliquent le chemin.

Variantes
1) Dfinition stricte du chemin (strict source routing).
2) Dfinition non stricte du chemin (loose source
routing) : dfinition d'un sous-ensemble de routeurs qui
doivent tre traverss obligatoirement mais le routage
peut ajouter d'autres relais intermdiaires.
600

Conclusion :
Routages par la source
Avantages
Facilite le travail de chaque routeur intermdiaire (pas de
calcul de route, commutation uniquement).

Inconvnients
Volume d'informations dans les messages (une route).
Ncessit dune connaissance globale de la topologie de tout
le rseau par tous les metteurs.
La connaissance globale peut tre vieille.

Exemples :
Commutateurs de rseaux locaux IBM.
Routage par la source en IP.
601
Algorithme du cranckback en ATM (ouverture dun CV).

Routages saut par saut :


Routages statiques
Principe gnral
Les tables de routage stables dfinies manuellement, modifies
rarement (lors de l'insertion ou de la disparition de sites) et invariantes.
Les tables sont tablies en fonction de critres de topologie et
de performance (valus hors ligne) par le concepteur du rseau.

Avantages
Technique trs simple mettre en uvre.

Inconvnients
Non adaptatif en cas de charge leve.
Sans apprentissage automatique beaucoup trop de routes dfinir.

Utilisation
Utilisable pour un rseau de petite taille.
Au dmarrage du rseau le routage statique permet la dfinition
de connaissances de routage indispensables minimales (routes de
dlivrance locale) avant mise en oeuvre d'un routage dynamique. 602

Routages saut par saut dynamiques


centraliss (adaptatifs)
Principe gnral

Existence d'un site central particulier (RCC "Routing


Control Center") : par exemple le site administrateur du
rseau : charg de la gestion des abonns, de la
facturation....
mission par les commutateurs d'informations de
charge vers cet administrateur.
Priodiquement
Sur franchissement de seuils.

Le central calcule les tables de routage (algorithme des


plus courts chemins excut en mode centralis) et les
renvoie aux routeurs.

Variante: Serveurs de routes

Plusieurs sites calculent des tables pour des routeurs


qui ne font qu'appliquer les routes calcules.
603

Conclusion routages
dynamiques centraliss (adaptatifs)
Avantages

Simple mettre en oeuvre.


Solution optimale sur les valeurs utilises
Solution correcte sans boucles.
Trafic stable d'informations changes.
Pas de calcul dans les commutateurs.

Inconvnients
Vulnrabilit de l'administrateur => architecture redondante.
Temps de calcul important => charge du central
Propagation des informations de charge
Temps de collecte + calcul des tables + transmission des tables
=> Usage de tables anciennes

Trafic lev au voisinage du central de routage.

Utilisation
A t trs frquente dans les rseaux commerciaux.

604

Routages distribus (adaptatifs)


Routages locaux ou isols
Notion de routage local ou isol.

Les commutateurs utilisent uniquement des informations locales


(informations quils peuvent connatre sans communiquer).
Exemples : longueur des files d'attente, taux d'occupation des voies.

Terminologie frquente : Routage de type pomme de terre


chaude ("Hot potatoe routing")
Version de base irraliste
On se dbarrasse le plus rapidement possible dun paquet.
On transmet un paquet dans la direction qui est actuellement la
moins charge (par exemple la file d'attente la plus courte).
Avantages : Simplicit , symtrie des comportements.
Inconvnients : Existence de boucles, l'arrive n'est pas garantie.

Version raliste

On transmet un paquet dans la direction la moins charge dans un


ensemble de choix possibles correspondant la direction du destinataire
(fonctionnement en association avec un autre routage exemple statique)
605

Routages dynamiques distribus


connaissances globales
Principes
Distribu : Aucun routeur ne joue un rle particulier dans l'algorithme.
Global : Tous les routeurs cherchent disposer de connaissances
globales sur le rseau pour effectuer un routage adaptatif optimal.

Solution 1: Apprentissage a posteriori de chemins


("Backward Learning")
On effectue des expriences successives de communication : par
exemple en inondation.
On apprend des chemins possibles et leurs cots pour atteindre un
destinataire.
On adopte le meilleur chemin.
On recommence priodiquement le mode apprentissage pour
prendre en compte des modifications de topologie ou de charge.
Exemple : Fonctionnement en mode transparent des commutateurs de
rseaux locaux (mode transparent).
606

Solution 2 : Arbre des plus courts


chemins "Open Shortest Path First
Principe : dtermination de larbre couvrant des plus
courts chemins par chaque routeur.

Pour cela il doit connatre l'tat des liaisons de tous les autres routeurs.
Il peut alors appliquer un algorithme de plus courts chemins centralis :
pour calculer son arbre de routage et donc ses tables de routage.

Fonctionnement par information mutuelle

Chaque routeur envoie tous les autres l'tat de ses liaisons ("link
state") lorsqu'il le juge ncessaire.
Chaque routeur rpond des demandes dtat des autres routeurs.

Avantages/ Inconvnients

Solution distribue : bon calcul de routes sur les liaisons connues.


Solution plutt coteuse en changes de messages: applicable un
rseau pas trop gros (routage intra-domaine).

Exemple: routage OSPF Internet "Open Shortest Path


First, une solution tats de liaisons link state.
607

Solution 3 : Routage par change


des tables (vecteurs de distance)
Principe : dtermination des tables de routages par change des tables
en fait des vecteurs de distances avec les voisins.
Nombreuses appellations : "Algorithme de Mac Quillan" ou
"Bellman Ford Fulkerson rparti"
Chaque routeur gre deux tables
une table des cots de transit vers ses voisins immdiats dduites d'infos
locales.
une table de routage avec les cots vers tous les autres sites du rseau.

Chaque routeur met priodiquement sa table de routage vers


ses voisins et reoit de ses voisins leurs tables de routage.
Il obtient le cot pour atteindre tous les destinataires en passant
par chaque voisin en additionnant:
le cot pour atteindre un voisin immdiat
le cot de ce voisin tous les autres site.

Choix des routes : l'adjacent prfr pour atteindre un destinataire est


le voisin de cot minimum (pour atteindre ce destinataire).
Exemple : Internet protocole RIP "Routing Internet Protocol".
608

Exemple de fonctionnement
des vecteurs de distance
D

Cot
Local
X

26

20

18

Cot
D
Distant

Un rseau
Pour aller de X D ou de X E
Par A 26 + 64 = 90 26 + 130 = 156
Par B 20 + 56 = 76 20 + 115 = 135
Par C 18 + 45 = 63 18 + 210 = 228

Optimisation

64

130

56

115

45

210

Tables de cots
X

Adjacent

Cot

26

20

18

63 135

Table de routage
609

Vecteurs de distances : le
problme du comptage vers linfini
Hte

R1

R2

Routeurs

Mtrique utilise le nombre de sauts :


cot(A-R1) = 1 , cot(R1-R2) = 1 , cot(A-R2) = 2
A<->R1 tombe en panne : cot(A-R1) =
Nouveau calcul des tables en R1 : R2 indique R1 qu'il
un chemin vers A de longueur 2 (en fait celui passant par R1).
R1 considre tort qu'il a retrouv un chemin vers A
de longueur cot (R1-R2) + cot(A-R2) soit 1+2=3 par R2
Problmes
Les paquets de R1 vers A bouclent entre R1 et R2.
A chaque calcul des tables de routage le cot augmente de 1
610
(notion de comptage vers l'infini count to infinity).

Solutions au problme du
comptage vers linfini
Solution de base : Introduire une borne dans le cot
des chemins (notion de dure de vie time to live).
Si un chemin a un cot plus lev que la borne on considre que
le chemin est coup => on ne retransmet plus sur cette route.
La borne met fin au bouclage des paquets (rglage de 15/16 30/35).

Autre solution : Horizon partag ("split horizon")


A) Limiter le volume des tables changes en ne renvoyant pas
une information dans la direction d'o elle vient
C1 indique C2 qu'il a une route vers A.
Pour viter les boucles C2 ne retransmet pas cette route vers C1 (puisqu'elle
est connue de C1).

B) Solution dite dempoisonnement des routes de retour (RIP,


IGRP) (reverse poison): au lieu de ne pas retransmettre la route on
retransmet un cot infini. Le comportement B) est diffrent de A)
lorsquon a plusieurs chemins possibles dans la table.
611

Conclusion: routages
vecteurs de distances
Avantages

Algorithme compltement rparti, simple dvelopper.

Inconvnients

Problme de la frquence d'change des tables

Pour limiter le trafic et les traitements => Peu d'changes.


Pour que les modifications de topologie soient prises en compte
rapidement => changes frquents.
Apprentissage d'un vnement dans tout le rseau => D tapes
d'changes de tables ou D est le diamtre du rseau.
Exemples de rglage : Arpanet 0,640 seconde, Internet 30 secondes.

Trs nombreuses utilisations

Internet: Protocoles RIP, EGP "Routing Information Protocol (dans


Internet l'utilisation de RIP diminue depuis 1990 au profit de OSPF).
XNS "Xerox Network System" : Protocole GWINFO.
Apple talk RTMP : "Routing Table Maintenance Protocol
Autres constructeurs : Novell, 3COM, Ungermann-Bass, Banyan.
612

Conclusion:
Protocoles de routage
Problme trs important de l'algorithmique des
rseaux.
Composant ncessaire dans tous les rseaux.
Trs nombreuses solutions proposes.
Solutions assez souvent retenues : bases sur la construction d'arbres
couvrants des plus courts chemins dans chaque routeur.

Solutions particulires pour des types de rseaux


particuliers.
Routage sur des rseaux topologie rgulire (grille hypercube).
Techniques de routage au niveau application pour laccs aux contenus
(rseaux pairs pairs, tables de hachage distribues).

613

Problmes gnraux de ralisation


du niveau rseau

Qualit de service et contrle


de congestion

614

Introduction
Spcification dun contrat de qualit de service
Les obligations temporelles du fournisseur mais aussi du client.
Les obligations du fournisseur en terme de pertes de paquets (sret).
Les outils pour vrifier le respect de ces obligations.

Le contrle de congestion ( Congestion control )


Le mcanisme global dans un rseau qui permet de respecter en
toutes circonstances les objectifs de qualit de service (paramtres
temporels, taux de perte).

Le contrle de trafic ( Usage parameter control )


Le mcanisme l'entre du rseau qui permet de dtecter les
violations du contrat de trafic dun client.

Le contrle de flux ( Flow control )


Un mcanisme par rtroaction du destinataire sur l'metteur pour
615
viter de perdre des informations par saturation du destinataire.

Phnomnes de congestion
Situation de surcharge: trop de paquets dans le rseau (ou
dans une rgion du rseau, un commutateur donn).
Augmentation des dlais de transmission => non
conformit la dfinition de qualit de service.
Pertes de paquets.
Phnomne dcroulement : Le rseau ne transporte plus le
trafic usager
Pourquoi ?
Destruction de paquets pour dsengorger les commutateurs
Protocole de traitement de surcharge (qui implique de
plus en plus d'changes).
616

Ncessit des mcanismes de


QOS et de congestion
L'accroissement des ressources ne rsout pas seul le
problme.
Utilisation faible charge (relativement aux ressources) => Fonctionnement
correct mais sous-rservation des ressources
Apparition de surcharges : La congestion peut apparatre lors des surcharges
qui sont invitables sauf contrle de trafic entrant trs strict.

Un volume de mmoire important ne rsout pas le


problme => Pics de trafic de longue dure.
Mme si la mmoire est de taille infinie:
Temporisateur +retransmission => congestion

Des communications trs rapide ou des commutateurs


rapides ne peuvent solutionner le problme
En fait les tampons peuvent tre saturs plus vite.
617

Classification des techniques


de contrle de congestion
Selon la position dans le temps
Traitement prventif de la congestion.
Traitement curatif de la congestion.

Selon l'endroit ou s'applique le mcanisme


Contrle du trafic d'entre d'un usager.
Politique de rservation des ressources (gestion des
tampons, des capacits des voies)
Techniques curatives de traitement de la congestion pour
limiter les surcharges (exemple: paquets d'indication de
surcharge).
618

Traitement prventif par


limitation du trafic d'entre
Limitation du trafic de chaque hte

Selon le contrat dfini au pralable entre le client et le prestataire


Pour viter une surcharge non connue.
galement pour dcoupler le trafic soumis par chaque usager
du dbit de sa voie physique de rattachement.

Fonctionnement

Obliger l'usager respecter les rgles concernant le dbit soumis.


Nombreux paramtres possibles
Nombre moyen de paquets par unit de temps.
Dure des rafales autorises au dbit maximum.

Le prestataire doit doter chaque accs d'un contrleur de


trafic d'entre
Exemple pour le dbit : technique de seau perc "leaky bucket".
619

Conclusion :
Limitation du trafic d'entre
Avantages

On vite les comportements inattendus de certains usagers.


Une technique indispensable pour limiter les difficults.

Inconvnients

Si la limitation du volume global entrant est trop importante


(acceptation dun faible nombre dusagers)
=> Sous-rservation des ressources
Si la limitation est trop lgre
=> La saturation et la congestion peuvent apparatre.
Nempche pas l'installation de la congestion.

Utilisation

Tous les rseaux qualit de service : Relais de trames


("Frame Relay"), ATM.
620

Traitement prventif de la congestion


Allocation des ressources
Cas des circuits virtuels

En fonction du contrat de service ngoci.


Au moment de la construction du circuit.

Rservation dans les commutateurs traverss

Des ressources pour lcoulement correct du trafic (tampons, dbit).


Si la rservation est impossible: le circuit n'est pas accept.
Si la rservation a pu avoir lieu: le trafic doit pouvoir s'couler.

Avantage :

Si la gestion est rigoureuse la congestion est impossible.

Inconvnient :

Les usagers n'utilisent pas les ressources qu'ils rservent.


Le fournisseur du service sil optimise par la sur-rservation des
ressources dont il dispose => implique l'acceptation d'un certain niveau
621
de congestion.

Traitement curatif de la congestion


Destruction de paquets

Engorgement d'un commutateur

Insuffisance de mmoire pour stocker.


Insuffisance de puissance de calcul et de dbit des voies.

Destruction de paquets

Incontrle dans les tampons d'entre.


Selon une politique contrle

Aprs avoir exploit les informations de libration de ressources.


Pour maintenir un trafic "plus prioritaire" au dtriment d'un autre (gestion
spare des files d'attente, des circuits virtuels).
Notion de bit de priorit la destruction.

Conclusion

La solution la moins bonne pour des donnes informatiques : il faut


retransmettre ensuite).
Si la destruction est accepte ou invitable

Acceptation du taux d'erreur comparable au taux derreurs de transmission.


Acceptation derreurs rcuprables (compensables, quon peut corriger).
622

Traitement curatif de la congestion


Paquets de surcharge Choke Packets
Packets
Principe : Sur franchissement de seuil d'alerte demande aux
voisins de limiter ou de suspendre les communications:

Par des paquets spcifiques de surcharge (trafic en plus)


Par des bits de surcharge insrs dans les paquets ("piggybacking")
Exemple: ATM bit EFCN "Explicit Forward Congestion Notification"

L'indication de surcharge :
S'applique un CV ou une voie physique
Peut s'arrter aux voisins du site surcharg ou tre propage
jusqu'aux htes gnrant le trafic d'entre.

Avantages :

Peut rellement traiter une situation de congestion.

Inconvnients :

Ne sapplique qu des changes qui peuvent ralentir


623
En surcharge lenteur de circulation des informations de surcharge.

Traitement curatif de contrle de


congestion bas crdit ou bas dbit
Sur quel critre traiter la congestion:

Espace mmoire occupe ou dbit des paquets sur les voies.

Crdits : Une information qui concerne l'espace mmoire


disponible (le nombre de tampons libres).

=> Algorithmes bass crdits : faire circuler des crdits.

Dbits : Une information qui concerne le nombre de paquets


ayant circul par unit de temps dans un pass rcent.

=> Algorithmes bass dbits : mesurer le dbit effectif et faire


fonctionner le CV ce dbit qui est le maximum possible

Avantage des solutions bases dbit

Dans le cas des rseaux haut dbit: l'espace mmoire (trs


important) reste inoccup trop longtemps.
624

Gnralits protocoles de routage


et de commutation

Conclusion

625

Quelques tendances
Augmentation des dbits disponibles, de la taille des
rseaux.
Support des applications multimdia de masse:

Intgration de service : donnes classiques, tlphone, visio


confrence, diffusion tlvision, radio.
Prise en compte de la qualit de service temporelle.
Convergence des rseaux: informatique, tlphonie filaire et mobile.
Nouvelles applications : jeux en rseau,

Support de la mobilit et des communications radio:

Routage adhoc : protocoles de routage pour des communauts


dusagers dynamiques auto organises.
Itinrance (roaming) : localisation dun usager dans lune des
cellules du rseau permettant de latteindre.
Continuit (handover) : de service lors dun changement de 626
cellule

Bibliographie : Cours gnralits


routage/commutation
A. S. Tannenbaum Computer Networks
Prentice Hall.
Documents en ligne et RFC.

627

Niveau Rseau
"Network Layer"
Le protocole IP
"InterInter-network Protocol"
Protocol"
Introduction.
IP version 4.
IP version 6.
Routage IP et protocoles annexes.
Conclusion.

628

IP

Introduction - Gnralits

629

Objectifs gnraux de IP
IP : un rseau de rseaux.
Protocole dinterconnexion de rseaux locaux ou gnraux.
Fonctionnement en mode datagrammes (pas de circuits
virtuels).
En version de base pas de qualit de service temporelle
Fonctionnement au mieux ("best effort")
Existence de protocoles additionnels pour la qualit de
service.
Recherche dune optimisation globale des infrastructures
de communication disponibles.
Robustesse dacheminement.
630
Reconfiguration automatique en cas de panne.

IP: un rseau mondial de plus


en plus hirarchis
Rseau dorsal IP
Asie Pacifique
Liaisons
trans
Pacifique

Rseau dorsal IP
Amricain
Routeur
Rseau
rgional
IP

Rseau maill ATM Rseaux


d'entreprise
Rseau boucle
Hte
Hte

Rseau dorsal IP
Europen
Liaisons
trans
Atlantique

Rseau
national
IP
Rseaux
prestataires
Rseau ethernet
Hte

631

Fonctions ralises par IP


Communications au niveau 3 sans connexion.
Fonction de routage
Mode datagramme (pas d'information d'tat).
Adressage universel.
Assurant laccs n'importe quel type dhte.
Communications sans contrle d'erreur, de flux, de
squence.
Mode datagramme : envoi de paquets sans contrle.
Quelques cas derreurs sont dtectes (sur l'entte,
insuffisance de tampons) IP transmet un paquet ICMP.
=> Contrle derreur, de flux la charge de TCP.
Fragmentation/Rassemblage.
Adaptation de la taille des datagrammes aux
possibilits offertes par les diffrentes couches liaisons.
632

La suite des protocoles


TCP/IP en version 4
UDP

TCP

Diagramme des
principaux
protocoles en
version 4

Transport

ICMP

IP

ARP

IGMP
RARP

Rseau

Liaison

Liaison
PPP, Eth
633

Dfinition simple des diffrents


modules
ICMP : "Internet Control Message Protocol"
Fonctions annexes au routage et traitement derreurs.

IGMP : "Internet Group Management Protocol"


Gestion des groupes pour la diffusion.

ARP, RARP : "Address Resolution Protocol" ,


"Reverse Address Resolution Protocol "
Correspondance d'adresses liaison et d'adresses IP.

Couche liaison (encapsulation des paquets IP).


Sur liaison point point : PPP Point to Point Protocol
Sur rseaux locaux : Ethernet/DIX, LLC/SNAP Logical
634
Link Control/Sub Network Access Protocol.

IP : Historique
Travaux sur les rseaux: Protocole TCP -> Nombreux
contributeurs (Article IEEE 1974 TCP Vinton Cerf, Robert Kahn)
mais aussi Jon Postel : adoption RFC IP (RFC 760 janvier 1980)
Protocole IP : spar de TCP, Codage partir de 1978.
Diffrentes amliorations : Stabilisation => IP Version
4 (RFC 791 septembre 1981).
Diffusion significative : partir du dbut des annes 1980.
Grande importance du couple UNIX-TCP/IP : ensemble
cohrent permettant de faire du rseau cot raisonnable
(UNIX Berkeley sur DEC/VAX 1983 - Universit de Californie).
Dveloppement des protocoles annexes: protocoles de
routage, support de la qualit de service, de la scurit ..
Restructuration importante de ladressage pour suivre le
dveloppement mondial: toujours en cours IP V6 (1995).
635

Le contrle de lInternet :
Principaux organismes
ISOC Internet Society
Organisation principale charge de la croissance, de
lvolution technique, des aspects sociaux, politiques, ...
IAB Internet Architecture Board
Dfinition de larchitecture du rseau et de ses protocoles.
Arbitrage des conflits.
IESB Internet Engineering Steering Group
Administre les normes sur proposition de lIETF.
IETF "Internet Engineering Task Force"
Dfinition, exprimentation des protocoles, groupes de
travail par domaines.
RFC Request For Comments : normes de lInternet.
IRTF Internet Research Task Group
Recherche long terme.
636

Le contrle de lInternet : Gestion


des noms, adresses et paramtres
IANA Internet Assigned Number Authority
Puis ICANN Internet Corporation for Assigned Names
and Numbers
Organisme charg de laffectation des adresses, motcls, paramtres, ... pour lensemble des protocoles Internet
Politique de gestion : adresses, noms de domaines,
dfinition des MIB (Management Information Base) etc
Dlgation de certains responsabilits (espace dadresses)
Amrique : INTERNIC "Internet Network Information
Center".
Europe : RIPE NCC "Rseaux IP Europens Network
Computing Center"
637
Asie : APNIC Asia Pacific Network Information Center.

IP

Chapitre I
Le protocole IP en version 4
Structure des datagrammes
Fragmentation
Adressage
638

IP Version 4

I.1
Structure des datagrammes

639

Format du datagramme IP V4
4

0
Version

Long
entte

16

19

24

31

Longueur du
datagramme en octets

Type de
service

Identificateur unique pour


les diffrents fragments

D M
F F

Temps restant Protocole qui


sjourner utilise IP

Position du
fragment

Contrle derreur entte

Adresse metteur
Adresse destination IP
Options : longueur variable

A zro :
alignement

Convention :
Transmission
grand boutiste
big endian
Le bit 0 est
envoy en tte.

Donnes
...

640

Dtail des diffrents champs (1)


Numro de version IP "IP version number" : 4 bits Ici IP v4
Longueur de l'entte "IP Header Lenght" : 4 Bits
Longueur de l'entte en mots de 32 bits (Min 5 -> Max 15)
Option: au plus 40 octets (entte standard 20 + option = 60).
Type de service TOS "Type Of Service") : 8 bits
Qualit de service 00 01 02 03 04 05 06 07
Precedence

- 3 bits ("Precedence") Priorit 0 normal 7 contrle rseau


- 4 bits indicateurs ("Flags" D T R M) + Un bit inutilis
D "Delay" minimiser le dlai T "Throughput" maximiser le dbit
R "Reliability"max de fiabilit M "Monetary" min de cot
Redfinition du TOS : QOS Multimdia => Diffserv.

641

Dtail des diffrents champs (2)


Longueur datagramme (16 bits) "Total lenght"
. Longueur totale du datagramme en octets incluant
entte et donnes => Longueur au maximum 65535.
Identificateur unique (16 bits) "Ident field"
. Valeur entire utilise pour regrouper les diffrents
fragments d'un message fragment.
. Un datagramme peut tre fragment l'mission: un
routeur qui dtecte qu'un datagramme est trop long
pour la voie de sortie le fragmente.
Ne pas fragmenter (1 bit) DF "Don't Fragment"
. Le datagramme mme ne doit pas tre fragment.
. Le destinataire ne peut traiter les fragments.
Ex : tlchargement de code en une fois.
642

Dtail des diffrents champs (3)


Dernier fragment MF "More Fragment" : 1 bit.
. Indique le dernier fragment d'un message fragment (0)
. ou un fragment courant (1).
Position du fragment "Fragment Offset" : 13 bits.
. Dtermine la position d'un fragment dans un message
(8192 fragments possibles).
. Chaque fragment sauf le dernier comprend un nombre
entier de groupes de 8 octets.
Temps restant sjourner TTL "Time To Live : 8 bits
. Ancienne version (RFC 791) :Mesure du temps de sjour
dans le rseau en secondes depuis l'mission (255 s max).
. Actuellement: Initialis une valeur entire (par ex 30).
Dcrment par chaque routeur => Le paquet est dtruit
lorsque le compteur passe zro (pour viter les boucles).
643

Dtail des diffrents champs (4)


Protocole utilisateur "Protocol" : 8 bits
. Protocole qui utilise IP. Nombreuses valeurs normalises
pour le dmultiplexage des paquets entrants
. Exemples ICMP=1, TCP=6, UDP=17
Contrle d'erreur entte "Header Checksum" : 16 bits
. Contrle d'intgrit sur l'entte du paquet.
. Un paquet d'entte errone est dtruit pour viter des
erreurs de dlivrance.

Mthode de calcul

- L'entte est considre comme une suite de mots de 16 bits.


- On fait la somme des mots de 16 bits en complment 1.
- On prend le complment 1 du rsultat.
=> A chaque traverse de commutateur: comme il n'y a que la
zone TTL qui change de un, le calcul de la nouvelle somme
644
de contrle est simple.

Dtail des diffrents champs (5)


Adresse source "Source address" : 32 bits
. Adresse IP de l'metteur.

Adresse destination "Destination address" :


32 bits
. Adresse IP du destinataire.

Donnes "Data"
. Zone de donne utilisateur d'une taille
maximum de 64 K octets.
645

Zone des options


Utilise pour spcifier des complments de
protocole qui nont pas tre toujours prsents.
Utilisation des options : beaucoup moins forte
en IPV4 quen IPV6.
Longueur variable : de 4 40 octets.
Alignement sur des frontires de mots de 32
bits => Bourrage si le dernier mot nest pas
compltement utilis.
Les options ne sont pas toutes traites par
certains routeurs.
646

Les cinq classes d'options en


IPV4
Protocoles de scurit : IPSEC "IP Security"
Enregistrement de la route suivie "Record Route".
Enregistrement de la route et estampillage
par la date de traverse de tous les routeurs
"Record and Timestamp".
Routage par la source non contraint "Loose
Source Routing" : dfinition dune liste partielle de
routeurs devant tre visits.
Routage par la source contraint "Strict Source
Routing" : liste stricte des routeurs visiter.
647

IP Version 4

I.2
Fragmentation
(ou segmentation)

648

Solutions pour la fragmentation


(Segmentation)
Objectif: adapter la taille des datagrammes la taille
maximum des trames de liaison (taille mdium).
MTU (Maximum Transfer Unit) : pour une voie donne la
taille maximum des trames (souvent 1500 octets Ethernet).
Solutions de fragmentation non retenues en IP V4.
Fragmentation transparente 1 = fragmentation et
rassemblage pour chaque saut : le routeur metteur
sur une voie fragmente si ncessaire et le routeur
destination rassemble sil y a eu fragmentation.
Fragmentation transparente 2 = fragmentation de
bout en bout : on ne fragmente qu lentre du rseau et
on ne rassemble qu la sortie => implique lapprentissage
649
du MTU de chemin (path MTU) plus petit MTU dun chemin.

Fragmentation en IP V4 : Une
fragmentation non transparente
Pour un rseau donn (une voie de communication) un
metteur (ou un routeur) fragmente un datagramme si
ncessaire et les fragments poursuivent jusquau
destinataire qui est le seul rassembler.
Il peut donc y avoir plusieurs fragmentations
successives sans rassemblage (sauf au terme).
Destinataire

Emetteur
Liaison 2
MTU=1500

Liaison 1
MTU=9288
Routeur 1

Liaison 3
MTU=620
Routeur 2
650

Schma gnral de la
fragmentation
Datagramme dorigine
Entte Fragment Fragment Fragment Fragment
IP
1
2
3
4
Position=0

Position=@fragment1

Entte Fragment
IP
1

Entte Fragment
IP
2

Position=@fragment4
Entte Fragment
IP
3

Entte Fragment
IP
4

Datagramme 1 Datagramme 2 Datagramme 3 Datagramme 4


Suite des datagrammes associs une fragmentation :
651
la position (offset) permet de reconstruire le datagramme dorigine

Fragmentation IP V4 : exemple
dcole de fonctionnement
Datagramme fragmenter
I=3204 P=0 M=0 L=41 Message A Transmettre

Aprs fragmentation pour un MTU=28


I=3204 P=0 M=1 L=28 Message
I=3204 P=1 M=1 L=28 A transm
I=3204 P=2 M=0 L=25 ettre
Entte IPV4 : informations pour la fragmentation
I : Identificateur de fragment. P : Position dun fragment dans le
datagramme origine (offset). M : Indicateur dernier fragment ('more').
L : Longueur du datagramme (avec entte 20 octets).
Attention : P la position (offset) est en multiple de huit octets. 652

IP Version 4

I.3
Adressage
A) Par classes (Classfull
(Classfull)
Classfull)
B) Avec Sous rseaux (Subnetting
(Subnetting)
Subnetting)
C) Avec masque variable (
(Variable
Variable lenght mask)
mask)
D) Sans classes (Classless
(Classless)
Classless)
E) Mcanismes additionnels
653

Introduction : Adressage dans IP


un rseau de rseaux
Toute machine connecte IP appartient un rseau

Notion dadresse de rseau et dadresse hte lintrieur dun rseau


32 bits
Adresse dun rseau
Prfixe: le rseau
"Network Prefix"

Adresse hte dans le rseau


Suffixe: l'hte
"Host Number"

Cadre gnral de ladressage IPV4


- Adressage uniforme au moyen d'adresses universelles
sur 32 bits - 4 octets.
- Notation Dcimale Pointe (dotted decimal) 4 octets
dune adresse : a.b.c.d
Exemple dadresse: 192.200.25.1
- Transmission des adresses : grand boutiste (big endian)
654

Evolution de ladressage IP
Amliorations successives pour faire face:
- Demande dadresses IP satisfaire (croissance trs rapide).
- Nombre de rseaux IP galement en croissance : taille des
tables de routage.
Solution : Hirarchiser de plus en plus ladressage en
relation avec le routage => Quatre tapes successives.
Hirarchisation deux niveaux :
Adressage par classes Classfull
Hirarchisation trois niveaux :
Adressage IP par sous rseaux Subnetting
Hirarchisation complte n niveaux de ladresse dhte:
Adressage IP avec masque variable VLSM (Variable lenght Subnet mask)
Hirarchisation complte n niveaux de ladresse IP
Adressage IP sans class CIDR (Classless Inter Domain Routing).
655

Utilisation des adresses IP dans


le routage
Table de routage (ensemble de routes)
Adresse destination

Diffrents champs

Direction denvoi

163.173.0.0 (rseau)

xxxxxxxxxxxxxxxx

/dev/eth0

..

Datagramme router
Adresse destination e.g.h.i (par ex 136.173.36.60).
A partir du prfixe dtermination de ladresse rseau par
application dun masque (adresse avec un prfixe de bits 1
par exemple 16 bits 1 soit 255.255.0.0)
=> adresse rseau 136.173.0.0.
Comparaison de ladresse rseau de destination avec les
destinations des diffrentes routes dans la table.
656

A) Ladressage IP V4 par classes


IP Classfull
Classfull RFC 791 (1981)
Hirarchisation de base des adresses avec deux
niveaux
Rseaux de types et de tailles trs diffrentes: ide de
distinction de trois classes A, B, C selon les tailles de rseau
=> Trois frontires diffrentes entre adresse de rseau et
adresse dhte.
32 bits

Rseau

Prfixe

Hte Suffixe

Une rpartition des adresses entre les trois classes


qui permet automatiquement de dterminer la classe (la
taille du prfixe) => donc de trouver ladresse du rseau
dappartenance (par analyse de loctet de fort poids). 657

Classe A : Grands rseaux


Prfixe sur 8 bits, suffixe sur 24 bits.
126 Rseaux de 16777214 = 2**24 -2 htes.
La moiti de lespace dadressage.
0 1
0

7 8
NRseau

16

24

31

NHte

Nde Rseau: a de 1 126 (0 et 127 sont rservs).


Ndhte: a.0.0.0 et a.255.255.255 rservs.
Plan dadressage rserv aux trs grands groupes
=> gestion stricte.
658

Classe B : Rseaux moyens


Prfixe sur 16 bits, suffixe sur 16 bits.
16384 Rseaux de 65534 = 2**16 -2 htes.
Le quart de lespace dadressage.
0 1
1 0

16
NRseau

24

31

NHte

Nde Rseau: a.b de 128.0 191.255.


Ndhte: 1 65534 (a.b.0.0 et a.b.255.255 rservs)
Plan dadressage pour entreprises moyennes =>
gestion laxiste au dpart.
659

Classe C : Petits Rseaux


Prfixe sur 24 bits, suffixe sur 8 bits.
2097152 Rseaux de 254 = 2**8 - 2 htes.
Le huitime de lespace dadressage.
0 1
1 1 0

16
NRseau

24

31

NHte

Nde Rseau: a.b.c de 192.0.0 223.255.255


Ndhte: 1 2544 (a.b.c.0 et a.b.c.255 rservs)
Plan dadressage peu demand au dpart
=> utilisation avec la croissance du rseau.
660

Adresses de classe D : Diffusion


sur groupe ("
("Multicast
Multicast"
Multicast" IP)
Prfixe 4 bits 1110, suffixe 28 bits: identifiant de
groupe (adresse) de diffusion.
Adresses de 224.0.0.0 239.255.255.255
0 1 2 3
1 1 1 0

31
Adresse de groupe

Groupes permanents 224.x.y.z (224/8)


224.0.0.2 tous les routeurs d'un sous-rseau
224.0.1.1 groupe "Network Time Protocol"
Autres groupes non permanents : 225 239.
Pour mmoire classe E : Rserve Prfixe 11110
661

Adresses de classe D : Diffusion


sur IP et sur Ethernet
Transformation dune adresse de groupe IP en
une adresse de groupe Ethernet.
Pour dterminer automatiquement une
adresse de diffusion Ethernet partir dune adresse
de diffusion IP.
23 bits
7 8
31
Adresse IPV4
Classe D
sur 32 bits

1 1 1 0

Non
utilis

Identificateur du groupe

Adresse Ethernet sur 48 bits


1

Configuration de bits fixe

Identificateur du groupe
662

Adresses particulires IPV4 :


Adresses point point (RFC 1340)
Adresse point point (unicast): atteindre un seul destinataire.
Adresse destination dans un rseau : une adresse de destination
dans une table de routage (atteindre un hte dans un rseau)
- On note le prfixe adresse de rseau suivi de 0 en partie hte (xyz.00).
- Autre notation la notation a.b.c.d/n (/n indique un prfixe sur n bits)
Exemple: a.b.0.0 <=> a.b.c.d/16
- 0.0.0.0 : LInternet => ladresse destination par dfaut (atteindre
un hte qui se trouve dans lInternet).
Adresse destination moi-mme (lhte courant): 127/8
- 127/8 Comme adresse de destination le mme hte (pour permettre
deux utilisateurs sur le mme site de communiquer par IP).
- Adresse de rebouclage "Loopback"
- Toutes les adresses classe A "127.a.b.c" sont affectes cette fonction.
=> Utilisation habituelle de ladresse : 127.0.0.1 ("localhost").
Adresse source moi-mme (lhte courant): 0.0.0.0 ou 000.xyz
- 0.0.0.0 : Adresse source dune station qui ne connat pas son
adresse (utilisable galement 000.xyz l'hte xyz dans son rseau).
663

Adresses particulires v4 :
Adresses de diffusion gnrale
Ide de diffusion gnrale (Broadcast) : atteindre
tous les htes dun rseau IP donn.
En IPV4 pour construire une adresse de diffusion :
mettre des 1 partout dans la partie adresse hte.
Cas de ladressage par classe : Adresses destination:
a.255.255.255 , a.b.255.255 et a.b.c.255:
Diffusion tous les htes du rseau a.0.0.0 (classe A) ou
a.b.0.0 (classe B) ou a.b.c.0 (classe C)
Cas particulier : Adresse dest 255.255.255.255
- Ide naturelle au dpart diffusion tout lInternet
=> abus.
- Ensuite diffusion limite au sous-rseau de lhte metteur
(non dlivr hors du contexte local).
664

Conclusion :
Adressage IPV4 par classes
Gaspillage dadresses dans les annes 1980.
- Lespace dadressage paraissant trs suffisant,
- Le rseau tait confidentiel
=> Les adresses ont t distribues sans prvoir.
Les besoins exprims par les entreprises sont souvent
suprieurs la classe C sans justifier la classe B
Si attribution de plusieurs classes C : gonflement des tables
de routage => Attribution de classe B
Ladressage IPV4 par classes sur 32 bits (4 294 967
296 adresses) est devenu tout fait inadapt
Mais les attributions anciennes ont t prserves
dans les plans dadressages ultrieurs.
665

B) Adressage par soussous-rseaux


IP Subnetting
Subnetting RFC 950 (1985)
Hirarchisation trois niveaux:
Possibilit offerte de structurer lespace d'adressage
interne un rseau de classe A, B ou C en deux niveaux
Trois notions : rseau, sous-rseau et hte.
31

Adresse rseau

Adresse rseau

Adresse hte

Adresse sous-rseau

Adresse hte

Pour quoi faire :

Mieux structurer un espace dadressage interne.


Sans impact sur lInternet mondial.
Eviter des demandes de blocs dadresses

666

Adressage par soussous-rseaux :


Notion de masque ("Subnet
("Subnet Mask")
Mask")
Souplesse souhaite: La frontire entre adresse sousrseau et adresse dhte est variable selon les besoins de
lentreprise (dfinie par ladministrateur du rseau).
Ncessit de fournir le dcoupage retenu chaque
machine dun sous rseau et aux routeurs.
Le masque : permet le filtrage des adresses destination
pour trouver ladresse du sous-rseau dappartenance.
Cest une configuration de bits 1 que lon applique
en et logique sur une adresse IP pour slectionner la partie
adresse rseau + sous rseau
Exemple un rseau de classe B : 135.28/16
On souhaite le dcoupage de lespace interne 10 bits pour ladresse
de sous-rseau et 6 bits pour ladresse dhte :
Valeur du masque : 255.255.255.192 ou en notation de prfixe
667
tendu /26 (ou encore en hxadcimal 0xFFFFFFC0).

Conclusion IPV4 et les soussousrseaux


Avantages

Les tables de routages de lInternet ne croissent pas


en taille (seuls les routeurs internes grent les sousrseaux)
Lespace dadressage priv est mieux gr (lors de la
cration de nouveaux rseaux on vite de demander des
adresses).
Si un rseau modifie sa structure interne il nest pas
ncessaire de modifier les routes dans lInternet

Inconvnients

Il faut grer le masque en plus de ladresse.


On ne dfinit quune seule faon de hirarchiser les
adresses : rigidit du dcoupage (un seul pour toute
668
lentreprise => difficile changer).

C) Masques de longueur variable


VLSM Variable Length Subnet Mask
Besoin: crer des sous rseaux de taille diffrente.
Exemple
Classe B 135.8.0.0/16 dcoup par le masque 255.255.254.0
ou /23 (soit 2**7 = 128 sous-rseaux de 2**9 2 = 510).
Il se cr un nouveau sous_rseau de 15 htes (extension
prvisible 50).
Si on lui attribue une adresse de sous-rseau /23 on va
perdre environ 500 adresses.
Il serait par contre trs intressant de lui attribuer une
adresse /26 dun sous rseau de 64 2 = 62 htes.
La solution : VLSM Variable Length Subnet Mask (RFC
1009 en 1987) : masques de taille variable.
669

Problmes poss par VLSM :


1) Gestion des masques
Chaque sous-rseau possde sa propre taille.
Pour dterminer correctement le numro de rseau
quelque soit sa taille.
Le protocole de routage interne doit utiliser un
masque (un prfixe tendu) diffrent pour chaque sousrseau
Il doit transfrer ces masques dans chaque route.

=> Modifier les protocoles de routage


RIP V2 (Routing Information Protocol RFC1388)
La version 2 permet de dployer VLSM.
OSPF (Open Shortest Path First)
670

Problmes poss par VLSM :


2) Correspondance la plus longue
Recherche de "correspondance la plus longue"
(Longest Match based forwarding algorithm)

Au cas ou plusieurs routes sont dans une table,


La route de plus long prfixe est la plus prcise

La route de plus long prfixe doit tre slectionne


et utilise.
Exemple : datagramme vers l'hte 136.1.6.5 avec 3 routes
vers les destinations suivantes :

136.1.0.0/16 : 10001000 00000001


136.1.4.0/22 : 10001000 00000001 000001
136.1.6.0/23 : 10001000 00000001 0000011

=>Les trois routes conduisent au but


=>Le routeur choisit la route 136.1.6.0/23.

671

Problmes poss par VLSM :


3) Agrgation des routes
Dploiement d'un rseau VLSM => Pour
l'agrgation des routes les adresses doivent
tre assignes topologiquement .
Les blocs dadresses sont dcoups hirarchiquement.
Les blocs dadresses sont attribues selon la topologie du
rseau

On rduit la quantit d'information dans les


tables de routage => on peut agrger en une
seule route, les routes pour lensemble des blocs
contenus dans un bloc destination.
On diminue le temps de recherche en table
=> amlioration des performances du routage.
672

Exemple de gestion dadresse avec


agrgation topologique en VLSM
101.1.0.0/16
101.0.0.0/8

101.2.0.0/16
101.254.0.0/16

101.2.1.0/24
101.254.32.0/19

101.2.1.0/24
101.1.0.0/16

101.2.0.0/16
101.254.32.0/19

101.0.0.0/8

101.254.0.0/16

673

Conclusion : IPV4 avec VLSM

Avantages
Lutilisation de plusieurs masques permet un usage
plus efficace de lespace dadressage attribu une
organisation : il nest pas ncessaire de se conformer la
taille unique des sous-rseaux.
On rduit le volume des tables ncessaires au
routage au niveau dorsal (backbone) dune organisation.
Inconvnients
Ncessite ladaptation des protocoles de routage pour
changer les masques: RIPV1 -> RIPV2
Ne permet de structurer correctement que le
domaine dadresse priv dune organisation.
674

D) Routage sans classe : CIDR


Classless Inter Domain Routing
Routing
Problme rcurrent aprs 1990 (web) en IP v4:

Saturation de l'espace d'adressage et croissance de la taille des


tables de routage (aux plus haut niveaux).

Solution : Hirarchisation complte des adresses V4.


=> Extension de lapproche VLSM tout lespace dadressage de lInternet.
=>Suppression des frontires tablies par ladressage en classes (classless)

Prolongation importante de ladressage V4.

En amliorant lutilisation des adresses encore disponibles.


En diminuant le volume des tables de routage par agrgation des
routes.

Solution CIDR : RFC1517 1520 (1993).


675

Contraintes pour le
dploiement de CIDR
Htes et routeurs doivent supporter ladressage
CIDR et ses consquences
Mmes consquences que VLSM.
Les adresses de destination doivent tre
changes par les protocoles de routage avec leur
prfixe (qui peut tre de taille quelconque).
Les routeurs doivent implanter un algorithme de
"correspondance la plus longue".
Les adresses doivent tre distribues sur une
base topologique pour agrger les routes.
676

Distribution des adresses IP dans


ladressage sans classe
Attribution dadresses par blocs dont la taille est
toujours sur n bits soit 2n adresses chaque fois.
Lutilisation dun bloc dadresses libres de n bits doit
correspondre une adresse de rseau valide sur 32-n bits.
Notation en CIDR :

Un bloc dadresses en CIDR: 212.37.24.160/27


Utilisable comme une adresse de rseau:
Ladresse de rseau en binaire :
11010100.00100101.00011000.101 | 00000
Le masque comporte 27 bits 1 en tte, et 5 bits 0 la fin.
111111111111111111111111111 | 00000
On peut donc aussi noter le masque en notation dcimale pointe :
11111111.11111111.11111111.111 | 00000
Soit : 255.255.255.224
677

Exemple de distribution
Construction dun nouveau rseau IP : comprenant environ 2000
adresses.
On doit attribuer un bloc de 2**11 : soient 2048>2000 adresses
=>11 bits adresse hte masque /21.
On dispose du bloc libre : 194.16.32.0/19
=> On peut attribuer les blocs

Rseau (1) 194.16.32.0/21 ou 11000010 00010000 00100|000 00000000


Rseau (2) 194.16.40.0/21 ou 11000010 00010000 00101|000 00000000
Rseau (3) 194.16.48.0/21 ou 11000010 00010000 00110|000 00000000
Rseau (3) 194.16.56.0/21 ou 11000010 00010000 00111|000 00000000
Exemple: rseau (2) Premire adresse dhte utilisable 194.16.40.1
Dernire adresse 194.16.47.254

On ne peut pas faire dautre choix : car ce ne seraient pas des


adresses de rseaux avec prfixe /21 sur 21 bits et suffixe sur 11 bits.
678

Application de CIDR : distribution


des adresses de classe C restantes
Adresses restantes : dans la classe C (peu de demandes).
Solution dadministration: sparer les classe C restantes
en quatre catgories administres par continent.

194.0.0.0
198.0.0.0
200.0.0.0
202.0.0.0

195.255.255.255 Europe RIPE


199.255.255.255 Amrique nord et sud ARIN
201.255.255.255
//
203.255.255.255 Asie Pacifique APNIC

Distributions indpendantes par rgion de blocs de taille


quelconque aux FAI.
Agrgation de routes: une adresse 194.x.y.z doit tre
envoye sur un routeur europen.
679

Conclusion IPV4 avec CIDR


CIDR alloue efficace des adresses v4
CIDR permet de coller assez finement aux demandes.
Rcupration d'anciennes adresses A, B ou C.
Un prestataire Internet ISP attribue librement ses
adresses.
La dcoupe peut oprer tous les niveaux.
CIDR permet d'agrger les routes tous les niveaux
Contrle de la taille des tables de routage.
Facilite l'administration des routeurs.
CIDR prsente les inconvnients de la hirarchisation:
Si une organisation souhaite changer de prestataire sans
changer dadresse on doit crer une route dexception ce qui
est coteux (autre solution voir plus loin NAT).
680

Carte de lInternet : occupation de


lespace IPV4 en 2006

681

Adressage IP Version 4

E) Mcanismes additionnels pour


ladressage (conomiser et
faciliter ladministration)
1.
2.
3.
4.

Liaisons dnumrotes
Adresses publiques et prives
Traduction dadresses (NAT)
Distribution dadresses (DHCP)

682

E1) Liaisons dnumrotes


(RFC 1812)
Toute carte rseau est identifie par une adresse IP
unique.
Pour une liaison point--point, il faut attribuer un
numro de rseau pour une voie qui ne contient que
deux interfaces => perte d'adresses IPv4.
Solution : Notion de liaison point--point dnumrote
et de routeur virtuel.
On supprime les adresses des interfaces rseau pour une liaison
dnumrote en contradiction avec la notion de route (adresse IP
atteindre "next hop")
Les deux routeurs situs aux deux extrmits de la liaison sont des
demi routeurs qui forment un seul routeur virtuel (la liaison point
point est en fait interne au routeur virtuel).

Avantages : gain de deux adresses, gestion simplifie


Inconvnients : on ne supporte pas les cas compliqus
plusieurs routeurs, les routeurs virtuels sont complexes et non
683
standardiss.

E2) Adresses publiques et adresses


prives (RFC 1918)
Les organisations qui veulent crer un Internet priv
peuvent utiliser sans demande les adresses rserves:

10/8
172.16/12
192.168/16

(10.0.0.0 10.255.255.255)
(172.16.0.0 172.31.255.255)
(192.168.0.0 192.168.255.255)

Les adresses prives ne sont routes que dans les


rseaux privs (non routes dans lInternet mondial).
Avantages
On vite ainsi beaucoup de demandes dadresses.
On a moins de risque dune utilisation sauvage
dadresses publiques dans des rseaux privs.
Inconvnient
On ne peut pas communiquer avec lInternet mondial.
684

E3) Traducteurs dadresses IP : NAT


Network Address Translation RFC 1631
Motivation : lconomie des adresses IP mais aussi :
Une entreprise ayant cr un Internet priv (RFC
1918) souhaite avoir ensuite accs lInternet mondial.
Une entreprise souhaite cacher au monde extrieur
son plan dadressage interne.
Une entreprise souhaite se rendre indpendante des
adresses fournies par son fournisseur daccs Internet.
La solution NAT : modification des adresses dans les
datagrammes
Traduction des adresses IP (dans un routeur ou dans un
quipement de transit par exemple mur pare feux firewall).
Base sur lacquisition du datagramme, la consultation
de table, la modification dadresse, la retransmission.
685

NAT : Traduction statique et


dynamique
Traduction statique (Static NAT) :
Traduction dune adresse IP dentreprise vers une
adresse IP extrieure
=> Toujours la mme traduction ralise.
Typiquement adresse prive interne vers adresse
publique du rseau mondial (facilite ladministration)
Traduction dynamique (Dynamic NAT) :
Traduction dune adresse IP dentreprise (prive) vers
une adresse IP publique prise dans une rserve
=> Un hte na pas toujours la mme adresse IP.
Facilite ladministration et conomise les adresses 686

NAT : Les quatre approches de


traduction (1)
NAT avec traduction pour des transactions en sortie
uniquement (unidirectionnel en sortie).
Traduction NAT classique des adresses IP internes en
adresses IP externes.
NAT avec transactions dans les deux sens (NAT
unidirectionnel en sortie et unidirectionnel en entre) :
Cas prcdent ou des htes internes requirent des
serveurs externes (traduction unidirectionnelle en sortie)
Cas ou des clients externes requirent des serveurs
internes : NAT en relation avec le DNS donne une adresse
publique dun serveur interne et transforme cette adresse en
adresse prive (traduction unidirectionnelle en entre).687

NAT : les quatre approches de


traduction (2)
NAT Bidirectionnel (avec traduction dans les
datagrammes des adresses sources et destination) :
Cas ou les espaces dadressage internes et externes se
recouvrent (adresses prives ou usage anormal dadresses
publiques). Exemple: mise en relation NAT de deux rseaux
privs construits sur le bloc 10.0.0.0/8.
Traduction dadresse et de numro de port
NAT surcharg Overloaded ou encore NAT with PAT
Port Address Translation.
Traduction du couple (adresse IP, numro de port TCP ou
UDP) vers un autre couple (adresse, numro de port).
=> Une adresse IP dans une rserve et un numro de
port sur 16 bits sont donc rattribus.
688
=> La solution la plus utilise.

Exemple : NAT unidirectionnel avec


traduction de numro de port
Entreprise

Source
@IP1, port1

Emetteur

Source
@IP2, port2

Traducteur NAT
Dest
@IP1, port1
Table du
@IP1 , port 1
traducteur

Destinataire
Internet

Dest
@IP2, port2
@IP2 , port 2

Ladresse @IP1 peut tre prive.


Ladresse @IP2 doit tre publique : un seule adresse peut
servir 65536 4096 = 61440 applications (numro de port sur
16 bits et les 4096 premiers numros sont rservs aux ports
bien connus).
689

Conclusion NAT
Solution simple, peu coteuse et trs efficace : la
solution qui a assur la survie de ladressage IP V4
NAT une solution qui pose aussi des problmes
Ne respecte pas le principe: chaque interface une adresse
IP (problme didentification des sources)
Le mode datagramme IP devient plus ou moins connect.
NAT: uniquement prvu pour TCP et UDP, viole le principe
dindpendance des couches (mlange rseau/transport).
Si des applications placent des adresses IP dans les
datagrammes il faudrait que NAT modifie deux endroits.
Problme des mcanismes de scurit avec chiffrement de
charges utiles encapsulant des datagrammes donc des
adresses IP.
690
NAT retarde le dploiement de IP V6.

E4) Distribution des adresses IP :


La solution de base RARP
Problme : Attribution un site dune adresse IP.
RARP Reverse Address Resolution Protocol RFC 903

Une solution pour la correspondance entre adresses MAC et IP.


Utilise pour les machines sans disques et facilite ladministration.

Solution sur rseau local.

Chaque hte dispose dune adresse IP fixe.


Un hte qui dmarre demande son adresse IP fixe.
Diffusion sur Ethernet de requte RARP en donnant son adresse MAC.
Un serveur RARP fournit ladresse IP correspondant ladresse MAC.

Problmes

Ne fonctionne quavec des adresse IP fixes.


RARP ne gre que la distribution dadresses IP.
Ncessite un serveur RARP sur chaque tronon (ou mise en uvre de
serveurs proxy, relais de requtes).
691

Distribution des adresses IP:


La solution BOOTP
BOOTP Bootstrap Protocol RFC 951, 1048, 1084

Faire un outil pour le dmarrage des stations sans disques.


Utiliser UDP et le routage IP pour avoir un seul serveur par entreprise.
Fournir diffrentes informations linitialisation (routeur par dfaut,
masque, serveur de fichiers de boot pour station sans disque ).

Solution BOOTP pour les adresses IP sur UDP.

Protocole avec diffrents formats de messages au dessus de UDP.


Un hte qui dmarre diffuse une demande dadresse IP en UDP sur le
port serveur bootp 67 (rponse en diffusion sur le port client 68).

Problmes

Ne fonctionne quavec des adresse IP fixes.

692

Attribution dynamique dadresses :


DHCP (RFC 941)
DHCP Dynamic Host Configuration Protocol

Une solution de distribution dadresses sur rseau local.


Utilise les formats de message du protocole BOOTP.
Requte dadresse IP en diffusion sur rseau local: DHCPDISCOVER.
Rponse dun serveur DHCP proposant une adresse: DHCP OFFER.
Acceptation dune adresse offerte par le client: DHCPREQUEST.
Acquittement par le serveur: attribution dadresse: DHCPACK.

Gestion de bail : location dadresse IP pour une priode


limite pour rcuprer les adresses inutilises.
Comme Bootp : fourniture dautres informations utiles.
Possibilit de dclarer des relais DHCP sur des routeurs
pour atteindre dautres tronons.
693

Conclusion : DHCP
Principal avantage :
Administration simplifie des adresses (administration
centralise).
Pas de problmes derreurs dues lutilisation de la mme IP.

Deux solutions
A) Un hte reoit toujours la mme adresse IP: IP fixe
comme en Bootp (pour des serveurs).
B) Un hte reoit une adresse IP prise dans un ensemble
dadresses disponibles.
Une mme adresse peut servir dsigner des htes diffrents
dans le temps.
Il nest pas ncessaire davoir autant dadresses que dabonns si
tous les abonns ne se connectent pas en mme temps.

694

Conclusion Adressage IPv4


Les problmes de ladressage IPv4 : tarissement des adresses,
grossissement des tables de routage, trop grande centralisation de
distribution.
Ont reus des solutions astucieuses qui permettent IPV4 de
durer : CIDR, NAT, DHCP
Le plan d'adressage Internet IPv4 devrait nanmoins tt ou
tard arriver saturation
- Incertitude trs grande sur la date effective
- Lie au dveloppement des services Internet consommateurs
dadresses: Internet fixe, mobile, tlphonie, commerce lectronique,
domotique
- Et la faon de rgler les problmes dadressage dans tous ces cas
Les difficults prvisibles de ladressage IPV4 ont amen
spcifier une version nouvelle de IP IP Version 6.
695

IP
Chapitre II
Le protocole IP en version 6
Gnralits IPV6
Structure des datagrammes
Adressage
696

Introduction IPv6
Besoin d'un nouveau protocole qui apporte des rponses
aux limitations du plan d'adressage v4.
Incorporer aussi les volutions technologiques (scurit,
performances, administration)
Etude partir des annes 1990 : diffrentes propositions
pour un futur IP baptis tout d'abord: IP NG
Processus de choix difficile l'IETF => Choix techniques
principaux = adoption des RFC 1994-1995.

IP v5 : Protocole ST2 RFC 1819: multimdia, en connexion


IP v7 : Rseau OSI sans connexion CLNP
IP v6 : choix/fusion entre propositions CATNIP, TUBA, SIPP

Dcision dfinitive 1998


Implantations disponibles en cours partir de 1995-1996,
routeur IPV6 2001 depuis phase
d'exprimentation/dploiement.
697

Critres de conception IPv6


Adressage / Routage
Grand espace d'adressage hirarchisable.

Adressage pour au moins un milliard de rseaux.

Autorisant un routage hirarchis.

Diminution des tailles des tables

Distribution d'adresses facilite en rpartissant les


possibilits d'attribution.
Dploiement
Une transition 'sans jour j'.
Tous les changements effectuer sur tous les types
d'appareils doivent tre prciss (protocoles annexes
ICMP/IGMP, htes, routeurs, administration rseau, ).

698

Modifications par rapport IPV4


Capacit d'adressage quadruple
- 128 bits soit 16 octets (au lieu de 32 bits).
Simplification du format d'entte standard
- Optimisation pour un routage simplifi.
- Suppression des champs inutiles au routage.
- Alignement sur des frontires de mots
Etiquette de flot
- Identifier des flots d'octets pour permettre la rservation
de ressource => qualit de service.
Pas de somme de contrle d'entte
Amlioration des extensions et des options
- Sous forme d'extensions l'entte minimum.
699

Fonctionnalits requises pour IPv6


Support de l'autoconfiguration ('plug and play')
Support de mcanismes de scurit
(confidentialit, authentification, intgrit)
Support de la qualit de service temporelle
(existence de mcanismes pour la rservation de
ressources).
Support du mode diffusion.
Support de la mobilit.
Support d'artres tous les dbits.
700

IP Version 6

Structure du datagramme

701

Format du datagramme IPv6


0
Version

16

Priorit

Longueur de la charge utile


Payload Lenght

24
Etiquette du flot
Flow Label
Entte suivant
Nb sauts
Next Hdr
Hop Limit

31

Adresse Emetteur
Source Adress

Adresse Destinataire
Destination Address

Enttes d'extension
Extension headers
Donnes
...

702

Dtails concernant les champs


IPv6 (1)
Numro de version IP (4 bits) "IP version number"
Ici valeur 6 (IPv6).
Classe de trafic (4 bits) "Traffic Class" "Priority"
Permet la dfinition de la priorit entre les flots de datagrammes.
Valeurs de 0 7 pour les flots pouvant ralentir en cas de congestion.
0 Pas de priorit particulire
1 Trafic de fond ("news")
2 Trafic non attendu ("mail")
3 Rserv pour usage futur

4 Trafic en rafale attendu ("ftp")


5 Rserv pour usage futur
6 Trafic interactif et (X11)
7 Commandes: routage, admin

Valeurs de 8 15 trafic "temps rel" non susceptible de ralentir


(multimdia)
Remarque : Problme de la QOS temps rel: encore en dveloppement.
Autre dcoupage propos: Traffic Class plus riche sur 8 bits et
tiquette de flot seulement 20 bits.
703

Dtails concernant les champs


IPv6 (2)
Etiquette de flot (24 bits) "Flow label"
- En relation avec l'adresse metteur une tiquette
de flot identifie un flot de donnes:
=> On peut allouer des ressources ce flot pour lui
assurer un certaine qualit de service.
- Utilisation en liaison avec RSVP "Resource
Reservation Protocol".
Longueur de la charge utile (16 bits) "Payload
Lenght"
- A la diffrence de IPv4 on ne compte pas les 40
octets de l'entte.
704

Dtails concernant les champs


IPv6 (3)
Prochain entte "Next Header"
- De nombreux enttes d'extension sont prvus pour
complter l'entte de base selon les besoins.
- Les enttes forment une liste.
- Cette zone dtermine le type du premier entte.
- Le dernier entte dfinit le protocole utilisateur.

0 Informations de routage saut par saut


4 Protocole internet
6 Protocole TCP
17 Protocole UDP
43 Entte de routage
44 Entte de fragmentation (par la source)
45 Protocole de routage inter domaine
46 Protocole de rservation (RSVP)
50 Confidentialit de la charge
..

705

Dtails concernant les champs


IPv6 (4)
Nombre de sauts max (8 bits) "Hop Limit"
- Comme dans IPv4 le nombre maximum de commutateurs
pouvant tre traverss (ancienne zone 'Time To Live' avec un
nouveau nom qui correspond la fonction).
- Le diamtre du rseau 256 est jug trop faible par certains
commentateurs.
Adresse source (128 bits) ("Source address")
- Adresse IP de l'metteur.
Adresse destination (128 bits) ("Destination address")
- Adresse IP du destinataire.
Donnes "Data"
- Zone de donne d'une taille max de 64 Ko.
- Une entte d'extension particulire permet de dfinir des
longueurs sur 32 bits jumbograms.
706

IPV6 : Les enttes dextension


"Extension Headers" RFC 1883
Nombreuses options prvues par le protocole codes
dans un nombre variable de champs d'extension en dbut.
Les extensions ne sont pas traites par les routeurs
sauf l'extension infos "pour chaque saut" ("Hop by hop").
Les enttes forment une liste.
Entte V6
Prochain_entte
= TCP

Entte TCP
+ donnes

Entte V6
Prochain_entte
= Routage

Entte Routage
Prochain_entte
= TCP

Entte V6
Prochain_entte
= Routage

Entte Routage
Prochain_entte
= Fragment

Entte TCP
+ donnes
Entte Fragment
Prochain_entte
= TCP

Entte
TCP+
donnes

707

IPV6 : Les enttes dextension


Autre prsentation de la liste
Version Priorit
Longueur de la charge utile
Payload Lenght

Etiquette du flot
Flow Label
Entte suivant Nb sauts
Next Hdr: 0 Hop Limit

Adresse Emetteur
Source Adress

Adresse Destinataire
Destination Address
Entte suivant Longueur Entte
Next Hdr: 43 Header Lenght
Options saut par saut
Hop by hop options
Entte suivant Longueur Entte
Next Hdr: 44 Header Lenght Informations de routage
Routing Information
Entte suivant
Rserv
Next Hdr: 6
Identification fragment
Entte et donnes TCP

Position Fragment Offset

Fragment Identification
TCP Header and Data

708

Description de quelques enttes


dextension (1)
Les champs d'extension et leur ordre
Une extension ne peut apparatre qu'une fois.
On doit rencontrer les extensions dans l'ordre suivant

Infos saut par saut 0 "Hop-by-hop header"


Dfinit des informations pour chaque routeur rencontr par
le datagramme.
Diffrents types d'informations sont prcises sur un octet.
En particulier le code 194 " Jumbo Payload Lenght" dfinit
un paquet dont la taille dpasse 64K (jusqu' 32 bits)

Routage 43 "Routing Header"


Dfinit un routage par la source comme en IPV4.

709

Description de quelques enttes


dextension (2)
Authentification 51 "Authentication Header"
La mthode propose par dfaut par IPV6 utilise une cl
secrte connue de l'metteur et du destinataire.
La cl combine avec le paquet transmis est compresse
avec l'algorithme MD5 ("Message Digest 5").
Beaucoup dautres approches de scurit IPSEC.

Pas de prochaine entte 59 "No next header"

710

Enttes de fragmentation (2)


Gnralits

La fragmentation ne dispose plus dinformations toujours prsentes dans


lentte de tous les datagrammes.
Part non fragmentable: entte de base plus quelques extensions (routage).
Part fragmentable : les autres extensions et les donnes

Entte 44 "Fragment Header"

Dfinit une fragmentation avec des paramtres voisins de ceux de V4


Bit M, identificateur, dplacement (offset) du fragment.

Solution de fragmentation transparente (bout en bout).


Dcouverte du MTU de chemin :

Le plus grand MTU possible qui ne conduise pas une fragmentation sur le
parcours.
Lmetteur met un paquet avec le bit Dont Fragment (taille du paquet
infrieure ou gale au MTU local; prise en compte aussi du MSS Maximum
Segment Size taille max dfinie pour les messages TCP).
Si le MTU ncessite une fragmentation dans un routeur intermediaire

Ce routeur transmet un message ICMP I cant fragment


Lmetteur recommence avec une taille plus petite.

711

IP Version 6

Adressage

712

IPv6 : Choix dune adresse 128 bits


Rappel des principes de base
- Une adresse IP v6 adresse une interface (pas un hte).
- Cest un identifiant unique pour une interface
- Cest un moyen de localisation de cette interface.
Adressage IP V6 : ambition terme d'tre le principal
systme d'adressage au niveau mondial => effet grille-pain
Choix : entre des adresses de taille fixe (plus rapide traiter)
et des adresses de taille variable => Taille fixe grande
Choix 128 bits : un choix de compromis entre 64 bits (jug
trop faible) et 160 bits adresse OSI (trop grand ou trop OSI).

A priori 3.9 * 1018 adresses par mtre carr de surface terrestre.


Si l'on utilise trs mal les adresses disponibles (comme dans le
tlphone) => 1500 adresses par mtre carr.
713

IPv6 : Trois catgories dadresses


Adressage "Unicast" point point.
- Une adresse pour un seul destinataire => le paquet est
dlivr l'interface identifie par l'adresse (comme en IP v4).
Adressage "Multicast" diffusion
- Une adresse pour un ensemble de destinataires => le
paquet est dlivr toutes les interfaces du groupe identifi
par l'adresse (comme en IP v4).
Adressage "Anycast"
- Une adresse pour un ensemble de destinataires => le
paquet est dlivr l'une quelconque des interfaces
appartenant au groupe identifi par l'adresse
- Utilisation possible, accs un seul serveur appartenant
un groupe de serveurs (exemple trouver un serveur au
714
moins).

IPv6 : Reprsentation des adresses


Notation en hexadcimal par groupes de 16 bits avec des
deux points comme sparateurs.
128 bits = 32 chiffres hexadcimaux = 8 groupes de 4 chiffres
0ECD:AB56:0000:0000:FE34:98BC:7800:4532
Deux raccourcis d'criture sont prvus
Omission des zros en tte de groupe.
ECD:AB56:0:0:FE34:98BC:7800:4532
Plusieurs groupes de 16 bits zro peuvent tre
remplacs par ::
L'abrviation :: ne peut apparatre qu'une fois dans une adresse.
715
ECD:AB56::FE34:98BC:7800:4532

IPv6 : Adresses particulires


Adresses de rseaux
- Adressage de type CIDR => Tout dcoupage rseau/
sous rseau est possible (selon des plans d'adressages).
- La notation adresse_Ipv6/n dfinit la valeur du masque
(les n bits en fort poids forment l'adresse de rseau, les autres
bits sont 0).
Adresse non spcifie ("Unspecified")
- Pour un site en initialisation qui demande un serveur son
adresse relle (seulement utilisable comme adresse source).
0:0:0:0:0:0:0:0 # ::
Adresse de rebouclage ("Loopback")
- L'adresse pour s'envoyer des messages (ne peut circuler sur
le rseau).
0:0:0:0:0:0:0:1 # ::1
716

IPv6 : Plans d'adressage


Adresses de plus haut niveau
0::/8
200::/7
400::/7
2000::/3
4000::/3
8000::/3
FE80::/10
FEC0::/10
FF00::/8

00000000
0000001
0000 010
001
010
100
1111111010
1111111011
1111 1111

Adresses
Adresses
Adresses
Adresses
Adresses
Adresses
Adresses
Adresses
Adresses

IPv4
OSI CLNP
Novell IPX
agrges
prestataires
gographiques
locales lien
locales site
de diffusion 717

Rcupration de la base existante


OSIOSI-CLNP,
CLNP, Novell
Protocoles de rseaux existants non IP
CLNP "ConnectionLess Network Protocol"
IPX "Internetwork Packet Exchange"

Le plan d'adressage v6 propose au moyen de


prfixes de reprendre ces adresses rseaux
existantes
=> migration facilite pour ces protocoles.
Conversions d'adresses
- IPX 80 bits (10 octets) complter 121 bits
- Problme pour les adresses CLNP-NSAP "Network
Service Access Point" 20 octets=160 bits faire
718
rentrer dans 121 bits .

Adresses IPV6 compatibles IPV4


Transition par encapsulation
Phase de transition IPV4 vers IPV6: situation ou lon
communique encore en IPV4 pour dmarrer IP V6.
Solution dencapsulation ("tunnelling") de datagrammes
IP v6 dans des datagrammes IP v4 (IPV6 achemin par IP v4
et dlivr distance une pile IP v6 aprs dsencapsulation).
Adresse IPV6 compatible IPv4 "IPv4 Compatible address"
Un hte IP une adresse IPV4 et une adresse IP v6 en
rajoutant des 0 devant l'adresse ipv4 pour en faire de l'IP v6.
Forme: 0:0:0:0:0:0:a.b.c.d soit
::a.b.c.d
Un site IP v6 souhaitant communiquer avec un autre site
IP v6 au moyen de IP v4 utilise une suite IPV4, une adresse
IP V4 et une adresse IP v6 compatible IP v4.
719

Encapsulation IPV6 dans IPV4


Suite IPV6
Client

Client : application V6

Suite IPV4
TCP pour V6
IPV4

IPV6

Adresse serveur en V4
a.b.c.d

Adresse compatible en
V6 ::a.b.c.d

Rseau IP V4

IPV4
Suite IPV4
Serveur

IPV6

Suite IPV6

TCP pour V6
Serveur : application V6
720

Adresses IPV4 reprsentes en


IPV6 (
(mapped
mapped)
mapped)
Transition IPV4-> IPV6 par transformation (mappage)
En mission une requte de transmission pour un datagramme avec
une adresse IP v4 reprsente en IP v6 est trait par une pile IP v4.
En rception, le datagramme reu par IP v4 est prsent son
destinataire (TCP) comme s'il s'agissait d'un datagramme arriv en
IP v6 avec une adresse mappe.

Adresse IPV4 reprsente par une adresse IPV6 "IPv4


mapped IPv6 address"
0:0:0:0:0:FFFF:a.b.c.d soit ::FFFF:a.b.c.d
Seul un trafic Ipv6 achemin par IPV4 peut utiliser une
adresse IP V6 mappe.
On peut communiquer partir de sites IP V4 vers des
sites IPV6 comme si l'on se trouvait dans le domaine
d'adressage IP V6.
721

Adresses IPV4 reprsentes en


IPV6 (
(mapped
mapped)
mapped)
Hte IPV4 pur

Hte IPV6 pur

Client : application V4

Client : application V6

TCP pour V4

TCP pour V6

IPV4

IPV6

Rseau IP V4
Adresse serveur en V4

Rseau IP V6

a.b.c.d

IPV4
Adresse mappe en V6
::FFFF:a.b.c.d

IPV6
TCP pour V6

Serveur (application)

Serveur
pour
clients en
V4 et en
V6
722

IPV6 : Plan d'adressage prestataire


'Provider based unicast address'
3 bits
5 bits
24 bits
010 Registry Id Provider Id

32 bits
Subscriber Id

16 bits
Subnet Id

48 bits
Interface Id

Quatre autorits ("Registry") prvues

IANA Internet Assigned Numbers Authority


RIPE-NCC Rseaux IP Europens Network Coordination Center
INTERNIC Inter Network Information Center
APNIC Asia Pacific Network Information Center

Non utilis : trop dpendant des prestataires tous niveaux


(changement de prestataire => changement d'adresse).
723

IPV6: Plan d'adressage gographique


Geographic based unicast address'
3 bits
100

x bits
Id rgion gog

y bits
Id sous-rseau

z bits
Id Interface

Ces adresses seraient distribues selon des contraintes


gographiques (pays, rgion, ).
Les oprateurs / les monopoles de Tlcom devraient
jouer un rle majeur.
Beaucoup de problmes de mise en uvre : rpartition
d'entreprises sur diffrentes zones gographiques.
Non utilis
724

IPV6 : Plan d'adressage agrg


'Aggregatable global addresses'
3 bits
001

13 bits 32 bits 16 bits 64 bits


TLA NLA SLA
Interface Id

Prfixe 2000::/3 (3bits)


TLA ('Top Level Aggregator') (13 bits)
Agrgation de plus haut niveau: ce niveau reprsente de trs
grands ensembles d'adresses (ex: grands oprateurs internet)
NLA ('Next Level Aggregator') (32 bits)
Agrgation de niveau intermdiaire: ce niveau reprsente des
ensembles d'adresses de taille intermdiaire (prestataires de
service moyens). Ce niveau est hirarchisable.
SLA ('Site Level Aggregator') (16 bits)
Agrgation au niveau d'un site (ex une entreprise). Ce niveau
est hirarchisable.
725
Le plan dadressage actuellement en service.

Identificateur d'interface 64 bits


'Interface Identifier'
IEEE : normalisation des identificateurs d'interface sur 64 bits
=> Format EUI 64: identifier toutes les interfaces de rseaux
(IEEE 802, Appletalk, ..)
Format d'identificateur d'interface pour IP v6
(driv de EUI 64)
40 bits
24 bits
78
Id constructeur Numro de srie Interface

ug

Bit u (universel) : 1 => ladresse est unique, 0 sinon (bit invers en EUI)
Bit g (group) : 1 => adresse d'un groupe ; 0 => adresse individuelle.
Identifiant constructeur : 24 bits comme pour les adresses MAC IEEE
Numro de srie interface: 40 bits (par exemple on porte de 24 bits
40 bits la partie numro de srie des adresses IEEE802 en ajoutant FFFE).
726

IPV6 :
Adresses locales
Adresses de porte locale

Ces adresses ne sont pas valides l'extrieur d'une certaine porte


=> Les routeurs ne les acheminent pas.

Permettent de construire des rseaux Internet privs


( l'abri d'un mur anti feu) comme dans le cas des adresses
rserves IP v4.
Local Lien
"Link local"

Deux portes locales

Locale site
Locale lien ou tronon

Internet
Local Site
"Site local"
727

IPV6 :
Format des adresses locales
Porte locale site (prfixe FEC0::/10)
10 bits

1111111011

m bits

n bits

118-n-m bits

Porte locale lien (un tronon de rseau local)


(prfixe FE80::/10 )
10 bits
1111111010

n bits
0

118-n bits
Interface Id

On doit mettre une adresse d'interface unique.


On prend l'adresse IEEE de la carte rseau accdant au rseau local.
728

IPV6 :
Les adresses de diffusion
8 bits

4 bits 4 bits

112 bits

11111111 000T
Prfixe Drapeau Porte

Ident Groupe

Prfixe (Prefix) : FF/8 soient 8 bits 1 => 11111111


Drapeau (Flag) : 4 bits 000T
T=1 adresse permanente ; T=0 adresse temporaire
Porte (Scope) : 4 bits XXXX Valeurs de porte de diffusion

1 Diffusion limite un seul systme


2 Diffusion limite une seule liaison locale
5 Diffusion limite un seul site
E Diffusion de porte globale lInternet

Identifiant de groupe (Group Id) : 112 bits

729

IPV6 : Exemple de quelques


adresses de groupes prdfinies
1 : L'ensemble des systmes
FF05::1 Porte de site local
FF02::1 Porte lien local.
2 : L'ensemble des routeurs
FF05::2 Porte de site local
FF02::2 Porte lien local.
C : L'ensemble des serveurs de configuration
DHCP "Dynamic Host Configuration Protocol"
FF02::C Porte lien local (tous les serveurs DHCP
sur un tronon, utilisation type de DHCP).
730

Conclusion IP V6
IP V6 : une amlioration certaine par rapport IPV4

Surtout pour ce qui concerne ladressage


Mais aussi pour la prise en compte damliorations techniques
diverses (scurit, extensions ).

Mais dmarrage trs lent grande chelle.

Trs nombreux dtails rgler


IPV6 constitue un effort de portage que les utilisateurs nont
pas envie de supporter tant que ladressage IP V4 tient.
On demande beaucoup plus IPV6 qu IPV4.

Dvelopp depuis 1995

Transition prvue au dpart sur 15 ans.


Chaque anne le lancement grande chelle est annonc.
Chaque anne IP V6 se dveloppe un peu.

Attente de lapplication consommatrice dadresses


IP qui forcera la migration vers IPV6.
731

Bibliographie IP V6

RFC1752
RFC1809
RFC1881
RFC1883
RFC1884
RFC1885
RFC1886
RFC1887
RFC1897
RFC1924
RFC1933
RFC1825

'Recommendation for the IP Next Generation Protocol' 1/95


'Using the Flow Label in IPv6' 6/95
'IPv6 Address Allocation Management' 12/95
'Internet Protocol, Version 6 Specification' 12/95
'IP Version 6 Addressing Architecture' 12/95
'Internet Control Message Protocol (ICMPv6)' 12/95
'DNS Extensions to Support IPv6 12/95
'An Architecture for IPv6 Unicast Address Allocation' 12/95
'IPv6 Testing Address Allocation' 12/95
'A Compact Representation of IPv6 Addresses' 4/96
'Transition Mechanisms for IPv6 Hosts and Routers' 4/96
'Security Architecture for the Internet Protocol' 8/95

732

IP

Chapitre III
Le routage IP
Gnralits
Routage statique
Routage dynamique
733

Introduction : Rappel du problme


de routage
Objectif du routage point point : Atteindre un seul
hte destinataire en masquant la traverse d'une srie de
rseaux et de routeurs intermdiaires.
Routage multipoint (multicast) : Atteindre tous les
htes dun groupe destinataire.
Notion dhtes ("Hosts")
Un hte ne relaie pas de messages (il dispose en gnral dune
seule interface et d'une table de routage simplifie).

Notion de routeurs ("Routers" "Gateways")

Un routeur possde plusieurs interfaces.


Il retransmet un message d'une interface entrante une
interface sortante s'il dispose des informations suffisantes pour
le routage (sinon il note le message 'non dlivrable).
734

Routage statique et dynamique


Routage statique : Dfinition manuelle des routes
(une fois pour toute).
Routage dynamique : Mise en uvre dun
protocole de communication entre routeurs pour
lapprentissage automatique des meilleurs routes
(selon des critres de cots).

735

Organisation gnrale du
routage IP
Affichage
"netstat"

Table de
routage

IP

Routage
dynamique

Routage
statique
"route"

Dmons
gated, routed

Redirect

ICMP

UDP
TCP

Erreur
Paquet
pour
ici
Non

Calcul
prochain
routeur

Vers l'interface

Oui

Source
routing"
Traitement
options
De l'interface
736

Etapes d'une opration de routage


Choix dune route
Recherche des routes pour la destination dun paquet.
Choix de correspondance la plus longue longest Match
Eventuellement : choix entre des routes quivalentes selon la qualit
de service (TOS) et la mtrique de la route.
Eventuellement rpartition de charge.
Transmission
Si le site atteindre est connect directement au site courant (par une
liaison point point ou en rseau local)
=> Obtention de ladresse liaison destinataire (ARP)
=> Le message est envoy directement.
Sinon transmission au prochain routeur (next hop) qui reprend
son compte lacheminement.
737

Gestion de la table de routage :


A) Liste dune table
Informations associes une route (UNIX)
Adresse IP destination

Gnralement une adresse de rseau (la zone Host-id est zro).

Adresse du prochain routeur ("Gateway")

A emprunter pour atteindre la destination.

Indicateurs ("flags")

U chemin oprationnel,
G chemin vers un routeur,
H chemin vers un hte,
D chemin cr par une redirection,
M chemin modifi par une redirection

Nombre de rfrences

Nombre de connexion utilisant le chemin (connexions TCP, UDP).

Mtrique (de la route)


Nombre de paquets envoys
738
Interface ("device") (pilote et carte sur lesquels envoyer le paquet).

Table de routage pour un hte:


Exemple de liste en LINUX
Commande route (autre possibilit netstat r)
kirov::/users/ensinf/gerard _16 /sbin/route
Table de routage IP du noyau
Destination
Passerelle
Genmask
Indic Metric
163.173.128.0 *
255.255.252.0 U
0
loopback
*
255.0.0.0
U
0
default
bigiron.cnam.fr 0.0.0.0
UG
0
kirov::/users/ensinf/gerard _17

Ref
0
0
0

Use
0
0
0

Iface
eth0
lo
eth0

Commentaire : table de routage dun hte => trois routes principales

La boucle locale : loopback (127.0.0.1) pour les messages qui ne sortent pas.
Laccs aux htes sur le mme rseau Ethernet : ici 163.173.128.0
L'accs un routeur par dfaut qui ouvre sur le reste de lInternet : default
(en fait 0.0.0.0). Indicateur G route vers un routeur.
739

Table de routage pour un routeur:


Exemple de liste sur routeur CISCO
mgs>show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default.4/9
Gateway of last resort is 193.51.128.81 to network 0.0.0.0
10.0.0.0 255.255.0.0 is subnetted, 1 subnets
S 10.35.0.0 [1/0] via 192.108.119.147
C 192.168.100.0 is directly connected, Ethernet5
C 192.168.101.0 is directly connected, Ethernet5
C 192.168.55.0 is directly connected, Ethernet3
C 192.168.0.0 is directly connected, Ethernet1
193.51.128.0 255.255.255.248 is subnetted, 1 subnets
C 193.51.128.80 is directly connected, Ethernet2
C 192.168.200.0 is directly connected, Ethernet4
S 192.168.201.0 [1/0] via 192.168.200.61
740
liste coupe ici . etc ..

Gestion de la table de routage :


B) Initialisation Statique (1)
Pour crer manuellement une route
Pour dlivrer des datagrammes sur un rseau local.
Pour atteindre un routeur distant (ex type default).

Exemple en UNIX : Commande ifconfig


configure les paramtres du pilote de carte
rseau
A chaque dfinition d'une interface la table de routage est
initialise automatiquement en consquence.
Exemple : /etc/ifconfig eth0 kirov up dclare un coupleur
ethernet eth0 actif (up) . Diffrentes autres options

"netmask" : dfinition du masque de sous-rseau.


etc ;

741

Exemple de liste de paramtres


dinterface
kirov::/users/ensinf/gerard _16 /sbin/ifconfig eth0
eth0 Lien encap:Ethernet HWaddr 00:09:3D:00:A9:7F
inet adr:163.173.129.17 Bcast:163.173.131.255 Masque:255.255.252.0
adr inet6: fe80::209:3dff:fe00:a97f/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:214175639 errors:0 dropped:0 overruns:0 frame:0
TX packets:147434433 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:158285671425 (150952.9 Mb) TX bytes:87060146495
(83027.0 Mb)
Interruption:25
kirov::/users/ensinf/gerard _17
742

Gestion de la table de routage


routage:
Initialisation Statique (2)
Exemple en UNIX : Commande route
Dclaration explicite dune route vers un rseau distant
:
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
Les routes initialises statiquement sont contenues
dans un fichier de configuration :

Exemples AIX /etc/rc.net, SUNOS /etc/rc.local, SOLARIS 2


/etc/rc2.d/S69inet

743

Gestion de la table de routage


routage:
C) Redirection par ICMP
Modification des tables de routage par dcouverte de
chemins : ICMP protocole additionnel qui achemine des
informations de routage et des messages d'erreur pour IP
Utilisation des diagnostics ICMP derreurs pour
amliorer le routage
Exemple: routeur A envoie un message un routeur B pour atteindre C.
B s'aperoit qu'il ne peut atteindre C
B indique par un message ICMP A ce problme ("host unreachable").

Messages ICMP de maintenance des tables


ICMP peut diffuser des demandes de routes (en diffusion totale ou mieux
en diffusion sur groupes) "router sollicitation message"
Les routeurs lcoute rpondent : "router advertisement message"
744

Gestion de la table de routage


routage:
D) Routage dynamique
Routages dynamiques :
Les routes dans les tables sont modifies par des processus qui
implantent des protocoles dchange de routes.
Le routage dynamique permet lapprentissage des routes et
ladaptativit aux variations de charge.
Les tables de routages sont exploites de la mme faon pour la
commutation par IP (quelles soient initialises statiquement ou
dynamiquement).

Nombreuses possibilits de routage dynamique en IP.


IP : Routage hirarchis deux niveaux (au moins)
Notion de domaine ou AS "Autonomous Systems":
Un domaine correspond un ensemble de sites, administrs par une
seule et mme entit (grande entreprise, campus).

Deux types de routage: intra et inter domaine.

745

Liste de principaux protocoles de


routage dynamique en IP
Protocoles de routage intra-domaine
(IGP "Interior Gateway Protocol") :
RIP : Routing Information Protocol.
IGRP, EIGRP : Enhanced Interior Gateway Routing
Protocol.
OSPF : Open Shortest path First.
Integrated IS-IS : Integrated Intermediate System to
Intermediate System.

Protocoles de routage inter-domaine


(IRP "Interdomain Routing Protocol") :
EGP : Exterior Gateway Protocol.
BGP : "Border Gateway Protocol.
746

1) Routage dynamique: RIP Routing


Information Protocol (RFC 1028)
Routage dynamique par change priodique de tables
entre voisins ("Distance Vector").
Initialisation du protocole
Emission d'une requte de demande de table sur toutes les
interfaces avec une liste de destination (Code commande 1).
Rponse: S'il y a une route pour la destination =>mtrique de la route
Sinon => mtrique = valeur infinie (ex 30) (Code commande 2).

Fonctionnement en mode tabli (message request)


Mise jour priodique : mission vers tous les voisins
systmatiquement toute les x secondes (typiquement 30).
Si une route n'a pas t rafrachie pendant y minutes elle est porte
infini (pour invalidation, y typiquement 3 minutes)
Mise jour de route sur vnement (changement de mtrique).

747

RIP Routing Information Protocol :


Informations complmentaires
Mtrique dune route : nombre de sauts ("hops").
Protocole utilis UDP : pour changer les informations
avec les autres routeurs.
Nom du dmon en UNIX: "Routed"
RIP V2 RFC 1388: extensions dans des champs inutiliss
par RIP V1 (diffusion, identification de domaine, change du
masque)
Sous UNIX : commande pour obtenir les informations de
routage d'un routeur distant (code commande poll 5) :
ripquery -n "nom de routeur"
Solution de moins en moins utilise
748

2) Routage dynamique: OSPF Open


Shortest Path First (RFC 1247)
OSPF : remplaant de RIP
RIP est insuffisant pour les grands rseaux.
Dploiement progressif de OSPF aprs 1990.

Solution tat de liaison ("link state").


Collecte par chaque routeur de l'tat des liaisons
adjacentes.
Echange de ces tats (plusieurs approches,
solution de base inondation).
Calcul par tous les routeurs des tables de routage
optimales par l'algorithme de Dijsktra ("Shortest
Path First").
749

OSPF : Caractristiques
OSPF: un routage intra domaine mais hirarchis
deux niveaux
OSPF permet de grer lintrieur dun domaine des rgions ("areas")
OSPF calcule des routes intra-rgions, inter rgions.
Une rgion particulire permet de connecter les autres ("backbone"
"area 0").
Pour la maitrise des grands domaines ("autonomous system").

OSPF propose une grande varit de mtriques

Dbit, dlai aller-retour, ...


Une mtrique peut-tre attribue par type de service.

Calcul de plusieurs routes possibles par type de service.

Si deux routes sont de cot quivalent: distribution de charge.

Echange des informations de routage OSPF: protocole IP .


Nom du dmon UNIX: "Gated .
750

Principaux messages OSPF


Type de message

Description

Hello

Dcouverte des voisins


immdiats

Link state update

Diffusion aux voisins

Link state ack

Acquittement rception

Database description

Annonce des tats dont


dispose un routeur

Link state request

Demande informations
un routeur
751

3) Routage dynamique: BGP Border


Gateway Protocol (RFC 1267, 1268)
Protocole de routage Inter-domaine.
Autorise des politiques de routage spcifique aux grandes
organisations
Objectif : contrler l'acheminement par une organisation
(interdire du traffic en transit , orienter le traffic, ...).
Trois types de domaines (identifis par des entiers 16 bits):
Domaine souche ("stub") : un seul lien avec l'exterieur
Domaine de transit ("transit AS"): plusieurs liens avec l'extrieur, et
autorise le passage d'informations extrieures son trafic local (transit)
Domaine multi-liens ("multi homed AS"): plusieurs liens avec
l'extrieur, mais n'autorise pas le passage.

Solution par change de tables entre voisins comme RIP


("Distance vector", Mac Quillan)
Echange des informations de routage : TCP.
752

Routage IP : Conclusion
Hirarchisation du routage : le routage IP est devenu
suffisamment hirarchique avec les notions de sous-rseaux,
les domaines (AS), les rgions (areas) (mais le rseau Internet
est trs grand et en dveloppement rapide).
Agrgation des routes :
Rle majeur des oprateurs, des grandes organisations
et des fournisseurs de service : qui administrent le routage
pour des domaines importants.
Introduction de IP V6 : Les algorithmes de routages sont
bass exactement sur les mmes principes (OSPF, BGP4) avec
un espace dadresses suffisant.
753

IP

Chapitre IV
Protocoles complmentaires
de IP

754

Introduction : rappel des


protocoles annexes de IP
ICMP

IP

ARP

IGMP

RARP

Rseau

Liaison

Liaison
PPP, Eth
755

A) Couche liaison :
Encapsulation Multiplexage
Problme abord:

Encapsuler des paquets IP dans des trames au niveau liaison.


Supporter conjointement sur le mme rseau local diffrents protocoles
de niveau 3 (IP, IPX, DECNET, CLNP, AppleTalk, ...).

Existence de diffrents protocoles de liaison.


Cas des liaisons spcialises : protocole PPP

Encapsulation PPP => dj vue

Cas des rseaux locaux : Protocoles Ethernet DIX ou


IEEE 802

Encapsulation Ethernet/DIX ou LLC/SNAP


756

Encapsulation IEEE 802


8802-3 MAC

8802-2 LLC

Adresse
Adresse
destination source Lgr
6

DSAP

PSAP

AA

AA

SNAP
CNTL
03
1

Org
Id
00
3

Prot
Type

Data

CRC

39-1492

Type

Niveaux Liaison IEEE 8802-2 LLC


"Logical Link Control"

3 octets adresse source, adresse destination, zone


contrle => par convention AA AA 03

Encapsulation multi protocole SNAP


"Sub-Network Access Protocol"
5 octets dont 3 octets "Organisation Ident"
000000 et 2 octets " Protocol Type"Ex IP 0x0800

8802-3 MAC

0800
2

IP
data
gramme
39-1492

ARP
P
Request A
0806 Reply D
2
28 10
Type

RARP P
Request A
8035 Reply D

Type
2

28

10
757

Encapsulation Ethernet DIX


Adresse
Adresse
destination source Type
6

Donnes

46-1500

Type

CRC
4

Datagramme IP

0800
2

46-1500
ARP

P
Request A
0806 Reply D
Type

28

10

RARP

P
Request A
8035 Reply D

Type

28

10
758

B) Relation entre adresses liaison


et rseau: solutions statiques
Objectif : Etablir la correpsondance entre adresses liaison
(adresses MAC) et adresses rseau (adresses IP):

Adresse Internet <=> Adresse Ethernet

@IP

@MAC

Solutions statiques
A) Grer dans chaque site une table statique
=> Mais modification obligatoire de la table chaque
changement de configuration.
=> Solution trs lourde.
B) Utiliser des adresses IP et des adresses MAC qui se
dduisent l'une de l'autre facilement
=> Solution IP V6.
759

Relation entre adresses liaison et


rseau: Solutions dynamiques
Solution dynamique: gestion dannuaire
Existence de sites serveurs qui connaissent la relation
d'adressage.
Utiliser un protocole client-serveur pour interroger ces
serveurs et dterminer dynamiquement les relations entre
adresses.
Trs utile si le rseau est souvent reconfigur (retrait,
installation frquente de stations de travail).

Eviter de renseigner sur chaque site les


adresses des serveurs: utilisation du mode diffusion
des rseaux locaux.
760

B1) Protocole ARP :


"Address Resolution Protocol"
Protocol"
Problme : connatre ladresse Ethernet connaissant l'adresse IP
Cas dutilisation : communication dans lInternet sur le mme rseau local

A sur le mme rseau local que B doit dialoguer avec B (@IpB, @MacB).
A ne connat que l'adresse rseau Internet @IpB.
A veut connatre l'adresse liaison Ethernet @MacB.

Fonctionnement de la recherche locale : Mcanisme de Cache


d'adresse (cache ARP)

Table sur chaque site qui conserve les rsolutions d'adresses effectues.
A cherche dans son cache local l'adresse MAC de B : si succs fin de ARP et
communication avec B.

Fonctionnement de la recherche distante: chaque site fonctionne


comme serveur de sa propre adresse.
(1) Diffusion d'un paquet requte ARP contenant @ IpB
(2) Tous les sites du rseau reoivent le paquet ARP et comparent l'adresse
Internet propose avec leur propre adresse
(3) B rpond seul (rponse ARP) en envoyant @MacB.
(4) A dialogue avec B.
761

Protocole ARP :
Complments de gestion du cache
A ayant reu une rponse de B : mmorise dans son
cache la correspondance (@IpB, @MacB)
B dans le message requte appris la correspondance
(@IpA, @MacA) : apprentissage dans le cache
Tous les autres htes ont reu la requte : entre si
ncessaire dans leur cache (@IpA, @MacA).
A sa mise en marche une station diffuse une requte
ARP sur sa propre adresse: apprentissage de tout le
rseau (ARP gratuit).
Les entres du cache sont invalides aprs une dure
paramtrable : gestion dynamique de cache pour tenir
compte des modifications de l'architecture.
Remarque : prolongation possible des requtes de diffusion
ARP notion de proxy ARP un routeur qui retransmet les
requtes ARP sur ses diffrentes interfaces de rseau.
762

Protocole ARP : Exemple


(fonctionnement en UNIX)
tulipe::/users/ensinf/gerard _23 /usr/sbin/arp -a
Net to Media Table
Device IP Address
Mask
Flags Phys Addr
------ -------------------- --------------- ----- --------------le0 mac-florin.cnam.fr 255.255.255.255
00:00:94:22:ac:74
le0 cisco-for-turbigo
255.255.255.255
aa:00:04:00:1f:c8
le0 kendatt
255.255.255.255
08:00:20:7d:72:08
le0 savitri.cnam.fr
255.255.255.255
08:00:20:04:3a:04
< Longue liste de toute la table>
tulipe::/users/ensinf/gerard _25 /usr/sbin/ping rita
rita.cnam.fr is alive
tulipe::/users/ensinf/gerard _26 /usr/sbin/arp -a
Net to Media Table
Device IP Address
Mask
Flags Phys Addr
------ -------------------- --------------- ----- --------------le0 mac-florin.cnam.fr 255.255.255.255
00:00:94:22:ac:74
le0 cisco-for-turbigo
255.255.255.255
aa:00:04:00:1f:c8
le0 kendatt
255.255.255.255
08:00:20:7d:72:08
le0 rita.cnam.fr
255.255.255.255 08:00:20:12:bd:d5
le0 savitri.cnam.fr
255.255.255.255
08:00:20:04:3a:04
< Longue liste de toute la table>

763

B2) Protocole RARP : "Reverse


Address Resolution Protocol"
Objectif : Dterminer une adresse IP avec une adresse
Ethernet
Cas dutilisation: une machine qui boute
Cas dune machine sans disque: boute partir du rseau (coupleur
boute = coupleur Ethernet).
Ncessit pour utiliser un transfert de fichier simple (TFTP) de
connatre l'adresse IP locale ou envoyer le binaire.
En ROM coupleur son adresse MAC => obtention de ladresse IP.

Fonctionnement RARP

La station qui amorce diffuse son adresse Ethernet sur le rseau local.
Un serveur RARP (ncessaire sur chaque rseau) retourne ladresse IP.
Absence de rponse : retransmissions (nombre limit).
Tolrance aux pannes : plusieurs serveurs RARP.

En IPv6 ARPet RARP sont intgrs ICMP.

764

C) Protocole ICMP : "Internet


Control Message Protocol"
Protocol" (1)
Objectif : raliser diffrents changes orients
administration de rseaux (15 types de messages)

Messages derreurs.
Acquisition dinformations.

Requte-Rponse de masque (d'un sous-rseau)


Pour une station sans disque qui souhaite le connatre lors de son
initialisation.

Requte-Rponse demande de l'heure d'un site distant


Pour dvelopper une synchronisation d'horloge.

Acheminement de messages d'erreurs


Dure de vie dpasse => paquet dtruit
Site inaccessible ("port unreachable error") 16 diagnostics d'chec.
Messages ICMP de maintenance des tables de routage
ICMP redirect ou messages de demande routes.
765

ICMP : Utilitaire ping


Requte-Rponse ICMP: envoi dun message un hte distant et
attente dune rponse (si le rpondeur est activ).

Message ICMP type ECHO_REQUEST


Message ICMP type ECHO_REPLY

Commande Unix: ping

ping adresse IP ou nom de domaine DNS dun hte


"nom de station" is alive et/ou statistiques de temps daller retour

Utilisation:
Hte distant oprationnel (en fait sa couche IP fonctionne).
Le rseau Internet permet datteindre un hte distant.
Dtection d'un rseau (ou dun hte distant) surcharg.

Autre option : ping -R pour "record route" : chaque routeur


enregistre son adresse dans le paquet.
Utilisation pour tracer les routes (courtes).
Ping nest pas toujours disponible et longueur maximum de la route 9.
766

Exemple : utilitaire ping


$ping ulysse.cnam.fr
Envoi d'une requte 'ping' sur ulysse.cnam.fr [163.173.136.36] avec 32 octets
de donnes :
Rponse de 163.173.136.36 : octets=32 temps=60 ms TTL=115
Rponse de 163.173.136.36 : octets=32 temps=50 ms TTL=115
Dlai d'attente de la demande dpass.
Rponse de 163.173.136.36 : octets=32 temps=50 ms TTL=115
Statistiques Ping pour 163.173.136.36:
Paquets : envoys = 4, reus = 3, perdus = 1 (perte 25%),
Dure approximative des boucles en millisecondes :
minimum = 50ms, maximum = 60ms, moyenne = 40ms
$
767

ICMP : Utilitaire traceroute


Objectif : tracer ou tester une route de longueur arbitraire.
Solution :

Emettre des datagrammes IP vers un destinataire avec une valeur de la


dure de vie TTL Time To Live croissante (1, 2, 3, jusqu une valeur
max).
A chaque exprience ICMP retourne un diagnostic derreur ICMP
l'envoyeur lorsque le TTL passe 0 => apprentissage du routeur visit
sur la route vers le destinataire

Commande Unix: traceroute "adresse IP" ou "nom de


domaine"
Permet de connatre le chemin emprunt et la dure pour atteindre
chaque routeur (trois expriences pour chaque routeur).

Autre possibilit : traceroute -g "adresseIP"

Permet galement de tester les possibilits de routage par la source


-g routage faible : on force IP emprunter quelques routeurs spcifis.
-G routage strict : on force IP parcourir strictement une route.
768

Exemple : utilitaire traceroute


$/usr/etc/traceroute cyr.culture.fr
traceroute to cyr.culture.fr (143.126.201.251), 30 hops max, 40 byte packets
1 internet-gw
(163.173.128.2) 0 ms
0 ms
0 ms
2 renater-gw
(192.33.159.1)
0 ms 10 ms
0 ms
3 danton1.rerif.ft.net
(193.48.58.113) 110 ms 80 ms 90 ms
4 stlamb3.rerif.ft.net
(193.48.53.49)
100 ms 130 ms 100 ms
5 stamand1.renater.ft.net
(192.93.43.115) 90 ms 60 ms 50 ms
6 stamand3.renater.ft.net
(192.93.43.17)
70 ms 100 ms 90 ms
7 rbs1.renater.ft.net
(192.93.43.170) 130 ms 120 ms
*
8 Paris-EBS2.Ebone.NET
(192.121.156.226) 110 ms 90 ms 100 ms
9 icm-dc-1.icp.net
(192.121.156.202) 220 ms 110 ms 220 ms
10 icm-dc-1-F0/0.icp.net
(144.228.20.101) 200 ms 230 ms 290 ms
11 Vienna1.VA.Alter.Net
(192.41.177.249) 250 ms 210 ms 240 ms
12 Falls-Church4.VA.ALTER.NET(137.39.100.33)
330 ms 220 ms 180 ms
13 Falls-Church1.VA.ALTER.NET(137.39.8.2)
270 ms 290 ms 230 ms
14 Amsterdam2.NL.EU.net
(134.222.35.1)
380 ms 410 ms 460 ms
15 Amsterdam1.NL.EU.net
(193.242.84.1)
350 ms 380 ms 310 ms
16 134.222.30.2
(134.222.30.2)
150 ms 490 ms 530 ms
17 Rocquencourt.FR.EU.net
(193.107.192.18) 340 ms 340 ms 330 ms
18 143.126.200.203
(143.126.200.203) 300 ms 410 ms
*
19 cyr.culture.fr
(143.126.201.251) 460 ms 220 ms 290 ms
$

769

D) Protocole IGMP : "Internet


Group Management Protocol"
Protocol"
Objectif : Utiliser les capacits de transmission IP pour raliser des
diffusions sur groupe => Deux problmes rsoudre :
=> Disposer dun protocole dappartenance un groupe: messages
vers les routeurs pour entrer et sortir dun groupe de diffusion
=> Construire un routage en diffusion : exemple de protocoles de
routage en diffusion sur groupe DVMRP, PIM=>Notion de routeur diffuseur
Protocole dappartenance un groupe dans lInternet: IGMP.
Rappel : Adresses IPV4 de groupes (classe D) ou Adresse IPV6 (FF/8)
Association un groupe (abonnement) : en mettant une requte son
routeur (diffuseur) de rattachement comportant l'identificateur du groupe et
l'interface qui doit recevoir les messages.
Dsassociation (dsabonnement) : autre requte.
Surveillance : un routeur diffuseur met une requte priodique sur toutes les
interfaces ou il doit dlivrer des messages diffuss pour vrifier loprationnalit.
Maintenance de table : utilisant ces requtes et ces rponses un routeur gre
sa table locale des groupes.

En IPv6 IGMP est intgr ICMP.

770

IP

Conclusion

771

Succs du protocole IP
Un protocole de niveau 3 en expansion considrable:
HTTP, SMTP puis les applications puis la tlphonie et la TV.
IP couvre les besoins d'interconnexion : pour des rseaux
de transmission de donnes numriques => IP est devenu le
rseau par excellence dintgration de services.
IP intgre toutes les nouvelles offres de moyens de
communication physique.
Les routeurs IP ont t amliors en performances et IP
est complt par un protocole de commutation rapide circuits
virtuels (MPLS)
IP possde une version 6 : pour supporter le dveloppement
en termes d'adressage et de hirarchisation.
Compte tenu de son extension et de son adquation IP
devrait continuer d'tre utilis comme protocole
unificateur de niveau 3 pendant trs longtemps.
772

Incertitudes
Est ce que IPV6 va russir se dployer dans de
bonnes conditions en mme temps que IPv4 va
rgresser?
Est ce que IP va pouvoir s'ouvrir lensemble
large et divers d'usagers et de besoins qui sont
viss:
Support de la qualit de service pour des application varies
multimdias.
Dans le cadre d'un dveloppement norme => passage
lchelle.

Comment IP et plus gnralement l'Internet va


grer son propre effet sur la socit?
773

Bibliographie Internet Protocol


W.R. Stevens "TCIP/IP Illustrated, The
protocols" , Addison Wesley
S.A. Thomas "IPng and the TCP/IP protocols"
Wiley
A.S. Tannenbaum "Computer Networks" Prentice
Hall
Cisco "Internetworking Technology" Publication
interne

774

Niveau Transport
"Transport Layer"
I) Problmes et solutions au niveau transport
II) Exemple des protocoles et services de
transport dans lINTERNET
775

Niveau Transport
"Transport Layer"
Chapitre I
Problmes et solutions au niveau
transport
Gnralits: choix de conception
Adressage
Gestion des connexions
Transfert de donnes
776

Objectifs du niveau transport


Offrir un service de transmission d'informations pour les
besoins d'un utilisateur de session.

Communication de processus processus (de bout en bout),


Selon des objectifs de qualit de service: transport fiable, multimdia
Efficace : en performances.
Indpendant de la nature des rseaux traverss: LAN, MAN, WAN

Importance du niveau transport


La couche transport n'est pas une couche de plus
dans une architecture de rseau.
C'est la couche qui rsume toutes les couches
associes la transmission (les couches basses).
C'est la base sur laquelle repose une application rpartie.
777

Ncessit de la couche transport:


1) Problme dadressage
Niveaux liaison et rseau : adresses utilises = Adresses
d'quipements physiques (contrleur de communication, NIC).
Exemple : adresses Ethernet, adresses X25, adresses IP.

Niveau transport (communication de bout en bout) :


adresses utilises = adresses dapplications (processus).
Toute solution visant utiliser les adressages physiques pour
faire communiquer des processus est plus ou moins "bricole".

Exemple : Utilisation d'adresses X25 ou Ethernet tendues


On ne peut pas faire dpendre la structure de l'adresse d'une application
de la nature du rseau qui permet de l'atteindre.

Le niveau transport doit offrir un adressage en propre:

On utilise une adresse "logique d'activit" (adresse transport)


On ralise la mise en correspondance d'une adresse transport avec une
"adresse physique d'hte" qui est support de l'application.
Ladresse de transport est indpendante du rseau utilis.
778

Ncessit de la couche transport:


2) Gestion de connexions et QOS
Protocole avec connexion
Permet la spcification de qualit de service selon les
besoins des applications.
Le transport adapte aux besoins des applications les
niveaux physique, liaison et rseau.
Exemples : TCP, RTP et ISO 8072

Protocole sans connexion


Chaque donne circule en utilisant essentiellement des
adresses de transport pour atteindre le destinataire.
Protocole simplifi pour des communications rapides.
Exemples : UDP et ISO 8072 ad1
779

Exemple de qualit de service:


Le contrle derreurs
Un utilisateur dune architecture de rseaux ne doit pas
avoir se proccuper des erreurs de transmission.
Taux d'erreur rsiduel acceptable (erreurs non dtectes, non corriges).
Exemple 10-12/bit pour des donnes informatiques de criticit normale.
La plupart des services de transmission offerts par les services rseaux
n'offrent pas cette qualit.
Niveau liaison sans contrle d'erreur : Ethernet, ATM.
Niveau rseau avec contrle : X25 problme de panne de commutateur.
Niveau rseau datagrammes sans contrle derreur : IP.

Le niveau liaison ou le niveau rseau sont insuffisants


pour les besoins en contrle derreurs des applications.
On reporte au niveau transport le lieu principal de
correction des erreurs de transmission.
780

Choix de conception du niveau


transport
Services offerts: selon les options de conception
dune couche transport.
Gestion des connexions avec ngociation de qualit de
service.
Fragmentation (segmentation).
Groupage (concatnation).
Multiplexage/clatement des connexions de transport
sur des connexions de rseaux.
Contrle d'erreur, de flux, de squence.
Proprits de qualit de service temporelle.
Contrle de congestion (du rseau par contrle
781
dadmission au niveau transport).

Analyse des concepteurs du


transport Internet TCP/UDP
TCP : un protocole complet pour des donnes
informatiques.

Rsout les problmes non traits par IP (contrle


derreur, flux, squence)
=> TCP un transport fiable
=> Utilisable pour tous les types de rseaux.
Pas de ngociation initiale: fonctions toutes disponibles.
Peu adapt aux rseaux aux fonctionnalits leves (X25).
Beaucoup de traitements effectuer: solution lente.
Une solution trs optimise pour le service rendu.

UDP : un protocole trs simplifi

Pour aller vite: ralise uniquement un adressage transport.

RTP : un protocole de transport QOS.

782
Satisfaction de contraintes temporelles pour le multimdia.

Analyse des concepteurs du


transport OSI
Etude de l'cart entre le service fournir par la couche
transport et le service qu'elle obtient de la couche rseau.
Permet de dterminer les fonctions mettre en oeuvre au
niveau de la couche transport.
Meilleur est le service offert par le rseau (surtout en termes de
contrle d'erreur, livraison en squence)
Plus simples sont les fonctions du protocole de transport.

Consquences
Dfinition d'un protocole plusieurs classes ( 5 classes).
Classes de transport de base (classe 0, 1, pour des niveaux rseaux
performants) complexe (classe 4 , trs complte pour des niveaux
rseaux mdiocres).
Protocole complexe (volume de fonctions), ngociation douverture de
connexion complexe => difficile implanter.
783

Particularits des problmes de


ralisation du niveau transport
Le service de transport parait voisin du service de liaison.
Communication en point point.
Qualit de service comprenant contrle d'erreur et de flux.

Pourrait-on alors utiliser au niveau de la couche


transport un protocole de liaison ?
Le problme principal : la diffrence des moyens de transmission utiliss
Hte
A

VOIE PHYSIQUE

Hte
B

Protocole de liaison

Processus
A

RESEAU DE
COMMUNICATION
Protocole de transport

Processus
B
784

Modes de pannes supportes


Modes de pannes franches et transitoires dans
les systmes de communication :
Panne franche : coupure totale des communications.
Panne transitoire : pertes alatoires de message.

Au niveau physique comme au niveau rseau :


les deux niveaux supportent des coupures ou des
pertes de messages.
=> Peu de diffrences dans les traitements de
niveau liaison et de niveau transport.
785

Modes de pannes temporelles


Panne temporelle : Dlai de transmission anormalement
lev par rapport aux spcifications.
Niveau physique : capacit de stockage du canal trs faible
(dlai de transmission, dlai de propagation)
=> le temps de transmission d'une trame est dterministe.

Niveau rseau : Le rseau peut stocker des paquets


pendant un certain temps et ne les dlivrer qu'aprs ce
dlai.
Transmissions longue distance avec surcharge et congestion.
Des paquets peuvent arriver aprs un long dlai.
=> Le temps de transmission d'un paquet est alatoire (non
dterministe).
Problme important au niveau transport : les "vieux paquets".
786

Problmes de causalit
(dsquencement)
dsquencement)
Niveau physique :
Une voie de communication physique a un comportement
"causal": les messages mis dans un certain ordre arrivent
dans le mme ordre.
=> Les suites binaires ne peuvent se dpasser.

Niveau rseau :
Le rseau (en mode datagramme) peut dsquencer ou
dupliquer les paquets transmis.
En raison des algorithmes de routage dans les rseaux
datagrammes.
En raison des problmes de dlai de propagation (dj voqus)

=> Les paquets sont possiblement dsquencs.787

Problmes et solutions au
niveau transport

Problmes d'adressage au niveau


transport

788

Nature des adresses de transport


Adresse = Nom local du processus
Nom local de processus (source ou destinataire):

nom du processus dans le systmes dexploitation de lmetteur


ou du destinataire.

Solution trs mdiocre pour rsoudre le


problme dadressage : variantes de syntaxe des
noms de processus sur diffrentes machines.
Gestion des noms selon les diffrentes syntaxes.
Difficult de migration dune machine une autre.
Difficult de remplacement dun processus en cas de
panne (changement du nom).
Difficult pour la rpartition de charge : service rendu
par plusieurs instances quivalentes d'un mme code. 789

Nature des adresses de transport


Adresse = nom global rseau
Nom global : L'adresse dune source ou dun
destinataire est dfinie dans une syntaxe rseau unique
pour toutes les machines.
Exemple : en TCP un entier sur 16 bits.

Solution indpendante de la syntaxe des noms de


processus sur diffrentes machines.
Nom global = nom dune file dattente de message.
Besoin de plusieurs communications pour un processus
Indirection des messages par un point de passage intermdiaire
auquel se raccrochent les processus usagers.
Terminologies pour les files de messages : Point d'accs de
service transport, TSAP "Transport Service Access Point",
Boite lettre, Port, Porte, "Socket" ou prise.
790

Dtermination des adresses des


processus communicants
L'ouverture d'une connexion de transport suppose la
connaissance des adresses

TSAP ("Transport Service Access Point") (Internet numro de port) :


slection du processus qui rend le service.
NSAP ("Network Service Access Point") (Internet adresse IP) : sur quel
site se trouve ce processus => Le routage rseau se charge ensuite de
le trouver.

Problme de mise en correspondance TSAP <-> NSAP.


TSAP 1

Entit
transport

Interface
session/transport

TPDU

TSAP 2

Entit
transport

Session

Transport

Protocole de transport
NSAP 1

NSAP 2

Rseau

791

Adressage dans une


communication clientclient-serveur
Scnario dune communication
1/ L'utilisateur B (le serveur) se rattache au TSAP b et se met
en attente d'une arrive de connexion.
2/ L'utilisateur A (le client) qui dsire tablir une connexion de
transport avec B met une requte de connexion sur le destinataire
(NSAP b, TSAP b) en indiquant son adresse d'appelant (NSAP a,
TSAP a).
3/ Le serveur et le client peuvent dialoguer.

Le scnario marche parce que B tait en attente sur


le TSAP b et que A est suppos connatre b par son
adresse.
Comment A peut-il connatre cette adresse :
Problme de liaison analogue de l'dition des liens dans les
programmes.
Solutions de liaison statique ou dynamique.

792

1) Solution de liaison statique


Connaissance des adresses code dans les
programmes
Tous les utilisateurs de B ont la connaissance du TSAP de B.
Analogie avec les numros de tlphone rservs: 15 , 18.
On installe de faon dfinitive un service sur un adresse
donne.

Principe simple mais limit.


Les serveurs dont l'adresse est fixe sont ncessairement
assez peu nombreux => services caractre gnrique systme.
Gaspillage dadresses si lon utilise une adresse permanente pour
un serveur trs spcifique ou rarement sollicit.
Il est ncessaire d'utiliser aussi des adresses de TSAP non
permanentes.
793

2) Liaison dynamique par processus


crateur de serveur
Notion de processus crateur de serveur (processus "logger")
Processus dont le rle est de crer la demande des instances de serveur.
L'adresse du crateur de serveurs ("logger") est permanente et connue de
tous les utilisateurs (solution de liaison statique).

Fonctionnement avec crateur de serveur sur un hte NSAP B.


Le client A se connecte au processus crateur et dfinit le service B crer:
Soit sous la forme d'un nom logique de service (dans une liste)
Soit sous forme du nom dun fichier accessible contenant une image binaire chargeable

Le processus crateur alloue une adresse de TSAP libre (TSAP b), cr une
instance de B et lui attribue ladresse alloue => il la communique au client A.
Le client A se connecte au TSAP b pour obtenir le service souhait.

Avantages/inconvnients de la solution
Solution de dsignation, de cration et de liaison dynamique complte.
Ne marche que pour les serveurs pouvant fonctionner au coup par coup
(cration la demande) Exemple : serveur de compilation, serveur dhorloge,.
Inutilisable pour un serveur qui fonctionne en permanence
Exemple : serveur de fichiers.
794

3) Liaison dynamique par utilisation


dun serveur dannuaire
Principe de la solution
Consiste faire appel un processus serveur d'annuaire,
dont l'adresse (Nsap, Tsap) est permanente et connue de
tous (solution statique).
Ce processus gre un annuaire de services auprs duquel
les serveurs peuvent s'enregistrer et qui fournit des
renseignements concernant un service:
Principalement son adresse (Nsap, Tsap)
Eventuellement d'autres attributs ou fonctions (protection,
description/typage du service, ...).

Solution analogue de ce que ralisent les renseignements


tlphoniques.
795

Troisime solution : liaison dynamique


par utilisation dun serveur dannuaire
tapes 1, 2 : Enregistrement dans une
base de donnes des noms de serveurs.
1) B tablit une connexion avec le serveur
d'annuaire. B met une requte avec :

Le nom du service (chane de caractres).


L'adresse rseau d'accs au service.
Ladresse transport daccs au service.
Tout attribut complmentaire si ncessaire.

Processus
client

2) Le serveur d'annuaire acquitte la demande


d'enregistrement (absence d'homonymie, ...).

Processus
serveur
4

Processus
serveur
d'annuaire

tapes 3, 4: Liaison entre un client et un serveur.


3/ A tablit une connexion de transport avec le processus serveur dannuaire.
Requte spcifiant le nom logique du service dont il dsire connatre l'adresse.

4/ Rponse du serveur : l'adresse demande. A se dconnecte de l'annuaire.


A n'a plus qu' tablir la connexion avec le serveur.
796

Problmes et solutions au
niveau transport

Problmes de gestion des


connexions au niveau transport

797

A) Problmes douverture de connexion


Rappel du schma de base
Rappel : Laccord confirm de base (hanshake simple)
Entit de
transport A
T_connect.request

Entit de
transport B

TPDU
demande de
connexion

T_connect.indication

CR(paramtres)

TPDU
confirmation de
connexion

T_connect.response

T_connect.confirmation
CC(paramtres)

Problme: le rseau peut mmoriser des paquets pendant un


temps trs long (ventuellement non born dans l'hypothse
798
asynchrone).

Exemple 1 : comportement
incorrect du un dlai lev
Entit de
transport A

Entit de
transport B

T_connect.request
(paramtres_1)
ABANDON DE
REQUETE
NOUVELLE
REQUETE
T_connect.request
(paramtres_2)

CR(paramtres_1)
VIEUX PAQUET
T_connect.indication
(paramtres_1)

Seul responsable de l'erreur


le dlai lev de transmission
du premier paquet.
Il n'y a pas d'erreur de
transmission et la squence
des paquets est respecte.
On voit que le problme
provient surtout de l'absence
d'identification des
connexions.

T_connect.indication
CR(paramtres_2)
(paramtres_2)

Solution apporter:
Notion de rfrence de
Doublon ignor
connexion
T_connect.response
et mcanisme de gel des
(paramtres_1)
rfrences

T_connect.confirmation
CC(paramtres_1)
(paramtres_1)

799

Exemple 2 : comportement
incorrect du au dsquencement
Entit de
transport A

Entit de
transport B

Responsable le squencement
des paquets non respect.
T_connect.request
D'o une connexion
(paramtres)
considre comme ouverte
CR(paramtres)
par un site B et non ouverte
T_connect.indication
par l'autre A (demi-ouverte).
Connexion
(paramtres)
La situation peut durer
en
longtemps si le paquet CC
ouverture
T_connect.response
(paramtres)
pour A
arrive trs retard (ou mme
Connexion
ouverte
CC(paramtres)
n'arrive jamais).
T_data.request
en B

T_data.indication

DT
T_data.request

Donne ignore
T_data.indication

Donne ignore

T_connect.confirmation
(paramtres)

DT

Solution apporter:
Ouverture de connexion
confirme en trois tapes
("three way handshake")
800

Notion de rfrence
de connexion
Besoin de crer des rfrences de connexion :
Un moyen de dsigner une connexion de transport : une
communication entre un metteur et un destinataire.
Un usager peut grer sur un mme TSAP plusieurs connexions
simultanment avec le mme ou plusieurs usagers.

Problme pos :
Gnrer la demande des rfrences uniques pour de nombreux
couples dusagers avec de nombreuses connexions ouvertes.

Solution :
Pour chaque site associer un entier unique pour le site et le nom du
site : notion destampille (timestamp).
Former la rfrence unique partir du couple des estampilles
metteur destinataire.

Comment crer des entiers uniques ?

801

Solutions pour les rfrences :


1) Adresses TSAP usage unique
Rfrence entire base sur ladresse de TSAP
On doit utiliser une adresse de TSAP diffrente chaque connexion
On s'oblige ne grer qu'une connexion par TSAP.
Chaque fois qu'on a besoin d'une nouvelle rfrence de connexion,
on cre une nouvelle adresse de transport.

Il ne peut plus y avoir d'ambigut entre messages


circulant sur des connexions diffrentes ou en cours
d'tablissement.
Lorsqu'une connexion est ferme, toutes les messages
qui lui taient associs sont inutilisables (sans destinataire).
Solution coteuse en adresses de TSAP.
Solution qui rend trs difficile la liaison (dcouverte de
TSAP).
802

Solutions pour les rfrences :


2) Rfrences volumineuses
Utilisation d'une rfrence de connexion longue contenant des
informations de diffrenciation pour la rendre unique.
A) Rfrence base sur la date et lheure douverture de connexion.
Solution correcte chaque rfrence est diffrente.
Ncessite une gestion correcte du temps absolu.

B) Rfrence base sur un numro de squence.

Utilisation squentielle d'un espace de rfrences grand => il ne repasse par


les mmes numros qu'avec une faible probabilit.
Ncessite une sauvegarde en mmoire stable du dernier numro gnr
car en cas de panne on ne doit pas rutiliser le mme numro (dmarrage 0
au boute).

C) Tirage alatoire d'une rfrence dans un grand espace de


numrotation tel qu'on ne peut tirer deux fois la mme rfrence qu'avec
une faible probabilit (exemple sur 32 bits ou mieux sur 64 bits).

Ncessite un bon gnrateur dentiers : avec probabilit faible de collision.


Solution probabiliste : on nest jamais sur de labsence de collision.
La rfrence unique alatoire peut-tre utilise comme base de numrotation en
803
squence des messages.

Solutions pour les rfrences :


3) Rfrence courte avec gel
Utilisation d'une rfrence de connexion courte
rutilisable.

En gnral un entier qui correspond une entre dans la table des


descripteurs de connexions.
A chaque fois qu'une connexion doit tre ouverte on utilise une
entre libre de la table.
Lindex entier est sur n bits, 2n est petit et il y rutilisation
frquente des rfrences par des connexions successives.
Il ne faut pas qu'il y ait d'ambigut entre les messages de la
prcdente connexion utilisant l'entre et ceux de la nouvelle connexion.

Solution : gel de rfrence

Une rfrence ne peut tre rutilise pendant une priode suivant


la fermeture d'une connexion => Gel de la rfrence.
Le gel permet tous les paquets en circulation sur la connexion
ferme d'tre reus et purgs.
On doit disposer d'un mcanisme de limitation de la dure de
vie dans le rseau (time to live) pour armer un dlai de garde
804
correspondant au gel.

La solution en TCP
Utilisation d'une solution hybride.
La rfrence est base sur une horloge temps rel
Cette horloge est trs lointainement relie au temps absolu.

Il faut plutt considrer que lhorloge de TCP


fonctionne comme un gnrateur de nombres alatoires
Solution de gnration dentiers probabilistes sur 32 bits.
La rfrence est utilise comme base de numrotation en squence des
messages.

Crainte des collisions entre numros : utilisation en plus


dun mcanisme de gel de rfrence
Notion de dure de vie des paquets qui permet de dimensionner le
gel.
805

Ouverture de connexion en trois


tapes ("
("three
three way handshake")
handshake")
Problme pos: perte d'units de donnes de protocole en phase
douverture (ouverture de connexion incomplte cause de messages
perdus, anciens ou dsquencs).
L'objectif vis: Avant de commencer transfrer effectivement des
donnes on doit atteindre un tat tel que:

le demandeur de l'ouverture sait que le destinataire accepte l'ouverture,


le destinataire sait que le demandeur sait qu'il accepte l'ouverture de connexion.

Solution 1

Ignorer les TPDU ("Transport Protocol Data Unit") de donnes qui arrivent avant
la confirmation d'ouverture connexion => des pertes de donnes, alors que le
rseau est parfaitement fiable.
Ceci ne dfinit pas comment on atteint l'ouverture confirme (la connexion peut
rester indfiniment en ouverture).

Solution 2

Stocker les TPDU de donnes qui arrivent avant la confirmation de connexion,


afin de les prsenter lorsque la connexion est tablie.
On peut avoir stocker de gros volumes de donnes.
Il ny a toujours pas de dfinition de la confirmation douverture.
806

Louverture confirme en trois


tapes
Entit de
transport A

Entit de

Principes

On interdit l'entit appele


d'envoyer des donnes (de
T_connect.request
considrer que la connexion est
(paramtres)
ouverte)
CR(paramtres)
Connexion en
Lappel ne peut rpondre
T_connect.indication
ouverture
qu'une TPDU de confirmation.
(paramtres)
pour A
Jusqu' ce quil ait reu une
TPDU qui lui confirme la bonne
T_connect.response
(paramtres)
T_connect.confirmation
rception de sa TPDU de
CC(paramtres)
confirmation de connexion par
(paramtres)
Connexion en
l'appelant.
ouverture
pour B
T_data.request
On utilise pour cela une
DT
troisime TPDU
T_data.indication
Selon le protocole une donne si
Connexion
Connexion
l'appelant a des donnes envoyer
ouverte en A
ouverte en B
ou une TPDU spcifique (troisime
message douverture).
transport B

807

Exemple dchange confirm en


trois tapes avec rfrences
Choix de rfrence Z
T_connect.request(Z,A)
Choix de rfrence X
T_connect.request(X,A)

Connexions
en ouverture
pour A (X,A)
(Z,A)
T_connect.confirmation

CR(X,A)
CR(Z,A)
CC ((X,A),(T,B))

((X,A),(T,B))
T_data.request
((X,A),(T,B))

Connexion
ouverte en A

DT((X,A),(T,B))

((X,A),(T,B))
T_disconnect.indication
(Z,A)
DR((Z,A))

Remarques:
Il ne peut y avoir
d'ambigut
entre les
connexions
T_connect.indication(X,A)
rfrences Z et
X dont
Choix de rfrence T
l'ouverture
T_connect.response
concurrente est
((X,A),(T,B))
en cours.
Connexion en
ouverture
Le site B a le
pour B ((X,A),(T,B))
choix d'accepter
T_connect.indication(Z,A)
ou de rejeter (ici
T_data.indication
((X,A),(T,B))
par un
disconnect) l'une
Connexion ouverte en B
des deux
((X,A),(T,B))
T_disconnect.request(Z,A)
connexions.
808

B) Problmes de fermeture de
connexion
Fermeture de connexion = atteindre un consensus sur la
connaissance de la libration.
Si la connexion doit tre libre A et B doivent atteindre (assez rapidement) un
tat ou ils dcident tous les deux que la connexion est ferme:
Pour viter l'existence indfinie de connexions demi-ouvertes
L'un a dcid de fermer et l'autre ne le sait pas.

Pour terminer les changes dans une situation claire du point de vue applicatif.

Solution de base: accord confirm

T_disconnect.request, DR
T_disconnect.indication
T_disconnect.response, DC
T_disconnect.confirmation.

T_disconnect.
request
DR(paramtres)

T_disconnect.
confirmation DC(paramtres)

T_disconnect.
indication
T_disconnect.
response

Ce protocole ne marche pas en prsence de tous types de dlais


de transmission et de pertes de messages.
809

Problmes de consensus :
le problme des deux armes
La formulation d'un problme de consensus entre deux entits
communicantes analogue au problme de dconnexion:
Une arme A campe dans une valle.
L'arme B (son adversaire) est spare en deux corps d'armes B1 et B2 qui
occupent deux collines distinctes spares par larme A.
A est plus forte que chacun des deux corps d'armes B, mais A est moins forte
que B dans le cas ou les deux corps B1 et B2 attaquent de faon coordonne.
Le seul moyen pour coordonner l'attaque des B est l'usage de messagers qui
traversent la valle et qui sont susceptibles de mettre trs longtemps, d'tre
capturs ... en raison des ennemis

Solution asynchrone au problme des deux armes


Existe-t-il un protocole dterministe : qui marche dans tous les cas.
En mode message asynchrone : quels que soient les pertes ou les retards
(dlais de transmission non borns).
Permettant aux commandants B de gagner avec certitude : de se
mettre d'accord sur l'heure d'attaque ? ( de rsoudre le problme du consensus
deux).
810

Impossibilit d'une solution


dterministe en mode asynchrone
Prsentation informelle du mode de raisonnement.
Recherche d'une solution deux messagers.
Le commandant de B1 envoie au commandant de B2 le message "Attaque demain .
Le commandant de B2 reoit le message et fait rpondre "D'accord".
Ce dialogue n'est pas concluant, car le commandant de B2 ne peut pas savoir avec
certitude si sa rponse a bien t reue (non perdue ou retarde aprs la date propose).

Recherche d'une solution trois messagers.

On utilise un protocole en trois tapes.


B1 doit accuser rception de la rponse de B2 sa proposition.
Alors, c'est le commandant de B1 qui ne peut pas savoir si sa confirmation est bien arrive.
Sil y a perte de la confirmation, B2 ne bougera pas, B1 attaquera seul et sera vaincu.

Recherche d'une solution N messagers.

Avec N messagers, le mme problme se pose : l'metteur du Nime message n'est jamais
sur de savoir si son message a t reu ou non.
Pour toute solution N messagers comme le dernier message peut ne pas arriver il ne
peut donc tre essentiel pour la solution et on doit pouvoir s'en passer.
Donc on peut enlever les derniers messagers les uns aprs les autres.
Comme il n'existe pas de solutions deux messagers il n'existe pas de solution
(raisonnement par rcurrence).
811

Solution probabiliste et synchrone


pour la dconnexion de transport
Solution probabiliste : une solution qui ne marche pas en toutes
circonstances de pannes et de dlais de transmission.
Solution synchrone : base sur des dlais de transmission borns
permettant de rgler des dlais de garde.
Schma gnral dune solution:
Entit de transport A
Temporisateur de
A (N tentatives) ou
Rception de DC
Fermeture de
connexion
pour A

Entit de transport B
DR
DC
AK

Temporisateur de B
ou rception de AK
Fermeture de
connexion
pour B

812

Dtails du fonctionnement de la
dconnexion
Action de A

L'entit de transport A dsirant mettre fin une connexion envoie une


TPDU de demande de dconnexion DR et arme un temporisateur.
A chance, si elle n'a pas reu de rponse, elle retransmet la TPDU.
Au bout de N retransmissions sans rponse ou sur rception d'une
confirmation DC, l'entit A ferme la connexion.

Action de B

L'entit de transport B recevant la demande de dconnexion rpond


par une TPDU de confirmation de dconnexion et arme un
temporisateur.
A chance du temporisateur ou sur rception d'un acquittement de
sa confirmation, elle ferme effectivement la connexion (elle enlve de
sa table des connexions ouvertes les informations concernant la
connexion considre).
L'entit de transport A initiatrice de la libration accuse rception de
la confirmation en envoyant une TPDU d'acquittement et en fermant
la connexion de son ct.
813

Analyse du protocole de
dconnexion
Cas pour lesquels le protocole
fonctionne
Bass sur la russite de certaines
communications et sur lexistence de dlais
de garde.
Permettant de rgler des temporisateurs en
fonction des dlais de propagation des
messages sur le rseau.

Cas pour lequel le protocole ne


fonctionne pas
Il existe une probabilit non nulle pour que
les demandes de dconnexion ou leurs
rponses se perdent toutes.
A ferme la connexion sans que B le sache
ou B ferme la connexion sans que A le
sache => Notion de connexion demiferme.

DR
Retransmission
sur
expiration
temporisateur

Retransmission
sur
expiration
temporisateur

Effacement de
la connexion

DR
DC

DR
DC
AK
Effacement de
la connexion sur
expiration du
temporisateur 814

Analyse du protocole de
dconnexion
Solution synchrone (base sur le temps) et
probabilistes aux connexions demi-fermes

On utilise un dlai de dtection d'inactivit de la connexion : si


aucune TPDU n'a t reue pendant ce dlai, une entit est autorise
fermer la connexion de son ct (solution synchrone).

Exemples : A sur mission de DR ou B sur mission de DC (temporisateurs)

Cette solution amne fermer des connexions qui ne devraient pas


l'tre uniquement parce que les temps de rponse sont trop
levs par rapport aux dlais de garde (solution probabiliste).
Pour que a fonctionne il faut que les messages aient un temps de
transmission born (transmission dlai born ou "synchrone")
qui permet de rgler le dlai de garde d'inactivit et quon accepte une
probabilit (qui doit tre trs faible) de fermer des connexions.

Conclusion

Dans le monde des rseaux en prsence de pannes (pertes de


messages) et dlais de transmission, on ne construit de
solutions industrielles que probabilistes et synchrones.
815
La probabilit dchec doit rester acceptable.

Problmes et solutions au
niveau transport

Problmes de transmission des


donnes au niveau transport

816

Contrle d'erreur au niveau


transport
Code dtecteur d'erreur
On utilise plutt une somme de contrle (de type parit) rapide
calculer par programme (par rapport un code polynomial).

Numros de squence
La livraison en squence assur par une numrotation des TPDU.

Acquittements positifs et temporisateurs


Le contrle d'erreur est assur comme au niveau liaison par des
protocoles acquittement positif et retransmission sur dlai de garde.

Solutions identiques celles des protocoles de liaison.


Difficult du contrle d'erreur de transport
Problmes poss par les vieux paquets et les d-squencements.

817

Exemple 1 : Interfrence entre paquets


sur des connexions successives
Ouverture d'une connexion
entre A et B

TPDU DT 0

TPDU AK 1

T1

TPDU DT 1
TPDU AK 2
Fermeture de la connexion

Etablissement d'une
nouvelle connexion

TPDU DT 1
TPDU DT 0
TPDU AK 2
TPDU DT 1
TPDU AK 2

.
.
.

La TPDU DT 1 est reue sans


erreur mais hors squence: elle
est garde en attente de
resquencement
La TPDU DT 0 ayant t reue,
l'acquittement peut se faire
La seconde TPDU DT 1 est
dtecte comme duplique: elle
est carte mais acquitte

Solutions possibles
Rfrences de
connexion dans les
donnes.
=> Identification des
paquets.
Utilisation du gel des
rfrences.
=> Pas de rception
dans une connexion
ultrieure.
Changement de
lespace des numros
de squence utiliss.
=> Acceptation dans
une nouvelle fentre
818
de rception.

Exemple 2 : Interfrence entre paquets


de la mme connexion
Ouverture d'une connexion
entre A et B

TPDU DT 0

Solution

TPDU AK 1

Utilisation dun
numro de squence
de grande taille (par
exemple sur 32 bits
ou mieux sur 64 bits).

T1
TPDU DT 1
TPDU AK 2
TPDU DT 2
TPDU DT 3
TPDU AK 0
TPDU DT 0
TPDU AK 1
TPDU DT 1

La TPDU DT 1 est reue sans


erreur mais hors squence: Elle
est accepte mais c'est
une duplication

La probabilit de
rutilisation court
terme d'un mme
numro pendant une
connexion doit tre
trs faible.
819

Contrle de flux au niveau


transport
Problme de contrle de flux.
Adaptation de la vitesse du processus metteur celle du rcepteur.
En l'absence de contrle de flux, des units de donnes sont dtruites
leur arrive, faute de tampons libres.

Problmes poss par le contrle de flux de transport.


Le rseau sous-jacent achemine plus ou moins vite les informations
selon sa charge.
Le site rcepteur prend en compte les messages au niveau transport
plus ou moins rapidement selon sa charge.
Les traitements d'application prennent plus ou moins de temps selon les
donnes donner.
=> Trs grande variabilit des vitesses de rception.
=> Ncessit d'un mcanisme de rgulation trs adaptatif

Remplacement des fentres de taille fixe par des


fentres de taille variable.

820

Contrle de flux par crdit variable


Notion de crdit CDT :
Une zone supplmentaire dans les donnes mises par le rcepteur et qui
sont porteuses dun acquittement positif AK (piggybacking).
Cest le nombre d'units de donnes que l'metteur peut mettre en
anticipation (que le destinataire est prt recevoir) partir du numro
d'acquittement port dans le segment.
Le rcepteur accepte les messages de numro AK au numro AK+CDT-1.

Dfinit un contrle de flux par fentre glissante de taille variable


car le rcepteur peut modifier le crdit en fonction de ses capacits.
Le rcepteur peut accrotre la taille de la fentre dynamiquement
Le rcepteur peut rduire la taille de la fentre dynamiquement.

Remarque
Le crdit est donn par la dfinition en absolu des numros de squence
autoriss : autorisation dmettre dans la fentre de AK AK + CDT - 1.
La dfinition relative par autorisation d'envoi de CDT messages en plus
est impossible puisque les crdits doivent pouvoir tre rpts en cas de perte.
=> A chaque rptition on accorderait lenvoi de CDT messages en plus.
821

Problmes de gestion des crdits :


1) Rduction de crdit
Problme : la rduction de
crdits peut entraner la perte de
TPDU de donnes.
Exemple:
Perte de TPDU donnes la
suite d'une rduction de la limite
suprieure de fentre.
Bien que le rseau soit fiable.
La TDPU DT 4 arrive hors
fentre puisque le destinataire B a
rduit entre temps le crdit
d'mission de l'expditeur A.

Solution:

Retransmission comme si la donne


avait t bruite.
Utilisation dacquittements positifs
et de temporisateur.

ACK2, CDT=3

DT2
DT3
DT4
Temporisateur
ACK4, CDT=0

TPDU accepte
TPDU accepte
Rduction crdit
TPDU refuse

A bloqu
ACK4, CDT=1
Retransmission
DT4

TPDU accepte
822

Problmes de gestion des crdits :


2) Interblocage de perte de crdit
Problme : La perte dun
message de crdit peut
conduire un interblocage de
message.
Exemple :

ACK2, CDT=2

DT2
DT3

Interblocage du une perte de


message porteur de crdit.

Solution:
Rptition des messages
porteurs de crdits.

ACK4, CDT=3

Blocage

823

Problmes de gestion des crdits

Solutions la perte de crdit

1- Le rcepteur rpte priodiquement ses messages


d'augmentation de crdit (sur temporisateur).
Trafic priodique dacquittements avec crdit (ou "Idle Data Transfer").
=> Tt ou tard le site distant reoit une copie du dernier crdit.

2- Le rcepteur arme un dlai de garde TW aprs chaque


message d'acquittement/crdit et rpte le message
chance uniquement si l'metteur n'a pas repris ses missions
entre temps (il considre qu'il est perdu).
Si TW est trop faible: on risque de rexpdier des
acquittements/crdits un rythme lev pendant un temps important,
ce qui consomme inutilement les ressources du rseau.
Si TW est trs lev: on rallonge la priode de blocage de l'expditeur
824
quand ce dernier des TPDU mettre.

3) Interblocage de

dsquencement de crdits
Problme : Le dsquencement des
crdits peut conduire
des interblocages.
Exemple :
Un crdit ayant
dpass lautre
lmetteur est bloqu.

Une solution:
Utiliser des numros
de squence pour les
augmentations de
crdits.
Dlivrer les
augmentations dans
l'ordre d'mission.

B
ACK2, CDT=2

B met un crdit de 2 partir de 2


(soit une autorisation pour 2 et 3)
B met le message numro 4

DT4
ACK5, CDT=7

A autorise B de 5 11
DT2
A met le message numro 2

DT3

A met le message numro 3


ACK4, CDT=0

B bloque les missions de A

ACK4, CDT=3

B rautorise A par un crdit de 3

ACK5, CDT=7
A est bloqu
par l'arrive dsquence du CDT=0

825

Problmes et solutions au
niveau transport

Conclusion

826

Conclusion: Conception des


protocoles de transport
Problmes de transport : finalement assez
compliqus.
On dispose de solutions correctes en mode point
point pour les donnes informatiques classiques.
Diffrents problmes restent poss :
Adaptation des solutions existantes la monte en
dbits (gigabits, trabits, )
Communication de niveau transport en diffusion
(multipoint).
Communications de transport avec qualit de service
temporelle (multimdia).
827

Niveau Transport
"Transport Layer"
Chapitre II
Exemple des protocoles et
services de transport INTERNET
UDP "User Datagram Protocol"
Protocol"
TCP "Transmission Control Protocol"
Protocol"
Un service pour TCP et UDP: les sockets
828

Exemple des protocoles et services


de transport INTERNET

UDP
"User Datagram Protocol"
Protocol"

829

Choix de conception UDP


UDP permet l'mission de datagrammes IP en utilisant
un protocole trs simplifi de niveau transport.
Sans connexion
Pour des relations courtes.
Efficace (en termes de performances).
Simplification des dveloppements de codes applicatifs rseaux.

Avec adressage de niveau transport


Identification des "ports"

UDP implante donc trs peu de mcanismes

Adresses de ports (points d'accs de service de transport)


Somme de contrle d'entte (optionnelle)
Aucun contrle de squence, contrle d'erreur, ni contrle de flux.
830

Format du segment UDP


0
Adresse port source
"Source port number"
Longueur
"Length"

15 16
Adresse port destination
"Destination port number"

31

Somme de contrle
"Checksum"
Zone donnes
"Data"

Structure trs simplifie (gnration et analyse rapide)


Peu encombrante (8 octets)
Ddie essentiellement au problme dadressage de niveau
transport.

831

Dtails concernant les diffrents


champs
Zone source port et destination port

Numros de port identifiant l'utilisateur source et l'utilisateur destinataire


(16 bits).
Le numro de port source est optionnel (si non renseign il est mis
zro).

Zone longueur

Longueur totale en octets du message.


Redondant avec la longueur de paquet IP.
=> La longueur est optionnelle (dans ce cas on la met zro).

Zone somme de contrle

Le champ "checksum" couvre la partie entte et la partie donnes.


Il est calcul comme pour l'entte IP par un ou exclusif sur des groupes
de 16 bits et complment un.
Si la longueur des donnes est impaire un remplissage par des zros est
effectu sur le dernier octet.
=> La somme de contrle est optionnelle (dans ce cas on la met zro).
832

Exemple des protocoles et services


de transport INTERNET

TCP
"Transmission Control Protocol"
Protocol"

833

Choix de conception TCP


TCP a t conu en fonction de IP qui est de qualit de
service mdiocre.
Le rseau sous-jacent (IP) peut perdre, altrer, dupliquer,
dsquencer les paquets.

TCP permet un transport de donnes orient octets

En mode connect, bidirectionnel.


Avec contrle d'erreur (transport fiable).
Avec contrle de squence.
Avec contrle de flux.
Avec contrle de congestion

Existence de trois phases principales


Ouverture de connexion
Transfert de donnes
Fermeture de connexion

834

Format du segment TCP


31

Port source
Port destination
Numro de squence
Numro d'acquittement
4
EUA P RS F
5
Longueur
C
I
Taille fentre
entte Rserv N RG CK HS ST NY N
Somme de contrle
Pointeur urgent
Options
Donnes
Un seul format de TPDU pour tous les mcanismes du protocole.
Un en-tte relativement long : au minimum 20 octets
835

Dtails concernant les diffrents


champs (1)
Numro de port source ("Source port")
Entier sur 16 bits: identifie le port metteur.

Numro de port destination ("Destination port")


Entier sur 16 bits: identifie le port rcepteur.

Numro de squence ("Sequence Number") sur 32 bits

Si le bit SYN est non positionn c'est le numro de squence du premier


octet de donnes dans la TPDU
Si le bit SYN est positionn c'est le numro de squence initial (ISN): le
premier octet de donnes a pour numro ISN+1.

Numro d'acquittement sur 32 bits.

Numro de squence de l'octet que l'entit s'attend recevoir.

Longueur de l'en-tte sur 4 bits

En nombre de mots de 32 bits.


Ncessaire puisque l'en-tte comporte des options de longueur variable.

Zone rserve de 5 bits.


836

Dtails concernant les diffrents


champs (2)
Sept drapeaux (1 bit) dterminent la prsence de certains champs
dans le segment TCP et en fait donnent un type (ou plusieurs types) au
segment: donne, acquit positif, tablissement ou libration de connexion
URG ("Urgent") : 1 si la zone donne urgente est prsente (le pointeur
urgent sur la fin de la zone de donne urgente doit tre positionn).
ACK ("Acknowledgment") : 1 si le champ "numro d'acquittement" est
prsent. Il sert aussi lacquittement du numro de squence initial.
PSH (Push) : une option de service qui demande la transmission immdiate
des donnes en instance dans un segment porteur du bit push. A larrive le
destinataire doit dlivrer galement immdiatement.
RST ("Reset") : lmetteur ferme abruptement la connexion.
SYN ("Synchronize") : synchronise les numros de squence (utilisation
principale l'tablissement des connexions).
FIN ("Fin") : l'metteur n'a plus rien transmettre et libre la connexion.
ECN ("Explicit Congestion Notification") : notification de congestion.
837

Dtails concernant les diffrents


champs (3)
Taille Fentre ('Window Size') (16 bits)
Le crdit (taille de la fentre de rception) exprim en nombre doctets.
Mesur partir du numro d'acquittement insr dans le segment.

Somme de contrle ('Checksum') (16 bits)


Sert la dtection d'erreurs.

Pointeur urgent ('Urgent pointer') (16 bits)


Le pointeur urgent pointe sur la fin des donnes urgentes places
ncessairement partir du dbut du segment.
Les donnes urgentes peuvent tre suivies par des donnes normales.

Zone options
Permet l'change d'informations protocolaires en extension de
lentte (taille maximum de la zone option 44 octets).
Un code sur un octet distingue les diffrentes options (de lordre
838
de 25/30 options dfinies par des RFC).

Approfondissements 1) : calcul de
la somme de contrle UDP/TCP
Checksum : calcul sur le segment dcompos en groupes de
16 bits : calcul simple, faisable en logiciel comme en IP.
1
1
Retenue: 1 1
1
Inversion
finale des bits 0

1
1
0
0

1
0
1
1

0
1
1
1

0
0
1
1

1
1
0
0

1
0
1
1

0
1
1
1

0
0
1
1

1
1
0
0

1
0
1
1

0
1
1
1

0
0
1
1

1
1
0
1

1
0
1
0

0
1
1 Addition en
0 complment 1.

1 0 0 0 1 0 0 0 1 0 0 0 0 1 1

Calcul portant sur le segment et un pseudo entte IP.


Les adresses IP source et destination, la longueur, le type.
Pour scuriser la donne utilisateur mais aussi les principales
informations protocolaires (TCP et une partie de lentte IP).
Violation de lindpendance entre couches.
839

Approfondissements 2) :
Diffrences Push et Urg
Mode push dans une primitive de service

Force l'mission immdiate du segment porteur des


donnes en mode push (le segment comporte le bit push).
Les donnes circulent normalement.
A destination: le segment doit tre dlivr immdiatement.
Exemple:
Terminal en cho local on peut mettre le bit push sur un segment
lorsquon a atteint le retour chariot.
Terminal en cho distant : on doit faire push sur chaque caractre.

Mode donnes urgentes.

Un bloc urgent est dfini l'intrieur du segment


(utilisation du bit URG et du champ pointeur urgent).
Les donnes devraient circuler le plus rapidement
possible : mcanismes de QOS ou de priorit IP.
840
Le destinataire devrait recevoir les donnes ds l'arrive.

Approfondissements 3) :
Exemples de zones options (1)
Option End of option list (code=0) : fin de la liste des options TCP.
Option No operation (code=1) : pour remplissage et alignement sur des
frontires de mots de 32 bits.
Option MSS ('Maximum Segment Size') sur 4 octets: Taille maximum
des segments (code=2).
Annonce de la taille max en octets que le TCP est capable de traiter (dans un
segment douverture avec bit syn=1).
Absence de MSS : TCP doit toujours accepter 512 octets de donnes soit un MSS
par dfaut de 512 + 20 + 4 = 536.

Option Window Scale 10 octets : facteur dchelle fentre (code = 3)


Dans les rseaux haut dbit la valeur du crdit (taille de la fentre sur 16 bits
64K) est trop petite.
Sur un octet cette option dfinit louverture de connexion un facteur
multiplicatif appliquer la zone fentre.
La valeur utilise est 2n ou n est le facteur dchelle.
Soit en fait un dcalage de n bits sur la valeur de la taille de fentre.
841

Exemples de zones options (2)


Option TCP SACK permitted 2 octets : (code = 4)
TCP peut fonctionner en mode rejet slectif.
Dans le cas ou des accuss de rception slectifs sont
autoriss. Cette option met en place le mcanisme.

Option Timestamp 10 octets : datation (code = 8)


Problme de la mesure du temps daller retour (RTT Round
Trip Time): les acquittements groups sont retards.
Fonction principale de loption: faire cho dune date sur
32 bits pour quun metteur mesure correctement le RTT.
Deux estampilles : TSVAL la date de lmission du prsent segment ,
TSECR (echo reply) la date qui tait porte par le segment de
donne dont ce segment est un acquittement positif (bit ACK=1).
842

Protocole d'ouverture de connexion


en TCP : Principes gnraux (1)
Ouverture de connexion en trois messages :
"three way handshake" (pour des raisons de fiabilit).
Chaque extrmit doit choisir un numro de
squence initial ISN.
Ce numro sur 32 bits est envoy l'autre extrmit.
Chaque numro de squence initial choisi par lun des
communicants doit tre acquitt par lautre.
Le couple des numros de squence sert de rfrence
initiale la connexion.
La norme recommande de choisir les numros de
squence "au hasard" selon les bits de faible poids
d'une horloge et de ne pas rutiliser ces numros avant un
dlai (gel de rfrence, purge des "vieux paquets" retards
dans le rseau et qui pourraient tre mal interprts). 843

Protocole d'ouverture de connexion


en TCP : Principes gnraux (2)
Une seule connexion TCP est tablie entre
deux ports.
TCP ignore les requtes de connexion ultrieures.
Ouverture de connexion normale : on distingue le
demandeur initial de la connexion (ouvreur actif) et
l'accepteur (ouvreur passif).
Cas possible d'ouverture simultane : on a deux
initiateurs simultanment actifs et lon doit traiter ce cas
particulier.

844

Diagramme de messages
douverture de connexion TCP
Ouvreur actif

Ouvreur passif

Envoyer
SYN, seq=x
Recevoir
SYN, seq=x

Recevoir
SYN, seq=y
ACK, ack=x+1
Envoyer
ACK, ack= y+1

Envoyer
SYN, seq=y
ACK, ack=x+1

Recevoir
ACK, ack= y+1
ACK

Message 1
- Demande de connexion avec
SYN=1, un numro de
squence initial X, et ACK=0
indiquant que le champ
d'acquittement n'est pas
utilis.
Message 2
- Confirmation de connexion
avec SYN=1, un numro de
squence initial Y et ACK=1
avec le numro X+1 acquittant
le numro propos X.
Message 3
- Acquittement du numro Y
propos avec ACK=1 et un
numro d'acquittement 845
Y+1.

Ouverture de connexion
simultanes
Envoyer
SYN, seq=x
Recevoir
SYN, seq=y
Envoyer
SYN, seq= x
ACK, ack=y+1
Recevoir
SYN, seq=y
ACK, ack=x+1

Envoyer
SYN, seq=y
Recevoir
SYN, seq=x
Envoyer
SYN, seq=y
ACK, ack= x+1
Recevoir
SYN, seq=x
ACK, ack=y+1

Collision d'appel :
deux messages SYN
concurrents.
La norme indique
qu'une seule
connexion doit-tre
ouverte.
C'est le cas ici : les
deux sites ont ngocis en
quatre messages une
connexion de rfrence
unique (x,y).
846

Approfondissement:
Choix des numros de squence
Des connexions successives doivent recevoir des
numros de squence initiaux diffrents et "alatoires".
Pour diffrencier les messages ayant circul sur les deux connexions
Pour des numros de squence sur 32 bits le RFC 793
TCP suggre d'utiliser une horloge sur 32 bits.
Horloge TCP: un compteur incrment toutes les 4 micro-secondes
ce qui le fait recycler environ en 4 heures ("wrap around").
L'incrmentation n'est pas faite un par un (trop d'interruptions) :
mais selon une priode qui peut tre assez longue (exemple 1/2 seconde
=> incrmentation de 128000).
Les implantations diffrent de faon significative sur le choix
de ces valeurs.
847

Choix des numros de


squence : Rgles de choix
Deux numros de squence

Axe des
numros
de squenceMax TTL
Zone
interdite

Numros
de squence
attribus
fonction
de la date

Ouverture
d'une connexion
t=0
Reboute

Zone
interdite
Ouverture

Axe du
temps
Priode de gel
(Resynchronisation)

identiques correspondant des


messages diffrents de
connexions diffrentes
successives entre les mmes ports
ne doivent pas tre attribus.
Le TTL ("Time To Live") d'un
paquet dans le rseau de
communication permet de rgler le
dlai de la zone interdite (dure du
gel)..
Les numros de squence
dans la zone interdite ne
peuvent tre attribus car des
paquets ayant ces numros
peuvent tre en transit.
848

1) Protocole de fermeture de
connexion: Libration abrupte
TCP Connection reset
Lorsqu'un segment est
transmis avec le bit RST :
une fermeture inconditionnelle
(immdiate) de la connexion
est ralise.

A
L'application A veut
clore la connexion
Envoyer
Segment
RST
Abandon
Immdiat

B
Recevoir
Segment
RST
Abandon
Immdiat

Le rcepteur abandonne la connexion.


Il notifie l'application la fin immdiate de la connexion
Lmetteur, le rcepteur librent tout l'espace de
travail occup par les segments en cours de transmission.
849

2) Protocole de fermeture de
connexion: Libration ngocie
A
L'application A veut
clore la connexion
Envoyer
FIN, seq=x
Recevoir
segment ACK

B
Recevoir
segment FIN
Envoyer
ACK x+1
Notifier B
de la fin A
L'application B veut
clore la connexion

Recevoir
segment FIN,
ACK
Envoyer
ACK y+1
Notifier A de
la fin B

Envoyer
FIN, seq=y
ACK x+1

TCP Graceful close


Chaque
utilisateur doit
gnrer sa propre
requte de
dconnexion.
On garantit la
livraison correcte
de toutes les
donnes changes
sur la connexion.

Recevoir
ACK segment
850

TCP : Automate de
connexion/dconnexion
FERME
"CLOSED"
?LISTEN
?Recevoir SYN
ATTENTE
"LISTEN"
!Envoyer
SYN,ACK
?Recevoir RST
Demi-passif
"SYN_RCVD"

?CONNECT
!Envoyer SYN
?SEND
!Envoyer SYN

?Recevoir SYN

Demi-actif
SYN_SENT
?Recevoir SYN,ACK
!Envoyer ACK

!Envoyer SYN,
ACK
?Recevoir ACK
OUVERT
?CLOSE
"ESTABLIHED"
!Envoyer FIN
?Recevoir FIN
?CLOSE
! Envoyer ACK
!Envoyer FIN
?Recevoir FIN
!Envoyer ACK
"FIN_WAIT_1"
"CLOSING"
?Recevoir
FIN,ACK
?Recevoir
?Recevoir
ACK
ACK
!Envoyer ACK
"FIN_WAIT_2"

"TIME_WAIT"
?Recevoir FIN
!Envoyer ACK

?CLOSE
?Timeout

"CLOSE_WAIT"
?CLOSE
!Envoyer FIN
"LAST_ACK"
!Recevoir ACK

851

Transfert des donnes en TCP


Structuration des changes par octets ("stream").

Les blocs doctets conscutifs transmettre sont placs dans des segments TCP.
TCP dcide de lenvoi dun segment indpendamment des primitives dmission
en effectuant du groupage ou de la segmentation pour envoyer un segment
de taille optimale compte tenu de la gestion des fentres de contrles de flux et
de congestion.

Contrle de squence

Chaque octet est numrot sur 32 bits.


Chaque segment porte le numro de squence du premier octet de donnes.

Contrle de flux

Bas sur le crdit variable (taille de la fentre window size)


Crdit s'exprimant en nombre d'octets.

Contrle d'erreur

Le contrle d'erreur utilise une stratgie d'acquittement positif avec


temporisateur et retransmission.
Son originalit rside dans l'algorithme de calcul de la valeur du temporisateur
de retransmission : la valeur du temporisateur arm lors d'une mission dpend
du dlai d'aller-retour mesur pendant une priode rcente.
852

Exemple dchange de segments


connexion/deconnexion
connexion/deconnexion en TCP
Segm ent 1

S Y N 250:250 (0)
S Y N 10000:10000 (0)
A C K 251

Segm ent 3

251: 260 (10)


A C K 10001
10001: 11000 (1000)
A C K 261

Segm ent 5

Segm ent 4

F IN 261: 261 (0)


A C K 11001
A C K 262
F IN 11001: 11001 (0)
A C K 262

Segm ent 8

Segm ent 2

Segm ent 6
Segm ent 7

A C K 11002

853

TCP "Transmission Control


Protocol"
Protocol"

Approfondissements TCP

854

TCP: Approfondissements
1) Contrle de congestion
Contrle de congestion ralis par TCP : mais qui sapplique en fait au
niveau rseau IP (cest IP qui devrait faire ce travail).
Congestion TCP : une solution base sur un contrle d'admission dans IP
TCP ne doit pas soumettre un trafic suprieur celui de IP.
Sil y a des pertes de segments TCP suppose quelles sont dues de la
congestion (pas au bruit) => TCP ralentit son dbit.

Une solution conduire en parallle avec le contrle de flux.


Dbit

Dbit destinataire

Dbit metteur

Dbit metteur

Dbit destinataire

Dbit destinataire

Dbit metteur

Dbit metteur

Dbit destinataire

Aucun
contrle

Contrle
de congestion

Contrle
Contrle
de flux de flux et de congestion

Dbit possible
de IP
Domaine de
contrle

=> Une fentre pour le contrle de flux.


=> Une fentre pour le contrle de congestion.
=> La fentre rellement utilise : la plus petite des deux fentres.
855

Dimensionnement de la fentre de
congestion : dpart lent 'slow start'
Recherche du dbit maximum du rseau en TCP Tahoe
A) Dmarrage avec croissance exponentielle.
Fentre de congestion initiale de taille 1 : un segment de MSS octets.
A chaque acquittement positif (transmission russie): on double la taille
de la fentre en transmettant 1, 2 , 4, 8, segments.
Jusqu un chec de transmission (pas dacquittement) pour une valeur
cwnd: on considre quil est du au phnomne de congestion.
On repart en dmarrage lent jusqu la moiti de la valeur soit cwnd/2.

B) Recherche fine avec une croissance linaire.


Phase baptise vitement de congestion: congestion avoidance.
Lorsque la fentre atteint la moiti de sa taille: reprise de la croissance
en augmentant par incrments de 1.

Optimisation : ne pas refaire la phase de slow start (TCP


Reno).
856

Evolution de la fentre de
congestion (('slow start):TCP Tahoe
Taille de la fentre
de congestion

cwnd

cwnd/2
cwnd/4

Slow start Timeout Slow start


Congestion
Avoidance

Timeout

Temps

857

Evolution de la fentre de
congestion ('slow
start): TCP Reno
(
Taille de la fentre
de congestion

CW

CW/2
CW/4

Slow start Timeout Congestion Timeout


Avoidance

Temps

858

2) Retransmission rapide
Fast Retransmit / Fast recovery
Technique des acquittements rpts : pour signaler un
segment hors squence.
Une astuce pour remplacer un acquittement ngatif
Deux acquittements positifs peuvent apparatre sur simple
dsquencement par le rseau.

Si on a trois acquittements dun segment : indication forte


quun segment qui suit est perdu.
Retransmission du segment sans attendre le dlai de
garde => Solution baptise fast retransmit.
Ne pas ramener la taille de la fentre de congestion 1
pour un dmarrage lent slow start : il y a du trafic couler
Solution baptise fast recovery.
Autre solution : acquittements ngatifs dans la zone option
859
(TCP avec SACK).

3) Adaptation du temporisateur aux


temps de rponse
Notion de RTT Round Trip Time : mesure du
dlai d'aller retour (mission dun segment =>
rception de son acquittement positif).
Notion de RTO Retransmission Timeout :
adaptation des dlais de garde en fonction des RTT.
Possibilits de diffrentes formules donnant RTO
en fonction de RTT.
La mthode de base :
RTT mesur : de prfrence sur chaque segment.
RTT liss : sRTT = (1 g) * sRTT + g * RTT
Valeur de RTO le temporisateur : RTO = 2 * sRTT
860
Problme: ne tient compte que de la moyenne de RTT.

La mthode de Karn/
Karn/Partridge
Utiliser la moyenne et la variance.
RTT courant : ne pas utiliser les mesures de RTT lors dune
retransmission et doubler le RTO chaque retransmission car
on est probablement en congestion (ide de retard binaire).
RTT liss : sRTT = (1 g) * sRTT + g * RTT
Ecart type du RTT standard deviation cart par rapport la
moyenne
D = (1 h) * D h * | RTT sRTT |
Valeurs recommandes pour les coefficients g et h:
g = 0.125 : prise en compte sur une moyenne de 8 mesures.
h = 0.25 : prise en compte sur une moyenne de 4 mesures.
Dfinition de RTO le temporisateur : RTO = sRTT + 4 D
Plus RTT est grand et plus grande est sa variation : plus
long est le temporisateur.
Autre mthode : Jacobson/Karels.

861

4) Gestion de taille des segments


'Silly Window Syndrome
Situation : traitement lent du rcepteur.
R ouverture lente de petits crdits dmission.
Sur ces petits crdits => mission de petits segments.
Syndrome de la fentre ridicule (silly) => Mauvaise
utilisation du rseau car les messages sont de petite taille.

Solutions : Le groupage (Algorithme de Naggle)


Le rcepteur ne transmet que des crdits importants.
Une fraction significative de lespace total des tampons rcepteurs.

Lmetteur diffre les missions


Tant qu'un segment de taille suffisante mettre nest pas runi
(dfinition dun petit segment : relativement au MSS du destinataire).
Ou tant qu'il y a des donnes non acquittes.
862

5) Protection contre le passage


zro des numros de squence
Passage par zro (Wrap Around) : Twrap =231/dbit binaire
Ethernet (10Mbps): Twrap = 1700 s (30 minutes)
Ethernet Gigabit (1 Gbps): Twrap = 17 secs.
Si la dure de vie dans le rseau (MSL Maximum Segment Life) est
possiblement suprieure on a un risque dinterfrence entre numros.
PAWS : Protection against wrapped sequence numbers.
Utilisation de loption timestamp : estampillage TSVAL 32 bits pour la
mesure correcte des dlais daller retour dans la zone option.
A partir dune horloge la milliseconde: repassage par 0 en 24 jours.
Solution: combinaison du numros de squence habituel et de lestampille
TSVAL pour obtenir un numro sur 64 bits : comparaison des valeurs sur 64
bits.
Le problme de repassage par zro ne peut se poser que sur 24
jours: acceptable en relation avec la dure de vie des segments.
863

Conclusion TCP
Un protocole de transport fiable efficace.
Indispensable dans le domaine des rseaux basse et
moyenne vitesse.
Des optimisations nombreuses : versions Tahoe, Reno et
New-Reno, Sack TCP toujours tudies.

Problmes poss
Passage aux rseaux gigabits en TCP.
Diffrentes expriences : modifications, dimensionnement pour
apporter des rponses cette question.

Support des applications multimdia


Ncessite la dfinition de nouveaux protocoles de transports qui
respectent les besoins de qualit de service de ces applications (RTP
,....)
864

Exemple des protocoles et services


de transport INTERNET

Un service pour TCP et UDP:


les sockets

865

Gnralits interface "socket


"socket"
socket"
Dfinition en 1982 : une interface de programmation
d'applications rseaux (API) pour la version UNIX BSD.
Existence de plusieurs autres interfaces rseaux : TLI,
NETBEUI, ...
Objectifs gnraux
Fournir des moyens de communications entre processus (IPC)
utilisables en toutes circonstances: changes locaux ou rseaux.
Cacher les dtails d'implantation des couches de transport aux
usagers.
Si possible cacher les diffrences entre protocoles de transport
htrognes sous une mme interface (TCP, Novell XNS, OSI)
Fournir une interface d'accs qui se rapproche des accs fichiers pour
simplifier la programmation => En fait des similitudes et des
diffrences importantes entre programmation socket et fichier.
866

Choix de conception des sockets


Une "socket" (prise) est un point d'accs de service
pour des couches transport : essentiellement TCP/UDP mais
aussi d'autres protocoles (OSI, DECNET...).
Une socket est analogue un objet (de communication)
Un type:
Pour quel protocole de transport est-elle un point d'accs de service?
Quelle est la smantique de l'accs au service?

Un nom: identifiant unique sur chaque site (en fait un entier 16 bits).
Un ensemble de primitives : un service pour l'accs aux fonctions de
transport.
Des donnes encapsules :
un descriptif (pour sa dsignation et sa gestion)
des files d'attente de messages en entre et en sortie.
867

Dsignation des sockets


Identifier compltement une socket dans un rseau et
pour une couche transport : un couple NSAP,TSAP.
Exemple Internet TCP: Numro de port , Adresse IP
Gestion par lIANA
A) Numros de ports rservs : numros de ports rservs
pour des services gnraux bien connus ou "well-known
ports" (numros infrieurs 1023).
Exemples ports UDP : Echo server: 7, TFTP: 69.
Exemples ports TCP : Telnet: 23, DNS: 53, HTTP: 80.

B) Numros de ports enregistrs (registered): (entre


1024 et 49151) pour des applications ayant fait une demande.
C) Numros de ports privs (private) (dynamiques) :
les autres numros entre 49152 et 65535 qui sont attribus
868
dynamiquement aux sockets utilisateurs (clients).

Choix de conception des sockets


avec TCP
TCP est un transport fiable en connexion et en mode
bidirectionnel point point.
Une socket TCP peut tre utilise par plusieurs
connexions TCP simultanment.
Une connexion est identifie par le couple d'adresses
socket des deux extrmits.
Un change TCP est orient flot d'octets.
Les zones de donnes qui correspondent des envois successifs ne sont
pas connues la rception.
Pour optimiser TCP peut tamponner les donnes et les mettre
ultrieurement.
L'option "push" qui permet de demander l'mission immdiate d'un
segment.
L'option "urgent" qui devrait permettre l'change rapide de donnes
869
exceptionnelles avec signalement d'arrive.

Choix de conception des sockets


avec UDP
UDP est une couche transport non fiable, sans
connexion, en mode bidirectionnel et point
point.
L'adresse UDP d'une socket (Numro de port UDP
, Adresse IP) sur l'Internet la mme forme que celle
d'une socket TCP.
Mais les deux ensembles d'adresses sont
indpendants : une communication UDP na rien
voir avec une communication TCP.
Un change UDP est sans connexion (change de
datagrammes).
Les zones de donnes qui correspondent des envois
successifs sont respectes la rception.
870

Exemple des protocoles et services


de transport INTERNET

Les primitives de l'interface


socket
Exemple en langage C en UNIX.
871

Primitive socket
Permet la cration d'un nouveau point d'accs de
service transport:
dfinition de son type.
allocation de l'espace des donnes.

Trois paramtres d'appel

Famille d'adresses rseaux utilises locale, rseau IP, rseau OSI ...
Type de la socket (du service) smantique de la communication.
Protocole de transport utilis.

Un paramtre rsultat: le numro de descripteur socket.


Profil d'appel de la primitive en C
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
int socket (int famille, int type, int protocole);

872

Approfondissement des paramtres


de la primitive socket
Paramtre Famille
AF_UNIX
AF_INET
AF_ISO
....

:
:
:

Communication locale (i-node)


Communication Internet
Communication ISO

Paramtre Type
SOCK_STREAM : Flot d'octets en mode connect
(ne prserve pas les limites de l'enregistrement)
SOCK_DGRAM : Datagramme en mode non connect
(prserve les limites de l'enregistrement)
SOCK_RAW : Accs aux couches basses.
SOCK_SEQPACKET : Format structur ordonn
(protocoles diffrents de l'Internet)

Paramtre Type de protocole

Valeur
IPPROTO_TCP
IPPROTO_UDP
IPPROTO_ICMP
IPPROTO_RAW

Relation avec le paramtre type


SOCK_STREAM
SOCK_DGRAM
SOCK_RAW
SOCK_RAW
873

Primitive bind
Primitive pour l'attribution d'une adresse de socket un
descripteur de socket.
Nest pas ralis lors de la cration du descriptif (socket).
Un serveur (qui accepte des connexions) doit dfinir sur quelle adresse.
Un client (qui ouvre des connexions) n'est pas forc de dfinir une
adresse (qui est alors attribue automatiquement).

Profil d'appel de la primitive

#include <sys/types.h>
#include <sys/socket.h>
int bind ( int s,
struct sockaddr_in *mon_adresse,
int longueur_mon_adresse
)

Trois paramtres d'appel

Numro du descriptif de Socket (s).


Structure de donne adresse de socket Pour internet type sockaddr_in.
874
Longueur de la structure d'adresse.

Approfondissement
concernant la primitive bind
Descripteur d'adresse de socket
#include <sys/socket.h>
struct sockaddr_in {
short
u_short
struct in_addr
char

sin_family;
sin_port;
sin_addr;
sin_zero[8]; };

Un exemple d'excution de "bind" pour les


protocoles Internet.
struct servent *sp
struct sockaddr_in sin

/* Pour connatre le numro de port */


if((sp=getservbyname(service,"tcp")==NULL)
/* cas d'erreur */
/* Remplissage de la structure sockaddr */
/* htonl convertit dans le bon ordre */
/* INADDR_ANY adresse IP du site local */
sin.sin_family= AF_INET;
sin.sin_port = sp -> s_port;
sin.sin_addr.s_addr=htonl(INADDR_ANY):
/* Cration d'une socket internet */
if ((s=socket(AF_INET,SOCK_STREAM,0))<0)
/* cas d'erreur */
/* Attribution d'une adresse */
if (bind(s, &sin, sizeof(sin)) < 0)
/* cas d'erreur */

875

Primitive listen
Utilis dans le mode connect lorsque plusieurs
clients sont susceptibles d'tablir plusieurs
connexions avec un serveur.
Indique le nombre d'appel maximum attendu
pour rserver l'espace ncessaire aux descriptifs des
connexions.
La primitive listen est immdiate (non bloquante).
Profil d'appel : int listen (int s , int max_connexion)
s : Rfrence du descripteur de socket
max_connexion : Nombre maximum de connexions.
876

Primitive accept
La primitive accept permet de se bloquer en attente d'une nouvelle
demande de connexion (donc en mode connect TCP).
Aprs accept, la connexion est complte entre les deux processus.
Le site qui met accept excute une ouverture passive.
Pour chaque nouvelle connexion entrante la primitive fournit un
pointeur sur un nouveau descriptif de socket qui est du mme modle que
le descritif prcdemment cr.
Profil d'appel
#include <sys/types.h>
#include <sys/socket.h>
int accept ( int ns,
struct sockaddr_in *addr_cl,
int lg_addr_cl)
ns
: Rfrence nouvelle socket
addr_cl
: L'adresse du client.
lg_addr_cl: La longueur de l'adresse.
877

Approfondissement concernant les


primitives listen et accept
Exemple de code UNIX : pour un serveur qui accepte des
connexions successives et qui cr un processus pour traiter
chaque client.
#include <sys/socket.h>
/* Adresse socket du client appelant */
struct sockaddr_in from;
quelen = ... ;
if (listen (s, quelen) <0 )
Cas d'erreur
/* On accepte des appels successifs */
/* Pour chaque appel on cr un processus */
if((g=accept(f,&from,sizeof(from)))<0)
Cas d'erreur
if ( fork ...
/* Processus traitant de connexion*/

878

Primitive connect
La primitive connect (bloquante) permet un client de demander
l'ouverture (active) de connexion un serveur.
L'adresse du serveur doit tre fournie.
La partie extrmit locale relative au client est renseigne
automatiquement.
Ensuite le client ne fournit plus l'adresse du serveur pour chaque
appel mais le descriptif de la socket (qui contient ladresses serveur).
Profil d'appel
#include <sys/types.h>
#include <sys/socket.h>
int connect ( int s,
struct sockaddr_in *addr_serv,
int lg_addr_serv)
s
: La rfrence de la socket
addr_serv
: L'adresse du serveur.
lg_addr_serv : La longueur de l'adresse.
879

Primitives send,
send, recv
Les primitives send, recv (bloquantes) permettent
l'change effectif des donnes.
Le profil d'appel est identique celui des primitives
read et write sur fichiers avec un quatrime paramtre pour
prciser des options de communications.
Profil d'appel
#include <sys/types.h>
#include <sys/socket.h>
int send (int s, char *zone,
int lg_zone, int options_com)
int recv (int s,char *zone,
int lg_zone, int options_com)
s
: La rfrence de la socket
zone
: La zone changer.
lg_zone
: La longueur de la zone.
options_com
: Les options (donnes urgentes , ....)

880

Primitives sendto,
sendto, recvfrom
Les primitives sendto, recvfrom permettent l'change des donnes dans le mode
non connect UDP.
On doit prciser l'adresse destinataire dans toutes les primitives sendto et
l'adresse metteur dans les recvfrom.
Profil d'appel
#include <sys/types.h>
#include <sys/socket.h>
int sendto (int s,
char *zone,
int lg_zone,
int options_com,
struct sockaddr_in *addr_dest,
int lg_addr)
int recvfrom (int s,
char *zone,
int lg_zone,
int options_com,
struct sockaddr_in *addr_emet,
int *lg_addr)
addr_dest : L'adresse du destinataire.
addr_emet : L'adresse de l'metteur.
lg_addr
: La longueur de l'adresse.

881

Primitives shutdown,
shutdown, close
Shutdown permet la terminaison des changes sur
une socket suivi de la fermeture de la connexion :
Profil dappel : int shutdown(s , h); Pour la socket s.
h = 0 : lusager ne veut plus recevoir de donnes
h = 1 : lusager ne veut plus envoyer de donnes
h = 2 : lusager ne veut plus ni recevoir, ni envoyer.

Close : Permet la fermeture d'une connexion et la


destruction du descriptif.
Profil d'appel
#include <sys/types.h>
#include <sys/socket.h>
int close ( int s )
882

Rsum : Interface socket


Fonctionnement en TCP
- Serveur.
socket
bind
listen
accept
recv, send
close
- Client.
socket
connect
recv, send
close
Fonctionnement en UDP
socket
recvfrom, sendto
close
883

Bibliographie
Niveau transport
A.S. Tannenbaum "Computer Networks" Prentice
Hall
W.R. Stevens "TCIP/IP Illustrated, The
protocols" , Addison Wesley
Internet Web : multiples cours TCP.

884

Vous aimerez peut-être aussi