Session initialization protocol sip
This presentation is the property of its rightful owner.
Sponsored Links
1 / 29

Session Initialization Protocol (SIP) PowerPoint PPT Presentation


  • 95 Views
  • Uploaded on
  • Presentation posted in: General

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?.

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


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

What Is SIP?

Alice’s Home Station

Alice

Phone Network

Bob


What is sip1

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


What is not sip

What is NOT SIP?

  • Not a transport protocol

  • Not a media transmission protocol

  • Not a QoS Reservation Protocol

  • Not an integrated communications system


Internet multimedia protocol stack

Internet Multimedia Protocol Stack

SCTP

Source: Henning Schulzrinne,

http://www.cs.columbia.edu/~hgs/internet/


What can sip do

What can SIP Do?

  • User Location

  • User Availability

  • User Capability

  • Session Setup

  • Session Management


What else can sip do

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


Session initialization protocol sip

Marconi

Tesla

INVITE

180 Ringing

200 OK

ACK

Media Session

BYE

200 OK

Simple SIP session establishment example


Session initialization protocol sip

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


Session initialization protocol sip

Alice

Registrar Server

REGISTER

Contact: sip:[email protected]

200 OK

SIP registration example


Session initialization protocol sip

SUBSCRIBE

200 OK

NOTIFY

200 OK

NOTIFY

200 OK

MESSAGE

200 OK

MESSAGE

200 OK

SIP presence and instant message example


How does sip work

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


Sip user agent ua

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


Sip user agent examples

SIP User Agent Examples

Cisco

Siemens

MIC


Presence agent

Presence Agent

  • SIP devices

    • Receive subscription requests

    • Generate state notifications

  • Collect presence information

  • Need to authenticate a subscription request


Sip gateway

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


Sip networks with gateways

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

[email protected]

Borrowed from Xiaotao Wu’s slides (Columbia University, 2002)


Sip servers sip workhorses

SIP Servers  SIP Workhorses

  • Logical Entities

    • Accept SIP requests

    • Respond to requests

  • Types of Servers

    • Proxy Server

    • Redirect Server

    • Registration Server


Sip message format

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


Sip methods sets

SIP Methods Sets

  • Extended Methods

    • REFER

    • SUBSCRIBE

    • NOTIFY

    • MESSAGE

    • etc.

  • Basic Methods

    • INVITE

    • REGISTER

    • BYE

    • ACK

    • CANCEL

    • OPTIONS


Sip response codes

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


Sip registration server

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:[email protected]>

From: Alice <sip:[email protected]>;tag=3431

Call-ID: [email protected]

CSeq: 1 REGISTER

Contact: sip:[email protected]

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:[email protected]>

From: Alice <sip:[email protected]>;tag=3431

Call-ID: [email protected]

CSeq: 1 REGISTER

Contact: <sip:[email protected]>;expires=3600

Content-Length: 0


Sip proxy server

SIP Proxy Server

INVITE sip:[email protected] 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:[email protected]>

From: Alice <sip:[email protected]>;tag=42

Subject: Where are you exactly?

Contact: <sip:[email protected]>

Location server

DNS server

INVITE sip:[email protected] 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:[email protected]>

From: Alice <sip:[email protected]>;tag=42

Subject: Where are you exactly?

Contact: <sip:[email protected]>

INVITE sip:[email protected] SIP/2.0

Via: SIP/2.0/UDP 100.101.102.103:5060;

branch=z9hG4bKmp17a

To: Bob <sip:[email protected]>

From: Alice <sip:[email protected]>;tag=42

Subject: Where are you exactly?

Contact: <sip:[email protected]>

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


Sip proxy server1

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.


Sip proxy server2

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.


Sip redirect server

SIP Redirect Server

SIP/2.0 302 Moved Temporarily

Via: SIP/2.0/UDP 100.101.102.103:5060;

branch=z9hG4bKmp17a

To: Bob <sip:[email protected]>;tag=64

From: Alice <sip:[email protected]>;tag=42

Subject: Where are you exactly?

Contact: sip:[email protected]

INVITE sip:[email protected] SIP/2.0

Via: SIP/2.0/UDP 100.101.102.103:5060;

branch=z9hG4bKmp17a

To: Bob <sip:[email protected]>

From: Alice <sip:[email protected]>;tag=42

Subject: Where are you exactly?

Contact: <sip:[email protected]>

ACK

Redirect Server

INVITE sip:[email protected] SIP/2.0

Via: SIP/2.0/UDP 100.101.102.103:5060;

branch=z9hG4bKmp17a

To: Bob <sip:[email protected]>

From: Alice <sip:[email protected]>;tag=13473

Subject: Where are you exactly?

Contact: <sip:[email protected]>

Alice

Bob


That s it

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?


Key references

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/


Questions

Questions?


  • Login