Aether 2.0 Release

Note

Aether 2.0 is no longer supported. Its Guide is archived here.

Aether Highlights

This release of Aether, the first to fully embrace open source, adds two exciting new capabilities. The first is support for 5G deployments, enabling greatly increased bandwidth compared to 4G-based deployments. Complementing 5G is our P4 based mobile-core User Plane Function (UPF), which offers a high performance hardware-accelerated datapath that does not need to be routed through compute-based software UPFs. Aether maintains backward compatibility with 4G, and both 4G and 5G slices may make use of both software and hardware based UPFs. P4 hardware and BESS software UPFs can be deployed side-by-side in a hybrid deployment.

As part of this release, several edge applications have been showcased on the Aether platform. We demonstrated the first Aether-interactive smart application, an OpenVINO based AI/ML person-detection application that dynamically increases network-bandwidth for video recording purposes when a person is detected, and then dynamically reduces the same when people are no longer detected. In partnership with Intel, we have also deployed an anomaly detection application on the Aether platform that runs as an edge application, monitors a manufacturing or packaging line of product samples, and then uses an AI/ML algorithm to detect anomalies in real time. These applications were demonstrated at Mobile World Congress 2022 in Barcelona last week.

The transition to open source will further increase the pace of Aether development, putting it within the reach of the 5G and edge developer community that ONF has been cultivating and encouraging. Developer contributions are welcome, and increased access will allow increased adoption of this technology.

Features & Improvements

New 5G features

This release of Aether incorporates SD-Core 1.1, which includes integration with 5G gNB small-cells from T&W running 5G-SA RAN stack from Radisys, 5G slices with Application filtering, and a policy framework that supports QoS at multiple levels - subscribers, applications and slices. For more details, please refer to the SD-Core 1.1 Release notes.

SD-Fabric Integration

This release of Aether incorporates SD-Fabric 1.1. While previous releases of Aether supported SD-Fabric as a “Beta” feature, this release officially supports the P4 UPF and other SD-Fabric features like paired leaf-switches with dual UPFs for High Availability.

The P4 UPF may now be added to Aether as an available UPF. In addition to a single P4 UPF, Aether continues to allow multiple BESS UPFs to be deployed alongside the P4 UPF. The user can decide at slice provisioning time whether a slice should use the P4 UPF or a BESS UPF. UPFs may only be bound to one slice at a time. The P4 UPF and the BESS UPF both support application filtering and QoS metering. The BESS UPF has been enhanced to include additional per-flow metrics.

For more details, please refer to the SD-Fabric 1.1 Release notes.

Sim-Card and Device Modeling

The Aether configuration model has been enhanced to include support for SIM card and device modeling. The lifecycle of a device is now decoupled from the lifecycle of the SIM card that is attached to that device. Devices can be created in the modeling before their SIM cards are created, and devices may continue to exist after their SIM cards have been removed. A removed SIM card can be associated with a different device.

Aether may be configured to automatically learn of provisioned SIM cards and add them to the enterprise configuration. An administrator may then see the list of available SIM cards and choose which one to add to a device.

The model tree has been revised to be more hierarchical. For example, Slices are now contained within Sites, and Sites are contained within Enterprises. This eliminated many of the boilerplate Slice and Enterprise links that used to be present in the Aether-1.6 models, and it provides automatic enforcement of objects to the appropriate scope.

Configuration System Improvements

Aether’s ROC configuration system internals were redesigned and reimplemented to address various instability issues and incorporate new patterns and architectures. The controllers at the core of onos-config were redesigned in TLA+ – a machine-checked formal specification language – to develop a more stable and viable architecture long-term, and the controllers were reimplemented according to the new design. On the northbound, new gNMI extensions make onos-config’s handling of gNMI Set and Get requests configurable with support for various consistency strategies when propagating changes to gNMI targets. On the southbound, support was added for handling non-persistent targets (recovering target configuration after restarts). For additional information, please see the README file for the configuration system.

Support for complex validation rules

Aether now has support for complex validation rules (“guardrails”) to prevent misconfiguration of the system. These guardrails are specified using Aether’s yang modeling language, allowing Aether staff to easily add more rules as the need arises.

Data Plane Optimization

Prior releases of Aether passed data plane traffic through the management server. Aether 2.0 has been optimized so that this is no longer necessary. User traffic is now processed by the P4-UPF or the BESS-UPF and then forwarded upstream (or to edge-applications) directly by the dataplane (fabric) leaf-switch.

Furthermore, we now support more common enterprise deployments where the radio access nodes (eNBs/gNBs) connect to the enterprise L3-routed network, rather than connect directly to our fabric. We also simplified configuration to support the use of fabric-switch front panel ports rather than using the confusing, device-specific SDK ports.

Aether Testing

Aether uses automated testing based on Jenkins and Robot Framework. The tests performed are described below.

SD-Core Tests:

  • 4G

    • Functional coverage: attach, detach, dataplane traffic, handover, TAU, paging, error scenarios, failure/restart of network functions

  • 5G

    • Functional Coverage: register, deregister, dataplane traffic scenarios, handover, TAU, DDN, few error scenarios, few failure/restart of network functions, application filtering, QoS

  • Jenkins jobs for functional can be found at

ROC:

