Why Open Source Conquers The Telecommunications Industry

Written by smosgr | Published 2021/04/02
Tech Story Tags: devops-tools | open-source-software | telco-softwarisation | telecommunication | devopsintelco | kibana | jenkins | cicd

TLDR According to the Github 2020 report, the UK has been in the top 5 for open source usage outside the US with > 28.6% YoY growth. The total of open source files changed on Github by UK based contributors in 2020 exceed the 80 millions developers with an amazing +33% growth. Open source solutions come for free if any individual or even company want to use them. There are no licencing fees and no support/operational fees for the developers. The power of the crowd that delivers ideas, code, projects and also operates and troubleshoots when it is required.via the TL;DR App

In this article we are going to look at recent statistics of open source software utilisation in the United Kingdom. Then we will explore the advantages and finally we will dive into an ongoing 5G Telco project where open source tools are used in a great extent.
According to the Github 2020 report, the UK has been in the top 5 for open source usage outside the US with > 28.6% YoY growth. The total of open source files changed on Github by UK based contributors in 2020 exceed the 80 millions developers with an amazing +33% YoY growth. There are more metrics that prove the great increase of open source contribution in the UK, which suggests the big surge of Open source contribution overall, especially when comparing with years such as 2005, when, allegedly, it was difficult as a developer to work in a company where the developed software system was based on open source. People might say that in general there was no such need or demand for software development like today. This is a wrong statement because various Linux distributions, Asterisk, tools such as Git and a while later, text editors such as Libre Office existed. The following report from OpenUK provides great detail on the topic and shows the consistency throughout the years for development and contribution to open source projects.

10 Reasons to use open source software

Community is the first and biggest advantage. People from all around the world can access the code repository and make from a very small contribution e.g. a typo fix up to the development of a set of features or the definition of the project strategy overall or even architectural modifications. The outcome is an improved solution with more features and more effective functionality.
The power of the crowd.
As a software developer I have always looked for a cool project to contribute and did so multiple times. Now we should think how many
people around the world want to do the same, which can provide great
outcomes. This is the power of the crowd that delivers ideas, code, projects and also operates and troubleshoots when it is required.
Transparency.
As a an end user, I am always wondering how the codebase of anything I
use look like. What is the full feature list and if it can be extended. Open source code gives us full visibility into the code base, and of course the entire list of comments/interactions of the people who developed it. When a new bug is spotted, it’s amazing to see the section of the code that caused the issue! On the other hand, proprietary code is secret and many times contains surprises.
Reliability.
That goes back to the power of the crowd. The more people following a
project the better to resolve potential issues. A company team that “has to get the work done” sounds less motivational than a community of people who enjoy spending their free time on a open source project.
Better security.
Open source project does not only attract coders, but also experts on specific areas, such as security. Surprisingly, it is often more secure without the need to spend a great amount of money to secure an application with a proprietary solution. The community behind the project is there to spot and fix any vulnerability. Hackathonsbug bounties are also a successful way to attract a number of people to resolve any type of issues.
Merit-based.
The developed code is created from love and sole motivation of initally one person. The rest of the community will also review and test the functionality. The entire process, from decision making to tool selection was done by the respective people. The power of making these decisions is a great benefit and works as a boost to the psychology of the team.
Faster time to market.
With the increase of DevOps and its combination with transparency, open source solutions are openly available and can be explored for free. A new solution or technology option is often one “merge request” away.
Cost effective.
Open source solutions themselves come for free if any individual or even company want to use them. There are no licencing fees and no support/operational fees for the developers. This is a great advantage
compared to proprietary solutions.
Freedom from (vendor) lock-in.
One of the biggest and costlier fears of an organisation is how to move to “that other solution when we have been using solution X for so many years”. This is a common problem with proprietary software, as there is a lot of risk originating from tight coupling created during the time “solution X” was used. The problem applies to software applications, but also to infrastructure components i.e. hardware, operating solutions, providers. The cost of moving to a better solution increases and often requires more resources to do so. Enterprises should consider this risk before opting for a proprietary solution. If they do so, they have to mention it in their contract. However, this issue can be resolved by looking at the open source solution out there.
Becoming the norm.
Nowadays, the open source community is getting bigger, as many enterprises also help implementing open source solutions. Additionaly,
they support open source communities and commit in expanding solutions
that can also be integrated with their own systems.

