SIP Challenges and Opportunities Name Amir Zmora Title

  • Slides: 28
Download presentation
SIP Challenges and Opportunities Name: Amir Zmora Title: Product Marketing Date: 17 Jan 2003

SIP Challenges and Opportunities Name: Amir Zmora Title: Product Marketing Date: 17 Jan 2003

The transfer Dogbert Dilbert wants asks answers him fails to call to the transfer

The transfer Dogbert Dilbert wants asks answers him fails to call to the transfer the call boss to the Boss

Why Did the Transfer Fail? ¾ REFER has gone through many changes in various

Why Did the Transfer Fail? ¾ REFER has gone through many changes in various versions. ¾ Ver 02 - Refer-To = ("Refer-To" | "r") ": " URL n Refer-To: SIP: guest@info. com? Replaces… ¾ Ver 04 - Refer-To = ("Refer-To" / "r") HCOLON ( nameaddr / addr-spec ) n Refer-To: SIP: guest@info. com? Replaces… ¾ Ver 06 - Refer-To = ("Refer-To" / "r") HCOLON ( nameaddr / addr-spec ) * (SEMI generic-param) n Refer-To: <SIP: guest@info. com? Replaces…>a=b ¾ The <> are optional in ver 04. Sending the ver 04 example to UA supporting ver 06 will cause the Replaces to be related to the Header and not to the address. Some changes are not backwards compatible

AGENDA ¾ The Challenges of Vo. IP Development ¾ Do it yourself vs. Commercial

AGENDA ¾ The Challenges of Vo. IP Development ¾ Do it yourself vs. Commercial Toolkits ¾ Commercial Toolkit Requirements ¾ RADVISION SIP Development Solution

The Challenges of Vo. IP Development The Evolving SIP Protocol

The Challenges of Vo. IP Development The Evolving SIP Protocol

SIP Development Challenges Application (Features, services, UI …) REFER SIP-T… PRACK INFO SUBSCRIBE NOTIFY

SIP Development Challenges Application (Features, services, UI …) REFER SIP-T… PRACK INFO SUBSCRIBE NOTIFY SIP 3 GPP Extensions others… REFER SIP-T… PRACK INFO State Machine re-INVITE Authentication Loose Routing Dialog, Registration, REFER State Machine User Agent Behavior Record Routing Mapping ID Mapping branch CANCEL Timers State Machine Transaction UDP fragmentation SCTP DNS SIP Transport IPv 6 UDP Conn Mgmt TCP Location DB Registration Proxy/Reg Spirals Loops Reliability Authentication 100 Rel Whitespaces SDP Multipart Encoding SIP Message MIME Parsing compact form MIME TCP/IP, OS SIP is No Longer a Simple Protocol…

The “S” in SIP Doesn’t Stand for Simple ¾ Complex Dialog state machines ¾

The “S” in SIP Doesn’t Stand for Simple ¾ Complex Dialog state machines ¾ PRACK, UPDATE… ¾ Client side Authentication ¾ Re-INVITE after receiving 401/407 ¾ DNS SRV & NAPTR queries ¾ Sequence of 3 queries ¾ Different function for IPv 6 ¾ Different implementation on different OS ¾ Loop/Spiral detection ¾ Spiral – Legal ¾ Loop - Illegal ¾ Many more…

Example of Complexity- Routing ¾ Routing decision – Loose vs. strict routing ¾ Complex

Example of Complexity- Routing ¾ Routing decision – Loose vs. strict routing ¾ Complex routing algorithm – Destination address should be taken from: Request URI, Rout, Via, Received? ¾ Backwards compatibility with Strict-Routing Proxy Adds P 2 and P 3 to route Without Loose Routing INVITE b@UA 1 P 1 Visited Network P 2 P 3 Home Network

Example of Complexity - REFER ¾ REFER Method ¾ for Transfer services ¾ Specified