Aether System Tests

  • 5G

    • Functional testing includes multiple slice creations, enable/disable of device groups, QoS validations, rate limiting tests (at UE, slice, application), application filtering tests, container restart tests

  • 4G

    • Functional testing includes multiple slice creations, enable/disable of device groups, QoS validations, rate limiting tests (at UE, slice, application), application filtering tests, container restart tests

  • Jenkins Jobs:

Documentation

Aether documentation is available at docs.aetherproject.org.

Limitations and Known Issues

  • Each site should be configured with a different “Enterprise ID”.

  • The P4 UPF does not support Slice MBR, which requires leaving out the configuration endpoint configuration for P4 UPFs. Additionally, only 1 slice can currently use a P4 UPF. The next release of Aether will remove both limitations.

  • The transaction history page on the operations portal is not currently enabled; It will be available shortly after the first 2.0 release.

  • The Sim-Card model deviates from the ID convention used by the other models, using the field “sim-id” instead of “sim-card-id”.

  • IMSIs should not be removed from Simapp. They may be added at any time.

  • When running the ROC GUI in the Firefox browser, it is possible to enter non-numeric characters in to numeric fields.

  • Application filtering is not available for some combinations of 5G UEs and 5G gNBs. For 5G slices, it is recommended that default behavior be set to ALLOW-ALL and application filtering rules not be added at this time.

Aether 2.0.0 Release

Aether 2.0.0 is the base release of the 2.0 branch.

Aether 2.0.0 Component Versions

ROC:

  • atomix-controller: 0.6.9

  • atomix-raft-storage: 0.1.25

  • onos-operator: 0.5.1

  • aether-roc-umbrella: 2.0.43

SD-Core 1.1

  • sdcore-helm-chart: 0.10.16 (Umbrella Helm Chart)

    • Omec-control-plane : 0.10.11

    • Omec-sub-provision : 0.4.5

    • 5g-control-plane : 0.6.19

    • 5g-ran-sim: 0.4.11

UPF: bess-upf: 0.0.5

SD-Fabric 1.1

  • sdfabric: 1.1.0

Hardware and Vendor Dependencies:

  • Sercomm eNB: Firmware version 3922

  • Radisys 5G-SA RAN stack: TRILLIUM_5GNR_NXP_GNB_AIO_QCOM_SUB6_WITH_DPDK_BIN_REL_2.4.3

  • T&W gNB: 5G Sub-6GHz Small Cell (N78, 8GB DDR, With housing), Model SDQ001-RU (N78)

Aether 2.0.1 Release

Minor release to fix SD-Core issues.

Aether 2.0.1 Component Versions

ROC:

  • atomix-controller: 0.6.9

  • atomix-raft-storage: 0.1.25

  • onos-operator: 0.5.1

  • aether-roc-umbrella: 2.0.43

SD-Core 1.1.1

  • sdcore-helm-chart: 0.10.18 (Umbrella Helm Chart)

    • Omec-control-plane : 0.10.12

    • Omec-sub-provision : 0.4.5

    • 5g-control-plane : 0.6.20

    • 5g-ran-sim: 0.4.12

UPF: bess-upf: 0.0.5

SD-Fabric 1.1

  • sdfabric: 1.1.0

Hardware and Vendor Dependencies:

  • Sercomm eNB: Firmware version 3922

  • Radisys 5G-SA RAN stack: TRILLIUM_5GNR_NXP_GNB_AIO_QCOM_SUB6_WITH_DPDK_BIN_REL_2.4.3

  • T&W gNB: 5G Sub-6GHz Small Cell (N78, 8GB DDR, With housing), Model SDQ001-RU (N78)

Aether 2.0.2 Release

Minor release to fix ROC and GUI related issues.

  • Fetching of intermediate lists within the configuration tree, for example Applications, is now supported.

  • Subscriber-Proxy now supports deletes / shrinking of IMSI ranges.

  • Fixed a bug where sdcore-adapter would fail to propagate a deleted device-group or slice to the core.

  • Improvements to logging in sdcore-adapter, and a REST endpoint to dynamically change log levels.

  • An endpoint has been added to the aether-roc-api that allows fetching of IP addresses for devices.

  • GUI: Added the ability to remove SIM Cards from Devices.

  • GUI: Fixed a bug where IP-Domains were not loaded properly in Device-Group edit page.

  • GUI: Display a reason why the Application select box might be empty in a Slice.

  • GUI: Transaction list is now populated.

Aether 2.0.2 Component Versions

ROC:

  • atomix-controller: 0.6.9

  • atomix-raft-storage: 0.1.25

  • onos-operator: 0.5.1

  • aether-roc-umbrella: 2.0.47

SD-Core 1.1.1

  • sdcore-helm-chart: 0.10.18 (Umbrella Helm Chart)

    • Omec-control-plane : 0.10.12

    • Omec-sub-provision : 0.4.5

    • 5g-control-plane : 0.6.20

    • 5g-ran-sim: 0.4.12

UPF: bess-upf: 0.0.5

SD-Fabric 1.1

  • sdfabric: 1.1.1

Hardware and Vendor Dependencies:

  • Sercomm eNB: Firmware version 3922

  • Radisys 5G-SA RAN stack: TRILLIUM_5GNR_NXP_GNB_AIO_QCOM_SUB6_WITH_DPDK_BIN_REL_2.4.3

  • T&W gNB: 5G Sub-6GHz Small Cell (N78, 8GB DDR, With housing), Model SDQ001-RU (N78)