Upload
quinto
View
36
Download
0
Embed Size (px)
DESCRIPTION
SIP for Instant Messaging and Presence Leveraging Extensions (SIMPLE). Reporter : Allen. Outline. Introduction IMPP Model SIP for presence SIP for instant messaging Conclusion. Introduction. WHAT IS PRESENCE? - PowerPoint PPT Presentation
Citation preview
SIP for Instant Messaging and Presence Leveraging
Extensions (SIMPLE)
Reporter : Allen
Outline
Introduction IMPP Model SIP for presence SIP for instant messaging Conclusion
Introduction
WHAT IS PRESENCE? Also known as presence information, conveys the
ability and willingness of a user to communicate across a set of devices
WHAT IS Instant Message? “Real-time email”
IMPP ModelPresence Service(1)
Presence Service
PRESENTITY WATCHER
WATCHER
SUBSCRIBERFETCHER
POLLER
FETCHERSimply requests the current value of some PRESENTITY’s presence information from the presence service
POLLERA special kind of FETCHER is one that fetches information on a regular basis
SUBSCRIBRRequests notification from the presence service of change in some PRESENTITY’s presence information
IMPP ModelPresence Service(3)
Presentity
Presentity UA
Watcher
• Subscriber• Fetcher
Presence Service
Principal
Presence Protocol
IMPP ModelPresence Service(4)
PRESENTITY
PRESENTITY UA
Presence Service
Presence Protocol
PrincipalPrincipal
WATCHER
WATCHER UA
IMPP ModelInstant Messaging(1)
Sender provides instant
messages to Instant Messaging Service
Instant Inbox receives instant
messages from Instant Messaging Service
Instant Messaging Service
Sender Instant Inbox
IMPP ModelInstant Messaging(2)
Sender
Sender UA
Instant Inbox
Instant Messaging Service
Principal
Instant MessagingProtocol
IMPP ModelInstant Messaging(3)
Sender
Sender UA
Instant Inbox
Instant Messaging Service
Principal
Instant MessagingProtocol
Inbox UA
Principal
SIP for presence(1) two new methods: SUBSCRIBE, NOTIFY Presence Agent (PA) accepts subscriptions for
presence notifications and sends these on state changes
PA mostly co-located with SIP User Agent But can also be with SIP registrar or separate
PA receives SUBSCRIBE request and gets authorization from target if authorized, a positive response gets back (i.e. 200 OK)
target changes state PA sends changed state as presence information (in body)
via NOTIFY request to subscribers
SIP for presence(2)
subscription to a PA (Presentity) expires as indicated by the Expires: header
subscriber has to re- SUBSCRIBE to get further notifications
SIP for presence Workflow
WATCHER SERVER PUA
SUBSCRIBE
200 OK
NOTIFY
200 OK
UPDATE PRESENCE
NOTIFY
200 OK
SIP for presence: subscription (1)SUBSCRIBE sip:[email protected] SIP/2.0
Via: SIP/2.0/TCP watcherhost.example.com;branch=z9hG4bKnashds7
To: <sip:[email protected]>
From: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
CSeq: 17766 SUBSCRIBE
Max-Forwards: 70
Event: presence
Accept: application/cpim-pidf+xml
Contact: <sip:[email protected]>
Expires: 600
Content-Length: 0
SIP for presence: subscription (2)SIP/2.0 200 OK
Via: SIP/2.0/TCP
watcherhost.example.com;branch=z9hG4bKnashds7;received=192.0.2.1
To: <sip:[email protected]>;tag=ffd2
From: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
CSeq: 17766 SUBSCRIBE
SIP for presence: notification (1)
NOTIFY sip:[email protected] SIP/2.0
Via: SIP/2.0/TCP server.example.com;branch=z9hG4bKnk
From: <sip:[email protected]>;tag=ffd2
To: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
Event: presence
Subscription-State: active;expires=599
Max-Forwards: 70
CSeq: 8775 NOTIFY
Contact: sip:server.example.com
Content-Type: application/cpim-pidf+xml
Content-Length: ..
[PIDF Document]
SIP for presence: notification (2)
SIP/2.0 200 OK
Via: SIP/2.0/TCP server.example.com;branch=z9hG4bKnk;received=192.0.2.2
From: <sip:[email protected]>;tag=ffd2
To: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
CSeq: 8775 NOTIFY
Content-Length: 0
Example: SIP for presenceTime
SIP clientofsubscriber
SIPfront-end(PA)
Clientback-end
NOTIFY
Auth ?
Ok
I’m online
200 OK
SUBSCRIBE
200 OK
I’m awayNOTIFY
200 OK
IMPP interworking : XML data formats IMPP and SIMPLE working group have
defined protocol-neutral data formats in XML for presence information (PIDF) watcher information buddy lists configuration (XCAP)
Example: PIDF for presence
<presence xmlns="urn:ietf:params:cpimpresence:" entity=“pres:[email protected]"> <tuple id=“im"> <status> <basic>open</basic> </status> <contact priority="2"> im:[email protected] </contact> </tuple> </presence>
SIP for instant messaging new method: MESSAGE SIP client (sender) issues MESSAGE request
instant message is send in request body
reception of instant message is indicated by SIP response
subsequent messages can use same Call-ID (for threading)
Time
MESSAGE
202 Accepted
SIP client(sender)
SIP client(Instant Inbox)
SIP for instant messagingMESSAGE sip:[email protected] SIP/2.0
Via: SIP/2.0/TCP server.example.com;branch=z9hG4bKnk
From: <sip:[email protected]>;tag=ffd2
To: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
Max-Forwards: 70
CSeq: 1 MESSAGE
Content-Type: text/plain
Content-Length: 18
Watson, come here.
SIP/2.0 202 Accepted
Via: SIP/2.0/TCP server.example.com;branch=z9hG4bKnk
From: <sip:[email protected]>;tag=ffd2
To: <sip:[email protected]>;tag=xfg9
Call-ID: [email protected]
Max-Forwards: 70
CSeq: 1 MESSAGE
Content-Length: 0
Conclusion
Who Will Win (XMPP and SIMPLE)? SIP security more difficult than email or web Try to re-use existing mechanisms:
IPsec and TLS Digest authentication S/MIME for end-to-end HTTP EAP?
Q & A