Vous êtes sur la page 1sur 8

Building Open Scalable and Highly Available Software Architectures

Tony Downes Principal Technologist, NPD Data Connection Ltd. (DCL) Tony.Downes@dataconnection.com

Data Connection Overview


Background
Founded in 1981 Headquarters in Enfield, UK 400+ employees across 7 WW locations
90 80 70 60 50 40 30 20 10 0 82 84 86 88 90 92 94 96 98 00 02 04 06

Revenue & Profit

3 Divisions
Network Protocols Division Enterprise Connectivity Division MetaSwitch

Profit Total Revenue

Success Factors
Highest quality Superior support Engineering excellence Supplier stability, longevity

400 350 300 250 200 150 100 50 0 81 83 85 87 89 91 93 95 97 99 01 03 05

Employees

Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

Design Goals Scale + Performance


Controller Card Line Card

No hard-coded limits Manage bottlenecks


Decouple processing with messagebased interfaces Flow control between components Tunable scheduling

Modular architecture
Distribute function across multiple threads, tasks, processors, cards, etc. Location transparency
% utilization

CPU Utilization
35 30 25 20 15 10 5 0 0 40 80 120 160 200 240 Calls per second B2BUA Stateless Proxy Trx Stateful Proxy Call Stateful Proxy

Efficient processing
Tunable algorithms for caching and memory management Search optimization insert vs. find

Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

Data Connection Architecture


Management (GUI / CLA / SNMP)

Asynchronous message-based interface between components

Scheduling and timers Memory and buffer management Queues, lists and trees Diagnostics

tem Sys ager n Ma

Key
nt one p m Co A

Core Protocol Code (100% portable) API mapping (platform/OS) Stubs (platform/OS)

ent pon Com B

Low-level device drivers, switch fabric Network services, e.g. TCP/IP, DNS

Designed for scale, modularity, and high availability.


Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

Design Goals - High Availability


Controller card

Fault prevention
Defensive programming Testing

Configuration

Architect to minimize impact


No single point of failure Distribute function Non-stop operation during recovery Graceful restart or state replication
Hot standby Persistent store
ard ine C L e A c t iv

State

Persistent store

Fault recovery management


Identification and isolation Manage failover / restart of components
Reconnect active components Audit

Card Line p u Back

In-service upgrade
Manage failover Map information between versions

Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

High Availability Framework


DC System Manager
Creates backup process if required Initiates replication procedures Handles failovers
Management Component
Management Plane Data/Protocol Plane

Primary Lin e Card

Backup Lin e Card

ers tom Cus HW r age Man

ers tom Cus HW r age Man

DCL m te Sys ager n Ma DCLnent po Com A

DCL m te Sys ager n Ma DCLnent po Co m A

Keep alive et al State and/or configuration replication Active connections Inactive connections

DCLnent po Com B

DCLnent po m Co B

Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

Example DC-SBC on ATCA


Backup call signaling Active call signaling
th dwid Ban nager ma g alin sign P I S

Active media (backup not shown)

ol ontr C l l Ca

way Gateer a i MedManag

Stubs map to platform/OS


ta et Da Packwarder For

OS & device drivers

ATCA platfor m

HA middleware

Software architecture is a very good fit with ATCA


Strong interest in SBC and other IMS applications Significant proportion of DCLs new business is on ATCA platforms

Santa Clara, CA USA

October 2008

Building Open Scalable and Highly Available Software Architectures Architectures

Conclusions
Scalability and High Availability impose new requirements
Flexible hardware architecture and scheduling Scalable storage and search algorithms Recovery from complete and partial failures In-service upgrade/downgrade

Impacts whole design from initial architecture


Cannot be added to existing product

Data Connection is the protocol software expert


Implementations with proven performance Pre-integrated solutions with our partners
Santa Clara, CA USA Building Open Scalable and Highly Available Software Architectures Architectures

October 2008

Vous aimerez peut-être aussi