Telecommunication Services Engineering (TSE) Lab. Chapter IX Presence Applications and Services.

Similar documents
Web GIS & ArcGIS Pro. Zena Pelletier Nick Popovich

Web GIS Deployment for Administrators. Vanessa Ramirez Solution Engineer, Natural Resources, Esri

Introduction to Portal for ArcGIS

Introduction to Portal for ArcGIS. Hao LEE November 12, 2015

Portal for ArcGIS: An Introduction. Catherine Hynes and Derek Law

ArcGIS. for Server. Understanding our World

Enabling ENVI. ArcGIS for Server

Master Thesis Project

Portal for ArcGIS: An Introduction

One Optimized I/O Configuration per HPC Application

Geog 469 GIS Workshop. Managing Enterprise GIS Geodatabases

Web GIS Administration: Tips and Tricks

THE DESIGN AND IMPLEMENTATION OF A WEB SERVICES-BASED APPLICATION FRAMEWORK FOR SEA SURFACE TEMPERATURE INFORMATION

Leveraging Web GIS: An Introduction to the ArcGIS portal

CHAPTER 22 GEOGRAPHIC INFORMATION SYSTEMS

Wireless Network Security Spring 2015

Canadian Board of Examiners for Professional Surveyors Core Syllabus Item C 5: GEOSPATIAL INFORMATION SYSTEMS

What Would John Snow Do (Today)? Part 1

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D

ArcGIS Enterprise: What s New. Philip Heede Shannon Kalisky Melanie Summers Sam Williamson

SpyMeSat Mobile App. Imaging Satellite Awareness & Access

ArcGIS Enterprise: What s New. Philip Heede Shannon Kalisky Melanie Summers Shreyas Shinde

Web GIS: Architectural Patterns and Practices. Shannon Kalisky Philip Heede

Broadband Internet Access Disclosure

Bentley Map Advancing GIS for the World s Infrastructure

Why GIS & Why Internet GIS?

Creation of an Internet Based Indiana Water Quality Atlas (IWQA)

Working with ArcGIS Online

3D Urban Information Models in making a smart city the i-scope project case study

ELF products in the ArcGIS platform

Hosted by Esri Official Distributor

ArcGIS for INSPIRE. Marten Hogeweg Satish Sankaran

The Canadian Ceoscience Knowledge Network. - A Collaborative Effort for Unified Access to Ceoscience Data

The Polar Data Landscape

Innovation. The Push and Pull at ESRI. September Kevin Daugherty Cadastral/Land Records Industry Solutions Manager

ArcGIS Deployment Pattern. Azlina Mahad

Selective Data Replication for Distributed Geographical Data Sets

Weather for the Road: a Mobile Solution

Joint MISTRAL/CESI lunch workshop 15 th November 2017

Overview of Geospatial Open Source Software which is Robust, Feature Rich and Standards Compliant

SPATIAL INFORMATION GRID AND ITS APPLICATION IN GEOLOGICAL SURVEY

Free and Open Source Software for Cadastre and Land Registration : A Hidden Treasure? Gertrude Pieper Espada. Overview

Changes in Esri GIS, practical ways to be ready for the future

THE SPATIAL DATA SERVER BASED ON OPEN GIS STANDARDS IN HETEROGENEOUS DISTRIBUTED ENVIRONMENT

Enabling Web GIS. Dal Hunter Jeff Shaner

Building a National Data Repository

Developing 3D Geoportal for Wilayah Persekutuan Iskandar

Overlay Transport Virtualization (OTV) Unicast-Mode Transport Infrastructure Deployment

RESEARCG ON THE MDA-BASED GIS INTEROPERABILITY Qi,LI *, Lingling,GUO *, Yuqi,BAI **

Skyalert: Real-time Astronomy for You and Your Robots

A Technique for Importing Shapefile to Mobile Device in a Distributed System Environment.

ArcGIS is Advancing. Both Contributing and Integrating many new Innovations. IoT. Smart Mapping. Smart Devices Advanced Analytics

I N T R O D U C T I O N : G R O W I N G I T C O M P L E X I T Y

Application of Internet+ Field Survey Technology in China s Land Management

