Cours Réseaux

publicité
Ecole Supérieure des Procédés Electroniques et Optiques
RÉSEAUX
Gérard JACQUET
Christophe LÉGER
2002–2003
Chapitre 1 : Présentation
1.1) Brève histoire de l’informatique
1.1.1) Evolution du paysage informatique
Décrire l’évolution passée est sans doute beaucoup plus aisé que de prévoir ce que va
devenir dans les années futures l’informatique et la communication de données qui lui est
étroitement liée.
Année
->1980
1980-87
1987-94
1995
1996
2002
Entreprises
Ordinateur central
+
terminaux
alphanumériques
Ordinateur centralisé en
gestion,
micro-ordinateurs en
production,
communications point à
point
Développement des
communications
intra-entreprises
(réseaux locaux)
ordinateurs puissants +
micro-ordinateurs
Particuliers
Inexistant
Performances
calcul : 1
vitesse liaison :
600bits/s
taille fichiers :
1 ko
Prix
20
calcul : 10
vitesse liaison :
9600b/s
taille fichiers :
10ko
5
Evolution
vers du graphique
évolué
calcul : 100
vitesse liaison :
10 Mb/s
taille fichiers :
1Mo
1
Communications
inter-entreprises
(Internet...)
Accès aux
communications
avec l’extérieur
(Internet)
calcul : 1000
vitesse : 10
Mb/s
taille fichiers :
10Mo
Développement des
produits commerciaux
pour entreprises
(Intranet)
Explosion des
communications :
facturation,
saturation
Commerce en ligne
Serveurs/Clients Web
Convergence
Téléphonie /
informatique
Micro-ordinateurs
interface texte ou
graphique simple
calcul : 1000
vitesse :
10Mb/s
taille : 10Mo
calcul : 5000
vitesse : 1Gb/s
taille : 600Mo
1
1
1
Tableau 1 : Evolution approximative de l'informatique (en France)
3
A l’heure actuelle, le domaine des communications de données est devenu une branche
industrielle à part entière. De nombreuses entreprises se sont créées ou ont tourné leurs
activités vers cette branche. Les besoins sont encore énormes : augmentation des
vitesses de communication, multiplication des services, réduction des coûts.
Il est très difficile de prédire ce que sera l’informatique de demain :
• Des systèmes d’exploitation et des applications répartis sur tout un réseau, comme
le laisse envisager Java de SUN.
• Des ordinateurs sans disque (NC : Network Computer) de faible coût (3000F) ne
pouvant fonctionner qu’en réseau.
Une certitude, les communications entre ordinateurs seront prépondérantes. Mais ceci ne
pourra se faire qu’en liaison avec les télécommunications (facturation et débit entre autres)
qui sont pour l’instant le facteur limitant.
1.1.2) Evolution des besoins
Pour les entreprises, l’échange rapide d’informations pourra permettre :
• une gestion automatisée de production (zéro défaut, zéro panne) grâce à des
réseaux internes (réseaux locaux),
• un suivi de bout en bout des produits (zéro délai, zéro stock) grâce aux réseaux
internationaux,
• des communications efficaces (zéro papier).
Un exemple ancien : MAP (Manufacturing Automation Protocol), réseau global vendeurfournisseur (GM).
En ce qui concerne les particuliers, le développement de nombreuses applications
constitue un des enjeux économiques (avec le multimédia) des années à venir
relativement à l’équipement des foyers et à la consommation d’unités de communication :
• TV interactive,
• services extérieurs (remplacement du minitel...).
1.2) Communications des données
Dans le domaine des communications de données plusieurs alternatives existent et sont
utilisées au gré des évolutions technologiques.
1.2.1) Liaisons analogiques / numériques
L’information peut transiter sous différentes formes.
• Analogique : télévision, radio, 4-20 mA...
• Numérique : liaison RS 232, SCSI...
• Mixte : téléphone, fax.
1.2.2) Liaisons point à point / bus
Point à point : seules deux machines sont reliées (exemple : liaison RS232).
Bus : plusieurs machines sont reliées ensemble et peuvent communiquer chacune à leur
tour (exemple : bus IEEE 488).
Les réseaux informatiques utilisent ces deux types de liaison en fonction de la technologie
choisie pour les échanges.
4
1.2.3) Environnement de communication
La communication de données peut s’effectuer dans des conditions très différentes :
• à l’intérieur de bâtiments ou à l’extérieur,
• dans des bureaux ou dans un atelier à l’environnement très perturbé.
CELLULE
ATELIER
USINE
ETUDES
DIRECTION
On parle de :
- Réseaux locaux informatiques principalement dans le cas des bureaux.
- Réseaux locaux industriels pour ce qui concerne les ateliers.
- Réseaux de terrain pour ce qui concerne les ateliers et l’extérieur dans l’enceinte de
l’entreprise.
La communication longue distance est le domaine des réseaux de télécommunication.
Ordinateurs
Usine
Ordinateur
Atelier
Ordinateur
Cellule
TERRAIN
MOCN
Ordinateur
Atelier
Ordinateur
Cellule
Ordinateur
Cellule
Contrôleur
de process
Automate
programmable
Asservissement
Ordinateur
Cellule
Robot
Convoyeur
Figure 1 : Le modèle d'usine intégrée.
1.3) Fonctions d’un réseau
1.3.1) Communication
•
•
Echange de messages humains : messagerie (locale..., internationale),
Echange de messages entre machines : chaînes de production,
5
•
Echange de données : transfert de fichiers.
1.3.2) Utilisation de ressources communes
Stockage des données :
• augmentation de la capacité de stockage,
• facilité de partage,
• facilité de gestion,
• travail sur des postes différents,
• sécurité si multi-copie.
Exécution de programmes :
• augmentation de la puissance de calcul (Terminaux, micro <-> Cray, multiprocessing),
• compatibilité (Sun, IBM, PC....),
• délocalisation de logiciels (CAO, gestion)
Impression des documents :
• économie des moyens,
• confort.
Accès à des bases de données :
• partage des données,
• mise à jour,
• suivi des produits.
1.4) Caractéristiques des réseaux
1.4.1) Taille et vitesse des réseaux
LAN
Vitesse
WAN
100 Mb
Local Area Network
Wide Area Network
Réseau
TV
Image
TV
10 Mb
DAN
BAN
CAN
Departemental
MAN
Metropolitan
WAN
1 Mb
Building
Transmission numérique
Campus
1 km
LAN : câblage dédié.
WAN : réseaux de télécommunication
Figure 2 : Taille des réseaux.
6
100 Kb
1 km
Téléphone
100 km
Figure 3: Vitesse des réseaux.
Taille
Type
Exemples
Instrumentation Capteur/actionlégère
neur de contrôle
(local)
commande
Surveillance
Alarmes
Sécurité
(global)
Vision
Instrumentation
Radars
lourde
Sonars
(local)
Bureautique
Terminaux,
légère
postes de
(local)
travail (textes)
Gestion et base Terminaux de
de données
gestion d'image
(global)
transfert fichiers
Interactions
Voix
humaines
(global)
Phonie
Taille des
structures de
données
Ordre de
grandeur
des délais
1
à
100 bits
1
à
100 bits
10 Mbits
(vidéo)
10 ms (période
d'échantillonnage)
10 ms (temps
de réponse par
avalanche)
1 "image"
toutes les 50
ms
1
à
300 Kbits
30
à
300 Kbits
2 Kbits
Débit par
source
Fiabilité
Maximum 200
Kbits/s
Moyenne
(erreurs
acceptées)
10
10
totale
1s
Maximum 200
Kbits/s
(si avalanche)
200 Kbits/s
à
200 Mbits/s
Moyen
1 à 30 Kbits/s
1 à 10 s
Moyen
1 à 300 Kbits/s
10
totale
64 Kbits/s
constant
Erreurs
acceptées
10 ms
(variations ≤ 1
ms)
Faible
Moyenne
10
Tableau 2 : Types de trafic en milieu industriel.
1.4.2) Adressage
Le but d’un réseau étant de faire communiquer ensemble plusieurs entités, chacune
d’entre elles doit être identifiée. De ce fait, chaque utilisateur, chaque poste de travail doit
avoir un ou plusieurs identificateurs propres appelés « adresse ».
Il existe plusieurs types d’adresses :
•
littérale :
exemples :
Nom d’utilisateur, nom de machine, nom de réseau.
[email protected]
einstein.espeo.univ-orleans.fr
•
numérique :
numéro d’utilisateur (attribué par le responsable réseau),
numéro de machine (attribué par le responsable réseau),
numéro d’interface machine (attribué par l’IEEE),
numéro de réseau (attribué par le NIC : Network Information
Center).
192.2.3.28
e0.26.ff.36.56.03
exemples :
1.4.3) Caractéristiques techniques
D’autres caractéristiques interviennent lors du choix d’un réseau. On parle de :
• Fiabilité : panne, taux d’erreurs,
• Evolutivité,
• Sécurité : accès contrôlé, accès détectable, confidentialité,
• Facilité de gestion,
• Compatibilité.
7
Nous verrons plus en détail ces caractéristiques dans la suite du cours, en particulier dans
le chapitre 3.
1.5) Objectif du cours
Ce cours présente une étude générale des réseaux qui pourra s’appliquer aux différents
types de réseaux. Pour cela, il sera centré sur une description des fonctionnalités (modèle
en couches). Pour chaque étape les implémentations les plus connues seront présentées.
Le domaine des réseaux locaux informatiques servira le plus souvent de support. Les
réseaux de terrain, qui sont en général une version simplifiée, du point de vue des
protocoles, des réseaux informatiques, seront aussi abordés. Les réseaux de
télécommunication, quoique étant un maillon essentiel de l’interconnexion des réseaux,
dépassent le cadre du cours. Quoi qu’il en soit, les techniques mises en œuvre sont très
souvent similaires.
8
Chapitre 2 : Modèles et normalisation
2.1) Principe d’un modèle en couches
2.1.1) Définition
La mise en œuvre de systèmes complexes, comme peuvent l’être les réseaux
informatiques, nécessite de mettre en place des outils pour spécifier, réaliser, comprendre
ou dépanner. Le terme de « modèle » est en général utilisé pour ce qui concerne les
réseaux.
Le modèle le plus connu (voire l’unique) est le modèle en couches. Il peut se résumer de
la manière suivante :
Modèle en couches :
modularité
+ restriction sur les communications verticales
+ possibilité de communications horizontales
2.1.2) Modularité
C’est la décomposition d’un problème complexe
en plusieurs sous–problèmes :
• simplification du problème,
• répartition des taches,
• gestion des communications par entrées–
sorties identifiées.
1
Pb
3
2
4
6
5
2.1.3) Communications verticales
La restriction sur les communications verticales
induit un aspect hiérarchique :
•
•
1 seul type de communication vers le bas :
une couche utilise les services offerts par la
ou les couches immédiatement inférieures.
Elle effectue des demandes de services.
1 seul type de communication vers le haut :
une couche fournit des services à la ou les
couches immédiatement supérieures.
9
2.1.4) Communications horizontales
Il existe une seule manière de
communiquer avec la même couche d’un
autre système.
Le langage de communication entre
couches de même niveau doit être le
même (protocole).
2.1.5) Schéma global
Dans un modèle en couches de réseau, la
communication entre deux machines est
représentée par une liaison globale
correspondant à autant de liaisons
virtuelles que de couches.
En fait, seule une couche (le médium)
assure une liaison réelle.
2.1.6) Exemple d’une modélisation en couche : le transport du courrier
Exprime la requète
Envoyer pièce n° 130
Responsable atelier
Responsable atelier
Formule la requète
Prière
envoyer pièce n° 130
Salutations
Secrétaire
Secrétaire
Choix du mode de
transmission :
lettre,
radio, téléphone
Service
expédition
réception
Service
expédition
réception
Choix du mode de
transport :
avion, bateau,
train
Poste
Poste
Choix de l’itinéraire :
Dakar-Londres
Londres-Paris
Mise
en sac
Transport des
lettres
10
Service
postal
aéroport
Service
postal
aéroport
Service
postal
aéroport
Manutention
aéroport
Manutention
aéroport
Manutention
aéroport
avion
avion
avion
DAKAR
LONDRES
PARIS
2.2) Le modèle O.S.I.
2.2.1) Présentation du modèle
Le modèle O.S.I. (Open System Interconnection) de l’I.S.O. (International Standardization
Organization) est une architecture générale applicable à un réseau.
C’est un concept hiérarchisé d’organisation (matériel et logiciel). Il existe des produits
respectant ce concept, mais il n’y a pas de correspondance directe avec des produits
commerciaux.
Description de chaque couche.
7
Couche
application
6
Couche
présentation
Couche Session : gestion d’une session
de connexion (ouverture, fermeture,
reprise sur incident). Connexion : temps
de communication entre 2 observateurs.
5
Couche
session
Couche Transport : contrôle de bout en
bout de la transmission : rassemble les
paquets, élimine ceux en trop...
4
Couche
transport
Couche Réseau : interconnexion entre
réseaux physiquement hétérogènes,
choix du chemin entre deux utilisateurs
(adresses).
3
Couche
réseau
Couche Liaison : gestion de l’accès au
médium, contrôle des erreurs (travail sur
un train d’information).
2
Couche
liaison
Couche Physique : définition des
interfaces
électriques,
mécaniques,
transmission des bits sur le circuit de
communication.
1
Couche
physique
Couche Présentation : mise en forme,
codage, compression, cryptage des
données utilisateurs.
Médium : câbles, fibres optiques.
TRANSMISSION
Couche Application : interface d’accès
aux
services
réseaux
pour
les
applications ou les utilisateurs. Exemple :
transfert de fichiers (FTP).
TRAITEMENT
Application
médium
11
2.3) « Modèle » I.E.E.E. du comité 802
2.3.1) Présentation du modèle
Le modèle du comité 802 de l’I.E.E.E. ne décrit que les couches basses de la
communication par réseau. Il concerne uniquement les couches 1 et 2 du modèle O.S.I.
mais il définit deux sous-couches relativement à la couche « Liaison » de l’ISO.
Sous couche LLC (Contrôle de liaison logique) :
Elle décrit les procédures d’adressage et de mise
en oeuvre de la liaison.
Logical
Link
Control
Sous couche MAC (Contrôle d’accès au
médium) :
Elle réalise la gestion des accès : exclusion,
priorité, erreur, collision.
Medium
Access
Control
Couche PS (Signal Physique) :
Elle est équivalente à la couche Physique O.S.I.
Physical
Signal
Interface MAU (unité d’accès au médium) :
elle vient se rajouter entre le médium et la couche
PS pour définir la connexion.
Médium
Medium
Access
Unit
médium
2.3.2) Normalisation de l’I.E.E.E.
A partir de ce découpage, l’I.E.E.E. a constitué un ensemble de normes. Les principales
différences se situent au niveau MAC où plusieurs normes ont été définies, chacune
correspondant à un fabricant ou groupe de fabricants.
De plus, l’utilisation d’une norme au niveau MAC conditionne largement les choix pour la
plupart des autres couches ceci en fonction des offres des constructeurs :
•
•
•
12
IEEE 802.3 ou Ethernet. Mise en place par Xérox et beaucoup d’autres, ce sont des
réseaux à 10 Mbits/s (100 Mbits ou même 1 Gbits dans une nouvelle mise en
œuvre). La méthode d’accès est dite à compétition.
IEEE 802.4 ou Token Bus (jeton sur bus). C’est un réseau industriel créé par GM
(réseau MAP. Les débits sont de 1 Mbits/s, 5 Mbits/s, 10 Mbit/s. Le support est
souvent du coaxial type TV.
IEEE 802.5 ou ISO 8802.5 ou Token Ring (jeton sur anneau). Défini à l’instigation
d’IBM, il permet des débits de 1 Mbits/s, 4 Mbits/s, 16 Mbit/s.
2.4) Services et protocoles
2.4.1) Définitions
a) Service
Un service correspond à un dialogue vertical. Lors de ce dialogue, on dit que :
• une couche N fournit un service à la couche N+1,
• une couche N utilise un service de la couche N-1.
Exemple : transmission de message, ouverture d’une connexion
Remarque : celui qui utilise le service ne sait pas comment il est réalisé (principe de
transparence). Une entité peut fournir un service à plusieurs utilisateurs (SAP : Service
Access Point).
L’unité d’échange s’appelle une SDU.
SDU : Service Data Unit, message de service entre deux couches.
b) Protocole
Un protocole correspond à un dialogue horizontal entre deux couches de même type pour
deux machines différentes. C’est une règle de dialogue entre deux entités appartenant à
une couche de même type.
L’unité d’échange est une PDU.
PDU : Protocol Data Unit : message de protocole (à l’intérieur d’une couche).
Remarque : on peut changer de protocole sans changer de service.
2.4.2) Fonctionnement
a) Fonctionnement global
On peut le décrire en 3 étapes de base :
1. Une entité de niveau N reçoit une SDU de la part de la couche N+1,
2. Elle doit transmettre une PDU à l’entité distante de même niveau,
3. Pour cela elle émet une SDU pour utiliser un service de la couche N-1.
Ensuite, le même mécanisme est recommencé, jusqu’à arriver à la couche la plus basse :
le médium, qui réalise effectivement l’échange de données.
(N)SDU -> (N)PDU -> (N-1)SDU ->..... -> médium
Un mécanisme inverse est mis en jeu lors de la réception d’une (N)PDU, la couche
concernée transmet à la couche supérieure un service sous la forme d’un bloc de
données :
(N-1)PDU -> (N-1)SDU -> (N) PDU...
13
Site A
Site B
Couche N+1
Protocole de niveau
N+1
(N+1) PDU
(N) SDU
Service offert
à N+1
(N) SDU
Couche N
Procédure
(N)
du site A SAP
Procédure
(N)
du site B
Protocole de niveau
N
(N) PDU
Appels au service N-1
b) Dénomination des primitives de service
Il est nécessaire de définir des notations pour comprendre le fonctionnement des
échanges.
Le formalisme est commun quelles que soient les couches, il est réalisé à l’aide de
primitives.
Notation :
(name)_(service)_(command)
nom de la
couche
concernée
•
•
•
•
type de
service
demande de service :
transmission d’une demande :
réponse à une transmission :
réponse à une demande :
type de
commande
******_******_REQUEST
******_******_INDICATION
******_******_RESPOND
******_******_CONFIRM
RESPOND et CONFIRM ne sont pas obligatoires. Ils dépendent du type de service
demandé (avec ou sans accusé).
N+1
N_CONNECT
REQUEST
1
4
N
14
N+1
N_CONNECT
CONFIRM
N_CONNECT
RESPOND
Protocole
PDU
3
2
N
N_CONNECT
INDICATION
c) Exemple de transfert de données
PDU
UTILISATEUR 1
UTILISATEUR 2
(1) A_RELEASE req
(13) A_RELEASE ind
RLRQ
APPLICATION
(2) S_RELEASE req
APPLICATION
(12) S_RELEASE ind
DN
SESSION
(3) T_DATA req
SESSION
(11) T_DATA ind
DT
TRANSPORT
(4) N_UNITDATA req
TRANSPORT
(10) N_UNITDATA ind
DT
RÉSEAU
(5) L_DATA req
RÉSEAU
(9) L_DATA ind
UI
LLC
(6) MA_DATA req
(7) MA_DATA conf
LLC
(8) MA_DATA ind
MAC
MAC
(UI/DT/DT/DN/RLRQ)
Figure 4 : Procédure de déconnexion, phase 1.
PDU
UTILISATEUR 1
(13) A_RELEASE conf
UTILISATEUR 2
(1) A_RELEASE resp
RLRE
APPLICATION
(12) S_RELEASE conf
APPLICATION
(2) S_RELEASE resp
FN
SESSION
(11) T_DATA ind
SESSION
(3) T_DATA req
DT
TRANSPORT
(10) N_UNITDATA ind
TRANSPORT
(4) N_UNITDATA req
DT
RÉSEAU
(9) L_DATA ind
RÉSEAU
(5) L_DATA req
UI
LLC
LLC
(6) MA_DATA req
(7) MA_DATA conf
(8) MA_DATA ind
MAC
MAC
(UI/DT/DT/FN/RLRE)
Figure 5 : Procédure de déconnexion, phase 2.
15
PDU
UTILISATEUR 1
UTILISATEUR 2
APPLICATION
APPLICATION
SESSION
SESSION
(1) T_DISCONNECT req
(9) T_DISCONNECT ind
DR
TRANSPORT
(2) N_UNITDATA req
TRANSPORT
(8) N_UNITDATA ind
DT
RÉSEAU
(3) L_DATA req
RÉSEAU
(7) L_DATA ind
UI
LLC
(4) MA_DATA req
(5) MA_DATA conf
LLC
(6) MA_DATA ind
MAC
MAC
(UI/DT/DR)
Figure 6 : Procédure de déconnexion, phase 3.
UTILISATEUR 1
PDU
UTILISATEUR 2
APPLICATION
APPLICATION
SESSION
SESSION
(9) T_DISCONNECT ind
DC
TRANSPORT
TRANSPORT
(1) N_UNITDATA req
(7) N_UNITDATA ind
DT
RÉSEAU
RÉSEAU
(2) L_DATA req
(6) L_DATA ind
UI
LLC
LLC
(3) MA_DATA req
(4) MA_DATA conf
(5) MA_DATA ind
MAC
MAC
(UI/DT/DC)
Figure 7 : Procédure de déconnexion, phase 4.
16
2.4.3) Action sur les données : encapsulation
Lorsqu’elle reçoit des données, chaque couche y rajoute des informations placées en
début et en fin de message.
La N_PDU est incluse dans les arguments de la (N-1)_SDU et devient par ajout des
informations de niveau N-1 une (N-1)_PDU. La réception d’une N_SDU peut entrainer
l’émission de plusieurs N_PDU.
Donnée utilisateur
Application
APDU
PSDU
Présentation
PPDU
SSDU
Session
Transaction
SPDU
TSDU
Transport
Messages
TPDU
NSDU
Réseau
Paquet
NPDU
LSDU
Frames
Liaison
LPDU
MA-SDU
Physique
bit
Figure 8 : Superposition des unités de données (ENCAPSULATION).
2.5) Normes et Organismes
2.5.1) Organismes de normalisation
a) Organismes officiels
• L’ISO (International Standard Organisation).
17
Il regroupe les organismes nationaux de normalisation et établit des normes
internationales. Un comité technique (TC : Technical Committee) est constitué pour
chaque domaine.
•
Le CCITT (Comité Consultatif International pour le Télégraphe et le Téléphone).
Il regroupe les différents organismes de télécommunication. Il définit des normes.
Exemples : V24, X25.
•
L’IEC (International Electrotechnical Commission)
Il traite des normes en électricité et donc par conséquent il intervient dans le domaine
des communications de données.
•
Le CEN (Comité Européen de Normalisation)
Il coordonne en Europe les travaux des organismes nationaux. Dans le domaine des
télécommunications, il agit par l’intermédiaire de la CEPT (Conférence Européenne
des Postes et Télécommunications) et du CENELEC (Comité Européen de
Normalisation ELECtrotechnique).
•
L’AFNOR (Association Française de Normalisation)
Il représente en France L’ISO et en est son interlocuteur.
b) Organismes privés
Dans les pays où les Télécommunications sont privées, certains organismes privés
remplacent les associations de normalisation. Ceci est particulièremennt le cas aux EtatsUnis où deux organisations ont pris une part importante dans les travaux de normalisation.
•
L’EIA
Elle publie des recommandations reférencées RS (RS232...).
•
L’IEEE (Institute of Electrical and Electronical Engineers)
C’est une société savante qui comprend un grand nombre de membres,
particulièrement aux USA. Ses domaines de compétences s’étendent à tous les
aspects de l’électricité et de l’électronique. Elle a joué, via son comité 802, un rôle
prépondérant dans l’établissement des normes sur les couches basses des réseaux
(IEEE 802.3...).
2.5.2) Les organismes de certification
Ils ont un rôle complémentaire des organismes de normalisation. Ils doivent vérifier que
les produits mis sur le marché ou importés sont conformes aux normes en vigueur dans le
pays.
En France, L’ACERLI (Association française des Centres d’Essais pour les Réseaux
Locaux Industriels) réalise cette vérification sur les produits relatifs aux réseaux locaux.
2.5.3) Les principales normes
Sous-couche MAC :
IEEE 802.3 ou ISO 8802.3 : bus avec accès à compétition (CSMA/CD)
IEEE 802.4 ou ISO 8802.4 : jeton sur bus (Token bus)
IEEE 802.5 ou ISO 8802.5 : jeton sur anneau (Token ring)
18
Sous-couche LLC :
IEEE 802.2 ou ISO 8802.2 : définition de la liaison logique
X21 et X21bis pour les réseaux publics.
Couche Réseau :
Service sans connexion (CLNS) : ISO 8473
Service sur connexion : CCITT X25
Couche transport :
Norme du service : ISO 8072
Norme du protocole : ISO 8073
Norme du CCITT : X224
Norme d’adressage : ISO 8348
Couche Session :
Norme du service : ISO 8326
Norme du protocole : ISO 8327
Couche Présentation :
Définition générale : ISO 8822
Norme du protocole : ISO 8823
Couche Application :
ACSE : ISO 8650
MMS : ISO DIS 9506
FTAM : (File Transfert) ISO 8571
Messagerie : CCITT X400
Terminal virtuel : ISO DIS 9040
19
Chapitre 3 : Constitution physique des
réseaux locaux : architecture, câblage
3.1) Topologie, architecture
3.1.1) Différents types de topologie
La topologie d’un réseau local ou son architecture d’interconnexion est la manière dont les
différents postes d’un réseau sont reliés.
a) Bus
Toutes les machines sont reliées au même câble. Les données sont disponibles à chaque
instant pour tous les postes.
b) Anneau
Les données circulent de machine en
machine. Une machine ne voit que la
précédente et la suivante via des liaisons
point à point. Les données sont disponibles
de manière séquentielle sur les postes.
c) Etoile
C’est l’archétype d’une structure centralisée.
Un poste concentre les données, il fait office
d’aiguillage. Une panne du nœud central
bloque toutes les communications. Le nœud
central doit avoir une puissance importante.
21
d) Arbre
C’est une architecture hiérarchisée. Les
données remontent l’arborescence puis
redescendent. Une panne ne compromet le
trafic que des nœuds en dessous.
e) Architectures mixtes
Toutes les combinaisons des précédentes peuvent être faite pour constituer une topologie
plus complexe.
3.1.2) Architecture physique et logique
En fait, il existe une distinction importante entre les connexions électriques (architecture
physique) et le type de fonctionnement, d’échange de données (architecture logique). L’un
et l’autre ont une importance suivant le niveau d’intérêt dans les couches du modèle.
Exemple 1 : Bus physique - Anneau logique
1
2
3
4
5
Les échange de données se font dans l’ordre suivant 1→2→3→4→5→1.... (anneau)
Exemple 2 : Arbre physique - Bus logique
Les données sont systématiquement
propagées dans toutes les branches de
l’arbre.
22
3.2) Caractéristiques des réseaux
Suivant le type d’architectures physique et logique, les réseaux n’auront pas les mêmes
caractéristiques topologiques ni les mêmes propriétés de fonctionnement.
3.2.1) Caractéristiques
Certaines caractéristiques sont directement liées au choix de l’architecture :
•
•
Type de liaison : point à point, multipoints, régulière, irrégulière.
Hiérarchie des machines : identiques ou maître–esclave.
Plusieurs propriétés en découlent :
•
•
•
•
•
•
•
Connectivité : facilité d’accès aux autres stations.
Diffusion : capacité à émettre vers toutes les stations.
Reconfiguration : facilité pour ajouter ou enlever une machine.
Sûreté de fonctionnement : sensibilité aux défaillances d’un élément.
Facilité de câblage.
Fiabilité du câblage : rupture totale de la communication, parasitage, espionnage.
Prix.
Ces propriétés seront à prendre en compte lors du choix de réalisation d’un réseau.
Nous verrons au fur et à mesure du cours les propriétés de chaque type de réseaux, et
dans ce chapitre tout ce qui concerne la réalisation avec des éléments physiques.
3.2.2) Contraintes de câblage
Le choix d’un type de câblage doit se faire en fonction d’un cahier des charges qui définit
un certain nombre de contraintes :
•
•
•
•
•
•
•
•
Taille du réseau : distance et nombres de machines,
Débit désiré,
Environnement de câblage : poids supporté, angles...
Interaction avec l’environnement extérieur : résistance mécanique, tenue aux
vibrations, température, parasites électromagnétiques, radiations, agression
chimique,...
Nature des informations,
Les hommes : utilisateurs, techniciens de maintenance,
Topologie imposée,
Prix.
Nous allons maintenant passer en revue les différents éléments qui constituent un
câblage : c’est à dire, le médium, les éléments d’interconnexion, les terminaisons ainsi que
tous les éléments actifs nécessaires au fonctionnement d’un réseau.
23
3.3) Un médium, des Média
3.3.1) Les câbles coaxiaux
a) Le câble CATV (Community Antenna Television) : type TV
C’est un câble de type liaison d’antenne de télévision. Il a une impédance de 75 ohms.
Isolant Tresse cuivre
Isolant
Fil (monobrin)
Du fait de son utilisation importante en télévision, c’est un câble d’un prix de revient faible.
Il correspond bien à des réseaux locaux travaillant dans la gamme de fréquences de la
télévision (500MHz-1GHz). C’est à dire pour les réseaux de type FACTOR ou MAP où
l’information est modulée sur une porteuse.
b) Le câble coaxial « jaune », ou gros ethernet : RG11 (câble jaune)
Il est constitué de plusieurs couches de blindage et d’isolation. Son impédance
caractéristique est de 50 ohms. Il pèse 182 kg/km.
Isolant (jaune) Ruban alu
10 mm
Tresse cuivre
isolant
Ruban alu
Fil Cu (monobrin)
Tresse cuivre
Son utilisation principale est dans le réseau ethernet de type 10Base5 (10 pour 10 MHz,
Base pour bande de base, 5 pour 500 mètres maximum par segment).
Il permet de réaliser des réseaux de longueur maximum de 2.5 km, avec 100 postes par
segments, chaque poste étant espacé de 2.5 m au minimum.
C’est un des premiers câbles spécifiquement utilisés dans les réseaux locaux. Son
utilisation est peu aisée : rigidité du câble, connexion spécifique. Il n’est utilisé que pour
réaliser des « backbones » (épine dorsale de grands réseaux) servant à relier plusieurs
sous–réseaux.
c) Le câble coaxial standard, ethernet fin : RG58 (type oscilloscope)
Il est constitué de deux conducteurs séparé par un isolant. Un conducteur multibrins
central, et une tresse de cuivre. C’est le même type de câbles que ceux qui servent à
relier les instruments de mesure en électronique (oscilloscope...). Il a une impédance de
50 ohms. Du fait de son âme centrale fine et du faible nombre de couches, il est très
souple et relativement léger.
24
Isolant (noir) Tresse cuivre Ruban Alu
Isolant
Fils (multibrin)
C’est le câble coaxial le plus répandu. Il est utilisé dans le câblage ethernet 10Base2. Il
permet de réaliser des réseaux de 185 m par brin (925 m en tout) ; on peut y relier jusqu’à
30 postes/ segment.
d) Caractéristiques communes
Les câbles coaxiaux ont une bonne immunité aux perturbations électromagnétiques. Ils
permettent de réaliser des réseaux ayant des bandes passantes utiles de 10 à 100 Mhz.
Leur montage est relativement facile. Ils sont surtout adaptés pour des topologies
physiques de type bus. Leur coût est relativement faible.
Connecteurs BNC
Outils de connexion
3.3.2) Les paires torsadées
a) paire non blindée (UTP Unshielded Twisted Pair)
Une paire torsadée est constituée de deux fils souples enroulés l’un autour de l’autre avec
un pas réduit (6 torsades par mètre). Les paires sont en général regroupées dans des
câbles. Ceux-ci peuvent avoir un grand nombre de paires. Ces câbles ont été initialement
utilisés dans les liaisons téléphoniques (paire téléphonique).
L’utilisation de fils torsadés réduit l’influence des perturbations électromagnétiques, mais il
persiste un déséquilibre entre les deux fils, car l’un sert de référence de masse qui est
dans la plupart des cas commune entre les deux équipements à relier, l’autre fil étant le fil
du signal à transmettre. Leur sensibilité aux perturbations reste donc très grande. Ils
offrent une bande passante de 10 Mhz jusqu’à 100 Mhz sur de faibles distances. Ils ont un
25
prix réduit. Ils sont utilisés pour des liaisons point à point et en particulier pour faire les
câbles de liaison entre équipement et prise murale.
Initialement, ils ont été utilisés pour le câblage :
• TokenRing de type 3 (2 paires torsadées de 0.5 mm²) pour des liaisons de 45m
maximum à 4Mbits/s.
• Ethernet 10BaseT (T≡Twisted pair) sur une longueur maximum de 100m à
10Mbits/sec.
b) La paire symétrique blindée (FTP ou F/FTP câble blindé ou blindé par paire)
Les deux fils torsadés sont entourés d’une tresse conductrice. Ces paires sont en général
aussi rassemblées dans des câbles pouvant comporter eux-mêmes un blindage global.
L’utilisation d’un blindage permet de plus d’avoir un fil supplémentaire servant à relier les
masses des deux équipements. La paire torsadée peut alors jouer tout son rôle en
effectuant une véritable liaison symétrique. Elle permet de réaliser des liaisons point à
point jusqu’à 100Mbits/sec. Elle est très souple, légère et d’un prix relativement réduit.
c) Les différents standards
L’utilisation de câbles composés de plusieurs paires torsadées blindées ou non dans le
câblage des bâtiments est quasi–systématique à l’heure actuelle. Le faible coût de
câblage, la facilité de réalisation et l’amélioration des performances relativement aux
perturbations en font un câblage adapté à la bureautique et aux applications industrielles
dans des milieux peu perturbés. Le câblage réseau s’accompagne du câblage
téléphonique dans le même câble. Les supports peuvent même être non différenciés.
Les cordons monobrins relient deux centres de câblage ou un centre de câblage et une
prise murale. Conçus pour des chemins horizontaux ou des dorsales, ils ne doivent pas
subir de courbures, de pliures, ni de torsions répétées. Les cordons multibrins sont utilisés
pour connecter les cartes réseaux aux prises murales, ou comme cordons de brassage.
Souples, ils ne doivent pas dépasser une longueur maximale de 6 mètres.
Suivant le type de réseaux, plusieurs standards existent :
• TokenRing Type 1 : 2 paires blindées de 0.6 mm² pour des réseaux à 4 ou 16
Mbits/sec,
• TokenRing type 2 : 2 paires blindées+4 paires non blindées pour réseaux et services,
• TokenRing type 5 : 4 paires blindées pour des réseaux à 16Mbits/sec,
• Câble STP Catégorie 5 : semblable aux précédents mais pour Ethernet 100Mbits/sec,
• Câble UTP Catégorie 5 : comme les STP mais non blindés pour liaisons courtes,
• Câble FTP ou SFTP Catégorie 5+ (classe D) : pour les liaisons 10 et 100 Mbits/sec.
• Câble UTP ou FTP Catégorie 5E (classe E, 2ème définition) : pour les liaisons 10, 100
et 1000 Mbits/sec.
• Câble UTP ou FTP (250 MHz) Catégorie 6 : pour les liaisons 1 Gbits/sec.
• Câble F/FTP Catégorie 6+ (500 MHz) : pour les liaisons 1 Gbits/sec en milieu perturbé.
3.3.3) Les fibres optiques
La transmission de l’information dans des fibres optiques est réalisée par modulation de
l’amplitude de la lumière d’un émetteur (diode, laser) placé à un bout de la fibre, un
récepteur étant placé à l’autre extrémité. Il existe deux types de fibres : les fibres en verre
et en plastique. La première possède de meilleures performances en terme
26
d’affaiblissement, mais est légèrement plus coûteuse et surtout plus difficile d’usage
(fragilité) : elle est utilisée dans les liaisons rapides à longues distances. La deuxième ne
peut être utilisée que sur de courtes distances avec des débits plus réduits.
Connecteur SC
(verrouillage coulissant)
Connecteur ST
(verrouillage baïonette)
Les fibres optiques sont insensibles aux perturbations électromagnétiques, l’isolement
électrique est total. Elles ont une atténuation du signal très faible. Elles sont légères mais
relativement fragiles. Leur connexion est difficile rendant assez cher un câblage de ce
type. Elles assurent une très bonne confidentialité des données. Elles sont utilisées pour
des liaisons point à point à grande distance ou dans des environnements très perturbés.
Le domaine des grands débits leur est en général aussi réservé (>100Mbits/sec).
Elles sont utilisées dans les câblages principaux des réseaux (backbone ou anneau
principal) :
- Ethernet sur fibre optique, 100 base FX [F≡Fibre optique],
- tokenRing type 5 pour l’anneau principal,
- FDDI (Fiber Distributed Data Interface), réseau à 100Mbits/sec pouvant relier sur
200 km 1000 stations sur deux boucles en fibre optique.
3.3.4) Autres supports possibles
a) Ondes hertziennes : satellite, radio
La transmission longue distance d’information numérique peut passer par voie hertzienne,
elle peut emprunter par exemple les réseaux téléphoniques par satellites. La faible fiabilité
de ce type de liaison (perturbations atmosphériques) en limite l’usage.
b) Faisceau laser, infra–rouge
L’utilisation d’un faisceau laser pour transmettre dans l’atmosphère sur de faibles
distances (100m) est quelquefois envisagé. Cela apporte une solution légère et souvent
temporaire pour communiquer entre deux bâtiments séparés par une zone où un câblage
est difficile (domaine public ou obstacle naturel). La fiabilité est faible et dépend de la
visibilité.
c) Champ magnétique
Dans des locaux industriels, la transmission d’information numérique peut être envisagée
par un champ magnétique. Un mobile (chariot guidé...) reçoit des informations lors de son
passage proche d’un émetteur. Des implémentations basées sur une boucle magnétique
dans un atelier existent et peuvent répondre à des contraintes de flexibilité et d’échange
sans contact.
d) Courant porteur
L’utilisation du câblage électrique existant pour réaliser des réseaux locaux peut être une
solution simple et peu onéreuse dans des locaux anciens où un câblage peut s’avérer
27
difficile. Plusieurs limitations existent : faibles débits, non maîtrise du câblage, difficulté de
réamplification des signaux.
3.3.5) Utilisation
A l’heure actuelle, le câblage par câble coaxial a fait place dans pratiquement tous les cas
au câblage par paires torsadées. Toutefois l’utilisation d’Ethernet 10Base2 peut être une
solution envisageable dans des locaux modulaires non précâblés : la reconfiguration du
câblage étant alors plus simple. A l’autre extrémité, le câblage par fibre optique a aussi
remplacé le coaxial pour les forts débits, les grandes distances et les environnements très
perturbés.
3.4) Eléments passifs
3.4.1) Eléments d’interconnexion
A chaque type de câblage est associé des éléments d’interconnexion qui pourront dans
certains cas représenter une part non négligeable du coût.
a) Borniers ou panneau de brassage
Le câblage par paires torsadées correspond en général à un précâblage de bâtiment, la
destination finale de chaque paires étant décidée par l’utilisateur. Il est alors nécessaire de
prévoir dans des armoires techniques qui concentrent tout le câblage d’une partie de
bâtiment (étage, couloir) des dispositifs permettant de mixer les connexions. Ce sont des
rangées de borniers que l’on nomme panneau de brassage.
Réseau 1
Câblage
bâtiment
Cordons de
brassage
Câblage
bâtiment
Réseau 2
b) Connecteurs type téléphone RJ45
Pour le précâblage de type paires torsadées, des prises murales sont posées dans
chaque pièce. Ce sont en général des prises type RJ45 à 8 fils ressemblant aux petites
prises téléphoniques (4 fils). La liaison entre la prise et l’ordinateur s’effectue par un câble
RJ45 mâle–mâle
28
c) Té BNC
En ce qui concerne l’ethernet 10Base2, il est nécessaire de garder la structure bus dans le
câblage. La connexion sur l’ordinateur s’effectue par un té BNC. Des prises murales
peuvent aussi exister et faire office de commutateur lors de l’ajout ou du retrait d’un
ordinateur.
Bouchon 50 ohms
Adaptateur en T
Câble BNC
Transceiver ou
adaptateur BNC
d) Prises vampires
Pour l’ethernet 10Base5, la taille du câble et son nombre de conducteurs sont tels qu’il ne
peut être question de réaliser des connexions pour chaque ordinateur. On utilise donc des
prises spéciales (dite Vampire) qui permettent la connexion sans coupure du câble.
Connexion
signal
Isolant
Tresse
Brin central
Connexion
de masse
3.4.2) Eléments de terminaison
Ces éléments sont présents dans le cas d’un câblage par bus. En effet, les bouts de
chaque câble ne peuvent être laissés en l’air. Pour des raisons liées à la propagation des
ondes dans les câbles, il faut placer des adaptateurs de lignes aux extrémités. Ce sont
des charges d’impédance égales à l’impédance caractéristique de la ligne : soit 50 ohms,
soit 75 ohms.
29
3.4.3) Connexions optiques
La réalisation de connexions optiques sur des fibres est relativement difficile. Les liaisons
longues distances sont le fait d’entreprises spécialisées. Pour les plus courtes distances,
on peut trouver des mécanismes de connexion utilisables (HP), ou tout simplement
acheter la fibre avec les connecteurs.
3.5) Les éléments actifs
La description en détail de leur fonctionnement dépasse le cadre de ce chapitre, car les
mécanismes de fonctionnement englobent les 4 ou 5 couches basses du modèle ISO.
Nous nous contenterons donc de citer les différents éléments actifs et leurs principales
caractéristiques ainsi que leur utilisation.
3.5.1) Carte interface réseau
C’est une carte d’entrée–sortie au format du bus de l’ordinateur. Elle rassemble les
fonctions des couches basses du réseau. Son prix est de l’ordre de 50 € (voire même 25 €
pour une 10/100 Mbits la moins chère) jusqu’à 200 € pour les plus performantes.
(a) carte bus PCI, RJ45, AUI, BNC.
(b) carte PCMCIA ordinateur portable.
Figure 9 : Cartes interface réseau.
3.5.2) Transceiver ou MAU (Medium Attachment Unit)
Il est souvent inclus dans la carte réseau de PC pour les cartes 10BaseT ou 10Base2.
Dans le cas des stations de travail ou de protocole moins courant, ce dispositif est proche
du câble réseau. La carte réseau de l’ordinateur et le transceiver sont alors reliés par un
câble de descente (Drop cable ou AUI Attachment Unit Interface) constitué de 4 paires
blindées.
Son prix est de l’ordre de 30 €.
30
3.5.3) Concentrateur ou HUB
C’est un dispositif qui permet de réaliser une topologie logique de type bus sur un câblage
de type arbre. Il est très utilisé dans la réalisation de réseaux de type 10BaseT et cohabite
avec le panneau de brassage dans les armoires techniques. Il peut avoir des fonctions
supplémentaires (filtrage...). Un Hub 16 entrées a un prix moyen de 250 €.
3.5.4) Commutateur ou Switch
Un commutateur est un concentrateur qui filtre et achemine les paquets selon leur adresse
MAC. En sélectionnant les ports qui doivent acheminer l’information, le commutateur
réduit le trafic réseau et améliore donc les performances des concentrateurs. Un Switch
24 ports 100 MBits coûte en moyenne 1000 €.
3.5.5) Répéteur
C’est un dispositif amplificateur qui vient se mettre en série sur le câblage, pour régénérer
les signaux électriques au niveau physique (couche 1 du modèle OSI). Il permet de
s’affranchir des problèmes d’atténuation du câble. Il réalise une remise en forme électrique
des signaux, et un filtrage des collisions. Son prix est de l’ordre de 400 €.
10111
Couche physique
médium
10001
10111
10001
31
3.5.6) Pont ou Bridge
Cet appareil régénère la trame au lieu du signal, et donc ne transmet pas les « bruits »
parasites. Il peut filtrer le trafic (pont filtrant) au sein d’un seul réseau ou de deux réseaux
de même protocole. Il peut aussi réaliser une adaptation entre deux parties de réseau
ayant des couches physiques différentes. Les prix des ponts sont très variables en
fonction des performances et des protocoles : cela reste un appareil relativement onéreux
(600 € et plus).
Couche réseau
Couche
Liaison
Couche
Physique
médium
Couche
Liaison
Couche
Physique
3.5.7) Routeur
Un routeur est un dispositif d’aiguillage qui permet de faire transiter des paquets définis au
niveau de la couche 3 du modèle OSI. Il réalise des liaisons entre deux ordinateurs par
différents chemins. La gamme de prix est assez étendue comme pour les ponts. Pour
obtenir des performances correctes, un routeur peut coûter plus de 3000 €.
Couche réseau
Couche
Liaison
Couche
Physique
médium
Couche
Liaison
Couche
Physique
3.5.8) Passerelle ou Gateway
Le terme passerelle regroupe un certain nombre de matériels réalisant des
interconnexions de réseaux de protocoles différents (couche 4 du modèle OSI). Les
fonctions des ponts, routeurs, et passerelles sont d’ailleurs souvent englobées dans
le même dispositif (pont-routeur, ...).
Conversion protocole
Couche
réseau
Couche
liaison
Couche
physique
32
médium
Couche
réseau
Couche
liaison
Couche
physique
3.5.9) Modem
Un modem permet d’utiliser une liaison de type analogique (téléphonique en général) pour
transmettre des données numériques. Les débits obtenus sont de 14400 bits/sec, 28800
et même 33600 bits/sec sur une simple liaison téléphonique de bonne qualité (3kHz de
bande passante).
(a) externe.
(b) PCMCIA ordinateur portable.
Figure 10 : Modems.
3.6) Exemple de câblage
ESPEO Est
Niveau 2
3
LESI
192.254.8.0
LESI 1 : 192.254.8.253
5
6
CITU
192.33.145
7
ESP 2 : 164.167.25.253
8
Modules Bleus
1 GHz
LESI 1 : 192.254.8.253
Modules Jaunes
4
ADM : 192.168.4.253
8
1 GHz
(> 160 m)
3
Bornier 24 prises Gauss
ESP1 : 192.168.49.
ESP3 : 194.167.27.254
(≈ 300 m)
Gremi :
Modules Bleus
ESPEO Ouest
Niveau –1
Fibre optique
2
ESP 1 : 192.254.8.251
Modules Jaunes
IUT
192.93.220
Fibre optique
(> 180 m)
DEG
ESPEO PC
192.168.49.0
7
Modules Bleus
ESPEO Est
Niveau 0
Modules Jaunes
Paire torsadée
(< 20 m)
2
ESP 1 : 192.254.8.250
RENATER
ESPEO Stations
194.167.25.0
ESP 1 : 192.168.49.252
(fibre optique, token ring)
Réseau fédérateur université
1
ESPEO PC
192.168.49.0
ESPEO Admin
192.168.4.0
Amphi Gauss
ESPEO PC
192.168.49.0
ESPEO LP
194.167.27.0
GREMI
193.49.77.0
Figure 11 : Schéma du réseau informatique ESPEO.
33
3.7) Les logiciels de gestion de réseaux
Si les couches basses du modèle OSI sont contenues dans l’adaptateur réseau de
l’ordinateur, les autres fonctions sont assurées par des logiciels.
Les premiers types sont les logiciels de commande de la carte (Driver) vendus avec la
carte. Ils réalisent jusqu’à la couche LLC inclus.
La partie réseau et les autres couches supérieures sont réalisées par des logiciels réseau
spécifiques que l’utilisateur doit acheter en plus ou qui sont fournis avec le système
d’exploitation (Novell, TCP/IP, Windows95, Windows NT). Ces logiciels sont composés de
deux parties, une pour le serveur l’autre pour les postes de travail. Les prix sont variables
et dépendent du nombre de postes, quoi qu’il en soit, il représente une part non
négligeable du coût de mise en réseau.
34
Chapitre 4 : Couche Physique
4.1) Fonctions de la couche physique
La couche physique définit les aspects électriques et mécaniques de l’interfaçage avec un
support physique pour transmettre des données, ainsi que l’installation, la maintenance et
la déconnexion des liens physiques. Une fois en place, cette couche inclut le pilote logiciel
pour chaque équipement de communication.
4.1.1) Services
La couche Physique a comme fonction de transmettre une suite de bits de la manière la
plus fiable possible, mais sans en interpréter le contenu ou le modifier.
L'objectif étant qu'un 1 émis soit reçu comme un 1 et un 0 comme un 0.
1 -------------> 1
0 --------------> 0
1 -----xxxxx---> 0
0 -----xxxxx---> 1
Pour cela la couche physique réalise deux fonctions :
conversion suite de bits -> signal électrique ou optique
conversion signal électrique ou optique -> suite de bits
01010110
01010110
signal
4.1.2) Modules fonctionnels
Avant d’être émis sur le médium, l’information binaire passe à travers différents étages de
traitement (représenté par une suite de codages) dans le but d’améliorer les performances
de la transmission. A la réception, le signal sur le médium subit les traitements inverses
pour retrouver l’information binaire (suite de décodages).
4.1.3) Schéma général
On peut définir un schéma général représentant tous les modules en série.
35
0101101100
Codage logique
Modification de la série binaire : bourrage, …
00110000110
Codage signal
ou en niveaux
Codage de bits sous forme de niveaux (binaire,
duobinaire, …)
a, a/2, -a, …
Codage physique
ou analogique
Mise en forme
électrique ou optique
Adaptation
mécanique
Codage sous forme d'une grandeur analogique
(tension, fréquence, transition, …)
Amplification
Connecteurs
médium
L'information binaire est transformée en plusieurs étapes lors du passage dans la couche
physique. Pour chaque étape plusieurs possibilités sont envisageables.
Nous détaillerons les différents codages logiques et codages physiques dans les
paragraphes suivants.
En ce qui concerne le codage signal :
• soit le codage est binaire : la valeur 0 correspond à un niveau donné et 1 à un autre
• soit on utilise un codage multi-niveaux : un groupe de bits correspond à un niveau
• économie : deux bits transmis par niveau
• difficulté : discrimination des niveaux
00 → niveau 1
01 → niveau 2
10 → niveau 3
11 → niveau 4
36
00
01
00
10
11
01
10
4.2) Caractéristiques, définitions
4.2.1) Source, canal
Canal : c’est la voie de transmission (considérée comme un élément passif)
Source : c’est la partie active ou signal.
source
canal
∼
4.2.2) Débits
Débit binaire (Bit/sec) :
C’est la quantité d'information transmise par seconde (le bit étant la quantité minimum
d’information).
Rapidité de modulation (baud) :
C’est le nombre de changement d'états du signal par seconde.
Différence entre les deux :
Lors de la transmission sur la voie analogique, on peut utiliser plusieurs niveaux de la
grandeur de codage. Un état peut apporter plus d’information que 1 bit.
Exemple :
0
1
1
1
0
0
n4
n2
n1
1
n3
Dans tous les cas :
Débit binaire ≥ Rapidité de modulation
4.2.3) Affaiblissement du signal
On doit prendre en compte deux types d’atténuation.
Atténuation globale : qui peut être assimilée à une composante résistive, elle est liée aux
pertes d’énergie du signal durant la transmission (exprimée en dB/km).
R (isolant)
r (conducteur)
Atténuation relative des fréquences : elle provient de la bande passante limitée du canal.
37
c
c
r
c
Bande passante d'un canal : limites haute et basse ou haute seulement (à –3dB le plus
souvent)
On considère qu'à l'intérieur de la bande passante les fréquences sont transmises sans
affaiblissement relatif notoire.
Pour évaluer la dégradation du signal, il est nécessaire de comparer la bande passante de
la ligne à la largeur de bande du signal.
Largeur de bande d'un signal (d'une source) : occupation spectrale du signal,
transformée de Fourier -> harmoniques...
H(f)
f1
f2
f
S(f)
-3db
Largeur bande signal
Bande passante
f
4.2.4) Rapport Signal/Bruit, taux d’erreur
Pour bien définir ce rapport, il faut distinguer deux origines pour le bruit :
• Le bruit stationnaire qui est intrinsèque au système (bruit thermique...) et qui
perturbe les communications en permanence.
• Le bruit impulsionnel (parasites...) qui vient brouiller les communications pendant un
laps de temps court.
Le rapport S/B est relatif au premier de ces bruits. On le calcule en rapport de puissance.
S / Bglobal =
Puissance Signal
Puissance Bruit
Souvent, pour obtenir une analyse plus fine, on le mesure dans des bandes de fréquences
déterminées.
S / B( f ) =
Puissance Signal( f )
Puissance Bruit ( f )
En effet, le signal passe par des filtres qui limitent la bande passante de manière à
adapter sa largeur de bande à celle du signal utile. Le rapport S/B à considérer est donc
celui relatif à la bande d’intérêt.
38
Canal + bruit
∼
Filtre
réception
source
S
S+B
S+B
filtrés
f
f
f
Taux d'erreur :
C'est le rapport entre le nombre de bits erronés reçus et le nombre total de bits reçus.
De l’ordre de 10-7 pour une liaison non protégée dans un environnement peu perturbé.
En fait, de la même manière que pour le bruit, on distingue les erreurs aléatoires (bruit
stationnaire) et les erreurs groupées (bruit impulsionnel).
4.2.5) Débit maximum
La valeur du débit maximum que l’on peut faire passer sur une ligne est donnée par le
théorème de Shannon–Nyquist :
Dans le cas où la transmission est sans bruit :
Dmax = 2H Log2(V) en bits/sec
avec H qui représente la bande passante du canal et V qui est le nombre de niveaux de
quantification de la source.
En pratique, le bruit limite l’augmentation du nombre de niveaux de quantification, et on a
alors la nouvelle relation :
C = H Log2 (1+S/B)
où S/B est le rapport signal sur bruit du canal.
En pratique, les débits constatés sont inférieurs car on n'exploite pas toutes les possibilités
du canal et on conserve une marge de sécurité.
Exemple :
Ligne téléphonique : BP 3kHz, S/B = 30 dB,
C = 30000 bits/sec (modem 14400 bps, 28800 bps, 33600 bps: mais marge faible)
(commutateurs numériques : 56000 bps asymétriques (une seule direction)
MAP : 26 dB et 12 MHz de Bande passante
C = 103,6 Mbits/sec mais on a en pratique 10 Mbits/sec
39
4.2.6) Liaison synchrone, asynchrone
a) Liaison synchrone
Dans ce type de liaison on transmet une horloge avec le signal, les instants de lecture de
l'information sont donnés par les fronts de cette horloge. Cette solution est fiable, mais
nécessite des fils supplémentaires pour l’horloge.
b) Liaison asynchrone
Les horloges émetteur et récepteur doivent pouvoir se resynchroniser pour que
l'information puisse être lue dans de bonnes conditions.
=> Synchronisation de l'horloge récepteur par le message lui-même.
Exemple :
• Liaison série : synchronisation sur le premier front puis la précision des horloges
suffit pour récupérer tout le reste du message : message court, (10% -> 10 bits de
longueur)
• Code autosynchronisant : horloge mixée avec le message.
Pour des raisons pratiques, seule la deuxième solution est utilisée dans les réseaux, car
on privilégie la simplicité de câblage.
4.2.7) Liaison monodirectionnelle / bi-directionnelle
Suivant la technologie utilisée, pendant qu'un poste communique avec un autre, il peut ou
non recevoir des informations de ce poste.
• Si un seul poste peut émettre : on parle de liaison simplex ou unidirectionnelle
• Si chaque poste peut émettre à son tour : liaison half duplex ou bidirectionnelle à
l'alternat
• Si chaque poste peut émettre simultanément : liaison full duplex ou bidirectionnelle
intégrale.
La plupart des réseaux locaux fonctionnent avec la deuxième solution (par économie de
fils entre autre) sauf s'ils utilisent un multiplexage fréquentiel.
4.3) Codage physique
4.3.1) Les codages en bande de base
a) Propriétés
Les codages en bande de base sont des codages ou les niveaux du signal d'information
sont directement convertis en tensions ou en transitions entre deux tensions.
niveau ----> valeur de tension
ou
niveau ----> transition entre deux tensions
40
Exemple :
+4v
+5v
+2v
0v
-2v
Codage binaire
-4v
Codage 4 niveaux
Les signaux résultants sont des signaux rectangulaires dont la fréquence de changement
dépend directement du débit binaire : la bande occupée par ces signaux est à relativement
basse fréquence.
Deux contraintes doivent être prises en compte pour le choix d'un codage :
• la synchronisation du récepteur sur le message,
• la largeur de bande (passage du continu ou non, lobes hautes fréquences).
Le respect de ces contraintes implique que le signal électrique ait des changements de
niveaux fréquents quel que soit le message.
Remarque : le calcul de la largeur de bande dépend du signal d'information, le spectre est
donc aléatoire, la caractéristique à prendre en compte est un spectre moyen.
S(f)
0101010
f
S(f)
0000000
f
b) Code NRZ (Non retour à zéro)
La valeur du bit correspond à un niveau logique et à une tension +a ou -a
0
+a
1
0
0
1
1
1
0
1
Code NRZ
0
-a
La synchronisation n'est assurée que si l'information est entourée de séquences de
synchronisation.
Exemple : RS232 bit start et stop pour 8 bits, rendement de 80% (8 bits signaux pour 10
bits transmis)
L'occupation spectrale est importante vers les basses fréquences (en sinus x / x).
41
S(f)
0
1/2T
1/T
3/2T
f
c) Code NRZi (Non Retour à Zéro inversé)
Ce code est basé sur le principe suivant :
on inverse la représentation pour un 0 => transition
les 1 ne produisent pas de transition
C’est donc un codage par des transitions (à l’inverse du précédent qui était sur des
niveaux).
0
+a
1
0
0
1
1
1
0
1
Code NRZi
0
-a
Ce code a les mêmes caractéristiques que le précédent mais il a l’avantage de ne pas
nécessiter le repérage des fils.
d) Code biphasé ou Manchester I
La valeur du bit est représentée par une transition (montante ou descendante) en milieu
de temps bit (valeur 0 : front descendant ; valeur 1 : front montant).
0
+a
1
0
0
1
1
1
0
1
Code Biphasé ou Manchester I
-a
Il est réalisé à l'aide d'un Ou exclusif entre le signal binaire NRZ et l'horloge.
Il permet une auto-synchronisation car il y a toujours des transitions.
Son occupation spectrale se situe à plus hautes fréquences. Il ne génère pas de
composante continue car la moyenne est nulle quel que soit la suite de bits.
42
S(f)
0
1/2T
1/T
3/2T
f
e) Code biphasé différentiel ou Manchester II
Dans ce type de codage, le sens des transitions change suivant la valeur du bit :
d(i) = 0 ;
θ1(i) = +θ1(i−1) ; θ2(i) = −θ1(i) = +θ1(i−1)
d(i) = 1 ;
θ1(i) = −θ1(i−1) ; θ2(i) = −θ1(i) = −θ2(i−1)
Avec θ1(i) valeur du 1er demi–temps du bit i et θ2(i) valeur du 2ème demi–temps.
0
+a
1
0
0
1
1
1
0
1
Code Manchester II
-a
Il a les mêmes caractéristiques que le précédent mais il ne nécessite aucun repérage des
fils.
f) Code de Miller
Il est obtenu à partir du code biphasé en supprimant une transition sur deux.
La logique de codage peut être obtenue à partir de celle du code biphasé : le choix de
l’initialisation à une importance car on peut aussi obtenir un codage où les 0 et les 1 sont
codés de manière inverse.
• pour un 0 précédé d’un 0 : il reste seulement la transition entre les bits,
• pour un 0 précédé d’un 1 : il n’y a aucune transition,
• pour un 1 précédé d’un 0 : il y a uniquement une transition au milieu du temps bit,
• pour un 1 précédé d’un 1 : il y a uniquement une transition au milieu du temps bit.
La règle de décodage simple peut être employée :
• transition au milieu du temps bit : c’est un 1,
• pas de transition au milieu du temps bit : c’est un 0.
Comme le nombre de transitions est réduit par 2 par rapport au code biphasé, le spectre
des signaux codés est beaucoup plus réduit en largeur que celui du code biphasé.
Des transitions étant générées même pour des suites de 0, ce code est auto–
synchronisant.
43
0
+a
1
0
0
1
1
1
0
1
Code Biphasé ou Manchester I
-a
+a
Code Miller
0
-a
Du fait que le nombre de transitions est réduit (1 sur 2), le spectre des signaux codés est
beaucoup plus réduit en largeur que pour le code biphasé.
S(f)
0
1/2T
1/T
3/2T
f
g) Code bipolaire
Pour ce code on utilise 3 niveaux de quantification : +a, 0 et –a. Ce choix permet de coder
plus de combinaisons et en outre de supprimer la composante continue.
•
Code bipolaire simple :
Les valeurs di des bits sont codées de la manière suivante :
di = 0 ; i = 0
di = 1 ; θi = +a si le dernier état non nul était -a
θi = -a si le dernier état non nul était +a
θi étant la valeur de codage du bit di.
0
+a
0
-a
44
Code bipolaire
1
0
0
1
1
1
0
1
Ce code n'est pas auto-synchronisant car pour une suite de 0 il n’y a pas de transition
donc aucun moyen de récupérer l’horloge. L'alternance de +a et -a rend le signal centré, la
bande occupée est donc limitée vers le bas.
S(f)
0
1/2T
•
1/T
3/2T
f
Code bipolaire ordre 2 :
La règle d’alternance des +a et -a du code bipolaire ordre 1 peut être généralisée sur
plusieurs séries distinctes (paire, impaire pour l’ordre 2).
La nouvelle logique de codage est alors la suivante :
d i = 0 ; θi = 0
d2i = 1 ;
θ2i = +a si le dernier état θ2j non nul était -a
θ2i = -a si le dernier état θ2j non nul était +a
d2i+1 = 1 ;
θ2i+1 = +a si le dernier état θ2j+1 non nul était -a
θ2i+1 = -a si le dernier état θ2j+1 non nul était +a
0
+a
1
0
0
1
1
1
0
1
Code bipolaire ordre 2
p
i
p
i
i
0
-a
Ce n'est pas non plus un code auto-synchronisant, mais la bande occupée est encore
réduite d'un facteur proche de 2. Le choix de deux séries distinctes pour gérer l’alternance
permet de réduire statistiquement le nombre de transitions (par exemple sur une suite 11).
S(f)
0
1/2T
1/T
3/2T
f
45
h) Codage bipolaire à haute densité (BHDn, HDBn)
Dans ce type de codage, le caractère bipolaire est utilisé pour éviter les longues séries de
0 et permettre ainsi l'autosynchronisation. Pour cela, la règle de conversion niveauxgrandeur analogique n'est pas toujours la même pour un 0, elle tient compte du nombre de
zéros successifs.
Pour un code HDBn, une suite de n+1 zéros est remplacée par une séquence de
remplissage. Cette séquence comporte donc des symboles différents de zéro. Le choix de
ces symboles doit permettre de respecter la contrainte de moyenne nulle, afin de limiter la
bande occupée vers les basses fréquences.
Le repérage des séquences sera effectué par une rupture dans la logique des codes
bipolaires : deux symboles non nuls identiques se suivront (+a et +a ou -a et -a).
Le symbole de répétition d’une valeur identique sera représenté par V dans la séquence
de remplissage. Un symbole de valeur différente de la valeur précédente comme B.
Pour un code HDB3, une séquence de 4 zéros sera remplacée soit :
par 0 0 0 V , si le nombre de symboles différents de 0 depuis la dernière séquence
de remplissage est impair
par B 0 0 V, si le nombre de symboles différents de 0 est pair.
1
+a
0
0
0
0
1
0
1
1
0
0
0
0
0
1
1
0
0
1
Code bipolaire Haute Densité
0
-a
Ce type de codage a l'inconvénient de provoquer des erreurs en chaîne difficilement
maîtrisables, il n'est donc pas très fiable.
4.3.2) Codage physique par modulation
L'information logique est alors représentée par une grandeur liée à un signal périodique,
en général sinusoïdal :
y(t) = A cos (ωt + ϕ)
Les 3 paramètres de la relation peuvent servir à cette représentation :
A : modulation d'amplitude ou AM ou ASK (Amplitude Shift Keying)
y(t) = A(t) cos (ωt + ϕ)
ω : modulation de fréquence ou FSK (Frequency Shift Keying)
y(t) = A cos (ω(t) t + ϕ)
ϕ : modulation de phase ou PSK (Phase Shift Keying)
y(t) = A cos (ωt + ϕ(t))
46
0
1
0
0
1
1
1
0
1
Données
NRZ
NRZi
Manchester I
Manchester II
Miller
Bipolaire
Bipolaire ordre 2
temps bit
Figure 12 : Codages de la bande de base (récapitulatif).
47
0
1
0
0
1
0
1
1
1
0
0
0
1
(a)
Amplitudes :
haute, A1
basse, A0
Fréquences :
haute, f1
basse, f0
(b)
(c)
(d)
Changements de phase
Figure 13 : (a) Signal numérique ou train binaire, (b) Modulation d’amplitude, (c) Modulation de
fréquence, (d) Modulation de phase.
La modulation de fréquence peut être réalisée de deux manières : variations par phase
continue, ou par phase cohérente.
D'un point de vue théorique, une modulation de phase peut être considérée comme une
modulation de fréquence : A cos (C(t)). En pratique, pour la transmission d'informations
logiques, les deux types de modulations doivent être considérés séparément.
La modulation d'amplitude peut être combinée avec une des deux autres modulations pour
augmenter la capacité de transmission.
La bande spectrale occupée par le signal modulé reste centrée autour de la fréquence de
la porteuse. De ce fait, la modulation peut avoir deux applications :
•
adaptation de la largeur de bande du signal à la bande passante du support (ligne...),
la modulation est utilisée uniquement pour des raisons de transmission (radio...). On
parle de transmission en bande porteuse (Carrier band),
Canal
Source
•
48
f
Non modulée
Modulée
f
passage de plusieurs signaux sur le même support : la modulation permet un
multiplexage fréquentiel. On parle de transmission en bande large (Broad band).
Canal
Sources
f
S1
S2
S3
Réception 1
Réception 2
Réception 3
f
f
f
f
4.4) Codage logique
Pour améliorer les performances de la transmission et en particulier pallier les défauts du
codage physique, on peut modifier la séquence binaire pour la rendre plus efficace. Nous
appellerons ceci le codage logique.
Il est évident que ces propriétés ne peuvent être obtenues qu'en allongeant la longueur du
message.
0 1 1 0 0 --->
-----> 0 0 1 1 1 1
4.4.1) Codage logique à longueur variable
- Bit Stuffing :
On ajoute des valeurs différentes dans une séquence uniforme :
Par exemple : 1 1 1 1 1 1 1 1 1 devient 1 1 1 1 1 0 1 1 1 1
La valeur à 0 est rajoutée pour provoquer une transition, elle n'a aucune signification en
terme de message.
L'utilité principale de cette technique étant d'éviter des longues séries sans transition au
niveau du codage physique, le choix de la méthode de remplissage dépend du codage
physique retenu.
Pour un code bipolaire, seules les suites de 0 doivent être modifiées. Pour un code NRZi,
c'est une suite de 1 qui doit être modifiée ( 1 1 1 1 1 -> 1 1 1 1 1 0).
L'inconvénient de ce type de codage est que la longueur du message varie suivant son
contenu, ce qui rend le décodage plus complexe.
4.4.2) Codage logique à longueur fixe
Pour prévenir l'inconvénient du codage à longueur variable, on réalise systématiquement
un ajout de bits toutes les n valeurs même sur les séquences qui n'en ont pas besoin.
Pour profiter pleinement de ce nouveau codage, on modifie totalement la séquence pour
supprimer les suites indésirables. On considère un bloc de n bits que l'on va transformer
en un bloc plus long suivant un tableau de conversion. On parle de codage par bloc.
49
Codage par bloc :
Un bloc de i bits est codé sur j bits (i<j), de telle manière que chaque nouveau mot
comporte des transitions.
Exemple :
Code 4B/5B : i =4, j=5
0000:11110
0001:01001
0010:10100
0011:10101
0100:01010
0101:01011
0110:01110
0111:01111
1000:10010
1001:10011
1010:10110
1011:10111
1100:11010
1101:11011
1110:11100
1111:11101
Il reste des codes disponibles, ils peuvent être utilisés pour des caractères spéciaux :
Début : 1 1 0 0 0
Fin : 1 0 0 0 1
Halt : 0 0 1 0 0
…
4.5) Application
4.5.1) Ethernet
Le code utilisé est le code Manchester. Il permet une resynchronisation du récepteur. Sa
largeur de bande relativement large n’est pas un problème pour un réseau à 10Mbits/sec
comme l’implémentation standard d’ethernet.
4.5.2) Réseau MAP (Token Bus : 802.4)
Ce réseau utilise une modulation FSK à phase cohérente. La gamme de fréquences des
signaux correspond bien aux possibilités du support (câble TV). Cela permet d’avoir
plusieurs voies sur un même médium.
Numéro
(5 Mb/s)
(6 Mb/s)
1
2
3
4
5
6
Numéro
(10 Mb/s)
(12 Mb/s)
1
2
3
Emission
Réception
Appellation
Bande (MHz)
Appellation
Bande (MHz)
3
4
4a
5
6
FMI
59,75–65,75
65,75–71,75
71,75–77,75
77,75–83,75
83,75–89,75
89,75–95,75
P
Q
R
S
T
U
252–258
258–264
264–270
270–276
276–282
282–288
4.5.3) TokenRing
Comme pour ethernet, et pour les mêmes raisons, le codage choisi est le Manchester.
50
4.5.4) FDDI
Pour ce réseau à fibre optique et haut débit (100Mbits/sec), un codage NRZi a été retenu
car il est simple et de largeur de bande plus réduite. La synchronisation du récepteur se
fait par un codage logique de type 4B/5B.
4.5.5) Réseau Bitbus
Pour ce réseau de terrain, la simplicité a fait choisir un codage NRZi.
4.5.6) Modem
La transmission par modem sur des lignes téléphoniques est effectuée à l’aide d’une
modulation FSK et un codage sur plusieurs niveaux.
En effet, un bref calcul montre que les performances actuelles ne pourraient être obtenues
que par un compromis entre la Rapidité de modulation et le nombre de niveaux de codage
(nombre de fréquences).
Exemple 14400 bits/sec = 12*12*10*10
=> 1200 bauds sur 12 niveaux : ce choix risque d’être trop juste relativement à la
bande passante de la ligne de 3 kHz (2.5 périodes de porteuse par état).
ou
600 bauds sur 24 niveaux : le nombre de niveaux étant ensuite limité par le rapport
S/B.
51
Chapitre 5 : Sous-couche d'Accès au
Médium (MAC)
La couche MAC contrôle l’intégrité des messages reçus, gère les accès à la voie et son
utilisation, et assure la séquence des données transmises.
5.1) Fonctions et services de la sous-couche MAC
Sous-couche MAC
LLC
MAC
Physique
données
+ adresses
0101101
Adressage/filtrage
LLC
MAC
données
+ adresses
Gestion accès
0101101
Vérif intégrité
Physique
Ajout synchro.
ecoute
LLC
Physique
5.1.1) Fonctions
La sous-couche MAC a deux fonctions principales :
• gestion de l'accès au médium (lecture/écriture)
• contrôle de l'intégrité de la transmission
Plus précisément, cela se traduit par des fonctions spécifiques à plusieurs niveaux :
Au niveau physique :
Mise en série des informations + ajout d'une synchronisation si nécessaire.
Possibilités de comparaison flux émis-flux reçu (si différent : problème électrique)
synchro
1
0
1
0
1
sérialisation
désérialisation
comparaison
1
0
1
Au niveau logique :
Choix des paquets à envoyer aux couches supérieures :
Pour ne pas encombrer les couches supérieures (c’est à dire ne pas consommer de
temps CPU) seuls les paquets destinés au poste de travail traversent la couche
53
MAC. Il y a filtrage en fonction de l’adresse destinataire. Ceci doit être fait de
manière rapide pour ne pas réduire les performances de la machine
(électroniquement par exemple).
Positionnement de l'adresse physique destinataire (et source)
Calcul et vérification d'une chaîne de contrôle des données.
Au niveau données :
Encapsulation de données LLC : trames niveau MAC
Synchro
Ad1
Ad2
Bits de
synchronisation
Adresse
source
Adresse
destinataire
Longueur
Données
FCS
Contrôle
d’intégrité
5.1.2) Services de la couche MAC
Liaison avec LLC :
MA_DATA_CONFIRM
MA_DATA_INDICATION
MA_DATA_REQUEST
MA_DATA_REQUEST :
Paramètres →
MA_DATA_CONFIRM :
Paramètres →
MA_DATA_INDICATION :
Paramètres →
LPDU + adresse destination
status en retour
LPDU après transmission, adresse source, status,
longueur du message
Liaison avec la couche Physique :
• Pas de service à proprement parlé car c’est une interface matérielle : la
communication de données est uniquement une suite de bits.
5.2) Adressage physique
Pour déterminer la couche MAC destinatrice du message, on utilise un adressage dit
adressage physique ou universel.
Les adresses universelles correspondent à l'adresse du coupleur (carte réseau), cette
adresse est unique au niveau de la planète Terre.
Ces adresses sont attribuées par un organisme unique (IEEE) aux constructeurs des
cartes. L'adresse est figée en ROM.
Elle est codée sur 48 bits (6 octets).
54
Les deux premiers bits ont une signification spéciale :
0 : adresse universelle -> administration globale des adresses
1 : adresse locale -> administration locale des adresses
(réseau interne où les 6 octets sont définis par le gestionnaire du réseau)
0 : adresse individuelle
1 : adresse de groupe
(si 1-----1 adresse Broadcast : diffusion à tout le monde…)
Les 3 premiers octets représentent un numéro constructeur, les 3 derniers un numéro de
série de la carte.
Numéro constructeur
Numéro carte
Exemple : (08:00:20) SUN, (08:00:5A) IBM, (08:00:09) HP, (08:09:11) Textronix,
(FF:FF:FF:FF:FF:FF) diffusion de la trame à toutes les stations du réseau.
Un constructeur peut acheter plusieurs numéros, ou même revendre une partie de ses
numéros.
Certains bits peuvent avoir des significations supplémentaires, soit dans le cas d'une
adresse locale, soit dans le cas d’adresses dites multicast. C’est une possibilité de
communication vers un groupe de stations reconnaissant des adresses spéciales débutant
par (01:00:5E). Cela permet d’envoyer des messages généraux sans occuper les couches
hautes de machines non concernées.
5.3) Contrôle d'intégrité, détection des erreurs de transmission
5.3.1) Taux d'erreur, détection, correction
Le taux d'erreur pour un réseau correct peut être compris entre 10-7 et 10-10, c'est à dire un
bit erroné tous les 10 millions de bits ou tous les 10 milliards.
L'objectif pour un réseau local est d'atteindre un taux de 10-14 erreurs non détectées.
Si le réseau échange des données à 10 Mbits/sec, cela fera une erreur toutes les 10+7
secondes (dans l'hypothèse d'un trafic permanent). Ce qui correspond à 3000 heures ou 3
mois de fonctionnement sans erreurs non détectées. Cela peut paraître très important,
mais une seule erreur non détectée peut avoir des conséquences très graves (fichier
endommagé, programme ayant une action imprévue...).
Nous avons vu (chapitre couche physique) qu'il existait deux types de perturbations dans
les réseaux : le bruit aléatoire et les parasites transitoires. Par conséquence, nous serons
confronté à deux types d'erreurs : des erreurs aléatoires, plus facilement détectables, et
des erreurs groupées qui peuvent générer un message intelligible mais faux.
55
Le contrôle de l'intégrité des données peut prendre deux aspects : la détection ou la
correction. Si le message contient suffisamment de redondance, il peut être possible de
corriger l'erreur sans avoir à retransmettre.
On arrive au schéma de fonctionnement général suivant :
Demande de
retransmission
1 : correction possible
2 : correction impossible
2
1
Erreur détectée
données
Correction
OK
Utilisation
Erreur non détectée
5.3.2) Généralités sur les codes
Pour prendre en compte la détection ou la correction des erreurs, il est nécessaire de ne
plus considérer l'information comme une suite de bits sans lien. Les bits sont donc
regroupés dans des ensembles plus grands d'information.
Mot : suite de bits représentant la plus petite unité de données dans un message.
Code : ensemble de mots constituant toutes les possibilités que l'on a pour construire un
message complexe.
La confusion entre deux mots est d'autant plus probable que ces deux mots se
ressemblent. Pour quantifier cette probabilité de confusion, on définit une distance entre
deux mots d'un code : c’est la distance de Hamming.
Distance de Hamming de deux mots (distance entre deux mots d'un code) : nombre de
bits différents entre les deux mots
Exemple :
0 0 1 1 et 0 0 1 0 : distance d = 1
0 0 1 1 et 1 1 0 0 : distance d = 4
Distance de Hamming d'un code : distance entre les deux mots les plus proches d'un code
:
Espace des mots projeté :
N dimensions si N bits
.
.
.
.
.
.
.
.
X
.
.
.
.
X
.
X
.
.
.
.
.
.
.
.
.
.
.
.
X
X
.
.
. .
. .
X .
. .
. .
d
. .
. X
. .
.
X
.
.
X
.
.
.
.
.
.
.
.
.
.
.
X : mots du code
… : ensemble des mots possibles
d : distance de hamming
En pratique, on peut utiliser la représentation de Karnaugh qui déplie l'espace à N
dimensions sur un plan en respectant (si on en connaît les conventions) la connexité des
mots.
56
La distance entre deux mots est alors le nombre de cases qu'il faut parcourir pour aller
d'un mot à l'autre.
Exemple :
Code :
0
0
0
1
0
1
1
0
0
0
1
0
00 01 11 10
X
X
0
d=1
1
En déplaçant les mots, on peut améliorer le code :
0 0
00 01 11 10
0 1
0 X
X
1 0
1
X
X
1 1
X X
0
1
1
0
d=2
Performance d'un code détecteur d'erreurs ou correcteur :
On peut détecter un nombre p d'erreurs dans un mot à condition que la distance de
Hamming du code soit supérieure ou égale à p+1.
On peut corriger un nombre p d'erreurs dans un mot si la distance de Hamming est
supérieure ou égale à 2p+1.
Exemple : Code
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
Ce code est composé de 4 mots avec une distance de 5 ;
On peut donc détecter 4 erreurs et en corriger 2.
Il est clair que pour obtenir ces performances, le code doit contenir une grande
redondance (dans le cas précédent 2 bits d'information, 10 bits transmis).
De plus, un mauvais choix des mots pourrait rendre encore plus mauvaises les
performances. La première nécessité sera donc de répartir les mots au mieux pour
optimiser la distance du code :
x
x
x
x
Symboles
proches
x
x
x
x
Nous allons voir plusieurs mises en oeuvre du contrôle et de la correction d'erreurs.
57
5.3.3) Parité simple
Principe :
• Parité paire : nombre pair de bits à 1 dans les mots du code,
• Parité impaire : nombre impair de bits à 1 dans les mots du code.
On rajoute pour cela un bit de parité à 0 ou 1, pour respecter la parité :
1 1 1 0 1 1 0 0 1 : parité paire (6 bits à 1)
La distance de Hamming est de 2 (les deux mots les plus proches avant parité ne sont pas
de même parité)
On peut détecter 1 erreur, mais pas 2, 3 peuvent être détectées...
Exemple : liaison RS232
5.3.4) Parité transversale et longitudinale
Cette méthode combine une double parité, en plus de la parité sur chaque mot, on réalise
une parité transversale sur un bloc de mots.
Exemple :
1 1 1 0 1 1 0 0
1
0
0
0
1 0 1 1 1 0 0 1
1
0
0
1
1
1
0
0
1
1 . . . 0 . . .
.
1
1 1 1 0 1 1 0 0
1
0
0
0
1 0 1 1 0 0 0 1
1
0
0
1
1
1
0
0
1
1 . . . 0 . . .
.
1
erreur de parité
erreur de parité
Trame envoyée
Trame reçue
Détection de deux erreurs minimum (ou 3 erreurs si on utilise la parité de la parité),
correction de 1 erreur.
La détection peut être beaucoup plus performante si la configuration des erreurs est
favorable.
5.3.5) Checksum
C'est un contrôle global sur un bloc de mots. On ajoute tous les mots du bloc modulo la
taille du mot de checksum pour garder le même format.
M1
M2
M3
M4
M5
M6
Suite de mots
M7
M8
…
cks
Mot de Checksum
Cette méthode permet la détection d'une erreur simple ou d'erreurs groupées sur le même
mot (pas la parité). Elle a un bon rendement car la séquence de mots peut être longue.
58
5.3.6) Code cyclique (CRC : Cyclical Redundancy Check)
Pour obtenir une méthode performante pour la vérification d'intégrité, il faut combiner le
principe du checksum, qui a un bon rendement mais qui détecte peu d'erreurs et celui d'un
codage mieux réparti ayant une distance de Hamming plus importante. On crée pour cela
un code périodique dont les mots seront équi-répartis.
On utilise pour cela une approche basée sur une division polynomiale où l’on transmet le
reste de la division en complément du mot de code.
Le calcul se fait en plusieurs étapes :
-
Association Mot binaire – Polynôme
Soit un mot binaire : chaque bit peut être considéré comme une variable prenant deux
valeurs 0 ou 1 ; appelons ces variables an-1,...., a2, a1, a0 si le mot contient n bits.
On peut écrire le polynôme équivalent : P(x) = a0 + a1x + a2 x² + a3x3 + .... + an-1 xn-1
Exemple : Soit le mot 10001111. Il est équivalent au polynôme :
P(x) = x7 + x3 + x² + x + 1
-
On utilise un polynôme spécial dit polynôme générateur G(x) de degré n
On divise le polynôme xn P(x) par G(x) : le reste est un polynôme R(x)
xn P(x) = Q(x) G(x) + R(x)
Si on effectue les opérations modulo 2 (c’est à dire sans aucune retenue), alors
l’addition est équivalente à la soustraction et au ou exclusif. Ceci facilite les calculs
rapides (utilisation de circuits logiques). Les propriétés des polynômes ne sont pas
modifiées.
On peut alors calculer :
xn P(x) − R(x) = Q(x) G(x) = Y(x)
Le polynôme Y(x) est alors un multiple de G(x).
Cela signifie que chaque polynôme Y(x) généré à partir de P(x) est éloigné d’un autre
polynôme Y(x) par une distance G(x).
Le polynôme transmis (le mot de code avec contrôle) est le polynôme Y(x) qui contient
dans les bits de poids fort la véritable information et dans les bits de poids faibles le reste
appelé CRC qui va servir au contrôle d’intégrité.
Celui-ci est réalisé, par la machine réceptrice, en vérifiant que Y(x) est bien divisible par
G(x).
Exemple :
Mot de données : (1 1 1 0) : P(x) = x3 + x² + x ;
Polynôme générateur G(x) = x² + 1 (1 0 1)
x² P(x) -> 1 1 1 0 0 0
59
1 1 1 0 0 0
1 0 1
1 0 0
1 1 0 1
0 1 0
1 0 0
0 1
Degré < n
On transmet : 1 1 1 0 0 1
CRC
5.3.7) Méthodes utilisées dans les réseaux
Il existe plusieurs polynômes utilisés dans le contrôle d’intégrité.
On peut citer :
Recommandations V41 du CCITT : G(x) = x16 + x15 + x5 + 1
Ce code génère une clef de 16 bits. Il possède les performances suivantes.
Détection erreurs isolées :
1, 2 et 3 erreurs isolées
Détection de salves d’erreurs :
si nombre de bits < 17 bits
si nombre impair de bits
et 99.998 % des salves paires >16 bits
On considère qu’on multiplie par 10-4 le taux d’erreurs
Dans certains réseaux locaux, la clef a une taille plus importante de 32 bits.
Remarque : la correction d’erreurs n’est pas utilisée dans les réseaux locaux car cela
conduirait à une redondance trop forte.
5.4) Contrôle de l'accès, partage du canal
L’accès au médium d’un réseau local doit être contrôlé afin que plusieurs sources
n’émettent pas en même temps. On dit qu’il y a partage du canal.
Ce partage doit être considéré de manière temporelle. On parle de multiplexage car il y a
partage du temps d’occupation entre plusieurs sources.
5.4.1) Classification
Il existe plusieurs possibilités pour gérer l’accès à un canal de transmission que l’on va
traiter sous forme de dichotomies successives.
Partage
du canal
Multiplexage
synchrone
Multiplexage
asynchrone
Accès
aléatoires
Accès
bus
60
Accès
contrôlés
Accès
anneau
Gestion
centralisée
Gestion
décentralisée
* Multiplexage synchrone :
Une tranche de temps est réservée à chaque poste (même si rien à émettre)
1
2
Rien à
émettre
3
1
2
3
1
2
…
Rien à Rien à
émettre émettre
- Gestion simple, faible rendement, permet d’envisager des contraintes temps réel.
Méthode utilisée dans certains autocommutateurs (PABX), et pour l’interrogation
d’automates.
Cette méthode peut être en partie utilisée dans des réseaux comme ATM (ou FDDI) pour
permettre la transmission d’information en temps réel (vidéo, son). Il faut alors prévoir une
tranche synchrone pour les applications, le reste gardant un caractère asynchrone.
* Multiplexage asynchrone :
L’ordre d’accès est non fixé, il dépend de la demande.
Il y a un meilleur rendement mais il faut prévoir une gestion des accès multiples.
** Accès aléatoire : chaque machine décide d’émettre quand elle veut.
*** Accès aléatoire de type bus :
La liberté totale d’émission sur un même médium => collision => gestion des collisions
1
0
1
0
0
0
Bon à faible trafic, mais risque d’écroulement à fort trafic : solution réseaux locaux.
*** Accès aléatoire type anneau :
Circulation continue de trames sur le réseau.
Si demande d’émission + trame vide => émission
Bon à faible trafic. Dans les cas contraire, les délais
augmentent.
Cette solution est utilisée pour des réseaux métropolitains de grande taille où il est
nécessaire de faire circuler plusieurs trames provenant de plusieurs sources.
** Accès contrôlés :
L’émission est alors contrôlée par un mécanisme qui définit un ordre de passage, des
priorités...
61
*** Accès contrôlé centralisé :
Un maître interroge tous les postes tour à tour.
Si rien à émettre -> suivant
(la tranche de temps n’est pas réservée)
Polling -> réseaux d’automates
*** Accès contrôlé décentralisé :
J
On utilise un jeton donnant un droit d’émission.
L’ordre de passage du jeton est fixé.
Bon à fort trafic : bonne répartition de la bande
passante du canal.
Attention : ne pas mélanger circulation du jeton (topologie logique) et des données
(topologie physique)
5.4.2) Temps de communication
a) Définitions
2
Eqpt 1
1
3
Eqpt 2
c durée d’émission ou durée de transmission : TT = n/C
n = nombre de bits à transmettre
C = débit en bits/sec
Exemple : 10 Mbits ; 1000 bit -> 100 µsec
d délai de propagation ou délai de transmission :
TP = TPL + TPE
TPL : temps de propagation de la ligne
TPL = L / Vm avec Vm : vitesse sur le médium ; L longueur de la ligne
62
Vm = vitesse de la lumière pour les fibres (ou la radio)
Vm ≈ 5 km/µsec sur une ligne électrique chargée
TPE : temps de propagation dans les équipements
avec k nombre de bits stockés dans un équipement, NE nombre
TPE = k NE / C
d’équipements, C débit
En fait k pourrait être différent pour chaque équipement. Il faudrait alors faire la somme sur
tous les équipements i des ki NEi.
e Durée d’occupation de la ligne
Eqpt 1
Eqpt 2
t
T0 T0+TT
T0+TP
t
T0+TT+TP
La ligne est occupée entre T0 et T0 + TP + TT
La durée d’occupation est donc de TP + TT.
On peut utiliser une représentation temps distance :
Equipement 1
T0
Equipement 2
distance
T0+TT
T0+TP
temps
T0+TT+TP
f longueur d’occupation sur le médium.
Locc = Vm TT
Exemple : bus 10 Mbits/sec, 1000 bits, 5 km/µsec --> Locc = 20 km >>L
100 Mbits/sec, 100 bits, 5 km/µsec ---> Locc = 200 m ~ L
b) Conséquence sur une topologie bus + accès aléatoire
Si il y a émission quasi-simultanée, alors on a une collision des deux messages.
63
Détection collision
Début émission
Détection de fin de porteuse
Arrêt émission
Equipement 1
temps
Equipement 2
temps
Début émission
Détection collision
distance
Arrêt émission
Détection de fin de porteuse
Délai de
propagation
Comme un niveau est prioritaire sur l’autre (collecteur ouvert)
Î pour une des stations qui émet émission ≠ réception
Î détection des collisions
Influence du délai de propagation :
Une collision n’est pas détectée par toutes les stations si la durée de la transmission est
trop petite.
Equipement 1
Emission vers 2
Réception
temps
Collision
temps
Equipement 2
Emission vers 1
Réception
Durée d’émission ≥ 2 x délai de propagation (tranche canal)
Emission 1
temps
Equipement 1
TP
TP
Conséquence :
Détection équipement 1
si encore émission
⇒ TT≥2xTP
Equipement n
Emission n
distance
=> limite minimale en durée d’émission + limite maximale en longueur de câble.
64
c) Circulation des trames sur un anneau physique
Suivant les caractéristiques une trame peut faire le tour de l’anneau ou bien être localisée
sur une partie.
On peut définir une tranche canal qui correspond au temps que met une trame pour faire
le tour de l’anneau.
Taille d’une
trame
Généralement,
Taille Trame > Taille Anneau
5.5) Normes
5.5.1) Norme 802.3
a) Partage du canal : méthode CSMA/CD
CSMA/CD : Carrier Sense Multiple Access / Collision Detection
Toutes les stations sont à l’écoute sur le même fil (topologie bus). Elles doivent donc
détecter les conflits (collisions).
Emission d’une trame
Assemblage de la trame
Demande
émission
Ecoute
libre
Collision
détectée
Gestion
collision
Oui
Emission brouillage
Non
Non
Début
émission
Retour
OK
Non
Débuter émission
Décision
Réémission
Occupé
Fin message
Détection
porteuse
Oui
Transmission finie
Oui
E≠ S
Retour
collision
Incrémenter compteur
de tentatives
Trop de
tentatives
Oui
Non
Calcul attente
Attente
Compte rendu
Transmission réussie
Compte rendu
Echec trop de collisions
Calcul du temps d’attente : BEB (Binary Exponential Backoff)
Tirage aléatoire dans un domaine qui croît exponentiellement (2, 4, 8....) avec une limite à
210
65
Si le nombre de collisions successives dépasse 16 il y a arrêt (le nombre d’intervalles
reste à 1024)
0 1 x T0
---->
0 1 2 3 x T0 -> ........->
0 1 ....2i-1 x T0
Equipement 1
t
T1
Equipement 2
t
T2
∆t
Equipement 3
∆t
t
∆t intertrame
T1 et T2 temps « BEB » (Binary Exponentiel Back Off)
Emission en attente
Emission
Brouillage
b) Partage du canal : méthode CSMA/DCR (802.3D)
DCR : Deterministic Collision Resolution
L’algorithme de résolution est modifié afin de garantir un délai maximum (réseau industriel
temps réel).
Après une collision, les stations ne réémettent que si elles sont dans un groupe gagnant
pré-déterminé. Le choix se fait par dichotomie -> arbre binaire de résolution.
La gestion d’une collision fait intervenir dans l’arbre toutes les machines car la provenance
de la collision est inconnue.
état du bus
Collision entre 7 stations : n
m
c
c
c
pcv
c
c
collision initiale
m
c
m
c
pcv
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Figure 14 : CRCD : arbre binaire
66
début
d’époque
m1
m3
m4
pcv
m7
m8
m10
m12
pcv
fin
d’époque
Stations
0
1
C
C
C
E
C
C
C
2
3
4
5
C
C
6
7
C
C
C
C
C
E
C
E
E
V
E
1
2
3
4
5
6
7
8
9
10
11
Collision initiale les stations 0, 1, 3, 6 et 7 émettent simultanément.
Temps
C = collision – E = émission – V = tranche de canal vide
Stations non autorisées à émettre
Figure 15 : CRCD : Timing collision sur 5 stations.
c) Format des trames :
Champs
Taille en octets
PRE
7
SFD
1
DA
2/6
SA
2/6
LEN
2
LLC Data (données)
<1519
PAD
<64
FCS
4
Tableau 3 : Format des trames IEEE 802.3
PRE :
Préambule : séquence 1010…1010 destinée à l’autosynchronisation des
répéteurs.
SFD :
Start Frame Delimiter (délimiteur de début) : séquence 10101011 marquant
le début des informations exploitables.
DA :
Destination Adress (adresse de destination) : codable sur 16 ou 48 bit, mais
la taille est fixe pour un réseau donné.
SA :
Source Adress (adresse de l’émetteur) : même structure que le DA.
LEN :
Longueur des données en octets.
LLC DATA : Données : échangées entre entités du sous–niveau LLC, en nombre entier
d’octets.
PAD :
Padding (Bourrage) : données sans signification insérées uniquement si le
champ Données a une longueur insuffisante pour que les collisions puissent
être détectées à coup sûr (temps d’émission supérieur à la tranche du canal).
FCS :
Frame Check Sequence (séquence de vérification de la trame) : c’est la clé
obtenue par un CRC de degré 32.
d) Problèmes de fonctionnement
La connexion ou la déconnexion d’une machine durant le fonctionnement du réseau n’a
aucune conséquence importante sur le transfert des informations. Il peut seulement y
67
avoir création temporaire de parasites qui sont interprétés soit comme des collisions soit
comme des trames endommagées. La logique du réseau permettant de récupérer ce
genre d’erreurs.
A l’inverse si une station émet en continu (babillage) alors le réseau ne fonctionne plus.
Pour éviter cela, on peut prévoir au niveau physique une temporisation sur l’émetteur.
Celui-ci étant automatiquement coupé si la durée d’émission est trop longue.
5.5.2) Norme 802.4
a) Partage du canal : jeton sur bus (Token Bus)
Utilisation d’une boucle logique entre les postes (anneau virtuel), ces derniers sont tous
reliés sur un même bus physique.
Chaque poste a une adresse unique. Un jeton (autorisation d’émettre) circule par
adresses décroissantes. La fermeture de la boucle est faite par le poste de plus faible
adresse qui renvoie le jeton vers le poste de plus forte adresse.
Chaque communicateur mémorise :
- son adresse TS (This Station),
- l’adresse de son prédécesseur PS (Previous Station),
- l’adresse de son successeur NS (Next Station).
TS=4
PS=6
NS=3
TS=5
TS=6
PS=7
NS=4
TS=3
PS=4
NS=2
TS=8
TS=2
PS=3
NS=7
TS=7
PS=2
NS=6
Durée d’émission :
Quand une station a le jeton, elle émet si besoin (si elle a des trames à émettre) et ceci
jusqu’à épuisement d’un temps donné (TE : temps d’émission).
TREJ : temps de rotation effectif du jeton : délai entre deux possessions successives du
jeton pour une station.
TREJMAX = N TE (si N stations actives sur le bus).
Si le trafic est fort, ce temps peut être grand et ne pas répondre aux besoins.
Mécanisme de priorités :
Pour assurer des délais plus courts à certaines trames, on les privilégie en définissant des
priorités : il existe 4 niveaux de priorité.
A une trame, on affecte un OTR (Objectif Temps de Rotation) parmi 4 valeurs.
Les plus prioritaires (OTR > TREJMAX) agissent comme les trames précédentes (sans
priorité).
68
Les autres ne sont émises que si OTR > TREJ (c’est à dire si le trafic est faible).
Exemple : soient 4 stations, dont 2 seulement, numérotées 7 et 5, sont dotées du
mécanisme de priorité, limité ici à deux classes. On suppose :
- que la station 9 n’émet que des trames de 128 octets, et que le temps qui lui est
alloué, lui autorise d’envoyer 3 trames à chaque possession du jeton,
- que la station 1 n’émet que des trames de 305 octets, et ne peut en émettre que 2
à chaque possession du jeton,
- que les stations 7 et 5 n’ont que des trames de faible priorité à émettre, de
longueurs respectives 400 et 356 octets (elles peuvent en émettre 3 à chaque
possession du jeton),
- que la trame jeton a une longueur de 19 octets.
TS=9
Numéro du tour du jeton
0
1
2
3
4
5
TS=7
OTR=1600
TS=5
OTR=1600
TS=1
TREJ TE OE TREJ TE OE TREJ TE OE TREJ TE OE
x
0
19
x
0
19
x
0
19
x
0
19
76
3 403 460
3 1219 1660 0
19 1660 2 629
2270 3 403 2270 0
19 1070 2 731 1782 2 629
1782 3 403 1782 0
19 1782 0
19 1070 2 629
1070 3 403 1070 2 819 1870 0
19 1870 2 629
1870 3 403 1870 0
19 1070 2 731 1782 2 629
TS = This station : numéro de station, TE = Trames émises, OTR = Objectif de Temps de Rotation,
OE = Octets émis, TREJ = Temps de Rotation Effectif du Jeton.
De la même manière que pour la norme 802.3, on peut définir une tranche canal ou temps
de base :
Temps de base
= délai total maximal entre l’émission d’une trame et une confirmation
en retour.
= 2 délais de propagation entre les deux machines les plus éloignées +
1 temps de réponse de la couche MAC.
Ce temps doit être défini à l’initialisation du réseau.
Fenêtre de réponse (FR) : temps pendant lequel une station qui a émis se met à l’écoute
en attente d’une réponse après certaines trames.
En général FR = 1 ou 2 ou 3 temps de base.
Après émission de certaines trames (« Requête avec réponse attendue ») la station
destinatrice peut émettre sa réponse sans avoir le jeton.
b) Fonctionnements « anormaux » (transitoires)
* Initialisation du réseau.
•
Création du jeton.
Les stations émettent une trame CLAIM_TOKEN dont la durée est liée à leur adresse
(adresse élevée = trame de longue durée). A la fin de l’émission chaque station écoute
le bus :
- si message sur le bus -> abandon,
- si plus de message -> la station gagne le jeton.
69
- Recherche de successeur.
La station ayant le jeton émet une trame « SOLICIT_SUCCESSOR_2 » contenant sa
propre adresse. Réponse des autres stations par la trame « SET_SUCCESSOR ». Si
plusieurs réponses simultanées (collision), il y a émission d’une trame
« RESOLVE_CONTENTION ». Les stations candidates répondent à nouveau après un
temps dépendant de leur adresse (forte adresse, faible temps), la première réponse est
seule prise en compte.
En pratique, le démarrage des stations d’un réseau n’est pas instantané et on se retrouve
dans une configuration d’ajout de stations durant le fonctionnement.
* Gestion des adresses successeurs.
•
Prise en compte de nouveaux arrivants.
Périodiquement, au moment de transmettre le jeton, les stations interrogent le réseau
par une trame « SOLICIT_SUCCESSOR ».
- Si TS > NS : émission d’une trame « SOLICIT_SUCCESSOR 1 » contenant les
deux numéros TS et NS. Seules les stations comprises entre TS et NS répondent.
- Si TS < NS : émission de « SOLICIT_SUCCESSOR 2 », ceci permet aux stations
extérieures à l’anneau actuel de répondre. Les stations de numéro < TS répondent
dans la première fenêtre. Les stations de numéro > NS répondent dans la 2ème
fenêtre (si aucune réponse dans la première fenêtre).
La réponse est réalisée par une trame « SET_SUCCESSOR » :
- si pas de réponse le jeton circule comme avant,
- si une réponse, la station change son NS (l’ordre de passage du jeton par numéro
décroissant est toujours respecté grâce à ce principe).
Si il y a plusieurs réponses : émission d’une trame « RESOLVE_CONTENTION » avec le
même principe qu’à l’initialisation (la première réponse est prise en compte).
2
5
7
10
15
17
Figure 16 : Utilisation des trames SOLICIT_SUCCESSOR.
Soient les stations 5, 10, 15 actives et 2, 7 et 17 candidates.
Emise par 10 : SOLICIT_SUCCESSOR_1 (DA=5)
Réponse de 7 seule dans la fenêtre
Emise par 5 : SOLICIT_SUCCESSOR_2 (DA=15)
Réponse de 2 dans la première fenêtre
Réponse de 17 dans la seconde fenêtre
• Prise en compte d’une panne de successeur.
Après avoir transmis le jeton, la station écoute -> si rien de cohérent ne circule alors
(après réémission du jeton une nouvelle fois) :
- Emission d’une trame « WHO_FOLLOWS » (contenant l’adresse suivante
suspectée de panne)
- Le successeur du successeur (celui pour qui l’adresse envoyée correspond à PS)
répond « SET_SUCCESSOR », NS et PS sont alors modifiés.
- Si pas de réponse, alors la station qui a détecté le problème sur son successeur
émet une trame « SOLICIT_SUCCESSOR_2 », on se retrouve dans un cas de
70
panne grave (2 stations ou plus arrêtées en même temps), en général, la gestion
est identique à celle réalisée lors d’une initialisation.
•
Retrait volontaire d’une station.
Avant de transmettre le jeton, la station prévient son prédécesseur par une trame
« SET_SUCCESSOR » contenant le NS. Le prédécesseur change alors son NS.
1
6
1
Successeur
désigné (5)
1
2
6
2
3
5
3
2
Jeton
5
4
4
La station 6 veut se retirer :
1 : elle change le successeur de son
prédécesseur
2 : elle passe le jeton à son successeur.
Configuration de l’anneau
logique après un tour du
jeton.
* Gestion du jeton
•
Perte du jeton :
Si une station détecte une inactivité supérieure à 7 temps de base, elle lance une
procédure d’initialisation.
•
Duplication du jeton :
Toute station qui possède un jeton et qui reçoit une trame qu’elle n’a pas provoquée
(soit émise, soit trame réponse), détruit son jeton.
Cette détection s’effectue plus particulièrement après les trames « WHO_FOLLOWS »
et « SOLICIT_SUCCESSOR », si la réponse est autre que « SET_SUCCESSOR »,
alors ceci signifie qu’il existe deux jetons.
c) Format des trames
Champs
Taille en octets
PRE
1+
SD
1
FC
1
DA
2/6
SA
2/6
Data Unit (données)
0 à 8191
FCS
4
ED
1
Tableau 4 : Format des trames IEEE 802.4
PRE :
Préambule : un ou plusieurs octets, constitué de symboles pad idle.
SD :
Start Delimiter (délimiteur de début) : constitué des symboles NN0NN000
avec N = Non Data, 0 = zéro.
FC :
Frame Control (contrôle du type de la trame) : le contenu de ce champs est
explicité dans le tableau suivant.
DA :
Destination Adress (adresse de destination) : contenu conforme à la norme
IEEE 802.3.
SA :
Source Adress (adresse de l’émetteur) : même structure que le DA.
71
Data Unit:
Données : le contenu de ce champs dépend du type de trame : données
échangées entre entités du sous–niveau LLC, données de gestion des
stations, données spécifiques de trames de service ; c’est un nombre entier
d’octets.
FCS :
Frame Check Sequence (séquence de vérification de la trame) : elle est
composée à partir d’un polynôme générateur de degré 32, mais ce n’est pas
un simple CRC.
ED :
End Delimiter (délimiteur de fin) : constitué des symboles NN1NNIIE avec N
= Non Data, 1 = un, I = bit intermédiaire à 1 si une autre trame suit et à 0
sinon, E = erreur positionnée par un répéteur.
Codage
Trames de
service
MAC
TOKEN
WHO_FOLLOWS
SOLICIT_SUCCESSOR_1
SOLICIT_SUCCESSOR_2
SET_SUCCESSOR
RESOLVE_CONTENTION
CLAIM_TOKEN
Contenu du champ
Adresse destination
NS
–
NS
001000
000011
000001
000010
001100
000100
000000
00
TS si inititialisat. NS sinon
TS du demandeur
–
–
Trames de
ordinaire
000
Données
Adresse
requête avec réponse attendue
01
001
PPP
LLC
réponse à la requête précédente
010
destination
Trames de
ordinaire
000
Données
requête avec réponse attendue
10
001
PPP
couche supérieure réponse à la requête précédente
010
NS : Next station, TS : This station, PPP : niveau de priorité (000 : le plus faible, 111 : le plus élevé).
Contenu du champ
Données
–
NS
–
–
TS du répondeur
–
Valeur arbitraire longueur =
0, 2, 4 ou 6 temps de base
Données
Tableau 5 : Format du champs Frame Control.
5.5.3) Norme 802.5
a) Partage du canal : jeton sur anneau (Token Ring)
Les trames circulent sur un anneau physique. A un instant donné, une seule trame est
présente sur l’anneau, il n’y a qu’un émetteur.
L’autorisation d’émission est obtenue grâce à une trame spéciale : le jeton. Lorsqu’une
station veut émettre, elle attend le jeton, et envoie à sa place sa trame de données qui
circule sur l’anneau.
J
A
D
P
A
D
B
C
J
P
P
B
P
C
1
A
J
2
D
P
A
D
B
C
J
P
B
C
3
72
P
4
Chaque station reçoit et réémet la trame. Si la trame lui est destinée, elle la stocke mais la
réémet en modifiant un flag du FRAME_STATUS (4 bits de la trame). Lorsque la trame a
fait un tour, son auteur la retire et vérifie qu’elle a bien été reçue.
La station en possession du jeton continue d’émettre (si elle a d’autres trames et n’a pas
dépassé la durée maximum d ’émission) ou bien passe le jeton à la suivante sur l’anneau.
Mécanisme de priorité.
Tout jeton a un niveau de priorité PJ. Chaque trame à émettre a un niveau de priorité PT.
Si PT ≥ PJ alors il y a émission.
L’augmentation de la priorité du jeton se fait par réservation. Quand une trame passe
devant une station celle-ci peut faire une réservation à un niveau donné. Le possesseur du
jeton, au retour de la trame réemet un jeton de priorité égale à la réservation. C’est le
poste qui a émis le jeton avec une nouvelle priorité qui redescendra plus tard la priorité du
jeton. Ceci assure qu’un jeton à une priorité donnée fasse un tour complet, tous les postes
ayant des trames à cette priorité peuvent alors émettre.
il existe 8 niveaux de priorité. Le schéma suivant décrit plusieurs cycles de
fonctionnement. La trame est notée T suivie de deux chiffres (exemple : T5.7 : trame de
priorité 5 avec une réservation de priorité 7). La notation pour le jeton est identique : J3.5.
A
B
J3.0
A
D
B
A
D
T3.5
B
T3.7
D
T3.5
C
C
C
a) un J3.0 arrive devant B qui le
piège et émet une T3.0
b) la T3.0 arrive devant C qui fait
une réservation de P=5
c) la T3.5 arrive devant D qui fait
une réservation de P=7
A
A
A
T3.7
B
J7.0
D
B
D
J7.5
B
T7.0
J7.5
C
C
C
d) la T3.7 revient à B
B crée un J7.0
e) C reçoit le J7.0 et fait une
réservation de P=5
f) D piège le J7.5
et émet une T7.0
A
A
A
B
T7.5
D
B
J7.5
D
B
J7.5
J5.0
D
D
T7.5
C
C
C
g) la T7.0 arrive devant C qui fait
une réservation de P=5
h) la T7.5 revient à D
D libère le J7.5
i) le J7.5 revient à B qui l’élimine
et crée un J5.0
A
A
A
T5.0
B
D
B
T5.0
D
J5.0
J5.0
B
J5.0
J3.0
D
C
C
C
j) le J5.0 arrive devant C qui le
piège et émet une T5.0
k) la T5.0 revient à C qui l’élimine
et libère le J5.0
l) le J5.0 revient à B qui l’élimine
et libère le J3.0
73
b) Occupation du canal
Suivant la taille du réseau, la trame occupe toute la boucle ou non. Une station en
émission peut alors recevoir son propre message avant la fin de l’envoi. La station détruit
donc son message au fur et à mesure qu’elle le reçoit.
Pour des réseaux très petits, il est tout de même nécessaire de prévoir un tampon de
données sur une station. Une station ayant un rôle particulier (le moniteur) stocke 24 bits
(3 octets), ce qui correspond à la taille du jeton. Ce tampon de données est aussi utilisé
pour des raisons de synchronisation (l’horloge de départ a un retard notable après avoir
effectuée un tour d’anneau). Cette horloge est en fait toujours présente sur l’anneau,
même lorsqu’il n’y a pas de données, ceci permet de synchroniser les stations en
permanence.
c) Fonctionnements transitoires ou anormaux
A la différence des précédentes normes, il existe une station ayant une fonction
particulière : le moniteur. Toute station est un moniteur potentiel (ou de secours), le
moniteur actif étant la station qui a émis le jeton. Cet aspect de contrôle n’est utilisé qu’en
cas de problème, ce qui fait que la norme 802.5 est bien classée comme une méthode à
accès aléatoire.
* Initialisation.
- La première station en marche crée le jeton (et devient moniteur actif). Ceci est
réalisé par une émission d’une trame « CLAIM_TOKEN ».
- Test d’unicité d’adresse : à l’insertion, chaque station vérifie que son adresse est
unique par la trame « TEST_ADDRESS_DOUBLE ».
- Création de la table des adresses. Le moniteur fait circuler une trame
« ACTIVE_MONITOR_PRESENT », le 2ème poste mémorise l’adresse source et
émet une trame « STAND_BY_MONITOR_PRESENT », la 3ème mémorise
l’adresse source puis réemet...
Chaque station connaît ainsi son prédécesseur sur l’anneau.
* Mise en marche ou arrêt de stations.
Pour garantir en permanence une continuité sur l’anneau physique (obligatoire pour le
fonctionnement), les stations sont reliées à la boucle par un relais d’insertion qui ferme la
boucle à l’état repos. Lorsque la station est mise en fonctionnement et intégrée sur le
réseau, le relais s’ouvre automatiquement et les trames passent alors par l’électronique de
la station. Physiquement, arrêt ou la mise en marche de stations ne posent donc pas de
problème de gestion.
* Coupure de boucle.
Une coupure de boucle peut provenir de deux causes :
- coupure du médium : le réseau est alors inopérant (sauf si une procédure de
doublement de la boucle est prévue), mais ce n’est pas un cas courant.
- panne d’un coupleur : le poste coupable garde son relais d’insertion ouvert, mais
son électronique ne transmet plus les messages. Ce cas est traité par la machine
qui suit et qui ne reçoit plus rien. Elle détecte l’absence d’émission pendant un
temps déterminé et émet alors une trame « BEACON »1 de reconfiguration avec
l’adresse de la machine précédente, cette trame déclenche directement la
désactivation de la station incriminée et la fermeture de son relais d’insertion.
* Perte de jeton.
Le moniteur surveille l’activité, si le temps d’inactivité se prolonge au delà d’un temps fixé,
il crée à nouveau un jeton.
1
Alarme, balise.
74
* Arrêt du moniteur actif.
Le moniteur génère périodiquement une trame « ACTIVE_MONITOR_PRESENT», si une
station détecte l’absence d’une telle trame pendant un temps déterminé, alors elle envoie
une trame « CLAIM_TOKEN », et si elle est seule à avoir envoyé cette trame, elle devient
moniteur actif.
* Trame orpheline.
Si une station en train d’émettre est arrêtée (arrêt brutal ou panne) , la trame qui a
commencé de circuler n’est pas détruite par la station émettrice (à arrêt). Cette trame
tourne sans arrêt sur l’anneau et bloque toute communication. Pour palier cela, le
moniteur marque chaque trame qui passe par lui en modifiant un bit de la trame (M = 1). Il
peut ainsi détecter une trame qui a fait plus d’un tour et la supprimer. En général, cette
procédure est suivie d’une réinitialisation du réseau par une trame « RING_PURGE ».
* Trame incorrecte.
Une telle trame (checksum incorrect, mauvaise longueur...) est détectée par le moniteur
qui la supprime et réinitialise le réseau par « RING_PURGE ».
d) Format des trames
Champs
Taille en octets
SD
1
AC
1
FC
1
DA SA Data Unit (données) FCS
2/6 2/6
0 à 4027
4
ED
1
ES
1
Tableau 6 : Format des trames IEEE 802.5
SD :
Start Delimiter (délimiteur de début) : séquence constituée des symboles
JK0JK0 avec J et K symboles Non–Data et 0 = zéro, marquant le début des
informations exploitables.
AC :
Access Control (contrôle d’accès) (voir format ci-dessous).
FC :
Frame Control (contrôle du type de la trame) (voir contenu de ce champ cidessous).
DA :
Destination Adress (adresse de destination) : contenu conforme à celui de la
norme IEEE 802.3.
SA :
Source Adress (adresse de l’émetteur) : même structure que le DA.
DATA Unit : Données : contient les données du sous–niveau LLC, en nombre entier
d’octets.
FCS :
Frame Check Sequence (séquence de vérification de la trame) : elle est
composée à partir d’un polynôme de degré 32, mais ce n’est pas un simple
CRC (idem IEEE 802.4).
ED :
End Delimiter (délimiteur de fin) : constitué des symboles JK1JK1IE avec J et
K des symboles Non–Data, 1 = un, I = bit intermédiaire à 1 si une autre
trame suit et à 0 sinon, E = erreur positionnée par toute station qui détecte
une erreur dans la trame.
FS :
Frame Status (état de la trame) : constitué des symboles ACRRACRR où :
A = adresse reconnue, les deux bits sont positionnés à un par la station qui
reconnaît son adresse.
C = copié, les deux bits sont positionnés à un par la station qui a copié
correctement la trame.
R = bit réservé, non affecté
Remarque : A = 1 et C = 0 indique un engorgement en réception, et A = 0 et
C = 1 n’est pas valide.
75
PPP
RRR
T
M
PPPTMRRR
niveau de priorité du jeton (000 : faible, 111 : fort)
niveau de réservation du jeton
token (0 = jeton libre, 1 = jeton occupé)
monitor (mis à zéro par l’émetteur, mis à un par le moniteur)
Tableau 7 : Format du champ AC (Access Control)
Code
0000 0000
0000 0101
0000 0110
0000 0011
0000 0100
0000 0010
0100 0PPP
Fonction
Test address double
Active monitor present
Standby monitor present
Claim token
Ring purge
Beacon
Trame de donnée LLC avec niveau de priorité PPP
Tableau 8 : Format du champ FC (Frame Control)
5.5.4) Norme ISO9314 : F.D.D.I.
a) Principe
FDDI (Fiber Distributed Data Interface) est un réseau à haut débit (100 Mbits/s) et grande
distance (200 km). C’est en général un réseau fédérateur (interconnexion de réseaux
locaux). On peut le classer dans la catégorie des MAN.
Token bus
Passerelle
Boucle FDDI
Ethernet
Token ring
Ordinateur
Ethernet
Il possède une topologie en double anneau à fibre optique, ce qui permet d’allier sécurité
et rapidité. Une coupure sur le réseau n’interrompt pas le fonctionnement total, mais
conduit à une reconfiguration du câblage.
76
DAS
DAS
DAS
DAS
DAS
DAS
DAS
DAS
DAS
Anneau
principal
✄
Anneau
secondaire
DAC
DAC
DAC
✄
SAS
SAS
SAS
SAS
SAS
SAS
DAS : double attachement station
DAC : double attachement concentrator
SAS : single attachement station.
b) Fonctionnement global
FDDI fonctionne avec un mécanisme d’accès dit de rotation temporisée du jeton (TTR :
Timed Token Rotation). Ce protocole permet plusieurs classes de services :
- un service synchrone à bande passante garantie,
- un service interactif dit à bande passante partagée (service standard),
- un service en tâche de fond (batch) sans garantie.
Dans le protocole MAC de FDDI, on distingue une classe de service synchrone et une
asynchrone qui regroupe les services interactifs et batch, la distinction relevant alors de
niveaux de priorité différents. Pour le service asynchrone, on distingue aussi deux modes :
- un mode non-restreint (standard)
- un mode restreint où certaines machines peuvent se réserver un temps de
communication plus grand (exemple : serveurs de fichiers). Ce mode est rarement
utilisé.
A la réception du jeton, chaque station a un temps garanti d’émission, ce qui permet un
trafic synchrone.
Réception du jeton
trafic asynchrone
t
trame synchrone
Une station qui possède le jeton émet une ou plusieurs trames sans attendre le retour de
la trame. Il peut donc y avoir plusieurs trames sur la boucle. Mais, une seule station doit
émettre à la fois, il n’y a donc qu’un jeton. La station qui a émis les trames détruit leur
contenu au fur et à mesure de leur retour. L’en-tête de trame (PA SD DA SA Idle) ne peut
être détruit par la station qui a émis car il est situé avant l’adresse source : la station
émettrice ne pouvant reconnaître son paquet que lors du passage de l’adresse source. Le
restant du paquet est détruit par la station qui a le jeton, celle-ci purge toutes les trames
qui circulent sur l’anneau.
77
A
j
D
D
1
Ta
Ta
2 Tb
j
C
A
B
B
D
A
Tb
Ta 3
C
j
D
j
C
A
B
Td 4
Tb
C
1 : émission de A + jeton
A→B
2 : émission de B + jeton
B→C
3 : destruction de trame A,
Jeton C→D
4 : émission de D + jeton
D→A, destruction de
trame B
Par simplicité, les en-têtes
de trame non détruits ne
sont pas représentés.
B
Plusieurs mécanismes gèrent les temps de possession du jeton et donc le temps global de
rotation. Il est nécessaire d’imposer un temps maximum de rotation pour respecter les
contraintes du trafic synchrone. Pour cela 4 temps sont définis :
- TTRT (Target Token Rotation Timer) : c’est une valeur négociée entre les stations au
démarrage (compris entre 4 et 167 msec),
- TRT (Token Rotation Timer) : à la réception du jeton TTRT est chargé dans un
compteur qui est décrémenté en fonction du temps cette valeur donne TRT,
- THT (Token Holding Timer) : à la réception du jeton et avant que TRT soit initialisé,
TRT est chargé dans THT, cela donne la valeur du temps utilisable pour le trafic
asynchrone pour une station déterminée.
- TVX (valid Transmission Timer) : ce timer a une fonction plus globale de surveillance, il
permet les récupérations sur erreurs. En effet, si TVX est décrémenté jusqu’à 0 après
le passage du jeton alors la station détecte une erreur globale et lance une recherche
de jeton (Claim Token). TVX est initialisé à une valeur très supérieure à TTRT.
c) Mécanisme de priorité
Il est analogue à celui de la norme 802.4, il fait intervenir un TREJ (temps de rotation
effectif du jeton) et un OTR (objectif temps de rotation), mais avec quelques modifications.
A la suite du temps réservé pour le trafic synchrone, si TREJ < OTRi, alors l’émission des
trames de priorité i est possible. Il y a 8 niveaux de priorité pour le trafic asynchrone.
De plus deux types de jeton peuvent être utilisés :
- le jeton simple : il correspond à un fonctionnement normal, le temps entre deux
possessions de jeton étant égal à 2 TTRT. Cela permet d’écouler un trafic synchrone à
un taux de répétition garanti.
- le jeton réduit : il permet le fonctionnement en mode restreint, il supprime le trafic
asynchrone pour les machines fonctionnant en mode normal. Le trafic synchrone est
toujours assuré.
d) Format des trames
Champs
Nb de symboles
PA
16
SD
1
FC
1
DA
2/6
SA
4 ou 16
Données
0 à 9000
FCS
8
Tableau 9 : Format des trames de données FDDI (2 symboles = 1 octet).
78
ED
2
FS
2.k
PA :
SD :
FC :
Préambule :16 symboles I.
Start Delimiter (délimiteur de début) : deux symboles J et K.
Frame Control (type de la trame) (jeton, commandes MAC, données LLC,
trame asynchrone).
DA :
Destination Adress (adresse de destination) : type long ou court.
SA :
Source Adress (adresse de l’émetteur) : type long ou court.
DATA Unit : Données : contient les données du sous–niveau LLC, en nombre entier
d’octets.
FCS :
Frame Check Sequence (séquence de vérification de la trame) : basée sur
l’utilisation d’un CRC.
ED :
End Delimiter (délimiteur de fin) : deux symboles T et E (E est mis à "1" si
une erreur est détectée).
FS :
Frame Status (état de la trame) : constitué de paires de symboles A et C.
A = "1" si la station a reconnu son adresse.
C = "1" si la trame a été recopiée.
Champs
Nb de symboles
PA
2
SD
2
FC
2
ED
2
Tableau 10 : Format des trames de jeton FDDI.
Symbole
Nom Codage
I
11111
H
00100
Q
00000
J
11000
K
10001
L
00101
T
01101
R
00111
S
11001
0
11110
1
01001
2
10100
3
10101
4
01010
5
01011
6
01110
7
01111
8
10010
9
10011
A
10110
B
10111
C
11010
D
11011
E
11100
F
11101
V
00001
V
00010
V
00011
V
00110
V
01000
V
01100
V
10000
Signification
Idle (caractère de bourrage pour synchronisation)
Halt (permet l’arrêt de l’activité)
Quiet (absence de transitions)
Délimitation de trame
Délimitation de trame
Délimitation de trame (pour FDDI–II seulement)
Délimitation de trame
‘0’ logique
‘1’ logique
Données 0 ‘0000’
Données 1 ‘0001’
Données 2 ‘0010’
Données 3 ‘0011’
Données 4 ‘0100’
Données 5 ‘0101’
Données 6 ‘0110’
Données 7 ‘0111’
Données 8 ‘1000’
Données 9 ‘1001’
Données A ‘1010’
Données B ‘1011’
Données C ‘1100’
Données D ‘1101’
Données E ‘1110’
Données F ‘1111’
Invalide
Invalide
Invalide
Invalide
Invalide
Invalide
Invalide
Tableau 11 : Symboles des trames FDDI.
79
5.5.5) Réseau DQDB (IEEE 802.6)
DQDB (Distributed Queue Dual Bus) est un réseau qui a une vocation identique à celle de
FDDI. Il permet de relier différents réseaux locaux au sein d’un ensemble plus vaste
(réseaux de type MAN). A l’inverse de FDDI qui a une vocation privée, DQDB est plus
orienté vers la constitution de réseaux publics d’interconnexion.
DQDB exploite une paire de bus unidirectionnels, chacun étant utilisé pour un sens de
transmission. L’information circule grâce à des trames synchrones.
tête de bus
fin de bus
Bus A
Bus B
Station
Station
Station
Pour chaque sens de transmission, et à l’intérieur de chaque trame, il y a partage du
temps en tranches (slots). Une fonction particulière (incluse dans un équipement
communiquant désigné) appelée « tête de bus » envoie ces trames périodiquement
(toutes les 125 µsec). Suivant la capacité du support, elles contiennent plus ou moins de
slots : la taille du slot étant fixé à 53 octets.
125 µs
en-tête
slot 0
slot 1
slot n
PAD
segment
1
ACF
état
d’occupation
4
en-tête du
segment
type de
slot
48
charge utile
du segment
réservé
PSR
REQ 3 REQ 2 REQ 1 REQ 0
Le premier octet d’un slot (ACF : Access Control Field) est utilisé pour la gestion de la
communication. Les 4 suivants sont un en-tête permettant de référencer les données. Il y
a donc 48 octets utiles.
Il existe deux types de slots :
- les slots préarbitrés, dont l’usage est réservé à un poste défini. Ceci permet de garantir
un trafic minimum entre deux postes, et donc de respecter des contraintes relativement
à un trafic synchrone (voix...),
- les slots arbitrés, qui sont accessibles par tous les postes suite à un arbitrage basé sur
des files d’attente (trafic asynchrone).
80
L’accès asynchrone est géré par des paires de compteurs sur chaque poste :
- un compteur de requête (RQ : Request Counter)
- un compteur décrémental (CD : Count Down Counter)
Pour une requête émise sur un des deux bus, les données transitent sur l’autre (requête
sur A, données sur B et vice versa). Le choix de l’utilisation des deux bus est fait en
fonction de la position des machines. Une paire de compteurs gère un bus pour les
requêtes et l’autre pour les données.
Le compteur de requête est incrémenté chaque fois qu’une requête passe sur le bus. Ce
compteur est décrémenté chaque fois qu’un slot libre passe sur le bus opposé. Ce
compteur permet de connaître l’occupation du bus dans le sens des transmissions de
données.
Le compteur décrémental permet lui de connaître à quel moment la station pourra émettre.
Lorsque un poste veut émettre des données, il transfert le contenu de RQ dans CD puis
émet une requête sur le bus opposé de celui où il veut transmettre les données. Ensuite à
chaque passage d’un slot vide il décrémente son compteur CD. Quand le compteur atteint
la valeur 0, la station peut alors utiliser le premier slot libre qui passe sur le bus. Elle y
dépose ses données et le marque occupé. Ce mécanisme permet de gérer une file
d’attente répartie sur tous les postes d’un réseau.
v
v
–1
Compteur
décrémental
v
BUS A
Données
Compteur
00
de requête
03
+1
Données en attente
pour transmission
sur le bus A
RQ→CD
O→RQ
BUS B
R
R
Inscription de la requête d’accès au bus
Données
p
v
v
BUS A
–1
Compteur
décrémental
00
02
Compteur
de requête
+1
CD→…O
Droit d’émettre sur
le bus A,
utilisation du
premier slot vide
BUS B
R
Pendant le déroulement de la procédure d’accès
les requêtes continuent d’être prises en compte
5.5.6) Réseau ATM et le relais de cellules
ATM (Asynchronous Transfert Mode) est plus particulièrement destiné à l’interconnexion
grande distance des réseaux locaux. Sa définition générale est en particulier
81
indépendante de tous supports physiques (ceux-ci dépendant de l’opérateur de
télécommunication par exemple). Pour pouvoir répondre au mieux à tous les besoins,
ATM peut supporter deux types de trafic : le trafic synchrone (ou isochrone) et le trafic
asynchrone. Pour garantir des délais d’acheminement réduit, l’information est découpée
en petites cellules de taille fixe (53 octets).
L’accès au médium est basé sur le principe des files d’attente.
process
remplissage
cellule
vide
vide
Du fait de sa vocation, l’accès global au médium est défini à l’aide d’un contrat de débit
entre l’utilisateur et l’opérateur. Le respect du contrat doit être géré par l’utilisateur sous
peine de voir son trafic rejeté par l’opérateur. A l’inverse, l’opérateur garantit un trafic
donné ainsi qu’une qualité de service (cellules perdues, dupliquées...).
Trois indicateurs de trafic sont définis :
- Le trafic maximum auquel peut accéder l’utilisateur sur une courte période, Peak
Cell Rate (PCR).
- Le trafic moyen : Sustainable Cell rate (SCR).
- Le trafic minimum : Minimum Cell Rate (MCR).
Le trafic synchrone (voix, vidéo...) génère un trafic permanent (MCR).
trafic en bits
(quantité
d’information
échangée)
trafic maximum
capacité
du
médium
trafic maximum
autorisé pour
l’utilisateur
temps
trame 1
82
trame 2
trame 3
trame 4
Chapitre 6 : Sous-couche Liaison Logique
La couche liaison logique établit un chemin pour les communications.
6.1) Généralités
a) Fonctions
La sous-couche LLC (Logical Link Control) masque pour les couches supérieures (couche
Réseau) les différences de protocoles du niveau MAC. La sous-couche LLC est la
première couche vraiment indépendante du matériel.
Elle peut avoir plusieurs points d’entrée (SAP : Service Access Point), mais une seule voie
de sortie vers la couche MAC.
Soumission de paquets à transmettre
LLC
données indifférenciées
b) Services
La couche LLC devrait assurer une liaison logique entre machines d’un même réseau.
Liaison logique : relation privilégiée entre deux entités avec un protocole complet
(ouverture, suivi, gestion des erreurs, fermeture). Une liaison logique correspond à une
connexion virtuelle.
En fait la couche LLC n’assure pas forcément cette fonction. La couche transport la réalise
du point de vue connexion entre deux machines sur deux réseaux distincts, elle peut donc
a fortiori réaliser les fonctions de la couche LLC, au détriment sans doute de la simplicité.
Le choix de la couche assurant ces fonctions dépend de la topologie des réseaux.
Par conséquence, la couche LLC peut fournir 3 types de services.
Services de type 1 : service minimal dit mode datagramme. Il consiste à envoyer des
paquets isolés à un ou plusieurs correspondants. Il n’y a donc pas de séquencement, ni
de gestion des erreurs.
Services de type 2 : véritable liaison logique, service maximum dit mode connexion. Il
assure toutes les fonctions d’une connexion ce qui impose un protocole lourd.
Services de type 3 : service intermédiaire dit mode datagramme acquitté. Il met en œuvre
une détection des erreurs mais pas de connexion logique, il est simple mais plus sûr.
c) Accès aux services : adressage
Les accès aux services LLC sont réalisés par des LSAP (Link Service Access Point). Les
points d’accès sont identifiés par des adresses (en partie définie par l’IEEE) codées sur 8
bits.
83
Réseau
Réseau
LSAP
4
Gestion
LLC LSAP
2
LSAP
6
LLC
LSAP
4
Gestion
LLC LSAP
2
LSAP
6
LLC
Mac
Mac
Station 1
Station 2
6.2) Fonctions ou primitives fournies par la couche LLC
6.2.1) Protocole de type 1
a) L.SDUs
Ce protocole est très simple, il comprend uniquement deux primitives de service (SDU).
- Demande d’envoi de données : L.DATA.request
- Signalement de données reçues : L.DATA.indication
adresse source, adresse
destination, données, <priorité>
SAP
SAP
Ces SDUs sont des procédures de niveau LLC fournies par le logiciel réseau pour la
couche réseau (la couche LLC est une couche logicielle comme ses supérieures).
Les paramètres de ces fonctions sont au nombre de 4 :
- adresse source : SSAP + adresse physique source,
- adresse destination : DSAP + adresse physique destination (Plusieurs adresses
sont possibles),
- données,
- priorité : si le protocole MAP les accepte.
b) L.PDUs
Le protocole de type 1 n’utilise qu’un seul format de PDUs : le format U (Unnumbered).
Il comprend 3 PDUs de commande et 2 PDUs de réponse.
PDUs de commande :
- UI : Unnumbered Information (paquets à transmettre),
- XID : Exchange Identification (précision du type de services supportés),
- TEST : sollicitation d’un retour d’une trame test par le récepteur.
PDUs de réponse :
84
-
ID : réponse à ID,
TEST : réponse à TEST.
6.2.2) Protocole de type 2
a) L.SDUs
Ce protocole comprend 14 primitives regroupées en 5 classes : connexion, données,
contrôle, réinitialisation, déconnexion.
L.DATA.CONNECT.request (A.S, A.D, données)
Demande de l’établissement d’une connexion avec
un point d’accès éloigné.
Indication d’une demande de connexion ou d’une
demande refusée de connexion.
Compte rendu d’établissement ou non d’une
connexion, suite à une requête L.CONNECT.request
Passage d’un paquet à émettre.
L.DATA.CONNECT.indication (A.S, A.D, données)
Passage d’un paquet reçu.
L.DATA.CONNECT.confirm (A.S, A.D, état)
L.CONNECTION-FLOW CONTROL.request
(A.S, A.D, montant)
L.CONNECTION-FLOW CONTROL.indication
(A.S, A.D, montant)
L.RESET.request (A.S, A.D)
Compte rendu de succès ou d’échec d’une ou
plusieurs requêtes d’émission de paquet.
Ajustement de la quantité de données acceptables
sur le SAP concerné.
Indication de la quantité de données acceptables
sans perte sur le SAP concerné.
Réinitialisation d’une connexion.
L.RESET.indication (A.S, A.D, cause)
Indication de la réinitialisation d’une connexion.
L.RESET.confirm (A.S, A.D, état)
Compte rendu d’exécution d’une réinitialisation.
L.DISCONNECT.request (A.S, A.D)
Demande de terminaison d’une connexion.
L.DISCONNECT.indication (A.S, A.D, cause)
Indication de terminaison d’une connexion.
L.DISCONNECT.confirm (A.S, A.D, état)
Compte rendu d’exécution d’une terminaison de
connexion.
L.CONNECT.request (A.S, A.D, cla.serv)
L.CONNECT.indication (A.S, A.D, état, cla.serv)
L.CONNECT.confirm (A.S, A.D, cla.serv)
2
Elles demandent les mêmes paramètres que précédemment avec en plus un retour
possible de l’état de l’exécution. Comme il s’agit d’une liaison logique, elle est toujours de
type point à point car elle nécessite une connexion et des acquittements.
b) LPDUs
Il y a 3 formats de L.PDUs, qui permettent d’effectuer les différents services liées à un
mode connecté.
* Format U (Unnumbered).
Ces primitives permettent de réaliser les connexions, elles sont non numérotées car ce
sont les premières et les dernières émises dans le cadre d’une liaison logique déterminée,
leur numérotation n’ayant pas d’intérêt.
Elles comprennent 2 PDUs de commandes et 3 PDUs de réponses.
PDUs de commandes :
85
-
SABME (Set Asynchronous Balanced Mode Extended) : établissement d’une
connexion en mode asynchrone.
DISC (Disconnect) : fin de la connexion
PDUs de réponses :
- UA (Unumbered Acknowledgment) : acquittement des trames de commandes
précédentes (SABME et DISC).
- DM (Disconnect Mode) : information que la couche LLC est déconnectée.
- FRMR (Frame Reject Response) : la PDU reçue est incorrecte, elle contient en
retour la partie du champ incorrecte.
* Format I (Information).
Ces trames véhiculent les informations qui sont numérotées afin d’en permettre le
contrôle.
Deux compteurs permettent de gérer ces informations.
N(S) : numéro d’émission,
N(R) : numéro de réception.
Un flag précise si il est nécessaire de donner une réponse immédiate à une commande
(flag P/F).
* Format S (Supervision).
Elles réalisent la gestion des échanges : réémission, arrêt temporaire...
Elles comprennent 3 PDUs provenant du récepteur :
- R-R (Receive Ready) : LLC prèt à recevoir (tous les PDUs de format I sont acquittées
jusqu’à N(R)-1).
- REJ (Reject) : demande de retransmission à partir de N(R), il y a acquittement jusqu’à
N(R)-1).
- RNR (Receive Not Ready) : impossibilité temporaire de réception, il y a acquittement
jusqu’à N(R)-1.
* Exemple de gestion des transmissions.
Emetteur :
Recepteur :
SABME
I1
UA
I2
I3
R–R
I4
I3
REJ
I4
DISC
R–R
On peut distinguer plusieurs protocoles particuliers.
Stop and Wait :
Emission d’une trame puis attente d’un ACK. Si NACK ou si le temps d’attente est
dépassé alors il y a réémission.
Go Back N :
Emission de plusieurs trames successives (de manière continue).
Pour chaque ACK reçu on incrémente le compteur de trame OK, si NACK ou expiration
d’un délai alors on réémet le tout.
86
UA
Emission trame n°1
Lancement temporisation T1
Emission trame n°2
Lancement temporisation T2
Emission acquittement
trame n°1
Figure 17 : Protocole Stop and Wait. Si l'acquittement n'est pas reçu pour t<T1, nouvelle émission. ⇒
nécessité de numéroter les trames.
0
7
8
2
3
4
1
5
E
2
6
3
4
7
8
9
10
Ack 7
6
Ack 6
5
Ack 5
4
Ack 4
3
Ack 2
2
Ack 1
1
Ack 0
0
Temps
Ack 3
Time out
5
6
7
8
9
10 11 12
E = erreur
Trames ignorées par
la Couche Liaison de Données
Time out
Time out
Time out
3
0
4
5
6
7
8
2
3
4
1
E
3
4
5
6
7
8
2
5
6
Ack 8
2
Ack 1
1
Ack 0
0
Temps
9
10
E = erreur
Trames stockées par
la Couche Liaison de Données
n
0
1
Les paquets 2 à 8 sont transmis
par la Couche Réseau
n
2
0
1
2
3
3
4
7
5
6
après émission de 1
4
7
5
6
après acquittement de 1
Figure 18 : Protocole avec fenêtre d'anticipation de taille 4.
87
Répétition sélective :
Même fonctionnement que précédemment, mais seules les trames NACK sont réémises
Séquencement.
Contrôle du flux : adaptation de la vitesse émission et réception.
Gestion fenêtre (ou fenêtre d’anticipation) : un certain nombre de PDUs sont émises avant
l’attente d’un ACK (numérotation séquentielle des PDUs).
6.2.3) Protocole de type 3
a) L.SDU
Comme pour le protocole de type 1, il n’existe qu’un type de primitive (échange de
données), mais avec une fonction de confirmation provenant de la couche LLC du
receveur.
En fait, une autre fonction est possible : l’interrogation d’équipements passifs.
L.DATA_ACK.request (A.S, A.D, données, cla.serv)
L.DATA_ACK.indication (A.S, A.D, données, cla.serv)
L.DATA_ACK.confirm (A.S, A.D, données, cla.serv, état)
Demande d’émission d’un datagramme avec
acquittement.
Transmission d’un datagramme reçu avec
demande d’acquittement.
Acquittement d’un datagramme.
L.REPLY_UPDATE.confirm (A.S, données)
Demande de mise à jour de donnée sur station
passive.
Confirmation de mise à jour.
L.REPLY.request (A.S, A.D, cla.serv)
Demande de lecture d’une station passive.
L.REPLY.indication (A.S, A.D, cla.serv)
Indication de lecture d’une station passive.
L.REPLY.confirm (A.S, A.D, cla.serv, état)
Transmission de la donnée après lecture.
L.REPLY_UPDATE.request (A.S, données)
3
b) L.PDU
Elles sont toutes de format U.
UI (Unnumbered Information) : comme pour le type 1.
UA (Unnumbered Acknowledgment) : permet d’acquitter les trames de données de type
UI.
FRMR (Frame Reject Response) : rejet d’une trame non correcte.
88
6.3) Format des L.PDUs
Adresse DSAP : adresse du SAP destination
Adresse SSAP : adresse du SAP source
Contrôle :
champ descriptif du PDU
Champs
Adresse DSAP Adresse SSAP
Nombre
d’octets
Champs
Adresse DSAP
1
1
76543210
Codage
SSSSSSS C/R
I/G :
Données
1 ou 2
N
Adresse SSAP
Numéro de bit 76543210
DDDDDDD I/G
Contrôle
= 0 : DSAP individuel
= 1 :DSAP de groupe
C/R : = 0 : PDU de commande
= 1 : PDU de réponse
Type
Numéro de bit
I
S
U
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0
N(S)
P/F
N(R)
1 0 S S X X X X P/F
N(R)
1 1 M M P/F M M M
N(S)
N(R)
S
M
X
P/F
= numéro d’émission
= numéro de réponse
= bit de fonction de supervision
= bit "modificateur" spécifiant la fonction
= réservé et positionné à zéro
= Poll/Final : Poll (interrogation) pour PDU de
commande, Final (fin) pour PDU de réponse
89
Chapitre 7 : Couche Réseau
La couche réseau adresse les messages, crée le chemin entre les nœuds en communication, route les messages à travers les nœuds impliqués vers leur destination et contrôle
le flux des messages entres les nœuds.
7.1) Généralités.
7.1.1) Fonctions
La couche réseau réalise l’acheminement étape par étape des informations au travers du
ou des réseaux locaux pour des modules non directement connectés.
Transport
1
2
LLC
LLC
3
4
5
LLC
Réseau
RL 1
LLC
6
LLC
Réseau
RL 2
RL 3
Figure 19 : Partage des fonctions au sein des couches.
Pour mettre en œuvre cet acheminement la couche réseau doit réaliser plusieurs
fonctions :
- choix du chemin de transit : routage,
- sélection des paquets transmis : filtrage,
- modification des protocoles de niveaux inférieurs.
A l’intérieur d’un réseau local relié à un seul médium, les fonctions de la couche réseau
sont réduites (c’est en particulier le cas pour les réseaux de terrain actuels).
7.1.2) Services
La couche réseau propose deux types de services :
-
Un service sans connexion, rapide et peu fiable. La gestion est reportée sur la couche
transport (située sur l’hôte). Les deux ordinateurs intéressés par la communication ont
en charge la gestion des erreurs et le contrôle du flux. Les ressources utilisées sont
donc des ressources locales, la charge de travail pour les stations intermédiaires est
faible. C’est le principe de base des communications de type Internet où le passage
par les intermédiaires n’est pas facturé.
-
Un service avec connexion, complexe mais fiable. La couche réseau assure la gestion
des erreurs et le contrôle du flux. C’est une gestion répartie, chaque machine par
laquelle transitent les informations a une charge de travail non négligeable. Le passage
91
des informations étant contrôlé par chaque machine, il y a possibilité de facturation.
C’est une vision plus adaptée à un transporteur.
Ces deux types de services existent au niveau de la définition OSI (voir Tableau 12).
N_CONNECT.request (appelé, appelant, confirmation_réception, données_exprès, qos, données_utilisateur)
N_CONNECT.indication (appelé, appelant, confirmation_réception, données_exprès, qos, données_utilisateur)
N_CONNECT.response (répondeur, confirmation_réception, données_exprès, qos, données_utilisateur)
N_CONNECT.confirmation (répondeur, confirmation_réception, données_exprès, qos, données_utilisateur)
N_DISCONNECT.request (origine, raison, données_utilisateur, adresse_en_réponse)
N_DISCONNECT.indication (origine, raison, données_utilisateur, adresse_en_réponse)
N_DATA_CONNECT.request (données_utilisateur)
N_DATA_CONNECT.indication (données_utilisateur)
N_DATA_CONNECT.response ()
N_DATA_CONNECT.confirm ()
N_EXPEDITED_DATA.request (données_utilisateur)
N_EXPEDITED_DATA.indication (données_utilisateur)
N_RESET.request (origine, raison)
N_RESET.indication (origine, raison)
N_RESET.response ()
N_RESET.confirm ()
(a) service orienté connexion.
N_UNIDATA.request (adresse_source, adresse_destination, qos, données_utilisateur)
N_UNIDATA.indication (adresse_source, adresse_destination, qos, données_utilisateur)
N_FACILITY.request (qos)
N_FACILITY.indication (adresse_destination, qos, raison)
N_REPORT.indication (adresse_destination, qos, raison)
(b) Service sans connexion.
qos : qualité de service désiré (Quality of Service)
raison : indique la raison de la commande.
Tableau 12 : (a) Primitives du service avec connexion du modèle OSI. (b) Primitives du service sans
connexion du modèle OSI.
7.2) Les ponts
Ces appareils ont des fonctions correspondant à celles de la couche réseau, mais
n’utilisent pas de données propres à cette couche, mais celle de la couche MAC (adresses
universelles).
Leur fonction principale est de transmettre ou non (fonction de filtrage) des paquets sans
modification de leur contenu LLC ni de leur adresses universelles. Ils ont deux utilités :
- augmentation de la bande passante de chaque sous-réseau en limitant les paquets
transmis sur un sous-réseau.
- augmentation quasi infinie de la taille d’un réseau local sans problème de couche
MAC (collision...). Pour cela les ponts stockent et réémettent les paquets en ne
tenant compte des contraintes MAC que sur chaque sous-réseau.
7.2.1) Ponts transparents
Ces ponts sont normalisés sous la norme 802.1d. Ils regroupent plusieurs fonctions :
Pont de base
--------->
apprentissage
92
Pont intelligent ------------->
Pont transparent
algo. arbre recouvrant
a) Pont de base
C’est un pont reliant deux ou plusieurs sous-réseaux distincts. Chaque sous-réseau est
relié a un port du pont.
Port 1
Port 2
B
N1
N2
Le stockage temporaire permet de lever les contraintes de longueur, mais il n’y a pas
d’augmentation possible du trafic global.
Réseau N1
Emission
M3 sur N2
M1
Réseau N2
M2
M1
Emission
M1 sur N1
M3
M3
t
M2
t
Emission
M2 sur N1
Le pont réémet
M1 sur N2
M2 a été stocké par
le pont car M3
occupait N2, puis il
est réémis sur N2
Figure 20 : Passage des paquets d’un sous réseau à un autre.
b) Pont intelligent (apprentissage)
L’ajout d’une fonction de filtrage des paquets locaux pourra permettre d’augmenter le trafic
global. Le pont doit donc reconnaître les paquets destinés à l’extérieur du réseau
émetteur.
Plusieurs solutions (plus ou moins mauvaises) peuvent être envisagées :
- Définition manuelle des adresses dans une base de données situées dans le pont.
Cette solution valable du point de vue technique pose le problème de la
maintenance, chaque modification du réseau (ajout, suppression de machines),
voire modification d’une machine (changement de carte réseau pour une machine,
donc changement de l’adresse universelle) nécessite une intervention humaine sur
le pont.
- Positionnement des stations par groupes d’adresses. Cette solution est impossible
car les ponts utilisent les adresses universelles qui sont choisies par le fabricant et
non par l’acheteur.
La bonne solution est dérivée de la définition manuelle d’une table des adresses,
l’intervention manuelle étant remplacée par un apprentissage automatique du pont.
Fonctionnement de l’apprentissage :
Chaque pont possède une mémoire cache de stockage (mémoire remise à jour
régulièrement). Cette mémoire contient une base de données constituées :
- des adresses universelles,
- du numéro du port de connexion correspondant,
- de la date de dernier accès.
93
Cette mémoire cache est initialement vide.
Le pont écoute en mode promiscuous (il écoute tout) les paquets transmis.
Pour un paquet donné, le pont enregistre son adresse source et le port de réception (s’ils
ne sont pas déjà définis), il met à jour le champ correspondant au moment d’arrivée.
Il recherche dans sa mémoire cache si l’adresse destination existe :
- si oui, il envoie le paquet sur le port associé, ou le détruit si le port associé est le
même que celui d’émission (trafic local). Ceci réalise la fonction de filtrage.
- si non, il envoie le paquet sur tous les ports sauf sur celui de réception.
Exemple de fonctionnement (Mi : machine, B : pont, Pi : port) :
M1
M2
M3
P1
M1 → M2
M2 → M3
M3 → M1
M3 → M4
M4 → M3
M1 → M2
M1 → M5
M5 → M1
…
Transmission paquet de . vers .
M4
P2
B
P3
M5
Topologie du réseau
P1 → P2 et P3
P1 → P2 et P3
P2 → P1
P2 → P1 et P3
P2 → détruit
P1 → détruit
P1 → P2 et P3
P3 → P1
…
Ports de réception
et d’émission
M1 – Port 1
M2 – Port 1
M3 – Port 2
Mise à jour date M3
M4 – Port 2
Mise à jour date M1
Mise à jour date M1
M5 – Port 3
…
Contenu mémoire
cache du pont
Le fonctionnement du pont est correct à condition que le réseau ait une topologie
arborescente (un seul chemin pour aller entre deux points).
S’il existe plusieurs ponts entre les réseaux (et ceci est presque toujours le cas pour des
raisons de fiabilité : pas d’interruption du service en cas de panne) le fonctionnement peut
conduire et conduira à une congestion par multiplication du trafic.
Exemple avec 2 et 3 ponts entre 2 sous-réseaux.
N1
A1(2)
A1(1)
A1(3)
A1(5) A1(4)
N1
A’1(2)
A’1(1)
N2
Bouclage des paquets
A1(1)
A1(6)
et
A1(7)
N2
A1(2)
A1(3)
A1(4)
A1(5)
(on suppose un seul sens)
Prolifération des paquets
Chaque paquet émis sur un réseau arrive sur un port de chaque pont, celui-ci le réémet
sur ses autres ports, le paquet boucle ou se multiplie à chaque passage. Le pont doit se
reconfigurer en permanence, car les paquets qui gardent leur adresse Liaison arrivent
alternativement d’un côté ou de l’autre du pont.
94
Il est donc nécessaire de mettre en place un algorithme supplémentaire au niveau du pont
pour parer à ce défaut.
c) Algorithme de l’arbre recouvrant (Pont transparent)
L’algorithme de l’arbre recouvrant (spanning tree) va permettre aux ponts de découvrir de
manière dynamique une topologie sans boucle (arbre) qui permette d’accéder à tous les
réseaux (recouvrant).
Arbre recouvrant
Figure 21 : Exemple d'arbre recouvrant.
Les messages entre deux réseaux remontent la hiérarchie à partir de l’émetteur jusqu’à
trouver le pont qui rassemble les deux branches auxquelles appartiennent les deux
réseaux. Le message redescend alors vers le destinataire. Le pont situé au sommet de la
hiérarchie est appelé pont racine. Chaque pont peut recevoir des messages montants par
plusieurs ports, mais il ne les réémet que sur un seul (le port racine). Les messages
descendants ne sont reçus que par un port (le port racine) mais peuvent être réémis sur
plusieurs. Le pont racine peut en recevoir et en réémettre sur plusieurs ports.
La configuration, ainsi que la reconfiguration en cas de panne, doit se faire
automatiquement. Pour cela chaque pont émet périodiquement des messages spéciaux
appelés BPDU de configuration (Bridge Protocol Data Unit).
La BPDU a un format de niveau LLC suivant :
Adr Dest.
Adr. Source
DSAP2
SSAP3
Message de configuration
adresse
cast
spéciale
adresse
du port
Destin.
Service
Access
Point
Source
Service
Access
Point
ID racine, ID pont émetteur
Coût, ID de prot, âge du
message...
Le message de configuration
fonctionnement de l’algorithme :
-
2
3
contient plusieurs
champs nécessaires
au
bon
ID racine : identificateur du pont supposé être racine,
ID pont émetteur : identificateur du pont qui émet le message,
Coût : coût du trajet connu de moindre coût entre le pont émetteur et la racine,
ID port : numéro du port sur lequel est émis le message.
Destination Service Access Point.
Source Service Access Point.
95
L’algorithme de l’arbre recouvrant fonctionne globalement de la manière suivante :
- choix d’un pont racine,
- pour chaque LAN choix d’un pont désigné sur ce LAN pour transmettre vers le pont
racine,
- calcul de la distance la plus courte entre un pont et le pont racine,
- choix d’un port (port racine) donnant accès au meilleur trajet jusqu’au pont racine,
- choix des ports à inclure dans l’arbre (port racine+ports reliés aux LAN où le pont
est désigné).
Choix du pont racine, des ponts désignés et des ports racines
Le pont racine est celui qui émet le meilleur message de configuration.
La classification des messages est faite suivant les champs du message :
- message meilleur si l’ID racine est plus faible,
- si égalité, message meilleur si le coût vers le pont racine est plus faible,
- si égalité, message meilleur si l’ID émetteur est le plus faible,
- si égalité, on départage les ports d’un même pont par l’ID du port.
A l’état initial, chaque pont considère être le pont racine, il envoie donc dans le message
de configuration son ID, un coût de 0, et une 2ème fois son ID (car il est l’émetteur), le
numéro de port n’a pas d’intérêt direct pour choisir le pont racine.
Chaque pont ayant un port situé sur le même LAN que l’un des ports du pont émetteur
reçoit ce message. Il peut alors choisir entre lui et son voisin comme pont racine. Il émet
alors un message de configuration où l’ID racine est le résultat de la comparaison, un coût
incrémenté de un (ou d’une valeur prédéfinie) s’il n’est pas le pont racine et garde l’ID de
l’émetteur qui a émis le meilleur message.
Lorsque un pont reçoit un message de configuration meilleur que le sien sur un de ces
ports relié à un LAN donné, alors il cesse d’émettre sur ce LAN car un autre pont est
mieux placé par rapport au pont racine.
Lorsque la configuration se stabilise, le pont racine est celui qui a l’ID le plus faible. Sur
chaque réseau un seul pont est actif. Le pont désigné est celui qui est le plus proche en
terme de coût du pont racine (ou si égalité celui qui à l’ID la plus faible). Il est relié au
chemin du pont racine par le port racine et au réseau par un port, tous ces ports faisant
partie de l’arbre recouvrant.
Calcul du coût vers la racine
Puisque lorsque la configuration se stabilise il n’y a qu’un seul pont qui transmet sur
chaque LAN, le coût des messages de configuration représente le coût vers la racine.
7.2.2) Les ponts éloignés
Ils permettent la connexion de deux parties de LAN géographiquement éloignées. On les
appelle aussi ponts distants ou demi-ponts.
B
LAN 1
96
liaison point à point
protocole au choix : B et B’
sont normalement identiques.
B’
LAN 2
7.2.3) Pont à routage par la source
Pour les ponts transparents, le chemin global entre deux points n’est connu de personne.
Ceci peut conduire à des choix relativement peu performants : deux réseaux proches
peuvent passer par le pont racine pour se transmettre des messages. Si on arrive à faire
connaître à chaque pont la topologie complète de l’interconnexion il est alors possible de
choisir a priori le chemin sans passer par le pont racine. C’est cette fonction qui est
implémentée dans les ponts à routage par la source (Source Routing Bridge).
Principe : le chemin de routage est présent dans le message initial.
Chaque station doit donc maintenir une mémoire cache contenant une route indiquant le
chemin à prendre pour communiquer avec une station déterminée.
Si la station avec laquelle elle désire communiquer n’est pas dans la mémoire cache alors
la station lance un paquet spécial qui va se reproduire et se diviser lorsqu’il y a plusieurs
routes possibles. La route prise est stockée au fur et à mesure dans le paquet. Une fois
les paquets arrivés à destination, la route optimale peut être choisie. Elle est stockée dans
les mémoires caches. Le paquet spécial dit paquet de routage est différencié des paquets
standard par le bit multicast adresse source à 1.
Une fois la route déterminée, les paquets de données sont envoyés avec la route, ils ont
un format spécial comprenant un champ dit RIF (Routing Information Field).
Adresse
Destination
Adresse
Source
RIF
Données
Champ RIF :
Type : 3 bits
Longueur : 5 bits
Direction : 1 bit
Trame la plus longue : 3 bits
Route : [ Numéro de LAN (12 bits) + Numéro de Ponts (4 bits) ]
Route : ... ce champ est répété pour décrire toute la route.
A l’heure actuelle, il y a une évolution vers la coexistence à l’intérieur des ponts des deux
types de fonctions (Pont SRT : Source Routing Transparent).
7.2.4) Performances
Les ponts ne sont utilisables que pour constituer un ensemble de réseaux ou de sousréseaux relativement réduit. Ils permettent de faire communiquer des réseaux ensembles
mais ne peuvent constituer une base pour réaliser un réseau fédérateur international. Leur
principale limitation provient de l’utilisation des adresses universelles. Celles-ci n’ayant
aucune liaison les unes avec les autres dans un sous-ensemble, elles obligent à utiliser
des algorithmes peu performants en terme de débit pour trouver les chemins entre deux
postes.
Cela a donc conduit à définir un nouveau système d’adressage de plus haut niveau.
97
7.3) Adresses de couche réseau
Pour communiquer d’un équipement à un autre, il est nécessaire de définir des adresses.
Les adresses universelles (couche MAC) ne répondent que partiellement aux besoins de
la couche réseau (routage...) car elles ne sont pas fixées à une localisation (réseau...)
mais à une machine voire à une interface réseau.
Les déplacements, les remplacements doivent être transparents pour la couche réseau.
Les adresses de la couche réseau devront donc être définies logiciellement par l’utilisateur
et avoir une structure hiérarchique.
7.3.1) Adresses hiérarchiques
Elles sont basées sur une idée de découpage du réseau global en sous-réseaux...
Sous réseau
de niveau 2
routage
Sous réseau
de niveau 1
routage
Nœud
d’extrémité
routage
Exemple d’adresse : 12.3.28
Sous-réseau
7.3.2) Adresses ISO
Ce sont des adresses de longueur variable jusqu’à un maximum de 20 octets.
Elles sont constituées de plusieurs champs :
AIRE
ID
SEL
Universelle
Attribué localement
IDP
DSP
AFI
IDI
DSP
AIRE : indique la localisation du sous réseau, elle a une attribution universelle.
IDP : Initial Domain Part
AFI : (1 octet) Authority and Format Identifier
Il contient l’autorité d’attribution, le format et la longueur du champ IDI.
IDI : Initial Domain Identifier.
Le champ IDI peut encore être découpé hiérarchiquement suivant des critères de
localisation.
98
ID : numéro de nœud,
Le champ ID peut contenir la valeur de l’adresse universelle.
SEL : utilisateur à l’intérieur du nœud.
Ces deux champs ont une attribution locale, on les regroupe dans un DSP (DSP : Domain
Specific Part)
Ce type d’adresses donne une trame complète pour un adressage hiérarchique. Dans les
réseaux locaux, ce type d’adressage n’est pas utilisé tel quel mais avec des variantes plus
ou moins éloignées suivant les protocoles retenus.
Exemple d’adresses ISO: X121
longueur en
½ octets
AFI
3 7
Long
2
1
Pays
IDI
Réseau
Région
3
1
7
Extension
locale
3 ou 5
DSP
adresse
802.i
4 ou 12
Tableau 13 : AFI 37 = adresse globale de type X121 (réseau public).
longueur en
½ octets
AFI
4 9
2
IDI
zone
2(=00) ou 5
DSP
adresse 802.i
4 ou 12
Tableau 14 : AFI 49 = adresse locale.
7.3.3) Adresses IP (Internet Protocol)
Ce sont des adresses de longueur fixe (4 octets) possédant deux champs de longueur
variable :
- un champ liaison,
- un champ hôte.
En fait, l’adresse complète est définie par l’adresse et le masque qui permet de distinguer
les deux champs.
Masque :
11111111
11111111
11000000
00000000
Adresse :
01001101
10001001
01001001
10110100
liaison
hôte
L’alternance de 0 et de 1 au sein du masque est permise mais déconseillée.
Suivant la taille des champs, il peut exister plusieurs classes d’adresses prédéfinies où la
longueur des champs est fixe. Ceci est particulièrement nécessaire dans les anciens
protocoles où le masque n’est pas transmis.
On considère 3 classes initiales de réseaux :
Réseaux de classe A :
0 réseau
xxxxxxxx
xxxxxxxx
xxxxxxxx
99
Le numéro de réseau est défini sur 7 bits, il va de 01 à 126, il y a donc 125 réseaux de
type A possibles dans le monde, chacun des réseaux peut posséder 224 machines
(16 millions de machines !). Seuls de très grands organismes peuvent obtenir ce type de
réseaux.
Réseaux de classe B :
10 réseau
réseau
xxxxxxxx
xxxxxxxx
Le numéro de réseau est défini sur 14 bits (de 128.000 à 191.254). Il permet de constituer
des grands réseaux de 65563 machines.
Réseaux de classe C :
110 réseau
réseau
réseau
xxxxxxxx
Le numéro de réseau est défini sur 21 bits. Il permet de créer 2 millions de réseaux de 254
machines numéroté de 192.000.000 à 223.255.254
D’autres types de réseaux peuvent être définis en utilisant les combinaisons inemployées
(111xxxxx). De plus, à l’intérieur des réseaux de classes B et C, il est possible de définir
un ou plusieurs niveaux hiérarchiques en créant ainsi des sous-réseaux pour faciliter la
gestion des adresses.
Certaines adresses ont une signification spéciale :
11111111 … : représente l’adresse tous (Broadcast)
00000000 … : sert à la détermination des adresses dans certains protocoles (RARP,
BOOTP).
127 …
: est réservée comme adresse interne pour le test des fonctions réseaux.
L’adressage IP est limité en possibilité et en niveaux de hiérarchie. Il semble ne plus
pouvoir répondre à la croissance actuelle du marché des communications par ordinateurs.
Une autre norme est en cours de discussion.
7.3.4) Adresses IPv6 ou IPng (New Generation)
Cette nouvelle norme qui devrait être largement utilisée à partir de l’année 1999 a été
définie pour répondre aux problèmes de l’adressage IP antérieur (IPv4). Ces problèmes
sont liés à une explosion du nombre de réseaux et principalement de réseaux de plus de
256 machines (classe B) dont le nombre est limité à 16000. Cette saturation a eu pour
conséquence l’attribution de plusieurs numéros de classe C pour des réseaux dépassant
256 machines et a donc partiellement fait disparaître l’aspect hiérarchique essentiel au
routage des paquets.
La norme IPv6 a défini une adresse sur 128 bits (au lieu de 32 avec IPv4). Elle va
permettre d’adresser approximativement un milliard de réseaux de 1000 machines.
3 types d’adresses sont définis :
- des adresses Unicast : pour une machine,
- des adresses de Cluster : pour un groupe réduit de machines,
- des adresses Multicast : pour un grand ensemble de postes.
100
Les adresses de type Cluster sont un des apports de la norme afin de permettre de
communiquer avec un groupe de machines sans avoir à perturber le fonctionnement de
l’ensemble des machines sur le réseau.
Il est prévu 22 classes d’adresses différentes, seules certaines sont attribuées à l’heure
actuelle.
L’aspect hiérarchique est beaucoup plus présent dans ce type d’adressage, une part de
l’adresse peut même être occupée par l’adresse universelle, ce qui constitue un point
important pour les mécanismes de résolution d’adresses que nous verrons ensuite.
champs hiérarchiques
Adresse universelle
Adresse nœud
Une adresse IPv6 se présente par groupes de 2 octets (4 chiffres hexadécimaux) séparés
par le caractère « : » :
1080:0:0:78:600:200C:4A7B
7.3.5) Adresses IPX
L’adressage IP, s’il est quasiment incontournable pour le monde des stations UNIX, doit
partager avec IPX (Internetwork Packet Exchange de Novell Netware) le marché des
réseaux de PC. Les réseaux de type Novell fonctionnent avec un adressage issu de IDP
(Internet Datagram Protocol de Xerox), c’est un réseau qui fonctionne avec une couche
MAC de type Ethernet.
Une adresse IPX est constituée de 10 octets (80 bits).
Elle comprend un champ réseau de 32 bits et un champ nœud machine de 48 bits.
Le champ réseau correspond au numéro de sous-réseau sur lequel est connecté le poste,
c’est aussi le numéro du serveur de ce sous-réseau.
Le champ nœud machine qui est de 6 octets correspond à l’adresse universelle de la
machine ce qui simplifie les procédures d’adressage au sein d’un même réseau.
Pour une communication sur un seul réseau, il n’est pas nécessaire d’utiliser le champ
sous-réseau qui est mis alors à 0. Le champ nœud permet d’envoyer directement un
paquet à la couche LLC de la machine concernée.
Cette conception de l’adressage ne peut pas répondre complètement à l’évolution des
réseaux. En effet, même si la taille de l’adresse est plus grande que pour IPv4, le champ
réservé au sous-réseau ne permet pas un adressage hiérarchique suffisant. Ceci
s’explique par le fait que l’ambition initiale des réseaux de type Novell était de réaliser des
réseaux d’étendue réduite où les communications sont principalement des
communications de poste à serveur (ou l’inverse).
7.3.6) Résolution d’adresse
Une des fonctions de la couche réseau est de déterminer l’adresse physique vers laquelle
transmettre le paquet en connaissant seulement l’adresse niveau réseau : c’est la
résolution d’adresse.
Exemple : pour l’adressage IP, il existe :
un protocole ARP (Address Resolution Protocol), adresse réseau vers adresse universelle
un protocole RARP (Reverse Address Resolution Protocol), ad. universelle vers ad.
réseau.
101
7.4) Routage en mode sans connexion
7.4.1) Présentation
En mode sans connexion, le routage ou choix du chemin de parcours des données doit
être réalisé pour chaque paquet et dans chaque routeur.
a) Services et normes
Service sans connexion.
ISO : CLNP (Connexion Less Network Protocol)
ISO 8473
IP :
IP (Internet Protocol)
ICMP (Internet Control Message Protocol)
Prise de contact avec les voisins.
ISO : ES-IS (Extremity System-Intermediate System)
ISO 9542
IP :
ICMP
ARP (Address Resolution Protocol)
Routage (Protocoles + algorithmes).
ISO : IS-IS (Intermediate System-Intermediate System)
IP :
algorithme de routage libre sur chaque routeur
exemple : RIP (Routing Information Protocol) gratuit
tendance vers OSPF (Open Shortest Path First)
IS-IS intégré (comme ISO)
Les algorithmes de routage sont séparés en deux catégories : ceux fonctionnant à
l’intérieur d’un domaine de routage (ensemble autonome de systèmes) ou routage intradomaine, ceux permettant de relier les domaines entre eux (routage inter-domaine).
b) Problèmes à résoudre
- Congestion : trafic trop important sur un routeur.
- Contournement des éléments en panne.
- Récupération après dépannage.
- Modification possible d’architecture.
- Pas d’administration centralisée.
c) Mise en œuvre
Chaque routeur modifie l’adresse couche Liaison de données jusqu’à ce que l’adresse
Liaison soit celle de la machine destination précisée par l’adresse Réseau. Le paquet est
alors délivré.
Adresse IPD
Adresse IPD
Adresse IPD
S
R1
R2
D
Adresse LLCR1
Adresse LLCR2
Adresse LLCD
102
d) Découpage des paquets
Si certains paquets sont trop longs pour emprunter certaines voies, ils peuvent être
découpés.
Les routeurs ont la possibilité de découper des paquets, ils rajoutent alors à chaque sous
paquets transmis des informations pour reconstituer le paquet initial après passage dans
le chemin limité en taille.
P3 fragmente le
paquet qu’il reçoit
Réseau 1
Paquet
P4 réassemble les
fragments qu’il reçoit
Paquet
P1
P2
P1 fragmente le
paquet qu’il reçoit
Paquet
P3
P2 réassemble les
fragments qu’il reçoit
P4
Réseau 2
(a)
Réseau 1
Réseau 2
Paquet
P1
P1 fragmente le
paquet qu’il reçoit
P2
P3
P4
Les fragments ne sont pas réassemblés
avant d’atteindre leur destination finale
(b)
Figure 22 : (a) Fragmentation transparente. (b) Fragmentation non transparente.
e) Principe de base
La mise en œuvre pratique du routage par les routeurs se fait en deux étapes qui sont
renouvelées périodiquement :
- une étape de détermination des chemins possibles entre deux points désirant
communiquer,
- une étape de choix du chemin considéré comme le meilleur en fonction de critères.
La détermination des chemins possibles se fait par une prise de contact de chaque routeur
avec ses voisins (via des trames spécifiques). Ensuite, à partir de cette vue locale (les
voisins) il y a enrichissement de la vision de chaque routeur par communication du
voisinage.
Ce voisinage est stocké formellement dans une structure de données appelée « table de
routage ». Cette table de routage contient un chemin pour chaque routeur proche et un
chemin par défaut pour toutes les destinations inconnues.
Le choix du chemin qui est le véritable routage, utilise localement la table de routage
obtenue par le mécanisme précédent pour déterminer quel est le meilleur chemin que doit
emprunter un paquet échangé entre deux réseaux.
Le qualificatif de « meilleur » est relatif à un coût qui peut être par exemple un nombre
minimum de routeurs à traverser ou un temps minimum pour échanger le paquet.
Un mécanisme similaire est aussi utilisé par les postes de travail eux-mêmes pour choisir
le routeur vers lequel ils vont envoyer les paquets vers l’extérieur du réseau.
103
E
C
A
F
D
G
B
I
H
J
Nœud destinataire
du message
A
B
D
E
F
G
H
I
J
Autre
Routage simple
prochain nœud
A
D
D
E
F
A
A
F
F
E
Routage multi-choix
Prochain nœud et probabilité
A(1)
D(P1) – E (1 – P1)
D(1)
E(1)
F(1)
A(1)
A(P1) – F (1 – P2) – D(1 – P1 – P2)
F(P1) – D (1 – P1)
F(P1) – D (P2) – E(1 – P1 – P2)
Figure 23 : Exemples de routage du nœud C.
7.4.2) Prise de contact avec les voisins
Ceci est le premier problème à résoudre pour permettre la transmission entre deux
réseaux non directement connectés. L’objectif de cette prise de contact est la
détermination de l’adresse couche Liaison de données connaissant l’adresse couche
Réseau.
a) Nœuds d’extrémités reliés par des liaisons point à point
Fonction à réaliser :
E
G
C’est la découverte par le routeur de l’adresse couche Réseau de E.
Cela permettra au routeur de renvoyer les paquets destinés à E vers la bonne liaison. Le
routeur G informera aussi les autres routeurs que les paquets pour E doivent être dirigés
vers G.
Solution ISO : paquets ESH (End System Hello). E informe périodiquement le routeur de
son adresse Réseau.
Solution IP : il n’y a pas de protocole, il doit y avoir une configuration pour chaque port
(adresse+masque).
104
b) Nœuds d’extrémités rattachés par des LAN
Fonctions à réaliser :
G1
E1
G2
E3
E2
1) Découverte par les routeurs des adresses Réseau des nœuds d’extrémités voisins.
2) Découverte par les routeurs des adresses Liaison des nœuds d’extrémités voisins.
3) Les nœuds doivent connaître au moins une adresse couche de liaison d’un routeur.
4) Si E1 veut communiquer avec E2, il doit envoyer directement les paquets à E2.
4’) Même si les routeurs sont en panne ou n’existent pas, les nœuds d’extrémités doivent
connaître les adresses couche Liaison sans utiliser de routeurs.
5) Si E1 veut communiquer avec E3, il doit être capable de déterminer vers quel routeur il
doit envoyer ses paquets.
* Solution ISO.
3 types de messages :
-
Signal de prise de contact (ESH) d’un système d’extrémité avec une adresse
destination spéciale pour les routeurs.
Signal de prise de contact (ISH : Intermediate System Hello) d’un système
d’extrémité, avec une adresse de groupe LLC pour les systèmes d’extrémités.
Message de redirection : si un routeur G reçoit un paquet d’un nœud E destiné à
une adresse réseau D, et si G le réémet sur le même LAN vers le nœud ou vers un
routeur, alors il informe E du nouveau chemin (qui est meilleur) à utiliser.
ESH répond aux fonctions 1) et 2)
ISH répond à la fonction 3) : avec l’existence d’une mémoire cache routeur dans E
contenant l’adresse Liaison du routeur.
Messages de redirection répondent à 4) et 5) : avec une mémoire cache destination
contenant l’adresse Liaison en référence avec l’adresse Réseau.
4’) est résolu par un envoi à tous les Ex (Broadcast) avec l’adresse couche Réseau
correcte. Alors l’E ayant cette adresse répond un ESH pour l’émetteur qui met ainsi
dans sa mémoire cache la référence liant l’adresse Liaison et l’adresse Réseau. Avant
d’entamer une série de transmission, il y a donc gène de tous les Ex car le message est
Broadcast, mais ceci n’a lieu qu’une seule fois en début de communication pour
initialiser la mémoire cache.
Il y a une temporisation pour remettre à jour les mémoires caches.
105
Si il n’y a pas de routeur et que E1 veut communiquer avec E3, alors il n’y a pas de
réponse au Broadcast de E1, les couches plus hautes de E1 doivent détecter ce problème
et arrêter les tentatives de communications après un temps déterminé.
* Solution IP.
L’adresse contient la partie numéro de réseau, chaque nœud connaît cette adresse définie
par configuration manuelle (adresse IP + masque). Les communications sur le même
réseau peuvent donc se faire directement par comparaison des adresses IP masquée
avec l’adresse de l’hôte masquée. Le routage n’est effectué que relativement à la partie
liaison (numéro de réseau).
La fonction 1) est résolue par configuration manuelle des routeurs.
La fonction 3) est aussi résolue par une configuration manuelle des nœuds d’extrémité
avec une adresse routeur (ou plusieurs). D’autres solutions existent mais ne sont pas
normalisées (elles se rapprochent des solutions ISO).
Les autres sont résolues par des messages :
- demande de protocole de résolution d’adresse (ARP) : Broadcast + adresse
Réseau,
- réponse de protocole de résolution d’adresse (ARP) : adresse Liaison + adresse
réseau
- redirection (ICMP) : message contenant l’adresse de couche Réseau d’un autre
routeur.
Utilisation des messages ARP pour 2) 4) et 4’) :
Soit deux postes (N et D) sur un même réseau L :
N veut communiquer avec D dont il ne
connaît pas l’adresse universelle.
N envoie un message ARP avec une
adresse Broadcast couche Liaison et
l’adresse Réseau de D. Tous les postes sur
L le reçoivent et vérifient que l’adresse
Réseau ne les concerne pas sauf pour D. D
renvoie un message ARP avec son adresse
couche Liaison. N reçoit le message ARP et
peut ainsi créer une entrée liant l’adresse
Liaison et réseau de D dans sa mémoire
cache. Dans certains cas, il est nécessaire
d’utiliser d’autres messages pour réaliser
ces fonctions (RARP ou BOOTP).
N
D
(2) ARP
L
(1) ARP
Utilisation de messages de redirection pour 5) : comme pour l’ISO, mais ici le message
contient l’adresse couche réseau (comme ARP).
c) Gestion des liens entre routeurs
* Solution IP
Le protocole IP définit des messages de contrôle appelés messages ICMP (Internet
Control and error Message Protocol) qui sont des messages d’erreur et de supervision. Ils
sont émis par les routeurs lors de la détection d’un problème ou d’une erreur (congestion,
106
route coupée...). Ce sont par exemple des messages à destination de l’expéditeur d’un
paquet pour le prévenir que celui-ci n’a pas pu être délivré pour une raison précisée. Dans
quelques cas les postes de travail peuvent aussi gérer ces messages ICMP.
✂ coupure
paquet S→D
S
X
G
X
G
X
D
ICMP
G
IC
Adresse IP
Source Destinat.
Les types de messages suivant peuvent être rencontrés :
- test d’accessibilité (ping),
- messages d’écho,
- destination inaccessibilité,
- congestion et contrôle de flux,
- demande de limitation de production,
- demande de modification de route,
- détection de routes circulaires (hop count >>),
- compre-rendu de problèmes de paramètres,
- synchronisation des horloges, détermination du temps de transit,
- obtention d’un masque de sous réseau.
7.4.3) Algorithmes de routage
a) Algorithmes généraux
•
Vecteur distance (distance vector algorithm).
Chaque nœud conserve la valeur de la distance entre lui et chaque destination.
1ère étape : détermination de la distance entre lui et ses voisins.
2ème étape : utilisation des distances déjà déterminée au niveau des voisins.
Et ainsi de suite de manière itérative…
•
Routage par état des liaisons.
Chaque routeur rentre en liaison avec ses voisins et apprend leur nom. Il construit
alors un paquet qui contient la liste des noms, chacun associé à un coût. Ce paquet
appelé LSP (Link State Packet) est transmis à tous les autres routeurs. Chaque routeur
a donc une carte complète de la topologie.
La transmission peut être effectuée par inondation avec un arrêt en fonction de l’âge.
107
b) Exemple de routage par vecteur distance
Soit un ensemble de routeurs interconnectés :
On ne considèrera que 5 d’entre eux et
certains des réseaux connectés.
G1
R2
G3
G2
R1
G4
G5
* Table de routage initiale (par prise de contact avec les voisins) :
Table de routage du routeur G2
Destination
Distance
Route
R1
0
directe
R2
0
directe
* Diffusion d’une copie de la table de routage d’un routeur à tous ces voisins
* Mise à jour des tables en fonction des messages :
Il y a modification si :
- il existe un chemin plus court que celui existant,
- une destination inconnue apparaît,
- une distance a été modifiée (mais seulement si le routage s’effectue par le routeur
qui a émis le message où il y a la modification).
Table de routage du routeur G2 avant message
Destination
Distance
Route
R1
0
directe
R2
0
directe
R4
8
G5
R17
5
G4
R24
6
G1
R30
2
G3
R42
2
G1
Message de G1
Destination
Distance
R1
2
R4
3
R17
6
R21
4
R24
5
R30
10
R42
3
108
Table de routage du routeur G2 après message
Destination
Distance
Route
R1
0
directe
R2
0
directe
R4
4
G1
R17
5
G4
R24
6
G1
R30
2
G3
R42
4
G1
R21
5
G1
Distance = nombre de sauts (hop count).
En général distance Gi->Gj = 1, si les deux routeurs sont connectés directement. Cette
distance peut être prise > 1 si la liaison est lente.
c) Inconvénients du routage par vecteur distance
Il nécessite l’échange de messages de configuration longs (le contenu des tables de
routage de chaque routeur). La longueur des messages est donc proportionnelle au
nombre de routeurs.
Le nombre de messages circulant est lui aussi proportionnel au nombre de routeurs.
L’occupation globale du réseau est donc proportionnelle à (nombre de routeurs)².
Ce type de routage a un mauvais temps de réponse aux changements de configuration et
peut même déboucher sur des problèmes de blocage.
Problème de bouclage :
N1
G1
G2
G3
N1
G1
G2
G3
✂
coupure
G2 diffuse une route de distance = 2 pour aller vers N1 mais sans préciser qu’elle passe
par G1 (les messages ne contiennent pas le chemin).
G1 peut donc s’en servir si sa connexion vers N1 est rompue et retransmettre une route
possible avec une distance incrémentée de 1 vers N1 alors qu’il n’y en a plus…
⇒ la distance vers N1 va tendre vers l’infini
Solutions :
- ne pas rediffuser sur le port d’arrivée les routes provenant de ce port.
- temporisation avant modification avec diffusion d’un message de coupure si celle ci
est prévisible.
- rediffuser avec un coût infini pour la route.
109
d) Exemple de routage par état des liaison (SPF)
Chaque routeur a pour objectif une connaissance complète de la topologie.
NA
G1
NC
G2
NB
G5
ND
G3
NE
G4
Nœuds = routeurs ; Arêtes = réseaux
Méthodologie :
• Test de l’activité des routeurs voisins
Message court de type ping (ICMP)
Si le voisin est vivant ou accessible → le lien est considéré comme actif
Si le voisin n’est pas vivant ou accessible → le lien est considéré comme tombé
• Propagation à tous les routeurs de l’état des voisins
• Chaque routeur met à jour sa carte des liens :
Si il y a modification, il recalcule les routes par l’algorithme du plus court chemin de
Dijkstra.
Avantages :
- la taille des messages est limitée,
- la convergence de l’algorithme est sûre car elle est calculée sur chaque routeur
indépendamment.
e) Protocole de routage intra-domaine
RIP (Routing Information Protocol) : vecteur distance (pas de licence)
IS-IS : état des liaisons
OSPF (Open Shortest Path First) : état des liaisons
SIN (Ships In the Night) : multiprotocole
Routage intégré : IS-IS mais multiprotocole avec encapsulation
GGP (Gateway to Gateway Protocol) : vecteur distance (élément ancien de TCP/IP)
f) Protocole de routage inter-domaine
Routage statique
EGP (Exterior Gateway Protocol : IP) : vecteur distance modifié
BGP (Border gateway Protocol) : en remplacement de EGP, vecteur distance
IDRP (InterDomain Routing Protocol) : BGP amélioré mais pour l’ISO
110
Chapitre 8 : Couche Transport
La couche transport fournit le contrôle de bout en bout d’une session de communication,
une fois le chemin établi, ce qui permet un échange fiable et séquentiel des données,
indépendamment des systèmes en communication et de leur emplacement réseau.
8.1) Présentation
La couche transport réalise la charnière entre les fonctions de transmission et les
fonctions d’exploitation. En effet, les couches supérieures ne sont plus véritablement
dédiées à la transmission des données, mais réalisent soit la gestion de la communication,
soit une mise en forme des données.
La couche transport rend l’application indépendante des moyens mis en œuvre pour la
transmission.
8.2) Caractéristiques
8.2.1) Transport de bout en bout
Il assure un acheminement entre deux utilisateurs, dans l’ordre, sans perte ni duplication
et avec un minimum d’erreurs.
connexion de transport
A
Routeur
B
WAN
Routeur
8.2.2) Transparence
Le service transport doit accepter tous les formats, les tailles, les codages pour les
informations. Il doit donc assurer une gestion de mémoires intermédiaires de stockage.
appli
émission
appli
réception
segment
transmis
Buffer
émission
Buffer
réception
111
8.2.3) Sélection de la qualité de service
L’utilisateur peut choisir une qualité de service.
Il existe un grand nombre de paramètres de qualité de service qui sont normalisés par
l’ISO :
- délai d’établissement d’une connexion,
- délai de déconnexion,
- probabilité d’échec de l’établissement de la connexion,
- probabilité d’échec de la déconnexion,
- débit sur la connexion,
- temps de traversée des données,
- taux d’erreurs résiduelles (non détectées),
- probabilité de panne (coupure de la connexion),
- protection contre l’espionnage des données.
La qualité de service de la connexion est issue d’une négociation entre le prestataire de
service et l’utilisateur :
valeur demandée + valeurs de repli
→ acceptation ou réduction imposée par le prestataire
8.2.4) Adressage
Il existe aussi des adresses de couche transport indépendantes des adresses réseaux.
Le protocole réseau réalise la correspondance.
Il y a une possibilité de multiplexage ou d’éclatement d’un point d’accès réseau vers
plusieurs points d’accès transport ou l’inverse.
TSAP11
TSAP12
TRANSPORT
NSAP10
RESEAU
TSAP21
TSAP22
NSAP20
LIAISON ET
PHYSIQUE
TSAP10
NSAP11
TRANSPORT
NSAP12
RESEAU
TSAP20
NSAP21
NSAP22
LIAISON ET
PHYSIQUE
8.2.5) Classes de services normalisées
La couche transport va interagir avec la couche réseau pour obtenir un service
globalement fiable.
112
a) Types de service de la couche réseau
Type A :
service fiable, taux d’erreurs signalées faible
Type B :
taux d’erreurs non signalées faible, mais taux d’erreurs signalées importants
→ la couche transport doit prévoir une reprise sur erreur.
Type C :
taux des deux types d’erreurs trop élevé → la couche transport doit
compenser
(réseau sans connexion au niveau réseau)
b) Classes de services au niveau de la couche transport
Classe 0 : la plus simple
→ établissement de connexion et transfert avec segmentation
Classe 1 :
en plus reprise sur erreurs, déconnexion et données express
Classe 2 :
en plus multiplexage, contrôle de flux ; en moins reprise sur erreurs
Classe 3 :
classe 1 et 2
Classe 4 :
en plus détection et reprise sur erreurs non signalées (réseaux locaux)
Service de transport
Connexion, transfert de données normales, segmentation
Déconnexion, transfert de données express
Contrôle de flux, multiplexage
Récupération sur erreurs
Détection d’erreurs
Classe 0
Classe 2
Classe 3
Classe 4
Classe 1
Réseau de
type B
Réseau de
type C
Réseau de
type B
niveau de service réseau
Réseau de
type A
113
8.2.6) Exemples de services et de protocoles
Phase ou service
Etablissement de
connexion
Transfert de
données
normales
-
Transfert de
données express Libération de
connexion
-
Sans connexion
-
CR
CC
DR
DC
DT
>ED
AK
EA
RJ
ER
UD
114
Nom de la primitive du service
T_CONNECT_request : demande de
connexion
T_CONNECT_indication : indication de
connexion
T_CONNECT_response : réponse de
connexion
T_CONNECT_confirm : confirmation de
connexion
T_DATA_request : demande d’envoi de
données normales
T_DATA_indication : indication de réception
données normales
T_EXPEDITED_DATA_request : indication
d’envoi de données express
T_EXPEDITED_DATA_indication :
indication de réception de données express
T_DISCONNECT_request : demande de
déconnexion
T_DISCONNECT_indication : indication de
déconnexion
T_UNIT_DATA_request : demande d’envoi
de données
T_UNIT_DATA_indication : indication de
réception données
Nom
Demande
d’établissement d’une
connexion de transport
Confirmation de
l’établissement de la
connexion
Demande de
déconnexion
Confirmation de
déconnexion
Transfert de données
Données express
Accusé de réception
Accusé de réception
des données express
Rejet
Erreur de protocole
TPDU invalide
Transfert de données
hors connexion
Paramètres
-
Adresse appelée
Adresse appelante
Option de transfert de données
express
Qualité de service
Données utilisateur (<32 octets)
-
Données utilisateur
-
Données utilisateur (<16 octets)
-
Raison de la déconnexion
Données utilisateur
-
Adresse appelée
Adresse appelante
Qualité de service
Données utilisateur
-
Paramètres
Références, classes de services,
crédit, adresses, taille des blocs
Classes
0124+3
Données
≤ 32 octets
Références, classe de service, crédit
01234
≤ 32 octets
Références, causes
01234
Aucune
Références
1234
≤ 64 octets
Références, numéro de séquence,
contrôle d’erreur, indication de fin
Références, numéro
Références, prochain numéro, crédit
Références, numéro
01234
longueur négociée
1234
1234
1234
≤ 16 octets
Aucune
Aucune
Références
Références, cause, répétition
13
01234
Aucune
Références
longueur non spécifiée
T_CONNECT_request
Repos
pas de connexion
en cours
T_DISCONNECT
Connexion
demandée vers
l’extérieur
T_CONNECT_indication
T_DISCONNECT
T_DISCONNECT
T_CONNECT_confirm
Connexion
demandée par
l’extérieur
T_CONNECT_response
Transfert
de
données
T_DATA
T_EXPEDITED_DATA
Utilisateur
Prestataire de
service
transport
Utilisateur
T_CONNECT_
request
CR
T_CONNECT_
indication
CC
T_CONNECT_
confirm
T_CONNECT_
response
Figure 24 : Ouverture de connexion en classe 2 (Service réseau fiable).
Utilisateur
Prestataire de
service
transport
Utilisateur
T_CONNECT_
request
CR
T_CONNECT_
indication
CC
T_CONNECT_
confirm
T_CONNECT_
response
AK
Figure 25 : Ouverture de connexion en classe 4 (Service réseau non fiable).
115
8.3) Service de transport d’Internet
8.3.1) Présentation
Le service Transport d’Internet est lié à l’ensemble des protocoles TCP/IP (qui constitue la
base réseau d'Internet).
Initialement, ces protocoles sont issus du DARPA (Defense Advanced Research Projects
Agency) qui a mis au point vers 1970 un ensemble de protocoles pour relier la plupart des
centres de recherches aux USA et dans le monde. La forme actuelle de TCP/IP a été
définie vers 1979.
Définis pour des connexions de type WAN, ces protocoles peuvent aussi être utilisés en
interne à une entreprise ou une administration.
Ces protocoles sont en fait des normes de communication (indépendants des matériels).
Ceci permet une adaptation aisée quelle que soit la machine utilisée.
Pour l’utilisateur, ils sont masqués par des programmes d'application qui permettent de
communiquer plus aisément (courrier électronique, transfert de fichiers, connexion à
distance).
Ils sont inclus à UNIX 4 BSD (Berkeley Software Distribution), avec des utilitaires de
communication.
L’implémentation est basées sur les "sockets" (extrémités de connexion...), mécanisme
généralisant les entrées-sorties sous UNIX.
L'IAB (Internet Activities Board créé en 1983 restructuré en 89) coordonne les évolutions
d'Internet.
Après restructuration, il a deux activités :
- IRTF (Internet Research Task Force),
- IETF (Internet Engineering TF).
Le NIC (Network Information Center) gère les informations au sujet d’Internet (distribution
de documents électroniques, détails administratifs).
Les RFC (Request For Comments) comprennent les normes, les projets de normes (Draft
Internet), et un certain nombre de remarques (un peu folklorique pour certaines)
numérotés dans l'ordre chronologique de leur apparition.
Les IEN (Internet Engineering Notes) plus synthétiques sont plus utilisées.
On peut obtenir tous ces documents par courrier électronique ou par FTP. En France,
l’INRIA relaie un certain nombre de fonctions du NIC.
TCP comprend deux services principaux :
- remise de paquets en mode sans connexion : rapide, peu fiable → UDP
- service de transport fiable : gestion de la connexion → TCP ainsi que des
fonctionnalités supplémentaires liées aux applications.
8.3.2) Protocole de Datagramme utilisateur (UDP)
UDP assure les mécanismes de base permettant d'envoyer des datagrammes isolés.
116
Il permet de distinguer plusieurs applications destination sur une même machine. Il utilise
IP pour le transfert du datagramme. UDP ne gère ni erreur ni contrôle de flux ni accusé de
réception : c’est donc un service non fiable (comme IP).
UDP est très efficace sur des réseaux locaux (protocole léger), les couches supérieures
devant gérer les erreurs. Il n’est pas utilisé sur des liaisons longue distance avec routage
car il n’assure pas une fiabilité suffisante.
La répartition des messages à l'intérieur des machines se fait par des ports. Ceci permet
de prendre en compte l'aspect multiprocess des S.E.
Chaque application précise sur une machine possède un numéro de port associé (un
entier).
La communication s'effectue de machine à machine mais aussi de port à port. Chaque
message contient le numéro IP mais aussi le numéro de port.
Exemple : une machine utilise le service x d'une autre machine, elle passe alors ses
messages de demande de service à un port numéroté i associé au service x.
Chaque port possède des tampons (ou file d'attente) d'entrée et de sortie pour
désynchroniser les échanges.
Structure du datagramme UDP :
entête UDP
Numéro de port source
+
données IP
Numéro de port destination
Longueur du message UDP
Total de contrôle UDP
........IP.......
Le total de contrôle est réalisé en incluant des données IP (les adresses)
(en violation du principe des couches)
Adresses IP + 17 + longueur UDP
(Complément à un de la somme des compléments à un)
Décimal
0
7
9
11
13
15
17
19
37
42
43
53
67
68
Internet
–
ECHO
DISCARD
USERS
DAYTIME
–
QUOTE
CHARGEN
TIME
NAMESERVER
NICNAME
DOMAIN
BOOTPS
BOOTPC
Unix
–
echo
discard
systat
daytime
netstat
qotd
chargen
time
name
whois
nameserver
bootps
bootpc
Réservé
Echo
Détruire
Utilisateurs actifs
Horodate
Qui est actif, ou Netstat
Fuseau horaire
Générateur de caractères
Heure
Machine serveur de noms
Qui-est-ce ?
Serveur de noms de domaine
Serveur de protocole d’amorce
Client de protocole d’amorce
117
69
111
123
161
162
512
513
514
525
Transfert de fichiers simple
RPC de SUN Microsystems
Protocole d’horloge réseau
Moniteur d’administration de réseau SNMP
Trappes SNMP
Communications satellites Unix
Démon Unix who
Journalisation système
Démon d’horodate
tftp
sunrpc
ntp
snmp
snmp-trap
biff
who
syslog
timed
TFTP
SUNRPC
NTP
–
–
–
–
–
–
Tableau 15 : Exemple de ports UDP réservés qui présente les mots clés Internet standard et les
équivalents Unix les plus courants. La liste n’est pas exhaustive. Les protocoles qui offrent des
services identiques utilisent le même numéro de port UDP, ce qui permet des extensions.
8.3.3) Transport fiable en mode connecté TCP
a) Généralités
TCP (Transport Control Protocol) est le service fiable associé au protocole IP (non fiable).
Il peut être considéré indépendamment (équivalent au TP-4 de l'ISO).
TCP est adapté au transfert d'un grand nombre de données entre deux machines : avec
correction des éventuelles erreurs qui statistiquement auront certainement lieu lors d'un
échange important.
Il permet de ne pas recommencer tout le transfert en cas d'un échec, comme ce serait le
cas avec IP.
TCP est un ensemble de normes ou protocoles (ce n'est pas un logiciel). Il ne spécifie que
le fonctionnement et non l'interface des fonctions, ceci reste du domaine du S.E. car il y a
utilisation des fonctions d'E/S de celui-ci.
Cette souplesse de programmation permet à TCP d’être utilisé sur la plupart des
machines.
TCP est un service de remise fiable, il travaille donc en mode connecté. TCP établit une
connexion bidirectionnelle simultanée entre deux machines.
b) Structure du segment TCP
0
4
8
Port source
16
24
31
Port destination
Numéro de séquence
Numéro d’accusé de réception
Lgr_entête Réservé Bits de code
Fenêtre
Total de contrôle
Pointeur d’urgence
Otions (éventuelles)
Bourrage
Données
…
Figure 26 : Format du segment TCP.
Les champs Port source et Port destination contiennent les numéros de port TCP qui
identifient les programmes d’application des extrémités de la connexion. Le Numéro de
118
séquence donne la position du segment dans le flux de l’émetteur, et le Numéro d’accusé
de réception indique le numéro du prochain octet attendu par le récepteur. Il faut
remarquer que le numéro de séquence fait référence au flot qui s’écoule dans le même
sens que le segment, tandis que le numéro d’accusé de réception fait référence au flot de
sens contraire. Lgr_entête représente la longueur de l’entête (x 32 bits). Fenêtre est la
taille du tampon de réception. Bits de code est le contenu du segment.
c) Propriétés du service de remise fiable
TCP a une orientation connexion avec création de circuits virtuels :
- il y a vérification avant l'échange que tout est en place pour transmettre,
- pendant échange, il y a un suivi de la communication toujours pour vérification.
Les programmes d'application voient la liaison comme une liaison physique continue et
fiable.
Il y a désynchronisation des échanges :
Les données à transférer ou reçues sont mises dans des buffers. L’application ne
s'occupe pas de la taille véritable des données qui transitent.
TCP n’assure aucune structuration des données : c’est aux couches supérieures
(présentation) de structurer les données. Ceci permet aux logiciels d'application de
retrouver un formatage correct.
La connexion est bidirectionnelle simultanée :
- full-duplex
- les accusés de réception peuvent être superposés aux données (piggybacking).
d) Fonctionnement de TCP
TCP utilise aussi des ports pour réaliser l'interface avec l'application. Chaque extrémité de
la connexion est un port (un sur chaque machine). Les ports sont repérés par des
numéros qui sont des nombres entiers (comme UDP). Un même port peut être utilisé par
plusieurs applications (ou connexions). Plusieurs machines peuvent accéder à un même
service via le même port, les différentes connexions sont différenciées par une des deux
extrémités qui doit (peut) être différente.
Décimal
0
1
5
7
9
11
13
15
17
19
20
21
23
25
37
42
43
53
77
79
93
95
Internet
–
TCPMUX
RJE
ECHO
DISCARD
USERS
DAYTIME
–
QUOTE
CHARGEN
FTP–DATA
FTP
TELNET
SMTP
TIME
NAMESERVER
NICNAME
DOMAIN
–
FINGER
DCP
SUPDUP
Unix
–
–
–
echo
discard
systat
daytime
netstat
qotd
chargen
ftp–data
ftp
telnet
smtp
time
name
whois
nameserver
rje
finger
–
supdup
Réservé
Multiplexeur TCP
Soumission de travaux à distance
Echo
Détruire
Utilisateurs actifs
Horodate
Programmes d’état du réseau
Fuseau horaire
Générateur de caractères
Protocole de transfert de fichiers (données)
Protocole de transfert de fichiers
Connexion en mode terminal
Protocole simple de transfert de courrier
Heure
Machine serveur de noms
Qui-est-ce ?
Serveur de noms de domaine
Service privé de soumission de travaux à distance
De qui s’agit–il ?
Protocole de contrôle de périphérique
Protocole SUPDUP
119
101
102
103
104
111
113
117
119
129
139
160–223
HOSTNAME
ISO_TSAP
X.400
X.400–SND
SUNRPC
AUTH
UUCP_PATH
NNTP
PWDGEN
NETBIOS–SSN
–
hostnames
iso–tsap
X.400
X.400-snd
sunrpc
auth
uucp–path
nntp
–
–
–
Serveur de noms NIC
ISO_TSAP
Service de courrier X.400
Emission de courrier X.400
RPC de SUN Microsystems
Service d’authentification
Service de chemin UUCP
Protocole de transfert de nouvelles USENET
Protocole de génération de mot de passe
Service de session NETBIOS
Réservé
Tableau 16 : Exemples de valeurs de numéros de port réservées. Pour permettre les extensions
futures, des protocoles comme UDP utilisent les mêmes numéros de port.
e) Mise en œuvre du service fiable de transmission de données
Ouverture d'une connexion TCP :
Avant l'ouverture d'une connexion, les programmes d'application doivent être d'accord et
prévenir chacun la machine hôte afin d'autoriser la connexion.
Sur la machine "réceptrice" en fait l'une des deux machines, il y a une ouverture dite
passive (affectation d'un port TCP à l'application) en attente de réception d'une demande
de la part du demandeur. Sur l'autre machine, il y a ouverture active (affectation d'un
numéro de port) et demande de connexion.
Etablissement d’une connexion :
Libération d’une connexion TCP :
SYN
SYN + ACK
FIN
ouverture
passive
ACK
FIN + ACK
ACK
Emetteur
demande
fermeture
connexion
ACK
Récepteur
demande
Emetteur
demande
Récepteur
demande
Transmission de données :
La suite d’octets à transmettre est divisée en segments (1 segment ~ un datagramme).
Trois fonctions principales sont à réaliser pour assurer la transmission fiable des
données :
- le contrôle de flux,
- la gestion des paquets perdus,
- le contrôle de l’intégrité des données.
En ce qui concerne le contrôle de l’intégrité, la principale technique utilisée est celle des
accusés de réception avec retransmission si négatif. Ceci nécessite que les segments
soient numérotés.
120
/ Réinitialisation
Début
Fermé
Ouverture
passive
Fermer
Ouverture active / syn
Écoute
syn / Syn + ack
Émission / syn
Réinitialisation
Fermer /
temporisation
syn / syn + ack
SYN reçu
SYN émis
Réinitialisation
ack
syn + ack / ack
Connexion
établie
Fermer / fin
Fermer / fin
Attente
Fermer
Fermer / fin
Fin
Attente
1
fin / ack
Fermer
en
cours
ack /
fin-ack/ack
ack /
Fin
Attente
2
fin / ack
Tempo
expirée
Dernier
ACK
ack /
La temporisation expire après
2 durées de vie de segment
Figure 27: Automate à nombre d'états finis de TCP. Chaque extrémité de connexion commence dans
l'état fermé. Les noms associés aux transitions indiquent l'événement cause de la transition ou la
réponse correspondante éventuelle.
* Contrôle du flux :
Plusieurs mises en oeuvre sont possibles :
- envoi1 - attente accusé1 - accusé1 - envoi2.....
- Fenêtre glissante (fenêtre d'anticipation) : envoi1 - envoi2 - envoi3 - attente
accusé123...
Le choix pour TCP est la gestion d’une fenêtre glissante :
10 11 12 13 14 15 16 17 18 19 20 21
Acquitté
Transmis
A transmettre
Pour la fenêtre d'émission, trois pointeurs sont à gérer :
121
données émises mais non acquittés, données en cours d'émission, données restant à
émettre.
Le mécanisme de fenêtre glissante permet de répondre à deux aspects du protocole :
- l'efficacité de la transmission, le débit est important du fait de l'anticipation
- le contrôle du flux, il peut être réglé car la taille de mémoire encore disponible peut
être envoyée en retour.
Pour cela le mécanisme agit au niveau de l'octet et non du segment, ceci procure plus de
souplesse.
La taille de la fenêtre d’anticipation peut être variable. Ceci permet d’ajuster le débit de
l’émetteur à celui du récepteur. En effet, les accusés de réception contiennent la taille de
la fenêtre de réception (nombre d’octets libres).
Si cette taille augmente alors on peut augmenter la taille de la fenêtre de l’émetteur. Si la
fenêtre de réception diminue alors il faut réduire celle de l’émetteur. Cette modification a
lieu lors des glissements.
* Gestion des paquets perdus.
La gestion des paquets perdus est réalisée par l’émetteur à l’aide des accusés de
réception de paquets envoyés qui ne lui sont pas parvenus. Pour cela l’émetteur doit
décider à partir de quel délai un paquet non suivi d’un accusé de réception doit être
considéré comme perdu. Cette valeur de la temporisation de retransmission nécessite de
connaître approximativement le temps de transit entre les deux machines en
communication.
Ce temps de transit aller-retour est appelé RTT.
La valeur de RTT est mise à jour de manière adaptative :
RTT = k (old RTT) + (1-k) (RTT mesuré)
Ce calcul peut être fait avec l’algorithme de Karn où il y a non prise en compte des
segments retransmis.
* Congestion dans TCP.
La mise en oeuvre des méthodes précédentes peut conduire dans certains cas à des
problèmes de congestion.
Si la trafic augmente, alors les délais augmentent, donc le nombre de retransmission
augmente, donc le trafic augmente…
Ceci conduit à un collapsus congestif.
Plusieurs solutions sont envisageables :
-
TCP diminue le débit d’émission par des messages ICMP issus d’un routeur.
Algorithme de démarrage lent et de diminution dichotomique : on utilise une
dissymétrie de méthode pour le calcul de l’accroissement et de la réduction du
trafic.
Lors de la perte d’un datagramme : la fenêtre de congestion est divisée par 2,
Lors d’un accusé bon (ACK OK) reçu : la fenêtre de congestion est augmentée d’un.
122
Congestion
Fenêtre normale
L’intérêt de cette méthode est que lors d’un début de congestion, il y a une décroissance
rapide du trafic, puis le débit augmente doucement, évitant une recongestion rapide.
* syndrome de la fenêtre stupide (Silly window syndrome)
Pour les applications lisant ou écrivant caractère par caractère, il peut y avoir
augmentation du nombre de segments transmis avec un seul octet de donnée utile.
On instaure alors un nombre minima de données reçues avant un ACK et un groupage
pour l’écriture.
Rappel : Orientation des datagrammes
Datagrammes :
ARP
RARP
IP
« BOOTP »
ICMP
EGP
IP :
UDP
TCP
(suivant le type de l’en–tête)
Protocole BOOTP.
Protocole en remplacement de RARP pour déterminer au démarrage l'adresse IP d'une
machine sans disque. BOOTPO utilise des adressages spéciaux IP.
8.4) Format du paquet IP
0
4
8
16
24
31
Version Lg_ent Type de service
Longueur totale
Identification
Flags
Dép. Fragment
Durée de vie
Protocole
Total de contrôle d’entête
Adresse IP source
Adresse IP destination
Otions IP (éventuelles)
Bourrage
Données
…
Figure 28 : Format du paquet (datagramme) IP.
123
8.5) Format du paquet IPX
1er octet
2ème octet
3ème octet
4ème octet
1
Checksum
Longueur du paquet
2 Nombre de sauts Type du paquet
Réseau destination
3
Réseau destination (suite)
Nœud destinataire
4
Nœud destinataire (suite)
5
Socket destinataire
Réseau origine
6
Réseau origine (suite)
Nœud origine
7
Nœud origine (suite)
8
Socket origine
Entête protocole suivant - données
9,
10,
SDU – Données utilisateur
11,
Figure 29 : Format du paquet IPX.
Les champs du paquet IPX sont les suivants :
- Un checksum sur 2 octets contrôle l’intégrité des 30 octets de l’en-tête IP
uniquement. Ce champ n‘est pas utilisé par Netware pour des raisons d’efficacité.
IPX le force à FF FF,
- La longueur du paquet IPX en octets, en-tête compris,
- le champ Nombre de sauts (appelé Transport Control) est mis initialement à zéro
par la source. Il est incrémenté dans chaque routeur. S’il atteint la valeur 16, le
paquet est jeté, ceci afin d’éviter les boucles.
- Type du paquet indique le protocole destinataire. C’est un SAP. Les valeurs sont :0
pour incoonu,(le paquet sera délivré à SAP ou RIP), 1 pour RIP, 4 pour IPX (ce qui
permet l’encapsulation IPX dans IPX, ce qui est utile en particulier pour les
mobiles), 5 pour SPX, 17 pour NCP ou SAP…
- les champs adresse source et destination.
8.6) Les sockets UNIX
Les E/S UNIX sont basées sur un principe (paradigme) Ouvrir-lire-écrire-fermer. TCP/IP
pourrait fonctionner avec ce principe sur un fichier /dev/tcp. Mais cette mise en œuvre ne
répond pas parfaitement à tous les cas de communication par réseaux locaux (attente de
connexion, ou mise en œuvre active de connexion, destination variable pour deux
datagrammes successifs).
D'où l'introduction d'un nouveau concept : les tubes nommés (sockets). C’est une
généralisation des accès aux fichiers. L'ouverture d'un socket (avec attribution d'un
numéro) se fait sans y attribuer une adresse spécifique comme pour les fichiers. Ensuite
l'application peut associer une adresse spécifique ou la préciser à chaque fois.
Création : numéro_socket = socket(af, type, protocole)
af : famille de protocole (ex : AF_INET pour TCP/IP)
type : type de communication souhaité (ex : service de remise fiable SOCK_STREAM)
protocole : protocole particulier parmi af.
Simulation des tubes : socketpair(af, type, protocol, stab) communication aux deux bouts
(communication réseau virtuelle)
124
héritage des sockets : à l'aide de fork (se répliquer) et de exec (exécuter la copie), la
nouvelle copie hérite de tous les sockets ouverts. Il doit donc y avoir un compteur de
référence associé à chaque socket pour ne pas le fermer avant la disparition de toutes les
copies.
close(socket) : décrémentation du compteur associé au socket.
spécification de l'adresse locale : bind (socket, adresse-locale,longueur adresse)
connexion à une adresse destination : connect(socket, adr destination, longueur adr)
adresse : structure sockaddr
émission d'information :
write(socket, tampon,longueur)
writev(socket,vecteur_E/S, lgr_vecteur)
send(socket, message, longueur , drapeaux)
sendto socket, message, longueur , drapeaux, adresse destination,lgr_adresse)
sendmsg(socket, struct_message,drapeaux)
réception d'information :
read
readv
recv(socket, tampon, longueur, drapeaux)
recvfrom(socket, tampon, longueur, drapeaux,adr_source,lgr_adresse)
recvmsg
getpeername : détermination de l'adresse du pair (extrémité distante)
getpeername(socket, adr-destination,lgr-adresse)
getsockname(socket, adrlocale, long_adr) adresse locale associée au socket.
getsockopt,
setsockopt,
listen,
setdomainname, getdomainname.
accept,
select,
gethostname,
sethostname,
125
Chapitre 9 : Couche Application
9.1) Composition
Cette couche regroupe les différentes applications qui vont utiliser les fonctionnalités d’un
réseau. Il est évident que l’on ne peut dresser une liste exhaustive de ces applications.
Certaines applications sont néanmoins présentes quel que soit le type de réseau : partage
de fichiers, messagerie, navigateur Internet, etc.
Nous allons donc présenter dans la suite quelques applications typiques utilisées
couramment avec des réseaux de machines UNIX.
Dans un système d’exploitation multi-tâches multi-utilisateurs, comme UNIX, chaque
application est constituée de plusieurs types de fichiers et de commandes :
• des commandes standard (accessibles directement par l’utilisateur),
• des commandes réservées à l’administrateur,
• des programmes qui « tournent » en permanence en tâche de fond (démons ou
daemons en anglais),
• des fichiers de configuration pour ces démons,
• des fichiers de commandes pour lancer plus facilement l’application.
BOS (Basic Operating system)
Démon
Fichiers de
configuration
Applications
Schéma de fonctionnement des applications.
L’étude d’une application pourra se faire à plusieurs niveaux suivant l’utilisateur :
• étude des commandes uniquement pour un simple utilisateur
• étude plus complète pour les gestionnaires du réseau.
9.2) Application TCP/IP
9.2.1) Interface TCP/IP
Les fonctions TCP/IP sont plutôt relatives aux couches 3 et 4 (respectivement couches
réseau et transport), donc inaccessibles par l’utilisateur. En fait, en plus des fonctions de
gestion et de surveillance relatives aux couches basses et qui sont accessibles par
l’utilisateur, TCP/IP fournit aussi un environnement de communication pour échanger des
informations et se connecter sur des machines distantes.
127
9.2.2) Commandes pour l’utilisateur final
a) Commandes d'affichage d'informations
ping :
affiche l'état du réseau ou d'un hôte éloigné.
La commande ping permet de faire un test des liaisons physiques en restant à un
niveau bas. Elle consiste à réaliser l'échange de paquets de données et à faire
des statistiques sur le temps de transfert et les erreurs rencontrées.
host :
affiche le nom d'un hôte connaissant son numéro Internet, ou l'inverse.
whois :
affiche des informations complémentaires sur un utilisateur.
Cette commande permet d'obtenir l'ID utilisateur ainsi que les surnoms
(nickname).
finger :
affiche les informations sur les utilisateurs connectés à une machine.
rwho :
affiche quels sont les utilisateurs connectés à un hôte.
b) Commandes d'exécution ou de connexion à distance
telnet : connexion sur un hôte éloigné (TELNET interface).
rlogin :
connexion transparente avec un hôte éloigné.
ftp :
transfert de fichiers avec un hôte éloigné.
tftp :
transfert de fichiers avec un hôte éloigné (protocole TFTP).
rcp :
transfert de fichiers entre deux hôtes éloignés.
rsh :
exécute une commande sur un hôte éloigné.
rexec :
exécute une commande spécifique sur un hôte éloigné (avec mot de passe).
c) Commande de communication à distance
talk :
permet de communiquer interactivement avec un autre utilisateur via le clavier et
l'écran.
9.2.3) Commandes pour l'utilisateur privilégié (non exhaustives)
netstat : affiche l'état du réseau.
lsnamsv :
affiche les services de noms disponibles dans la base de données.
lsprtsv : affiche les services d'impression disponible dans la base de données.
arp :
affiche les tables de transformations adresses physique-adresses Internet.
ruptime : affiche l'état de chaque hôte sur le réseau.
128
9.2.4) Démons
inetd :
fournit les fonctions de base de gestion du réseau. Inetd regroupe plusieurs
démons qui sont lancés lors d'un appel à des fonctions de communications.
gated :
permet le routage des informations entre deux machines, il définit le
cheminement des messages.
named : permet de résoudre (réaliser une correspondance entre un nom et une adresse)
les noms des machines dans un domaine donné.
routed : gère les tables de routage.
syslogd : gère les messages système. timed : gestion de l'heure.
Fingerd, ftpd, rexecd, rlogind, rshd, rwhod, talkd, telnetd, tftpd fournissent les
fonctionnalités pour les commandes équivalentes.
9.2.5) Fichiers de configuration pour les démons TCP/IP
Ils sont situés principalement dans les répertoires /etc et /var/adm. Ils servent à définir le
mode de fonctionnement des démons, ainsi qu'à apporter les informations nécessaires à
leur fonctionnement.
gated.conf : fichier de configuration pour le démon gated.
inetd.conf :
fichier de configuration de inetd.
resolv.conf : fichier de configuration pour la résolution des adresses.
named.boot : fichier de configuration de DNS, initialisation du nom de domaine.
9.2.6) Fichiers de commande (exécutable)
Ce sont des fichiers textes qui regroupent toutes les commandes à lancer au moment du
boot (démarrage de la machine). Ils lancent en particulier tous les démons nécessaires.
rc.net :
configuration de l'interface réseau.
rc.tcpip :
mise en route des démons TCP/IP.
9.3) Application NFS
9.3.1) Présentation
NFS (Network File System) permet de gérer les partages de ressources entre machine
(disque, impression, etc.).
NFS fournit principalement des services qui permettent un accès à des fichiers et à des
répertoires sur d'autres machines, aussi simplement que s'ils étaient locaux. La machine
129
sur laquelle sont les fichiers les exporte (elle a une fonction de serveur). Les machines
utilisatrices sont appelées client.
Ce concept dit de client-serveur s'applique à un grand nombre d'applications (X11, NFS,
NIS...). Il est à la base de toute l'informatique partagée.
Client
Serveur
Fichiers
Relation Client-Serveur.
NFS (initialement produit par SUN) est indépendant du type de machine, de réseau et de
système d'exploitation. Il existe par exemple sur PC sous DOS (PC-NFS) ou même sous
Windows.
9.3.2) Fonctionnement
NFS utilise principalement RPC (Remote Procedure CalI)
RPC est une bibliothèque de fonctions qui permettent de faire exécuter par une machine
un processus défini dans une autre machine.
Les échanges se font par XDR (eXternal Data Representation) qui standardise les formats
des données échangées.
Les autres fonctions sont assurées par des appels à des fonctions TCP/IP.
Les fonctions principales de NFS sont :
• l'exportation de fichiers (côté serveur).
Un serveur possède une liste de fichiers (ou systèmes de fichiers) exportés, c'est à
dire qui ont l'autorisation d'utilisation par une autre machine.
La liste des fichiers exportable est contenue dans le fichier /etc/exports.
L'exportation est réalisée par la commande /etc/exportfs.
On peut obtenir à un instant donné la liste des fichiers exportés dans /etc/xtab.
•
le montage de fichiers (côté client).
Une machine cliente doit pouvoir accéder de manière transparente à certains
fichiers situés sur d'autres machines. Elle doit réaliser une opération de montage de
ces fichiers sur un répertoire local.
Client
(local)
Serveur
Montage
Répertoire
exporté
Schéma de montage d'un système de fichiers.
Le montage est effectué par la commande mount (démontage par umount).
La liste des fichiers prédéfinis est dans /etc/filesystems.
130
La liste des fichiers montés à un instant donné est dans /etc/mtab ou /etc/fstab.
Toutes les opérations d'exportation et de montage sont initialisées au démarrage dans le
fichier /etc/rc.nfs.
9.3.3) Démons et autres commandes
a) Démons
démons serveur: rpc. mountd, nfsd,
démon client: biod,
démon de liaison entre l'application et le serveur: portmap,
démon de statistiques ! : rstatd,
liste des utilisateurs: /usr/etc/rpc.ruserd,
connexion avec un PC: /etc/rpc. pcnfsd,
montage automatique: automount.
b) Commandes
rup : affiche l'état d'un hôte,
nfsstat : affiche les statistiques sur les échanges NFS pour une machine,
rpcinfo : statut des échanges par RPC,
showmount : affiche la liste des clients NFS,
rusers : donne la liste des utilisateurs du réseau,
rwall : envoi de message à tous les utilisateurs,
spray: envoi d'un certain nombre de paquets à un hôte.
c) Fichiers de configuration
ethers: liste des adresses Ethernet,
netgroup : liste des groupes sur un réseau,
networks : information sur le réseau,
9.4) Application NIS
9.4.1) Présentation
NIS (Network Information Service) est une application développée par SUN (sous le nom
de yellow pages, en fait propriété d'ATT). Elle permet au sein d'un réseau de partager des
informations sur les utilisateurs de telle manière qu'elles soient communes pour toutes les
machines du réseau. Ces informations partagées sont, par exemple, les mots de passe,
les répertoires de connexion, etc. NIS complète les fonctionnalités de NFS relativement au
partage des ressources pour les utilisateurs.
9.4.2) Constitution
Le principe de fonctionnement est identique à celui de NFS. Il est basé sur une relation
client-serveur. Il consiste à partager pour toutes les machines les mêmes fichiers de
configuration. Par exemple, en ce qui concerne les mots de passe, le fichier /etc/passwd
du serveur NIS est transmis à toutes les autres machines qui l'utilisent en complément de
celui de la machine locale. Ceci permet à un utilisateur de se connecter de la même
manière sur toutes les machines. Cette fonctionnalité est essentielle dans un réseau de
131
stations (sous UNIX) où toutes les machines peuvent être clients et serveurs en même
temps.
Pour accroître la fiabilité d'un tel fonctionnement, il peut exister des serveurs NIS esclaves
qui relaient la machine serveur maître lors d'interruptions ou de surcharges momentanées.
Les informations partagées se trouvent dans des fichiers temporaires appelés tables
(map). Ces tables sont communes à un ensemble de machines rassemblées dans un
domaine. Un domaine comprend donc un serveur maître, éventuellement plusieurs
serveurs esclaves si nécessaire, et des clients.
9.4.3) Démons et commandes
a) Démons
ypbind : démon client,
ypserv : affiche les informations sur les tables (fichiers de configuration) NIS,
yppasswdd : gère les mots de passe.
b) Commandes
domainname : affiche le nom du domaine NIS,
lsmaster : affiche les caractéristiques du serveur NIS,
ypcat : affiche les tables NIS,
yppasswd : change le mot de passe pour un utilisateur (pour NIS),
ypwhich : identifie le serveur utilisé.
9.5) Application DNS
Une autre catégorie d’adresses peut être utilisée. Ce sont les adresses basées sur la
syntaxe DNS (Domain Name Service). On les retrouve au niveau Application pour de
nombreux logiciels (messagerie, ftp...). Elles ont l’avantage d’être littérales et
hiérarchiques, elles permettent de définir rapidement la localisation ou le type d’activité du
site.
Format : [email protected]
Exemple : [email protected]
L’extension peut être soit un pays, soit un type de trafic (surtout aux USA).
com : entreprise et association
edu : université
gov : gouvernement
mil : militaire
int : organisation internationale
net : site réseau d’importance majeure
org : le reste
fr :
nl :
uk :
132
France
Nollande
United Kingdom (Royaume de Grande Bretagne...)
L’adresse peut représenter une personne mais plus généralement aussi une machine ou
un ensemble d’entités.
La recherche de l’adresse IP à partir de cette adresse littérale se fait par un mécanisme de
résolution de nom. Pour chaque niveau et pour chaque point de l’arbre, une machine doit
connaître toutes les adresses inférieures. La résolution se fait ainsi par aiguillage. Chaque
machine gère aussi une mémoire cache pour retrouver rapidement les sites les plus
demandés.
Les adresses WEB sont basées sur le même principe avec un en-tête différent :
http ://www.univ-orleans.fr, par exemple.
9.6) Application Mail
9.6.1) Présentation
Mail fournit un ensemble d'utilitaires permettant d'envoyer et de recevoir des messages
personnels à tout moment. Cette application gère une boite aux lettres pour chaque
utilisateur. Mail fonctionne indépendamment de tout protocole, c'est à dire que l'on peut
recevoir des messages provenant de n'importe quelle machine, même si elle ne travaille
pas sous UNIX. Il existe plusieurs types de messages: message simple, message secret,
message de vacances ! Mail ne permet de transmettre correctement que des messages
ASCII standard. En effet, les accents et autres caractères spéciaux sont implémentés
différemment suivant les machines. Des protocoles spécifiques (MIME) ont du être
développés pour permettre la transmission des caractères spéciaux.
Pour transmettre un message il est nécessaire de connaître l'adresse électronique (mél)
de son correspondant. Elle est composée d'un nom de personne suivi, si nécessaire, d'un
nom de machine (séparé par @). Si le correspondant n'est pas local, un nom de réseau
est aussi ajouté.
Exemple :
mail leger : envoie un message à l'utilisateur local leger,
mail leger@mailhost : envoie un message à l'utilisateur leger sur mailhost,
mail [email protected] : envoie un message à l'utilisateur leger du lesi de
l'Université d'Orléans de France.
9.6.2) Fonctionnement
Le schéma ci-dessous décrit les différentes étapes pour transmettre un message d'un
utilisateur à un autre. Le fonctionnement d'une messagerie s'apparente totalement à celui
de PTT, avec tous les services envisageables.
133
éditeur
User 1
Machine 3
Send
Receive
~user2/mbox (ou mailbox)
machine4
/var/spool/mail/user2
User 2
Machine 4
.forward
Machine5
/var/spool/mail/user2
Schéma de fonctionnement de la messagerie Mail.
Sous UNIX, l'application Mail est appelée par la commande mail. Elle fournit toutes les
fonctionnalités pour l'envoi et la réception des messages.
Certains fichiers de configuration peuvent être utilisés :
.forward : redirection des messages,
.mailrc : liste d'envoi, alias,
sendmaiLcf: configuration pour l'envoi des messages.
Les messages sont stockés :
− dans /usr/spool/mail/nom-utilisateur avant lecture,
− dans le fichier ./mbox après sauvegarde,
− dans dead.letter si ils ne sont pas transmis.
Il faut noter que sous les environnements Windows, de nombreuses applications
fournissent des interfaces utilisateurs plus conviviales à utiliser que la commande texte
UNIX mail.
134
Chapitre 10 : Bibliographie
Liste de sites Internet ayant trait aux réseaux informatiques
10.1) Organismes de normalisation ou organismes officiels
(Souvent points de départ vers beaucoup d’autres sites)
10.1.1) World Wide Web Consortium
http://www.w3.org/
:
http://www.w3.org:8001/nnsc.nsf:210/internet-rfcs? :
les RFCs sur TCP/IP
http://www.w3.org:8001/nnsc.nsf:210/internet-drafts? :
les drafts !!
http://www.w3.org:8001/nnsc.nsf:210/ietf-documents?:
les documents de l’IETF !!!
http://www.w3.org/hypertext/DataSources/Archives/RFC_sites.html : Nearest server
http://www.w3.org/hypertext/DataSources/ByAccess.html : listes de sites
http://www.inria.fr
:
relai européen du W3C
10.1.2) L’Internet Society NIC
http://www.internic.net
ds.internic.net :
pour télécharger les RFC par FTP
gopher://nic.merit.edu/
(Merit Information)
gopher://ietf.CNRI.Reston.va.us/ (Internet Society)
10.1.3) ITU (International Telecommunication Union / CCITT
http://www.itu.ch
http://www.itu.int
gopher://info.itu.ch
(gopher)
10.1.4) ISO (International Standard Organisation)
http://www.iso.ch
10.1.5) Institut of Electrical and Electronics Engineers
http://www.ieee.org/
http://www.ieee.org /db/status/index.html/ :
pour commander des standards : ex 802
10.1.6) ATM Forum
http://www.atmforum.com
10.2) Autres sites généraux
International mobile satellite organisation
http://www.inmarsat.fr
10.2.1) INRIA (Institut National Recherche en Informatique et Automatique
http://www.inria.fr
135
10.3) Entreprises spécialisées dans les domaines Télécom-Réseaux
France Telecom :
Indigo :
http://www.francetelecom.fr
http://www.indigo-net.com/fr/lmr298.htm
10.4) Entreprises de fabrication de produits réseaux
http://www.sps.mot.com
http://www.3com.com
http://www.allayer.com
http://www.galileoT.com
http://www.icube.com
http://www.mmcnet.com
http://www.netcom.com
http://www.pmc-sierra.bc.ca
http://www.ti.com/sc
http://www.vertex-networks.com
(Motorola)
(3COM Corporation)
(Allayer Technologies Corp)
(Galileo Technology)
(I-Cube)
(MMC Networks)
(Network and communication consulting ?)
(PMC-Sierra)
(Texas Instruments : page réseau)
(Vertex Networks bien sur)
10.5) Entreprises de commercialisation de produits réseaux
Catalogue et commandes INMAC (lent) :
Catalogue Transtec :
Catalogue BlackBox :
Catalogue Misco :
http://www.inmac.fr
http://www.transtec.fr
http://www.blackbox.fr
http://www.blackbox.com (USA)
http://www.hcsmisco.fr
http://www.misco.de
http://www.globalcomputer.com (USA)
10.6) Cours ou sites à vocation pédagogique
cell-relay.indiana.edu (gopher) : réseaux haut débit
gopher.urec.edu
(unité réseaux du CNRS)
http://www.research.att.com/biblio.html
(bibliographie)
http///wwwhost.ots.utexas.edu/ethernet/ethernet.home.html
10.7) Autres
10.8) http://www.vlib.org
136
Virtual library
Chapitre 11 : Glossaire
Actif/passif – Dans les applications à boucle de
courant, un équipement capable de fournir le
courant pour la boucle est "actif"; un équipement
qui doit s'alimenter sur l'équipement connecté est
"passif".
Adresse – Désignation unique de l'emplacement
de données ou identité d'un équipement
intelligent; chaque équipement sur une même
ligne de communication peut répondre à son
propre message, Analogique – Mode de
transmission dans lequel les données sont
représentées par un signal électrique variant en
continu.
Voir Numérique.
ANSI (American National Standards Institute) –
Principal organe de standardisation aux Etats–
Unis.
L'ANSI
est
un
organisme
non
gouvernemental, sans but lucratif, soutenu par
des organisations commerciales, des associations
professionnelles et l'industrie– Elle est le membre
américain de l'lS0 (lnternational Standards
Organisation).
API (Application Program Interface) –
Ensemble d'appels logiciels et de routines
formalisés qui peuvent être utilisés par une
application en vue d'accéder à des services de
réseau sous–jacents.
APPC
(Advanced
Peer–to–Peer
Communications) – Architecture de réseau
®
définie par IBM , spécifiée comme présentant des
fondions d'interaction de programmes de haut
niveau sur une base d'égal à égal.
Appel sélectif – Technique de communication qui
détermine quand un terminal est prêt à envoyer
des
données.
L'ordinateur
interroge
continuellement tous les terminaux connectés tour
à tour. Le terminal ne répond à celle interrogation
que s'il a des données à envoyer.
®
AppleTalk – Standard de réseau informatique
®
propre à Apple Computer pour la connexion
®
d'ordinateurs
Macintosh
et
d'autres
périphériques, en particulier les imprimantes
®
Laserwriter , ce réseau fonctionne à 230 kbits/s.
Arbre – Topologie de réseau local qui ne
reconnait qu'une seule roule entre deux nœuds du
réseau. Le schéma ressemble à un arbre ou à la
lettre T.
Architecture de réseau – Ensemble de principes
conceptuels, comprenant l'organisation des
fondions et la description des formats de données
et des procédures; base pour la conception et la
mise en œuvre d'un réseau (ISO).
ARP (Address Resolution Protocol) –
Processus
TCP/IP
(Transmission
Control
Protocol/lnternet Protocol) qui fait correspondre
les adresses IP et les adresses Ethernet; requis
par TCP/IP pour utiliser Ethernet.
ARPA (Advanced Research Projects Agency) –
Organisme qui a développé le premier grand
réseau à commutation de paquets; opère dans le
cadre du Département américain de la Défense.
ARQ (Automatic Request for Retransmission)
– Fonction de communication dans laquelle le
récepteur demande à l'émetteur de renvoyer un
bloc ou une trame, généralement en raison
d'erreurs détectées par le récepteur.
ASCII
(American
Standard
Code
for
Information Interchange) – Code binaire
composé de 7 bits de données plus 1 bit pour la
parité ou les symboles spéciaux; code défini par
l'ANSI pour assurer la compatibilité entre les
services de données.
Asynchrone – Mode de transmission dans lequel
les intervalles entre les caractères transmis
peuvent être de longueur irrégulière. La
transmission est contrôlée par des bits "start" et
"stop" au début et à la fin de chaque caractère.
Voir Synchrone.
Bande passante – Plage de fréquences
disponibles pour la transmission de signaux;
différence entre la fréquence la plus élevée et la
fréquence la plus basse d'une bande, mesurée en
Hertz.
Baud – Unité de débit de transmission des
signaux. Le débit en bauds est le nombre de
changements de ligne (en fréquence, amplitude,
etc.) ou d’événements par seconde. A de faibles
débits, chaque événement représente uniquement
l'état d'un bit et le débit en bauds est donc
équivalent au nombre de bps (bits par seconde).
A mesure que le débit augmente, chaque
événement représente plus qu'un bit, si bien que
le débit en bauds n'est pas tout à fait équivalent
au nombre de bits/s.
Baudot – Code de transmission de données dans
lequel un caractère est représenté par cinq bits.
L'inversion lettres/chiffres permet de représenter
64 caractères alphanumériques. Le code Baudot
est utilisé dans de nombreux systèmes de
téléscripteurs, avec l'addition d'un bit de début et
1,5 bit d'arrêt.
®
Bell 212 – Spécification AT&T
d'une
transmission de données full–duplex, asynchrone
ou synchrone, à1200 bits/s, pour le réseau
téléphonique public.
Bell 43401 – Publication AT&T qui définit les
exigences pour la transmission de données sur
les circuits métalliques privés de longueur limitée
fournis par l'entreprise de téléphone.
Bisynchrone
(BSC)
–
Protocole
de
communication IBM orienté octet ou caractère qui
est devenu un standard. Ce protocole utilise un
ensemble défini de caractères de contrôle pour la
transmission synchronisée de données en code
137
binaire entre les stations d'un système de
communication de données.
Bit (Binary Digit) – La plus petite unité
d'information dans un système binaire; un étal "1"
ou "0".
Bit de parité – Bit qui est mis à "0" ou à "1" dans
un caractère de sorte que le nombre total de bits
"1" dans le champ de données soit pair ou impair,
selon la convention choisie.
Bit Error Rate/Block Error Rate Testing
(BERT/BLERT) – Technique de détection
d'erreurs qui compare une structure de données
reçue avec une structure de données transmise
connue pour déterminer la qualité de la ligne de
transmission.
Blindage – Couverture protectrice d'un câble qui
élimine les interférences électromagnétiques et
radioélectriques.
Boucle de courant – Méthode d'interconnexion
de terminaux et de transmission de signaux; un
état actif ("1" binaire) est représenté par la
présence de courant sur la ligne; un espace ("0"
binaire) est représenté par l'absence de courant.
Buffer – Unité de stockage temporaire utilisée
pour compenser une différence de débit et de flux
de
données
entre
deux
équipements
(généralement un ordinateur et une imprimante) ;
on dit également spooler.
Câblage croisé – Configuration de câblage qui
permet à deux DTE ou à deux DCE de
communiquer entre eux.
CCITT (Comité Consultatif International
Télégraphique et Téléphonique) – Association
internationale qui définit des standards de
communication au niveau mondial (par exemple
V.21, V.22 et X.25). Le CCITT a été remplacé par
l'UIT.
Central – Bâtiment dans lequel les opérateurs
publics font aboutir les circuits utilisateurs.
Chaîne – Processus composé d'une série de
"threads".
Cheval de Troie – Programme ou données qui
semblent inoffensives lorsqu'elles sont chargées
dans un système ou un réseau mais qui facilitent
ensuite une attaque par un pirate ou un virus.
Codage Manchester – Technique de codage
numérique spécifiée pour le standard de réseau
en bande de base Ethernet IEEE. Chaque période
de
bit
est
divisée
en
deux
moitiés
complémentaires; une transition (changement de
tension) négatif–positif au milieu de la période
désigne un "1" binaire, tandis qu'une transition
positif–négatif représente un "0". Cette technique
de codage permet également à l'équipement
récepteur de récupérer l'horloge dans le train de
données entrant (self–clocking).
Conditionnement – Ajout d'équipements à une
ligne louée de qualité voix pour que celle–ci
réponde aux spécifications requises pour une
transmission de données.
Contention – Fonction fournie par le réseau
commuté ou par un auto–commutateur privé pour
permettre à plusieurs terminaux de se partager un
138
nombre restreint de ports d'ordinateurs selon le
principe du "premier arrivé, premier servi".
Contrôle de flux – Procédure organisant le flux
des données entre deux équipements. Elle évite
la perte de données lorsque le buffer d'un
équipement parvient à saturation.
Contrôle de parité – Ajout de bits de contrôle
pour former un bloc de transmission dans lequel
le nombre total de1 est toujours pair (parité paire)
ou impair (parité impaire) ; cette technique permet
de détecter des erreurs de transmission.
Couche de liaison – Couche 2 du modèle de
référence OSI, également appelée couche de
liaison de données.
Couche réseau – Couche 3 du modèle OSI j
entité de réseau logique qui sert la couche de
transport; cette couche doit garantir le routage et
la transmission sur le réseau des données qu'elle
reçoit de la couche de transport.
Couche d'application – La plus haute couche
dans la structure en sept couches du modèle
OSI ; elle contient tous les programmes
utilisateurs ou d'application; dans l'architecture
®
SNA d'lBM SNA, c'est la couche de l'utilisateur
final.
CRC (Cyclic Redundancy Check) – Mécanisme
élémentaire de contrôle d'erreurs pour les
transmissions de , données au niveau d'une
liaison; fonction caractéristique des protocoles de
transmission de données (généralement) orientés
bit. L'intégrité des données d'une trame ou d'un
paquet reçu est vérifiée selon un algorithme
polynomial basé sur le contenu de la trame, puis
est comparée au résultat de la même opération
effectuée par l'émetteur, résultat qui est inclus
dans un champ (généralement de 16 bits) annexé
à la trame.
Croisé – Se dit d'un conducteur qui se connecte à
un numéro de broche différent à chaque extrémité
du câble.
CSMA/CD
(Carrier
Sense
Multiple
Access/Collision Detection) – Méthode d'accès
en réseau local dans laquelle la contention entre
deux ou plusieurs stations est résolue par la
détection de collision : lorsque deux stations
transmettent en même temps, elles s'arrêtent
toutes deux et signalent qu'une collision s'est
produite. Chacune réessaie ensuite après avoir
attendu pendant un laps de temps prédéterminé,
généralemenl de quelques micro–secondes.
CSU (Channel Service Unit) – DCE numérique
utilisé pour terminer des circuits numériques
(comme des lignes DDS ou T1) chez le client.
DCE (Data Communications Equipment) –
Equipement fournissant les fonctions requises
pour établir, maintenir et mettre fin à une
connexion de transmission de données, par
exemple un modem.
DDD (Direct Distance Dialing) – Service
téléphonique en Amérique du Nord qui permet à
un abonné d'appeler d'autres abonnés en dehors
de la zone d'appel locale sans l'aide d'un
opérateur.
®
DDS (Dataphone Digital Service) – Service de
communication AT&T dans lequel des données
sont transmises sous une forme numérique plutôt
qu'analogique.
DSR (Data Set Ready) – Signal de contrôle de
l'interface modem RS–232 qui indique que le
terminal est prêt à transmettre.
DSU (Digital Service Unit) – Interface entre
l'équipement terminal de données (DTE) d'un
utilisateur et un service de données numériques,
généralemenl par le biais d'un CSU.
DTE (Data Terminal Equipment) – Equipement
opérant comme source de données et/ou
collecteur de données.
DTMF (Dual Tone Multiple Frequency) –
Fréquence de signalisation audio sur les appareils
téléphoniques à touches.
EBCDIC (Extended Binary Coded Decimal
Interchange Code) – Code de caractères 8 bits
®
utilisé dans les équipements IBM . Ce code
permet 256 structures binaires différentes.
EIA (Electronic Industries Association) –
Organisme
de
standardisation
américain
spécialisé dans les caractéristiques électriques et
fonctionnelles des équipements d'interface.
EIA.485 – Standard recommandé par l'EIA et
spécifiant les caractéristiques électriques des
générateurs et des récepteurs dans les systèmes
numériques multipoints.
Eliminateur de modems – Equipement utilisé
pour connecter un terminal local et un port
d'ordinateur en lieu et place des deux modems qui
seraient normalement requis ; cet équipement
permet des connexions de données et de contrôle
de DTE à DTE qui sont difficiles à réaliser avec
des câbles et des connecteurs standards.
Emulation – Imitation totale ou partielle d'un
système informatique par une combinaison de
matériels et logiciels, permettant à des systèmes
incompatibles de fonctionner ensemble.
EPROM (Erasable Programmable Read Only
Memory) – PROM non volatile qui peut être
effacée et réutilisée par une exposition à une
source intense de lumière ultraviolette.
Espace – Absence de signal. Dans les
communications télégraphiques, un espace
représente un état ouvert ou l'absence de courant.
Cet état est équivalent à un "0" binaire.
Etablissement de liaison – Echange de signaux
prédéterminés entre deux équipements pour
établir une connexion. Cet échange fait
généralement
partie
d'un
protocole
de
communication.
Faux modem – Equipement qui connecte
directement deux DTE en émulant la connexion
physique d'un DCE.
Filtrage électromagnétique et radioélectrique
(EMI/RFI) – Protection contre le "bruit de fond" qui
pourrait altérer ou détruire les données
transmises.
Full Duplex (FDX) – Transmission simultanée,
indépendante, sur deux voies dans les deux
directions.
Half Duplex (HDX) – Transmission dans un sens
ou dans l'autre, mais pas simultanément.
HDLC (High–Level Data Link Control) –
Protocole
de
communication
standard
international défini par l'ISO.
Horloge – Terme désignant la ou les sources des
signaux de synchronisation utilisés dans une
transmission synchrone. Plus généralement: la ou
les sources de synchronisation d'événements
électroniques.
IEEE (Institute of Electrical and Electronic
Engineers)
–
Organisme
professionnel
international qui émet ses propres standards et
est membre de l'ANSI et de l'ISO.
Intégrité des données – Mesure de performance
basée sur le taux d'erreurs non détectées.
Interface – Limite commune définie par des
caractéristiques
physiques
communes
d'interconnexion, des caractéristiques de signal et
la signification des signaux échangés.
Inversion de ligne – Inversion du sens de
transmission lorsque la transmission utilise un
circuit half–duplex.
ISO – International Standards Organisation.
Large bande – Canal de communication offrant
une plus large bande passante qu'une ligne de
qualité voix et potentiellement capable d'offrir des
débits de transmission plus élevés.
LED (Light Emitting Diode) – Source lumineuse
à semi–conducteurs qui convertit les signaux
électriques en une lumière visible ou en des
rayonnements infrarouges invisibles.
Liaison composite – Ligne ou circuit reliant une
paire de multiplexeurs ou de concentrateurs ;
circuit transportant des données multiplexées.
Ligne chargée – Une ligne téléphonique équipée
de bobines de charge pour ajouter de l'inductance
en vue de minimiser la distorsion d'amplitude.
Ligne commutée – Liaison de communication
dans laquelle le chemin physique peut varier à
chaque utilisation, comme dans le réseau
téléphonique public.
Ligne de jonction – Circuit téléphonique dédié
reliant deux centres de commutation, centraux ou
concentrateurs de données. Se dit aussi du câble
principal d'un réseau.
Ligne de qualité voix – Canal capable de
transporter les signaux aux fréquences vocales.
Ligne locale/Boucle locale – Canal reliant
l'équipement de l'abonné à l'équipement de
terminaison de ligne dans le central. Il s'agit
généralement d'un circuit métallique à 2 ou 4 fils).
Ligne louée – Ligne téléphonique réservée à
l'usage exclusif du locataire, sans dispositifs de
commutation entre centraux. On dit également
ligne spécialisée ou privée.
Ligne multipoint – Ligne ou circuit de
communication unique interconnectant plusieurs
stations; celle ligne exige généralement un
mécanisme d'appel sélectif pour accéder à
chaque terminal connecté au moyen d'une
adresse unique.
139
LLC (Logical Link Control) – Protocole
développé par le comité IEEE 802 pour le contrôle
de transmission au niveau de la liaison de
données; sous–couche supérieure de la couche 2
IEEE (OSI) (complément du protocole MAC);
standard IEEE 802.2; inclut l'adressage "end–
syslem" et le contrôle d'erreurs.
LU 6.2 – Dans SNA, ensemble de protocoles
assurant une communication d'égal à égal entre
les applications.
MAC (Media Access Control) – Protocole de
contrôle d'accès spécifique au support, défini
dans le cadre des spécifications IEEE 802; ce
protocole comporte actuellement des variantes
pour Token Ring, bus à jeton et CSMA/CD; sous–
couche inférieure de la couche de liaison IEEE
(OSI), complément du protocole LLC (Logical Link
Conlrol).
Mainframe – Gros système informatique pouvant
englober un vaste ensemble de logiciels et
plusieurs périphériques.
MAP (Manufactvring Automation Protocol) –
Ensemble de protocoles de réseau créés par
®
General Molors , MRP suit les sept couches du
modèle OSI.
Mémoire morte (ROM) – Puces de mémoire
contenant des données ou du logiciel.
Mémoire
vive
(RAM)
–
Mémoire
de
lecture/écriture volatile à base de semi–
conducteurs. Les données stockées sont perdues
en cas de coupure de l’alimentation en courant.
Microprogramme – Programme informatique ou
logiciel stocké en permanence en PROM ou en
ROM, ou de manière semi–permanente en
EPROM.
Modem
(Modulateur/Démodulateur)
–
Equipement utilisé pour convertir les données
numériques série reçues d'un terminal émetteur
en un signal analogique à transmettre sur une
ligne téléphonique, ou pour reconvertir le signal
analogique transmis en données numériques
série pour le terminal récepteur.
Modulation de phase – Une des trois façons de
modifier un signal sinusoïdal pour lui faire "parler"
des informations. La phase de l'onde sinusoïdale
ou "porteuse" est modifiée selon les informations
à transmettre.
Multiplexage statistique – Technique de
multiplexage dans laquelle la bande passante est
allouée dynamiquement en fonction des besoins.
Multiplexage temporel (TOM) – Transmission de
plusieurs voies sur une seule ligne de
transmission par la connexion alternée des
terminaux à intervalles réguliers; les bits (Bit
TOM) ou les caractères (Character TOM) des
différents terminaux sont donc entrelacés dans le
même train binaire.
Multiplexeur de fréquence (FDM) – Equipement
qui subdivise la plage de fréquences de
transmission disponibles en plus petites unités,
utilisées chacune pour un canal séparé.
Multiplexeur – Equipement qui divise un moyen
de transmission en deux ou plusieurs sous–
140
canaux, soit en fractionnant la bande de
fréquences en bandes plus étroites (multiplexage
de fréquence), soit en allouant un canal commun
à plusieurs équipements différents tour à tour
(multiplexage temporel).
Nœud – Point d'interconnexion sur un réseau.
Normalement, point auquel un certain nombre de
terminaux ou de circuits en cascade se
connectent au réseau.
NRZ (Non Return to Zero) – Mode de
transmission binaire dans lequel il n'y a pas de
retour à l'état neutre après l'envoi de chaque bit.
Numérique – Mode de transmission dans lequel
les données sont codées sous la forme d'un 1 ou
0 binaire ; voir Analogique.
Octet – Forme la plus répandue du "multiplet"
(unité d'information généralement plus courte
qu'un "mot" d'ordinateur). Un octet se compose de
huit bits.
Opérateur public – Entreprise privée fournissant
des services de communication au public.
Ordinateur frontal – Ordinateur conçu jour le
contrôle des communications avec un ordinateur
central (mainframe).
PAO (Packet Assembler Disassembler) –
Interface entre un terminal ou ordinateur et un
réseau à commutation de paquets.
Paquet – Groupe de bits (comprenant des
signaux de données et de contrôle d'appel)
transmis à la fois sur un réseau à commutation de
paquets. Un paquet est généralement plus petit
qu'un bloc de transmission.
Parallèle – Mode de transmission dans lequel un
certain nombre de bits sont émis simultanément
sur des lignes séparées (par exemple, 8 bits sur 8
lignes). Cette transmission est généralement
unidirectionnelle.
Parité paire – Méthode de vérification de
données pour terminal "non Intelligent" dans
laquelle chaque caractère doit avoir un nombre
pair de bits à l'état "1".
Partage de temps (Time Sharing) – Mode de
fonctionnement des ordinateurs qui permet à
plusieurs terminaux interactifs d'utiliser un même
ordinateur.
Les
terminaux
sont
servis
séquentiellement, mais le débit élevé de
l'ordinateur donne l'impression que tous les
terminaux sont servis simultanément.
Point à point (liaison) – Connexion entre deux et
seulement deux équipements.
PROM (Programmable Read Only Memory) –
Mémoire non volatile où des données ou
programmes sont stockés en permanence. Voir
Volatile.
Protocole – Ensemble formel de conventions
régissant le formatage et la synchronisation
relative de l'échange de messages entre deux
systèmes qui communiquent.
Pseudo modem – Equipement DCE qui amplifie
un signal de données pour le transmettre sur des
distances de câble supérieures à la limite de 15
mètres du RS–232, et jusqu'à plusieurs
kilomètres.
Rebouclage – Type de diagnostic dans lequel le
signal émis est renvoyé à l'émetteur après avoir
traversé tout ou partie de la liaison ou du réseau
de communication. Le rebouclage permet de
comparer le signal renvoyé avec le signal émis.
Réseau
local
(LAN)
–
Système
de
communication de données limité à une zone
géographique restreinte (jusqu'à 10 kilomètres
environ) et utilisant des débits moyens élevés (de
100 kbits/s à 50 Mbits/s). La zone servie peut être
un simple bâtiment, un complexe de bâtiments ou
un "campus". Le réseau utilise une forme de
commutation et n'emploie pas les circuits des
opérateurs publics, mais peut contenir des
passerelles ou des ponts vers d'autres réseaux
publics ou privés.
Réseau public commuté (PSTN) – Tout système
de communication à commutation, Télex, TWX ou
réseaux téléphoniques publics offrant à ses
clients un service de commutation de circuit.
Réseau – Groupe de nœuds interconnectés;
ensemble de points, nœuds ou stations connectés
par des canaux de communication; ensemble de
l'équipement par lequel les connexions entre les
stations de données sont réalisées.
RS–232 – Standard d'interface FIA entre DTE et
DCE, utilisant un échange de données binaires
série. C'est l'interface la plus courante en
informatique.
RS–422, 423 – Standard d'interface FIA qui porte
les vitesses de transmission et les distances au–
delà des spécifications RS–232/V.24. RS–422 est
un système à tension équilibrée offrant une
grande immunité au bruit; le RS–423 est la
version non équilibrée.
RS–449 – Interface FIA à usage général, 37
broches et 9 broches, pour DCE et DCE, reposant
sur un échange de données binaires série.
RS–485 – Interface équilibrée similaire au RS–
422 mais utilisant des circuits à trois états pour les
applications multipoints.
SDLC (Synchronous Data Link Control) –
®
Protocole standard IBM , qui remplace le
bisynchrone (BSC).
Série – Mode de transmission le plus courant: les
bits d'information sont envoyés séquentiellement
sur un seul canal de données.
Signal de caractère – Présence d'un signal.
Dans une communication télégraphique, un signal
de caractère représente l'état fermé, ou le
passage du courant. Cet état est équivalent à un
"1" binaire.
STX (Start of Text) – Caractère de contrôle utilisé
pour indiquer le début d'un message; il suit
immédiatement l'en–tête dans les blocs de
transmission.
Surtension – Une tension excessive fournie par
le distributeur d'électricité, pouvant durer plusieurs
secondes. Une surtension importante peut
endommager les équipements électroniques.
Synchrone – Mode de transmission dans lequel
les bits de données sont envoyés à un débit fixe,
l'émetteur et le récepteur étant synchronisés. La
transmission synchronisée élimine la nécessité de
bits de début et d'arrêt. Voir Asynchrone.
Temps de réponse – (1) Temps écoulé entre la
fin d'un message et le début de la réponse; ce
temps comprend les délais des terminaux et du
réseau; (2) rapidité avec laquelle un para–
surtenseur répond aux surtensions; également
appelé "temps d’écrêtage".
Tension d’écrêtage – Niveau de tension
prédéfini auquel un circuit d’écrêtage (nivellement
d'amplitude) s'active.
Thread – (1) Instruction ou série d'instructions
constituant une opération ou un processus
complet qui ne peut pas être interrompu. (2) Série
de messages liés dans une conversation en ligne.
Topologie de réseau – Relation physique et
logique entre les nœuds d'un réseau; schéma
d'organisation des liaisons et des nœuds d'un
réseau; les réseaux utilisent généralement une
topologie en étoile, en anneau, en arbre ou en
bus, ou une combinaison de ces topologies.
Transitoire – Changement de tension brusque et
de courte durée, par exemple, une brève
impulsion provoquée par l'actionnement d'un
commutateur.
UIT
(Union
Internationale
des
Télécommunications) – Organisme qui a
remplacé le CCITT.
V.24 – Recommandation d'interface CCITT (UIT)
qui définit des circuits d'échange; le V.24 est
similaire et compatible avec RS–232.
V.35 – Standard CCITT (UIT) régissant la
"transmission de données à 48 kbits/s sur circuits
60–108 kHz".
Volatile – Se dit d'un support de stockage qui
perd toutes ses données lorsque le courant est
coupé. Voir PROM.
X–ON/X–OFF (Transmitter On/Transmitter Off)
– Caractères de contrôle utilisés pour le contrôle
de flux, invitant un terminal à commencer (X–ON)
et à terminer une transmission (X–OFF).
X.21 – Standard CCITT (UIT) régissant l'interface
entre un DTE et un DCE pour des transmissions
synchrones sur services numériques.
X.25 PAD (Voir PAD) – Appareil permettant la
communication entre des unités non X.25 et les
équipements d'un réseau X.25.
X.25 – Standard CCITT (UIT) régissant l'interface
entre un DTE et un DCE pour les terminaux
fonctionnant en mode paquets sur les services
numériques.
141
Table des Matières
Chapitre 1 : Présentation _________________________________________________________ 3
1.1) Brève histoire de l’informatique ____________________________________________________ 3
1.1.1) Evolution du paysage informatique________________________________________________________ 3
1.1.2) Evolution des besoins __________________________________________________________________ 4
1.2) Communications des données ______________________________________________________ 4
1.2.1) Liaisons analogiques / numériques ________________________________________________________ 4
1.2.2) Liaisons point à point / bus ______________________________________________________________ 4
1.2.3) Environnement de communication ________________________________________________________ 5
1.3) Fonctions d’un réseau _____________________________________________________________ 5
1.3.1) Communication _______________________________________________________________________ 5
1.3.2) Utilisation de ressources communes _______________________________________________________ 6
1.4) Caractéristiques des réseaux _______________________________________________________ 6
1.4.1) Taille et vitesse des réseaux _____________________________________________________________ 6
1.4.2) Adressage ___________________________________________________________________________ 7
1.4.3) Caractéristiques techniques ______________________________________________________________ 7
1.5) Objectif du cours _________________________________________________________________ 8
Chapitre 2 : Modèles et normalisation _______________________________________________ 9
2.1) Principe d’un modèle en couches____________________________________________________ 9
2.1.1) Définition ___________________________________________________________________________ 9
2.1.2) Modularité ___________________________________________________________________________ 9
2.1.3) Communications verticales ______________________________________________________________ 9
2.1.4) Communications horizontales ___________________________________________________________ 10
2.1.5) Schéma global _______________________________________________________________________ 10
2.1.6) Exemple d’une modélisation en couche : le transport du courrier _______________________________ 10
2.2) Le modèle O.S.I. ________________________________________________________________ 11
2.2.1) Présentation du modèle ________________________________________________________________ 11
2.3) « Modèle » I.E.E.E. du comité 802__________________________________________________ 12
2.3.1) Présentation du modèle ________________________________________________________________ 12
2.3.2) Normalisation de l’I.E.E.E. _____________________________________________________________ 12
2.4) Services et protocoles ____________________________________________________________ 13
2.4.1) Définitions__________________________________________________________________________ 13
2.4.2) Fonctionnement______________________________________________________________________ 13
2.4.3) Action sur les données : encapsulation ____________________________________________________ 17
2.5) Normes et Organismes ___________________________________________________________ 17
2.5.1) Organismes de normalisation ___________________________________________________________ 17
2.5.2) Les organismes de certification __________________________________________________________ 18
2.5.3) Les principales normes ________________________________________________________________ 18
Chapitre 3 : Constitution physique des réseaux locaux : architecture, câblage______________ 21
3.1) Topologie, architecture ___________________________________________________________ 21
3.1.1) Différents types de topologie ___________________________________________________________ 21
3.1.2) Architecture physique et logique_________________________________________________________ 22
3.2) Caractéristiques des réseaux ______________________________________________________ 23
3.2.1) Caractéristiques ______________________________________________________________________ 23
3.2.2) Contraintes de câblage_________________________________________________________________ 23
3.3) Un médium, des Média ___________________________________________________________ 24
3.3.1) Les câbles coaxiaux___________________________________________________________________ 24
3.3.2) Les paires torsadées___________________________________________________________________ 25
3.3.3) Les fibres optiques ___________________________________________________________________ 26
3.3.4) Autres supports possibles ______________________________________________________________ 27
143
3.3.5) Utilisation __________________________________________________________________________ 28
3.4) Eléments passifs_________________________________________________________________ 28
3.4.1) Eléments d’interconnexion _____________________________________________________________ 28
3.4.2) Eléments de terminaison _______________________________________________________________ 29
3.4.3) Connexions optiques __________________________________________________________________ 30
3.5) Les éléments actifs_______________________________________________________________ 30
3.5.1) Carte interface réseau _________________________________________________________________ 30
3.5.2) Transceiver ou MAU (Medium Attachment Unit) ___________________________________________ 30
3.5.3) Concentrateur ou HUB ________________________________________________________________ 31
3.5.4) Commutateur ou Switch _______________________________________________________________ 31
3.5.5) Répéteur ___________________________________________________________________________ 31
3.5.6) Pont ou Bridge_______________________________________________________________________ 32
3.5.7) Routeur ____________________________________________________________________________ 32
3.5.8) Passerelle ou Gateway_________________________________________________________________ 32
3.5.9) Modem ____________________________________________________________________________ 33
3.6) Exemple de câblage ______________________________________________________________ 33
3.7) Les logiciels de gestion de réseaux __________________________________________________ 34
Chapitre 4 : Couche Physique ____________________________________________________ 35
4.1) Fonctions de la couche physique ___________________________________________________ 35
4.1.1) Services ____________________________________________________________________________ 35
4.1.2) Modules fonctionnels _________________________________________________________________ 35
4.1.3) Schéma général ______________________________________________________________________ 35
4.2) Caractéristiques, définitions_______________________________________________________ 37
4.2.1) Source, canal ________________________________________________________________________ 37
4.2.2) Débits _____________________________________________________________________________ 37
4.2.3) Affaiblissement du signal ______________________________________________________________ 37
4.2.4) Rapport Signal/Bruit, taux d’erreur _______________________________________________________ 38
4.2.5) Débit maximum______________________________________________________________________ 39
4.2.6) Liaison synchrone, asynchrone __________________________________________________________ 40
4.2.7) Liaison monodirectionnelle / bi-directionnelle ______________________________________________ 40
4.3) Codage physique ________________________________________________________________ 40
4.3.1) Les codages en bande de base ___________________________________________________________ 40
4.3.2) Codage physique par modulation ________________________________________________________ 46
4.4) Codage logique _________________________________________________________________ 49
4.4.1) Codage logique à longueur variable ______________________________________________________ 49
4.4.2) Codage logique à longueur fixe__________________________________________________________ 49
4.5) Application_____________________________________________________________________ 50
4.5.1) Ethernet ____________________________________________________________________________ 50
4.5.2) Réseau MAP (Token Bus : 802.4)________________________________________________________ 50
4.5.3) TokenRing__________________________________________________________________________ 50
4.5.4) FDDI ______________________________________________________________________________ 51
4.5.5) Réseau Bitbus _______________________________________________________________________ 51
4.5.6) Modem ____________________________________________________________________________ 51
Chapitre 5 : Sous-couche d'Accès au Médium (MAC) _________________________________ 53
5.1) Fonctions et services de la sous-couche MAC_________________________________________ 53
5.1.1) Fonctions ___________________________________________________________________________ 53
5.1.2) Services de la couche MAC ____________________________________________________________ 54
5.2) Adressage physique______________________________________________________________ 54
5.3) Contrôle d'intégrité, détection des erreurs de transmission _____________________________ 55
5.3.1) Taux d'erreur, détection, correction_______________________________________________________ 55
5.3.2) Généralités sur les codes _______________________________________________________________ 56
5.3.3) Parité simple ________________________________________________________________________ 58
5.3.4) Parité transversale et longitudinale _______________________________________________________ 58
5.3.5) Checksum __________________________________________________________________________ 58
144
5.3.6) Code cyclique (CRC : Cyclical Redundancy Check) _________________________________________ 59
5.3.7) Méthodes utilisées dans les réseaux ______________________________________________________ 60
5.4) Contrôle de l'accès, partage du canal _______________________________________________ 60
5.4.1) Classification________________________________________________________________________ 60
5.4.2) Temps de communication ______________________________________________________________ 62
5.5) Normes ________________________________________________________________________ 65
5.5.1) Norme 802.3 ________________________________________________________________________ 65
5.5.2) Norme 802.4 ________________________________________________________________________ 68
5.5.3) Norme 802.5 ________________________________________________________________________ 72
5.5.4) Norme ISO9314 : F.D.D.I. _____________________________________________________________ 76
5.5.5) Réseau DQDB (IEEE 802.6)____________________________________________________________ 80
5.5.6) Réseau ATM et le relais de cellules ______________________________________________________ 81
Chapitre 6 : Sous-couche Liaison Logique __________________________________________ 83
6.1) Généralités _____________________________________________________________________ 83
6.2) Fonctions ou primitives fournies par la couche LLC___________________________________ 84
6.2.1) Protocole de type 1 ___________________________________________________________________ 84
6.2.2) Protocole de type 2 ___________________________________________________________________ 85
6.2.3) Protocole de type 3 ___________________________________________________________________ 88
6.3) Format des L.PDUs______________________________________________________________ 89
Chapitre 7 : Couche Réseau ______________________________________________________ 91
7.1) Généralités. ____________________________________________________________________ 91
7.1.1) Fonctions ___________________________________________________________________________ 91
7.1.2) Services ____________________________________________________________________________ 91
7.2) Les ponts ______________________________________________________________________ 92
7.2.1) Ponts transparents ____________________________________________________________________ 92
7.2.2) Les ponts éloignés ____________________________________________________________________ 96
7.2.3) Pont à routage par la source ____________________________________________________________ 97
7.2.4) Performances________________________________________________________________________ 97
7.3) Adresses de couche réseau ________________________________________________________ 98
7.3.1) Adresses hiérarchiques ________________________________________________________________ 98
7.3.2) Adresses ISO ________________________________________________________________________ 98
7.3.3) Adresses IP (Internet Protocol) __________________________________________________________ 99
7.3.4) Adresses IPv6 ou IPng (New Generation)_________________________________________________ 100
7.3.5) Adresses IPX _______________________________________________________________________ 101
7.3.6) Résolution d’adresse _________________________________________________________________ 101
7.4) Routage en mode sans connexion__________________________________________________ 102
7.4.1) Présentation ________________________________________________________________________ 102
7.4.2) Prise de contact avec les voisins ________________________________________________________ 104
7.4.3) Algorithmes de routage _______________________________________________________________ 107
Chapitre 8 : Couche Transport ___________________________________________________ 111
8.1) Présentation ___________________________________________________________________ 111
8.2) Caractéristiques________________________________________________________________ 111
8.2.1) Transport de bout en bout _____________________________________________________________ 111
8.2.2) Transparence _______________________________________________________________________ 111
8.2.3) Sélection de la qualité de service________________________________________________________ 112
8.2.4) Adressage _________________________________________________________________________ 112
8.2.5) Classes de services normalisées ________________________________________________________ 112
8.2.6) Exemples de services et de protocoles ___________________________________________________ 114
8.3) Service de transport d’Internet ___________________________________________________ 116
8.3.1) Présentation ________________________________________________________________________ 116
8.3.2) Protocole de Datagramme utilisateur (UDP)_______________________________________________ 116
8.3.3) Transport fiable en mode connecté TCP __________________________________________________ 118
8.4) Format du paquet IP____________________________________________________________ 123
145
8.5) Format du paquet IPX __________________________________________________________ 124
8.6) Les sockets UNIX ______________________________________________________________ 124
Chapitre 9 : Couche Application _________________________________________________ 127
9.1) Composition ___________________________________________________________________ 127
9.2) Application TCP/IP_____________________________________________________________ 127
9.2.1) Interface TCP/IP ____________________________________________________________________ 127
9.2.2) Commandes pour l’utilisateur final ______________________________________________________ 128
9.2.3) Commandes pour l'utilisateur privilégié (non exhaustives)____________________________________ 128
9.2.4) Démons ___________________________________________________________________________ 129
9.2.5) Fichiers de configuration pour les démons TCP/IP__________________________________________ 129
9.2.6) Fichiers de commande (exécutable) _____________________________________________________ 129
9.3) Application NFS _______________________________________________________________ 129
9.3.1) Présentation ________________________________________________________________________ 129
9.3.2) Fonctionnement_____________________________________________________________________ 130
9.3.3) Démons et autres commandes __________________________________________________________ 131
9.4) Application NIS ________________________________________________________________ 131
9.4.1) Présentation ________________________________________________________________________ 131
9.4.2) Constitution ________________________________________________________________________ 131
9.4.3) Démons et commandes _______________________________________________________________ 132
9.5) Application DNS _______________________________________________________________ 132
9.6) Application Mail _______________________________________________________________ 133
9.6.1) Présentation ________________________________________________________________________ 133
9.6.2) Fonctionnement_____________________________________________________________________ 133
Chapitre 10 : Bibliographie _____________________________________________________ 135
10.1) Organismes de normalisation ou organismes officiels ________________________________ 135
10.1.1) World Wide Web Consortium_________________________________________________________ 135
10.1.2) L’Internet Society NIC ______________________________________________________________ 135
10.1.3) ITU (International Telecommunication Union / CCITT _____________________________________ 135
10.1.4) ISO (International Standard Organisation) _______________________________________________ 135
10.1.5) Institut of Electrical and Electronics Engineers____________________________________________ 135
10.1.6) ATM Forum ______________________________________________________________________ 135
10.2) Autres sites généraux __________________________________________________________ 135
10.2.1) INRIA (Institut National Recherche en Informatique et Automatique __________________________ 135
10.3) Entreprises spécialisées dans les domaines Télécom-Réseaux _________________________ 136
10.4) Entreprises de fabrication de produits réseaux _____________________________________ 136
10.5) Entreprises de commercialisation de produits réseaux _______________________________ 136
10.6) Cours ou sites à vocation pédagogique ____________________________________________ 136
10.7) Autres _______________________________________________________________________ 136
Chapitre 11 : Glossaire _________________________________________________________ 137
146
Téléchargement