tutor: ing. dario bottazzi gruppo: emanuele colombini, francesco ferri, gianpiero napoli
Post on 02-Jan-2016
31 Views
Preview:
DESCRIPTION
TRANSCRIPT
Progetto di Reti di Calcolatori LS Colombini Emanuele
Tutor:
Ing. Dario Bottazzi
Gruppo:
Emanuele Colombini, Francesco Ferri, Gianpiero Napoli
Middleware Samoa(Socially-Aware and MObile Architecture)
Progetto di Reti di Calcolatori LS Colombini Emanuele
Reti socialiReti socialiRete sociale:• Rete di utenti legati mediante relazioni sociali
• Amicizia• Lavoro• Interessi comuni• Conoscenza
Strumenti internet based• Strumenti utilizzati per costruire reti sociali sfruttando il web. Permettono la creazione di comunità di utenti aventi i medesimi interessi• vantaggi:
1. Slegati dalla località: permettono di andare oltre i limiti spaziali2. Molto variegati: esistono soluzioni diverse per adattarsi ai vari interessi degli utenti3. Semplici da usare: gli utenti non devono far altro che specificare i propri interessi in profili
• limiti:1. Conoscenza limitata: il compito di conoscere altre persone è a carico degli utenti2. Slegati dalla località: non tengono in considerazione il contesto dell’utente3. Soluzioni special purpose: solitamente sono difficilmente adattabili ad altre applicazioni
Esempi:• Myspace: 107 milioni di utenti• Facebook: 73 milioni di utenti
Progetto di Reti di Calcolatori LS Colombini Emanuele
SamoaSamoa
Soluzione a Middleware• Rende facile la prototipazione delle applicazioni per il social computing• Permette al programmatore di trascurare la gestione della rete sociale• E’ riutilizzabile per altre applicazioni solamente cambiandone la configurazione
Mobilità• Sfrutta la tecnologia dei nuovi dispositivi portatili• La rete segue l’utente aggiornando automaticamente la sua struttura
Prossimità• La rete è popolata dalle entità presenti nella medesima località in cui si trova l’utente
Approccio semantico• Usa algoritmi di matching semantico per identificare gli utenti di una rete sociale• A differenza delle soluzioni internet based, non è necessario conoscere a priori i partecipanti della rete
Anytime & Anywhere computing• Non è necessaria la presenza della rete internet. • La rete sociale che viene a crearsi è fortemente dipendente dal luogo in cui si sviluppa.
Definizione: Middleware per creare reti sociali semantiche in ambienti mobili, in qualsiasi momento e luogo.
Obiettivo: semplificare la creazione delle applicazioni senza preoccuparsi degli aspetti legati
alla gestione della rete sociale
Progetto di Reti di Calcolatori LS Colombini Emanuele
Entità SamoaEntità SamoaEgo-User
Utilizzatore del sistema, specifica i propri interessi e le relative preferenze
• La rete sociale SAMOA è formata dal gruppo di utenti che si trovano tutti nella località dell’ego-user e ne condividono gli interessi
• Ogni ego-user può costruire e/o essere membro di una rete sociale. Egli può pertanto interpretare uno o più dei seguenti ruoli previsti:
Clients• Generico utente SAMOA, potenziale membro della rete.
Member• Utente SAMOA che ha superato il test semantico ed è entrato a far parte della rete sociale
Manager• Ego-user intenzionato a costruire una propria rete sociale, per la quale deve specificare i criteri• Non ci sono limitazioni alla figura del manager: può essere un utente o una macchina, mobile o fisso.
Progetto di Reti di Calcolatori LS Colombini Emanuele
Profili SamoaProfili Samoa
User Profile• contiene la lista degli interessi dell’ego-user e le attività da lui svolte, specificando ove necessario le preferenze
Place Profile• descrive la località in cui si sviluppa la rete sociale. • contiene la lista delle attività scelte dal manager per la propria rete sociale• agisce come primo filtro per l’individuazione dei membri della rete
Discovery Profile• indica i criteri scelti dal manager per popolare la propria rete sociale• contiene le preferenze sulle attività specificate nel PlaceProfile• agisce come secondo filtro per l’individuazione dei membri della rete
Personal Identifier• identificatore che rappresenta univocamente l’utente
Indipendentemente dal ruolo, ogni utente deve fornire le seguenti informazioni:
Ogni Manager deve inoltre specificare i criteri per costruire la propria rete sociale:
Progetto di Reti di Calcolatori LS Colombini Emanuele
Modello della rete socialeModello della rete sociale
Località
Rete sociale
Place Profile
Discovery Profile
Clients
Members
Manager
Progetto di Reti di Calcolatori LS Colombini Emanuele
Architettura del MiddlewareArchitettura del Middleware
JVM – OS – HW – Network
APPLICATION
location/proximity manager
message transport manager
semantic matching engineprofile manager
global social network manager
place-dependent social network
manager
Social NetworkManagement Layer
Basic ServiceLayer
Progetto di Reti di Calcolatori LS Colombini Emanuele
Basic Service LayerBasic Service LayerMessage Transport Manager (MTM)• Effettua le comunicazioni con le altre entità SAMOA
punto – punto: unicast punto – multipunto: broadcast
• Per le comunicazioni broadcast in ambienti ad hoc viene usato un protocollo di flooding controllato
Location/Proximity Manager (LPM)• Percepisce la presenza di altri utenti SAMOA
memorizza PID ed indirizzo IP degli utenti riconosciuti
• Riconosce quando un utente esce dal raggio d’azione del manager
• Rende nota la presenza dell’ego-user alle altre entità SAMOA gestisce la dimensione del raggio d’azione della rete
Progetto di Reti di Calcolatori LS Colombini Emanuele
Social Network Management LayerSocial Network Management LayerProfile Manager (PM)• Gestisce i profili dell’ego-user• Si coordina con il LPM per riconoscere l’ingresso o l’uscita degli utenti• Gestisce le comunicazioni per il protocollo semantico di inserimento nella rete sociale
Collabora con lo SME per l’uso degli algoritmi semantici
Semantic Matching Engine (SME)• Fornisce gli algoritmi semantici utilizzati dal protocollo del PM
Algoritmo 1: le attività dell’utente sono confrontate con quelle dell’ego-user. L’output dell’algoritmo è composto dalle attività che utente ed ego-user hanno in comune. Algoritmo 2: sono confrontate le preferenze dell’utente con quelle indicate dall’ego-user. L’output dell’algoritmo è un booleano che indica se l’utente è idoneo ad entrare nella rete sociale
Place-dependent Social Network Manager (PSNM)• Contiene i dati relativi a tutti gli attuali utenti della rete sociale• Ha il compito di informare il livello applicativo dell’ingresso o dell’uscita di un utente dalla rete sociale
Global Social Network Manager (GSNM)• Memorizza i profili degli utenti che hanno fatto parte di una rete sociale del manager• Memorizza anche i PP ed i DP che hanno portato all’inserimento dell’utente
Progetto di Reti di Calcolatori LS Colombini Emanuele
ImplementazioneImplementazioneProfile Manager (PM)• Servizio attivo• Rimane in ascolto per l’ingresso di nuovi clienti nel raggio d’azione della rete dal LPM• Comunica con i servizi PM delle altre entità SAMOA con le quali entra in contatto• Utilizza i canali di comunicazione messi a disposizione dal MTM• Ritrasmissioni nel caso il protocollo di comunicazione non termini in modo corretto• Invio dei soli dati necessari. Utilizzo dei profili memorizzati dal GSNM quando possibile
Semantic Matching Engine (SME)•Servizio attivo per accesso in mutua esclusione• Implementazione degli algoritmi 1 e 2 provvisoria
LPM PM
GSNM
PSNM
SME
MTM
PM
net
Progetto di Reti di Calcolatori LS Colombini Emanuele
Profile ManagerProfile Manager
PM: ricezione nuovo utente
PM: Invio PP al nuovo utente
PM: Ricezione PP
SME: Algoritmo1(PP, UP)
PM: Invio UMPPM: Ricezione
UMP
SME: Algoritmo2 (UMP, DP)
Entrato nella rete sociale?
PSNM: Aggiungi nuovo utente alla
rete sociale
PM: Invia risposta a utente
PM: Ricezione risposta
No
Si
Ma
na
ger
Clie
nt
PM: Protocollo di inserimento utente
Progetto di Reti di Calcolatori LS Colombini Emanuele
SME algoritmo 1SME algoritmo 1C
lien
t
Algoritmo1: Creazione nuovo
UMP
Altre Attività?(PlaceProfile)
Relazione attività?
Si
Algoritmo1: Restituzione UMP
No
No
Aggiunta preferenze utente
ad UMP
SI
PP manager
UP client
UMP client
SME algoritmo 1:Vengono confrontate le attività richieste dal manager con quelle indicate dal cliente nel proprio UP. Le due attività sono in relazione quando:
• l’attività del manager è la stessa attività del cliente• l’attività del cliente è dipendente dall’attività specificata dal manager
Progetto di Reti di Calcolatori LS Colombini Emanuele
SME algoritmo 2SME algoritmo 2
Algoritmo2(UMP, DP)
UMP vuoto? Return False
Altre Attività?
Si
No
Match ok?
Si
Return FalseNo
Return TrueNo
Si
Ma
na
ger
SME algoritmo 2:Nell’ambito delle attività in comune contenute nel UMP, vengono confrontate le preferenze dell’utente con quelle del manager. Le preferenze sono in relazione quando:
• manager e utente specificano la stessa preferenza• la preferenza del client specifica quella indicata dal manager• la preferenza del client è una generalizzazione di quella specificata dal manager
DP manager
UMP client
Progetto di Reti di Calcolatori LS Colombini Emanuele
Caso di studio: Viral MarketingCaso di studio: Viral Marketing
Applicazione: SoNet Per simulare le capacità di SAMOA è stata realizzata un’applicazione pensata apposta per i dispositivi wireless portatili.
• visualizza gli utenti che fanno parte della propria rete sociale• permette di entrare in contatto con loro mediante l’invio e la ricezione di messaggi• invia messaggi informativi ai nuovi entranti della rete sociale
Caso di studio: Viral MarketingPer mostrare le capacità di SAMOA è stato realizzato un caso di studio di viral marketing. Gli utenti, passando vicino ai negozi delle vie del centro, vengono informati con un messaggio pubblicitario quando i loro interessi combaciano con i prodotti venduti dal negozio stesso. Oltre a questo scambio, le applicazioni realizzate mantengono in memoria le pubblicità e le inviano ad altri utenti SAMOA che entrano a far parte delle loro reti sociali. Questo mostra come un informazione possa passare attraverso persone che hanno gli stessi interessi, anche senza che questi si conoscano preventivamente.
Progetto di Reti di Calcolatori LS Colombini Emanuele
Caso di studio: iterazioneCaso di studio: iterazione
PP manager
presence beaconUMP client
Manager Client
ManagerClient
1) Un passante entra nel raggio d’azione di un negozio ed invia il suo PresenceBeacon
2) Inizia il protocollo gestito dal PM per decidere se l’utente può entrare a far parte della rete sociale o meno
3) Al termine del protocollo, se l’esito è stato positivo, il negozio invia la pubblicità al passante e lo inserisce nella propria rete sociale
Negozio Passante
4) Contemporaneamente anche il passante esamina il negozio. Di norma i negozi sono rappresentati da entità SAMOA automatiche e non entrano nelle reti sociali altrui
Progetto di Reti di Calcolatori LS Colombini Emanuele
FineFine
Grazie della cortese attenzione
top related