Selected papers - Garr
Selected papers - Garr
Selected papers - Garr
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
60<br />
Si intende per Agente Mobile un’applicazione<br />
software in grado di spostarsi autonomamente,<br />
con il suo codice e lo stato della sua computazione,<br />
su un diverso nodo della rete. Tali<br />
applicazioni sono sviluppate utilizzando una<br />
tecnologia che garantisce la portabilità, ovvero<br />
la possibilità di eseguire indipendentemente<br />
dalla piattaforma hardware/software ospite.<br />
Utilizzando la tecnologia JAVA, l’agente è in<br />
grado di spostarsi sul terminale cliente ed effettuare<br />
operazioni di profilazione e di riconfigurazione<br />
del dispositivo. In figura 3 è rappresentata<br />
l’architettura di riferimento e viene illustrato<br />
il prototipo sviluppato per la ricerca e<br />
l’adattamento di documenti MAG e delle immagini<br />
da loro riferite.<br />
Proxy Client<br />
Session<br />
Manager<br />
Proxy Server<br />
Adapter<br />
Session Manager<br />
Web Server<br />
LC3 Database<br />
IMAGE<br />
IMAGES<br />
Fig. 3 Prototipo per la ricerca e l’adattamento di documenti MAG<br />
e delle immagini da loro riferite<br />
Il terminale invia le richieste al fornitore di<br />
servizi. Un proxy in esecuzione in locale inserisce<br />
nell’header HTTP un link che punta a<br />
un file statico o a un servizio di profilazione.<br />
Un sistema proxy lato server intercetta le richieste<br />
e recupera il profilo associandolo alla<br />
sessione dell’applicazione remota. In questo<br />
modo vengono associati in maniera trasparente<br />
profili e sessioni. Quando una richiesta<br />
fa riferimento ad una risorsa che non deve essere<br />
adattata, viene effettuato un forward direttamente<br />
all’applicazione che eroga il servizio/risorsa.<br />
Quando è necessario un adattamento,<br />
viene invece configurato un tunneling<br />
attraverso una catena di adattatori. Lungo il<br />
percorso diretto è possibile condizionare una<br />
richiesta selezionando la risorsa meglio fruibile.<br />
Lungo il percorso inverso è possibile tra-<br />
sformare la risorsa ottenuta secondo i parametri<br />
del profilo.<br />
Nell’ambito del progetto è stato realizzato<br />
un sistema avanzato di profilazione, che utilizza<br />
la tecnologia ad agenti mobili. Il sistema<br />
di profilazione è costituito fondamentalmente<br />
da quattro agenti software che interagiscono<br />
tra loro:<br />
- l’Agente Driver, è l’agente mobile che interfaccia<br />
l’entità che richiede il servizio (in genere<br />
un provider) e il profilatore;<br />
- l’Agente Server, è l’agente che coordina le<br />
diverse richieste di profilazione. Ha il compito<br />
di identificare, in base alle informazioni<br />
raccolte, i servizi e le librerie necessarie. È<br />
inoltre responsabile della fornitura delle librerie,<br />
nonché della loro collocazione all’interno<br />
del server;<br />
- l’Agente SimpleProfile, è l’agente che viene<br />
inviato sul dispositivo per una prima caratterizzazione:<br />
fornisce le informazioni basilari<br />
sulla configurazione del terminale ed è<br />
responsabile del download ed installazione<br />
dei moduli software aggiuntivi;<br />
- l’Agente TotalProfile, effettuata una prima<br />
caratterizzazione di alto livello, richiede, installa<br />
e usa librerie specializzate per il dispositivo,<br />
per accedere a informazioni che<br />
l’agente SimpleProfile non è in grado di<br />
ottenere.<br />
Il servizio di profilazione è esportato sia con<br />
un’interfaccia Web Services standard, tramite<br />
i metodi che questo espone pubblicamente,<br />
sia con una interfaccia ACL (Agent Communication<br />
Language), in modo da garantire<br />
l’interoperabilità con altri sistemi ad agenti<br />
conformi allo standard FIPA e con altre tecnologie.<br />
Ogni profilatore pubblica il particolare<br />
servizio di profilazione implementato nel DF<br />
(Directory Facilitator), un registro dei servizi.<br />
L’applicazione richiede all’entità Profiler<br />
le informazioni circa il client che accede al<br />
servizio. L’agente Total Profile utilizza i meccanismi<br />
base java per raccogliere informazioni<br />
sulla tipologia di architettura hardware, sul-