collaboration in the enterprise1 sip and beyond henning schulzrinne department of computer science...

39
Collaboration in the Ente rprise 1 SIP and Beyond SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University [email protected] Collaboration in the Enterprise February 10, 2005 (Leesburg, VA)

Post on 22-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

1

SIP and BeyondSIP and Beyond

Henning SchulzrinneDepartment of Computer Science

Columbia [email protected] in the Enterprise

February 10, 2005 (Leesburg, VA)

Page 2: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

2

OverviewOverview

SIP as the glue for collaboration Context-aware communications The need for standards in

collaboration The future of standards-based

collaboration: session mobility central-server conferences application sharing

Page 3: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

3

(Early) Adulthood(Early) Adulthood

“fully developed and mature” Not quite yet, but no longer a

teenager probably need another 6 years to be

grown up… Responsibilities:

Dealing with elderly relatives POTS Financial issues payments, RADIUS Family emergencies 911

Page 4: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

4

Evolution of VoIPEvolution of VoIP

“amazing – thephone rings”

“does it docall transfer?”

“how can I make itstop ringing?”

1996-2000 2000-2003 2004-

catching upwith the digital PBX

long-distance calling,ca. 1930 going beyond

the black phone

Page 5: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

5

Collaboration in transitionCollaboration in transition

intra-organization;

small number of systems

(meeting rooms)

inter-organization

multiple technology generationsdiverse end

points

proprietary (single-vendor)

systems

standards-based solutions

Page 6: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

6

What is SIP?What is SIP? Session Initiation Protocol protocol that

establishes, manages (multimedia) sessions also used for IM, presence & event notification uses SDP to describe multimedia sessions

Developed at Columbia U. (with others) started approximately 1996, first standard 1999

Standardized by IETF (RFC 3261-3265 et al), ca. 2002 3GPP (for 3G wireless) PacketCable (DCS)

About 100 companies produce SIP products Microsoft’s Windows Messenger (≥4.7)

includes SIP

Page 7: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

7

SIP as service enablerSIP as service enabler Rendezvous protocol

lets users find each other by only knowing a permanent identifier

Mobility enabler: personal mobility

one person, multiple terminals

terminal mobility one terminal, multiple IP

addresses session mobility

one user, multiple terminals in sequence or in parallel

service mobility services move with user

Page 8: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

8

Basic SIP message flowBasic SIP message flow

Page 9: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

9

SIP – a bi-cultural protocolSIP – a bi-cultural protocol

• overlap dialing• DTMF carriage• key systems• notion of lines• per-minute billing• early media• ISUP & BICC interoperation• trusted service providers

• multimedia• IM and presence• location-based service• user-created services• decentralized operation• everyone equally suspect

Page 10: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

10

Presence as Presence as communication facilitatorcommunication facilitator

Page 11: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

11

Basic presenceBasic presence

Role of presence initially: “can I send an instant message and

expect a response?” now: “should I use voice or IM? is my call going

to interrupt a meeting?” Yahoo, MSN, Skype presence services:

on-line & off-line useful in modem days – but many people are

(technically) on-line 24x7 thus, need to provide more context

+ simple status (“not at my desk”) entered manually rarely correct does not provide enough context for directing

interactive communications

Page 12: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

12

Presence special case of Presence special case of event notificationevent notification “user Alice is available

for communication” Human users:

multiple contacts per presentity device (cell, PDA, phone,

…) service (“audio”)

activities, current and planned

surroundings (noise, privacy, vehicle, …)

contact information composing (typing,

recording audio/video IM, …)

Events in multimedia systems: REFER (call transfer) message waiting

indication conference floor control conference membership push-to-talk system configuration

General events: emergency alert (“reverse

911”) industrial sensors (“boiler

pressure too high”) business events (“more

than 20 people waiting for service”)

Page 13: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

13

The role of presenceThe role of presence

Guess-and-ring high probability of failure:

“telephone tag” inappropriate time (call

during meeting) inappropriate media (audio

in public place) current solutions:

voice mail tedious, doesn’t scale, hard to search and catalogue, no indication of when call might be returned

automated call back rarely used, too inflexible

most successful calls are now scheduled by email

Presence-based facilitates unscheduled

communications provide recipient-specific

information only contact in real-time if

destination is willing and able

appropriately use synchronous vs. asynchronous communication

guide media use (text vs. audio)

predict availability in the near future (timed presence)

Prediction: almost all (professional) communication will be presence-initiated or

pre-scheduled

Page 14: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

14

Context-aware Context-aware communicationcommunication

context = “the interrelated conditions in which something exists or occurs”

