enabling socially-aware distributed systems or some ongoing research in the distributed systems...

49
Enabling Socially- Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi [email protected]

Upload: colin-cunningham

Post on 13-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

Enabling Socially-Aware Distributed

Systemsor

Some Ongoing Research in the Distributed Systems

GroupAdriana [email protected]

Page 2: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

2

Thesis

The wealth of social information exposed from multiple sources can be mined in the design of distributed computing infrastructures: to facilitate improved performance for traditional applications and services;to enable novel applications.

Page 3: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

3

Social Information

Connects people through relationshipsObject centric: use of same objectsPerson centric: declared relationships or co-participation in events, groups, etc.

Social relationships can be translated into:

TrustIncentives for resource sharingShared interest in content…

Page 4: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

4

Motivating Application: Socially-

aware Call Censor

Page 5: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

5

Motivating Application: Personalized Evacuation

Route

Page 6: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

6

Motivating Application: Data Placement

Page 7: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

7

“No 24 in B minor, BWV 869”“Les Bonbons”

“Yellow Submarine”“Les Bonbons”

“Yellow Submarine”“Wood Is a Pleasant Thing to Think About”

“Wood Is a Pleasant Thing to Think About”

The interest-sharing graph GmT(V, E):

V is set of users active during interval T An edge in E connects users who share at least m file

requests within T

An Example: Interest Sharing

Page 8: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

8

Small Worlds

0.1

1.0

10.0

1 10 100 1000 10000Clustering coefficient ratio (log scale)

Avg

. pat

h le

ngth

rat

io (

log

scal

e) .

Word co-occurrences

Film actors

LANL coauthors

Internet

Web

Food web

Power grid

D. J. Watts and S. H. Strogatz, Collective dynamics of small-world networks. Nature, 393:440-442, 1998R. Albert and A.-L. Barabási, Statistical mechanics of complex networks, R. Modern Physics 74, 47 (2002).

Page 9: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

9

Web Interest-Sharing Graphs

0.1

1.0

10.0

1 10 100 1000 10000Clustering coefficient ratio (log scale)

Avg

. pat

h le

ngth

rat

io (

log

scal

e) . Web data-sharing graph

Other small-world graphs

7200s, 50files

3600s, 50files

1800s, 100files

1800s, 10file

300s, 1file

Page 10: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

10

DØ Interest-Sharing Graphs

0.1

1.0

10.0

1 10 100 1000 10000Clustering coefficient ratio (log scale)

Avg

. pat

h le

ngth

rat

io (

log

scal

e) . Web data-sharing graph

D0 data-sharing graphOther small-world graphs

7days, 1file

28 days,1 file

Page 11: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

11

KaZaA Interest-Sharing Graphs

7day, 1file

28 days1 file

0.1

1.0

10.0

1 10 100 1000 10000Clustering coefficient ratio (log scale)

Avg

. pat

h le

ngth

rat

io (

log

scal

e) . Web data-sharing graph

D0 data-sharing graphOther small-world graphsKazaa data-sharing graph

2 hours1 file

1 day2 files

4h2 files

12h4 files

Page 12: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

12

Proactive Information Dissemination

3 days 7 days 10 days 14 days 21 days 28 days

0

10

20

30

40

50

60

70

80

90

100 Except largest cluster

Total hit rateD0

Web

2 min 5 min 15 min 30 min

0

10

20

30

40

50

60

70

80

90

100 Except largest clusterTotal hit rate

1 hour 4 hours 8 hours

010

20

30

40

50

60

70

8090

100 Except largest clusterTotal hit rate

Kazaa

Page 13: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

13

Objectives

A service thatcan provide relevant social information to a variety of applications and servicesMaintains social information from unrestricted sourcesExports a flexible interface for mining social knowledge

allows user-controlled privacy protection

Page 14: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

14

State of the Art

Application-limited collection and use of social information

High bootstrap costLimited (potentially inaccurate) information. E.g., Information from online social networks

Hidden incentives to have many “friends”All relationships equalSymmetric relationships

Newer proposals to merge different sources of social (and sensor) information

Specifically targeting context awareness

Page 15: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

15

Prometheus: A P2P Social Data Management

Service Collects social information from multiple sources (social sensors)Maintains this information in a social graphOffers a set of basic social inference functions

Page 16: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

16

Outline

MotivationPrometheus architecture

Social sensorsSocial graph representationSocial data management in a Peer-to-Peer architectureSocial inferences exported to applications and servicesPrivacy protection

Experimental resultsPerformance under synthetic workloadsCallCensor application

Page 17: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

