Presentation is loading. Please wait.

Presentation is loading. Please wait.

Motorola Internal Use Only Evaluating Erlang for Robust Telecoms Software David King 2004 S 3 Symposium – Henry Nystrom, Phil Trinder, David King.

Similar presentations


Presentation on theme: "Motorola Internal Use Only Evaluating Erlang for Robust Telecoms Software David King 2004 S 3 Symposium – Henry Nystrom, Phil Trinder, David King."— Presentation transcript:

1 Motorola Internal Use Only Evaluating Erlang for Robust Telecoms Software David King 2004 S 3 Symposium – Henry Nystrom, Phil Trinder, David King

2 Motorola Internal Use Only Collaborative Research Motorola Labs & Heriot-Watt University Lifetime –Dec 2002 – Oct 2005 (3 years) Resources –$200,000 from UK Research Council (EPSRC) –Post-doc for 3 years –Joint supervision from Motorola Labs & Heriot-Watt

3 Motorola Internal Use Only Objectives Commercial –Produce strong evidence that Erlang can improve Motorola software productivity –Disseminate work Scientific –Investigate impact of language constructs on distributed software

4 Motorola Internal Use Only Problem Domain Distributed High Availability (downtime of minutes per year, 5NINES) Complex software (millions of lines of code) Continuous operation (years) In service upgrade

5 Motorola Internal Use Only Characteristics General purpose programming language, originally developed in Ericsson for Telecoms Massive concurrency Soft real-time response Garbage collected memory Highly available (hot upload) Fault tolerant (exceptions, error detection) Open Source –OTP Library (Open Telecom Platform) Commercial support

6 Motorola Internal Use Only Erlang Success Stories Ericsson AXD301 in Engine –Size = 1,136,150 lines in Erlang –Availability = 99.9999999% (9NINES) Alteon (Nortel) SSL Accelerator –Size 74,440 lines in Erlang Ericsson GPRS System T-mobile, SMS System, UK Teba Bank, Credit Card Systems, South Africa Reference: Joe Armstrong, PhD thesis, 2003.

7 Motorola Internal Use Only Research Strategy Implement some telecoms applications in Erlang –Dispatch Call Controller (this talk) –Voice over IP for TETRA Site Controller (next project) Compare –availability (recovery from process failures) –resilience (high throughput) –dynamic adaptability (performance when processes are added)

8 Motorola Internal Use Only Dispatch Call Controller The server part of a Dispatch Call Control Critical functionality –Dynamic scalability –Resource reclamation –Fault tolerance –Soft real time

9 Motorola Internal Use Only DCC Architecture

10 Motorola Internal Use Only Multiple Failures

11 Motorola Internal Use Only Service Instance Failures

12 Motorola Internal Use Only Increase in Throughput of Voice Messages

13 Motorola Internal Use Only Dynamic Adaptability

14 Motorola Internal Use Only Results Summary Availability –99.9% of all voice messages delivered on time. –can handle process failures (single, multiple, repeated), without significant impact on throughput. Resilience –performance does not degrade for massive overloading, e.g. over 1000%. Dynamic-adaptability –performance upgrades when processes are added and degrades when they are removed.

15 Motorola Internal Use Only Erlang vs C++ PartLines of Code PercentageModules Total4884100%38 Platform299461%26 Testing174136%11 Service1473%1 PartLines of Code PercentageClasses/ Instances Total21423100%- C++2134099.6%81 IDL830.4%15 Erlang C++

16 Motorola Internal Use Only What features of Erlang helped? Automatic memory management Automatic process management Fault-tolerance – using the Mnesia data- base for recovery from failure, exception handling High-level programming – pattern matching, polymorphism, etc.

17 Motorola Internal Use Only What next? Implement a component of a real product (Voice over IP for the TETRA Site Controller), and compare Compare with Java/CORBA, C++/CORBA, SDL.


Download ppt "Motorola Internal Use Only Evaluating Erlang for Robust Telecoms Software David King 2004 S 3 Symposium – Henry Nystrom, Phil Trinder, David King."

Similar presentations


Ads by Google