Comm Dev 2007
Comm Dev 2007
Comm Dev 2007
Jonathan Cumming
Director, VoIP Product Management
Data Connection (DCL)
Agenda
Designing the right product
Target markets and device characteristics
Q&A
3
Internet
Applications
Division
Communication
application
software for SPs
Enterprise
Connectivity
Division
SNA software for
OEMs and
Enterprises
300+ deployments
3m subscriber capacity
Market Segments
Which applications?
Voice, Video, Instant Messaging, Presence, Gaming
Device Characteristics
What feature set?
Endpoint vs. Proxy vs. B2BUA
TCP, TLS, SCTP, SIGCOMP
What scale?
Initial footprint vs. scalability
How reliable?
Occasional reboot/crash acceptable
5x9s => Fault-tolerant architecture
How secure?
What types of attack are likely?
What is the risk and impact of DoS attack?
6
Development Choices
Platform choices
O/S
Hardware
POSIX
HA Middleware
Diagnosing Problems
Wide range of issues
Interoperability e.g. NAT
Crashes i.e. service outage
Performance QoS, DoS
Intra-component
Requires comprehensive
diagnostics
Effective runtime filtering
Trace
Traceofofexecution
execution
FSM
FSMhistory
history
Inter-component
Inter-componenttracing
tracing
Event
Developer,Information,
Information,Warnings
Warningsand
andProblems
Problems
EventLogs
LogsDeveloper,
Device-level
External
ExternalLine
LineTrace
Tracee.g.
e.g.WireShark
WireShark/ /Ethereal
Ethereal
Development Environment
Field Use
Inter-Component Tracing
Components
Chronology
Separate Source &
Destination Time
Stamps
Details
Time Stamps
Faster processor
35
Distribution of software
components
30
% utilization
25
B2BUA
20
Stateless Proxy
15
10
5
0
0
40
80
120
160
200
240
10
Distribution Principles
Configuration
Out of band mechanism
Entered by user
DHCP
Redirection
Initial response indicates nominated server
DNS
SIP 3xx response
3
1
Proxy
5
2
1
4
Registrations
Registration is a heavy load
Soft-state: regular re-registrations for all devices
Also used to maintain NAT/Firewall pinholes
12
Dialogs
Distributing dialog-establishing requests
Static configuration to use different proxies or servers
Service-Route header
Returned on REGISTER response
Causes all requests from a given endpoint to be routed via
nominated proxies.
Potential Pitfalls
Bottleneck
Single point of failure
IP load balancer
Simple => cheap, fast
Limited value, as breaks non-trivial flows, e.g. call transfer
IP Router
or NAT
Advantages
Single external IP address (optional)
Supports additional cards without changes to external configuration
Removes bottleneck
Distributor intelligently routes initial requests
Distributor not on path of subsequent requests
IP router or NAT distributes subsequent messages
Local failures
Scope of effect
Designing appropriate availability
16
SIP
PING / ICMP
IP Reachability
TCP/IP
Network
Router
17
Proxy
Endpoint
Service
outage
Alternate
server
19
Existing
calls
New
calls
8
8
8
9
New
calls
8
8
9
8
9
9
Service
outage
Alternate
server
Hot
standby
State
replication
Hot standby
State replication enables failover without loss of stable calls
New calls may use alternative server during failover
In-service upgrade/downgrade for continuous operation
during maintenance
20
Management Component
Management Plane
Data/Protocol Plane
Primary Lin
e Card
Backup Lin
e Card
ers
tom
s
u
C HW
r
age
Man
DCL m
te
Sys ager
n
a
M
Active connections
Inactive connections
21
DCL m
te
Sys ager
n
a
M
DCLnent
po
m
Co A
Keep alive et al
State and/or configuration
replication
ers
tom
s
u
C HW
r
age
Man
DCLnent
po
Co m B
DCLnent
po
m
Co A
DCLnent
po
Com B
Real-World Example
Geographic
redundancy
Call signalling
Local redundancy
Geographic
distribution
Media
processing
Local distribution
Conclusions
SIP provides a very powerful architecture
Many different uses and variants
Questions?
jonathan.cumming@dataconnection.com
Meet us at booth 211