GENERALIZATION IN THE NEW GENERATION OF GIS. Dan Lee ESRI, Inc. 380 New York Street Redlands, CA USA Fax:

Your Virtual Workforce. On Demand. Worldwide. COMPANY PRESENTATION. clickworker GmbH 2017

A Model of GIS Interoperability Based on JavaRMI

Visualizing Big Data on Maps: Emerging Tools and Techniques. Ilir Bejleri, Sanjay Ranka

CARTOGRAPHY in a Web World

Revenue Maximization in a Cloud Federation

Paper UC1351. Conference: User Conference Date: 08/10/2006 Time: 8:30am-9:45am Room: Room 23-B (SDCC)

Combinatorial Auction-Based Allocation of Virtual Machine Instances in Clouds

Lesson 16: Technology Trends and Research

2007 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes

MetConsole AWOS. (Automated Weather Observation System) Make the most of your energy SM

Introduction to ArcGIS Server Development

Esri and GIS Education

Crime Analyst Extension. Christine Charles

A Geographer s role in a Google Maps World. Jeremy Bartley ESRI

GIS Integration to Maximo

TRAITS to put you on the map

CAPE FARM MAPPER - an integrated spatial portal

The Challenge of Geospatial Big Data Analysis

Future Proofing the Provision of Geoinformation: Emerging Technologies

DRUG DISCOVERY TODAY ELN ELN. Chemistry. Biology. Known ligands. DBs. Generate chemistry ideas. Check chemical feasibility In-house.

Atmospheric Science and GIS Interoperability issues: some Data Model and Computational Interface aspects

Securing the Web of Things

Leveraging ArcGIS Online Elevation and Hydrology Services. Steve Kopp, Jian Lange

Esri Overview for Mentor Protégé Program:

What s New. August 2013

Ákos Tarcsay CHEMAXON SOLUTIONS

Discovery and Access of Geospatial Resources using the Geoportal Extension. Marten Hogeweg Geoportal Extension Product Manager

Development of Web-Based GIS Cloud Apllication for Natural Resources Information System in West Sumatera

Open spatial data infrastructure

The Open Sourcing of Infrastructure

WELCOME & INTRODUCTIONS

The INSPIRE Community Geoportal

No. of Days. Building 3D cities Using Esri City Engine ,859. Creating & Analyzing Surfaces Using ArcGIS Spatial Analyst 1 7 3,139

Launch of Data Collection or Production Centre for World Weather Information Service

European Location Framework data in the ArcGIS platform

OGC GEOPACKAGE AND HOW OPEN SOURCE IS CHANGING THE WAY GOVERNMENTS THINK ABOUT STANDARDS. Nathan Frantz Geospatial Research Lab

Geospatial Standards Support - An Overview. Marten Hogeweg & Satish Sankaran

Geodatabase Best Practices. Dave Crawford Erik Hoel

SOFTWARE ARCHITECTURE DESIGN OF GIS WEB SERVICE AGGREGATION BASED ON SERVICE GROUP

Leveraging the GIS Capability within FlexiCadastre

Design and implementation of a new meteorology geographic information system

Using OGC standards to improve the common

Analyzing the IETF ACE-OAuth Protocol

Arcgis Enterprise Performance And Scalability Best Practices

On Content Indexing for Off-Path Caching in Information-Centric Networks

Transcription:

Chapter IX Presence Applications and Services http://users.encs.concordia.ca/~glitho/

Outline 1. Basics 2. Interoperability 3. Presence service in clouds

Basics 1 - IETF abstract model 2 - An example of implementation

IETF Abstract model Presence service Enable the publication and the retrieval of context information (e.g. online/offline, willingness to communicate) or more generally Space Environment Physiology Note: The information is collected by sensors that are not part of the presence framework

IETF Abstract model Clients Presentities: publish information Watchers: Retrieve the information (pull, push) Presence service: accept the information (maybe centralized or distributed)

IETF Abstract model Clients Presentities: publish information Watchers: Retrieve the information (pull, push) Presence service: accept the information (maybe centralized or distributed)

IETF Abstract model Presence service Presentitites Watchers

Two types of watchers Fetcher IETF Abstract model Fetch the current value of some presentity presence information Subscriber Request the notification of changes in some presence entity presence information

