SIP for Instant Messaging and Presence Leveraging

Download Report

Transcript SIP for Instant Messaging and Presence Leveraging

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 Model Presence Service(1) Presence Service  FETCHER  Simply requests the current value of some PRESENTITY’s presence information from the presence service  POLLER  A special kind of FETCHER is one that fetches information on a regular basis  SUBSCRIBR  Requests notification from the presence service of change in some PRESENTITY’s presence information WATCHER FETCHER POLLER SUBSCRIBER PRESENTITY WATCHER

IMPP Model Presence Service(3) Presence Service Presence Protocol Presentity Presentity UA Watcher • • Subscriber Fetcher Principal

IMPP Model Presence Service(4) Presence Service Presence Protocol PRESENTITY PRESENTITY UA WATCHER WATCHER UA Principal Principal

IMPP Model Instant 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 Model Instant Messaging(2) Instant Messaging Service Sender Instant Messaging Protocol Instant Inbox Sender UA Principal

IMPP Model Instant Messaging(3) Instant Messaging Service Sender Instant Messaging Protocol Instant Inbox Sender UA Inbox UA Principal 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

notifications to get further

WATCHER SIP for presence Workflow SERVER SUBSCRIBE 200 OK NOTIFY 200 OK UPDATE PRESENCE PUA 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: From: ;tag=xfg9 Call-ID: [email protected]

CSeq: 17766 SUBSCRIBE Max-Forwards: 70 Event: presence Accept: application/cpim-pidf+xml Contact: 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: ;tag=ffd2 From: ;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: ;tag=ffd2 To: ;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: ;tag=ffd2 To: ;tag=xfg9 Call-ID: [email protected]

CSeq: 8775 NOTIFY Content-Length: 0

Example: SIP for presence

Time SIP client of subscriber SUBSCRIBE 200 OK NOTIFY 200 OK NOTIFY 200 OK Auth ?

SIP front end (PA) Ok I’m online Client back-end I’m away

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

open im:[email protected]

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 messaging

MESSAGE sip:[email protected] SIP/2.0

Via: SIP/2.0/TCP server.example.com;branch=z9hG4bKnk From: ;tag=ffd2 To: ;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: ;tag=ffd2 To: ;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