WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Intégration de protocoles de sécurité pour la communication inter-agents dans la plate-forme Aglets

( Télécharger le fichier original )
par Manel Sekma
Institut Supérieur d'Informatique et de Mathématiques de Monastir - Maitrise 2007
  

précédent sommaire suivant

4.2.2 Cycle de vie d'un aglet

Les types de comportement des aglets ont été implémentés de manière à répondre aux principaux besoins des agents mobiles.

Libération

Contexte A Contexte B

Clonage

Déportation

aglet aglet

Désactivation Activation

Récupération

Mémoire de
masse

Fichiers.Class

Figure 3.4 Modèle du cycle de vie d'un aglet.

Les principales opérations affectant la vie d'un aglet sont (figure 4.3) :

· Création: Se fait dans un Contexte. Un Identifiant unique est assigné. L'initialisation et l'exécution de l'aglet commencent immédiatement. Cet identifiant est globalement immuable durant le cycle de vie de l'aglet.

· Clonage : Création d'un clone dans le même contexte que l'original. Un Identifiant différent est alors attribué. A noter que les processus (thread) ne peuvent pas être clonés.

· Déportation (Dispatching) : Il s'agit ici d'extraire un aglet de son contexte d'exécution et de l'insérer dans un contexte destination. Précisément, dispatcher un aglet entraînera sa suppression de son contexte courant et son insertion dans son contexte de destination où il va reprendre son exécution; ceci via la méthode dispatch (URL destination). La destination spécifiée est de type URL. Elle inclut l'hôte, le nom du domaine et des informations contenant le protocole utilisé pour communiquer avec le serveur distant. L'appel de la méthode Dispatch() mènera immédiatement à une invocation de la méthode ondispatching() permettant de personnaliser l'envoi de l'aglet. Le protocole réseau utilisé dans le cas d'envoi d'aglet est ATP (Agent Transfer Protocol). Ce dernier est invoqué quand un agent demande de migrer vers un autre serveur agent ou quand une application crée et lance un agent à son serveur initial. Pour effectuer le transfert d'un agent, le serveur courant envoie un message ATPRequest à travers la connexion TCP déjà établie. Ce message contient des paramètres tels que le temps d'exécution estimé de l'agent à transférer, son nom, son URN (Uniform Resource Naming). Ces paramètres d'identification de l'agent qui a demandé à être transféré vont être utilisés par le serveur destination pour qu'il décide de l'établissement du transfert compte tenu de ses critères de sécurité. A titre d'exemple, une politique de sécurité relative à un serveur peut interdire l'accès à un ensemble d'agents appartenant à un propriétaire donné.

· Récupération (Rétractation) : L'aglet déporté est récupéré (tiré) dans son contexte

d'origine. Autrement dit, le retrait d'un aglet va le supprimer de son contexte courant et l'insérer dans le contexte où l'opération a été invoquée. Le retrait d'un aglet se fait via l'activation de la méthode retractAglet() qui mène à une invocation distante de la méthode onReverting. Ainsi tous les threads de l'aglet distant sont détruits. A l'arrivée de l'aglet, la méthode onArrival() est invoquée, suivie de la méthode run().

· Activation et Désactivation: La désactivation d'un aglet est une interruption temporaire de son exécution. Elle consiste à le stocker momentanément dans un espace de stockage secondaire afin de pouvoir le réactiver ultérieurement.

· Libération ou destruction (dispose) : Cette dernière opération marque la fin du cycle de vie de l'aglet en le supprimant de son contexte d'exécution courant.

La figure 5.3 représente le processus de transfert des données dans le réseau d'un hôte à un autre.

Hote 1 Hote2

Contexte d'Origine

Arrêt de l'exécution

Sérialisation

Codage Expédition ds

te1 données

Contexte de Destination

Reprise de l'exécution
Désérialisation

Décodage

Réception des données

Réseau

Figure 3.5 Transfert d'un aglet.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy