< back to overview

ONF’s SD-Core v1.0 – Programmable 4G/5G Core Fully Integrated with Aether

Jan 10, 2022
Ajay Thakur
Ajay Thakur About the author

ONF announced the SD-Core v1.0 release which includes many new features and is now fully integrated with Aether v1.6. The SD-Core project is a 5G/4G disaggregated mobile core implementation optimized for deployment in the public cloud. It exposes standard 3GPP interfaces for those wishing to use the project as a conventional mobile core, but it is also pre-integrated with an adapter available as part of the Aether Runtime Operation Control (ROC) subsystem for those wishing to deploy mobile-core-as-a-service as a SaaS solution. This includes integration with Aether ROC subsystem and Aether SD-Fabric subsystem. 

SD-Core v1.0 Release Highlights

  • Multiple User plane support using APN (4G) and Slice Id (5G) using CUPS call flows: SD-Core supports connections from multiple user planes (UPF) from the same edge. Such UPFs typically belong to different slices configured at the edge site.
  • Application Filtering Support: Network slicing enables the operator to apply application level access control. Operators can deploy multiple applications at the edge or Internet and can restrict users from accessing it based on the slice to which a user belongs, adding an extra layer of security in the edge app deployment.
  • Policy framework to support QoS at multiple levels: SD-Core makes use of policy network function (PCF/PCRF) to enforce QoS decisions on the subscriber session. Policies are configured per network slice and PCF/PCRF binds those policies to the subscribers. APIs provide the flexibility to assign UE level QoS, per application QoS and also slice level QoS.
  • Support of REST APIs to configure SD-Core: Single entry point for REST API based configuration makes SD-Core easy to use. These APIs work for both 4G and 5G network functions.
  • Subscriber Management Interface: 3GPP requires user security keys to be configured in the network function. Two interfaces to configure subscribers are provided in SD-Core. 
  • Operations support to manage multiple PLMN within Core Network: SD-Core supports configuration of multiple slices with different PLMN. This helps in sharing the same core network among multiple operator networks. Each SD-Core network function is capable of handling multiple PLMN in the network.
  • Metrics exposure for visibility into radio network connections and UE connections: SD-Core uses Prometheus to export metrics. These metrics are useful to get the status of various gNodeB/eNodeB connected to the core network and share current user connectivity status.
  • 5G gNB simulator: gNB simulator simulates 5G UE and 5G gNodeB. gNBSim is capable of supporting multiple UEs and multiple gNodeBs. 
  • 3GPP defined procedure validation and hardening for error scenarios: SD-Core has been deployed in the Aether Network for more than 2 years now and in several operator trials. It is an ongoing effort to continue to validate 4G/5G 3GPP procedures with multiple access networks, tools and user equipment.
  • SD-Core Scale support: An important goal we achieved was getting 5000 subscribers with 10 subscribers attached per second with a single instance. We will be pushing for higher limits in the future. To achieve this limit, AMF and SMF have required architecture level changes. SD-Core 4G is built on top of the OMEC project. 4G is tested for 16000 calls at the rate of 100 calls per second. All these results are achieved with a distributed user plane. Vertical scaling can be done easily to achieve higher call setup rates.

SD-Core Simulator

All SD-Core project changes go through CI tests. The gNodeB simulator was developed to test the functionality of the 5G control plane. A key benefit of the development of a comprehensive test tool is the ability to simulate possible issues that may occur in production and address these prior to software release. Deployment of the gNodeB simulator can be seen in the figure below, where gNodeB sim runs as Kubernetes pods and multiple instances of simulator can be run. 

SDCore Blog Fig 1 1024x611 jpg

Figure 1: gNodeB simulator

Some of the highlights of the gNodeB simulator are:

  • Ability to simulate user defined UEs and gNodeBs
  • Support for NGAP, NAS and GTPU protocols
  • Multiple profiles are supported which makes it easy to run different sets of events for each subscriber.  Results for the profile are reported in log files.
  • Support for ICMP data generation to test data functionality
  • More details of the tool and its design can be found at sdcore-doc site

Configuration Management

One of the most important and difficult parts of managing a 4G/5G control plane is enabling the services by configuring each individual network function. In this release, a simple REST API is provided that eases the burden of configuring individual network functions.  Services can be added or removed through APIs, eliminating the need to understand the internals of all services. A configuration API server offers the ability to distribute the configuration to required components underneath, thereby simplifying and accelerating the configuration process. 

SDCore Blog Fig 2 1024x747 jpg

Figure 2: SD-Core Configuration API Server

SD-Core provides APIs to configure application filtering per Network Slice. Refer to the figure below to understand how multiple slices are created and how each slice can be configured for access to specific  applications. There are 3 levels of QoS supported in the solution. Each slice has its QoS limits configured through APIs. Each device in the slice has QoS limits configured. Each application can have configured QoS limits as well. 

SDCore Blog Fig 3 1024x525 jpg

Figure 3: Application Filtering per Network Slice

Learn More

Read the full SD-Core release notes. This project is licensed under the ONF Member-Only Software License. ONF members are invited to participate, collaborate and adopt this exciting open source platform. Members wishing to be granted access to the SD-Core repository should contact membership@opennetworking.org for more information.

To stay updated periodically on SD-Core news please join the email list.

Join Live Techinar

Join us for a live virtual session on January 25, 2022 at 9am PST to learn more about the SD-Core v1.0 and Aether v1.6 from project leads and collaborators. There will be application demonstrations along with technical highlights about the features of the release, and attendees will have the opportunity to ask questions during the live Q&A. Click here to register. 

Many thanks to the SD-Core Community for their ongoing contributions and support.

 

 

ABOUT THE AUTHOR Ajay Thakur
Ajay Thakur