III.3. Etude comparative de notre stratégie de
mobilité aux
stratégies existantes.
L'étude précédente s'est restreinte
à un agent qui ne réutilise pas les données
accumulées et qui interagit toujours localement suivant un
itinéraire fixé (toujours mobile). Aussi, elle n'a pas
considéré le fait qu'un service doit prendre en paramètre
des données venant d'une autre machine. Considérons maintenant
une application ayant cinq services sl,
Mémoire de Fin d'Etudes de Master 2 Recherche en
Informatique : ENSP YAOUNDE, DECEMBRE 2008 Ingénieur DONFACK
Cédric Pérez 18
s1, s2, s2 et s3 qui fournissent un résultat à
partir d'une requête. A la différente de l'analyse
précédente, les cinq services sont donc composés (Services
complexes). La donnée en entrée du service s1~
(In(s1~)) au cours d'une interaction correspond à la
donnée rendue par le service s ~ (Out(s2)). De même,
s'2 prend entrée la donnée rendue par s3 ; s3 prend
celle rendue par
s2, s2 celle de si et enfin si reçoit la donnée
fournie par le client. Initialement, les données du client sont In(s1).
Ainsi, la fonction à réaliser est sous la forme :
s1~{s~~[s3(s2{s1[In(s1)1})1}
|
.
|
Cependant, ces services sont répartis sur trois sites :
Site 1 (s1 et s1~), site 2 (s2 et s) et site 3 (s3). Le cas
d'interactions multiples avec un service est envisagé. Toutefois, la
donnée fournie en résultat est réutilisée
directement en tant que nouvelle entrée du service. Ainsi, interagir m
fois avec un service si par invocation distante engendre une taille de
donnée Isize(s1) égale à m fois la somme de In(si) et
Out(si). Isize est le volume total dû aux m interactions par invocation
distante à travers le réseau.
Isize(a) = m(In(a) + Out(a)) oil V i, a E {si, s ~}
Chia et Kannapan [15] ont proposé trois études
de cas afin de comparer le nombre d'octets transmis sur un réseau pour
une application de transformation de données implantée à
l'aide d'un agent.
Nous allons utiliser chacune des études qu'ils ont
menées pour analyser notre stratégie.
1. Agent stationnaire : les interactions se
font à distante entre les sites (invocation distante). Le trafic
généré est équivalent à la somme des m
interactions avec s1 , s2 , s3 , s ~ et s1~ ; soit Isize(s1),
Isize(s2), Isize(s3), Isize(s2) et Isize(s1~). Le coût de ce
schéma est donc :
Isize(s1) + Isize(s2) + Isize(s3) + Isize(s2) +
Isize(s1~)
2. Agent mobile : un agent, initié
par le site client, migre vers le site prestataire de s1, ensuite celui
proposant s2, puis vers le site prestataire s3 enfin rebourse chemin vers les
services respectifs s~~ et s1, avant de retourner le
résultat sous la forme d'un message à son client. Le trafic
engendré sur le réseau correspond ainsi à cinq fois la
taille du code de l'agent (source), la donnée initiale du client In(si),
auxquels s'ajoutent les résultats fournit par s1, s2, s3, s~~
et s1~ (c'est-àdire Out(s1), Out(s2), Out(s3), Out(s2) et
Out(s1~)). Il n'y pas cumul de données à l'agent, p.ex
Out(si) est consommé sur le site prestataire de s2. Le
volume de données Isize produit par les m interactions
n'est pas à prendre en compte, celles-ci se faisant en local. Le
coût de ce schéma est :
5 * source + In(si) + Out(si) + Out(s2) + Out(s3) + Out(s2) +
Out(si~)
3. Solution mixte : Chia et Kannapan [15]
ont étudié le cas oil l'agent migre vers le site si, puis vers
s2, interagit à distante avec s3 et si~ et fournit finalement
le résultat sous la forme d'un message à son client. Dans ce
troisième cas, l'agent a la possibilité de s'appropriée
des ports de communication sur un des sites de son itinéraire pour
interagir par invocation distante (p.ex. synchrone) avec des services
localisés sur d'autres sites. Le trafic engendré correspond
à deux fois la taille du code de l'agent, la donnée initiale du
client In(si), le coût des interactions distantes avec s3 et
si~ finalement le résultat de si~ (retransmis au
client). Le cout de cette interaction mixte est :
2 * source + In(si) + Out(si) + Isize(s3) +
Isize(si~) + Out(si~)
Figure 9: Les stratégies de mobilité
existantes [14]
4. Agent mobile collaboratif : Dans notre
approche, l'agent initié par le site client, migre vers le site
prestataire de si, ensuite, il se comporte comme un client en initiant un agent
vers le site s2. Ce dernier fait de même lorsqu'il se trouve sur le site
s2. Enfin l'agent situé sur le site s3 retourne le résultat vers
l'agent situé sur le site s~ ~ (c'est-à-dire s2). Celui-ci
renvoie le résultat vers si~ (c'est-à-dire si) qui
sera finalement fournit au client. Le trafic engendré sur le
réseau correspond ainsi à trois fois la taille du code de l'agent
(source), la donnée initiale du client In(si), auxquels s'ajoutent les
résultats fournit par si, s2, s3, s~ ~ et si~
(c'est-à-dire Out(si), Out(s2), Out(s3), Out(s2) et
Out(si~)). Une fois de plus, il n'y pas cumul de données
à l'agent, p.ex. Out(si) est
consommé sur le site prestataire de s2. Le volume de
données Isize produit par les m interactions n'est non plus à
prendre en compte, celles-ci se faisant en local. Le coût de ce
schéma est :
3 * source + In(si) + Out(si) + Out(s2) + Out(s3) + Out(s2) +
Out(si~)
Figure 10: Notre stratégie par agent mobile
collaboratif
Discussions sur les stratégies de
mobilité.
Interaction
|
Coût
|
Agent
stationnaire
|
Isize(si) + Isize(s2) + Isize(s3) + Isize(s~~) +
Isize(si~)
|
Agent mobile
|
5 * source + In(si) + Out(si) + Out(s2) + Out(s3) +
Out(s~~ ) + Out(si~)
|
Solution mixte
|
2 * source + In(si) + Out(si) + Isize(s3) + Isize(si~)
+ Out(si~)
|
Agent mobile collaboratif
|
3 * source + In(si) + Out(si) + Out(s2) + Out(s3) +
Out(s~~ ) + Out(si~)
|
Tableau 3 : Analyse des stratégies de
mobilité
Le tableau 3 nous montre la stratégie utilisant l'agent
stationnaire. Cette stratégie oblige le client à effectuer
plusieurs appels distants. Cela entraine une consommation considérable
de la bande passante. En revanche, l'agent mobile, bien que inefficace dans le
cadre de la collecte des informations (Mauvaise conception du schéma.),
est considéré comme étant la solution la mieux
adaptée pour les services complexes. Toutefois, l'agent mobile
collaboratif (Notre politique de mobilité), avec la notion de
collaboration, offre une amélioration du coût de l'agent mobile
comme le montre les coûts du tableau3.
Mémoire de Fin d'Etudes de Master 2 Recherche en
Informatique : ENSP YAOUNDE, DECEMBRE 2008 Ingénieur DONFACK
Cédric Pérez 21
|