Configuration Interface API Version 2
Working Group:
In Collaboration With:
Project Status:
Completed
The project has been completed.
Start:
Target End:
- Home
- Configuration Interface API Version 2
Problem Statement
Project Description
Project Type
Project Leads
Advisors
Published Documents
SVTA2028-1: Configuration Interface Part 1: Overview and Architecture
This is the first part in a set of documents that specify the Streaming Video Technology Alliance (SVTA) Configuration Interface, defining both the metadata model and Application Programming Interfaces (APIs) for entities to publish and retrieve configuration metadata. This document specifies the motivational drivers, use cases, and standards to facilitate interoperability within the content delivery network (CDN) and Open Caching ecosystems. The full document set presents a layered architecture that extends the Internet Engineering Task Force (IETF) CDN Interconnect (CDNI) Metadata and Capabilities Models and adds publishing APIs to provide configuration management capabilities required by the CDN and Open Caching industries.
SVTA2029-1: Configuration Interface Part 2: CDNI Metadata Model Extensions
The Internet Engineering Task Force (IETF) Content Delivery Networks Interconnection (CDNI) Metadata Interface enables interconnected content delivery networks (CDNs) to exchange content distribution metadata in order to enable content acquisition and delivery. This document and its subparts describe extensions to the CDNI Metadata Object Model as documented in “CDNI Metadata” [RFC8006] to address the complex requirements of the commercial CDN industry and to support a wider set of use cases such as Open Caching.
SVTA2030-1: Configuration Interface Part 3: Simple Configuration Metadata API
This is part 3 in a set of documents that specify the Streaming Video Alliance (SVTA) Configuration Interface. This document presents the Simple Configuration Metadata API, which provides basic metadata retrieval and publishing capabilities, as introduced in SVTA Configuration Interface Part 1 Introduction & Architecture [SVTA2028].
SVTA2031: Configuration Interface Part 2a: Metadata Expression Language (MEL)
This document specifies the syntax and provides usage examples for an expression language to be used within Streaming Video Technology Alliance (SVTA)/Content Delivery Network Interconnection (CDNI) Metadata Interface (MI) objects. The purpose of this expression language is to enable metadata to be applied conditionally (based on aspects of an HTTP request), and to enable Hypertext Transfer Protocol (HTTP) responses to be generated or altered dynamically.
SVTA2032: Configuration Interface Part 2b: Processing Stages Metadata
This document specifies a set of objects extending the Content Delivery Network Interconnection (CDNI) metadata model [RFC8006] to allow for metadata to be applied conditionally and at various points in a dCDNs processing of requests. The concept of Processing Stages are introduced, where each stage in a CDN’s processing pipeline presents an opportunity to examine requests and responses and make alterations as needed. Metadata, such as caching rules, can be applied conditionally (based on aspects of an HTTP request header), and HTTP responses from a source can be altered dynamically (such as adding or dropping an HTTP header). This standard leverages the expression language documented in the Metadata Expression Language (MEL) Specification [SVTA2031].
SVTA2033: Configuration Interface Part 2c: Cache Control Metadata
This specification adds to the basic cache control metadata defined in [RFC8006], providing content providers and upstream CDNs (uCDNs) more fine-grained control over downstream CDN (dCDN) caching. Use cases include overriding or adjusting cache control headers from the origin, bypassing caching altogether, or altering cache keys with dynamically generated values.
SVTA2034: Configuration Interface Part 2d: Source Access Control Metadata
This specification provides an alternative to the MI.SourceMetadata objects defined in [RFC8006], providing greatly extended capabilities with regards to defining multiple sources, load balancing, and failover rules across those sources, as well as a mechanism for a content delivery network (CDN) to monitor source health and pull unhealthy sources out of rotation. Additionally, new methods are defined for authentication access to an upstream source/origin.
SVTA2035: Configuration Interface Part 2e: Client Access Control Metadata
This specification adds to the basic client access control metadata in [RFC8006], providing content providers and upstream content delivery networks (uCDNs) extended capabilities in defining location and time window restrictions. Support is also provided to define required Transport Layer Security (TLS) certificates and encryption levels.
SVTA2036: Configuration Interface Part 2f: Edge Control Metadata
This specification defines configuration metadata objects related to controlling edge access to resources via content delivery networks (CDNs) and Open Caching systems. Configuring Cross-Origin Resource Sharing (CORS) access rules and the dynamic generation of CORS headers is a key feature of typical configurations, as are the ability to define response body compression rules and client connection timeouts.
SVTA2037: Configuration Interface Part 2g: Delivery Metadata
This specification adds to the core set of configuration metadata defined in [RFC8006], providing delivery metadata to define traffic types, Open Caching request delegation behavior for Open Caching node selection, and request routing modes of traffic delegation.
SVTA2038: Configuration Interface Part 2h: Private Features Metadata
This specification defines a mechanism for downstream content delivery networks (dCDNs) to define private extensions to the metadata model that are mutually agreed upon between participating upstream content delivery networks (uCDNs) and dCDNs.
SVTA2039: Configuration Interface Part 2i: Protected Secrets Metadata
This document defines a simple mechanism for protected secret data (such as salt values or encryption keys) that may be embedded in configuration metadata or capabilities advertisements.
SVTA2040: Configuration Interface Part 4: Service Configuration Model
This specification introduces the Service Configuration Model, an object layer that wraps the HostMatch metadata defined in [RFC8006] with a construct defining content delivery network (CDN) Services and Properties (groups of hosts with shared metadata definitions), as well as reusable metadata definitions that can be used across all of a service’s CDN Properties. The Service Configuration Model represents a self-contained bundle of configuration metadata and definitions that can be published and deployed as an atomic unit without external references. This model is defined independently of any Application Programming Interface (API) and will be used as the basis for the Streaming Video Technology Alliance (SVTA) Orchestration API.
SVTA2041: Configuration Interface Part 5: Metadata Capabilities
This document defines the requirements and model for a CDNI Footprint & Capabilities (FCI) object that allows a downstream content delivery network (dCDN) to advertise the configuration metadata capabilities that it supports. It goes beyond the simple FCI.Metadata object defined in [RFC80008] by providing fine-grained advertisements with allowed usage contexts and allowed values as well as advertisements for specific Metadata Expression Language (MEL) capabilities.
SVTA2042: Configuration Interface Part 6: Orchestration API
The Orchestration API provides full configuration metadata lifecycle management, with publishing and staged deployment as distinct operations, along with versioning and rollback capabilities. The API provides capabilities required by infrastructure orchestration tools such as Terraform and Ansible to issue the commands necessary to update a dCDN configuration to a desired state.
SVTA2052: Configuration Interface: Document Manifest Version 2.0
The SVTA Configuration Interface is a multi-part set of documents defining both the metadata model and Application Programming Interfaces (APIs) for entities to publish and retrieve configuration metadata for content caching and delivery.
This manifest specifies the SVTA document numbers and versions of each of the parts and subparts comprising a version of the Configuration Interface. Each individual document in the set is assigned a unique SVTA document number and is versioned independently. OpenAPI definitions as well as communications of compliance with this standard may make references such as Configuration Interface Version 2.0 or Configuration Interface Version 2.1. Those versions of this document manifest can be referenced to determine the SVTA document numbers and versions of the parts and subparts that comprise any given version of the Configuration Interface standard.
Goals and Objectives
- To define an API specification that provides for the deployment and management of cache configurations across multiple CDN providers and Open Caching Nodes.
Project Scope
- A list of supported cache configuration features
- Description of a programmatic method by which to deploy configurations to different caching systems
- Programmatic methods for error detection and error correction in configuration deployment
- A data structure and recommended container for configuration representation
- Any specific programming languages that should be used to extract metrics
- Any support for configuration features not specifically listed and addressed by methods within the API
Contributors
The following members have contributed to this project. Click on their name to visit their profile. If they have not published their profile, the link will redirect to their LinkedIn profile.
Additional References
Presentations
- Configuration Interface and CAT Discussion
- Open Caching Working Group Configuration Interface Breakout Session
- Open Caching Working Group Configuration Interface Part 2i Secrets Metadata
- Open Caching Working Group Configuration Interface General Update
- Open Caching Working Group OC WG Configuration Interface Part 2f Edge Control Metadata
- Open Caching Working Group Configuration Interface Breakout Session
- Open Caching Working Group Configuration Interface Update
- Open Caching Working Group Configuration Interface Update