43
SIP: SESSION INITIATION PROTOCOL CMPE 208 FALL 2008 PROJECT Chinmay Padhye Amit More Abhishek Sharma Nihar Dandekar

Session Initiation Protocol - In depth analysis

Embed Size (px)

Citation preview

Page 1: Session Initiation Protocol - In depth analysis

SIP: SESSION INITIATION PROTOCOL

CMPE 208 FALL 2008 PROJECT

Chinmay PadhyeAmit MoreAbhishek SharmaNihar Dandekar

Page 2: Session Initiation Protocol - In depth analysis

INTRODUCTION

Developed originally as MULTIPARTY MULTIMEDIA SESSION CONTROL IN 1999 -- RFC 2543 (SIPv1)

Latest revision RFC 3261 thru 3265 in June 2002 (SIPv2)

A powerful alternative to H.323 protocol Is used for:

Initiating SESSIONS of multimedia over the Internet transport session description from caller to callees Change of parameters in mid-session Terminate the session

Page 3: Session Initiation Protocol - In depth analysis

INTRODUCTION

LINEAGE : OSI Model – Layer 6 (Session Layer) TCP/IP Model – Layer 5 (Application Layer)

Protocols supported: RSVP RTP RTCP RTSP SAP SDP

Page 4: Session Initiation Protocol - In depth analysis

INTRODUCTION

Applications: IP PBX IP TELEPHONEY INSTANT MESSEGING INTERNET CONFERENCING

Features: Uses the client – server model Both the client and server can be on the same platform Uses the concept of intelligent endpoint

Page 5: Session Initiation Protocol - In depth analysis

DISTRIBUTED FUNCTIONALITY

De-centralization permits more functionality within each component.

Changes made to specific components have a minor impact on the rest of the system. It is possible to connect one SIP phone to another with an Ethernet cable & make calls between the sets without the aid of any other server modules.

The other system components become useful when the network requires more than two phones.

Page 6: Session Initiation Protocol - In depth analysis

SIP - ENTITIES

SIP uses the following main Entities: USER AGENT CLIENT USER AGENT SERVER PROXY SERVER REDIRECT SERVER REGISTRAR / LOCATION SERVER

Page 7: Session Initiation Protocol - In depth analysis

ENTITIES – UAC , UAS & REGISTRAR

Page 8: Session Initiation Protocol - In depth analysis

ENTITIES – PROXY & REDIRECT SERVERS

Page 9: Session Initiation Protocol - In depth analysis

SIP - SYNTAX

Page 10: Session Initiation Protocol - In depth analysis

SIP - METHODS INVITE initiate call ACK confirm final response BYE terminate (and transfer) call CANCEL cancel searches and “ringing” OPTIONS features support by other side REGISTER register with location service INFO mid-call information (ISUP) PRACK provisional acknowledgement SUBSCRIBE subscribe to event NOTIFY notify subscribers REFER ask recipient to issue SIP request (call transfer)

Page 11: Session Initiation Protocol - In depth analysis

SIP – REQUEST & RESPONSES

In text format Look very similar to HTTP/1.1 Requests and responses are similar except for first

line Requests and responses can contain in there

message bodies ASCII HTML SESSION DESCRIPTION

Page 12: Session Initiation Protocol - In depth analysis

SIP RESPONSES

Page 13: Session Initiation Protocol - In depth analysis

AUTHENTICATION & ENCRYPTION

SIP supports a variety of approaches: End to end encryption Hop by hop encryption

End to end encryption implemented using proxy servers that form a tunnel between peers after authentication Responds to INVITEs with 407 Proxy-Authentication Required

Page 14: Session Initiation Protocol - In depth analysis

TEST BED

User Agent Client (UAC) - Xlite - 3CX - SJphone

User Agent Server - 3CX - Hamachi

Packet analyzer - Wireshark

Page 15: Session Initiation Protocol - In depth analysis

TEST CASES

Soft-phone registration Simple call setup

Call accepted Call ignored Soft-phone unregistered

Call forwarding To voice mail To extension

Call forking 2 way parallel call forking 3 way parallel call forking

Secure call connection via HAMACHI server

Page 16: Session Initiation Protocol - In depth analysis

SOFT-PHONE REGISTRATION

Page 17: Session Initiation Protocol - In depth analysis

