les réseaux token-ring - freeyofr.free.fr/poryo858/reseau/partie3a.pdf · les bits a et c sont...
TRANSCRIPT
1A. Giacometti - IUP GEII de Blois
Les réseaux Token-ring
• Les origines½ Développés par IBM
– En 1981 : premier prototype
– En 1985 : ratification norme IEEE 802.5 à 4 Mbps
– En 1989 : ratification fonctionnement à 16 Mbps
• Les évolutions½ Vers le haut débit
– En 1990 : apparition des réseaux Dedicated Token Ring (DTR)» Transmission full-duplex entre une station et un commutateur Token-Ring
– En 1998 : apparition des réseaux High Speed Token-Ring» Version à 100 Mbps des réseaux DTR
½ Concurrence très forte avec Ethernet– Les interfaces et les équipements sont comparativement trop chers
– Token-ring apparaît de plus en plus comme une solution du passé
2A. Giacometti - IUP GEII de Blois
Architecture protocolaire
• Couches OSI et normalisation IEEE 802.5½ Définition des couches Physique et Liaison
Couche Physique
CoucheLiaison
Sous-couche LLC(Logical Link Control)
Sous-couche MAC(Medium Access Control)
IEEE 802.2
IEEE 802.5
« Token-Ring »
Couche Réseau Paquet
LLC Paquet
LLC PaquetMAC MAC
3A. Giacometti - IUP GEII de Blois
Organisation logique• En anneau
½ Quand une trame est émise, elle passe de station en stationavant d’arriver à destination
Station A
Station C
Station D Station B
Une trame émise par A à destination de Dpasse successivement par les stations B et C
(par leurs cartes réseaux) avant d’arriver en D
4A. Giacometti - IUP GEII de Blois
Organisation physique
• En étoile pour les réseaux les plus simples½ Chaque station est reliée au port d’une MAU (Multiple
Attachement Unit) ou Token Ring Hub
Port Ring OUT
MAU
Station D Station C
Station A Station B
Port Ring IN
Port Lobe
5A. Giacometti - IUP GEII de Blois
Organisation physique
• En anneau d’étoiles dans les cas plus complexe½ Interconnexion en anneau des MAU via leurs ports Ring-In et Ring-Out
½ Avec au plus 250 stations au total dans l’anneau global
Répéteur
RI RO RI RO
RIRORIRO
Répéteur
Station A
Station D
Station B
Station C
6A. Giacometti - IUP GEII de Blois
Couche Physique
• Support de communication½ Entre stations et MAU ou entre MAU
– UTP : au plus 100 m si Cat. 3 et 225m si Cat. 5
– STP : au plus 400 m si Cat. 5
– Fibre : au plus 2000 m entre MAU
½ Connecteurs IBM (DIX / DB9 côté station et hermaphroditecôté MAU) puis RJ-45 (des deux côtés)
• Mode de transmission½ Code Manchester différentiel
– Bit à 0 : transition au début et au milieu du temps bit
– Bit à 1 : transition seulement au milieu du temps bit
½ Deux symboles de contrôle– J : pas de transition pendant un temps bit
– K : une transition au début du temps bit
7A. Giacometti - IUP GEII de Blois
Couche Physique
• Code Manchester différentiel
Deux signaux possiblespour la même séquence de bits
0 1 1 0 0 10 1
∆t
J K
∆t
0 1 1 0 0 10 1
∆t
J K
∆t
Par rapport au code Manchester standard, permetde ne pas tenir compte du sens de branchement d’une paire
8A. Giacometti - IUP GEII de Blois
Sous-couche MAC
• Objectif principal½ Contrôler l’accès au canal de transmission (Medium Access
Control) pour éviter toute collision entre trames
Station A
Station C
Station D Station B
Une trame est émise par Aà destination de D
La trame passe par B
Si B émet à ce moment làune trame à destination de A
COLLISION
9A. Giacometti - IUP GEII de Blois
Origine des collisions
• Une même paire de fils½ Pour transmettre les signaux depuis une station vers la MAU, ou
inversement depuis la MAU vers une station
COLLISION =un signal est émis de la MAU vers B
en même temps queB transmet un signal vers la MAUMAU
Station D Station C
Station A Station B
Trame émisepar B vers A
Trame émisepar A vers D
10A. Giacometti - IUP GEII de Blois
Accès à jeton
• Principe de base½ Une seule station à la fois peut émettre sur le support
½ Pour émettre, une station doit posséder le jeton (Token)– Trame particulière
½ Pour éviter toute collision– Il y a un seul jeton transmis de station en station
½ Pour garantir un droit équitable à émettre– La possession du jeton est limitée dans le temps (peut permettre
d’émettre une ou plusieurs trames)
• Remarque½ La gestion du jeton n’est pas centralisée
– Il n’y a pas de station « principale » ou « primaire » distribuantle jeton aux autres stations
11A. Giacometti - IUP GEII de Blois
Transmission de données• Pour émettre une trame de données
½ Une station doit posséder le jeton
• Une trame de données émise circule le long de l’anneau½ En allant de station en station (via la ou les MAU)
• Toute station qui reçoit une trame de données½ Teste et indique si elle est reçue correctement
½ Regarde si elle en est le destinataire– Si oui, son contenu est transmis au niveau supérieur
(sous-couche LLC, puis réseau)
– Dans tous les cas, elle transmet la trame reçue à la stationsuivante sur l’anneau
½ Regarde si elle en est la source– Si oui, elle retire la trame émise de l’anneau
• Toute trame émise fait donc un tour complet de l’anneau
½ Elle ne s’arrête pas au destinataire– Permet de contrôler la bonne réception de l’information
12A. Giacometti - IUP GEII de Blois
La trame de jeton
Starting Delimiter (SD)
J.K.0.J.K.0.0.0
1 octet
Access Control (AC)
1 octet
End Delimiter (ED)
J.K.1.J.K.1.I.E
1 octet
Voir plus loinspour les bits I et E
Priority 3 bits
Bit T(oken) 1 bit
Bit M(onitor)1 bit
Reservation 3 bits
Jeton si 0Autre si 1
0 à l’émission, 1 après la traverséedu Moniteur Actif (station contrôlant l’anneau)
3 bits = 8 niveauxde priorité
Pas de champ permettant la détection d’erreurs de transmission du jeton⇒ Un jeton erroné est un jeton perdu (voir gestion de l’anneau)
13A. Giacometti - IUP GEII de Blois
Format général de trame
• Deux types de trame de même format½ Trames LLC : contiennent des données utilisteurs
½ Trames MAC : trame de gestion de l’ anneau
Starting Delimiter (SD) = 1 octet
Access Control (AC) = 1 octet
Frame Control (FC) = 1 octet
MAC Destination Address = 4 octets
MAC Source Address = 4 octets
Routing Information = 0 à 30 octets
Data
Frame Check Sequence = 4 octets
Ending Delimiter (ED) = 1 octet
Frame Status (FS) = 1 octet
Au moins 5*8 temps bits entre deux trames
14A. Giacometti - IUP GEII de Blois
Access Control
Starting Delimiter (SD) = 1 octet
Access Control (AC) = 1 octet
Frame Control (FC) = 1 octet
MAC Destination Address = 4 octets
MAC Source Address = 4 octets
Routing Information = 0 à 30 octets
Data
Frame Check Sequence = 4 octets
Ending Delimiter (ED) = 1 octet
Frame Status (FS) = 1 octet
Au moins 5*8 temps bits entre deux trames
Priority 3 bits
T(oken) 1
M(onitor) 1 bit
Reservation 3 bits
0 à l’ émission1 après la traversée du Moniteur Actif(station contrôlant l’ anneau)
15A. Giacometti - IUP GEII de Blois
Frame Control
Starting Delimiter (SD) = 1 octet
Access Control (AC) = 1 octet
Frame Control (FC) = 1 octet
MAC Destination Address = 4 octets
MAC Source Address = 4 octets
Routing Information = 0 à 30 octets
Data
Frame Check Sequence = 4 octets
Ending Delimiter (ED) = 1 octet
Frame Status (FS) = 1 octet
Au moins 5*8 temps bits entre deux trames
Frame LLC0 1
Réservé 0 0 0
User Priority 3 bits
Frame MAC0 0
Type of function 6 bits
Niveau de prioritéfixé par la sous-couche LLC supérieure
(à usage non défini par la norme)
Permet de distinguer différents typesde fonction réalisée par les trames MAC
16A. Giacometti - IUP GEII de Blois
Frame Check Sequence
Starting Delimiter (SD) = 1 octet
Access Control (AC) = 1 octet
Frame Control (FC) = 1 octet
MAC Destination Address = 4 octets
MAC Source Address = 4 octets
Routing Information = 0 à 30 octets
Data
Frame Check Sequence = 4 octets
Ending Delimiter (ED) = 1 octet
Frame Status (FS) = 1 octet
Au moins 5*8 temps bits entre deux trames
Voir partie cours « Réseaux Locaux Commutés »
Permet la détection d’erreurs de transmissionvia un système de codage polynomiale
avec un polynôme générateur normalisé de degré 32(voir cours « Architectures et Protocoles » IUP1)
17A. Giacometti - IUP GEII de Blois
Frame Status
Starting Delimiter (SD) = 1 octet
Access Control (AC) = 1 octet
Frame Control (FC) = 1 octet
MAC Destination Address = 4 octets
MAC Source Address = 4 octets
Routing Information = 0 à 30 octets
Data
Frame Check Sequence = 4 octets
Ending Delimiter (ED) = 1 octet
Frame Status (FS) = 1 octet
Au moins 5*8 temps bits entre deux trames
A C 00 A C EI
A = à 0 au départ, mis à 1 si adresse destinationreconnueC = à 0 au départ, mis à 1 si données copiéescorrectement par la station destination
Les bits A et C sont dupliqués car ils ne sont paspris en compte dans la détection des erreurs
de transmission
Dans une même séquence de trames,mis à 1 (I = Intermediate) pourtoutes les trames sauf la dernière
Mis à 1 par une stationqui détecte une erreur
de transmission
18A. Giacometti - IUP GEII de Blois
Adressage MAC
• Caractéristiques de base½ Système d’ adressage commun à tous les types de LAN
– Toute carte (Ethernet, Token-ring, FDDI) possède une adresse MAC
½ Une adresse MAC est codée sur 6 octets ou 48 bits– Par convention, une adresse MAC est représentée par un X’
suivie de 6 paires de caractères hexadécimaux séparés par des tirets
X’00-60-08-BD-7C-1E
I / G U / L Adresse Constructeur Sous adresse
1 bit1 bit 22 bits 24 bits
Adresse individuelle (0) d’un ESou d’un groupe (1)
Adresse universelle (0)ou locale (1)
19A. Giacometti - IUP GEII de Blois
Adresses MAC universelles• Gesion effectuée par l’IEEE
½ Un constructeur de cartes dépose un formulaire et paie une
inscription
½ L’ IEEE lui assigne un identifiant unique ou OUI (Organizationally
Unique Identifier) de 3 octets
Xerox ⇒ X’00-00-00
3Com ⇒ X’00-60-08
Intels ⇒ X’00-90-27
½ Voir « http://standards.ieee.org » pour le formulaire et les identifiants
20A. Giacometti - IUP GEII de Blois
Adresses MAC Token-Ring
• Quelques exemples½ Adresse de diffusion pour les trames MAC de
gestion de l’ anneau– X ’C0-00-00-FF-FF-FF
½ Adresse pour atteindre le moniteur actif de l’ anneau– X ’C0-00-00-00-00-01
½ Adresse pour atteindre le serveur de paramètres(RPS = Ring Parameter Server)
– X ’C0-00-00-FF-FF-FF
21A. Giacometti - IUP GEII de Blois
Gestion de la priorité
• Principe de base½ Quand une station reçoit le jeton, elle ne peut
transmettre une trame– Que si son niveau de priorité est supérieur ou égal
à celui du jeton
½ Quand une station désire transmettre une trame avecun niveau de priorité élevé
– Elle réserve le niveau de priorité attendu
– Le prochain jeton remis sur l’anneau contiendrace niveau de priorité
22A. Giacometti - IUP GEII de Blois
Protocole de gestion
• Dans sa version la plus simple½ Le champ « Access Control » possède
– Un sous-champ « P » (Priority)
– Un sous-champ « R » (Reservation)
½ Toute station « i » possède– Une variable « Ei » = priorité du message à émettre
– Une variable « Si » = priorité sauvegardée et à restituer(initialisée à 0)
• Dans sa version plus complexe½ Toute station « i » possède
– Une pile de nouveaux niveaux de priorité affectés au jeton
– Une pile d’anciens niveaux de priorité du jeton
23A. Giacometti - IUP GEII de Blois
Protocole de gestion
• Version simple½ Réservation de la priorité
– Quand une station « i » voit passer une trame de données» Si (Ei > R), alors « Si = R » et « R = Ei », sinon ne rien faire
½ Remise du jeton– Quand une station reçoit sa propre trame avec « R≠ 0 »
» Elle remet le jeton sur l’ anneau avec « P = R », « R » restant inchangé
½ Prise du jeton– Quand une station reçoit le jeton et dispose d’une trame à
émettre de priorité « Ei »» Si « P = Ei », alors elle prend le jeton, émet une trame
avec « P = Ei » et « R = Si », et affecte « Si = 0 »
24A. Giacometti - IUP GEII de Blois
Exemple de scénario (1)
Station A
Station C
Station D Station B
Deux trames de priorité« EA = 0 » à émettre vers D
Une trame de priorité« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
Conditions générales du scénario1. Toute station possédant le jeton peuttransmettre une trame et une seule2. Au départ, A possède le jeton et transmetsa première trame avec « P = R = 0 »
EA = 0
SA = 0
EB = 1
SB = 0
EC = 2
SC = 0
P = 0 R = 0
Sous-champ ACde la trame de données
25A. Giacometti - IUP GEII de Blois
Exemple de scénario (2)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
La trame passe par B qui faitune réservation de priorité
EA = 0
SA = 0
EB = 1
SB = 0
EC = 2
SC = 0
P = 0 R = 1
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACde la trame de données
26A. Giacometti - IUP GEII de Blois
Exemple de scénario (3)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
La trame passe par C qui fait une réservationde priorité supérieure et enregistre le niveau
de réservation précédentEA = 0
SA = 0
EB = 1
SB = 0
EC = 2
SC = 1
P = 0 R = 2
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACde la trame de données
27A. Giacometti - IUP GEII de Blois
Exemple de scénario (4)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
La trame arrive en DLa trame revient en A qui remet le jeton dans
l’anneau avec le niveau de priorité réservéOn garde le même REA = 0
SA = 0
EB = 1
SB = 0
EC = 2
SC = 1
P = 2 R = 2
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACdu jeton
28A. Giacometti - IUP GEII de Blois
Exemple de scénario (5)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
Le jeton passe par B avec un niveau depriorité trop grand pour être pris (P > EB)
EA = 0
SA = 0
EB = 1
SB = 0
EC = 2
SC = 1
P = 2 R = 1
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACdu jeton
29A. Giacometti - IUP GEII de Blois
Exemple de scénario (6)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Une trame de priorité« EA = 2 » à émettre vers D
Le jeton passe par C qui peut prendre le jetonet émettre sa trame avec P = EC et R = SC
SC est par ailleurs remis à 0EA = 0
SA = 0
EB = 1
SB = 0
EC = 0
SC = 0
P = 2 R = 1
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ AC de la trame de données
30A. Giacometti - IUP GEII de Blois
Exemple de scénario (7)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
La trame passe par D, A, B et C sanschangement. Elle est ensuite retirée de
l’anneau par C qui émet le jeton avec P = REA = 0
SA = 0
EB = 1
SB = 0
EC = 0
SC = 0
P = 1 R = 1
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACdu jeton
31A. Giacometti - IUP GEII de Blois
Exemple de scénario (8)
Station A
Station C
Station D Station BUne trame de priorité
« EA = 1 » à émettre vers D
Le jeton passe par A avec un niveau depriorité trop élevé pour être pris (P > EA)
EA = 0
SA = 0
EB = 1
SB = 0
EC = 0
SC = 0
P = 1 R = 1
Encore une trame de priorité« EA = 0 » à émettre vers D
Sous-champ ACdu jeton
32A. Giacometti - IUP GEII de Blois
Exemple de scénario (9)
Station A
Station C
Station D Station B
Le jeton passe par B qui peut prendre le jetonet émettre sa trame avec P = EB et R = SB
SB est par ailleurs remis à 0EA = 0
SA = 0
EB = 0
SB = 0
EC = 0
SC = 0
P = 1 R = 0
Encore une trame de priorité« EA = 0 » à émettre vers D
Après que B est retiré sa trame de l’anneau,A pourra prendre le jeton de nouveau
Sous-champ AC de la trame de données
33A. Giacometti - IUP GEII de Blois
Gestion de l’anneau
• Les principes½ Gestion centralisée avec deux types de station
– Un moniteur actif» Contrôle l’ intégrité de l’ anneau (circulation de 1 jeton et un seul)
– Des moniteurs en veille (standby monitor)» Surveillent la présence du moniteur actif
» Sont capables de détecter une défaillance du moniteur actif etde prendre la relève
½ Initialisation de l’ anneau– Nécessite l’élection de la station qui sera le moniteur actif
» La station élue sera la station active dont l’ adresse MAC est laplus grande
» Une trame « Claim-Token » circule de station en stationen mémorisant l’ adresse source la plus grande comme étantl’ adresse du nouveau moniteur actif
34A. Giacometti - IUP GEII de Blois
Fonctions du moniteur actifEcoute
Expiration du temporisateurd’activité TAM ?
non
Produire une trameActive-Monitor-Present
oui
Expiration du temporisateurde trame valide TVX ?
Emettre unnouveau jeton
oui
ouiM = 0 sur unetrame ou jeton
Mettre M à 1 etré-initialiser TVX
non
non
M = 1 sur unetrame ou jeton
Détruire latrame ou jeton
oui Créerun jeton
Sebloquer
ouinon
non
Permet auxStandby Monitors
de détecterune défaillance
du moniteur actif(si aucune trameAMT n’ est reçue
avant expiration dutemporisateur TSM)
Permet auMoniteur actif de
détecter une trametournant
indéfiniment(station destination
en panne oumodification des
adresses source oudestination)
Détection d’un autremoniteur actif
35A. Giacometti - IUP GEII de Blois
Temporisateurs• TAM = Timer, Active Monitor
½ Au niveau du moniteur actif, détermine la périodicité detransmission des trames AMP (Active Monitor Present)
• TSM = Timer, Standby Monitor½ Au niveau des moniteurs en veille, arrive à expiration si aucune
trame AMP n’ a été reçue (panne du moniteur actif)
• TVX = Timer, Valid Transmission½ Au niveau du moniteur actif, arrive à expiration si aucune
trame ne circule sur l’ anneau
• THT = Timer, Holding Token½ Au niveau de toutes les stations, temps de garde maximale
du jeton
36A. Giacometti - IUP GEII de Blois
Insertion d’une station• Quand une station est inactive
½ Aucun signal n’ est reçu depuis la MAU (port inactif)
• Quand une station veut joindre un anneau½ Les étapes principales à suivre
– Elle commence par tester sa connexion avec la MAU» En transmettant une trame d’ adresse destination nulle
(X’ 00-00-00-00-00-00)
» Cette trame doit être retournée par la MAU à la station avantde passer à l’ étape suivante
– Elle regarde ensuite si un moniteur actif est présent sur l’anneau» Si ce n’ est pas le cas, elle déclenche l’ élection d’ un moniteur actif
– Elle vérifie qu’aucune autre station sur l’anneau possèdela même adresse MAC
» En transmettant une trame MAC « Duplicate Address Test Frame »
– Si possible, elle inialise ses paramètres» En transmettant une trame MAC « Request Initialisation Frame » au serveur de
paramètres (sans réponse, utilise des paramètres par défaut)
37A. Giacometti - IUP GEII de Blois
Détection de coupure
• Problème à résoudre½ Isoler automatiquement une station
– En cas de panne de sa NIC ou du câble la reliant à la MAU
• Solution proposée½ Transmission d’ une trame MAC (Beacon ou Radar)
– Par une station ne recevant plus d’ information de lastation en amont sur l’ anneau (upstream station)
½ Question posée– Comment connaître l’ adresse de la station en amont ?
38A. Giacometti - IUP GEII de Blois
Notification de voisinage
• Apprentissage des adresses en amont½ Initialisé par le moniteur actif
– En émettant une trame AMP (Active Monitor Present) avec A=C=0
½ La première station qui reçoit la trame AMP (avec A=C=0)– Fixe A=C=1 et répette la trame MAC « AMP » (transmise ensuite de
station en station sans changement)
– Enregistre l’ adresse MAC source comme adresse de station en amont
– Transmet après un bref délai une nouvelle trame MAC « SMP »(Standby Monitor Present) avec A=C=0 et son adresse source
½ Toute station qui reçoit une trame SMP avec A=C=0– Fixe A =C=1, et répette la trame MAC « SMP » (transmise ensuite
de station en station sans changement)
– Enregistre l’ adresse MAC source comme adresse de station en amont
– Transmet après un bref délai une nouvelle trame MAC « SMP »(Standby Monitor Present) avec A=C=0 et son adresse source
39A. Giacometti - IUP GEII de Blois
Gestion des coupures
• Beacon Process (processus radar)½ Quand une station ne reçoit plus d’ information
– Transmet de manière périodique une trame « Beacon » àla station en amont
½ Les autres stations répettent les trames « Beacon » reçues
½ Si la station amont reçoit plusieurs trames « Beacon »– Quitte l’ anneau et teste sa carte réseau
½ Si la station origine des trames « Beacon » reçoit ces dernières– Considère que le problème a été résolu
– Relance un processus d’ élection du moniteur actif etde génération du jeton
½ Dans le cas négatif– Quitte elle-même l’ anneau et teste sa carte réseau
40A. Giacometti - IUP GEII de Blois
Conclusion Token-Ring
• Avantages½ Délai maximale d’ attente de transmission garanti
– Capital pour les applications temps réel
½ Auto-configuration automatique en cas de panne
• Inconvénients½ Protocole complexe à mettre en œuvre
½ Protocole du passé sans nouvelle évolution majeure
– Malgré le passage à 100 Mbps (HSTR =High Speed Token Ring)
– Dans ce cas le protocole et les équipements développés serapprochent de ceux développés pour l’Ethernet commuté
½ Trop cher sur un plan économique
– Par comparaison avec les équipements Ethernet