Aether Project



Aether is a leading open source Private 5G platform. It includes a cloud native Mobile Core (SD-Core) and an O-RAN compliant RAN (SD-RAN), both running on a Kubernetes-based edge cloud. (Aether can also be deployed with commercially available 4G/5G small cells.) Aether is packaged as a managed cloud service, offering Connectivity-as-a-Service with closed-loop control. This includes both a runtime API (AMP) and DevOps-based Lifecycle Management (OnRamp). This combination makes it possible for users to gain hands-on experience with small deployments, and then scale up to larger multi-site environments.



Project Map

Aether is assembled from multiple components, some managed as sub-projects under the Aether umbrella and some pulled in from other sources. The following should help you navigate the space. It is organized around the five major "boxes" in the above diagram, but focuses on the constituent open source pieces.

SD-Core

SD-Corealso called the Aether Core—anchors the Aether Project. All supported configurations of Aether start with the Aether Core and then select from a menu of RAN options. The open source code base includes a horizontally scalable 5G Control Plane (originally forked from free5GC and currently supporting Release-15 with active development on Release-18 underway), a 4G Control Plane (originally forked from OMEC and supporting Release-13 with changes from Rel-15 to support 5G in NSA mode), and a dual-use UPF that supports both 4G and 5G interfaces (the UPF includes Release-16 features). SD-Core also includes an open source RAN emulator, called gNBsim, that is used to stress-test the 5G Control Plane. Other RAN options correspond to deployment blueprints, as specified by OnRamp (see below).

Source code for all SD-Core elements can be found at https://github.com/omec-project.

Documentation for SD-Core can be found at https://docs.sd-core.opennetworking.org.

SD-RAN

SD-RAN is an open implementation of the 7.2 split defined by the O-RAN Alliance. The open source code based includes a near Real-Time RAN Intelligent Controller—referred to as the Aether nRT-RIC—plus an exemplar collection of xApps. The Aether nRT-RIC currently supports the A1 and E2 interfaces (including the E2SM-KPM and E2SM-RC service models), plus Go and Python SKDs for writing xApps. SD-RAN also includes an open source RAN emulator, called RANSIM, that is used to stress-test the xApps. The Aether nRT-RIC can also be configured to work with other disaggregated radio elements, including the OAI RAN stack (with or without USRP and commercial UE) and any commercial O-RAN compliant RU/DU/CU. The Aether nRT-RIC builds on µONOS, a microservice-based redesign of the "Classic" ONOS SDN Controller.

Source code for all SD-RAN elements (including µONOS) can be found at https://github.com/onosproject.

Documentation for SD-RAN can be found at https://docs.sd-ran.org.

Documentation for µONOS can be found at https://docs.onosproject.org.

AMP

AMP implements the Aether Management Plane, which provides a runtime control layer that (optionally) runs on top of SD-Core and SD-RAN. AMP consists of two sub-systems: a Runtime Operational Control subsystem, called Aether ROC, that implements a control API and associated GUI; and a Monitoring subsystem that collects and displays monitoring data. ROC builds on µONOS, a microservice-based redesign of the "Classic" ONOS SDN Controller. The Monitoring subsystem is borrowed from Rancher, augmented with Aether-specific dashboard panels.

Source code for all Aether ROC elements (including µONOS) can be found at https://github.com/onosproject.

Documentation for both AMP subsystems (ROC and Monitoring) can be found at https://docs.aetherproject.org.

Documentation for µONOS can be found at https://docs.onosproject.org.

OnRamp

Aether OnRamp provides tooling to deploy various combinations of the above components, including Aether Core with/without AMP; Aether Core with gNBsim or some other RAN emulator; Aether Core with SD-RAN or other physical RAN devices. Each deployment is called an OnRamp Blueprint, and is defined by a combination of Ansible Variables, Roles, and Playbooks. Contributions of additional blueprints are encouraged, with the documentation giving detailed guidelines for defining new blueprints.

Source code for all Aether OnRamp blueprints can be found at https://github.com/opennetworkinglab (start with the aether-onramp repo).

Documentation for Aether OnRamp can be found at https://docs.aetherproject.org.

Cloud Native Tooling

Aether OnRamp deploys all configurations of Aether on Kubernetes, based on a set of artifacts (Helm Charts and Docker Containers) officially published by each subsystem. OnRamp also installs Kubernetes (specifically RKE2), although in principle it should be able to start with an existing deployment.


Questions about how to get involved? Email info@aetherproject.org for more information. All participants in the Aether project agree to adhere to the LF Code of Conduct