Download presentation
Presentation is loading. Please wait.
Published byLorraine Perry Modified over 8 years ago
1
April 13, 2006Jiao Tong University, Shanghai1 Advanced Multimedia and Presence Services using Classical and P2P SIP Henning Schulzrinne (with Kundan Singh, Ron Shacham, Xiaotao Wu, Jonathan Lennox and others) Department of Computer Science Columbia University hgs@cs.columbia.edu
2
April 13, 2006 Jiao Tong University, Shanghai2 Overview Quick overview of SIP Ring-and-hope presence-mediated communications Uses for presence: Old: “I’m on-line” Location-based services Presence-derived call handling Presence-derived trust Presence and privacy Service and session mobility Application sharing
3
April 13, 2006 Jiao Tong University, Shanghai3 Philosophy transition One computer, many users One computer, one user Many computers, one user anywhere, any time any media right place (device), right time, right media ~ ubiquitous computing mainframe era
4
April 13, 2006 Jiao Tong University, Shanghai4 Evolution of VoIP “amazing – the phone rings” “does it do call transfer?” “how can I make it stop ringing?” 1996-2000 2000-20032004- catching up with the digital PBX long-distance calling, ca. 1930 going beyond the black phone
5
April 13, 2006 Jiao Tong University, Shanghai5 Collaboration in transition intra-organization; small number of systems (meeting rooms) inter-organization multiple technology generations diverse end points proprietary (single- vendor) systems standards-based solutions
6
April 13, 2006 Jiao Tong University, Shanghai6 SIP Overview
7
April 13, 2006 Jiao Tong University, Shanghai7 Internet services – the missing entry Service/deliverysynchronousasynchronous pushinstant messaging presence event notification session setup media-on-demand messaging pulldata retrieval file download remote procedure call peer-to-peer file sharing
8
April 13, 2006 Jiao Tong University, Shanghai8 Filling in the protocol gap Service/deliverysynchronousasynchronous pushSIP RTSP, RTP SMTP pullHTTP ftp SunRPC, Corba, SOAP (not yet standardized)
9
April 13, 2006 Jiao Tong University, Shanghai9 SIP 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
10
April 13, 2006 Jiao Tong University, Shanghai10 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) Standardized by IETF (RFC 3261-3265 et al) 3GPP (for 3G wireless) PacketCable About 100 companies produce SIP products Microsoft’s Windows Messenger (≥4.7) includes SIP
11
April 13, 2006 Jiao Tong University, Shanghai11 Philosophy 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
12
April 13, 2006 Jiao Tong University, Shanghai12 Basic SIP message flow
13
April 13, 2006 Jiao Tong University, Shanghai13 SIP trapezoid outbound proxy a@foo.com: 128.59.16.1 registrar 1 st request 2 nd, 3 rd, … request voice traffic RTP destination proxy (identified by SIP URI domain)
14
April 13, 2006 Jiao Tong University, Shanghai14 SIP message format SDP INVITE sip:bob@there.com SIP/2.0 Via: SIP/2.0/UDP here.com:5060 From: Alice To: Bob Call-ID: 1234@here.com CSeq: 1 INVITE Subject: just testing Contact: sip:alice@pc.here.com Content-Type: application/sdp Content-Length: 147 v=0 o=alice 2890844526 2890844526 IN IP4 here.com s=Session SDP c=IN IP4 100.101.102.103 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000 SIP/2.0 200 OK Via: SIP/2.0/UDP here.com:5060 From: Alice To: Bob Call-ID: 1234@here.com CSeq: 1 INVITE Subject: just testing Contact: sip:alice@pc.here.com Content-Type: application/sdp Content-Length: 134 v=0 o=bob 2890844527 2890844527 IN IP4 there.com s=Session SDP c=IN IP4 110.111.112.113 t=0 0 m=audio 3456 RTP/AVP 0 a=rtpmap:0 PCMU/8000 message body header fields request line request response
15
April 13, 2006 Jiao Tong University, Shanghai15 PSTN vs. Internet Telephony Signaling & Media Signaling Media PSTN: Internet telephony: China Belgian customer, currently visiting US Australia
16
April 13, 2006 Jiao Tong University, Shanghai16 SIP addressing Users identified by SIP or tel URIs sip:alice@example.com tel: URIs describe E.164 number, not dialed digits (RFC 2806bis) tel URIs SIP URIs by outbound proxy A person can have any number of SIP URIs The same SIP URI can reach many different phones, in different networks sequential & parallel forking SIP URIs can be created dynamically: GRUUs conferences device identifiers (sip:foo@128.59.16.15) Registration binds SIP URIs (e.g., device addresses) to SIP “address-of-record” (AOR) tel:110 sip:sos@domain domain 128.59.16.17 via NAPTR + SRV
17
April 13, 2006 Jiao Tong University, Shanghai17 3G Architecture (Registration) visited IM domain home IM domain serving CSCF interrogating proxy interrogating mobility management signaling registration signaling (SIP)_
18
April 13, 2006 Jiao Tong University, Shanghai18 SIP is PBX/Centrex ready call waiting/multiple calls RFC 3261 holdRFC 3264 transferRFC 3515/Replaces conferenceRFC 3261/callee caps message waitingmessage summary package call forwardRFC 3261 call parkRFC 3515/Replaces call pickupReplaces do not disturbRFC 3261 call coverageRFC 3261 from Rohan Mahy’s VON Fall 2003 talk simultaneous ringing RFC 3261 basic shared linesdialog/reg. package barge-inJoin “Take”Replaces Shared-line “privacy” dialog package divert to adminRFC 3261 intercomURI convention auto attendantRFC 3261/2833 attendant consoledialog package night serviceRFC 3261 centrex-style features boss/admin features attendant features
19
April 13, 2006 Jiao Tong University, Shanghai19 A constellation of SIP RFCs Resource mgt. (3312) Reliable prov. (3262) INFO (2976) UPDATE (3311) Reason (3326) SIP (3261) DNS for SIP (3263) Events (3265) REFER (3515) DHCP (3361) DHCPv6 (3319) Digest AKA (3310) Privacy (3323) P-Asserted (3325) Agreement (3329) Media auth. (3313) AES (3853) Non-adjacent (3327) Symmetric resp. (3581) Service route (3608) User agent caps (3840) Caller prefs (3841) ISUP (3204) sipfrag (3240) Security & privacy Configuration Core Mostly PSTN Content types Request routing
20
April 13, 2006 Jiao Tong University, Shanghai20 An eco system, not just a protocol SIP XCAP (config) RTSP SIMPLE policy RPID …. SDP XCON (conferencing) STUN TURN RTP configures initiatescarries controls provide addresses
21
April 13, 2006 Jiao Tong University, Shanghai21 SIP – 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
22
April 13, 2006 Jiao Tong University, Shanghai22 Context-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 timeCPL capabilitiescaller preferences locationlocation-based call routing location events activity/availabilitypresence sensor data (mood, bio)privacy issues similar to location data
23
April 13, 2006 Jiao Tong University, Shanghai23 GEOPRIV and SIMPLE architectures target location server location recipient rule maker presentity caller presence agent watcher callee GEOPRIV SIP presence SIP call PUBLISH NOTIFY SUBSCRIBE INVITE publication interface notification interface XCAP (rules) INVITE DHCP
24
April 13, 2006 Jiao Tong University, Shanghai24 The 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
25
April 13, 2006 Jiao Tong University, Shanghai25 Basic 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
26
April 13, 2006 Jiao Tong University, Shanghai26 Presence data architecture raw presence document create view (compose) privacy filtering draft-ietf-simple-presence-data-model composition policy privacy policy presence sources XCAP (not defined yet) depends on watcher select best source resolve contradictions PUBLISH
27
April 13, 2006 Jiao Tong University, Shanghai27 Presence data architecture candidate presence document watcher filter raw presence document post-processing composition (merging) final presence document difference to previous notification SUBSCRIBE NOTIFY remove data not of interest watcher
28
April 13, 2006 Jiao Tong University, Shanghai28 Presence data model “calendar”“cell”“manual” alice@example.com audio, video, text r42@example.com video person (presentity) (views) services devices
29
April 13, 2006 Jiao Tong University, Shanghai29 Rich 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, …)
30
April 13, 2006 Jiao Tong University, Shanghai30 RPID: rich presence
31
April 13, 2006 Jiao Tong University, Shanghai31 RPID = 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
32
April 13, 2006 Jiao Tong University, Shanghai32 CIPID: Contact Information More long-term identification of contacts Elements: card – contact Information home page icon – to represent user map – pointer to map for user sound – presentity is available
33
April 13, 2006 Jiao Tong University, Shanghai33 The role of presence for call routing 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 translate RPID CPL PA PUBLISH NOTIFY INVITE
34
April 13, 2006 Jiao Tong University, Shanghai34 Presence 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 <gml:Point gml:id="point1“ srsName="epsg:4326"> 37:46:30N 122:25:10W no 2003-06-23T04:57:29Z 2003-06-22T20:57:29Z
35
April 13, 2006 Jiao Tong University, Shanghai35 Privacy policy relationships geopriv-specificpresence-specific common policy RPIDCIPID future
36
April 13, 2006 Jiao Tong University, Shanghai36 Privacy rules Conditions identity, sphere time of day current location identity as or + 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
37
April 13, 2006 Jiao Tong University, Shanghai37 Example rules document user@example.com allow sip mailto true bare
38
April 13, 2006 Jiao Tong University, Shanghai38 Creating and manipulating rules Uploaded in whole or part via XCAP XML not user-visible Web or application UI, similar to mail filtering Can also be location-dependent “if at home, colleagues don’t get presence information” Possibly implementation-defined “privacy levels”
39
April 13, 2006 Jiao Tong University, Shanghai39 Location-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
40
April 13, 2006 Jiao Tong University, Shanghai40 Location-based SIP services Location-aware inbound routing do not forward call if time at callee location is [11 pm, 8 am] only forward time-for-lunch if destination is on campus do not ring phone if I’m in a theater outbound call routing contact nearest emergency call center send delivery@pizza.com to nearest branchdelivery@pizza.com location-based events subscribe to locations, not people Alice has entered the meeting room subscriber may be device in room our lab stereo changes CDs for each person that enters the room
41
April 13, 2006 Jiao Tong University, Shanghai41 Location detection
42
April 13, 2006 Jiao Tong University, Shanghai42 DHCP for locations modified dhcpd (ISC) to generate location information use MAC address backtracing to get location information DHCP server 458/17 Rm. 815 458/18 Rm. 816 DHCP answer: sta=DC loc=Rm815 lat=38.89868 long=77.03723 8:0:20:ab:d5:d CDP + SNMP 8:0:20:ab:d5:d 458/17
43
April 13, 2006 Jiao Tong University, Shanghai43 Location-based service language false true NOTIFY action alert conditions proximity occupancy time IM actions alert message log call transfer join events incoming outgoing notify message subscription
44
April 13, 2006 Jiao Tong University, Shanghai44 Program location-based services
45
April 13, 2006 Jiao Tong University, Shanghai45
46
April 13, 2006 Jiao Tong University, Shanghai46 Tracking
47
April 13, 2006 Jiao Tong University, Shanghai47 Internet2 WG PIC trial PUBLISH presence status NOTIFY myself and others’ locations SUBSCRIBE to my location
48
April 13, 2006 Jiao Tong University, Shanghai48 Example: user-adaptive device configuration “all devices that are in the building” RFC 3082? PA device controller SUBSCRIBE to each room SUBSCRIBE to configuration for users currently in rooms 1.discover room URI 2.REGISTER as contact for room URI tftp HTTP SLP 802.11 signal strength location REGISTER To: 815cepsr Contact: alice@cs SIP room 815
49
April 13, 2006 Jiao Tong University, Shanghai49 Session mobility Walk into office, switch from cell phone to desk phone call transfer problem SIP REFER related problem: split session across end devices e.g., wall display + desk phone + PC for collaborative application assume devices (or stand-ins) are SIP- enabled third-party call control
50
April 13, 2006 Jiao Tong University, Shanghai50 How to find services? Two complementary developments: smaller devices carried on user instead of stationary devices devices that can be time-shared large plasma displays projector hi-res cameras echo-canceling speaker systems wide-area network access Need to discover services in local environment SLP (Service Location Protocol) allows querying for services “find all color displays with at least XGA resolution” slp://example.com/SrvRqst?public?type=printer SLP in multicast mode SLP in DA mode Need to discover services before getting to environment “is there a camera in the meeting room?” SLP extension: find remote DA via DNS SRV
51
April 13, 2006 Jiao Tong University, Shanghai51 Internet Correspondent Node (CN) SIP UA SLP UA SIP SM Local Devices SLP SA SLP UA SIP SM SIP UA SLP DA Mobile Node (MN) SLP SIP RTP SIP UA Transcoder Session mobility
52
April 13, 2006 Jiao Tong University, Shanghai52 Presence 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
53
April 13, 2006 Jiao Tong University, Shanghai53 Conferencing issues
54
April 13, 2006 Jiao Tong University, Shanghai54 Open 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?)?
55
April 13, 2006 Jiao Tong University, Shanghai55 XCON System Logical XCON Server Floor Control Client TEMPLATE Of the SYSTEM: Pre-configured Initial/Default values Conf Event Notification Server Focus CPCP Client CCCP Client CPCP Server CCCP Server Call Signaling Client TEMPLATE Policy: Of TYPE RULES RESERVATION Policy: Of TYPE RULES CURRENT Policy: Of TYPE RULES RESERVATION Of the INSTANCE: Of TYPE CONFERENCE-INFO STATE Of the CURRENT INSTANCE: Of TYPE CONFERENCE-INFO Notification Client Floor Control Server SIP/ PSTN/ H.323 T.120/ Etc. CCCP CPCP SIP NOTIFY/ Etc. BFCP Logical XCON Client
56
April 13, 2006 Jiao Tong University, Shanghai56 Open issues: application sharing Current: T.120 doesn’t 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 doesn’t integrate well with control protocols
57
April 13, 2006 Jiao Tong University, Shanghai57 IETF 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
58
April 13, 2006Jiao Tong University, Shanghai58 Peer-to-peer approaches for SIP Henning Schulzrinne Dept. of Computer Science Columbia University
59
April 13, 2006 Jiao Tong University, Shanghai59 Applications Small stand-alone networks 2-50 SOHO, events, emergency coordination may not have access to Internet infrastructure Corporate size networks 50-1000 single administrator Global-scale networks 1000-100 million consumer applications serious trust issues
60
April 13, 2006 Jiao Tong University, Shanghai60 SIP-managed DHT OpenDHT Three basic approaches Full distribution and search similar to Bonjour scales to small, local networks DHT built using SIP see Kundan/Schulzrinne and Cao/Bryan/Lowekamp dedicated to VoIP Skype model Using an external DHT (Columbia) using OpenDHT as generic service used by multiple applications can provide mapping or pointer to mapping
61
April 13, 2006 Jiao Tong University, Shanghai61 P2P-SIP: Implementation in SIPc OpenDHT Trusted nodes Robust Fast enough (<1s) Identity protection Certificate-based SIP id == email P2P for Calls, IM, presence, offline message, STUN server discovery and name search
62
April 13, 2006 Jiao Tong University, Shanghai62 P2P-SIP: What is OpenDHT? Service model, unlike earlier library model of Chord or CAN DHT accessed via SunRPC & XML-RPC Easy deployment and maintenance 200-300 Bamboo DHT nodes on PlanetLab Public DHT service running since April 2004 Many existing applications: i3, CFS, Ostream, HIP,… DHT API (server side on Bamboo nodes) PUT(key,value,H(secret),ttl) where H() is SHA1 GET(key) (value,H(secret),remaining-ttl) REMOVE(key,H(value),secret,ttl) ReDiR API (client side for lookup/join/leave) Can build anycast, multicast, range search using this Fair resource (disk) allocation among clients (IP addr)
63
April 13, 2006 Jiao Tong University, Shanghai63 Hybrid architecture Cross register, or Locate during call setup DNS, or P2P-SIP hierarchy
64
April 13, 2006 Jiao Tong University, Shanghai64 Conclusion Lots of open issues… Motivation for P2P? Low operational cost? Ease of use? Reliability? What to use p2p for? identifier lookup (“location server)” locating a NAT traversal server (STUN) media file storage (voice mail) presence conferencing Some architectural open issues trust (sybil, byzantine failures) “man-in-the-middle” identifier ownership prevention? at least, detection reliability
65
April 13, 2006 Jiao Tong University, Shanghai65 Conclusion 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 P2P mode as complementary model
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.