II.4. Etude d'une application de collecte de
données
multimédia
En s'inspirant de l'analyse de Carzaniga, Picco et Vigna [13],
supposons qu'un document multimédia est constitué du texte de
taille T, d'un fichier vidéo de taille V, d'un fichier audio de taille A
et d'une image de taille I. De plus, nous considérons qu'un fichier
vidéo et un fichier audio sont représentés respectivement
sous forme d'images (Images fixes) et de trames (Phoême Mot) de tailles
respectives Iv, Ta. Aussi, nous admettons qu'un fichier vidéo et un
fichier audio sont constitués respectivement de Im fichiers images et de
Tm trames ; et chaque image ou trame est rattachée à un fichier
de synchronisation de taille Syn. Ainsi, une vidéo aura une taille V =
Iv * Im, un fichier audio sera de taille A = Ta * Tm ; leur
stockage en mémoire représentera respectivement Sv = V + Im * Syn
et Sa = A + Tm * Syn. La taille totale d'un document sera définie par Dm
= T + V + A + I, et nous aurons en stocke SDm = Sv + Sa + T + I.
Dans l'application, un client souhaite récupérer
des documents multimédia de taille constante b (b peut être
égale à Dm ou à SDm), en interagissant avec n sites. Pour
un site i donné, il existe des interactions avec les n
-- 1 autres sites ainsi qu'un autre site vi de telle sorte que chaque site i
ait un site vi qui lui est propre. Chaque site dispose d'un même nombre D
de documents. Seul le site contenant le texte d'un document détient la
localisation des autres morceaux de ce document. Pour chaque site, le client
récupère dans un premier temps le texte et l'image des documents
sur ce site ensuite, dans un deuxième temps il récupère
les vidéo sur le site vi et enfin, dans un troisième temps il
récupère les fichiers audio sur le site d'indice
consécutif (pour i = n nous prendrons comme site consécutif i + 1
= 1). Un service complexe si (sur chaque site) permet de
récupérer ces documents sous forme synchronisée,
c'est-à-dire Out(si) = D * Dm et un autre permet de les
récupérer sous forme non synchronisée (i.e.: vidéo
= bloc d'images + fichiers de synchronisation et audio= bloc de trames +
fichiers de synchronisation.), c'est-à-dire
Out(s1i) = D * SDm. Le service si est
Mémoire de Fin d'Etudes de Master 2 Recherche en
Informatique : ENSP YAOUNDE, DECEMBRE 2008 Ingénieur DONFACK
Cédric Pérez 10
constitué d'un service sAi, d'un service sVi et d'un
service sTIi qui permettent de récupérer respectivement des
fichiers audio c'est-à-dire Out(sAi) = D * A ,
Out(sVi) = D * V et Out(sTIi) = D * (T + I).
De même, le service s'i est décomposé en
s'Ai, s'Vi et s'TIi tels que :
Out(s'Ai) = D * Sa , Out(s'Vi)
= D * Sv et Out(s'rIi) = Out(sTIi) = D * (T +
~),
Nous admettons qu'il existe un même nombre de documents
sur chaque site dont la vidéo contient une image ayant le logo de
l'entreprise. Ce dernier sélectionne donc ces documents afin de les
télécharger. Les documents sont supposés
uniformément repartis entre les sites. k(0<=k<=1)
représente le ratio entre les documents à
télécharger et le nombre de documents présents sur le site
(sélectivité). Les requêtes émises par le client ont
une taille fixe r (demande de fichier audio, demande de vidéo, ...),
c'est-à-dire :
Pour tout i : In(si)=In(sAi)= In(sVi)=
In(STIi)=r et In(s'i)= In(s'Ai)=
In(s'Vi)= In(S'TIi)=r.
Carzaniga, Picco et Vigna [13] ont proposé d'analyser
les consommations en bande passante d'application de collecte de documents,
mise en oeuvre selon trois schémas d'organisation notamment interaction
RPC, évaluation distante et agent mobile.
Nous allons utiliser leur approche pour analyser notre
application et considérer que ces schémas d'organisation ont
été évalués, quand les n sites proposaient les
mêmes services :
II.4.1 Application à l'invocation
distante
Pour des interactions à base d'invocation distante (cf.
section II.3.1), le client interagit à distance avec
les n sites. Pour chaque site, il émet dans un premier temps D
requêtes de taille r afin de récupérer les documents
(taille Out(s)). Ensuite, il émet dans un second temps D requêtes
de taille r afin de récupérer les bonnes vidéo. Enfin,
suivant le ratio k fixé, il établit la connexion qui lui fournira
les fichiers audio recherchés. Le coût suivant ce schéma
est : n * [2 * D * r + Out(s'TI1) + Out(s'V1) + k * {D *
r + Out(s'A1)}]
Figure 4: Schéma organisationnel : invocation
distante
II.4.2 Application à l'évaluation
distante
En utilisant l'évaluation distante (cf. section
II.3.2), il devient possible de choisir les documents à
télécharger directement sur le site distant (la sélection
se fait à distance). Le client interagit à distance avec les n
sites en envoyant du code source suivi d'une requête sur chacun d'eux.
Pour chaque site, il envoie dans un premier temps le code source et la
requête de taille r afin de récupérer les documents (taille
Out(s)). Ensuite, il émet dans un second temps le code source de taille
r afin de récupérer les bonnes vidéo. Enfin, suivant le
ratio k fixé, il récupère les fichiers audio dont la
vidéo répond au critère fixé. Le cout suivant ce
schéma est : n * [3 * code + 3 * r + Out(STJ1) + k{Out(SA1) +
Out(Sv1)}]
Figure 5:Schéma organisationnel :
évaluation distante
II.4.3 Application à l'agent mobile
L'utilisation d'un seul agent mobile (cf. section
II.3.3) pour parcourir sequentiellement les n sites induit un
coût plus important que dans les deux cas precedents (l'itineraire est
indifferent vu que tous les sites sont identiques). En effet, la requête
et le code de l'agent migre n + 2 fois (les n sites, remonte au site 1 pour
executer SAn et le retour chez le client), ce qui est sensiblement
equivalent à l'evaluation distante (n fois). Toutefois, les documents
recuperes par l'agent en local sont place dans son sac à doc au fur et
à mesure de son itineraire. Cependant, l'agent sauvegarde les donnees de
son sac à dos chaque fois qu'il migre du site i vers le site Vi car il y
retournera. Ainsi, les resultats des premiers services sTI1 et sVi vont
transiter à travers les n -- 1 sites suivants avant d'être
retournes au client. De même, les resultats du premier service sm
s'obtiennent quand l'agent migre sur le deuxième site 2 et son parcours
vers le site client est constitue de n -- 2 sites. Au cour de la (i +
1)nième interaction, les documents accumules par l'agent ont une taille
de :
i * k * (Out(STI1) + Out(sVi)) + (i -- 1) * k * Out(sm) + source
+ r + k * Out(sVi) = i * k * (Out(sTIi) + Out(sVi) + Out(sm)) -- k * Out(sm)+
source + r + k * Out(sVi) =
i * k * Out(s1) --k * Out(sm)+ source + r + k * Out(sVi)
La taille des documents en transit correspond à la somme
de 1 à n coût de ces migrations i. Le coût suivant ce
schéma est :
(n + 2) * [source + r + k(n/2)Out(s1) -- out(sA1)] + n *
[source + r + k * Out(sV1)]
Figure 6: Schéma organisationnel : agent
mobile
Cette analyse permet de raisonner sur la meilleure technologie
à exploiter pour l'application traitée. Pour cette application et
avec les hypothèses données, les auteurs montrent que
client-serveur (par invocation de méthode, RPC) et évaluation
distante sont nettement plus favorables que l'utilisation d'un agent mobile
(problème du cumul des documents sur l'itinéraire).
II.4.4 Limites des différents schémas
organisationnels
Invocation distante
Cette approche présente un grand nombre
d'inconvénients :
· Le nombre important d'invocations distantes de
services oblige le client à utiliser un flux considérable pour
ses interactions entre sites.
· L'utilisation systématique d'invocations
distantes sans intégrer la mobilité du code impose le
déplacement de grands volumes de données.
· Le transport des fichiers de synchronisation entraine une
surcharge supplémentaire du réseau.
Evaluation distante
Cette approche propose une amélioration de l'invocation
distante grâce à la mobilité du code. Toutefois, elle
présente quelques limites tels que :
· Les processus mobiles qu'elle envoie sur les sites
distants ne sont pas autonomes et cela oblige le client à faire
transiter les données à travers le réseau.
· Tout comme l'invocation distante, le client est au centre
des opérations. Ceci entraine une augmentation du flux des
données à travers le réseau.
Agent mobile
Cette approche quant à elle, vient minimiser les
interactions distantes. Cependant, l'utilisation d'un agent mobile montre
quelques faiblesses :
· L'agent effectue un cumul de données
précédemment collectées. Ce qui peut causer une saturation
(Plantage) du réseau.
· Elle ne met pas à profil les notions de calcul
parallèle afin de minimiser le temps d'exécution.
Ainsi, il sera souhaitable de penser à un schéma
organisationnel qui apporte des améliorations à ces
manquements.
Chapitre III. Modélisation et
spécification
|
Dans ce chapitre, nous proposons un schéma
organisationnel qui permet une gestion optimale de la bande passante. De plus,
nous montrerons l'amélioration de l'application de collecte de documents
via ce schéma.
Ensuite, nous établirons une comparaison avec les
stratégies de mobilité existante. Enfin, nous présenterons
le formalisme de notre schéma organisationnel.
|