blob: b404db1758d4873344e3078821f2c0d68ce29326 [file] [log] [blame]
Aether 1.5 Release
==================
Highlights
----------
The focus of this release is an update of Aether to support the 5G SD-Core.
This included a redesign of Aether modeling and workflows, integration of the
5G SD-Core into Aether, and an update of the 4G SD-Core to be compliant with
the 5G Aether API. 4G Small Cells are readily available and deployed at
multiple Aether installations. The 5G Core is part of a Deutsche Telekom SD-RAN
trial and is being used with 5G-SA disaggregated RAN components (CU/DU/RU).
Deployment of Aether has been demonstrated on Anthos and on Elastic Kubernetes
Service. Persistent test deployments are now maintained by ONF to further
evaluate Aether functionality on those platforms.
New Features and Improvements
-----------------------------
4G and 5G Connectivity Service
""""""""""""""""""""""""""""""
Aether supports mobile/cellular connectivity using both the 4G and the 5G
SD-Core. The Aether ROC may be used with both cores simultaneously. The 4G
modeling used by Aether-1.0 has been replaced with newer modeling that unifies
the 4G and 5G cores in a single modeling abstraction.
Device Grouping and Network Slicing
"""""""""""""""""""""""""""""""""""
Aether supports a Network Slicing abstraction where similar connected devices
can be aggregated together into a Device-Group, and different Device Groups can
be allocated to different network slices (Virtual Connectivity Service - VCS).
Grouping connected devices affords ease of management - devices in the same
group are configured together and afforded the same treatment in the network.
Separating device-groups into different slices affords isolation between
groups. The data plane connectivity for different slices are realized through
different User Plane Functions (UPFs).
Furthermore, Aether supports Access Control - devices not part of any
Device-Group are rejected by the network.
Aether Portal
"""""""""""""
The Aether Portal is a modern secure Single Page Application implemented in
Angular. The portal integrates both control of the Aether Network and metrics
reported by Aether components in a single pane of glass with multi-tenancy
separation. The portal allows complex control operations to be batched together
as one transaction into a convenient “basket” and then atomically committed to
the configuration. All of the functions of the Portal are also available on a
secure REST API, with an OpenAPI 3 schema.
Role-Based Access Control
"""""""""""""""""""""""""
The Aether control API supports role-based access control, together with
external authentication using OpenID Connect. These access controls are used in
the Aether Portal to limit which enterprises a portal user is allowed to view
or modify. The Aether Portal supports multiple enterprises simultaneously.
Flexible Kubernetes Deployment Options
""""""""""""""""""""""""""""""""""""""
Fully managed Aether deployment using Rancher is officially supported. Together
with Rancher, Aether allows configuration, management, and monitoring of
Kubernetes clusters. These clusters can be used to host the Aether Connectivity
Service as well as customer edge applications. Support for other managed
Kubernetes services such as Google Anthos or Amazon Elastic Kubernetes Service
should be considered beta and not officially supported.
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, few failure/restart of network functions
* Scale and Performance tests utilizing BESS
* 5G
* Functional Coverage: register, deregister, dataplane traffic scenarios,
handover, TAU, DDN, few error scenarios, few failure/restart of network
functions
* Scale tests (BESS)
Jenkins jobs for functional and scale tests can be found on `Aether Jenkins -
SD-Core System Tests
<https://jenkins.aetherproject.org/view/SD%20Core%20System%20Tests/>`_
ROC
"""
* Functional API and GUI test coverage
Jenkins jobs: `Aether Jenkins - ROC System Tests
<https://jenkins.aetherproject.org/view/ROC%20System%20Tests/>`_
System Tests
""""""""""""
* 4G and 5G Sanity Test coverage:
* Configure ROC with related models for 4G and 5G
* Validate for attach/register UE, pings, detach/degister UE
Jenkins Jobs: `Aether Jenkins - Aether System Tests
<https://jenkins.aetherproject.org/view/Aether%20System%20Tests/>`_
Documentation
-------------
Aether documentation is available at `docs.aetherproject.org
<https://docs.aetherproject.org>`_
Known Issues and Limitations
----------------------------
* A given UE may participate in a 4G core or a 5G core, but not both.
* 4G UEs may each participate in a single DeviceGroup, and 4G DeviceGroups may
each participate in a single VCS. This restriction does not apply to 5G UEs.
* Application filtering is modeled in the API and the GUI, but application
filtering is not active in the data plane.
Aether-1.5.2 Change Notes
-------------------------
* Atomix:
* Fixed bug causing deadlock in state machines from gRPC back-pressure when events are not consumed by client
* Fixed inconsistency when reading from followers in multi-node Raft store
* Onos-Config:
* Rollback can now apply to change change, not just the latest change.
* Changes that fail to sync to the adapter are now classified as “Failed” instead of “Pending”, and will
not be retried.
* Improved error handling and retries when reconciling network and device changes
* ROC:
* sdcore-adapter: Fixed issue where disabling all device groups in a slice would prevent them from syncing
* GUI: Mock alarms are now hidden
* SD-Core:
* SDCORE-559 MME fix - crash was seen while adding/updating slice config
* SDCORE-543 Device group enabled/disable support
* SDCORE-561 Default unit for QoS bit rates is Mbps.
* SDCORE-467 UE addition/deletion from device group.
* NAS message encoder fixes
* SDCORE-513 : SPGW crash during config update
Component Versions in the 1.5.2 Release
---------------------------------------
Helm Chart Versions and their component charts and containers:
* atomix-controller: ``0.6.8``
* atomix-controller: ``v0.6.1``
* atomix-raft: ``0.1.14``
* atomix-raft-storage-controller: ``v0.9.7``
* aether-roc-umbrella: ``1.3.15``
* config-models/aether-3.x: ``3.0.150``
* aether-roc-api: ``v0.8.2``
* aether-roc-gui: ``v3.0.151``
* onos-config: ``v0.9.4``
* onos-topo: ``v0.8.3``
* sdcore-adapter: ``v0.1.39``
* sdcore-helm-chart: ``0.7.16``
* omec-control-plane: ``0.7.15``
* hssdb: ``c3po-hssdb:master-771c0c3``
* hss: ``c3po-hss:master-771c0c3``
* mme: ``nucleus:master-5f0a821``
* spgwc: ``spgw:aether-1.5-cf4971d``
* pcrf: ``c3po-pcrf:pcrf-b29af70``
* pcrfdb: ``c3po-pcrfdb:pcrf-b29af70``
* config4g: ``5gc-webui:onf-release3.0.5-0534``
* omec-sub-provision: ``0.1.3``
* simapp: ``simapp:main-a2a3e71``
* 5g-control-plane: ``0.3.14``
* amf: ``5gc-amf:onf-release3.0.5-03d3c6d``
* nrf: ``5gc-nrf:onf-release3.0.5-13304e8``
* smf: ``5gc-smf:onf-release3.0.5-bcbcd33``
* ausf: ``5gc-ausf:onf-release3.0.5-be7d4ac``
* nssf: ``5gc-nssf:onf-release3.0.5-aa3a60b``
* pcf: ``5gc-pcf:onf-release3.0.5-9f7734b``
* udr: ``5gc-udr:onf-release3.0.5-deef506``
* udm: ``5gc-udm:onf-release3.0.5-c28433a``
* webui: ``5gc-webui:onf-release3.0.5-0534804``
* omec-user-plane: ``0.4.8``
* bess: ``upf-epc-bess:master-d2c0793``
* pfcpiface: ``upf-epc-pfcpiface:master-d2c0793``
* SD-Fabric:
* onos-tost helm chart: ``0.1.40``
* onos-tost: ``registry.aetherproject.org/tost/tost:master-2021-07-05``
* stratum helm chart: ``0.1.13``
* stratum: ``registry.aetherproject.org/tost/stratum-bfrt:20210625-9.3.1``
* Sercomm eNB:
* Firmware version: ``TEST3918@210224``
* Configuration file version: ``0.1.0``