SlideShare a Scribd company logo
1 of 25
Prometheus: User-Controlled P2P
Social Data Management
for Socially-aware Applications
Nicolas Kourtellis, Joshua Finnis,
Paul Anderson, Jeremy Blackburn,
Cristian Borcea*, Adriana Iamnitchi
Department of Computer Science and Engineering, USF
*Department of Computer Science, NJIT
ACM/IFIP/USENIX 11th International Middleware Conference, 2010
2
Social and Socially-aware Applications
Applications may contain user profiles, social networks,
history of social interactions, location, collocation
3
Problems with Current Social
Information Management
 Application specific:
 Need to input data for each new application
 Cannot benefit from information
aggregation across applications
 Typically, data are owned by applications:
users don't have control over their data
 Hidden incentives to have many "friends":
social information not accurate
4
Our Solution: Prometheus
 P2P social data management service:
 Receives data from social sensors that collect
application-specific social information
 Represents social data as decentralized social graph
 Exposes API to share social information with
applications according to user access control policies
SOCIAL
SENSORS
SOCIALLY-
AWARE APPS
CallCensor
Foursquare`
`` `
`
`
`
PROMETHEUS
Loopt
5
Outline
 Motivation
 Social Graph Management
 API and Access Control
 Prototype Implementation
 Evaluation over PlanetLab
 Summary
 Future Work
6
How is the Social Graph Populated?
 Social sensors report edge information to
Prometheus:
<ego, alter, activity, weight>
 Applications installed by user on personal devices
 Aggregate & analyze history of user's interactions with
other users
 Two types of social ties:
 Object-centric: use of similar resources
 Examples: tagging communities on Delicious,
repeatedly being parts of the same BitTorrent swarms
 People-centric: pair-wise or group relationships
 Examples: friends on Facebook, same company name
on LinkedIn, collocation from mobile phones
7
Social Graph Representation
 Multi-edged, directed, weighted, labeled graph
 Each edge → a reported social activity
 Weight → interaction intensity
 Directionality reflects reality
 Allows for fine-grain privacy
 Prevents social data manipulation
8
Decentralized Graph Storage
 Each user has a set of trusted peers in the P2P network
 Peers it owns & peers owned by trusted users
 Each user’s sub-graph stored on all its trusted peers
 Improved availability in face of P2P churn
 P2P multicast used to synchronize information among
trusted peers
User
ID
Owns
Peer
Trust
Peer
A --- 1,2
B 1 1,2
C 2 1,2,3
D 3 2,3,4,5
E 4 3,4
F 5 3,5
ALL PEERS
A
C F
EB
D
<music,0.15>
<m
usic,0.25>
<football,0.3>
<m
usic,0.1>
<football,0.2>
<m
usic,0.1>
<hiking,0.25>
<football,0.3>
<m
usic,0.3>
<football,0.3>
<music,0.2>
<football,0.3>
<m
usic,0.25>
<hiking,0.3>
<football,0.3>
<m
usic,0.1>
<hiking,0.2>
PEER 1
A
C
B
D
<music,0.15>
<m
usic,0.25>
<football, 0.3>
<m
usic, 0.1>
<football, 0.2>
<m
usic, 0.1>
<hiking,0.25>
<football,0.3>
<music,0.3>
<football,0.2>
<football,0.3>
<music,0.2>
<football,0.2>
<football,0.1>
E
9
Encrypted P2P Storage
 Sensor data stored encrypted in P2P network
 Improves availability and protects privacy
 Sensors encrypt data with trusted group public key &
sign with user private key
 Trusted peers retrieve user data, decrypt it, & create
social graph
Group
Public Key
Private Key
User
Public Key
Private Key
10
Outline
 Motivation
 Social Graph Management
 API and Access Control
 Prototype Implementation
 Evaluation over PlanetLab
 Summary
 Future Work
11
Prometheus Application Interface
 Five social inference functions:
 Boolean relation_test (ego, alter, ɑ, w)
 User-List top_relations (ego, ɑ, k)
 User-List neighborhood (ego, ɑ, w, radius)
 User-List proximity (ego, ɑ, w, radius, distance)
 Double social_strength (ego, alter)
 Ego & alter don’t have to be directly connected
 Normalized result: consider ego’s overall activity
 Search all 2-hop paths
12
Application Example: CallCensor
 Socially-aware incoming call filtering
 Ring/vibrate/silence phone based on current social
context and relationship with caller
 Invokes
 proximity() to determine current social context
 social_strength() to determine relationship with caller
13
Request Execution: social_strength()
1st hop
2nd hop1st hop
1. Application sends request to a peer
2. Peer forwards request to trusted peer
3. Trusted peer enforces ACPs
4. Trusted peer sends secondary requests
5. Trusted peers enforce ACPs & reply
6. Primary peer combines results
7. Primary peer replies to application
through contacted peer with final result
14
Access Control Policies
 User specifies ACPs upon registration
 ACPs stored on user’s trusted peer group
 Update them at any time
 Changes propagated through multicast mechanism
 Applied for each inference request
 Control relations, labels, weights & locations
Example: Alice’s ACPs
relations: hops-2
hiking-label: lbl-hiking
work-label: lbl-work
general-label: ---
weights: ---
location: hops-1
blacklist: user-Eve
15
Outline
 Motivation
 Social Graph Management
 API and Access Control
 Prototype Implementation
 Evaluation over PlanetLab
 Summary
 Future Work
16
Prototype Implementation
 FreePastry Java implementation with support for
 DHT (Pastry)
 P2P storage (Past)
 Multicast (Scribe)
 Social graph management implemented in Python
17
Evaluation over PlanetLab
 Goals:
1. Assess performance under realistic network
conditions (peers distributed around the world)
2. Assess performance at large scale using realistic
workloads with large number of users
3. Assess the effect of socially-aware mapping of
users onto trusted peers on system’s performance
4. Validate Prometheus with socially-aware
application under real-time constraints (CallCensor)
 Metric: end-to-end response time
18
Large-Scale Evaluation Setup
 100 PCs around the globe
 RTT~200-300ms
 1000 users: synthetic social graph
 Random vs. socially-aware trusted peer assignment
 10 & 30 users assigned per peer
 Workloads for:
 Social sensor inputs based on Facebook study
 Neighborhood requests based on Twitter study
 Social strength requests based on BitTorrent study
 Applied a timeout of 15 seconds to fulfill a 1-hop
request in PlanetLab
19
Neighborhood Request Results
 Socially-aware assignment of users onto peers results in faster
response time
 Message overhead reduced by an order of magnitude
 Replication for improved availability does not induce high overhead
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 10,000 20,000 30,000
CDF
End-to-end response time (msecs)
Neighborhood Requests (10 users/peer)
random - 1hop
random - 2hop
random - 3hop
social - 1hop
social - 2hop
social - 3hop
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 10000 20000 30000
CDF
End-to-end response time (msecs)
Neighborhood Requests (30 users/peer)
random - 1hop
random - 2hop
random - 3hop
social - 1hop
social - 2hop
social - 3hop
20
Social Strength Request Results
 Similar performance with 2-hop Neighborhood Requests
 Search all 2-hop paths from source to destination
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
0 10000 20000
CDF
Average end-to-end response time (msecs)
Social Strength Requests
random - 10 users per peer
random - 30 users per peer
social - 10 users per peer
social - 30 users per peer
21
CallCensor Evaluation Setup
 CallCensor implemented and
tested on Nexus Android phone
 100 users: real social graph
 Volunteer students from NJIT
 Two social sensors
 Collocation from Bluetooth
 45 & 90 minutes threshold
 Friendship from Facebook
 3 USA PlanetLab peers
 Socially-aware trusted peer
assignment
22
CallCensor Results
 Met real-time performance constraint: response arrives before
call forwarded automatically to voicemail
23
Summary
 Users of Prometheus:
 Decide what personal social data are collected by
installing/configuring social sensors
 Cooperate to store and manage their social data in
a decentralized fashion
 Own and control access to their data
 Prometheus enables:
 Socially-aware applications that utilize social data
collected from multiple sources
 Accurate social world representation through multi-
edged, labeled, directed and weighted graph
 Improved performance through socially-aware P2P
system design
24
Future Work
 Improve Prometheus performance
 Network optimizations
 Caching of inference request results
 Develop new social sensors
 Develop new socially-aware applications &
services
 Study tolerance to malicious attacks
 Exposure of social information to
intermediate peers during request execution
 Manipulation of social connections to alter
the structure of the social graph
25
Thank you!
This work was supported by NSF Grants:
CNS 0952420, CNS 0831785, CNS 0831753
http://www.cse.usf.edu/dsg/mobius
nkourtel@mail.usf.edu

More Related Content

Viewers also liked

MN Coding Conference 2016 Kurland Talk
MN Coding Conference 2016 Kurland TalkMN Coding Conference 2016 Kurland Talk
MN Coding Conference 2016 Kurland Talk
Joe Kurland
 

Viewers also liked (14)

Ahorrobombas
AhorrobombasAhorrobombas
Ahorrobombas
 
Introduction aux leçons
Introduction aux leçonsIntroduction aux leçons
Introduction aux leçons
 
Plano de negócio franquia GRUPONS
Plano de negócio franquia GRUPONSPlano de negócio franquia GRUPONS
Plano de negócio franquia GRUPONS
 
Segunda guerra mundial
Segunda guerra mundialSegunda guerra mundial
Segunda guerra mundial
 
Real-world Challenges and Opportunities in Degradation Rate Analysis for Comm...
Real-world Challenges and Opportunities in Degradation Rate Analysis for Comm...Real-world Challenges and Opportunities in Degradation Rate Analysis for Comm...
Real-world Challenges and Opportunities in Degradation Rate Analysis for Comm...
 
ACR Strategies - Increase Church Visitors
ACR Strategies - Increase Church VisitorsACR Strategies - Increase Church Visitors
ACR Strategies - Increase Church Visitors
 
(서울이태원초 강윤지)발표자료 20161219
(서울이태원초 강윤지)발표자료 20161219(서울이태원초 강윤지)발표자료 20161219
(서울이태원초 강윤지)발표자료 20161219
 
MN Coding Conference 2016 Kurland Talk
MN Coding Conference 2016 Kurland TalkMN Coding Conference 2016 Kurland Talk
MN Coding Conference 2016 Kurland Talk
 
Wn ppt (1)
Wn ppt (1)Wn ppt (1)
Wn ppt (1)
 
python
pythonpython
python
 
Calendrier Sportif EDR (2017)
Calendrier Sportif EDR (2017)Calendrier Sportif EDR (2017)
Calendrier Sportif EDR (2017)
 
Σπύρος Σκουμπάκης
Σπύρος ΣκουμπάκηςΣπύρος Σκουμπάκης
Σπύρος Σκουμπάκης
 
Sallux folder A5
Sallux folder A5Sallux folder A5
Sallux folder A5
 
e-government
e-governmente-government
e-government
 

Similar to Prometheus: User-Controlled P2P Social Data Management for Socially-aware Applications

Inferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
Inferring Peer Centrality in Socially-Informed Peer-to-Peer SystemsInferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
Inferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
Nicolas Kourtellis
 
iMinds The Conference: Danny Hughes
iMinds The Conference: Danny HughesiMinds The Conference: Danny Hughes
iMinds The Conference: Danny Hughes
imec
 
ISDA 2011 Cordoba
ISDA 2011 CordobaISDA 2011 Cordoba
ISDA 2011 Cordoba
Andrea Zaza
 

Similar to Prometheus: User-Controlled P2P Social Data Management for Socially-aware Applications (20)

Inferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
Inferring Peer Centrality in Socially-Informed Peer-to-Peer SystemsInferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
Inferring Peer Centrality in Socially-Informed Peer-to-Peer Systems
 
iMinds The Conference: Danny Hughes
iMinds The Conference: Danny HughesiMinds The Conference: Danny Hughes
iMinds The Conference: Danny Hughes
 
PhD Defense of Teodoro Montanaro
PhD Defense of Teodoro MontanaroPhD Defense of Teodoro Montanaro
PhD Defense of Teodoro Montanaro
 
Mobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile AgentsMobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile Agents
 
Testing Vitality Ranking and Prediction in Social Networking Services With Dy...
Testing Vitality Ranking and Prediction in Social Networking Services With Dy...Testing Vitality Ranking and Prediction in Social Networking Services With Dy...
Testing Vitality Ranking and Prediction in Social Networking Services With Dy...
 
Football League Management System Final Year Report
Football League Management System Final Year ReportFootball League Management System Final Year Report
Football League Management System Final Year Report
 
Joint search by social and spatial proximity
Joint search by social and spatial proximityJoint search by social and spatial proximity
Joint search by social and spatial proximity
 
Socio Media Connect: A Social Profile based P2P Network
Socio Media Connect: A Social Profile based P2P NetworkSocio Media Connect: A Social Profile based P2P Network
Socio Media Connect: A Social Profile based P2P Network
 
K017266167
K017266167K017266167
K017266167
 
squarekonnect
squarekonnectsquarekonnect
squarekonnect
 
IEEE ISM 2008: Kalman Graffi: A Distributed Platform for Multimedia Communities
IEEE ISM 2008: Kalman Graffi: A Distributed Platform for Multimedia CommunitiesIEEE ISM 2008: Kalman Graffi: A Distributed Platform for Multimedia Communities
IEEE ISM 2008: Kalman Graffi: A Distributed Platform for Multimedia Communities
 
Demonstration of visual based and audio-based hci system
Demonstration of visual based and audio-based hci systemDemonstration of visual based and audio-based hci system
Demonstration of visual based and audio-based hci system
 
Fundamentals of Deep Recommender Systems
 Fundamentals of Deep Recommender Systems Fundamentals of Deep Recommender Systems
Fundamentals of Deep Recommender Systems
 
ISDA 2011 Cordoba
ISDA 2011 CordobaISDA 2011 Cordoba
ISDA 2011 Cordoba
 
Profiling User Interests on the Social Semantic Web
Profiling User Interests on the Social Semantic WebProfiling User Interests on the Social Semantic Web
Profiling User Interests on the Social Semantic Web
 
Service rating prediction by exploring social mobile users’ geographical loca...
Service rating prediction by exploring social mobile users’ geographical loca...Service rating prediction by exploring social mobile users’ geographical loca...
Service rating prediction by exploring social mobile users’ geographical loca...
 
LifeSocial - A P2P-Platform for Secure Online Social Networks
LifeSocial - A P2P-Platform for Secure Online Social NetworksLifeSocial - A P2P-Platform for Secure Online Social Networks
LifeSocial - A P2P-Platform for Secure Online Social Networks
 
IEEE 2014 JAVA MOBILE COMPUTING PROJECTS Privacy preserving optimal meeting l...
IEEE 2014 JAVA MOBILE COMPUTING PROJECTS Privacy preserving optimal meeting l...IEEE 2014 JAVA MOBILE COMPUTING PROJECTS Privacy preserving optimal meeting l...
IEEE 2014 JAVA MOBILE COMPUTING PROJECTS Privacy preserving optimal meeting l...
 
INTRO
INTROINTRO
INTRO
 
mini project2.ppt.pptx
mini project2.ppt.pptxmini project2.ppt.pptx
mini project2.ppt.pptx
 

More from Nicolas Kourtellis

Privacy Concerns vs. User Behavior in Community Question Answering
Privacy Concerns vs. User Behavior in Community Question AnsweringPrivacy Concerns vs. User Behavior in Community Question Answering
Privacy Concerns vs. User Behavior in Community Question Answering
Nicolas Kourtellis
 

More from Nicolas Kourtellis (8)

On managing social data for enabling socially-aware applications and services
On managing social data for enabling socially-aware applications and servicesOn managing social data for enabling socially-aware applications and services
On managing social data for enabling socially-aware applications and services
 
Scalable Online Betweenness Centrality in Evolving Graphs
Scalable Online Betweenness Centrality in Evolving GraphsScalable Online Betweenness Centrality in Evolving Graphs
Scalable Online Betweenness Centrality in Evolving Graphs
 
Prometheus: Distributed Management of Geo-Social Data
Prometheus: Distributed Management of Geo-Social DataPrometheus: Distributed Management of Geo-Social Data
Prometheus: Distributed Management of Geo-Social Data
 
Cultures in Community Question Answering
Cultures in Community Question AnsweringCultures in Community Question Answering
Cultures in Community Question Answering
 
Privacy Concerns vs. User Behavior in Community Question Answering
Privacy Concerns vs. User Behavior in Community Question AnsweringPrivacy Concerns vs. User Behavior in Community Question Answering
Privacy Concerns vs. User Behavior in Community Question Answering
 
VHT: Vertical Hoeffding Tree (IEEE BigData 2016)
VHT: Vertical Hoeffding Tree (IEEE BigData 2016)VHT: Vertical Hoeffding Tree (IEEE BigData 2016)
VHT: Vertical Hoeffding Tree (IEEE BigData 2016)
 
SAMOA: A Platform for Mining Big Data Streams (Apache BigData North America 2...
SAMOA: A Platform for Mining Big Data Streams (Apache BigData North America 2...SAMOA: A Platform for Mining Big Data Streams (Apache BigData North America 2...
SAMOA: A Platform for Mining Big Data Streams (Apache BigData North America 2...
 
SAMOA: A Platform for Mining Big Data Streams (Apache BigData Europe 2015)
SAMOA: A Platform for Mining Big Data Streams (Apache BigData Europe 2015)SAMOA: A Platform for Mining Big Data Streams (Apache BigData Europe 2015)
SAMOA: A Platform for Mining Big Data Streams (Apache BigData Europe 2015)
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.
Silpa
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
MohamedFarag457087
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
NazaninKarimi6
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
Silpa
 
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Silpa
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learning
levieagacer
 
Phenolics: types, biosynthesis and functions.
Phenolics: types, biosynthesis and functions.Phenolics: types, biosynthesis and functions.
Phenolics: types, biosynthesis and functions.
Silpa
 

Recently uploaded (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.POGONATUM : morphology, anatomy, reproduction etc.
POGONATUM : morphology, anatomy, reproduction etc.
 
Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdf
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
 
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.Cyathodium bryophyte: morphology, anatomy, reproduction etc.
Cyathodium bryophyte: morphology, anatomy, reproduction etc.
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
 
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICEPATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
PATNA CALL GIRLS 8617370543 LOW PRICE ESCORT SERVICE
 
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptxClimate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
 
Grade 7 - Lesson 1 - Microscope and Its Functions
Grade 7 - Lesson 1 - Microscope and Its FunctionsGrade 7 - Lesson 1 - Microscope and Its Functions
Grade 7 - Lesson 1 - Microscope and Its Functions
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learning
 
Genome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptxGenome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptx
 
Cyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptxCyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptx
 
Atp synthase , Atp synthase complex 1 to 4.
Atp synthase , Atp synthase complex 1 to 4.Atp synthase , Atp synthase complex 1 to 4.
Atp synthase , Atp synthase complex 1 to 4.
 
Role of AI in seed science Predictive modelling and Beyond.pptx
Role of AI in seed science  Predictive modelling and  Beyond.pptxRole of AI in seed science  Predictive modelling and  Beyond.pptx
Role of AI in seed science Predictive modelling and Beyond.pptx
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
Phenolics: types, biosynthesis and functions.
Phenolics: types, biosynthesis and functions.Phenolics: types, biosynthesis and functions.
Phenolics: types, biosynthesis and functions.
 

Prometheus: User-Controlled P2P Social Data Management for Socially-aware Applications

  • 1. Prometheus: User-Controlled P2P Social Data Management for Socially-aware Applications Nicolas Kourtellis, Joshua Finnis, Paul Anderson, Jeremy Blackburn, Cristian Borcea*, Adriana Iamnitchi Department of Computer Science and Engineering, USF *Department of Computer Science, NJIT ACM/IFIP/USENIX 11th International Middleware Conference, 2010
  • 2. 2 Social and Socially-aware Applications Applications may contain user profiles, social networks, history of social interactions, location, collocation
  • 3. 3 Problems with Current Social Information Management  Application specific:  Need to input data for each new application  Cannot benefit from information aggregation across applications  Typically, data are owned by applications: users don't have control over their data  Hidden incentives to have many "friends": social information not accurate
  • 4. 4 Our Solution: Prometheus  P2P social data management service:  Receives data from social sensors that collect application-specific social information  Represents social data as decentralized social graph  Exposes API to share social information with applications according to user access control policies SOCIAL SENSORS SOCIALLY- AWARE APPS CallCensor Foursquare` `` ` ` ` ` PROMETHEUS Loopt
  • 5. 5 Outline  Motivation  Social Graph Management  API and Access Control  Prototype Implementation  Evaluation over PlanetLab  Summary  Future Work
  • 6. 6 How is the Social Graph Populated?  Social sensors report edge information to Prometheus: <ego, alter, activity, weight>  Applications installed by user on personal devices  Aggregate & analyze history of user's interactions with other users  Two types of social ties:  Object-centric: use of similar resources  Examples: tagging communities on Delicious, repeatedly being parts of the same BitTorrent swarms  People-centric: pair-wise or group relationships  Examples: friends on Facebook, same company name on LinkedIn, collocation from mobile phones
  • 7. 7 Social Graph Representation  Multi-edged, directed, weighted, labeled graph  Each edge → a reported social activity  Weight → interaction intensity  Directionality reflects reality  Allows for fine-grain privacy  Prevents social data manipulation
  • 8. 8 Decentralized Graph Storage  Each user has a set of trusted peers in the P2P network  Peers it owns & peers owned by trusted users  Each user’s sub-graph stored on all its trusted peers  Improved availability in face of P2P churn  P2P multicast used to synchronize information among trusted peers User ID Owns Peer Trust Peer A --- 1,2 B 1 1,2 C 2 1,2,3 D 3 2,3,4,5 E 4 3,4 F 5 3,5 ALL PEERS A C F EB D <music,0.15> <m usic,0.25> <football,0.3> <m usic,0.1> <football,0.2> <m usic,0.1> <hiking,0.25> <football,0.3> <m usic,0.3> <football,0.3> <music,0.2> <football,0.3> <m usic,0.25> <hiking,0.3> <football,0.3> <m usic,0.1> <hiking,0.2> PEER 1 A C B D <music,0.15> <m usic,0.25> <football, 0.3> <m usic, 0.1> <football, 0.2> <m usic, 0.1> <hiking,0.25> <football,0.3> <music,0.3> <football,0.2> <football,0.3> <music,0.2> <football,0.2> <football,0.1> E
  • 9. 9 Encrypted P2P Storage  Sensor data stored encrypted in P2P network  Improves availability and protects privacy  Sensors encrypt data with trusted group public key & sign with user private key  Trusted peers retrieve user data, decrypt it, & create social graph Group Public Key Private Key User Public Key Private Key
  • 10. 10 Outline  Motivation  Social Graph Management  API and Access Control  Prototype Implementation  Evaluation over PlanetLab  Summary  Future Work
  • 11. 11 Prometheus Application Interface  Five social inference functions:  Boolean relation_test (ego, alter, ɑ, w)  User-List top_relations (ego, ɑ, k)  User-List neighborhood (ego, ɑ, w, radius)  User-List proximity (ego, ɑ, w, radius, distance)  Double social_strength (ego, alter)  Ego & alter don’t have to be directly connected  Normalized result: consider ego’s overall activity  Search all 2-hop paths
  • 12. 12 Application Example: CallCensor  Socially-aware incoming call filtering  Ring/vibrate/silence phone based on current social context and relationship with caller  Invokes  proximity() to determine current social context  social_strength() to determine relationship with caller
  • 13. 13 Request Execution: social_strength() 1st hop 2nd hop1st hop 1. Application sends request to a peer 2. Peer forwards request to trusted peer 3. Trusted peer enforces ACPs 4. Trusted peer sends secondary requests 5. Trusted peers enforce ACPs & reply 6. Primary peer combines results 7. Primary peer replies to application through contacted peer with final result
  • 14. 14 Access Control Policies  User specifies ACPs upon registration  ACPs stored on user’s trusted peer group  Update them at any time  Changes propagated through multicast mechanism  Applied for each inference request  Control relations, labels, weights & locations Example: Alice’s ACPs relations: hops-2 hiking-label: lbl-hiking work-label: lbl-work general-label: --- weights: --- location: hops-1 blacklist: user-Eve
  • 15. 15 Outline  Motivation  Social Graph Management  API and Access Control  Prototype Implementation  Evaluation over PlanetLab  Summary  Future Work
  • 16. 16 Prototype Implementation  FreePastry Java implementation with support for  DHT (Pastry)  P2P storage (Past)  Multicast (Scribe)  Social graph management implemented in Python
  • 17. 17 Evaluation over PlanetLab  Goals: 1. Assess performance under realistic network conditions (peers distributed around the world) 2. Assess performance at large scale using realistic workloads with large number of users 3. Assess the effect of socially-aware mapping of users onto trusted peers on system’s performance 4. Validate Prometheus with socially-aware application under real-time constraints (CallCensor)  Metric: end-to-end response time
  • 18. 18 Large-Scale Evaluation Setup  100 PCs around the globe  RTT~200-300ms  1000 users: synthetic social graph  Random vs. socially-aware trusted peer assignment  10 & 30 users assigned per peer  Workloads for:  Social sensor inputs based on Facebook study  Neighborhood requests based on Twitter study  Social strength requests based on BitTorrent study  Applied a timeout of 15 seconds to fulfill a 1-hop request in PlanetLab
  • 19. 19 Neighborhood Request Results  Socially-aware assignment of users onto peers results in faster response time  Message overhead reduced by an order of magnitude  Replication for improved availability does not induce high overhead 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 10,000 20,000 30,000 CDF End-to-end response time (msecs) Neighborhood Requests (10 users/peer) random - 1hop random - 2hop random - 3hop social - 1hop social - 2hop social - 3hop 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 10000 20000 30000 CDF End-to-end response time (msecs) Neighborhood Requests (30 users/peer) random - 1hop random - 2hop random - 3hop social - 1hop social - 2hop social - 3hop
  • 20. 20 Social Strength Request Results  Similar performance with 2-hop Neighborhood Requests  Search all 2-hop paths from source to destination 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0 10000 20000 CDF Average end-to-end response time (msecs) Social Strength Requests random - 10 users per peer random - 30 users per peer social - 10 users per peer social - 30 users per peer
  • 21. 21 CallCensor Evaluation Setup  CallCensor implemented and tested on Nexus Android phone  100 users: real social graph  Volunteer students from NJIT  Two social sensors  Collocation from Bluetooth  45 & 90 minutes threshold  Friendship from Facebook  3 USA PlanetLab peers  Socially-aware trusted peer assignment
  • 22. 22 CallCensor Results  Met real-time performance constraint: response arrives before call forwarded automatically to voicemail
  • 23. 23 Summary  Users of Prometheus:  Decide what personal social data are collected by installing/configuring social sensors  Cooperate to store and manage their social data in a decentralized fashion  Own and control access to their data  Prometheus enables:  Socially-aware applications that utilize social data collected from multiple sources  Accurate social world representation through multi- edged, labeled, directed and weighted graph  Improved performance through socially-aware P2P system design
  • 24. 24 Future Work  Improve Prometheus performance  Network optimizations  Caching of inference request results  Develop new social sensors  Develop new socially-aware applications & services  Study tolerance to malicious attacks  Exposure of social information to intermediate peers during request execution  Manipulation of social connections to alter the structure of the social graph
  • 25. 25 Thank you! This work was supported by NSF Grants: CNS 0952420, CNS 0831785, CNS 0831753 http://www.cse.usf.edu/dsg/mobius nkourtel@mail.usf.edu