O-RAN Spec Compliant Timing API Notification - v1 compatibility (dsR8)

Story: 2010538
Task: 47862

Signed-off-by: Elisamara Aoki Goncalves <elisamaraaoki.goncalves@windriver.com>
Change-Id: I6f38e4e34371dcf9ae71d27286731633a41d3fa8
This commit is contained in:
Elisamara Aoki Goncalves 2023-04-20 15:14:37 -03:00
parent 821a51c8a0
commit 484ea48a12
3 changed files with 65 additions and 24 deletions

View File

@ -38,10 +38,9 @@ API.
**v2 API**
The API conforms to O-RAN.WG6.O-Cloud Notification API-v02.01 with the
exception of the /././sync endpoint limitation. Using the v2 API, multiple
``ptp4l`` instances can be tracked for independent |PTP| Sync State and |PTP|
Clock Class notifications.
The API conforms to O-RAN.WG6.O-Cloud Notification API-v02.01. Using the v2
API, multiple ``ptp4l`` instances can be tracked for independent |PTP| Sync
State and |PTP| Clock Class notifications.
The application monitors the following services:
@ -55,12 +54,6 @@ The application monitors the following services:
- Overall System Sync State
**Limitations**
The |O-RAN| Cloud Notification defines a /././sync API v2 endpoint intended to
allow a client to subscribe to all notifications from a node. This endpoint is
not supported in |prod-long| Release 22.12. A specific subscription for each
resource type must be created instead.
.. rubric:: |context|
@ -128,23 +121,24 @@ For example, follow the steps below:
#. Create a yaml file and update the fields that require Helm overrides.
.. code-block::
.. code-block:: none
~(keystone_admin)]$ cat notification-override.yaml
ptptracking:
ptp4lServiceName: True
phc2sysServiceName: True
ts2phcServiceName: True
log_level: INFO
control_timeout: 2
device:
holdover_seconds: 15
poll_freq_seconds: 2
osclock:
holdover_seconds: 15
overall:
holdover_seconds: 15
ptptrackingv2:
enabled: True
ptp4lServiceName: True
phc2sysServiceName: True
ts2phcServiceName: True
log_level: INFO
control_timeout: 2
device:
simulated: false
holdover_seconds: 15
osclock:
holdover_seconds: 15
overall:
holdover_seconds: 15
where the values are:
@ -196,6 +190,22 @@ For example, follow the steps below:
cycles. The ``holdover_seconds`` value should be configured to match the
validated holdover time provided by the device manufacturer.
#. To configure the ``ptp-notification`` v1 API, include the following in
the ``notification-override.yaml`` file. Ensure that values are updated
to match the configured instance names on your system.
.. code-block:: none
ptptracking:
enabled: True
ptp4lSocket: /var/run/ptp4l-instancename
ptp4lServiceName: ptp4l-instancename
phc2sysServiceName: phc2sys-instancename
logging_level: INFO
device:
holdover_seconds: 15
poll_freq_seconds: 2
#. View existing values.
.. code-block:: none

View File

@ -39,6 +39,12 @@ application and the Sidecar communicate via a REST API. See the figure below.
:start-after: note-begin
:end-before: note-end
To use the v1 API, deploy ``starlingx/notificationclient-base:stx.5.0-v1.0.4``
as the sidecar container.
To use the v2 API, deploy ``starlingx/notificationclient-base:stx.9.0-v2.1.1``
as the sidecar container.
.. rubric:: |prereq|
The following prerequisites are required before the integration:

View File

@ -127,3 +127,28 @@ manifest to include these parameters.
timeoutSeconds: 3
EOF
**Container images and API compatibility**
The ``ptp-notification`` provides a v1 API for backwards compatibility with
client applications deployed on |prod| |prod-ver|, as well as a v2 API for
O-RAN Spec Compliant Timing notifications. By default, ``ptp-notification``
deploys two ``notificationservice-base`` containers to support these APIs.
Users must decide which API they will use by deploying the appropriate
``notificationclient-base`` image as a sidecar with their consumer application.
- The v1 API uses ``starlingx/notificationservice-base:stx.9.0-v2.1.1``
- Compatible with the image:
``starlingx/notificationclient-base:stx.5.0-v1.0.4``
- The v2 API uses ``starlingx/notificationservice-base-v2:stx.9.0-v2.1.1``
- Compatible with the image:
``starlingx/notificationclient-base:stx.9.0-v2.1.1``
Upgrades of |prod| |prod-ver| to the next patch will automatically upgrade the
``ptp-notification`` application and deploy both the v1 and v2 API containers.
Consumer applications determine which API they interact with based on the
version of ``notificationclient-base`` that is deployed along side their
application.