|
1 | 1 | // Module included in the following assemblies: |
2 | 2 | // |
3 | | -// * networking/ptp/using-ptp-events.adoc |
| 3 | +// * networking/ptp/ptp-cloud-events-consumer-dev-reference-v2.adoc |
| 4 | +// * networking/ptp/ptp-cloud-events-consumer-dev-reference.adoc |
4 | 5 |
|
5 | 6 | :_mod-docs-content-type: CONCEPT |
6 | | -[id="cnf-about-ptp-fast-event-notifications-framework_{context}"] |
| 7 | +[id="cnf-about-ptp-fast-event-notifications-framework-{ptp-events-rest-api}_{context}"] |
7 | 8 | = About the PTP fast event notifications framework |
8 | 9 |
|
9 | | -Use the Precision Time Protocol (PTP) fast event notifications framework to subscribe cluster applications to PTP events that the bare-metal cluster node generates. |
| 10 | +Use the Precision Time Protocol (PTP) fast event REST API v2 to subscribe cluster applications to PTP events that the bare-metal cluster node generates. |
10 | 11 |
|
11 | 12 | [NOTE] |
12 | 13 | ==== |
13 | | -The fast events notifications framework uses a REST API for communication. The REST API is based on the _O-RAN O-Cloud Notification API Specification for Event Consumers 3.0_ that is available from link:https://orandownloadsweb.azurewebsites.net/specifications[O-RAN ALLIANCE Specifications]. |
14 | | -==== |
15 | | - |
16 | | -The framework consists of a publisher, subscriber, and an HTTP messaging protocol to handle communications between the publisher and subscriber applications. |
17 | | -Applications run the `cloud-event-proxy` container in a sidecar pattern to subscribe to PTP events. |
18 | | -The `cloud-event-proxy` sidecar container can access the same resources as the primary application container without using any of the resources of the primary application and with no significant latency. |
19 | | - |
20 | | -.Overview of PTP fast events |
21 | | -image::319_OpenShift_PTP_bare-metal_OCP_nodes_0323_4.13.png[Overview of PTP fast events] |
22 | | - |
23 | | -image:darkcircle-1.png[20,20] Event is generated on the cluster host:: |
24 | | -`linuxptp-daemon` in the PTP Operator-managed pod runs as a Kubernetes `DaemonSet` and manages the various `linuxptp` processes (`ptp4l`, `phc2sys`, and optionally for grandmaster clocks, `ts2phc`). |
25 | | -The `linuxptp-daemon` passes the event to the UNIX domain socket. |
26 | | - |
27 | | -image:darkcircle-2.png[20,20] Event is passed to the cloud-event-proxy sidecar:: |
28 | | -The PTP plugin reads the event from the UNIX domain socket and passes it to the `cloud-event-proxy` sidecar in the PTP Operator-managed pod. |
29 | | -`cloud-event-proxy` delivers the event from the Kubernetes infrastructure to Cloud-Native Network Functions (CNFs) with low latency. |
| 14 | +The fast events notifications framework uses a REST API for communication. The PTP events REST API v1 and v2 are based on the _O-RAN O-Cloud Notification API Specification for Event Consumers 3.0_ that is available from link:https://orandownloadsweb.azurewebsites.net/specifications[O-RAN ALLIANCE Specifications]. |
30 | 15 |
|
31 | | -image:darkcircle-3.png[20,20] Event is persisted:: |
32 | | -The `cloud-event-proxy` sidecar in the PTP Operator-managed pod processes the event and publishes the cloud-native event by using a REST API. |
33 | | - |
34 | | -image:darkcircle-4.png[20,20] Message is transported:: |
35 | | -The message transporter transports the event to the `cloud-event-proxy` sidecar in the application pod over HTTP. |
36 | | - |
37 | | -image:darkcircle-5.png[20,20] Event is available from the REST API:: |
38 | | -The `cloud-event-proxy` sidecar in the Application pod processes the event and makes it available by using the REST API. |
39 | | - |
40 | | -image:darkcircle-6.png[20,20] Consumer application requests a subscription and receives the subscribed event:: |
41 | | -The consumer application sends an API request to the `cloud-event-proxy` sidecar in the application pod to create a PTP events subscription. |
42 | | -The `cloud-event-proxy` sidecar creates an HTTP messaging listener protocol for the resource specified in the subscription. |
43 | | - |
44 | | -The `cloud-event-proxy` sidecar in the application pod receives the event from the PTP Operator-managed pod, unwraps the cloud events object to retrieve the data, and posts the event to the consumer application. |
45 | | -The consumer application listens to the address specified in the resource qualifier and receives and processes the PTP event. |
| 16 | +Only the PTP events REST API v2 is O-RAN v3 compliant. |
| 17 | +==== |
0 commit comments