Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 1 | Aether 2.0 Release |
| 2 | ================== |
| 3 | |
| 4 | Aether Highlights |
| 5 | ----------------- |
| 6 | |
| 7 | This release of Aether, the first to `fully embrace open |
| 8 | source <https://www.prnewswire.com/news-releases/onfs-leading-private-5g-connected-edge-platform-aether-now-released-to-open-source-301487587.html>`__, |
| 9 | adds two exciting new capabilities. The first is support for 5G |
| 10 | deployments, enabling greatly increased bandwidth compared to 4G-based |
| 11 | deployments. Complementing 5G is our P4 based mobile-core User Plane |
| 12 | Function (UPF), which offers a high performance hardware-accelerated |
| 13 | datapath that does not need to be routed through compute-based software |
| 14 | UPFs. Aether maintains backward compatibility with 4G, and both 4G and |
| 15 | 5G slices may make use of both software and hardware based UPFs. P4 |
| 16 | hardware and BESS software UPFs can be deployed side-by-side in a hybrid |
| 17 | deployment. |
| 18 | |
| 19 | As part of this release, several edge applications have been showcased |
| 20 | on the Aether platform. We demonstrated the first Aether-interactive |
| 21 | smart application, an OpenVINO based AI/ML person-detection application |
| 22 | that dynamically increases network-bandwidth for video recording |
| 23 | purposes when a person is detected, and then dynamically reduces the |
| 24 | same when people are no longer detected. In partnership with Intel, |
| 25 | we have also deployed an anomaly detection application on the Aether |
| 26 | platform that runs as an edge application, monitors a manufacturing or |
| 27 | packaging line of product samples, and then uses an AI/ML algorithm to |
| 28 | detect anomalies in real time. These applications were demonstrated at |
| 29 | Mobile World Congress 2022 in Barcelona last week. |
| 30 | |
| 31 | The transition to open source will further increase the pace of Aether |
| 32 | development, putting it within the reach of the 5G and edge developer |
| 33 | community that ONF has been cultivating and encouraging. Developer |
| 34 | contributions are welcome, and increased access will allow increased |
| 35 | adoption of this technology. |
| 36 | |
| 37 | Features & Improvements |
| 38 | ----------------------- |
| 39 | |
| 40 | New 5G features |
| 41 | """"""""""""""" |
| 42 | |
| 43 | This release of Aether incorporates SD-Core 1.1, which includes |
| 44 | integration with 5G gNB small-cells from T&W running 5G-SA RAN stack |
| 45 | from Radisys, 5G slices with Application filtering, and a policy |
| 46 | framework that supports QoS at multiple levels - subscribers, |
| 47 | applications and slices. For more details, please refer to the SD-Core |
| 48 | 1.1 Release notes. |
| 49 | |
| 50 | SD-Fabric Integration |
| 51 | """"""""""""""""""""" |
| 52 | |
| 53 | This release of Aether incorporates SD-Fabric 1.1. While previous |
| 54 | releases of Aether supported SD-Fabric as a “Beta” feature, this release |
| 55 | officially supports the P4 UPF and other SD-Fabric features like paired |
| 56 | leaf-switches with dual UPFs for High Availability. |
| 57 | |
| 58 | The P4 UPF may now be added to Aether as an available UPF. In addition |
| 59 | to a single P4 UPF, Aether continues to allow multiple BESS UPFs to be |
| 60 | deployed alongside the P4 UPF. The user can decide at slice provisioning |
| 61 | time whether a slice should use the P4 UPF or a BESS UPF. UPFs may only |
| 62 | be bound to one slice at a time. The P4 UPF and the BESS UPF both |
| 63 | support application filtering and QoS metering. The BESS UPF has been |
| 64 | enhanced to include additional per-flow metrics. |
| 65 | |
| 66 | For more details, please refer to the SD-Fabric 1.1 Release notes. |
| 67 | |
| 68 | Sim-Card and Device Modeling |
| 69 | """""""""""""""""""""""""""" |
| 70 | |
| 71 | The Aether configuration model has been enhanced to include support for |
| 72 | *SIM card* and *device* modeling. The lifecycle of a device is now |
| 73 | decoupled from the lifecycle of the SIM card that is attached to that |
| 74 | device. Devices can be created in the modeling before their SIM cards |
| 75 | are created, and devices may continue to exist after their SIM cards |
| 76 | have been removed. A removed SIM card can be associated with a different |
| 77 | device. |
| 78 | |
| 79 | Aether may be configured to automatically learn of provisioned SIM cards |
| 80 | and add them to the enterprise configuration. An administrator may then |
| 81 | see the list of available SIM cards and choose which one to add to a |
| 82 | device. |
| 83 | |
| 84 | The model tree has been revised to be more hierarchical. For example, |
| 85 | Slices are now contained within Sites, and Sites are contained within |
| 86 | Enterprises. This eliminated many of the boilerplate Slice and |
| 87 | Enterprise links that used to be present in the Aether-1.6 models, and |
| 88 | it provides automatic enforcement of objects to the appropriate scope. |
| 89 | |
| 90 | Configuration System Improvements |
| 91 | """"""""""""""""""""""""""""""""" |
| 92 | |
| 93 | Aether’s ROC configuration system internals were redesigned and |
| 94 | reimplemented to address various instability issues and incorporate new |
| 95 | patterns and architectures. The controllers at the core of onos-config |
| 96 | were `redesigned in |
| 97 | TLA+ <https://github.com/onosproject/onos-tlaplus/blob/master/Config/Config.pdf>`__ |
| 98 | – a machine-checked formal specification language – to develop a more |
| 99 | stable and viable architecture long-term, and the controllers were |
| 100 | reimplemented according to the new design. On the northbound, new gNMI |
| 101 | extensions make onos-config’s handling of gNMI Set and Get requests |
| 102 | configurable with support for various consistency strategies when |
| 103 | propagating changes to gNMI targets. On the southbound, support was |
| 104 | added for handling non-persistent targets (recovering target |
| 105 | configuration after restarts). For additional information, please see |
| 106 | the `README |
| 107 | file <https://github.com/onosproject/onos-config/blob/master/docs/README.md>`__ |
| 108 | for the configuration system. |
| 109 | |
| 110 | Support for complex validation rules |
| 111 | """""""""""""""""""""""""""""""""""" |
| 112 | |
| 113 | Aether now has support for complex validation rules (“guardrails”) to |
| 114 | prevent misconfiguration of the system. These guardrails are specified |
| 115 | using Aether’s yang modeling language, allowing Aether staff to easily |
| 116 | add more rules as the need arises. |
| 117 | |
| 118 | Data Plane Optimization |
| 119 | """"""""""""""""""""""" |
| 120 | |
| 121 | Prior releases of Aether passed data plane traffic through the |
| 122 | management server. Aether 2.0 has been optimized so that this is no |
| 123 | longer necessary. User traffic is now processed by the P4-UPF or the |
| 124 | BESS-UPF and then forwarded upstream (or to edge-applications) directly |
| 125 | by the dataplane (fabric) leaf-switch. |
| 126 | |
| 127 | Furthermore, we now support more common enterprise deployments where the |
| 128 | radio access nodes (eNBs/gNBs) connect to the enterprise L3-routed |
| 129 | network, rather than connect directly to our fabric. We also simplified |
| 130 | configuration to support the use of fabric-switch front panel ports |
| 131 | rather than using the confusing, device-specific SDK ports. |
| 132 | |
| 133 | Aether Testing |
| 134 | -------------- |
| 135 | |
| 136 | Aether uses automated testing based on Jenkins and Robot Framework. The |
| 137 | tests performed are described below. |
| 138 | |
| 139 | SD-Core Tests: |
| 140 | |
| 141 | * 4G |
| 142 | |
| 143 | * Functional coverage: attach, detach, dataplane traffic, handover, |
| 144 | TAU, paging, error scenarios, failure/restart of network |
| 145 | functions |
| 146 | |
| 147 | * 5G |
| 148 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 149 | * Functional Coverage: register, deregister, dataplane traffic |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 150 | scenarios, handover, TAU, DDN, few error scenarios, few |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 151 | failure/restart of network functions, application filtering, |
| 152 | QoS |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 153 | |
| 154 | * Jenkins jobs for functional can be found at |
| 155 | |
| 156 | * https://jenkins.aetherproject.org/view/SD%20Core%20System%20Tests/ |
| 157 | |
| 158 | ROC: |
| 159 | |
| 160 | * Functional API |
| 161 | |
| 162 | * Related Jenkins jobs |
| 163 | |
| 164 | * https://jenkins.aetherproject.org/view/ROC%20System%20Tests/ |
| 165 | |
| 166 | Aether System Tests |
| 167 | |
| 168 | * 5G |
| 169 | |
| 170 | * Functional testing includes multiple slice creations, |
| 171 | enable/disable of device groups, QoS validations, rate limiting |
| 172 | tests (at UE, slice, application), application filtering tests, |
| 173 | container restart tests |
| 174 | |
| 175 | * 4G |
| 176 | |
| 177 | * Functional testing includes multiple slice creations, |
| 178 | enable/disable of device groups, QoS validations, rate limiting |
| 179 | tests (at UE, slice, application), application filtering tests, |
| 180 | container restart tests |
| 181 | |
| 182 | * Jenkins Jobs: |
| 183 | |
| 184 | * https://jenkins.aetherproject.org/view/Aether%20System%20Tests/ |
| 185 | |
| 186 | Documentation |
| 187 | ------------- |
| 188 | |
| 189 | Aether documentation is available at |
| 190 | `docs.aetherproject.org <http://docs.aetherproject.org>`__. |
| 191 | |
| 192 | Limitations and Known Issues |
| 193 | ---------------------------- |
| 194 | |
| 195 | * Each site should be configured with a different “Enterprise ID”. |
| 196 | |
| 197 | * The P4 UPF does not support Slice MBR, which requires leaving out the |
| 198 | `configuration endpoint` configuration for P4 UPFs. |
| 199 | Additionally, only 1 slice can currently use a P4 UPF. The next |
| 200 | release of Aether will remove both limitations. |
| 201 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 202 | * The transaction history page on the operations portal is not |
| 203 | currently enabled; It will be available shortly after the first |
| 204 | 2.0 release. |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 205 | |
| 206 | * The Sim-Card model deviates from the ID convention used by the other |
| 207 | models, using the field “sim-id” instead of “sim-card-id”. |
| 208 | |
| 209 | * IMSIs should not be removed from Simapp. They may be added at any |
| 210 | time. |
| 211 | |
Sean Condon | 3f180c1 | 2022-03-10 19:34:06 +0000 | [diff] [blame] | 212 | * When running the ROC GUI in the Firefox browser, it is possible to enter |
| 213 | non-numeric characters in to numeric fields. |
| 214 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 215 | * Application filtering is not available for some combinations of 5G UEs and |
| 216 | 5G gNBs. For 5G slices, it is recommended that default behavior be set to |
| 217 | ALLOW-ALL and application filtering rules not be added at this time. |
| 218 | |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 219 | Component Versions |
| 220 | ------------------ |
| 221 | |
| 222 | ROC: |
| 223 | |
| 224 | * atomix-controller: 0.6.9 |
| 225 | |
| 226 | * atomix-raft-storage: 0.1.25 |
| 227 | |
| 228 | * onos-operator: 0.5.1 |
| 229 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 230 | * aether-roc-umbrella: 2.0.43 |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 231 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 232 | :doc:`SD-Core 1.1 <sdcore:release/1.1>` |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 233 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 234 | * sdcore-helm-chart: 0.10.16 (Umbrella Helm Chart) |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 235 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 236 | * Omec-control-plane : 0.10.11 |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 237 | |
| 238 | * Omec-sub-provision : 0.4.5 |
| 239 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 240 | * 5g-control-plane : 0.6.19 |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 241 | |
Scott Baker | d9f7928 | 2022-03-11 11:41:40 -0800 | [diff] [blame^] | 242 | * 5g-ran-sim: 0.4.11 |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 243 | |
| 244 | UPF: bess-upf: 0.0.5 |
| 245 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 246 | :doc:`SD-Fabric 1.1 <sdfabric:release/1.1.0>` |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 247 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 248 | * sdfabric: 1.1.0 |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 249 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 250 | Hardware and Vendor Dependencies: |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 251 | |
Scott Baker | 0a2905d | 2022-03-09 14:13:47 -0800 | [diff] [blame] | 252 | * Sercomm eNB: Firmware version 3922 |
| 253 | |
| 254 | * Radisys 5G-SA RAN stack: TRILLIUM_5GNR_NXP_GNB_AIO_QCOM_SUB6_WITH_DPDK_BIN_REL_2.4.3 |
| 255 | |
| 256 | * T&W gNB: 5G Sub-6GHz Small Cell (N78, 8GB DDR, With housing), Model SDQ001-RU (N78) |
Scott Baker | 505738f | 2022-03-09 10:51:53 -0800 | [diff] [blame] | 257 | |