SVTA Configuration Interface

  • Home
  • Open Caching Configuration Interface

What Is The SVTA Configuration Interface?

The SVTA Configuration Interface is an extension of the CDNi interfaces to make a general programmatic interface applicable to a variety of use cases such as Open Caching Nodes and CDNs. This generalized interface is defined by a family of documents which specify the motivational drivers, use cases, and standards for a configuration interface to facilitate interoperability within the content delivery network (CDN) and open caching ecosystems. This document family presents a layered architecture that extends the Internet Engineering Task Force (IETF) CDN Interconnect (CDNi) metadata model and adds publishing layer Application Programming Interfaces (APIs) to provide configuration management capabilities required by the CDN and open caching industries.

How The SVTA Configuration Interface Works

The diagram shown below places the various specifications, capabilities, APIs, and usage of those APIs, within the context of the open caching ecosystem, indicating the relationship between the SVA and IETF CDNi domains. Each specification documents the capabilities and/or extensions to other specifications, while each of the APIs define the specific service interfaces for those capabilities

Documents

The following documents are related to this API.

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: Open Caching Configuration Interface: Part 2 - Extensions to the CDNi Metadata Object Model

This is part two in a set of documents that specifies the motivational drivers, use cases, and standards for a configuration interface to facilitate interoperability within the content delivery network (CDN) and open caching ecosystem. This document presents the context and requirements for extending the Content Delivery Network Interconnection (CDNi) metadata model, as well as specific extensions that will fulfill those requirements. This document will provide all the necessary information for an Internet Engineering Task Force (IETF) memo describing the Streaming Video Alliance (SVA) metadata interface requirements beyond those stated in RFC-7337 (Content Distribution Network Interconnection Requirements), along with requested extensions to RFC-8006 (Content Delivery Network Interconnection Metadata).

SVTA2030-1: Open Caching 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) Version 2.0

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: Open Caching 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.