Session intiation protocol tk

Post on 23-Jun-2015

413 views 1 download

Tags:

description

A newbie view point of SIP way back in 2009.

Transcript of Session intiation protocol tk

Session Initiation Protocol: An Overview

Chaitanya T K,DataCom

Only those who dare to fall greatly can achieve

greatly

Robert Kennedy

Agenda: Telephony and VOIP basics Need for SIP? Welcome to SIP World Basic Operation and message formats Layering in SIP Types of proxies Detailed Handshakes Dialogs and routing Handling QOS Issues with SIP

Telephony and VOIP basics

Intro to VOIP:

Circuit Vs. Packet Switching:

Advantages of circuit switching: ---Fixed delays, because of the dedicated circuit-- Guaranteed continuous service, also because of the dedicated circuit

Disadvantages of circuit switching -- idle circuits are not used-- Difficult to support variable data rates and is not efficient for burst traffic

Advantages of Packet Switching

-- can provide variable data rates-- better for "bursty" traffic

Disadvantages of Packet Switching

-- Packets arriving in wrong order-- Variable delays

Welcome to the SIP world

Need for SIP?: What is a session? - Data Exchange between an association of participants

These data exchange is complicated since:

• Users can move• User can use Multiple names• Users can change the media A protocol that monitors and controls all these actions need to developed.

Functionalities provided by SIP:

User location: determination of the end system to be used for communication;

User availability: determination of the willingness of the called party to engage in communications;

User capabilities: determination of the media and media parameters to be used;

Session setup: "ringing", establishment of session parameters at both called and calling party;

Session management: including transfer and termination of sessions, modifying session parameters, and invoking services.

Key SIP Proxy Roles: Security: With admission control policy,SIP proxy enforces who may call whom,and eventually reports usage

Services: proxy servers can implement a variety of services: missed calls,forwarding, screening, etc.

Routing: Finding the right recipient of a call (gateway, voicemail, SIP-phone, foreign domain, etc.)

Transaction:

Dialogs:

Session:

Basic Steps in Operation of SIP:

Registration:

Registration request format:

INVITE Message Format:

Stateful versus Stateless Proxy Stateless mode:

– Usage: good for heavy-load scenarios -- works well for example if they act as application-layer load distributors.

– Behavior: proxies just receive messages, perform routing logic, send messages out and forget anything they knew

- Memory consumption is constant (which is key for some scenarios – transaction context takes up to 7k of memory!)

Stateful mode: Usage: good for implementing some services (e.g.,“forward on no reply”)

Behavior: proxies maintain state during entire transaction; they remember outgoing requests as well as incoming requests that generated them until transaction is over; they do not keep state during the whole call

Used for services such as accounting (for aggregating requests with responses and filtering retransmissions out), forking (for picking the ‘best’ answer), forwarding on some event (state helps to postpone decision making till an event such as ‘line busy’ occurs), etc.

Methods and Responses:

SIP Methods:

Dialogs and Routing-INVITE:

Dialogs and Routing-180:

Dialogs and Routing-200:

Dialogs and Routing-ACK:

Dialogs and Routing-BYE:

Dialogs and Routing-200:

Layers in SIP:

Layers in SIP: The structure of the SIP protocol, as outlined

in chapter 5 of RFC 3261: "The lowest layer is the transport layer. It defines how a client sends requests and receives responses and how a server receives requests and sends responses over the network. All SIP elements contain a transport layer.

The second layer is the transaction layer. A transaction is a request sent by a client transaction (using the transport layer) to a server transaction, along with all responses to that request sent from the server transaction back to the client. Any task that a user agent client (UAC) accomplishes takes place using a series of transactions. Stateless proxies do not contain a transaction layer.

The layer above the transaction layer is called the transaction user (TU). Each of the SIP entities, except the stateless proxy, is a transaction user."

Summary of Call setup Flow

Issues with SIP

Authentication of signaling data using

HTTP digest authentication

TLS usage (over TCP)

Usage of IPSec (SIP VPN Scenario)

Use SecureRTP for Media

Use S/MIME to enable mechanisms like

public key distribution,

authentication, integrity and

confidentiality of SIP signaling data

Security:

NAT with SIP:

SIP Vs. H.323

Judge a man by his questions rather than

his answers

Voltaire

Thank You -