Institut national des sciences appliquees de lyon
Pi : Prédicat testé dans l'ordre de la liste
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.
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)
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
|