Algorithmes de synchronisation

Extension for Terminal-based Applications a trois algorithmes de synchronisation pour déterminer l'état du terminal. L'état du terminal dépend du chargement de l'espace de présentation.

L'état du terminal est enregistré pendant que vous enregistrez un script. Lors de la lecture du script, Functional Tester doit attendre que l'état du terminal corresponde à l'état de l'enregistrement. L'état doit être identique afin d'éviter d'envoyer des commandes à l'hôte avant que ce dernier ne soit prêt à recevoir l'entrée. L'état du terminal est déterminé par l'état de la zone d'informations de l'opérateur (verrouillé ou déverrouillé) qui dépend du chargement de l'espace de présentation. Le chargement de l'espace de présentation n'est pas un processus instantané et plusieurs types de connexion chargent l'espace de présentation différemment.

Les algorithmes suivants évaluent l'état du terminal :

Les valeurs de période d'attente par défaut utilisées par les algorithmes de synchronisation sont les suivantes :

Algorithme Paramètres de synchronisation
Synchronisation par défaut et synchronisation 5250
  • Délai d'attente (en millisecondes) : 1200
  • Délai d'attente de l'état de la zone d'informations de l'opérateur (en millisecondes) : 300000
  • Intervalle d'interrogation (en millisecondes) : 100
Synchronisation TN3270E Temps d'attente minimum (en millisecondes) : 250

Vous pouvez modifier n'importe quelle valeur via la fenêtre Préférences.

Algorithme de synchronisation par défaut

L'algorithme de synchronisation par défaut commence lorsque la touche d'un caractère de signalisation est activée. La touche d'un caractère de signalisation correspond à n'importe quelle touche déclenchant une mise à jour de l'espace de présentation. A l'origine, l'état du terminal est NON INITIALISE. L'algorithme attend quelques instants avant de mettre à jour l'espace de présentation. Vous pouvez modifier la durée d'attente dans la zone Délai d'expiration de la fenêtre Préférences. La durée d'attente par défaut est 1200 millisecondes.

Si le délai d'expiration a la valeur 1200 millisecondes et qu'une mise à jour se produit au cours des 600 dernières millisecondes, l'algorithme attend 600 millisecondes supplémentaires pour réaliser d'autres mises à jour. Si pendant cette période d'attente supplémentaire une autre mise à jour se produit au cours des 300 dernières millisecondes, l'algorithme attend à nouveau 600 autres millisecondes pour réaliser d'autres mises à jour. Cette opération se poursuit tant qu'aucune mise à jour n'est reçue pendant la dernière moitié de la dernière période de temps supplémentaire.

A ce stade, l'état du terminal est CHARGE (clavier verrouillé) ou PRET (clavier déverrouillé), en fonction du statut de la zone d'informations de l'opérateur.

Algorithme de synchronisation amélioré 3270

A l'origine, l'état du terminal est NON INITIALISE. L'état du terminal n'est pas initialisé pendant une durée d'attente minimale. Vous pouvez modifier la durée d'attente dans la zone Durée d'attente minimale de la fenêtre Préférences. La valeur par défaut est 250 millisecondes.

Le serveur informe l'algorithme de l'envoi des mises à jour de l'espace de présentation. L'algorithme de synchronisation attend pendant la période spécifiée dans la zone Durée d'attente minimale de la fenêtre Préférences, puis interroge l'état de la zone d'informations de l'opérateur pour déterminer si l'état PRET peut être défini. Si l'algorithme de synchronisation a attendu pendant la période définie dans la zone Délai d'expiration de la fenêtre Préférences et que l'état de la zone d'informations de l'opérateur n'a pas été défini comme prêt, l'algorithme définit l'état CHARGE. Dans les autres cas, il définit l'état NON INITIALISE. Cet algorithme requiert que le niveau de service correct pour le serveur TN3270 soit installé sur l'hôte.

Remarque : A partir de Communications Server for z/OS 1.2, une nouvelle fonction appelée "résolution de conflit" est introduite. Si vous ne disposez pas des derniers niveaux de maintenance pour Communications Server for z/OS, des erreurs COMM655 ou des conditions de boucle sans fin peuvent se produire lors de la tentative de connexion à un hôte z/OS. Dans ce cas, définissez vos configurations de connexion de manière à ne pas utiliser de résolution de conflit.

Pour modifier la définition de la résolution de conflit : dans la fenêtre Extension for Terminal-based Applications, ouvrez la fenêtre Paramètres avancés en cliquant sur Avancé. Faites défiler jusqu'à la propriété negotiateCResolution dans la liste Configurer les paramètres avancés. Remplacez la définition de cette propriété true par false.

Algorithme de synchronisation 5250

Les événements de mise à jour de l'espace de présentation se produisent une seule fois pour les sessions 5250 et pas dans les groupes comme 3270. L'algorithme 5250 se comporte comme l'algorithme de synchronisation par défaut avec une exception : lorsqu'une mise à jour se produit, l'état change immédiatement en CHARGE ou PRET, en fonction de l'état de la zone d'informations de l'opérateur.

Lorsque vous lisez le script, Functional Tester attend que le terminal hôte affiche l'état approprié avant de continuer à exécuter les commandes à partir du script d'enregistrement.

Vous pouvez modifier le paramètre de temps dans la fenêtre Préférences.

Remarque : Il se peut que les algorithmes de synchronisation ne fonctionnent pas tout le temps avec les valeurs de temps spécifiées, notamment lors de la communication avec des hôtes présentant de longs délais réseau. Si la synchronisation ne fonctionne pas avec une certaine partie de votre application, vous pouvez insérer des minuteurs de mise en veille manuels dans le script pour adapter les délais ou utiliser la synchronisation manuelle. Pour plus d'informations, voir les rubriques connexes.

Retour d'informations