Institut national des sciences appliquees de lyon



Yüklə 1,32 Mb.
səhifə91/194
tarix07.01.2022
ölçüsü1,32 Mb.
#88422
1   ...   87   88   89   90   91   92   93   94   ...   194





42 Description par table ou liste de transitions

Nous donnerons la forme classique de ce type de description, utilisée dans la plupart des standards de l'O.S.I.


Nous utilisons les conventions ci-dessous :






Evénement entrant



Etat actuel




P1: Etat suivant

Action et/ou

événement sortant

P2: X


Y = yyyy

EVEreq


Défaut :











Pi : Prédicat testé dans l'ordre de la liste





Evt entrant

tEtat

CONreq

LIBind

CONcnf

LIBreq

DATreq

DATind


(CC)

DATind


(DT)

DATind


(LC)

Rrepos

0


P1 : 1

DATreq (CR)


Def: 4

CONreq








0
défaut







0
défaut




Connex

1





0

CONcnf-












2

CONcnf+


+







Transfert

1

1













3

DATreq


(LR)

2

DATreq


(DT)




2

DATind


(dat)




Deconex

3

3







0

LIBcnf





ignorer










0

LIBcnf


Attente

4

4










1

DATreq


(CR)
















Défaut

5

5













0

xxxx













Pour traiter de manière automatique ces tables de transitions, par exemple dans des outils de simulation ou de validation des protocoles représentés, il est plus commode de les coder sous la forme de listes de quintuplets :


< Evénement, Etat , Prédicat, Etat , Action ou >

entrant actuel suivant liste d'actions


Chaque quintuplet représente une transition élémentaire. Il est souhaitable que l'ordre des transitions dans la liste soit indifférent. Cependant ceci implique que les fonctions logiques exprimant les prédicats soient plus complexes. En pratique, on tiendra donc souvent compte, pour trouver la transition tirable à un instant donné, du rang de cette transition. La liste suivante donne un exemple de cette représentation.
< CONreq , Repos , P1 , Attente , CONreq >

< CONreq , Repos , Def, Connex , DATreq(CR) >

< CONcnf , Attente , , Connex , DATreq(CR) >

< IND_Don(LR) , Connex , , Repos , CONcnf- >

< CONind(CC) , Connex , , Transfert , CONcnf+ >

< DATreq(dat) , Transfert, , Transfert , DATreq(DT) >

< DATind(DT) , Transfert, , Deconex , DATreq(LR) >

< DATind(LC) , Deconex, , Repos , LIBcnf >
Nota : Parfois les paramètres apparaissant dans un événement entrant "Indication de données " sont traités comme des prédicats.


  1. Description par langage algorithmique

    1. Objet

Une description formelle de protocole complète et non ambigüe ne peut être fournie que par un langage adapté. Si Pascal a parfois été utilisé ( par exemple description formelle des protocole Ethernet ou standards OSI 8802.3 ) on a normalement recours à des langages spécifiques.


Le langage de spécification et de description fonctionnelle LDS du CCITT (recommandations Z100 à Z104 ) ou le langage PDIL (Protocol Description and Implémentation Language ) développé à l' Agence de l'Informatique (Projet Rhin) sont des représentants d'une première génération de ces langages. Le langage Estelle en cours de normalisation à l'OSI (standard ISO/IS 9074) doit les remplacer et servir à décrire tous les protocoles de communication. Pour la représentation des données, le CCITT à aussi édité la recommandation X.409 ( "syntaxe de transfert" ) retenu par à l'OSI: Standard ASN0 (Que coder) et ASN1 (Comment coder). Une description de plus haut niveau d'abstraction est fournie par le langage normailsé LOTOS (standard ISO/IS 8807)

    1. Langage Estelle

Le langage Estelle est un surensemble de Pascal OSI qui permet de modéliser des protocoles de communication par automates d'états finis étendus. Il possède une structure modulaire très structurée en "spécifications", "Processus" et "Activité". Il prend en compte le parallélisme entre processus de même niveau sur des architectures mono ou multiprocesseurs. Il introduit non seulement une description des automates mais aussi des interactions avec l'environnement à travers des "canaux" où transitent ces interactions.


La description d'un automate est introduite par le verbe trans.
Les événements entrants sont indiqués par when

l'état actuel par from

l'état suivant par to

un prédicat par provided

un événement sortant par output
Lorsque qu'une transition renvoie dans le même état le nom de celui-ci peut être remplacé par same
Les retards peuvent être introduits par la clause delay
Les canaux, introduits par la clause channel sont décrits avec une grande précision. Les rôles des entités qu'ils relient sont décrites et ils contiennent la listes des événements pouvant transiter dans chaque sens.
D'autres clauses permettent de prendre en compte l'environnement de l'entité décrite et une gestion dynamique des modules instanciés.

Nota: Le tome 5 "Méthodologie de conception des logiciels de communication" fournit une description plus complète des langages de spécification ou description fonctionnelle : LDS, LOTOS et ESTELLE


    1. Yüklə 1,32 Mb.

      Dostları ilə paylaş:
1   ...   87   88   89   90   91   92   93   94   ...   194




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin