introduction to sip speaker: min-hua yang advisor: ho-ting wu date:2005/3/29

54
Introduction to SIP Speaker: Min-Hua Ya ng Advisor: Ho-Ting Wu Date:2005/3/29

Post on 22-Dec-2015

222 views

Category:

Documents


1 download

TRANSCRIPT

Introduction to SIP

Speaker: Min-Hua Yang Advisor: Ho-Ting Wu

Date:2005/3/29

Outline

SIP Overview SIP Architecture and Components

User Agent , Servers SIP Messages

Request, Response and Headers Reliability Mechanism Summary

Outline

SIP Overview SIP Architecture and Components SIP Messages Reliability Mechanism Summary

SIP Overview(1) - History SIP ( Session initiation protocol) Work began in 1995 Developed in SIP Working Group in IETF Proposed standard RFC2543, February

1999 New Version of SIP - RFC 3261, June 2002 Split from MMUSIC (Multiparty Multimedia

Session Control), Sep. 1999

SIP Overview(2) - Main Functions

SIP is an application-layer control (signaling) protocol for : initiating sessions

Find the user’s current location Carry session descriptions

Modifying sessions Terminating sessions

SIP Overview(3) - What is a session?

Refers to an active connection between two computers for the purpose of communicating and transferring information Internet telephone calls multimedia conferences Instant Messaging However it’s not limited to the above

SIP Overview(4)

SIP is similar to HTTP : both use a request/response model both are text-based much of SIP’s message and header field synta

x is identical to HTTP/1.1. Works independent of the underlying netw

ork transmission protocol and indifferent to me

dia

SIP Overview(5)

Scalability Functionality such as proxying, redirecti

on, location, or registration can reside in different physical servers.

Distributed functionality allows new processes to be added without affecting other components.

SIP Overview(6)

Interoperability An open standard Can implement to communicate with ot

her SIP based products

SIP Overview(7)

Mobility The user can be using a PC at work, PC at home ,

wireless phone, IP phone, or regular phone. Users must register/Update their current locatio

n. Supports user mobility by proxying or redirectin

g requests to a user’s current location. Proxy servers will forward calls to the user’s cu

rrent location.

Integration with IETF Protocols SIP forms only part of an overall IP telephony syste

m Other IETF protocol standards are used to build a f

ully functioning VoIP system. example:

RSVP - to reserve network resources. RTP (Real Time Transport Protocol) - to transport real

time data RTSP (Real Time Streaming Protocol) - for controlling

delivery of streaming media. RTCP (Real Time Transport Control Protocol) – provides information about the quality of the communication.

Related Protocols

SIP Capabilities(1/2) Determine location of target points – Support

address resolution, name mapping, call redirection Determine media capabilities – SIP uses Session Description Protocol (SDP) for this Determine availability – returns a message why

the remote party cannot be contacted Establish a session between end points – also

support mid call changes, changes of media characteristics or codec

SIP Capabilities(2/2) Permits interaction between devices via signaling messages These messages can:

Register a user with a system Invite a user to join an interactive session Establish a media stream between 2 or more en

d points Terminate a session

Outline

SIP Overview SIP Architecture and Components SIP Messages Reliability Mechanism Summary

SIP Network Architecture

SIP Component – User Agent User Agent Client (UAC)- Initiate SIP R

equest User Agent Server (UAS)-Accepts or rej

ects call Phones – acts as UAC or UAS Implemented in Hardware or Software Components Includes softphones, sip ip phones

User Agents

SIP Component – Proxy Server

Heart of SIP network that contains all service logic.

Receives SIP messages, forwards to next SIP UAS.

Interprets, rewrites or translates a request message before forwarding it.

Scenario with Proxy Server

SIP Component – Redirect Server

Return routing information to the originating endpoint.

Does not accept or terminate calls Does not initiate its own SIP request

Scenario with Redirect Server

SIP Component – Registrar

Accept registration requests from users Maintains user’s whereabouts at a Location Server Typically co-located with a proxy server or a redirect server and may offer location services

