Nous ne donnerons ici qu'un exemple de description par graphe sous une forme simple. D'autres formes sont souvent utilisées. En particulier, le langage LDS (Langage de description et de spécification fonctionnelle) du CCITT (Recommandation Z.100 et annexes) fournit une syntaxe plus détaillée. Les standards ECMA utilisent aussi une autre notation. Les schémas ci-dessous montre l'évolution d'un tel graphe au cours de la conception d'un protocole élémentaire.
On utilise une notation LDS graphique en n'en gardant que les éléments de base.
Les primitives sont codées par les suffixes: req, ind, rsp+, rsp-, cnf+ et cnf-.
Les Préfixes CON, LIB et DATA correspondent respectivement à des événements de connexion, libération et données.
Le contenu des primitives de données vaut :
CR demande de connexion
DT données utilisateur
CC acceptation de connexion
LR demande de libération
LC acceptation de libération
Dans le premier automate ci-dessous on suppose le service N - 1 déjà connecté et on s'intéresse essentiellement aux phases de connexion et de libération. Le transfert de données est juste amorcé pour montrer quand et comment il est initialisé.
Si le service N-1 n'est pas toujours prêt, il est nécessaire, sur la requête de connexion venant de la couche N + 1, de demander l'établissement d'une connexion à ce service et d'en attendre la confirmation. Nous noterons par le prédicat P1 la préconnexion du service N - 1.
Le second automate tient compte de cette initialisation du service N-1 .
Cet automate est complété pour traiter (sommairement ici ...) le transfert de données et aussi prendre en compte les défauts en introduisant un état " Erreur " supplémentaire activé soit sur un événement entrant ERRind (Indication d'erreur), soit sur un événement interne. On pourrait aussi le compléter en dédoublant l'état 2 Transfert en deux états : " Prêt " et " Occupé " pour gérer la fonction de contrôle de flux. Parfois, par exemple pour cette fonction, on lance un sous-automate qui n'est actif que dans l'état " Transfert ".
Dostları ilə paylaş: |