Content Delivery Network Interconnection (CDNI) Parameters
- Created
- 2015-10-22
- Last Updated
- 2024-11-05
- Available Formats
-
XML
HTML
Plain text
Registries included below
- CDNI Payload Types
- CDNI CI/T Trigger Types
- CDNI CI/T Error Codes
- CDNI Capabilities Redirection Modes
- CDNI Logging Directive Names
- CDNI Logging File version
- CDNI Logging record-types
- CDNI Logging Field Names
- CDNI RI Error response code
- CDNI Metadata Footprint Types
- CDNI Metadata Protocol Types
- CDNI URI Signing Verification Codes
- CDNI URI Signing Signed Token Transport
CDNI Payload Types
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma, Ben Niven-Jenkins
- Reference
- [RFC7736]
- Available Formats
-
CSV
Payload Type | Reference |
---|---|
ci-trigger-command | [RFC8007] |
ci-trigger-status | [RFC8007] |
ci-trigger-collection | [RFC8007] |
FCI.DeliveryProtocol | [RFC8008] |
FCI.AcquisitionProtocol | [RFC8008] |
FCI.RedirectionMode | [RFC8008] |
FCI.Logging | [RFC8008] |
FCI.Metadata | [RFC8008] |
logging-file | [RFC7937] |
redirection-request | [RFC7975] |
redirection-response | [RFC7975] |
MI.HostIndex | [RFC8006] |
MI.HostMatch | [RFC8006] |
MI.HostMetadata | [RFC8006] |
MI.PathMatch | [RFC8006] |
MI.PatternMatch | [RFC8006] |
MI.PathMetadata | [RFC8006] |
MI.SourceMetadata | [RFC8006] |
MI.Source | [RFC8006] |
MI.LocationACL | [RFC8006] |
MI.LocationRule | [RFC8006] |
MI.Footprint | [RFC8006] |
MI.TimeWindowACL | [RFC8006] |
MI.TimeWindowRule | [RFC8006] |
MI.TimeWindow | [RFC8006] |
MI.ProtocolACL | [RFC8006] |
MI.ProtocolRule | [RFC8006] |
MI.DeliveryAuthorization | [RFC8006] |
MI.Cache | [RFC8006] |
MI.Auth | [RFC8006] |
MI.Grouping | [RFC8006] |
FCI.RedirectTarget | [RFC8804] |
MI.FallbackTarget | [RFC8804] |
MI.UriSigning | [RFC9246] |
MI.ACMEDelegationMethod | [RFC9538] |
MI.DelegatedCredentials | [RFC9677] |
FCI.DelegatedCredentials | [RFC9677] |
CDNI CI/T Trigger Types
- Registration Procedure(s)
-
RFC Required
- Reference
- [RFC8007]
- Available Formats
-
CSV
JSON String | Description | Reference |
---|---|---|
preposition | A request for the dCDN to acquire metadata or content. | [RFC8007] |
invalidate | A request for the dCDN to invalidate metadata or content. After servicing this request the dCDN will not use the specified data without first re-validating it using, for example, an "If-None-Match" HTTP request. The dCDN need not erase the associated data. | [RFC8007] |
purge | A request for the dCDN to erase metadata or content. After servicing the request, the specified data MUST NOT be held on the dCDN (the dCDN should re-acquire the metadata or content from uCDN if it needs it). | [RFC8007] |
CDNI CI/T Error Codes
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma, Ben Niven-Jenkins
- Reference
- [RFC8007]
- Available Formats
-
CSV
Error Code | Description | Reference |
---|---|---|
emeta | The dCDN was unable to acquire metadata required to fulfil the request. | [RFC8007] |
econtent | The dCDN was unable to acquire content (CT/T preposition commands only). | [RFC8007] |
eperm | The uCDN does not have permission to issue the CI/T Command (for example, the data is owned by another CDN). | [RFC8007] |
ereject | The dCDN is not willing to fulfil the CI/T Command (for example, a preposition request for content at a time when the dCDN would not accept Request Routing requests from the uCDN). | [RFC8007] |
ecdn | An internal error in the dCDN or one of its downstream CDNs. | [RFC8007] |
ecancelled | The uCDN cancelled the request. | [RFC8007] |
eunsupported | The Trigger Specification contained a "type" that is not supported by the dCDN. No action was taken by the dCDN other than to create a Trigger Status Resource in state "failed". | [RFC8007] |
CDNI Capabilities Redirection Modes
- Registration Procedure(s)
-
IETF Review
- Reference
- [RFC8008]
- Available Formats
-
CSV
Redirection Mode | Description | Reference |
---|---|---|
DNS-I | Iterative DNS-based Redirection | [RFC8008] |
DNS-R | Recursive DNS-based Redirection | [RFC8008] |
HTTP-I | Iterative HTTP-based Redirection | [RFC8008] |
HTTP-R | Recursive HTTP-based Redirection | [RFC8008] |
CDNI Logging Directive Names
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC7937]
- Note
-
Directive names are to be allocated with a format of NAMEFORMAT (see Section 3.1 of [RFC7937]). All directive names defined in the logging file are case-insensitive as per the basic ABNF ([RFC5234]). Each specification that defines a new CDNI Logging directive needs to contain a description for the new directive with the same set of information as provided in Section 3.3 of [RFC7937] (i.e., format, directive value and occurrence).
- Available Formats
-
CSV
Directive Name | Reference |
---|---|
version | [RFC7937] |
UUID | [RFC7937] |
claimed-origin | [RFC7937] |
established-origin | [RFC7937] |
remark | [RFC7937] |
record-type | [RFC7937] |
fields | [RFC7937] |
SHA256-hash | [RFC7937] |
CDNI Logging File version
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC7937]
- Note
-
Version values are to be allocated with a format of NAMEFORMAT (see Section 3.1 of [RFC7937]). All version values defined in the logging file are case-insensitive as per the basic ABNF ([RFC5234]).
- Available Formats
-
CSV
version | Description | Reference |
---|---|---|
cdni/1.0 | CDNI Logging File version 1.0 as specified in [RFC7937] | [RFC7937] |
CDNI Logging record-types
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC7937]
- Note
-
Record-types are to be allocated with a format of NAMEFORMAT (see Section 3.1 of [RFC7937]). All record-types defined in the logging file are case-insensitive as per the basic ABNF ([RFC5234]). Each specification that defines a new record-type needs to contain a description for the new record-type with the same set of information as provided in Section 3.4.1 of [RFC7937]. This includes: o a list of all the CDNI Logging fields that can appear in a CDNI Logging Record of the new record-type o for all these fields: a specification of the occurrence for each Field in the new record-type o for every newly defined Field, i.e., for every Field that results in a registration in the CDNI Logging Field Names Registry: a specification of the field name, format and field value.
- Available Formats
-
CSV
record-types | Description | Reference |
---|---|---|
cdni_http_request_v1 | CDNI Logging Record version 1 for content delivery using HTTP | [RFC7937] |
cdni_http_request_v2 | Extension to CDNI Logging Record version 1 for content delivery using HTTP, to include URI Signing Logging fields | [RFC9246] |
CDNI Logging Field Names
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC7937]
- Note
-
Field names are to be allocated with a format of NHTABSTRING (see Section 3.1 of [RFC7937]). All field names defined in the logging file are case-insensitive as per the basic ABNF ([RFC5234]).
- Available Formats
-
CSV
Field Name | Reference |
---|---|
date | [RFC7937] |
time | [RFC7937] |
time-taken | [RFC7937] |
c-groupid | [RFC7937] |
s-ip | [RFC7937] |
s-hostname | [RFC7937] |
s-port | [RFC7937] |
cs-method | [RFC7937] |
cs-uri | [RFC7937] |
u-uri | [RFC7937] |
protocol | [RFC7937] |
sc-status | [RFC7937] |
sc-total-bytes | [RFC7937] |
sc-entity-bytes | [RFC7937] |
cs(insert_HTTP_header_name_here) | [RFC7937] |
sc(insert_HTTP_header_name_here) | [RFC7937] |
s-ccid | [RFC7937] |
s-sid | [RFC7937] |
s-cached | [RFC7937] |
s-uri-signing | [RFC9246] |
s-uri-signing-deny-reason | [RFC9246] |
CDNI RI Error response code
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma, Ben Niven-Jenkins
- Reference
- [RFC7975]
- Available Formats
-
CSV
Code | Reason | Description | Reference |
---|---|---|---|
100 | <reason> (see Description) | Generic informational error-code meant for carrying a human-readable string | [RFC7975] |
400 | <reason> (see Description) | Generic error-code for uCDN errors where the dCDN cannot or will not process the request due to something that is perceived to be a uCDN error. The reason field may be used to provide more details about the source of the error. | [RFC7975] |
500 | <reason> (see Description) | Generic error-code for dCDN errors where the dCDN is aware that it has erred or is incapable of satisfying the RI request for some reason. The reason field may be used to provide more details about the source of the error. | [RFC7975] |
501 | Unable to retrieve metadata | The dCDN is unable to retrieve the metadata associated with the content requested by the UA. This may indicate a configuration error or that the content requested by the UA does not exist. | [RFC7975] |
502 | Loop detected | The dCDN detected a redirection loop (see Section 4.8 of [RFC7975]). | [RFC7975] |
503 | Maximum hops exceeded | The dCDN detected the maximum number of redirection hops exceeding max-hops (see Section 4.8 of [RFC7975]). | [RFC7975] |
504 | Out of capacity | The dCDN does not currently have sufficient capacity to handle the UA request. | [RFC7975] |
505 | Delivery protocol not supported | The dCDN does not support the (set of) delivery protocols indicated in the CDNI Metadata of the content requested by the UA. | [RFC7975] |
506 | Redirection protocol not supported | The dCDN does not support the requested redirection protocol. This error-code is also used when the RI request has the dns-only flag set to True and the dCDN is not supported or is not prepared to return an RT of a surrogate directly. | [RFC7975] |
CDNI Metadata Footprint Types
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC8006]
- Available Formats
-
CSV
Footprint Type | Description | Reference |
---|---|---|
ipv4cidr | IPv4 CIDR address block | [RFC8006] |
ipv6cidr | IPv6 CIDR address block | [RFC8006] |
asn | Autonomous System Number (ASN) | [RFC8006] |
countrycode | ISO 3166-1 alpha-2 code | [RFC8006] |
altopid | A list of PID names | [RFC9241, Section 4] |
subdivisioncode | ISO 3166-2 country subdivision code: alpha-2 country code, followed by a hyphen-minus and up to 3 characters from A-Z;0-9 as a code within the country | [RFC9388] |
footprintunion | A combination of other footprint objects | [RFC9388] |
CDNI Metadata Protocol Types
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Kevin Ma
- Reference
- [RFC8006]
- Available Formats
-
CSV
Protocol Type | Description | Type Specification | Protocol Specification |
---|---|---|---|
http/1.1 | Hypertext Transfer Protocol -- HTTP/1.1 | [RFC8006] | [RFC7230] |
https/1.1 | HTTP/1.1 over TLS | [RFC8006] | [RFC7230][RFC2818] |
CDNI URI Signing Verification Codes
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Phil Sorber
- Reference
- [RFC9246]
- Available Formats
-
CSV
Value | Description | Reference |
---|---|---|
000 | No signed JWT verification performed | [RFC9246] |
200 | Signed JWT verification performed and verified | [RFC9246] |
400 | Signed JWT verification performed and rejected because of incorrect signature | [RFC9246] |
401 | Signed JWT verification performed and rejected because of Issuer enforcement | [RFC9246] |
402 | Signed JWT verification performed and rejected because of Subject enforcement | [RFC9246] |
403 | Signed JWT verification performed and rejected because of Audience enforcement | [RFC9246] |
404 | Signed JWT verification performed and rejected because of Expiration Time enforcement | [RFC9246] |
405 | Signed JWT verification performed and rejected because of Not Before enforcement | [RFC9246] |
406 | Signed JWT verification performed and rejected because only one of CDNI Signed Token Transport or CDNI Expiration Time Setting present | [RFC9246] |
407 | Signed JWT verification performed and rejected because of JWT ID enforcement | [RFC9246] |
408 | Signed JWT verification performed and rejected because of Version enforcement | [RFC9246] |
409 | Signed JWT verification performed and rejected because of Critical Extension enforcement | [RFC9246] |
410 | Signed JWT verification performed and rejected because of Client IP enforcement | [RFC9246] |
411 | Signed JWT verification performed and rejected because of URI Container enforcement | [RFC9246] |
500 | Unable to perform signed JWT verification because of malformed URI | [RFC9246] |
CDNI URI Signing Signed Token Transport
- Registration Procedure(s)
-
Specification Required
- Expert(s)
-
Phil Sorber
- Reference
- [RFC9246]
- Available Formats
-
CSV
Value | Description | Reference |
---|---|---|
0 | Designates token transport is not enabled | [RFC9246] |
1 | Designates token transport via cookie | [RFC9246] |
2 | Designates token transport via query string | [RFC9246] |