• Architect behind the 2600hz Pla=orm and blue.box • Co-‐Author of FreeSWITCH High-‐Performance Telephony Book and the FreeSWITCH Cookbook • Computer Science / Business Management Graduate from RPI • Contributor / Author of Various Open-‐Source Projects About Me
know this – This never ceases to amaze me • They Just Buy Stuff • Their Asset Is – Their Brand – Their Customer Base – Their Cables & Towers The Promise of VoIP
– CDR Tool – DTH / BillSo[ – Yate – So[ Clients – Etc. All of them live on their own – … yet depend on each other Open Source VoIP is Fragmented Switching Tools Business Tools Media Handling Load Balancing Deployment Monitoring Logging / CDRs Billing Provisioning
Resource Monitoring Why AMQP – Built-‐in Messaging is Fast • Designed for Financial Systems – Easy to Scale & Cluster – Most Important: Directed Messaging • Messages only go where they need to go • On a busy switching environment, this is criTcal • MulTple Strategies for DirecTng Messages Our Research : Messaging
is going to produce: • 1 Request / MulTple IniTal Responses • 100 or so call events published • 0-‐>Many messages for call manipulaTon • ExpecTng 300 calls/second per box • ExpecTng 3,000-‐4,000 events per second max Our Research : Messaging
Less Write (reconfigure infrequently) – Features Change Constantly • 0 downTme for maintenance is goal CouchDB (is Awesome) – NoSQL – based • Schema changes regularly, but usually based on core object (translates well to a document) – Databases are Lightweight Concepts – ReplicaTon is Stupidly Simple • A database, list of documents, or a view – Sharding is Stupidly Simple & Flexible Our Research : Storage
Customers Usually Inconsistent – Resource Demand Varies by SituaTon – Resource Demand Varies by Component Why Erlang? – One VM and Library to Deploy – Networking is Built-‐In – Many, many lightweight threads possible – Everything can live anywhere Our Research : Scalability
built-‐in because it’s expected – Nothing standard really out there Why FreeSWITCH + Erlang? – Round-‐trip media monitoring with audio – Test true audio latency on circuits – Test true up-‐Tme across all call paths Our Research : Maintenance
The UlTmate Mashup Tool Why REST / Crossbar? – Layer 1: AbstracTon of real-‐Tme events – Layer 2: AbstracTon of common features – Layer 3: Provide Common Interface • REST keeps it easy and language agnosTc Our Research : Simplicity
• Spinning up additional capacity! • Watching load-balancing and call processing between multiple servers! High-Level! • Using the REST/JSON API! • The docs & available APIs! Sample Apps! • Trunk Store! • Hosted PBX! Interactive Demos Are More Fun
to type of media! ! Automated Infrastructure Management! – Spin up, spin down servers at will! – Works on commodity hardware! – Measures capabilities of hardware automatically! ! Intelligent Monitoring! – Detects faults automatically! – Modifies infrastructure accordingly! THE FUTURE!