Abstract
In the telecommunications sector product development must minimise time to market while delivering high level of dependability, availability, maintainability and scalability. High level languages are concise and hence potentially enable the fast production of maintainable software. This paper investigates the potential of one such language, Erlang, to deliver robust distributed telecoms software. The evaluation is based on a typical non-trivial distributed telecoms application, a Dispatch Call Controller(DCC) measured on a Beowulf cluster. Our investigations show that the Erlang implemention meet that the DCC’s resource reclamation and soft real-time requirements, before on the following reliability properties.
– Availability, e.g. recovery from failures is fast and repeated failures don’t reduce post-recovery throughput.
– Redundancy degree, e.g. how many simultaneous copies of the system state can be maintained without impairing performance?
– Resilience, e.g. achieving a throughput of 101% at 1000% load on 4 processors.
– Dynamic adaptability, e.g. the system can be dynamically upgraded by adding nodes without interruption of service.
We critique Erlang’s fault tolerance model,arguing that it is low cost, parameterizable and generic. As the Erlang DCC is less than a quarter of the size of a C++/CORBA implementation,the product development in Erlang should be fast, and the code maintainable. We conclude that Erlang and associated libraries are suitable for the rapid development of maintainable and highly reliable distributed products.
The project is in part funded by UK EPSRC Research Project, GR/R88137 and is a joint venture between Motorola Software and System Engineering Research Group at Basingstoke (England) and Heriot-Watt University at Edinburgh(Scotland).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Armstrong, J.: Making reliable distributed systems in the presence of software errors. PhD thesis, Department of Microelectronics and Information Technology, Royal Institute of Technology, Stockholm, Sweden (2003)
Fredlund, L., Gurov, D., Noll, T., Dam, M., Arts, T., Chugunov, G.: A verification tool for erlang. International Journal on Software Tools for Technology Transfer 4, 405–420 (2003)
Armstrong, J., Virding, R., Wikstrom, C., Williams, M.: Concurrent Programming in Erlang, 2nd edn. Prentice Hall, Englewood Cliffs (1996)
Torstendahl, S.: Open Telecom Platform. Ericsson Review (1997)
Granbohm, H., Wiklund, J.: GPRS - General Packet Radio Service. Ericsson Review (1999)
Hinde, S.: Use of Erlang/OTP as a Service Creation Tool for IN Services. In: Proceedings of the 6 th International Erlang/OTP Users Conference (EUC 2000). Ericsson Utvecklings AB (2000)
Blau, S., Rooth, J., Axell, J., Hellstrand, F., Buhrgard, M., Westin, T., Wicklund, G.: AXD 301: A new generation ATM switching system. Computer Networks 31, 559–582 (1999)
Wiger, U.: Industrial-Strength Functional programming: Experiences with the Ericsson AXD301 Project. In: IFL 2000, Aachen (2000), Presentation Only
Lillie, R.: Implementing dynamic scalability in a distributed processing environment. Technical report, Motorola Labs, Shaumburg, Illinois (1999)
Rittle, L.: Distributed Dispatch Architecture Project (Functional Requirements) (1998)
Mattsson, H., Nilsson, H., Wikstrom, C.: Mnesia - A distributed robust DBMS for telecommunications applications. In: Gupta, G. (ed.) PADL 1999. LNCS, vol. 1551, pp. 152–163. Springer, Heidelberg (1999)
Pointon, R., Trinder, P., Loidl, H.W.: The Design and Implementation of Glasgow distributed Haskell. In: Mohnen, M., Koopman, P. (eds.) IFL 2000. LNCS, vol. 2011, pp. 101–116. Springer, Heidelberg (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nyström, J.H., Trinder, P.W., King, D.J. (2005). Are High-Level Languages Suitable for Robust Telecoms Software?. In: Winther, R., Gran, B.A., Dahll, G. (eds) Computer Safety, Reliability, and Security. SAFECOMP 2005. Lecture Notes in Computer Science, vol 3688. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11563228_21
Download citation
DOI: https://doi.org/10.1007/11563228_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29200-5
Online ISBN: 978-3-540-32000-5
eBook Packages: Computer ScienceComputer Science (R0)