B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
BiblioService Prototipo di un sistema per la ricerca tramite parole chiave e la successiva consultazione di articoli in formato elettronico
Funzionalità del servizio Input Parole chiave, facoltative, fino ad un massimo di tre Credenziali dell’utente, facoltative Periodici a cui estendere la ricerca Output Successo: informazioni relative agli articoli recuperati Fallimento: Nessun risultato trovato Errore occorso durante la ricerca
Architettura generale Applicazione distribuita Client Server di riferimento Server di catalogazione dei periodici SERVER DI RIFERIMENTO CLIENT 1 CLIENT 3 CLIENT 2 NODO RIVISTA 1 NODO RIVISTA 3 NODO RIVISTA 2 … …
Tecnologie Agenti mobili Interrogazioni distribuite Elaborazioni locali alle risorse Centri di tuple Comunicazione Coordinazione Archiviazione informazioni
Schema di funzionamento SERVER DI RIFERIMENTO CLIENT NODO RIVISTA 1 NODO RIVISTA 2 NODO RIVISTA 3 SPAZIO DI TUPLE: RISULTATI SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ABBONAMENTI SOTTORETE SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ARTICOLI
Ruoli generici Client Connessione al server di riferimento Per ogni ricerca: Raccogliere i parametri Creare e configurare un agente Inoltrare l’agente al server di riferimento Server di riferimento Gestire la sottorete e le connessioni dei client Per ogni ricerca: Verificare eventuali abbonamenti Inoltrare l’agente verso i nodi d’interesse Nodi dedicati ai periodici Gestire le risorse di propria competenza Consentire l’esecuzione di ricerche su di esse
Protocollo di ricerca SERVER DI RIFERIMENTO CLIENT NODO RIVISTA 1 NODO RIVISTA 2 NODO RIVISTA 3 SPAZIO DI TUPLE: RISULTATI SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ABBONAMENTI SOTTORETE SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ARTICOLI Creazione agente Impostazione parametri: − [keywords] − [credenziali] − riviste Inoltro [Verifica abbonamenti dell’utente] Recupero indirizzi fisici dei nodi d’interesse Avvio della ricerca
Protocollo di ricerca SERVER DI RIFERIMENTO CLIENT NODO RIVISTA 1 NODO RIVISTA 2 NODO RIVISTA 3 SPAZIO DI TUPLE: RISULTATI SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ABBONAMENTI SOTTORETE SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ARTICOLI Effettua ricerca [Inoltra risultati]
Protocollo di ricerca SERVER DI RIFERIMENTO CLIENT NODO RIVISTA 1 NODO RIVISTA 2 NODO RIVISTA 3 SPAZIO DI TUPLE: RISULTATI SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ABBONAMENTI SOTTORETE SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ARTICOLI Effettua ricerca [Inoltra risultati]
Protocollo di ricerca SERVER DI RIFERIMENTO CLIENT NODO RIVISTA 1 NODO RIVISTA 2 NODO RIVISTA 3 SPAZIO DI TUPLE: RISULTATI SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ABBONAMENTI SOTTORETE SPAZIO DI TUPLE: ARTICOLI SPAZIO DI TUPLE: ARTICOLI
Tolleranza ai guasti della sottorete Fallimento dei nodi intercettato dal server di riferimento Aggiornamento delle strutture dati opportune Ricerche già avviate su quel nodo Falliscono se: Agente in esecuzione sul nodo L’agente ha l’indirizzo fisico del nodo e tenta di raggiungerlo dopo che si è verificato il guasto Terminano con successo se: Nodo già visitato Indirizzo fisico non ancora recuperato
Scelte implementative Linguaggio di programmazione Java Supporto per agenti mobili e centri di tuple K LAVA
Conclusioni ed estensioni future BiblioService è un punto di partenza per la realizzazione completa del servizio Abbastanza robusto rispetto ai principali scenari di fallimento Protocolli definiti per comunicazione e coordinazione Estensioni future Criteri di ricerca Efficienza e tempi di risposta Sicurezza