Title: From anywhere, anytime communications to personalized communication
1From anywhere, anytime communications to
personalized communication
- Henning Schulzrinne
- (with Ron Shacham, Xiaotao Wu, Jonathan Lennox
and others) - Department of Computer Science
- Columbia University
- hgs_at_cs.columbia.edu
- IMTC Forum
- May 11, 2005 (Eibsee, Germany)
2Overview
- Basic multimedia communication ready
- but implementation lags
- Ring-and-hope ? presence-mediated communications
- Uses for presence
- Old Im on-line
- Location-based services
- Presence-derived call handling
- Presence-derived trust
- Presence and privacy
- Other open issues in conferencing
3Collaboration in transition
inter-organization multiple technology
generations diverse end points
intra-organization small number of systems
(meeting rooms)
standards-based solutions
proprietary (single-vendor) systems
4SIP is PBX/Centrex ready
boss/admin features
call waiting/multiple calls RFC 3261
hold RFC 3264
transfer RFC 3515/Replaces
conference RFC 3261/callee caps
message waiting message summary package
call forward RFC 3261
call park RFC 3515/Replaces
call pickup Replaces
do not disturb RFC 3261
call coverage RFC 3261
simultaneous ringing RFC 3261
basic shared lines dialog/reg. package
barge-in Join
Take Replaces
Shared-line privacy dialog package
divert to admin RFC 3261
intercom URI convention
auto attendant RFC 3261/2833
attendant console dialog package
night service RFC 3261
centrex-style features
attendant features
from Rohan Mahys VON Fall 2003 talk
5An eco system, not just a protocol
configures
XCAP (config)
SIMPLE policy RPID .
XCON (conferencing)
initiates
carries
SIP
RTSP
SDP
carries
controls
provide addresses
STUN TURN
RTP
6SIP, SIPPING SIMPLE 00 drafts
includes draft-ietf--00 and draft-personal--00
7SIP a bi-cultural protocol
- multimedia
- IM and presence
- location-based service
- user-created services
- decentralized operation
- everyone equally suspect
- overlap dialing
- DTMF carriage
- key systems
- notion of lines
- per-minute billing
- early media
- ISUP BICC interoperation
- trusted service providers
8Does it have to be that complicated?
- highly technical parameters, with differing names
- inconsistent conventions for user and realm
- made worse by limited end systems (configure by
multi-tap) - usually fails with some cryptic error message and
no indication which parameter - out-of-box experience not good
9Aside Why is Skype successful?
- All the advantages of a proprietary protocol
- Peer-to-peer coincidental
- only need 6 servers to support 10 million users
- Good out-of-box experience ? it just works
- Software vendor service provider
- Didnt know that you couldnt do voice quality
beyond PSTN - others too focused on PSTN interoperability why
do better voice than PSTN? - Simpler solutions for NAT traversal
- use TCP if necessary
- use port 80
- Did encryption from the very beginning
- Kazaa marketing vehicle
10Context-aware communication
- 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 routing location events
activity/availability presence
sensor data (mood, bio) privacy issues similar to location data
11Evolution of VoIP
how can I make it stop ringing?
does it do call transfer?
long-distance calling, ca. 1930
going beyond the black phone
amazing the phone rings
catching up with the digital PBX
1996-2000
2000-2003
2004-
12The 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, doesnt 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
13Basic 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? is the callee awake? - 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
14Rich presence
- More information
- automatically derived from
- sensors physical presence, movement
- electronic activity calendars
- Rich information
- 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, )
15RPID rich presence
ltpersongt lttuplegt ltdevicegt
ltactivitiesgt
ltclassgt
ltmoodgt
ltplace-isgt
ltplace-typegt
ltprivacygt
ltrelationshipgt
ltservice-classgt
ltspheregt
ltstatus-icongt
lttime-offsetgt
ltuser-inputgt
16Presence data model
calendar
cell
manual
person (presentity) (views)
alice_at_example.com audio, video, text
r42_at_example.com video
services
devices
17RPID 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 - dont show recreation details to colleagues
18The role of presence for call routing
PUBLISH
- Two modes
- watcher uses presence information to select
suitable contacts - advisory caller may not adhere to suggestions
and still call when youre 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)
PA
NOTIFY
translate RPID
LESS
CPL
INVITE
19Presence 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
lttuple id"sg89ae"gt ltstatusgt ltgpgeoprivgt
ltgplocation-infogt ltgmllocationgt
ltgmlPoint gmlid"point1 srsName"ep
sg4326"gt ltgmlcoordinatesgt374630N
1222510W lt/gmlcoordinatesgt
lt/gmlPointgt lt/gmllocationgt
lt/gplocation-infogt ltgpusage-rulesgt
ltgpretransmission-allowedgtno lt/gpretransmissi
on-allowedgt ltgpretention-expirygt2003-06-2
3T045729Z lt/gpretention-expirygt
lt/gpusage-rulesgt lt/gpgeoprivgt lt/statusgt
lttimestampgt2003-06-22T205729Zlt/timestampgt lt/tupl
egt
20Location-based services
- Finding services based on location
- physical services (stores, restaurants, ATMs, )
- electronic services (media I/O, printer, display,
) - not covered here
- Using location to improve (network) services
- communication
- incoming communications changes based on where I
am - configuration
- devices in room adapt to their current users
- awareness
- others are (selectively) made aware of my
location - security
- proximity grants temporary access to local
resources
21Program location-based services
22Presence for spam prevention
- VoIP spam (spit) and IM spam (spim) likely to
be more annoying than email spam - Subscription to another person is indication of
mutual trust - other person allows me to see their status ?
trusts me - Thus, use watcher list (who is watching me) as
trust vector
23Open issues for conferencing standardization
- Multi-device systems and session mobility
- Conference floor control ? BFCP
- simple RPC-like protocol
- Centralized conference control (XCON WG)
- still struggling with control model
- set get variables (SNMP)
- RPC-like model (? SOAP, XML-RPC, NETCONF)
- send descriptions?
- forms (XForms?)?
24Session mobility
Local Devices
Transcoder
Internet
SLP DA
SLP SA
SLP UA
SIP SM
SIP UA
SIP UA
Correspondent Node (CN)
SLP SIP RTP
SIP SM
SIP UA
SLP UA
Mobile Node (MN)
25The conference tree
all Acme Widget conferences
- Tree ? inheritance
- Each level can be addressed via a URL
- Each layer links to parents and children
- Lowest layer information wins
- Parent can designate variables that cannot be
overridden (forced global) - Easily supports
- (corporate) policies
- recurring events with exceptions
- modifying the active conference only
- Probably also supports
- side bars and other multi-policy configurations
- permanent text chat rooms
weekly eng. mtg.
instance 1
- Each node can reference scheduling information
- but may not
26XCON System
27Open issues application sharing
- Current T.120
- doesnt integrate well with other conference
control mechanisms - hard to make work across platforms (fonts)
- ill-defined security mechanisms
- Current web-based sharing
- hard to integrate with other media, control and
record - generally only works for Windows
- mostly limited to shared PowerPoint
- Current vnc
- whole-screen sharing only
- can be coerced into conferencing, but doesnt
integrate well with control protocols
28IETF effort standardized application sharing
- Remote access application sharing
- Four components
- window drawing ops ? PNG
- keyboard input
- mouse input
- window operations (raise, lower, move)
- Uses RTP as transport
- synchronization with continuous media
- but typically, TCP
- allow multicast ? large group sessions
29Conclusion
- Basic multimedia communication solutions
available - scalable, secure, good quality
- Media delivery ? controlled interaction
- Binary presence ? rich presence
- Presence as enabler of loosely-coupled advanced
services - location-based services
- serve as service script inputs
- trust indicator for spit/spim prevention
- Application sharing as missing link
- Harder to maintain focus in the IETF
- exhaustion, moving on to other things
30Backup slides
31Presence data architecture
presence sources
PUBLISH
raw presence document
privacy filtering
create view (compose)
depends on watcher
XCAP
XCAP
select best source resolve contradictions
composition policy
privacy policy
(not defined yet)
draft-ietf-simple-presence-data-model
32Presence data architecture
candidate presence document
raw presence document
post-processing composition (merging)
watcher filter
SUBSCRIBE
remove data not of interest
difference to previous notification
final presence document
watcher
NOTIFY
33RPID rich presence
ltpersongt lttuplegt ltdevicegt
ltactivitiesgt
ltclassgt
ltmoodgt
ltplace-isgt
ltplace-typegt
ltprivacygt
ltrelationshipgt
ltservice-classgt
ltspheregt
ltstatus-icongt
lttime-offsetgt
ltuser-inputgt