10 popular open source projects used in a Telco

“Open source projects provide the code to build upon and/or modify to create market-differentiating products and services” — IBM
The telecommunications and networks are being reinvented. Network function virtualization (NFV) replaces proprietary physical network appliances and aims to shift gradually the infrastructure to the cloud, where also Cloud Native tools and technologies are onboarded. The biggest benefits of NFV and software-defined networks (SDNs) are flexibility, cost reduction, scalability, and interoperability, while reliability,
security and avoiding single point of failure are ensured at high percentage by the selected cloud provider. Open source software solutions is combined for maximum results as the previous mentioned benefits are considered.
Access 4.0 — a great example for extensive adoption of open source
With the Access 4.0 (A4) platform, Deutsche Telekom is breaking new ground in the construction and provision of networks: conventional hard-wired systems are being replaced by open, disaggregated, highly automated and microservice-based technologies. Vendor-specific closed systems are
being replaced on the A4 platform with open, disaggregated, and microservice-based technologies. A4 is based on open source principles in many aspects and shares any resulting insights with open source communities. The open software promotes competition among suppliers and cuts investment costs for network operators. The A4 team holds key roles in international collaborative projects such as the Broadband Forum (BBF), the Open Networking Foundation (ONF), the Open Compute Project (OC), and the Telecom Infrastructure Project (TIP). This active involvement helps prevent island solutions and leverage synergies not just within Deutsche Telekom, but in the sector as a whole. — Telekom.com
A more detailed look at the architecture of this spectacular project shows the extensive utilization of open source solutions projects. Below you may find a short description and their respective repositories for 10 open source projects used in Access 4.0 project:
Golang is a statically typed, compiled programming language designed at
Google. It is syntactically similar to C, but with memory safety, garbage collection, structural typing and CSP-style concurrency. — golang.org
Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications. — kubernetes.io
Docker is a set of platform as a service products that use OS-level
virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries and configuration files; they can communicate with each other through well-defined channels. — docker.com
VOLTHA™ is an open source project to create a hardware abstraction for
broadband access equipment. It supports the principle of multi-vendor,
disaggregated, “any broadband access as a service” for the Central Office. — opennetworking.org/voltha
Voltha aims to provide a layer of abstraction on top of legacy and next generation access network equipment for the purpose of control and management. Its initial focus is on PON (GPON, EPON, NG PON 2), but it aims to go beyond to eventually cover other access technologies (xDSL, Docsis, G.FAST, dedicated Ethernet, fixed wireless).
Jenkins is an open source automation server which enables developers around the world to reliably build, test, and deploy their software. — jenkins.io
Fluentd is an open source data collector for unified logging layer. It allows
you to unify data collection and consumption for a better use and
understanding of data. — fluentd.org
Kibana is a free and open user interface that lets you visualize your
Elasticsearch data and navigate the Elastic Stack. Do anything from
tracking query load to understanding the way requests flow through your
apps. — elastic.co/kibana
Logstash is a free and open server-side data processing pipeline that ingests data from a multitude of sources, transforms it, and then sends it to your favorite “stash.” — elastic.co/logstash
Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development. It is a keyword-driven testing framework that uses tabular test data syntax. — robotframework.org
Cert-manager is a native Kubernetes certificate management controller. It can help with issuing certificates from a variety of sources, such as Let’s Encrypt, HashiCorp Vault, Venafi, a simple signing key pair, or self signed. — cert-manager.io
This is only a subset of open source tools and solutions used in the project. Access 4.0 is designed and implemented with open source in its core. For more information, please look at the references provided below or feel free to get in touch — the details are provided below.
References
*The article was also published at Reply’s website and you may find it here.

Author and Contact details

I’m a Senior Consultant at Net Reply within the Future Networks Business Unit. The team consists of consultants, software developers, technology enthusiasts specialising in Telecommunications and technological concepts such as Software Defined Networks (SDN), Network Function Virtualisation (NFV), DevOps. Our mission is to build the Next Generation Networks leveraging the art of software and latest technological trends.
If you would like more information on these, please contact me on s.moschos@reply.com. Alternatively you can learn more about us on LinkedIn (Net UK) and Twitter (Net UK) or you could just find me on LinkenIn (Stelios Moschos).

Published by HackerNoon on 2021/04/02