An example of implementation Two standard IETF implementations XMPP SIP SIMPLE Focus in this course: SIP SIMPLE

An example of implementation SIMPLE (SIP for Instant Messaging and Presence Leveraging Extensions) Set of specifications for presence and instant messaging with SIP Cover among other things: Core protocol machinery Presence documents (XML based) Privacy and policy Provisioning

An example of implementation SIP SIMPLE Protocol machinery Extended SIP event framework Publish (New message) Subscribe Notify SIMPLE presence documents XML based

An example of implementation SIP SIMPLE Entities Presence User Agent (PUA): client (presentity or watcher) Presence Agent (PA) : stores presence information Presence Server (PS): Acts as a PA or a proxy to forward requests to the appropriate destination

An example of implementation SIP SIMPLE Related messages: SIP Publish, Subscribe and Notify Information model: XML based known as PIDF Note: A plethora of other implementations exist Note: A plethora of other implementations exist (standard and proprietary)

Examples of applications Examples of applications areas Instant Messaging (IM) Rely on a SIP extension (i.e. MESSAGE) Do not require SIP sessions establishment although they may be sent within on-going SIP sessions.

Examples of applications Beyond instant messages Presence enabled conferencing (ie. Start a conference when a quorum is online) Unified Communications (e.g. Email, SMS, FM radio) Use most appropriate communication mean Social networks

Illustration Examples of applications Draw a sequence diagram with participants, P1 P2, P3, P4, P5, a conference server, and a presence server where the conference starts automatically when at least 3 participants are on-line and let us assume, P2, P4, and P5 get successively on-line

Interoperability 1 - Problem statement 2 - The state of the art 3. Our recently proposed solution

Interoperability

Interoperability

The problem Problem statement Several non interoperable standards (e.g. SIP SIMPLE, XMPP, Wireless Village) Several non interoperable proprietary implementations (e.g. Facebook, Skype) How to bridge the different worlds?

The problem More concretely Problem statement Users may have several accounts with several providers with non interoperable implementations How can a presentity with multiple accounts publish context information via the account she/he is using at a given time, with the possibility for watchers to retrieve this information via any of the other accounts?

The state of the art Bidirectional mapping (e.g. IETF spec for XMPP / SIP SIMPLE mapping) Exponential growth with number of standard and non standard presence implementations Few specifications exist (XMPP / SIP SIMPLE only known standard)

The State of the Art Open source SIP communicator Support all protocols Not realistic

The State of the Art SOAP based Web services used as common denominator / glue Example: YooHoo Enable end-user to access different presence services through a Big Web services Problem: small footprint devices

Our proposed solution Our proposed centralized solution C. Fu, F. Belqasmi, R. Glitho, RESTful Web Services fro Bridging Presence Service across Technologies and Domains: An Early Feasibility Prototype, IEEE Communications Magazine, December 2010, Vol. 48, No12.

Our design goals: Centralized solution No restriction on the business model Avoid one to one mapping Presence service (e.g. XMPP, SIP) interface neutral Unique and ligthweight interface to clients Accommodate clients behind firewalls Deployment on Web servers with no additional server No modification to existing presence servers Selected bridging technology: RESTFul Web services

Centralized solution Our centralized approach: The business model Third party presence service provider I 6 Consumer I 2 I 3 Universal presence service provider I 4 I5 I 1 Connectivity provider I 1 : Interface for agreement between the universal presence service provider and its host network I 2 : Interface between a Consumer and its universal presence service provider I 3 : Interface for agreement between the universal presence service provider and third party presence service providers, such as an IMS PS provider I 4 : Interface between a third party presence service provider and its hosted network I 5 : Interface between a Consumer and its service network I 6 : Interface between a Consumer and its presence service provider Figure 1: Business Model

Centralized solution Our centralized approach: The architecture UnivPS REST MSNP YMSG SIP/REST XMPP MSNP PS YMSG PS SIP PS XMPP PS MSNP YMSG XMPP REST SIP UnivPS clients MSN client Yahoo client IMS Clients Google clients Figure 2: Overall Architecture