anything known about the participants in the (potential) communication relationship

both at caller and callee

time CPL

capabilities caller preferences

location location-based call routinglocation events

activity/availability presence

sensor data (mood, bio)

privacy issues similar to location data

Page 15: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

15

Presence data modelPresence data model

“calendar” “cell” “manual”

[email protected], video, text

[email protected]

person(presentity)

(views)

services

devices

Page 16: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

16

Presence data architecturePresence data architecture

rawpresencedocument

createview

(compose)

privacyfiltering

draft-ietf-simple-presence-data-model

compositionpolicy

privacypolicy

presence sources

XCAP XCAP

(not defined yet)

depends on watcherselect best sourceresolve contradictions

PUBLISH

Page 17: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

17

Presence data architecturePresence data architecture

candidatepresencedocument

watcherfilter

rawpresencedocument

post-processingcomposition(merging)

finalpresencedocument

differenceto previous notification

SUBSCRIBE

NOTIFY

remove data not of interest

watcher

Page 18: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

18

RPID = rich presenceRPID = rich presence

Provide watchers with better information about the what, where, how of presentities

facilitate appropriate communications: “wait until end of meeting” “use text messaging instead of phone call” “make quick call before flight takes off”

designed to be derivable from calendar information or provided by sensors in the environment

allow filtering by “sphere” – the parts of our life don’t show recreation details to colleagues

Page 19: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

19

The role of presence for call The role of presence for call routingrouting Two modes:

watcher uses presence information to select suitable contacts

advisory – caller may not adhere to suggestions and still call when you’re in a meeting

user call routing policy informed by presence

likely less flexible – machine intelligence

“if activities indicate meeting, route to tuple indicating assistant”

“try most-recently-active contact first” (seq. forking)

LESS

translateRPID

CPL

PA

PUBLISH

NOTIFY

INVITE

Page 20: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

20

Rich presence – describing Rich presence – describing serviceservice relationship

a communication service offered by a family member associate (colleague) assistant supervisor

service-class: type of service offered electronic delivery (courier) postal in-person

Page 21: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

21

Rich presence – describing Rich presence – describing statestate mood of presentity

afraid, amazed, angry, annoyed, anxious, ashamed, bored, brave, calm, cold, confused, contented, cranky, curious, depressed, disappointed, disgusted, distracted, embarrassed, excited, flirtatious, frustrated, grumpy, guilty, happy, hot, humbled, humiliated, hungry, hurt, impressed, in_awe, in_love, indignant, interested, invincible, jealous, lonely, mean, moody, nervous, neutral, offended, playful, proud, relieved, remorseful, restless, sad, sarcastic, serious, shocked, shy, sick, sleepy, stressed, surprised, thirsty, worried

likely derived from game state manual input lie detector + fMRI (later)

Page 22: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

22

Rich presence – describing Rich presence – describing activitiesactivities

sphere current state and role free text e.g., “work”, “home”,

“soccer club”, “PTA” activities: what is the

person doing away, appointment, busy,

holiday, in-transit, meal, meeting, on-the-phone, performance, permanent-absence, sleeping, steering, travel, vacation

Page 23: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

23

Rich presence – describing Rich presence – describing place and surroundingsplace and surroundings place-type: type of surroundings

aircraft, airport, bus, car, home, hotel, industrial, library, mall, office, outdoors, public, public-transport, restaurant, school, ship, station, street, theater, train, truck

place-is: communication properties video: bright, dark audio: noisy, quiet

privacy: communication that is private audio, video, text

time-offset: minutes from UTC for avoiding middle-of-the-night calls

Page 24: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

24

Rich presence: time Rich presence: time informationinformation Presence is currently about here and now but often only have (recent) past – e.g., calendar or future

“will be traveling in two hours” “will be back shortly”

allows watcher to plan communication

timed-status timed-status

time

RPIDfrom until

now

Page 25: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

25

Presence and PrivacyPresence and Privacy

All presence data, particularly location, is highly sensitive

Basic location object (PIDF-LO) describes

distribution (binary) retention duration

Policy rules for more detailed access control

who can subscribe to my presence

who can see what when

<tuple id="sg89ae">

<status>

<gp:geopriv>

<gp:location-info>

<gml:location>

<gml:Point gml:id="point1“

srsName="epsg:4326">

<gml:coordinates>37:46:30N 122:25:10W

</gml:coordinates>

</gml:Point>

</gml:location>

</gp:location-info>

<gp:usage-rules>

<gp:retransmission-allowed>no

</gp:retransmission-allowed>

<gp:retention-expiry>2003-06-23T04:57:29Z

</gp:retention-expiry>

