9.2. Unités de données pour le protocole 8802.5 :
Le format général des trames est le suivant :
1 octet
|
SD
|
Fanion d'ouverture
|
1 octet
|
AC
|
Contrôle d'accès
|
1 octet
|
FC
|
Commande de trame
|
2 ou 6 octets
|
Adresse destination
|
|
2 ou 6 octets
|
Adresse source
|
|
|
Données
MA_SDU
|
|
4 octets
|
FCS
|
Contrôle de trame
|
1 octet
|
ED
|
Fanion de fermeture
|
1 octet
|
FS
|
Etat de trame
|
Les trames de jeton ne comportent que les champs:
et les trames "abort"
Le codage Manchester utilisé pour ce protocole permet lui aussi d'étendre le jeu de symboles. On ajoute deux symboles non_données J et K.
Le fanion d'ouverture est ainsi codé JK0JK000 et le fanion de fermeture JK1JK1IE où I est le bit "données à suivre" et E le bit "erreur détectée" (voir 8802.4).
Contrôle d'accès.
Ce champ comporte trois sous-champs utiles:
- priorité sur 3 bits
- type de trame Jeton (0) ou données (1)
- moniteur pour contrôler la validité du jeton et des priorités.
Les autres bits sont à 0
Commande de trame.
Ce champ apparaît dans les trames portant des données.
Les deux premiers bits indiquent le type de trame :
- administration (OO)
- données utilisateur (01)
Les autres types ne sont pas définis.
Les six autres bits dépendent du type de trame.
Dans les trames administration ils désignent des commandes particulières :
claim_token (CL_TK)
test d'adresse dupliquée (DAT)
présence de moniteur actif (AMP)
présence de moniteur en attente (SMP)
balise (beacon - localisation de défaut)
purge
Dans les trames de données on trouvera 3 bits à "0" et trois bits YYY permettant de faire une demande de jeton de priorité YYY.
Etat de trame.
Ce champ ne comporte actuellement que deux bits utiles qui sont dupliqués selon le format ci-dessous.
Les bits A sont mis à "1" par une station qui reconnaît l'adresse destination comme sa propre adresse individuelle ou de groupe. Les bits C sont mis à "1" par la station qui recopie les données qui lui sont destinées (acquittement) . Sur un réseau en anneau ce mécanisme permet à la station qui reçoit en retour la trame qu'elle a émise de connaître l'usage qui en a été fait
9.3 Service et Interactions avec la sous-couche LLC :
Le service fourni permet
Le transfert de données grâce aux interactions :
MA_DATA.request (commande, adresses source et destination,
MA_SDU, classe de service demandée)
MA_DATA.indication (commande, adresses source et destination,
MA_SDU, état réception)
MA_DATA.confirm (état transmission, classe de service fournie)
L'administration du réseau par :
MA_INITIALIZE_PROTOCOL.request
MA_INITIALIZE_PROTOCOL.confirm
MA_CONTROL.request
MA_STATUS.indication
MA_NMT_DATA.request NMT = network management
MA_NMT_DATA.indication Administration de réseau
MA_NMT_DATA.confirm
Le protocole utilise les facilités offertes par le système d'anneau avec prises actives.
Une telle architecture permet de modifier des bits d'une trame qui circule entre sa réception et sa réémission.
Base des opérations.
Pour pouvoir émettre une trame sur le réseau, une station doit capter un jeton de priorité inférieure ou égale à la priorité de la trame à émettre.
Si une station voit passer un jeton inutilisable (priorité trop élevée) ou une trame de données, elle le retransmet sur le réseau en modifiant le champ YYY pour demander l'émission d'un jeton de priorité PPP convenable. (voir § 9.2).
Lorsqu'une station voit passer un jeton utilisable elle le transforme en trame de donnée en faisant passer le bit type de trame à 1. A cet instant elle cesse la retransmission du signal entrant pour commencer son émission d'information. Elle peut alors émettre une ou plusieurs trame durant la tranche de temps qui lui est allouée (slot_time).
La station attend alors de recevoir le champ SA de la trame en émettant éventuellement un signal de remplissage et peut alors transmettre un jeton de priorité demandée.
Après transmission du jeton la station reste en état de transmission tant qu'elle n'a pas purgé le réseau de ses trames de données (stripping).
En réception, une station analyse toutes les trames qui transitent, à la recherche de son adresse. Lorsque celle ci est reconnue, elle peut faire basculer les bits A de l'octet d'état. Si elle peut copier la trame elle fait aussi basculer les bits C. Ces bits sont remis à 0 par le moniteur actif.
La gestion de priorité suit le mécanisme suivant:
Une station qui a une PDU de priorité Pm à émettre teste le champ YYY de priorité demandée de valeur actuelle Pd et le fait passer à Pm si Pm > Pd, sinon elle répète ce champ inchangé.
Moniteur(s)
La surveillance du réseau est dédiée à une (ou plusieurs) station(s) moniteur. N'importe quelle station peut être moniteur soit dans l'état actif soit dans l'état passif (standby). Un seule station est moniteur actif à un instant donné.
La détection d'une défaillance sur le réseau est basée sur la notion de "notification de voisinage" (Neighbor Notification). Ce mécanisme utilise les bits A et C de l'octet d'état de chaque trame. Quand une trame est diffusée à toutes les stations du réseau, la première qui reconnaît l'adresse de diffusion passe les bits A à 1 et la première qui peut la copier (la même souvent) passe les bits C à 1. Ainsi pour une trame diffusée une station quelconque trouve le plus souvent ces bits à 1. Seul un moniteur actif peut les remettre à 0.
Le moniteur actif commence une "notification de voisinage" en diffusant une trame AMP (moniteur actif présent). La station immédiatement en aval met les bits A et C (si possible) à 1 et essaie de copier la trame . L'analyse de l'adresse lui donne son "voisin amont".
Dès que possible, un moniteur passif (standby) diffuse une trame SMP (moniteur passif présent) qui permet de proche en proche à chaque station d'identifier son voisin amont.
Chaque station passive a une temporisation "chien de garde" remise à zéro au passage d'une trame AMP. Si cette temporisation expire une station active commence la transmission d'une trame "claim_token" pour tenter de devenir moniteur actif.
En cas de défaut (coupure de l'anneau) celui-ci est détecté par la station en aval du défaut qui devient " station balise " (beacon DTE) et permet d'identifier la station en amont du défaut comme son voisin amont et ainsi de pouvoir notifier correctement ce défaut par une trame "balise".
Dostları ilə paylaş: |