Example of Complexity - REFER ¾ REFER Method ¾ for Transfer services ¾ Specified in: n draft-ietf-sip-refer-05. txt n draft-ietf-sip-cc-transfer- 05. txt ¾ Full support n Automatic operation + callbacks n Uses NOTIFY extension to report result of Transferor Transferee Transfer | | Target | INVITE | | |<----------| | | 200 OK | | |---------->| | | ACK | | |<----------| | | |<< ”Please transfer | | |<< me to bob” | | | INVITE (hold) | | |---------->| | | 200 OK | | |<----------| | | ACK | | |---------->| | | REFER | | |---------->| | | 202 Accepted | | |<----------| | INVITE | | |---------->| | | 200 OK | | |<----------| | | ACK | | |---------->| | NOTIFY (200 OK) | | |<----------| | | 200 OK | | |---------->| | | BYE | | |---------->| | | 200 OK | | |<----------| | BYE | | |<----------| | | 200 OK | | |---------->|

SIP Standard Inconsistencies and Interoperability Issues • Inconsistencies in REFER • Changes in retransmission

SIP Standard Inconsistencies and Interoperability Issues • Inconsistencies in REFER • Changes in retransmission timers • Changes in CANCEL • Response code for INVITE inside INVITE has changed • Max. Forward has become mandatory • Transaction key identifier rules was changed • Call. Leg identifier was changed • Prefix added to Via Branch • LR was added to Route for Loose Routing support • CANCEL became invalid for general transactions The Evolving Baseline SIP RFC 2543 Established – Aug 99 bis 00 – July 00 bis 00 – Aug 00 bis 01 – Aug 00 bis 02 – Sept 00 bis 02 – Nov 00 bis 03 – May 01 bis 04 – July 01 bis 05 – Oct 01 bis 06 – Jan 02 bis 07 – Feb 02 bis 09 – Feb 02 RFC 3261 – June 02 Plus hundreds of Drafts that constantly change New Changes Are Not Always Backwards Compatible Developers Need to Ensure Their Products Comply With New Version of Standard

SIP Development Challenges ¾ Interoperability ¾ Many independent implementations of SIP with varying degrees

SIP Development Challenges ¾ Interoperability ¾ Many independent implementations of SIP with varying degrees of maturity ¾ Good interoperability requires investment: n participation in SIPit events n tested with various equipment vendors

SIP Development Challenges (cont. ) ¾ Extensibility ¾ SIP is a highly extensible protocol

SIP Development Challenges (cont. ) ¾ Extensibility ¾ SIP is a highly extensible protocol ¾ Stack design must accommodate current and future needs ¾ Modular design and multi-level API are a must ¾ Maintainability ¾ SIP is still a moving target ¾ Constant flow of changes in baseline protocol and extensions ¾ Cost of keeping a SIP stack up-to-date is high

Do It Yourself vs. Commercial Toolkits The Move from In-House Development To Commercial Toolkits/Solutions

Do It Yourself vs. Commercial Toolkits The Move from In-House Development To Commercial Toolkits/Solutions

Developers are Turning to Third Party Toolkits for Vo. IP Development ¾ Similar to

Developers are Turning to Third Party Toolkits for Vo. IP Development ¾ Similar to the evolution of H. 323, move from in-house to commercial toolkit as protocol takes hold ¾ Save cost in man years ¾ Provides already integrated SIP and SDP services n Encoding, sending, parsing, managing calls and transactions, and reliability/redundancy ¾ Address continuing SIP interoperability issues ¾ Vendor provides upgrades and application notes n Crucial in modifying existing products to comply with standard changes ¾ You don’t re-invent the wheel

Freeing Resources to Focus on Applications Application code Application (Features, services, UI …) STANDARD:

Freeing Resources to Focus on Applications Application code Application (Features, services, UI …) STANDARD: Dialog, Registration, Proxy/Reg User Agent Behavior • RFC 3261 (SIP) SIP Extensions Transaction • SIP Extensions SIP Transport • RFC 2327 (SDP) TCP/IP, OS SIP Message Platform 3 rd. Party

Commercial Toolkit Requirements

Commercial Toolkit Requirements

Building a SIP Endpoint Using a Vendor SIP Stack ü Dialog Management ü Registration

Building a SIP Endpoint Using a Vendor SIP Stack ü Dialog Management ü Registration ü Authentication r e l Kil Application ü Telephony (SIP-T, DTMF) ü Call Control SDP Stack SIP Stack ü More … ü Media Description Network ü Media Transport ü RTCP Reports RTP/RTCP Stack

