:abbr:`CDNi (Content Delivery Network Interconnect)` specifications define the standards for interoperability within the :abbr:`CDN (Content Delivery Network)` and open caching ecosystems set forth by the :abbr:`IETF (Internet Engineering Task Force)`. This integration utilizes the :abbr:`APIs (Application Programming Interfaces)` defined by the :abbr:`SVA (Streaming Video Alliance)`.
.. seealso:: For complete details on CDNi and the related API specifications see :rfc:`8006`, :rfc:`8007`, :rfc:`8008`, and the :abbr:`SVA (Streaming Video Alliance)` documents titled `Footprint and Capabilities Interface: Open Caching API`, `Open Caching API Implementation Guidelines`, `Configuration Interface: Part 1 Specification - Overview & Architecture`, `Configuration Interface: Part 2 Specification – CDNi Metadata Model Extensions`, and `Configuration Interface: Part 3 Specification – Publishing Layer APIs`.
In short, these documents describe the :abbr:`CDNi (Content Delivery Network Interconnect)` metadata interface that enables interconnected :abbr:`CDNs (Content Delivery Networks)` to exchange content distribution metadata to enable content acquisition and delivery. These define the interfaces through which a :abbr:`uCDN (Upstream Content Delivery Network)` and a :abbr:`dCDN (Downstream Content Delivery Network)` can communicate configuration and capacity information.
For our use case, it is assumed that :abbr:`ATC (Apache Traffic Control)` is the :abbr:`dCDN (Downstream Content Delivery Network)`.
Note
This is currently under construction and will be for a while. This document will be updated as new features are supported.
.. seealso:: :ref:`to-api-oc-fci-advertisement`
The advertisement response is unique for the :abbr:`uCDN (Upstream Content Delivery Network)` and contains the complete footprint and capabilities information structure the :abbr:`dCDN (Downstream Content Delivery Network)` wants to expose. This endpoint will return an array of generic :abbr:`FCI (Footprint and Capabilities Advertisement Interface)` base objects, including type, value, and footprint for each. Currently supported base object types are FCI.Capacitiy and FCI.Telemetry but these will be expanded in the future.
.. seealso:: :ref:`to-api-oc-fci-configuration`
An endpoint that is used to push (PUT
), fetch (GET
), or delete (DELETE
) the entire metadata set for a given :abbr:`uCDN (Upstream Content Delivery Network)` from a :abbr:`JWT (JSON Web Token)`. This puts the requested change into a queue to be reviewed later and returns an endpoint to view the asynchronous status updates.
Note
This is under construction. Currently only PUT
is supported and in a very limited sense.
.. seealso:: :ref:`to-api-oc-fci-configuration-host`
An endpoint that is used to push (PUT
), fetch (GET
), or delete (DELETE
) the metadata set that is attached to host name for a given :abbr:`uCDN (Upstream Content Delivery Network)` from a :abbr:`JWT (JSON Web Token)`. This puts the requested change into a queue to be reviewed later and returns an endpoint to view the asynchronous status updates.
Note
This is under construction. Currently only PUT
is supported and in a very limited sense.
.. seealso:: :ref:`to-api-oc-fci-configuration-request-id-approved`
This endpoint allows a user to approve or deny a queued update request from the previous endpoints. A denial will result in the removal from the queue and a FAILED
status update. An approval will result in the changes being made to the configuration and a SUCCEEDED
status update.
Note
This is under construction and only supports very limited metadata field and limited configuration updates.