Service-Based Architecture in 5G
While the capabilities of the new radio interfaces in 5G have gotten a lot of attention, 5G also brings significant changes to the rest of the network. One of these changes is in how the core network is built.
At the core of most modern networks and services is typically a cloud- and virtualization-based platform. This is also the case for 5G networks. These platforms are programmable, and allow many different functions to be built, configured, connected, and deployed at the scale that is needed at the given time. One example of such a platform is OPNFV, an open source project supporting Network Function Virtualization.
But the demand for easily scalable systems that can be tailored for new situations does not stop at the platform. The ability to develop new functions easily, time-to-market, and use of off-the-shelf technology also drive changes in the network functions themselves. The goal is to migrate from telecom-style protocol interfaces to web-based APIs. The 5G core network will be based on what is called “Service-Based Architecture” (SBA), centered around services that can register themselves and subscribe to other services. This enables a more flexible development of new services, as it becomes possible to connect to other components without introducing specific new interfaces. The new system architecture is specified in 3GPP technical specification 23.501:
In addition, the use of APIs based on web-based technology makes development easy, as libraries, development tools, specification tools, code generators, security mechanisms and many other components are broadly available. Not to mention the broad experience many programmers have in using them.
Ericsson is heavily involved in the specification work, as well as working on implementations. I want to stress the importance of running code and experience from building some of these interfaces. As the industry is changing, we all have a lot to learn. Obviously, the ability to build modern, virtualized network services with web-based tools very useful for many purposes, but it will require work to gain the experience. Coming more from the pure networking background myself, I, for instance, decided to build an early prototype of an SBA architecture simulating a 5G core network with some of these tools. It has now worked well for couple of months in my basement, authenticating users in my own network :-).
While building a system by oneself is not necessarily a goal, it allows people to learn about the techniques and gain experience of what kinds of designs work well. In my case, one of the valuable learnings was that the broad set of tools makes it very easy to put together new services and get them up and running.
The work on SBA and other aspects of the 5G network continues. One observation that I would make is that when building cloud-native, optimised implementations, it is useful to think hard about the architcture of the applications on top. Modern platforms offer many services and possibilities that were not possible in the past, including creating process instances at chosen locations when they are needed, at a low cost and delay. Fully optimised designs can benefit from these features, and we should expect that the best possible core network systems continue to evolve in this direction.