</gp:usage-rules>

</gp:geopriv>

</status>

<timestamp>2003-06-22T20:57:29Z</timestamp>

</tuple>

Page 26: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

26

Privacy rulesPrivacy rules

Conditions identity, sphere time of day current location identity as <uri> or

<domain> + <except>

Actions watcher confirmation

Transformations include information reduced accuracy

User gets maximum of permissions across all matching rules privacy-safe

composition: removal of a rule can only reduce privileges

Extendable to new presence data rich presence biological sensors mood sensors

Page 27: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

27

Program location-based Program location-based servicesservices

Page 28: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

28

On-going IETF work on On-going IETF work on collaborationcollaboration

Session and service mobility Centralized conferencing Application sharing

Page 29: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

29

Service and session mobilityService and session mobility

Multimedia sessions no longer bound to either desktop or mobile device complementary strengths: mobility vs. large

display Service mobility:

move service (capabilities, reachability, configuration) temporarily to local device

Session mobility: allow active session to move across devices e.g., cell phone call moves to local set of

devices and back again

Page 30: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

30

Ubiquitous computingUbiquitous computing

SA

DA

ResourceControl(3pcc)

Service LocationQuery

SA

sendaudioto SIP

UA2Network

ApplianceControl

SIP UA1

turn onprojector

SIPUA2call

ResourceDiscovery(SLP UA)

audioand

videostreams

Scriptengine

Page 31: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

31

Service scenarioService scenario

Front desk

SIPServer

SLP Server

Hotel

Room 123

Bluetooth

Home domainSIP and AAA

server

Visitor

Media streams

Call

Call

ResourceInfo

Loca

tion

ResourcesUse Authenticate

Register

Info

Page 32: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

32

Example: user-adaptive Example: user-adaptive device configurationdevice configuration

“all devices that are in the building”RFC 3082?

PA

devicecontroller

SUBSCRIBEto each room

SUBSCRIBE to configurationfor users currently in rooms

1. discover room URI2. REGISTER as contact for room URI

tftp

HTTP

SLP

802.11 signal strength

location

REGISTERTo: 815cepsrContact: alice@cs

SIP

room 815

Page 33: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

33

Application sharingApplication sharing Currently, no good standard for sharing generic

applications pixel-based sharing, not shared text editing or other

applications designed to be shared T.128

is outdated has limited, special-purpose security integrates poorly with audio/video session setup works poorly across platforms (e.g., fonts)

vnc (we use it in our client) only whole screen

Working on new sharing model unifies conference sharing and remote access allows large groups (multicast) and centralized conferences supports hybrid video + applications (e.g., embedded movies) leverages existing protocols:

RTP for pixel transport SIP for signaling and negotiation PNG for compression

Page 34: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

34

ConclusionConclusion SIP core component of standards-based

multimedia collaboration Dial-and-hope model likely to fade for all but

teenager communication (and they are using IM…)

maybe even for calling your airline… transition to (rich) presence to find interaction times

Most protocol pieces in place, but gaps in centralized conference control & application sharing

Implementations still catching up to standards

Page 35: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

35

BackupsBackups

Page 36: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

36

Origins and evolution of Origins and evolution of SIPSIP

multicast

multimedia

voice(PSTN replacement)

3G(mobile voice)

centralizedconferencing

IM & presence

cable VoIP

Page 37: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

37

PhilosophyPhilosophy Session establishment & event notification Any session type, from audio to circuit

emulation Provides application-layer anycast service Provides terminal and session mobility Based on HTTP in syntax, but different in

protocol operation Peer-to-peer system, with optional support by

proxies even stateful proxies only keep transaction

state, not call (session, dialogue) state transaction: single request + retransmissions proxies can be completely stateless

Page 38: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

38

IETF effortsIETF efforts SIP, SIPPING and SIMPLE working groups

but also XCON (conferencing) Define SIP methods PUBLISH, SUBSCRIBE,

NOTIFY GEOPRIV:

geospatial privacy location determination via DHCP information delivery via SIP, HTTP, … privacy policies

SIMPLE: architecture for events and rich presence configuration (XCAP) session-oriented IM (↔ page mode) filtering, rate limiting and authorization

Page 39: Collaboration in the Enterprise1 SIP and Beyond Henning Schulzrinne Department of Computer Science Columbia University hgs@cs.columbia.edu Collaboration

Collaboration in the Enterprise

39

Other (implementation) Other (implementation) gapsgaps IP phones limited to narrowband

audio maybe Skype will provide incentive…

echo cancellation still generally iffy configuration harder than necessary NAT traversal no audio/video lip sync poor integration of whiteboards