sip – a look under the hood or “what’s the best way to make my cutting edge product?” jacob...
TRANSCRIPT
SIP – A look under
the hood
OR
“What’s the best way to make my cutting edge product?”
Jacob Bridger
VP Marketing, TBU
October, 14th 2003
SIP Development Challenges–ComplexitySIP Development Challenges–Complexity
TCP/IP, OS
SIP Transport SIP Message
Transaction
Dialog, Registration,User Agent Behavior
Proxy/Reg
Application (Features, services, UI …)
SIPExtensions
SIP is No Longer a Simple Protocol…SIP is No Longer a Simple Protocol…
Location DBRegistrationSpiralsLoops
REFERSIP-T…PRACKINFOSUBSCRIBE NOTIFY3GPPothers…REFERSIP-T…PRACKINFO
State MachineAuthenticationREFERRecord Routing
re-INVITELoose RoutingState MachineMapping
fragmentationSCTPIPv6Conn Mgmt
SCTPDNSUDPTCP
WhitespacesMultipart MIMEcompact form
SDPEncodingParsingMIME
ID MappingbranchCANCEL
TimersState MachineUDP
ReliabilityAuthentication100Rel
Evolving SIP StandardEvolving SIP Standard
Inconsistencies in REFER
Changes in retransmission timers
Changes in CANCEL
Response code for INVITE insideINVITE has changed
MaxForward has become mandatory
Transaction key identifier rules was changed
CallLeg identifier was changed
Prefix added to Via Branch
LR was added to Route forLoose Routing support
CANCEL became invalid forgeneral transactions
The Evolving Baseline SIP
RFC 2543 Established –Aug 99 bis 00 – July 00bis 00 – Aug 00bis 01 – Aug 00bis 02 – Sept 00bis 02 – Nov 00bis 03 – May 01bis 04 – July 01bis 05 – Oct 01bis 06 – Jan 02bis 07 – Feb 02bis 09 – Feb 02
RFC3261 – June 02
Additionally hundreds of Drafts that constantly change
New Changes Are Not Always Backwards Compatible
Developers Need to Ensure Their Products ComplyWith New Version of Standard
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
SIPDevelopment Solutions
ProLabTM TestManagement
Suite
Development Solutions
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
ProLabTM TestManagement
Suite
SIPSIP Toolkit
For development of GWs, Softswitches, IP Phones, Cellular phones, PDAs, Presence and IM clients and any type of User Agent
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
SIPDevelopment Solutions
ProLabTM TestManagement
Suite
SIP Server Toolkit
Proxy Server
Registrar Server
Redirect Server
B2BUA & Presence (coming version)
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
SIPDevelopment Solutions
ProLabTM TestManagement
Suite
IP Phone Toolkit
Framework for developing IP phones/residential GW
DSP integration
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
SIPDevelopment Solutions
ProLabTM TestManagement
Suite
ProLabTM Test Management Suite
Automated, script-driven testing (signaling and media)
Can simulate different network topologies
A Family of SIP Development SolutionsA Family of SIP Development Solutions
SIP Server Toolkit
IP Phone Toolkit
SIPToolkit
SIPDevelopment Solutions
ProLabTM TestManagement
Suite
Toolkit ApplicationsToolkit Applications
Enables development of all kinds of SIP applications: High density, high performance servers
Medium, enterprise scale applications
Terminals (including compact embedded devices)
Softswitches
Gateways
SIP Servers – Proxy, Redirect, Registrar
Application Servers
Conference Bridges
Load Balancers
SIP FW/NAT solutions
IP Phones
Soft Phones
2.5-3G Cellular Phones
Connected PDAs
Multimedia Terminals
TCP/IP, OS
SIP Transport SIP Message
Transaction
Dialog, Registration,User Agent Behavior
Proxy/Reg
Application (Features, services, UI …)
SIPExtensions
SIP Tool Layering ModelSIP Tool Layering Model
Applicationcode
Applicationcode
STANDARD:
• RFC 3261 (SIP)
• SIP Extensions
• RFC 2327 (SDP)
Platform 3rdPartyPlatform 3rdParty
SIP Toolkit ArchitectureSIP Toolkit Architecture
OS/Network
OS abstraction layer (core)
RTP/RTCP
Application
SIPSDP
RFC 3261 (SIP) Compliant Baseline protocol functionality +
extensions
Full RFC 2327 (SDP)Support Parser and Encoder Comparison Functions
RFC 1889/1890 Compliant RTCP reports Standalone, replaceable module
Allows for enhanced portability Keeps rest of the Toolkit OS
agnostic
A typical SIP Server application has 3 parts:
SIP Server Development ChallengesSIP Server Development Challenges
SIP stack standard
SIP Server core engine standard
Proxy
Registrar
Redirect
B2BUA
Presence
Application implementation-specific
Media Server
Media Server
Media Server
Example: Load Balancing SIP ServerExample: Load Balancing SIP Server
(B2BUA)
SIP
Media Server Farm
SIPSIP Server
IP Network
Media Server
Media Server
Media Server
Load Balancing SIP ServerLoad Balancing SIP Server
IP Network
(B2BUA)
SIP
Media Server Farm
SIP
SIP Server
Media Server
Media Server
Media Server
Load Balancing SIP ServerLoad Balancing SIP Server
IP Network
(B2BUA)
SIP
Media Server Farm
SIP Server
SIP
Load Balancing SIP ServerLoad Balancing SIP Server
B2BUAPresence
Server
SIP ServerHigh-Level
ProxyCore
SIP Stack
SIPServer
ManagerSIP
ServerLow-Level
Load Balancing Application
PresenceAgent
LocationDB Security
SIP Server Toolkit
Call Proxying Using Location DBCall Proxying Using Location DB
LocationDB
SIP ServerToolkit
OS/Network
Application
Location DB Server Components
LDAP_Lookup(bob)
Proxy Core Object
Event(REQ_RCVD)
Proxy()
Policy
INVITE [email protected]
Lookup(bob)
IP Phone/IAD Toolkit ArchitectureIP Phone/IAD Toolkit Architecture
Customer Supplied Additional RTP/RTCP Toolkit
Operating System
Configuration and Initialization
Integration Layer
DSPServices
TelephonyServices
OS Abstraction Layer
RTP/RTCPToolkit
Media Device Manager (MDM) API
SIPStack
H.323Stack
Megaco Stack
MGCP Stack
SIPCall
Control
H.323Call
Control
Call Control Managers
MEGACOTermination
Manager
MGCPEndpoint Manager
Media Control Managers
RADVISIONStandards Implementation
Media Device Manager (MDM) API
OS Abstraction Layer
RTP/RTCPToolkit
SIPCall
Control
H.323Call
Control
Call Control Managers
MEGACOTermination
Manager
MGCPEndpoint Manager
Media Control Managers
SIPStack
H.323Stack
MEGACO Stack
MGCP Stack
General FeaturesGeneral Features
Initiate Basic Call
Receive Basic Call
Multiple Line Appearances
Caller ID
Hold
Transfer
(3-way) Conference
In-call DTMF relay
Customizable Man/Machine Interfaces to allow developers to precisely define their own look and feel
ProLab VoIP Testing EnvironmentProLab VoIP Testing Environment
IP
H.323Test Agent
RTPTesting
DeviceUnder Test
Gatekeeper H.323
DeviceUnder TestSIP
Test Agent SIP
Server AgentRTP
Testing
SIP
Test Management
Test Scheduling
Tester
SummarySummary
Engineering resources are constrained
Re-inventing the IETF wheel makes little sense
Advanced tools exist today
SIP Stack
SIP Server
SIP IP Phone/IAD
SIP Testing (ProLab)
Focus should be on features, application, innovation, differentiation
Focus should be on what benefits the customers, not the “cool” technology beneath