NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 1
Partially Decentralized Context Management for
P2P Communities
Partially Decentralized Context Management for
P2P Communities
Jani Pellikka, Timo Koskela, Mika YlianttilaMediaTeam, University of Oulu
17th September, 2008NGMAST’08
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 2
OutlineOutline
• Introduction of Concepts
• P2P Service Framework
• Community Context
• Context Management
• System Evaluation
• Discussion & Conclusions
• Future Work
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 3
Introduction of ConceptsIntroduction of Concepts
• Context - information that is used to characterize the situation of an entity
• A P2P System - P2P overlay network that resides in the OSI application layer
• A Community - a group of a limited number of people held together by shared interests (rather than all users of the whole system)
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 4
P2P Service FrameworkP2P Service Framework
• Built on P2PSIP and Kademlia algorithm
• Architecture of three layers1. P2PSIP Layer – provides network access as well
as resource publishing and discovery
2. Management Layer – provides higher level functionalities (e.g. community and context management) through an API
3. Application/service Layer – consists of both Web-based and native mobile applications and services
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 5
P2P Service FrameworkP2P Service Framework
P2PSIP Network
Infrastructure-based Wireless (UMTS)
Application LayerNetwork Layer
Near-field Communication
Wireless LAN
P2PSIP NetworkAccess
Service Discovery and Publishing
CommunityManagement
ContextManagement
ResourceManagement
Usage RightsManagement
Application Programming Interface
Applications / Services
ManagementLayer
ServiceLayer
P2PSIPLayer
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 6
Community ContextCommunity Context
• Distribution is optimized for transferring the context information of communities
• Community Context• A collection of the context information of individual
community members
• Includes all context information of a single member
• Utilized by services and applications to determine the situation for a whole community
},,,{ 21 Nc CCCS
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 7
Community ContextCommunity Context
• Community Context Matrix• Context information of a single member can be
broken into several context types (location, time, identity, activity, …)
• Community context can then be thought as a matrix, where the members reside on the vertical axis, and their context types on the horizontal axis
MNMM
N
N
c
CCC
CCC
CCC
M
21
22221
11211
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 8
Context ManagementContext Management
• Architecture based on ’Model for Presence and Instant Messaging’ (RFC2778) by IETF
• Context Service, a centralized server component• Mobile devices (community members) publish their
context information to the context service
• Applications and services request (subscribe) to be notified on changes in community context or in the context information of individual members
• No information which users constitute a community: the context service has to obtain this piece of information from the P2P overlay
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 9
Context ManagementContext Management
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 10
Context ManagementContext Management
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 11
Context ManagementContext Management
• Context distribution using IETF standards• Context information of a member is represented
using Presence Information Data Format (PIDF)
• Community context matrix is represented as a resource list, where the PIDF documents of single members are collected inside a multipart/related document stucture
• Context information is transferred over Session Initiation Protocol (SIP)
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 12
System EvaluationSystem Evaluation
• Community context VS. Individual subscriptions
• Is distributing context information in community context matrix form feasible in the terms of1. generated network traffic overhead?
2. delay in time to obtain context of a whole community?
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 13
System EvaluationSystem Evaluation
• Network Traffic Analysis• More beneficial to use community context subscriptions• With large communities, network traffic gain exceeds 60 %• In individual subscriptions, most of the network traffic was due to
overhead of SIP headers
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 14
System EvaluationSystem Evaluation
• Delay Analysis• More benficial to use community context
subscriptions (although additional overhead is caused by P2P lookups for community members)
• With large communities, community context subscriptions are over five times faster
Individual Community
1 member 0.062 s 0.095 s
20 members 0.406 s 0.125 s
40 members 0.746 s 0.171 s
100 members 1.767 s 0.322 s
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 15
Discussion & ConclusionsDiscussion & Conclusions
• Using community context outperforms individual subscriptions to single members in terms of both network traffic and context retrieval delay
• Benefits: substantially reduced network traffic overhead and context subscription delay
• Context management is suitable for resource limited devices
NGMAST’08 – Jani Pellikka www.mediateam.oulu.fi 16
Future WorkFuture Work
• Evaluate our context management solution in real-life application scenarios with application/service pilots
• Detailed delay analysis on different phases in context subscription
• More compact representations for community context will be studied as well