17

Prometheus

Peer-to-peer architectureUsers contribute resources (peers)Fundamental change from typical peer-to-peer networks: not every user has its peer

Input: Social information collected from different social sensors

Applications running on behalf of usersCollect information according to user-specified policiesReport social information to Prometheus

Output: Social information made available (subject to user policies) to applications and services

Page 18: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

18

Social SensorsA decentralized service that:

Collects social information from multiple sources (social sensors)Maintains this information in a social graphOffers a set of basic social inference functions

Page 19: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

19

Social SensorsLocationCollocationSchedule (e.g., Google calendar)Mobile phone activity (calls, sms)Online social network interactionsEmailPersonal relations (family)Shared contentShared interest (e.g., CiteULike)…

Page 20: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

20

Social Sensors

Report on behalf of ego:Alter, the person ego is interacting withAn activity tag: e.g., “outdoors”, “dinning”

Based on content, location, predefined labels, etc.

A weight: e.g., 0.15

Run on ego’s mobile devices, desktops, webAggregates and analyzes user interactions

To reduce noiseTo distinguish between routine and meaningful interactions

Page 21: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

21

Social Sensors: Challenges

Identifying activity tags:Mine text for keywords (emails, sms, blogs, etc)Reverse geo-coding to find where (co)locatedPredefined labels or dictionary and ontologies

Quantifying interactions (assigning weights):

Frequency, duration, time in-between interactionsFamiliar strangers versus active social interaction

Page 22: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

22

Prometheus Social Graph

A decentralized service that:Collects social information from multiple sources (social sensors)Maintains this information in a social graphOffers a set of basic social inference functions

Page 23: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

23

Prometheus Social Graph

Page 24: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

24

Distributed Management of the Social Graph

Page 25: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

25

Prometheus Architecture

Page 26: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

26

Architecture Details

Users have a unique user ID Select trusted peer group based on offline social trust with peer ownersA user’s trusted peers communicate via ScribeOnly the user’s trusted peers can decrypt user’s social data and thus perform social inference functions

Page 27: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

27

Social Data Protection

2 sets of public/private keysUser’sUser’s trusted peer group

Social sensors submit data encrypted with the group’s public key and signed with the user’s private key

Access to user’s private key only on user’s devicesData stored in the Pastry overlay

Only trusted peers can decrypt and authenticate data

Page 28: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

28

Social Inference Functions

A decentralized service that:Collects social information from multiple sources (social sensors)Maintains this information in a social graphOffers a set of basic social inference functions

Page 29: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

29

API for Applications: Social Inference

Functions5 basic social inference functions:• relation_test (ego, alter, ɑ, w)• top_relations (ego, ɑ, n)• neighborhood (ego, ɑ, w, radius)• proximity (ego, ɑ, w, radius, distance)

• social_strength (ego, alter)

More complex functions can be built

Page 30: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

30

Social Strength

Quantifies strength between ego and alterResult normalized to consider overall activitySearch all paths of maximum 2 social hopsOne approach to quantify social strength. Others are certainly possible.

Page 31: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

31

Lessons from Experiments on

PlanetLabSocial-based mapping of users onto peers leads to significant performance gains:

More than 15% of requests finish faster An order of magnitude fewer messages

Availability through replication does not include high overheadReasonable latency

Code not optimized, significant performance gains compared to 2 weeks ago.

Page 32: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

32

Experimental Results: Neighborhood Requests

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

Page 33: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

33

Social Strength Request Results

Similar performance with 2-hop Neighborhood Requests

Search all 2-hop paths from source to destination

Page 34: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

34

Real Social Traces: NJIT Social Graph

100 randomly selected students from NJIT given Bluetooth-enabled phones that report their collocationData recorded

Collocation with two thresholds (45 and 90 minutes)Facebook friendships

Sparse graph (commuters)

Page 35: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

35

CallCensor

CallCensor implemented on AndroidCell phone silenced, rings or vibrates depending on the social context and relationship with callerRelationship with caller:

Social strength > threshold: allow callCaller connected by work and 1 hop awayCaller connected by work and ≤ 2 hops away

Real social data from 100 users stored on 3 nodes from PlanetLabReal time performance constraints

Page 36: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

36

CallCensor Results

Met real-time performance constraint: response arrives before call forwarded automatically to voicemail

Page 37: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

37

Summary

Prometheus: a decentralized service that enables socially-aware applications and services by collecting, managing and exposing social knowledge, subject to user-specified privacy policies.Unique contributions:

Social graph representationAggregated social data Social inference functionsSocially-aware design

Page 38: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