Centralized solution Our centralized approach: Universal presence server Request Processing Layer (REST-PS) Universal Presence Server Publication Manager Publication Agent Request Publications Agreement Manager (RM) Database Database Subscription Manager Subscription Agent Communication Layer (Gateway) Message Router SIP Agent XMPP Agent REST Agent Figure 4: Software architecture of the UnviPS

Centralized solution Our centralized approach: Scenario (Alice off-line in IMS but online in Google) bob@univps.com Universal-PS BGCF S-CSCF 3GPP IMS-PS Google XMPP-PS 1 : POST(alice@ericsson.com) 2 : SUBSCRIBE 3 : SUBSCRIBE 5 : SUBSCRIBE 4 : 200 OK -chunk1-(http://www.univps.com/users/1) 8 : 200 OK 7 : 200 OK 6 : 200 OK 9 : NOTIFY(offline) 10 : NOTIFY(offline) 11 : NOTIFY(offline) Alice is a UnivPS user, his UnivPS profile shows that he has also a Google XMPP account 12 : XMPP subscribe alice@gmail.com 13 : XMPP Notify(alice online) 14 : 200 OK -Chunk2-(alice's presence info @ gmail.com)

Interoperability Our de-centralized approach: A P2P Approach C. Fu, F. Beqasmi, M. Shasvelayati, H. Khlifi, R. Glitho, A Peer to Peer Architecture for Enabling Universal Presence Service, Next Generation Mobile applications, Services and Technologies (NGMAST 2010), 26 29 July 2010, Amman, Jordan

Our decentralized solution Differences with previous approach: Service offered by a federation of providers instead of a single universal presence service provider Selected bridging technology: P2P overlays Overlay built on top of real presence servers and real services nodes (e.g. protocol translators)

Our decentralized solution On P2P overlay Current way of implementing P2P computing Application layer virtual networks that provide storage, processing, connectivity and routing Network built by peers that federate to offer storage and processing capabilities to applications Built on top of existing networks, thus the name of overlay» Applications running on top of transport protocols of real network» Real network nodes become virtual nodes in the overlay

Structured P2P overlays vs. unstructured P2P overlays P2P overlay Overlay (Above Transport) V1 V 3 V2 V4 Real network (PHY,link,IP, Transport) R1 R3 R2 R 4

Our decentralized solution Our de-centralized approach: A P2P Approach Provider A PSA SN PS Agent (PSA) Supporting Node (SN) PSA SN PSA PSA UnivPS Overlay PS PS PS Schema Translator Protocol translator PS PS PS Physical network Clients

Our decentralized solution Our de-centralized approach: A P2P Approach A l i c e P r o v i d e r - A E - P S S N 1 @ a. c o m P r o v i d e r - B E - P S P r o v i d e r - C E - P S P r o v i d e r - D E - P S ( P r o t o c o l P 1 ) P 1 - > S I P ( P r o t o c o l S I P ) ( P r o t o c o l P 3 ) ( P r o t o c o l S I P ) S I P - > P 1 1 : s u b s c r i b e ( e m y @ b. c o m, u s e = c o n v e r g e d p s ) - P r o v i d e r - A E - P S d o e s n o t h a v e t h e a c c o u n t s l i s t o f E m y O v e r l a y N e t w o r k S I P - > P 3 P 3 - > S I P < r e s p o n s e > < c a p a b i l i t y > S N < / > < a d d r e s s > s n 1 @ a. c o m < / > < t e c h n o l o g y f r o m = P 1 t o = S I P / > < t e c h n o l o g y f r o m = P 3 t o = S I P / > < t e c h n o l o g y f r o m = S I P t o = P 1 / > < t e c h n o l o g y f r o m = S I P t o = P 3 / > < / r e s p o n s e > 2 : f i n d P S A b y U R I ( e m y @ b. c o m ) 3 : e p s 2 @ b. c o m 4 : f i n d S N ( f r o m = P 1, t o = S I P ) 5 6 : f o r w a r d M e s s a g e ( s u b - 1, b. c o m, B - P S A _ a d d r e s s ) < r e s p o n s e > < c a p a b i l i t y > P S A < / > < d o m a i n > b. c o m < / > < t e c h n o l o g y > S I P < / > < a d d r e s s > 1 4 2. 1 3 3. 1. 1 1 9 : 5 0 6 0 < / > < / r e s p o n s e > 8 : f i n d P S A b y D o m a i n ( c. c o m ) 9 : e p s 3 @ c. c o m 7 : s u b - 3 1 0 : f i n d S N ( f r o m = S I P, t o = P 3 ) 1 1 : s n 1 @ a. c o m - E m y i s o f f - l i n e a t b. c o m - S e n d s u b s c r i p t i o n t o t h e n e x t a c c o u n t o f E m y : e m y @ c. c o m 1 2 : f o r w a r d M e s s a g e ( s u b s c r i p t i o n, c. c o m ) 1 3 : s u b s c r i b e ( e m y @ c. c o m ) - E m y i s o f f - l i n e a t c. c o m 1 9 : N o t i f y ( e m y @ d. c o m - i s - o n l i n e ) 1 4 : f i n d P S A b y D o m a i n ( d. c o m ) 1 5 1 8 : N o t i f y ( e m y @ d. c o m - i s - o n l i n e ) - S e n d s u b s c r i p t i o n t o t h e n e x t U R I : e m y @ d. c o m 1 6 : s u b s c r i b e ( e m y @ d. c o m ) 1 7 : N o t i f y ( e m y @ d. c o m - i s - o n l i n e )

Presence services in clouds 1 - Cloud basics 2 - Virtualization 3 - Problem statement 4 - Virtualized presence service

Motivations / expected benefits Cloud basics Cost reduction (hardware/software resources and their management) Consumption/usage -based pricing Elasticity Flexibility in service deployment 38

Cloud basics Figure 1: Cloud Computing Architecture 39

Software as a Service (SaaS) Cloud basics Accessible via GUI but also via programmatic interfaces (i.e. APIs) Alternative to running services locally Platform as a Service (PaaS) Development and management of services hosted in the cloud (e.g. Google Apps Engine) Infrastructure as a Service (IaaS) Computing resources (e.g. storage and processing) that are dynamically split, assigned and re-sized. Key technology: Virtualization 40

Virtualization

Basics of virtualization Virtualization Enable the co-existence of entities on same substrates/building blocks - e.g. Several operating systems on a same machine several networks on a same set of routers / links Advantages Efficient usage of resources Easy introduction of new functionalities

Virtualization Figure 2: Non virtualized environment vs. non virtualized environment: An example from the computer world 43

Virtualization http://conferences.sigcomm.org/sigc omm/2009/workshops/visa/papers /p73.pdfhttp://conferences.sigcom m.org/sigcomm/2009/workshops/v isa/papers/p73.pdfhttp://conferenc es.sigcomm.org/sigcomm/2009/w orkshops/visa/papers/p73.pdf Figure 2: 2 virtual networks using a same substrate network) http://conferences.sigcomm.org/sigcomm/2009/workshops/visa/papers/p73.pdf 44

Basics of virtualization Virtualization Differences between virtualization and VPN VPN does not allow heterogeneous networks on a same infrastructure because based on a same technology Differences between virtualization and overlay networks Overlays are designed independently of each other and may interact in an harmful way Clear separation between substrate and virtual networks in case of virtualization

The problem Problem statement Presence service is expected to grown significantly in the future (e.g. social networks), thus the need to: Re-use presence substrates / building blocks across standard and proprietary implementations for cost sharing Easily introduce new presence functionality Potential technological basis for a solution: Virtualization

Problem statement Our ultimate goal: Presence service in the cloud On-going step: Infrastructure as a Service (IaaS) Virtualized presence service Next steps Platforms as a Service (Paas) Multi-level abstraction APIs Experienced developers Novice developers Software as a Service (SaaS) Access by other applications and access by endusers

Virtualized presence service Our proposed solution for presence service virtualization F. Belqasmi, N. Kara, R. Glitho, A Novel Virtualized Presence Service Architecture for Future Internet, accepted, IEEE ICC 2011 Workshop on Future Internet

Virtualized presence service Our terminology Virtual Presence Service (VPS) Presence service as deployed by service providers (e.g. SIP SIMPLE, XMPP, Facebook) PSS (Presence Service Substrate) Sharable building blocks that could be re-used across standard and non standard VPSs

Virtualized presence service Our proposed solution: Scenarios Client/Watcher VPS Net-1 Client/Watcher Substrate network-1 Substrate network-2 Substrate network-3 PSS-1 PSS-2 PSS-3 c. A SIP SIMPLE VPS that relies on several PSSs Client/Watcher Client/Watcher Client/Watcher Client/Watcher IMS Net-1 SIP-VPS CSCF IMS Net-2 SIP-VPS CSCF IMS Net SIP-VPS CSCF XMPP Net XMPP-VPS Substrate network Substrate network PSS a. Several SIP SIMPLE VPSs share a same PSS PSS b. A SIP SIMPLE VPS and an XMPP VPS that share the same PSS

Virtualized presence service Our design goals Use of a same PSS by several VPS that may be in separate domains Use of several PSS by a same VPS for scalability purpose VPS and PSS should interact dynamically PSS should enable the rapid deployment of a very wide range of VPS.

Virtualized presence service Our proposed solution: architecture Presence Service Plane Virtualization Control & Management Plane Virtual Presence Engine Virtual Presence Management Engine Layer 3 (VPS) Presence service interface Virtualisation control and management interface Presence Mediation Engine Mediation coordinator PSS presence client Virtualization coordinator Presence Virtualization Controller PSS virtualization client Layer 2 (PVS) Presence service interface Virtualisation control and management interface Presence Substrate Engine DB Presence message dispatcher Publication/Subscripti on engine Presence service instance Virtualization message dispatcher DB Presence Substrate Management Engine PS instance manager PSS resource manager PSS resource mgmt engine Layer 1 (PSS)

Virtualized presence service Our proposed solution: architecture (SIP VPS instantiation and use) C o u d S e r v i c e S I P - V P S V i r t u a l P r e s e n c e P r e s e n c e V i r t u a l i z a t i o n P r e s e n c e S u b s c t a t e P r o v id e r ( S I P S e r v l e t E n g i n e ) M n g m n t E n g i n e C o n t r o l l e r M n g m n t E n g i n e C lo u d P la t f o r m P r o v id e r 1 : c r e a t e P S i n s t a n c e ( ) 2 : c r e a t e P S i n s t a n c e (... ) < V P S > < p r e s e n c e > < p r o t o c o l > S I P < / p r o t o c o l > < p i d f > { b a s i c S I P P I D F } < / p i d f > < / p r e s e n c e > < r e s o u r c e s > e. g. n b r o f r e q u e s t s p e r m i n u t e < / r e s o u r c e s > < / V P S > 6 < P S > < p r e s e n c e > < p i d f > { b a s i c S I P P I D F } < / > < / p r e s e n c e > < r e s o u r c e s > e. g. C P U, d i s q u e < / r e s o u r c e s > < / P S > 3 : c r e a t e P S i n s t a n c e (... ) 5 4 V i r t u a l P r e s e n c e P r e s e n c e M a p p i n g P r e s e n c e S u b s t r a t e E n g i n e E n g i n e E n g i n e 7 : -8 : S I P - P U B L I S H ( b o d y ) 9 : p u b l i s h ( b o d y ) 1 0 : S I P - P U B L I S H ( b o d y ) 1 1 : P u b l i s h ( b o d y ) 1 6 1 5 1 4 1 3 1 2 1 7 : - 1 8 : S I P - S U B S C R I B E 1 9 : s u b s c r i b e ( f r o m, t o ) 2 0 : S I P - S U B S C R I B E 2 1 : S u b s c r i b e ( X S L T ) 2 5 : 2 6 - : S I P - N O T I F Y ( X M L - R E P L Y ) 2 3 : S I P - N O T I F Y ( X M L - R E P L Y ) 2 2 : N o t i f y ( X M L - R E P L Y ) 2 4 : n o t i f y ( X M L - R E P L Y )

References 1. L. M. Vaquero et al., A Break in the Clouds: Towards a Cloud Definition, ACM SIGCOMM Computer Communication Review, Vol. 39, No1, January 2009 2. J. Carapinha; J. Jiménez, Network virtualization: a view from the bottom, Proceedings of the 1st ACM workshop on Virtualized infrastructure systems and architectures (VISA-09), pp. 73-80, 2009