SOFT-PHONE REGISTRATION

Page 18: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP

Page 19: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – CALL ACCEPTED

Page 20: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – CALL ACCEPTED

Page 21: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – CALL IGNORED

Page 22: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – CALL IRNORED

Page 23: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – PHONE UNREGISTERED

Page 24: Session Initiation Protocol - In depth analysis

SIMPLE CALL SETUP – PHONE UNREGISTERED

Page 25: Session Initiation Protocol - In depth analysis

CALL FORWARDING

Page 26: Session Initiation Protocol - In depth analysis

CALL FORWARDING – TO VOICEMAIL

Page 27: Session Initiation Protocol - In depth analysis

CALL FORWARDING – TO VOICEMAIL

Page 28: Session Initiation Protocol - In depth analysis

CALL FORWARDING – TO VOICEMAIL

Page 29: Session Initiation Protocol - In depth analysis

CALL FORWARDING – TO EXTENSION

Page 30: Session Initiation Protocol - In depth analysis

CALL FORWARDING – TO EXTENSION

Page 31: Session Initiation Protocol - In depth analysis

2 WAY CALL FORKING

Page 32: Session Initiation Protocol - In depth analysis

2 WAY CALL FORKING

Page 33: Session Initiation Protocol - In depth analysis

2 WAY CALL FORKING

Page 34: Session Initiation Protocol - In depth analysis

2 WAY CALL FORKING

Page 35: Session Initiation Protocol - In depth analysis

3 WAY CALL FORKING

Page 36: Session Initiation Protocol - In depth analysis

3 WAY CALL FORKING

Page 37: Session Initiation Protocol - In depth analysis

3 WAY CALL FORKING

Page 38: Session Initiation Protocol - In depth analysis

SECURE CALL CONNECTION

Page 39: Session Initiation Protocol - In depth analysis

SECURE CALL CONNECTION

Page 40: Session Initiation Protocol - In depth analysis

SECURE CALL CONNECTION

Page 41: Session Initiation Protocol - In depth analysis

CONCLUSION

SIP is: Relatively easy to implement

Gaining vendor and carrier acceptance

Very flexible in service creation

Extensible and scalable

Appearing in products right now

SIP provides its own reliability mechanism & is

therefore independent of the packet layer and only

requires an unreliable datagram service

Page 42: Session Initiation Protocol - In depth analysis

REFRENCES [1] http://faq.programmerworld.net/voip/voip.htm [2] http://groups.google.com/group/SJSUee284/files [3] http://ezinearticles.com/?The-SIP-Advantage&id=270970 [4] Internet Telephony based on SIP SMU - Dallas April 28, May 1, 2000 Henry Sinnreich, MCI WorldCom Alan Johnston, MCI WorldCom [5]

http://books.google.com/books?hl=en&lr=&id=VMP6gCBazzIC&oi=fnd&pg=PR17&dq=project+on+call+flow+using+SIP+protocol&ots=EtmKee0_M3&sig=bjqG

[6] Evaluating SIP Proxy Server Performance Erich M. Nahum, John Tracey, and Charles P. Wright IBM T.J. Watson Research Center Hawthorne, NY, 10532 fnahum,traceyj,[email protected] [7] Session Initiation Protocol (SIP) and other Voice over IP (VoIP) protocols and applications Henrik Ingo1 [8] http://www.3cx.com/phone-system/ [9] http://en.wikipedia.org/wiki/Session_Initiation_Protocol [10] http://tools.ietf.org/html/rfc3261 [11] http://www.counterpath.com/x-lite.html [12] http://www.counterpath.com/assets/files/191/X-Lite3.0_UserGuide.pdf [13] http://www.qgpop.net/2003fukuoka/papers/A7-3.pdf   [14] http://en.wikipedia.org/wiki/Session_Initiation_Protocol   [15] Carrier Grade VoIP - Daniel Collins – McGraw-Hill – NETWORKING eBOOK   [16]http://www.radvision.com/NR/rdonlyres/0AFA30DF-DAD6-461D-943C-ED33F3E7ABD8/0/SIPServerTechnicalOverviewWhitepaper.pdf   [17] http://en.wikipedia.org/wiki/Hamachi   [18] http://www.cmpe.sjsu.edu/~fclin/

Page 43: Session Initiation Protocol - In depth analysis

QUESTIONS ?