38

Summary

Users of Prometheus:Decide what personal social data are collected by installing/configuring social sensorsCooperate to store and manage their social data in a decentralized fashionOwn and control access to their data

Prometheus enables:Socially-aware applications that utilize social data collected from multiple sourcesAccurate social world representation through multi-edge, labeled, directed and weighted graphImproved performance through socially-aware P2P system design

Page 39: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

39

Future Work

Improve Prometheus performanceNetwork optimizations

Caching of inference request results

Develop new social sensors

Develop new socially-aware applications & services

Study tolerance to malicious attacksExposure of social information to intermediate peers during request execution

Manipulation of social connections to alter the structure of the social graph

Page 40: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

40

Why P2P?

1st alternative: Free Centralized ServiceNo incentives or business model for free storage and service of encrypted data

2nd alternative: CloudCost for transferring and storing dataTradeoff between privacy & inference functionality

3rd alternative: mobile phonesLimited energy and computation powerNot always online (service unavailability)Not always synchronized, for fast and efficient inference support

Page 41: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

41

Prometheus vs. Facebook?

Both collect social information of users from multiple sources but:

Facebook is limited to input from Facebook-controlled sourcesPrometheus accepts input from any user-defined social source (sensor)

User-control of social informationPrometheus allows full user-control:

Storage of dataExposure of data to users, applications & services

Facebook allows very limited user-control:Exposure of data to users, applications & services*Always at odds with its business model

Page 42: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

42

Updating the Social Graph

Social data for each user stored as append-only file in P2P network

Atomic appends using lock file for synchronization

Trusted peers periodically check for new inputs for a user

May have inconsistent data for short time periods

Not major problem: social graphs do not change frequently

After authentication, new input is merged with the social graph of the relevant user

Page 43: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

43

More Information

Paper in Middleware 2010 (“Prometheus: User-Controlled P2P Social Data Management for Socially-Aware Applications”)

http://www.cse.usf.edu/[email protected]

Page 44: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

44

Acknowledgements

My team of talented graduate students:

National Science Foundation grants CNS-0831785 and CNS-0952420

Page 45: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

45

Thank you!

Page 46: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

46

Mobius Application Mobius Application Scenario: Scenario:

Community Multimedia Community Multimedia Sharing (1)Sharing (1)

Alice

Bob’s service

Mobile tier

P2P tier

Registerservice

Jane

Mike

Download mobileapplication for Bob’s service

Service discovery service

Alice, Mike &Jane friends

Bob’s service enables Bob’s service enables mobile users to upload & mobile users to upload & share multimedia contentshare multimedia content

Sharing community is Sharing community is specified according to specified according to type and strength of type and strength of social tiessocial ties

Page 47: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

47

Application Scenario: Application Scenario: Community Multimedia Community Multimedia

Sharing (2)Sharing (2)

Alice

Bob’s service

Mobile tier

StorePhoto

P2P tier

Upload Photo

Jane

Jane’s PC

Event notificationservice

Mike

Ad Hoc Collection of Jane’s Social Context Data

Notify Alice’sFriends

EventNotification

DownloadPhoto

Service discovery service

Servicediscovery

Page 48: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

48

P2P Tier ArchitectureP2P Tier Architecture

Service 1Service 1 Service 2Service 2 Service nService n

Service APIService API

EventEventManagerManager

OffloadingOffloadingAdmissionAdmission

ServiceServiceDiscoveryDiscovery

NetworkNetwork

Privacy/Security Policy EnforcementPrivacy/Security Policy Enforcement

Core Services for Mobile TierCore Services for Mobile Tier

DataDataEmergent Emergent Geo-SocialGeo-Social Pattern Pattern LearningLearning

ServiceService

Geo-Social P2P ServicesGeo-Social P2P Services

Social Social StateState

Geo-Socially Aware P2P ManagementGeo-Socially Aware P2P Management

Geo-Geo-Social Social DataData

CollectioCollectionn

OverlaOverlayy

ContextContextProviderProvider

Page 49: Enabling Socially-Aware Distributed Systems or Some Ongoing Research in the Distributed Systems Group Adriana Iamnitchi anda@cse.usf.edu

49

ApplicatioApplication 1n 1

ApplicatioApplication 2n 2

ApplicatioApplication nn n

Mobile APIMobile API

EventEventDispatchDispatch

erer

ResourceResourceMonitorMonitor

Ad HocAd HocSocial Social ContextContext

OffloadinOffloadingg

ManagerManager

LocationLocationEngineEngine

Operating SystemOperating System

Mobile Node Architecture