What is Linux Foundation Networking (LNF)?
Telecoms functionality is increasingly now implemented purely in software, yet the development life cycles and commercial models for software functionality are quite different to hardware functionality on which traditional standards processes have been based. As a result, we’re seeing significant activity around open source projects in both telecoms standards bodies and bodies that host open source projects, like Linux Foundation.
With software implementation, the lifecycle between standards setting and implementation tends to be inverted. With hardware, an implementation design (for example a chip design) is normally committed once for a long production run, meaning standards must be agreed before that design is committed. Software, on the other hand, and especially software developed using agile continuous integration, continuous deployment (CI/CD) techniques can be developed in many incremental steps and so the interface standards emerge after users and developers have observed what works in practice.
The consequences of this shift in lifecycles between standardisation and implementation is very much a hot topic being discussed by bodies like Linux Foundation.
Unfamiliar with the working of open source projects and Linux Foundation? We’ve set out some of the background below.
What is an open source project?
These generally develop and maintain specific software systems using a ‘community’ of software engineers. Critically, the software they develop is made available under a recognised ‘open source’ licence which normally means that anyone can download and use the original source code of the software. As a result, it can be readily modified, extended, repurposed, or improved by anyone as they wish (some licences place a legal requirement to publish any changes/additions to the software as open source, but not all, and most telecoms related projects don’t make such restrictions).
Possibly the most famous open source project is the Linux operating system which dominates server/data centre applications, even if slightly less familiar on desktops. It is also hidden in other well-known systems, for example, the Android system on many smartphones has Linux at its core. The Linux Foundation was originally set up to host the Linux project.
However, there are now open source projects covering pretty much every conceivable software application and even many proprietary software systems will contain or make use of some open source components.
Hosting open source projects
There are a large number of bodies that host open source projects, of which the Linux Foundation is one of the most significant. While the software produced by an open source project may be freely used, running the project has significant costs. These generally include the time of the developers/maintainers, the infrastructure and software tooling used by the developers/maintainers, the repositories which allow for public download the software, and any marketing and promotion that the project may choose to enter into. Different hosting organisations have different models for funding these costs.
The growing crossover between open source and telecoms standards is increasingly evident. ETSI for instance, as a major telecoms standards body, now directly hosts a number of open source projects.
Linux Foundation more recently brought together a number of telecoms related projects under a single funding umbrella – Linux Foundation Networking (LFN) – which has also helped streamline interrelationships between projects.
Why would any commercial company want to get involved with open source?
This has been a very common question over many years. This may appear a new and important question for telecoms companies entering into the world of an inverted lifecycle between standardisation and implementation, but it is also an established and largely answered question in the software world, especially with the ‘hyperscalers’.
Often the primary motivation is building a wide ecosystem of developers and users around a core system in a world strongly characterised by ‘winner takes all’. Whether developer or user, there is very often a high cost in learning a system, so a critical part of the marketing strategy is to ensure there is a large number of people who have come through this ‘learning curve’ and are building the common core system into their overall systems. Ultimately this can be in everyone’s interests.
This of course sounds very like the motivation for developing standards.
What this means is that often the output of an open source project is not a complete and fully wrapped solution that can be simply used ‘off the shelf’. To make use of the software in its native and free form often requires detailed technical knowledge. It is often made widely available in commercial form with extra surrounding software components and other support packages, but the core functionality provided by the open source project has effectively become an industry standard.
So how does the open source project relate to standards? In some cases, the interface specification emerging from the open source project is just the ‘de facto’ standard. In other cases, a standards body will endorse and publish the interface standard developed in the open source project. More recently, there has been a move for an open source project to work closely with a standards body, in an iterative way, and it’s been interesting to note that versions do not always evolve in lock-step. Sometimes the standard might advance ahead of the open source implementation, other times, the reverse is true. An early example of this has been the Open Source Management and Orchestration (OSM) open source project hosted by ETSI which has been working in tandem with the ETSI Network Functional Virtualisation (NFV) specification group.
Significantly, there is a strong intent between the O-RAN Alliance and LFN to collaborate on both 5G and 6G open source RAN implementations and associated standards and this was a significant item on the agenda of the most recent San Jose meeting of LFN.
What differences would you notice between involvement in a standards body and an open source project?
In principle, there is a fundamental difference in the working methods of a standards body and an open source project. For standards development the process is aiming at achieving consensus amongst the participants. For open source, the process is managed as a development project based around committing code to the project. Individuals in the project called ‘committers’ are responsible for accepting or rejecting code additions/changes made by members of the project. Committers are typically appointed by an overseeing project board and normally have direct authority to accept or reject proposals irrespective of wider views. The process is not consensus based.
In practice, the differences are smaller than this might suggest. Most standards activities are run as well managed projects with deliverables and milestones while most committers in open source projects will take account the views of all those involved in the project. However, it is also the case that, unlike standards bodies, many successful open source projects benefit strong singular leadership, either from an individual, or a sponsoring organisation.
What projects does Linux Foundation host beyond networking?
The original project is the Linux kernel itself and this is still a key project for Linux Foundation. However, there are now a wide variety of projects, many, like the networking projects, grouped into a cluster.
Beyond LFN the cluster likely to be of most interest to the telecoms sector is the Cloud Native Compute Foundation (CNCF):a large number of projects relating to containerised cloud solutions including the widely used systems Kubernetes, Helm, Prometheus, and Istio.