1 / 71

Session Initiation Protocol (SIP)

Session Initiation Protocol (SIP). Onno W. Purbo Onno@indo.net.id. Referensi. Henning Schulzrinne, Columbia University, New York, May 2001 Dr. Andreas Steffen, Komunikationsysteme. SIP in short. Dr. Andreas Steffen, Komunikationsysteme. SIP addressing. SIP processes. SIP format.

baruch
Download Presentation

Session Initiation Protocol (SIP)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Session Initiation Protocol (SIP) Onno W. Purbo Onno@indo.net.id

  2. Referensi • Henning Schulzrinne, Columbia University, New York, May 2001 • Dr. Andreas Steffen, Komunikationsysteme

  3. SIP in short .. • Dr. Andreas Steffen, Komunikationsysteme

  4. SIP addressing ..

  5. SIP processes

  6. SIP format

  7. Overview • Protocol architecture • Typical component architecture • Addressing and locating SIP entities. • Protocol operation and extensions.

  8. Introduction .. • SIP = core protocol for establishing sessions in the internet. • Transports session description information from initiator (caller) to callees. • Allows to exchange parameters in mid-session. • Terminate session.

  9. VoIP protocol architecture

  10. Media Protocol Stack

  11. SIP Protocol Use

  12. SIP Applications .. • Setting up voice-over-IP calls. • Setting up multimedia conferences. • Event notification (subscribe / notify)  IM and presence. • Text and general messaging. • Signaling transport.

  13. SIP addressing • SIP uses e-mail style addressing to identify users.

  14. Personal Mobility

  15. SIP addressing .. • Typically, same as user’s e-mail address: • djancuk@surabaya.com • 02114204701@gateway-r-us.com • Written as URL, e.g, • Sip:djancuk@surabaya.com • Can add parameters, such as, type (user=“phone”) or transport protocol.

  16. Tel URLs (RFC 2806) • Also can use tel URL for telephone numbers, e.g., • Tel:+0811797677 • Fax:+022.253.4677 • Either global (tel:+001..) or local (tel:0w00222534677; phone-context=+0222534677) number. • Allow post-dialing digits; postd=pp32. • Also modem:+52990000; type=v32b?7e1; type=v110.

  17. SIP building blocks

  18. Back-to-Back UA (B2BUA) • Two (or more) user agents, where incoming calls trigger outgoing calls to somebody else. • Also, “third-party call control” (later) • Useful for services and anonymity

  19. Back-to-Back UA (B2BUA)

  20. Maintaining state in SIP enitities. • Stateless: • Each request and response handled independently. • (Transaction) Stateful: • Remember a whole request/response transaction. • Call stateful: • Remember a call from beginning to end.

  21. SIP archirecture • Peer-to-peer • Outbound proxy • VoIP to PSTN • PSTN to VoIP

  22. peer-to-peer

  23. outbound proxy

  24. VoIP to PSTN

  25. PSTN to VoIP

  26. SIP operation in proxy mode

  27. SIP operation in redirect mode • 302: redirection for a single call • 301: permanently

  28. Locating SIP users

  29. Registrar and location servers

  30. Basic user location mechanism • Host (SIP URL)  hostname of proxy • DNS: hostname of proxy SIP server(s) • If SIP UAS: alter user; done. • If SIP proxy/redirect server: map URLn  URLn+1, using any information in the request • Go to step 1 One minor exception ..

  31. Basic SIP “routing” mechanism • Will fill in details later • Route using request URIs. • All but first request in call typically bypass proxies and go direct UAC-UAS. • However, can use “record-routing” to force certain proxies to be visited all the time. • Responses always traverse the same route as requests

  32. Outbound proxies • Normally, proxy servers one or more domains. • Outbound proxies are used for all outbound requests from within a domain. • Typically, for managing corporate firewalls and policy enforcement. • May also provide dial plans or route tel/fax URLs. • Other uses: lawyer client billing, ..

  33. Locating users: DNS SRV .. • e-mail: DNS MX record mapping domain to mail server(s). • SIP: use newer record for general purpose mapping, SRV (RFC 2782) • Mapping from service and transport protocol to one or more servers, including protocols.

  34. Locating users: DNS SRV .. • Allow priority (for back-up) and weight (for load balancing).

  35. Using DNS SRV for scalable load balacing ..

  36. Aside: SIP scaling .. • HTTP request director  SIP client-based • HTTP randomized DNS (short TTL!)  SRV weight and priorities. • Can’t just distribute request randomly, since backend (registration) synchronization is needed.

  37. Aside: SIP scaling .. • Registration scaling: request/second * 3600; e.g. 100 request/second  360.000 user/server. • Major bottleneck are logging and database updates. • Generally, higher registration than INVITE rates.

  38. SIP operation ..

  39. SIP requests and responses • Text, not binary, format. • Look very similar to HTTP/1.1 • Requests and responses are similar except for first line. • Requests and responses can contain message bodies; typically session descriptions, but also ASCII or HTML.

  40. SIP syntax

  41. SIP syntax • Field names and some tokens, e.g. media type, are case-insensitive. • Everything else is case-sensitive. • White space doesn’t matter except in the first line. • Lines can be folded. • Multi-valued header fields can be combined as a comma-lists.

  42. SIP methods

  43. SIP invitation and media negotiation

More Related