Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGemma Giuseppe Modificato 10 anni fa
1
Middleware di Discovery Avanzato Di Giuseppe Tomaiuoli Mat 0196947 Reti di Calcolatori LS 2005-06 Prof. Ing. Antonio Corradi
2
Team Giuseppe Tomaiuoli mat 0196947 Email giuseppe.tomaiuoli@studio.unibo.itgiuseppe.tomaiuoli@studio.unibo.it Simone Masini mat 0197130 Email simone.masini@studio.unibo.itsimone.masini@studio.unibo.it Referente Ing. Toninelli Alessandra
3
Visione e Collocazione Un Middleware di Discovery che consenta di trovare il servizio che realmente stai cercando in base alle caratteristiche esplicite ed implicite di cui hai bisogno, sempre ed ovunque. Obiettivo del progetto è la realizzazione di un Middleware per il Discovery Avanzato di servizi messi a disposizione dai Fornitori. Il Discovery è Avanzato in quanto tiene in considerazione informazioni aggiuntive rispetto ai normali servizi di Discovery: le preferenze dellUtente, le caratteristiche dei dispositivi, le credenziali, la località altro. Il Progetto si colloca nellambito dellambiente Peer-to-Peer(P2P) che presenta numerose soluzioni e diversi protocolli per limplementazione del Discovery. Tra queste soluzioni si sono rivelate di particolare interesse JXTA e UPnP.
4
Agenda Analisi e Studio di Fattibilità Progetto JXTA Architettura Logica del Middleware di Discovery Avanzato (MDA) Supporto Legacy JXTA e altri protocolli (UPnP) Accesso al MDA Bilanciamento del Carico del Middleware (coordinamento e sincronizzazione) Gestione Profili (Fault Tolerance: Persistenza, Replicazione) Personalizzazione della Richiesta (località, dispositivo corrente, caratteristiche HW e SW) Implementazione della Metodologia di Ricerca (matching) Access Control List o Capability List (Al Servizio del Fornitore) Publish/Subscribe Gestione Carico e Liveness dei Servizi Caching dei Servizi sul Lato Utente Raccolta di Informazioni per Stilare Statistiche Configurazione e Test Conclusioni e Sviluppi Futuri
5
Analisi e Studio di Fattibilità UPnP: Protocollo proprietario; Consorzio di Aziende; Iter per la definizione di nuovi profili. JXTA: Open Source; Profili con caratteristiche più flessibili; Elementi XML. Architettura Unificante: Problemi di compatibilità; Overhead; Diversi Adattatori. Scelta: Protocollo JXTA con eventuali Bridge per gli altri protocolli.
6
JXTA Interoperability Platform Indipendence Ubiquity
7
Architettura Logica del Middleware
8
Supporto Legacy JXTA e altri protocolli (UPnP) Protocollo del progetto JXTA; Linguaggio di programmazione: JAVA; IDE: Eclipse; Richieste Standard JXTA; Profili JXTA preesistenti; Bridge per altri protocolli: PeerMDAFornitore (UPnP)
9
Bilanciamento del Carico del Middleware (coordinazione e sincronizzazione) Struttura distribuita: Coordinazione e Sincronizzazione; Politica di Bilanciamento del carico: nuovi compiti al meno carico; Mezzo: PeerInfoService di JXTA e Monitor; Come: Somma del traffico sui canali; Dove: MDAUtente fra i PeerMDAUtente; MDAFornitore fra i PeerMDAFornitore; PeerMDAUtente fra i PeerMDAInfrastruttura. MDAUtente MDAFornitore Accesso al MDA
10
Gestione Profili (Fault Tolerance: Persistenza, Replicazione) Profili memorizzati da: PeerMDAUtente; PeerMDAFornitore. Mezzo: direttori, Xindice (Apache). Classe: XindiceManager; Dove: Locale; Copia Attiva; Copia Non Attiva; Politica: Se presente in locale (Copia Attiva); Se non presente in locale: Se trova Attiva; Se non trova Attiva: –Se trova Non Attiva; –Se non trova Non Attiva;
11
Access Control List o Capability List (Al Servizio del Fornitore) Politiche dei Diritti di Accesso: FREE; KEY; PAY-PER-SERVICE; Dove: Profilo Servizio; Profilo Utente, parte dinamica. Publish/Subscribe Caratterizzazione dei Servizi: Categorie; Utente: richiesta di sottoscrizione ad una Categoria al MDAUtente; Dove: GroupMDAUtente; Mezzo: NewsADV; Chi Pubblica: PeerMDAFornitore;
12
Sviluppati dai Colleghi Personalizzazione della Richiesta (località, dispositivo corrente, caratteristiche HW e SW) Estensione delle caratteristiche della richiesta da JXTA (solo nome Servizio) a Discovery Avanzato che tiene conto di informazioni Statiche e Dinamiche (località, dispositivo) riguardanti le preferenze dellutente e altre caratteristiche HW e SW inglobate nella richiesta sia in modo esplicito che implicito. Implementazione della Metodologia di Ricerca (matching) Estensione del confronto a tutte le caratteristiche definite nella richiesta e nel profilo del Servizio. Tra queste ultime ci saranno alcune ritenute necessarie e altre meno rilevanti. (Profilo e Servizio). Gestione Carico e Liveness dei Servizi Controllo del carico del singolo Servizio per evitare di sovraccaricare un servizio se cè unalternativa e delleffettiva presenza del Fornitore per evitare di presentare soluzioni non più disponibili. Modalità Push/Pull.
13
Configurazione e Test Sistema Distribuito Rete Virtuale JXTA Inizializzatore + Due entità di ogni tipo Test in LAB2 Tempo di Risposta LogFiles: GroupCreator TestFornitori Utenti TestPeerUtente TestPeerFornitore TestPeerInfrastruttura
14
GroupMDAInfrastruttura GroupMDAUtenti PeerMDAUtente MDAUtente Utent e GroupMDAFornitori creaProfilo getRemoteAdv(xml) modificaProfilo … Informazioni caratteristiche servizio + Informazioni dinamiche Informazioni caratteristiche servizio + Informazioni dinamiche + Informazioni profilo utente GroupCategoria 1 PeerMDAInfrastruttura Fornitore MDAFornitore Informazioni caratteristiche servizio creaProfilo publishAdv(xml) modificaProfilo … Informazioni caratteristiche servizio + Informazioni dinamiche PeerMDAFornitore PeerMDAFornitore (bridge) Informazioni caratteristiche servizio + Informazioni dinamiche + Informazioni profilo fornitore GroupPublishSubscrib e Modifica categoria1 Altri JXTA Group Servizi descritti con altri protocolli (UPnP) PeerMDAInfrastruttura
15
Conclusioni e Sviluppi Futuri Obiettivi proposti e realizzati: Discovery Avanzato: Personalizzazione Esplicita, Implicita, Hardware e Software; Profili; JXTA; Supporto Legacy e altri Protocolli (UPnP); QoS: LoadBalancing; Politica del meno carico. Publish/Subscribe. Da realizzare: Sicurezza; Caching dei Servizi sul Lato Utente; Raccolta di Informazioni per Stilare Statistiche.
16
Fine Any Questions?
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.