Scenario with Registrar

Invitation for SIP Proxy Server

Invitation for Redirect Server

SIP Addressing

The SIP address is identified by a SIP URL,in the format: user@host.

Email-like identifier of the form Examples of SIP URLs:

sip:[email protected] sip:[email protected] sip:[email protected]

Outline

SIP Overview SIP Architecture and Components SIP Messages Reliability Mechanism Summary

SIP Messages

The message syntax is identical to HTTP/1.1(RFC2616).

Two kinds of SIP messages SIP-message = Request |

Response

SIP Messages - Requests INVITE – Initiates a call by inviting user to p

articipate in session. ACK - Confirms that the client has received

a final response to an INVITE request. BYE - Indicates termination of the call. CANCEL - Cancels a pending request. REGISTER – Registers the user agent. OPTIONS – Used to query the capabilities of

a server.

SIP Messages - Responses 1xx - Informational Responses

180 ringing 2xx - Successful Responses

200 OK 3xx - Redirection Responses

302 Moved Temporarily 4xx - Request Failure Responses.

404 Not Found 5xx - Server Failure Responses.

503 Service Unavailable 6xx - Global Failures Responses.

600 Busy Everywhere All responses, except for 1XX, are considered final

responses

Message Headers Provide further information about the messag

e E.g.,

To : header in an INVITE The called party

From : header The calling party

Four main categories General, Request, Response, and Entity headers

Header Fields General Header

Be applied to both request and response messages Entity Header

Define information about the message body Request Header

Allow the client to pass additional information about the request Response Header

Allow the server to pass additional information about the response

SIP Headers

SIP Headers – From

A field required in all requests and response messages

Provides identity of request’s initiator

Example: From: Laura Brown <sip:[email protected]>

SIP Headers – To

Provides identity of the intended recipient of the request Example:

To: Bob Johnson <sip:[email protected]>;

SIP Headers – Call-ID(1/2)

Provides a globally unique identifier to distinguish specific invitations Typically uses a 32-bit cryptographically random numbers Example:

Call-ID: [email protected]

SIP Headers – Call-ID(2/2)

SIP Headers – Contact(1/2)

A Contact header provides a URL where the user can be reached directly.

This feature is important because it offloads SIP servers that do not need to be in the signalling path after routing the first INVITE.

Example: Contact: Bob Johnson<sip:[email protected]>

SIP Headers – Contact(2/2)

SIP Header - Via

History of message’s path through network(s)

Helps to prevent looping and ensures replies route back to originator Indicates the used transport protocol, ip address and port of sender Via: SIP/2.0/UDP 192.168.6.21:5060

SIP Header – Content-Type

Provides information about media type of message body

Content-Type: application/sdp

SIP Header – CSeq(1/2) CSeq or command sequence: Needed in both request messages as well as response messages Need to increment this when a user with the same Call-ID wants to send different SIP methods or content ( Except ACK and Cancel) When sending responses to requests, CSeq should be the same The numerical part of the Cseq is used to order diff

erent requests within the same session. CSeq: 1 INVITE

SIP Header – CSeq(2/2)

An example of SIP Request

An example of SIP Response

Outline

SIP Overview SIP Architecture and Components SIP Messages Reliability Mechanism Summary

Reliable Transmission of Responses(1/2)

Final responses are transmitted reliably between server and client, using retransmissions or a reliable transport protocol to ensure delivery.

Provisional responses may either be received by the client or be lost in the network.

Reliable Transmission of Responses(2/2)

Reliable Transmission of Requests(1/2)

Reliable Transmission of Requests(2/2)

Outline

SIP Overview SIP Architecture and Components SIP Messages Reliability Mechanism Summary

Summary SIP is gaining acceptance in the industry Open Source projects are taking the lead in SIP implementations New generation of services are already being offered Staying with single a vender solution is

currently workable Interoperability between vender products is

still in early stages

Reference RFC 2543(SIP/1.0) RFC 3261(SIP/2.0) RFC 2327(SDP) Related Material

provided by