1 / 29

Session Initialization Protocol (SIP)

Session Initialization Protocol (SIP). Presented by: Lei Luo Computer & Information Science Department University of Delaware Nov. 18, 2004 Some slides are borrowed from Dorgham Sisalem’s SIP Tutorial. What Is SIP?. Alice’s Home Station. Alice. Phone Network. Bob. What is SIP?.

carter
Download Presentation

Session Initialization 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 Initialization Protocol (SIP) Presented by: Lei Luo Computer & Information Science Department University of Delaware Nov. 18, 2004 Some slides are borrowed from Dorgham Sisalem’s SIP Tutorial

  2. What Is SIP? Alice’s Home Station Alice Phone Network Bob

  3. What is SIP? • A signaling protocol • Set up • Modify Multimedia Sessions • Tear down • Request/deliver presence and Instant messages • Enable Internet endpoints • Discover one another • Agree on a characterization of a session

  4. What is NOT SIP? • Not a transport protocol • Not a media transmission protocol • Not a QoS Reservation Protocol • Not an integrated communications system

  5. Internet Multimedia Protocol Stack SCTP Source: Henning Schulzrinne, http://www.cs.columbia.edu/~hgs/internet/

  6. What can SIP Do? • User Location • User Availability • User Capability • Session Setup • Session Management

  7. What Else Can SIP Do? • Request/deliver presence information and instant message sessions: • Publish and upload presence information • Request delivery of presence information • Notify presence and other events • Transport instant messages

  8. Marconi Tesla INVITE 180 Ringing 200 OK ACK Media Session BYE 200 OK Simple SIP session establishment example

  9. Proxy Server Bob Alice INVITE INVITE 180 Ringing 180 Ringing 200 OK 200 OK ACK Media Session BYE 200 OK SIP call example with proxy server

  10. Alice Registrar Server REGISTER Contact: sip:alice@128.175.13.16 200 OK SIP registration example

  11. SUBSCRIBE 200 OK NOTIFY 200 OK … NOTIFY 200 OK MESSAGE 200 OK MESSAGE 200 OK SIP presence and instant message example

  12. How does SIP Work? • Based on HTTP-like request/response model • Text-based protocol • Use the UTF-8 charset • SIP message • A request from a client to a server • A response from a server to a client

  13. SIP User Agent (UA) • SIP-enabled end-devices • Maintain states on calls • Local and remote tags • Call-ID • Local and remote CSeq header fields • Contain client (UAC) & server applications (UAS) • Must support SDP for media description

  14. SIP User Agent Examples Cisco Siemens MIC

  15. Presence Agent • SIP devices • Receive subscription requests • Generate state notifications • Collect presence information • Need to authenticate a subscription request

  16. SIP Gateway • A special type of UA • Interface a SIP network to a non-SIP network • Terminate the signaling path • May or may not terminate the media path • Support much more users than normal UA

  17. Web server SIP Networks with Gateways Telephone switch Local/long distance 1-212-5551212 rtspd: media server Quicktime Single machine RTSP sipconf: Conference server RTSP clients Department PBX sipum: Unified messaging Internal Telephone Extn: 7040 713x Proxy, redirect, registrar server SQL database SIP/PSTN Gateway Web based configuration SNMP (Network Management) Extn: 7134 H.323 Extn: 7136 SIP/H.323 Gateway NetMeeting xiaotaow@cs Borrowed from Xiaotao Wu’s slides (Columbia University, 2002)

  18. SIP Servers  SIP Workhorses • Logical Entities • Accept SIP requests • Respond to requests • Types of Servers • Proxy Server • Redirect Server • Registration Server

  19. SIP Message Format Generic-message = Start-line *message-header CRLF [ message-body ] Start-line = Request-Line / Status-Line Request-Line = Method SP Request-URI SP SIP-Version CRLF Status-Line = SIP-Version SP Status-Code SP Reason-Phase CRLF SP – blank space

  20. SIP Methods Sets • Extended Methods • REFER • SUBSCRIBE • NOTIFY • MESSAGE • etc. • Basic Methods • INVITE • REGISTER • BYE • ACK • CANCEL • OPTIONS

  21. SIP Response Codes • Consistent with/extend HTTP/1.1 response codes • 1xx – Informational • 2xx – Success • 3xx – Redirection • 4xx – Client error • 5xx – Server failure • 6xx – Global Failure • 600 – BusyEverywhere • 603 – Decline • 604 – DoesNot Exist Anywhere • etc. Borrowed from HTTP  Created for SIP

  22. SIP Registration Server REGISTER sip:registrar.udel.edu Via: SIP/2.0/UDP 128.175.13.50:5060; branch=z9hG4bKus19 Max-Forwards: 70 To: Alice <sip:alice@eecis.udel.edu> From: Alice <sip:alice@eecis.udel.edu>;tag=3431 Call-ID: 23@128.175.13.50 CSeq: 1 REGISTER Contact: sip:alice@128.175.13.50 Content-Length: 0 Alice Registrar Server SIP/2.0 200 OK Via: SIP/2.0/UDP 128.175.13.50:5060; branch=z9hG4bKus19 To: Alice <sip:alice@eecis.udel.edu> From: Alice <sip:alice@eecis.udel.edu>;tag=3431 Call-ID: 23@128.175.13.50 CSeq: 1 REGISTER Contact: <sip:alice@128.175.13.50>;expires=3600 Content-Length: 0

  23. SIP Proxy Server INVITE sip:bob@yahoo.com SIP/2.0 Via: SIP/2.0/UDP proxy.udel.com:5060; branch=z9hG4bK83842.1 Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com> From: Alice <sip:alice@udel.edu>;tag=42 Subject: Where are you exactly? Contact: <sip:alice@pc.udel.edu> Location server DNS server INVITE sip:bob@yahoo.com SIP/2.0 Via: SIP/2.0/UDP proxy.yahoo.com:5060; branch=z9hG4bKtiop3 Via: SIP/2.0/UDP proxy.udel.com:5060; branch=z9hG4bK83842.1 Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com> From: Alice <sip:alice@udel.edu>;tag=42 Subject: Where are you exactly? Contact: <sip:alice@pc.udel.edu> INVITE sip:bob@yahoo.com SIP/2.0 Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com> From: Alice <sip:alice@udel.edu>;tag=42 Subject: Where are you exactly? Contact: <sip:alice@pc.udel.edu> Outbound proxy server Inbound proxy server 100 Trying 180 Ringing 200 OK 100 Trying 180 Ringing 200 OK 180 Ringing 200 OK BYE ACK Media (RTP) Alice 200 OK Bob SIP Trapezoid

  24. SIP Proxy Server INVITE Bob INVITE Bob Bob’s Phone 486 Busy Here Alice INVITE Bob Bob’s voicemail Proxy servers can make flexible “routing decisions” to decide where to send a request.

  25. SIP Proxy Server Bob’s Cell Phone INVITE Bob 200 OK INVITE Bob Bob’s Office Phone CANCEL INVITE Bob Alice 200 OK Bob’s Home Phone INVITE Bob CANCEL In parallel search, a proxy issues several requests to possible user locations upon receiving an incoming request.

  26. SIP Redirect Server SIP/2.0 302 Moved Temporarily Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com>;tag=64 From: Alice <sip:alice@udel.edu>;tag=42 Subject: Where are you exactly? Contact: sip:alice@200.201.202.203 INVITE sip:bob@yahoo.com SIP/2.0 Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com> From: Alice <sip:alice@udel.edu>;tag=42 Subject: Where are you exactly? Contact: <sip:alice@pc.udel.edu> ACK Redirect Server INVITE sip:bob@200.201.202.203 SIP/2.0 Via: SIP/2.0/UDP 100.101.102.103:5060; branch=z9hG4bKmp17a To: Bob <sip:bob@yahoo.com> From: Alice <sip:alice@udel.edu>;tag=13473 Subject: Where are you exactly? Contact: <sip:alice@pc.udel.edu> Alice Bob

  27. That’s It! • We have learned a lot about SIP!! No Way!!! Did we really learn a lot of stuff about SIP? Then what are we gonnado?

  28. Key References • J. Rosenberg, SIP: Session Initialization Protocol, RFC 3261, 2002 • A. Johnston, SIP: Understanding the Session Initialization Protocol, 2nd edition • J. Kuthan and D. Sisalem, SIP Tutorial http://iptel.org/sip/ • SIP web site: http://www.cs.columbia.edu/sip/

  29. Questions?

More Related