blob: db2074f7dc09483c65178c6c8334e0353e66960b [file] [log] [blame]
Andrea Campanella1865dcb2021-07-10 01:16:45 +02001VOLTHA 2.8 Release Notes
2========================
3
4Highlights
5----------
6
7VOLTHA-2.8 is the first Long Term Support (LTS) release for VOLTHA. Together with ONOS 2.5 (which is already LTS),
8the LTS designation means that testing and bug-fixes will be guaranteed for 18 months on the released version of the
9codebase. The release focused on storage with persistence at scale, platform hardening, tcont type selection, Multi-Uni
10support and introduced several PON level metrics. All these elements provide confidence to the operators to expand
11their production deployments.
12
13The Long Term Support process is as follows:
14
15- LTS releases 18 months apart.
16- Each LTS release will be supported for 18 months with bug fixes and testing
17- 6 month release cycles following LTS release
18- Two interim releases every 6 months between LTS versions.
19
20VOLTHA 2.8 first and foremost meets the scale requirements (1024 ONUS per stack, 10240 on 10 stack across the same
21infrastructure) of the operators with persistence enabled on ETCD 6.2.5 version, deployed with the BITNAMI helm
22charts. Such result was achieved thanks to the combination of several improvements across the whole stack.
23The Technology profile is now mostly templated, the openolt adapter makes heavier use of the read-through cache,
24the rw-core does not store the flows for each device. A ETCD connection pool has been introduced in voltha-lib-go
25to ensure that the system is not choking by using 1 connection per service. With all these improvements on NVMe
26disks all 3 workflows provision 1024 subscribers in around 2 minutes.
27
28During the VOLTHA 2.8 release ONOS was moved from the 2.2 release which is shortly approaching EOL (end of life) to
29ONOS 2.5, guaranteeing that for the extent of the 2.8 release also ONOS will be supported.
30
31To support more customers in the field multi-UNI capability has been introduced across the VOLTHA stack and ONOS apps.
32The system is now capable of delivering configuration and thus traffic to subscribers connected to all UNI ports
33of each ONU, up to 16 per ONU.
34
35Further subscriber configuration has been introduced with the support for the IETF model for bandwidth profiles
36and the capability to provision and choose all the 5 TCONT types. These elements allow operators a wider variety
37of subscriber configurations
38
39To comply with operator requirements the ONU software upgrade APIs have been changed to support retrieval of images
40present on the ONU and to separate the download, activate, commit, requests, allowing the operator more control over
41the actions performed over the ONU. Furthermore hardening of the functionality has been done, achieving a much faster
42ONU update time.
43
44Further insight into live deployed networks has been introduced thanks to more Performance Measurements that can be
45retrieved from the ONU and the OLT. In particular VOLTHA 2.8 implements ANi-G and ANi-G test messages with tx/rx
46power readout, ONUi-PON, GEMj and UNI Ethernet layer, FEC and GEM history and several other counters.
47
48Finally the release provided bug fixes across the stack, especially concerning device/port handling, such as,
49PON enable/disable, OLT and ONU reboot and ONU software upgrade. Performance related improvements were included
50in ONOS apps. VOLTHA 2.8 hardened several operations, one worth noting is the omci message retry on failure in
51openonu adapter
52
53On the testing front VOLTHA 2.8 expanded the suite for TT up to 20 tests, with failure and error scenarios,
54including several multi TCONT testing as per TT workflow. Testing has included also a full suite for the
55Performance Measurements functionality, especially ANI-G. Furthermore we included support for multi-uni in the robot
56suite and expanded the soak testing with DT workflow.
57
58Along with VOLTHA 2.8, the Device Management Brigade also released a new version
59(`1.0.0 <https://github.com/opencord/device-management-interface/releases/tag/v1.0.0>`_) of the interface,
60which has been implemented on BBSIM and has initial robot test cases. This DMI release introduces specific components
61values, BITS protocol, gRPC streams for events and metrics that can be use in place of kafka, more events and
62a heart beat check.
63
64Features & Improvements
65-----------------------
66
67- ETCD 6.2.5 with persistence enabled
68
69 - Templated technology profile
70 - Removal of flows and meters storage in the rw-core.
71 - Openolt adapter read-through cache
72 - ETCD connection pool in voltha-lib-go
73 - Optimization of several stored attributes, removing duplicate items
74 - Automatic compaction and defragmentation
75
76- Move to ONOS 2.5 LTS
77- Expanded ONU software upgrade capability
78
79 - Retrieval of image specifics via OMCI of the images from the device
80 - Separation of download/activate/commit APIs
81 - Time optimization
82- Multi Uni per ONU support across the whole stack, ONOS apps and BBSIM
83- IETF bandwidth profile definition support
84- 5 Tcont type configuration and selection
85- Collection of more performance measurements and counters
86
87 - ANi-G and ANi-G test message with te/rs power support
88 - ONUi-PON and ONUi-GEMj
89 - ONU-UNI Ethernet layer
90 - Eth-Port
91 - GEM Port History
92 - FEC History
93 - Transceiver data via DMI
94- OMCI channel message send/receive failure handling with retry in openonu adapter
95- Voltctl extensions
96
97 - Multi-stack support
98 - Groups list
99 - Retrieve of Performance Metrics
100- Distroless and non root docker images for production deployment security
101
102Development/Deployment process
103------------------------------
104
105- Deprecation of kind-voltha in favour of voltha-stack and voltha-infra helm charts.
106
107Test
108----
109
110Voltha-2.8 tests are available on `Jenkins <https://jenkins.opencord.org/>`_.
111
112- Full Performance Monitoring Attributes test suite
113- Multi Uni per ONU tests
114- OMCI requests failures chaos monkey
115- Expanded TT tests from 5 to 19
116
117 - Disable/Enable ONU
118 - Disable/Delete OLT
119 - Open-olt, Open-onu, Rw-core, Of-agent Restart
120 - Delete/Re-add (reprovisioning) Subscribers
121 - ONU and OLT Physical and Soft Reboot
122 - Various Multi-Tcont scenarios
123
124- Radisys 3200G GPON OLT DT and ATT tests
125- Expanded and automated soak testing with DT workflow.
126- OLT soft reboot for DT
127- Updated ONU Software Upgrade Tests based on new Voltctl commands
128
129Design Discussions
130------------------
131
132- PON-ID configuration
133- MPLS support
134- TIM workflow
135
136
137Documentation
138-------------
139
140- Updated documentation with new ONU software update and software update is published on https://docs.voltha.org
141
142Known Issues
143------------
144TODO
145
146- Same TCONT for two uni add/delete subscribers does not work. `[VOL-4215] <https://jira.opencord.org/browse/VOL-4215>`_
147- EAPOL flow meter mismatch at scale for ATT job. `[VOL-4235] <https://jira.opencord.org/browse/VOL-4235>`_
148
149
150Certification Program
151---------------------
152
153Thanks to the `Continuous Certification <https://opennetworking.org/continuous-certification-program>`_ program at
154ONF we can also ensure that the following ONF member products are compatible with the VOLTHA 2.8 release:
155
156- Edgecore ASGVolt64 GPON OLT
157- Edgecore ASXVolt16 XGSGPON OLT
158- Radisys 3200G GPON OLT
159- Sercomm FG1000 GPON ONU
160- Sercomm Glasfaser GPON ONU
161- Edgecore 6712-32X Switch
162- Edgecore 7712-32X Switch
163
164In particular the 2.8 release added the Radisys 3200G GPON OLT.
165
166Jira stories
167------------
168A full list of stories and bugs completed can be found under the
169`VOLTHA 2.8 <https://jira.opencord.org/projects/VOL/versions/12100>`_ release page in Jira.
170
171Component Versions in VOLTHA 2.8 release
172----------------------------------------
173
174ONOS and Atomix:
175++++++++++++++++
176
177- `ONOS 2.5 LTS <https://github.com/opennetworkinglab/onos/releases/tag/2.5.2>`_: ``2.5.2``
178- `ATOMIX <https://github.com/atomix/atomix/releases/tag/atomix-3.1.9>`_: ``3.1.9``
179
180ONOS Apps:
181++++++++++
182
183- `aaa <https://gerrit.opencord.org/gitweb?p=aaa.git;a=summary>`_: ``2.4.0``
184- `dhcpl2relay <https://gerrit.opencord.org/gitweb?p=dhcpl2relay.git;a=summary>`_: ``2.4.0``
185- `igmpproxy <https://gerrit.opencord.org/gitweb?p=igmpproxy.git;a=summary>`_: ``2.3.0``
186- `kafka <https://gerrit.opencord.org/gitweb?p=kafka-onos.git;a=summary>`_: ``2.7.0``
187- `mcast <https://gerrit.opencord.org/gitweb?p=mcast.git;a=summary>`_: ``2.4.0``
188- `olt <https://gerrit.opencord.org/gitweb?p=olt.git;a=summary>`_: ``4.5.0``
189- `sadis <https://gerrit.opencord.org/gitweb?p=sadis.git;a=summary>`_: ``5.4.0``
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200190- `bng <https://gerrit.opencord.org/gitweb?p=bng.git;a=summary>`_: ``2.1.0``
191- `pppoeagent <https://gerrit.opencord.org/plugins/gitiles/pppoeagent/>`_: ``1.1.0``
192- `olttopology <https://gerrit.opencord.org/plugins/gitiles/olttopology/>`_: ``1.1.0``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200193
194VOLTHA Components:
195++++++++++++++++++
196
Andrea Campanella05adf0d2021-07-30 13:50:06 +0200197- `Helm Charts (voltha-helm-charts) <https://gerrit.opencord.org/gitweb?p=voltha-helm-charts.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``2.8.3``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200198- `bbsim <https://gerrit.opencord.org/gitweb?p=bbsim.git;a=tree>`_- ``1.8.0`` with `chart <https://gerrit.opencord.org/gitweb?p=helm-charts.git;a=tree;f=bbsim>`_ ``4.4.1``
199- `voltha-go <https://gerrit.opencord.org/gitweb?p=voltha-go.git;a=tree;h=refs/heads/voltha-2.8>`_ - `` 2.9.3`` with chart ``2.9.7``
200- `ofagent-go <https://gerrit.opencord.org/gitweb?p=ofagent-go.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``1.6.5`` with chart ``2.9.7``
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200201- `voltctl <https://gerrit.opencord.org/gitweb?p=voltctl.git;a=tree>`_ - ``1.6.11``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200202- `voltha-openolt-adapter <https://gerrit.opencord.org/gitweb?p=voltha-openolt-adapter.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``3.5.1`` with chart ``2.9.2``
Andrea Campanella05adf0d2021-07-30 13:50:06 +0200203- `voltha-openonu-adapter-go <https://gerrit.opencord.org/gitweb?p=voltha-openonu-adapter-go.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``1.3.8`` with chart ``2.8.7``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200204- `voltha-onos <https://gerrit.opencord.org/gitweb?p=voltha-onos.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``5.0.1`` with chart ``0.1.16``
205- `openolt agent <https://gerrit.opencord.org/gitweb?p=openolt.git;a=tree;h=refs/heads/voltha-2.8>`_ - ``3.4.8``
206- `voltha-protos <https://github.com/opencord/voltha-protos/releases/tag/v4.0.5>`_ - ``4.2.0``
207- `voltha-lib-go <https://github.com/opencord/voltha-lib-go/releases/tag/v4.0.3>`_ - ``5.0.5``
208- `Bbsim-sadis-server <https://github.com/opencord/bbsim-sadis-server/releases/tag/v0.1.3>`_ - ``0.3.0`` with chart ``0.2.0``
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200209- `voltha-system-tests <https://github.com/opencord/voltha-system-tests/releases/tag/2.8.0>`_ - ``2.8.1``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200210
211
212Helm Chart Versions:
213++++++++++++++++++++
214This section refers to the macro charts to deploy the required infrastructure and a (or many) VOLTHA stacks:
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200215- Voltha-infra: ``2.8.0``
Andrea Campanella05adf0d2021-07-30 13:50:06 +0200216- Voltha-stack: ``2.8.2``
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200217
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200218Openolt Agent packages:
219+++++++++++++++++++++++
220**EdgeCore**
221Available from EdgeCore site:
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200222
223- Out of band management
224
225 - ONL version (both GPON and XGSPON) ONL-onl-4.14_ONL-OS8_2020-04-14.1946-72b95a7_AMD64_INSTALLED_INSTALLER available
226 at /ASXvOLT16/OpenOLT_Agent/From_ONF_Distribution
227 - for ASFVOLT16 available, from /ASFvOLT16/OpenOLT_Agent/From_ONF_Distribution/voltha-2.8/OUT-OF-BAND.:
228
229 - ``openolt_asfvolt16-3.4.8-eec0fc9e9a01dc0d35b0b8441e0a22a4c0cc51b4-100G-NNI.deb`` if 100G NNI port is used
230 - ``openolt_asfvolt16-3.4.8-eec0fc9e9a01dc0d35b0b8441e0a22a4c0cc51b4-40G-NNI.deb`` if 40G NNI port is used.
231
232 - for ASGVOLT64 available at /ASGvOLT64/OpenOLT_Agent/From_ONF_Distribution/voltha-2.8/OUT-OF-BAND:
233
234 - ``openolt_asgvolt64-3.4.8-eec0fc9e9a01dc0d35b0b8441e0a22a4c0cc51b4-100G-NNI.deb`` if 100G NNI port is used
235 - ``openolt_asgvolt64-3.4.8-eec0fc9e9a01dc0d35b0b8441e0a22a4c0cc51b4-40G-NNI.deb`` if 40G NNI port is used.
236
237- In band management
238
239 - use ONL image, comprising of Bal and openolt (available from edgecore site) for ASFVOLT16
240 ONL-onl-4.14_ONL-OS8_2021-03-19.0322-72b95a7_AMD64_INSTALLED_INSTALLER-40G-NNI,
241 available at /ASXvOLT16/OpenOLT_Agent/From_ONF_Distribution/voltha-2.8/IN-BAND.
242 Note that debian package available as part of the ONL support 40G NNI by default.
243
Andrea Campanella1865dcb2021-07-10 01:16:45 +0200244Get access credentials for https://edgecore.quickconnect.to and then login
245and navigate to File_Station -> EdgecoreNAS, and then the folder
246/ASXvOLT16/OpenOLT_Agent/From_ONF_Distribution/ and pick the version above
Andrea Campanella764a3ce2021-07-19 21:55:02 +0200247
248**Radisys**
249For 3200G 40G NNI .Deb Version: ``openolt_rlt-3200g-w-40g-3.4.8-eec0fc9e9a01dc0d35b0b8441e0a22a4c0cc51b4.deb``
250To get the debian package for Radisys 3200G OLT please write to `Cameron Lundberg <cameron.lundberg@radisys.com>`_
251