Building a SIP Endpoint Using a Vendor SIP Stack ¾ Interoperability and standards compliance

Building a SIP Endpoint Using a Vendor SIP Stack ¾ Interoperability and standards compliance ¾ Toolkit must be tested in all SIPit events ¾ Vendor should be involved in standard evolution ¾ Extensibility ¾ Modular design and multi-level APIs are required to provide flexibility ¾ APIs should provide interface for proprietary message encoding and parsing ¾ Maintainability ¾ Version upgrades as part of maintenance agreement ¾ Toolkit must be upgraded as standard evolves

RADVISION’s SIP Development Solutions

RADVISION’s SIP Development Solutions

A Family of SIP Development Solutions SIP Toolkit SIP Server Toolkit IP Phone Toolkit

A Family of SIP Development Solutions SIP Toolkit SIP Server Toolkit IP Phone Toolkit SIP Pro. Lab. TM Test Management Suite Development Solutions

SIP Development Solution Characteristics ¾ Real-Time Performance ¾ Internally multithreaded (SIP Stack and Server)

SIP Development Solution Characteristics ¾ Real-Time Performance ¾ Internally multithreaded (SIP Stack and Server) ¾ High call/transaction rate (calls per second) ¾ Low memory-per-call/transaction and low footprint ¾ Advanced Capabilities ¾ High Availability support ¾ Multi-Homed Host support ¾ IPv 6 Support ¾ Interoperable ¾ Tested with dozens of 3 rd party SIP implementations ¾ Customizable ¾ Highly Configurable ¾ Multiple compilation options

SIP Toolkit Architecture Application Dialog/Registration Layer SIP TK Manager Transaction Layer Transport I/F Layer

SIP Toolkit Architecture Application Dialog/Registration Layer SIP TK Manager Transaction Layer Transport I/F Layer OS Abstraction Layer Message Syntax Layer

SIP Server Toolkit ¾ Fully standard SIP Server functionality ¾ Loop and spiral detection

SIP Server Toolkit ¾ Fully standard SIP Server functionality ¾ Loop and spiral detection authentication ¾ Proxy server ¾ Message validation ¾ Redirect server ¾ Layered, modular architecture with multilevel API ¾ Registrar server ¾ B 2 BUA & Presence server (next version) ¾ Stateless/Stateful ¾ Forking ¾ Loose routing ¾ SRV and NAPTR DNS queries ¾ Customizable automatic behavior ¾ Extensible architecture ¾ OS: ¾ Solaris, Windows, Linux ¾ Coming soon: Vx. Works

SIP Server Toolkit Architecture Application Location DB Presence Agent Security SIP Server High-Level SIP

SIP Server Toolkit Architecture Application Location DB Presence Agent Security SIP Server High-Level SIP Server Manager Proxy Core SIP Stack SIP Server Low-Level

Pro. Lab Test Management Suite ¾ Tests: ¾ SIP (with extensions) ¾ SDP ¾

Pro. Lab Test Management Suite ¾ Tests: ¾ SIP (with extensions) ¾ SDP ¾ RTP/RTCP (both voice and video) ¾ Distributed architecture: ¾ Central Manager console (with GUI) ¾ One or more test agents ¾ Script Driven: ¾ Intuitive scripting language ¾ Can generate high load of calls/transactions per second ¾ Statistics and message trace collection and display ¾ Fully configurable test environment from central console ¾ H. 323 test agents can be integrated seamlessly

Pro. Lab Test Management Suite RTP Analyzer Pro. Lab Manager SIP Server Test Scheduler

Pro. Lab Test Management Suite RTP Analyzer Pro. Lab Manager SIP Server Test Scheduler H. 323 SIP Test Agent H. 323 Test Agent GK Agent

Conclusion ¾ SIP deployment brings exciting new features ¾ SIP is still an evolving

Conclusion ¾ SIP deployment brings exciting new features ¾ SIP is still an evolving protocol ¾ Interoperability is one of the major barriers for SIP deployment ¾ Commercial vendors address interoperability issues ¾ “Buy vs. Make” issue requires serious consideration

Thank You www. radvision. com amirz@radvision. com

Thank You www. radvision. com amirz@radvision. com