Updates for Aether 2.1 release

Change-Id: Ia96b6f81dee517438e0dd67228f3e28febb85a45
diff --git a/VERSION b/VERSION
index c10edc3..7ec1d6d 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.1.0-dev
+2.1.0
diff --git a/release/2.1.rst b/release/2.1.rst
new file mode 100644
index 0000000..7b2a412
--- /dev/null
+++ b/release/2.1.rst
@@ -0,0 +1,189 @@
+Aether 2.1 Release
+==================
+
+Aether Highlights
+-----------------
+
+This release of Aether picks up new internal modeling and scalability enhancements.
+The release has been primarily validated in the Aether-in-a-Box configuration,
+but the basis for this release has seen fairly broad use in various configurations.
+
+As with 2.0, both 4G and 5G deployments are supported. The 5G User Plane Function (UPF)
+can be deployed with both compute-based software, as well as the P4-based
+hardware-accelerated UPF. 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.
+
+Features & Improvements
+-----------------------
+
+New 5G features
+"""""""""""""""
+
+This release of Aether incorporates
+`SD-Core 1.2 <https://docs.sd-core.opennetworking.org/sdcore-1.2/release/1.2.html>`__, which is the first
+version of SD-Core focused on support for Cloud Native 5G Network Functions. All new functionality in this release
+contributes to support of 5G Network functionality,  including integration with 5G gNB small
+cells from Sercomm; 5G small cell hardware 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.2 <https://docs.sd-core.opennetworking.org/sdcore-1.2/release/1.2.html>`__ Release notes.
+
+SD-Fabric Integration
+"""""""""""""""""""""
+
+For this release, configurations incorporating SD-Fabric, and the P4 UPF have NOT been re-validated
+(as this release has only been validated on Aether-in-a-Box). Users can continue to deploy these
+configurations but should exercise caution to ensure the capabilities continue to operate as expected.
+For more details, please refer to the `SD-Fabric 1.2 <https://docs.sd-fabric.org/sdfabric-1.2/release/1.2.0.html>`__
+Release notes.
+
+Configuration Model Improvement
+"""""""""""""""""""""""""""""""
+
+The Configuration model of ROC has been upgraded in Aether 2.1 so that the “site”, “application”,
+“traffic-class”, and “template”  are now at the highest level in the model. The connectivity-service
+4g/5g is now an attribute of slice.
+
+This change greatly simplifies the ROC API - for example the URL to retrieve a site is now:
+
+* ``aether/v2.1.x/aiab-enterprise/site/mysite``
+
+where previously the equivalent would have been:
+
+* ``aether/v2.0.x/connectivity-service-v2/enterprises/enterprise/aiab-enterprise/site/mysite``
+
+The configuration of the “enterprise” is handled now in onos-topo as an Entity. New enterprises can be
+added with the ``entities.topo.onosproject.org`` CRD, and will subsequently be created in onos-topo by
+the onos-operator. The ROC GUI remains unchanged, as it has absorbed these model changes into its internal functions.
+
+
+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+ <https://github.com/onosproject/onos-tlaplus/blob/master/Config/Config.pdf>`__ – 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 <https://github.com/onosproject/onos-config/blob/master/docs/README.md>`__ for the configuration system.
+
+Support for complex validation rules
+""""""""""""""""""""""""""""""""""""
+
+Aether support for complex validation rules (“guardrails”) has been added to prevent misconfiguration of the system.
+These guardrails are specified using Aether’s yang modeling language, allowing new rules to be modified
+easily as needed.
+
+Aether Testing
+--------------
+
+Aether uses automated testing based on Jenkins and Robot Framework. The
+tests performed are described below.
+
+Aether-in-a-Box Deployment Tests:
+
+* https://jenkins.aetherproject.org/view/aiab-test/
+
+SD-Core Tests (manual testing):
+
+* 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
+
+ROC:
+
+* Functional API
+
+ * Related Jenkins jobs
+
+   * https://jenkins.aetherproject.org/view/ROC%20System%20Tests/
+
+Documentation
+-------------
+
+Aether documentation is available at
+`docs.aetherproject.org <http://docs.aetherproject.org>`__.
+
+Limitations and Known Issues
+----------------------------
+
+*  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.
+
+*  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.
+
+* Kubespray is no longer supported for Aether-in-a-Box deployments due to software component incompatibilities.
+
+* An intermittent issue was observed where a UE may not be issued an IP address.This was observed on a few
+  occasions during the 2.1 release, but root cause has been determined. It continues to be under investigation.
+
+Aether 2.1.0 Release
+--------------------
+
+Aether 2.1.0 is the base release of the 2.1 branch.
+
+Aether 2.1.0 Component Versions
+"""""""""""""""""""""""""""""""
+
+ROC:
+
+* atomix-runtime: 0.1.9
+
+* onos-operator: 0.5.6
+
+* aether-roc-umbrella: 2.1.33
+
+`SD-Core 1.2.1: <https://docs.sd-core.opennetworking.org/sdcore-1.2/release/1.2.html>`__
+
+* sdcore-helm-chart: 0.12.5 (Umbrella Helm Chart)
+
+   * Omec-control-plane : 0.12.0
+
+   * Omec-sub-provision : 0.6.0
+
+   * 5g-control-plane : 0.8.8
+
+   * 5g-ran-sim: 0.6.5
+
+UPF: bess-upf: 0.1.0
+
+`SD-Fabric 1.2: <https://docs.sd-fabric.org/sdfabric-1.2/release/1.2.0.html>`__
+
+* sdfabric: 1.2.0
+
+Hardware and Vendor Dependencies:
+
+* Sercomm eNB: Firmware version 3922
+
+* gNB using T&W hardware with Radisys software:
+
+  * 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)
+
+* Mobile UE for 5G testing: MOTO G 5G (2022), Google Pixel 4