<?xml version="1.0" encoding="utf-8"?>
<?xml-model href="rfc7991bis.rnc"?> 

<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>

<rfc
  xmlns:xi="http://www.w3.org/2001/XInclude"
  category="std"
  consensus="true"
  ipr="trust200902"
  obsoletes=""
  updates=""
  submissionType="IETF"
  xml:lang="en"
  version="3"
  tocInclude="true"
  tocDepth="5"
  symRefs="true"
  sortRefs="true"
  docName="draft-ietf-cdni-delivery-metadata-03"
>
   <front>
      <title abbrev="CDNI Delivery Metadata">CDNI Delivery Metadata</title>
      <author initials="G." surname="Bichot" fullname="Guillaume Bichot">
         <organization>Broadpeak</organization>
         <address>
            <postal>
               <street />
               <city />
               <region />
               <code />
               <country>France</country>
            </postal>
            <email>guillaume.bichot@broadpeak.tv</email>
         </address>
      </author>      
      <author initials="A." surname="Siloniz" fullname="Alfonso Siloniz">
         <organization>Telefonica</organization>
         <address>
            <postal>
               <street />
               <city />
               <region />
               <code />
               <country>Spain</country>
            </postal>
            <email>alfonso.siloniz.ext@telefonica.com</email>
         </address>
      </author>            
      <author initials="G." surname="Goldstein" fullname="Glenn Goldstein">
         <organization>Lumen Technologies</organization>
         <address>
            <postal>
               <street />
               <city />
               <region />
               <code />
               <country>USA</country>
            </postal>
            <email>glenng1215@gmail.com</email>
         </address>
      </author>      
      <date />
      <abstract>
         <t>
This specification adds to the core set of configuration metadata defined in RFC8006, providing delivery metadata to define traffic types, request delegation behavior and CDN transport arrangements selection of a downstream CDN.
        </t>
      </abstract>
   </front>
<middle>
<section anchor="h.3znysh7">
  <name>Introduction</name>
  <t>This specification introduces a set of metadata objects and related footprint and capabilities objects that guide content delivery. The specification includes traffic characterization, downstream CDN (dCDN) selection directives, and request routing related metadata.</t>
  <t>Without any specific instruction, those metadata objects defined hereafter apply to the configuration associated with a host match and possibly a path match according to <xref target="RFC8006"/>.</t>
  <section anchor="h.kb3n6xa53m0j">
    <name>Cdn Transport</name>
    <t>The downstream CDN is by default viewed as a unique delivery infrastructure. There are however situations and implementation cases where the delivery infrastructure may differ depending on the content type like real-time (i.e. very low latency) streaming content, file download, multicast (vs unicast) delivery, etc. This document introduces the principle of multiple downstream CDN transport arrangements. A downstream CDN transport arrangement is associated with supported traffic types, capacity limits and transport type (multicast versus unicast). </t>
    <t>There exists by default one implicit downstream CDN arrangement. Several downstream CDN transport arrangements can be exposed through dedicated new Footprint and Capabilities (FCI) objects and conversely be exploited by uCDN using new configuration objects depicted in this document. </t>
    <t>Depending on a CDN selection policy indicated by the uCDN, the dCDN may attempt to select the preferred dCDN transport arrangement and if not possible (e.g. no more capacity) may indicate an error or may select a dCDN transport arrangement of its choice.</t>
  </section>
  <section anchor="h.nx6lsio9hsh6">
    <name>Request Routing</name>
    <t>Inter CDN request redirection is possible through iterative and recursive modes of operations. Iterative CDNI Request Redirection is defined in Section 1.1 of <xref target="RFC7336"/> and elaborated by examples in Sections 3.2 and 3.4 of <xref target="RFC7336"/>. Footprint and capabilities for redirection modes are exposed by the dCDN through FCI objects according to <xref target="RFC8008"/>. This includes Iterative redirection modes based on the Domain Name System (DNS) or HTTP redirect. Supporting the mode "I-HTTP" means for the dCDN that the uCDN  can perform request routing based on the HTTP redirect method. </t>
    <t>As mentioned in sections 3.2 (Iterative HTTP Redirect example) of <xref target="RFC7336"/>, nothing precludes the dCDN (i.e. operator B in the examples) to support DNS based request routing for inter-CDN request redirection and operates HTTP redirect request routing for dCDN internal request routing. Therefore, when the uCDN operates one particular iterative redirection mode, routing the request to the dCDN,  there is no guarantee about what request routing method the dCDN will use internally (e.g. to route the request to one of its surrogate cache). It is neither announced by the dCDN nor can it be forced by the uCDN.</t>
    <t>The uCDN requires the ability to indicate the preferred request routing method among those supported by the dCDN. This is required in the case where the uCDN would like to delegate the traffic relying on the iterative method but knows the client (i.e. the payer) does not support for instance HTTP redirection. In that case, the uCDN needs a way to force the dCDN to perform request routing based on e.g. DNS redirect but not HTTP redirect.</t>
  </section>
  <section anchor="h.gxzkvjqfxtlr">
    <name>Traffic Characterization</name>
    <t>Content delivery networks often apply different infrastructure, network routes, and internal metadata for different types of traffic. Delivery of large static objects (such as software downloads), for example, may use different edge servers and network routes than video stream delivery. In an HTTP adaptive bitrate video service, every video title corresponds to a set of video files and descriptors according to different video protocols, and this is independent of the type of service (video-on-demand, live, catch-up, etc.).</t>
    <t>The way the video service is consumed by the user agents can vary. For instance, a segment that belongs to a video on demand (VOD) title can be requested for every moment the content is available for the user agents to consume, while a segment of live content will be only requested as long as the time-shift duration is configured for that service. Knowing those differences, a provider can implement specific strategies that will maximize performance and thereby provide more available capacity to the upstream provider. It should be noted that the dCDNs handling of the traffic types is implementation-specific and not prescribed here.</t>
  </section>
</section><section anchor="requirements" title="Requirements">
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in <xref target="RFC2119"/>.</t>
</section><section anchor="h.h93e8j4pggmk">
  <name>MI.CdnTransport</name>
  <t>MI.CdnTransport is a GenericMetadata object that allows the uCDN to indicate a preference to one among multiple dCDN transport arrangements exposed by the dCDN through the FCI.CdnTransport object.</t>
  <t>Instructs the dCDN to perform delegation operations for a particular dCDN transport arrangement. The MI.CdnTransport configuration object MUST be associated with the metadata configuration objects dedicated to a particular host or a particular path match (see <xref target="RFC8006"/>). The footprint of this object corresponds to the footprint restriction of the FCI.CdnTransportArrangement it references, as defined in <xref target="RFC8008"/> Sections 3 and 5.1.</t>
  <t> Associated with the selected dCDN  transport arrangement, there is a default selection policy that is "best-effort",  i.e., the dCDN tries its best to fulfill the requested policy without providing guarantees. </t>
  <t>Note that the dCDN selects a default transport arrangement of its choice if MI.CdnTransport is not used or whenever the transport arrangement selection policy indicates "best-effort" (see below).</t>
  <t>Note that the MI.CdnTransport object can be used several times associated with a different cdn-transport-name If two or more MI.CdnTransport objects are associated with the same host or path metadata down in the inheritance tree then a MI.CdnTransportobject definition(s) always override the  parent object(s) of the same type conforming to <xref target="RFC8006"/> Section 3.3.</t>
  <t>Property: cdn-transport-name</t>
  <ul>
    <li>
      <t>Description: the name of the selected downstream CDN transport arrangement exposed through the FCICdnTransport object associated with a footprint conforming to <xref target="RFC8008"/> . </t>
    </li>
    <li>
      <t>Type: String.  Must be one of those dCDN transport arrangement names as exposed by the dCDN through the FCI.CdnTransport object.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: Yes.</t>
    </li>
  </ul>
  <t>Property: cdn-transport-selection</t>
  <ul>
    <li>
      <t>Description: Enforces the selection of this downstream CDN (dCDN) transport arrangement according to a specified policy.</t>
    </li>
    <li>
      <t>Type: String. One of  "attempt-or-failed", "attempt-or-besteffort", or "best-effort". For either of the first two values,  the delegation MUST be attempted according to  the dCDN delivery arrangement corresponding to the cdn-transport-name property If this is not possible, it is considered as an error and either fails (i.e. the complete delegation configuration fails) or the dCDN continues with a "best-effort" procedure respectively. The "best-effort" value instructs the dCDN to try its best to fulfill the requested cdn-selection policy with no guarantees.  In the case of a failure, the configuration status (see <xref target="RFC8007"/> and <xref target="SVTA2030"/>) is set to "failed" and the error list must contain the following error description.</t>
      <ul>
        <li>
          <t>error:  "ecdn" </t>
        </li>
        <li>
          <t>metadata.urls: The URL of the MI.CdnTransportconfiguration object.</t>
        </li>
      </ul>
    </li>
    <li>
      <t>Mandatory-to-Specify: No. The value "best-effort" is the default selection policy. </t>
    </li>
  </ul>
  <t>The following is an example of the MI.CdnTransport object:</t>
  <figure>
    <sourcecode><![CDATA[{
  "generic-metadata-type": "MI.CdnTransport",
  "generic-metadata-value": {
    "cdn-transport-name": "MULTICAST",
    "cdn-transport-selection": "attempt-or-failed"
  }
}]]></sourcecode>
  </figure>
</section><section anchor="h.vxay4hjptwpn">
  <name>MI.RequestRouting</name>
  <t>MI.RequestRouting is a GenericMetadata object that allows the uCDN to force the dCDN request routing method(s) to be applied when the uCDN operates one of the iterative redirection modes (see <xref target="RFC7336"/> and <xref target="RFC8008"/>).</t>
  <t>Property: request-routing-modes</t>
  <ul>
    <li>
      <t>Description: Instructs the dCDN to perform request routing according to one or more preferred modes among those supported and advertised by the dCDN through the FCI.RequestRouting object. One must understand that forcing (instead of letting the dCDN request router select) one particular request routing mode may trigger some inefficiency in the request routing process. </t>
    </li>
    <li>
      <t>Type: Array of dCDN request routing modes as specified in the FCI.RequestRouting object .</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: No. By default, all request routing modes supported by the dCDN can be used by the dCDN as part of its request routing process.  </t>
    </li>
  </ul>
  <t>The following example illustrates the uCDN forcing the dCDN to use DNS or HTTP as the method for request routing in case the uCDN performs an iterative delegation (i.e., iterative redirection mode):</t>
  <figure>
    <sourcecode><![CDATA[{
  "generic-metadata-type": "MI.RequestRouting",
  "generic-metadata-value": {
    "request-routing-modes": [ "DNS", "HTTP" ]
  }
}]]></sourcecode>
  </figure>
</section><section anchor="h.e8sm6vtg0eob">
  <name>MI.TrafficType</name>
  <t>MI.TrafficType metadata defines a set of descriptors that characterize either the type or usage of the traffic, enabling providers to apply any internal configuration rules without exposing an unnecessary number of internal details. Note that the interpretation of these traffic types and application of rules, such as rate limiting or delivery pacing, are implementation specific. </t>
  <t>The metadata object applies to the configuration associated with a host match and possibly a path match according to <xref target="RFC8006"/>. When used concurrently with the MI.CdnTransport object, the traffic-type property must be coherent with the traffic types associated with the selected transport arrangement announced with the <xref target="h.t002f9j0j2xh">FCI.CdnTransport</xref> object. </t>
  <t>It is possible to declare several MI.TrafficType objects with the same host or path metadata indicating the support of several traffic types. If two or more MI.TrafficType objects are associated with the same host or path metadata down in the inheritance tree then the MI.TrafficType object definition(s) always override the  parent object(s) of the same type conforming to <xref target="RFC8006"/> Section 3.3.</t>
  <t>Property: traffic-type</t>
  <ul>
    <li>
      <t>Description: Designates the traffic type. The uCDN will use the literal that is most representative of the traffic being delegated. </t>
    </li>
    <li>
      <t>Type: String, one of the following traffic types.</t>
      <ul>
        <li>
          <t>vod: This is streaming of on demand video. The delivery can be rate controlled. </t>
        </li>
        <li>
          <t>live: this is streaming live with possible constraints in terms of latency.</t>
        </li>
        <li>
          <t>object-download: This is typically file download like WEB objects or VOD files. The delivery can be rate controlled.</t>
        </li>
      </ul>
    </li>
    <li>
      <t>Mandatory-to-Specify: Yes</t>
    </li>
  </ul>
  <t>Property: hints</t>
  <ul>
    <li>
      <t>Description: A set of descriptions related to the traffic type. No particular form is imposed. This may be further specified though the uCDN/dCDN pre-arrangement.</t>
    </li>
    <li>
      <t>Type: Array of strings.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: No</t>
    </li>
  </ul>
  <t>The following is an example of MI.TrafficType that designates VOD catch-up TV viewing:</t>
  <t> </t>
  <figure>
    <sourcecode><![CDATA[{
  "generic-metadata-type": "MI.TrafficType",
  "generic-metadata-value": {
    "traffic-type": "vod",
    "hints": [ "catch-up"]
  }
}]]></sourcecode>
  </figure>
</section><section anchor="h.bhnrdrk6xhj7">
  <name>MI.MediaServiceDescription</name>
  <t>MI.MediaServiceDescription metadata defines a set of descriptors associated with a media service delegated to the dCDN. The metadata object applies to the configuration associated with a host match and possibly a path match according to <xref target="RFC8006"/>. A Metadata set associated with a host match or path match SHALL NOT gather more than one MediaServiceDescription metadata object.</t>
  <t>The uCDN MAY use this metadata object for controlling the bandwidth budget (possibly previously allocated by the dCDN) obtained through the Capacity Insight Interface <xref target="SVTA2049"/> or possibly offline. </t>
  <t>This metadata can be used by the dCDN provider to implement specific strategies that will maximize performance. Note that these strategies are implementation specific and not specified in this document. With knowledge of the streaming manifest URL, for example, the dCDN MAY implement segment prefetching strategies. Furthermore, the notion of a media service MAY allow the dCDN provider to track and monitor streaming sessions in a more comprehensive manner. </t>
  <t>Property: manifestURL</t>
  <ul>
    <li>
      <t>Description: Path of the manifest (e.g. mpd or m3u8) file related to this media service. </t>
    </li>
    <li>
      <t>Type: String.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: No.  </t>
    </li>
  </ul>
  <t>Property: mediaServiceName</t>
  <ul>
    <li>
      <t>Description: String describing or identifying the media service. This MAY be used by the uCDN to correlate several configuration metadata objects with a name (e.g. a TV channel name)</t>
    </li>
    <li>
      <t>Type: String.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: No. </t>
    </li>
  </ul>
  <t>Property: maximumBitrate</t>
  <ul>
    <li>
      <t>Description: This is the maximum bitrate in bits per second (bps) attached to the service delivery. If the service includes multiple representations or playlists, this property restricts the bitrate of each representation or playlist with a published bitrate to a value below this property's value.  The property's value indicates the maximum bitrate provisioned for the service, regardless of the representations or playlists. This property MUST be set (constrained) according to the maximum bitrate dedicated to the uCDN by the dCDN subject to a pre-agreement or possibly published through the  FCI.CapacityLimit <xref target="SVTA2049"/> or the cdn-transport-capacity-limits  property associated with the transport arrangement(s) announced with the FCI.CdnTransport object and possibly selected (MI.CdnTransport)along with this object</t>
    </li>
    <li>
      <t>Type: integer.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: No. If not specified, the uCDN relies entirely on the dCDN for  multiple services delivery. It is strongly encouraged to specify a maximum bitrate for allowing the uCDN to operate multicast delivery for several concurrent services.</t>
    </li>
  </ul>
  <t>The following example of MI.MediaServiceDescription pointing to the manifest of a live channel and associates a name to this channel:</t>
  <figure>
    <sourcecode><![CDATA[{
   "generic-metadata-type": "MI.MediaServiceDescription",
   "generic-metadata-value": {
     "manifestURL": "/live/channelXYZ/index.mpd",
     "mediaServiceName": "ChannelXYZ",
     "maximumBitrate": 5000000,
   }
}]]></sourcecode>
  </figure>
</section><section anchor="h.n6dfs1bc72vm">
  <name>Capabilities Advertisements</name>
  <t>This section introduces FCI objects that allow a dCDN to advertise its specific capabilities related to delivery.</t>
<section anchor="h.t002f9j0j2xh">
  <name>FCI.CdnTransport</name>
  <t>This object is used by the dCDN to advertise the supported CDN transport arrangements. </t>
  <t>Property: cdn-transport-list</t>
  <ul>
    <li>
      <t>Description: A list of supported dCDN network transport arrangements.</t>
    </li>
    <li>
      <t>Type: Array of FCI.CdnTransportArrangement objects that specify the allowed CDN transport arrangements.</t>
    </li>
    <li>
      <t>Mandatory-to-Specify: Yes.</t>
    </li>
  </ul>
  <section anchor="h.ajca665jxklr">
    <name>FCI.CdnTransportArrangement</name>
    <t>This sub-object is used to describe a particular dCDN transport arrangement.</t>
    <t>Property: cdn-transport-name</t>
    <ul>
      <li>
        <t>Description: name of the downstream CDN transport arrangement. A downstream CDN operator may own several transport arrangements which may be the subject of a different delegation. A dCDN transport arrangement is named according to that property. The name is used with the corresponding MI.CdnTransport for pointing out one particular transport arrangement associated with the configuration metadata.</t>
      </li>
      <li>
        <t>Type: String.</t>
      </li>
      <li>
        <t>Mandatory-to-Specify: Yes. The name MUST be unique among the list exposed by the cdn-transport-list property of the FCI.CdnTransport object.</t>
      </li>
    </ul>
    <t>Property: cdn-transport-type</t>
    <ul>
      <li>
        <t>Description: Transport type of the downstream CDN transport arrangement.</t>
      </li>
      <li>
        <t>Type: String.  Must be one of these values: "MULTICAST", "UNICAST". </t>
      </li>
      <li>
        <t>Mandatory-to-Specify: No. The default is unicast. There is always one default dCDN unicast transport arrangement.</t>
      </li>
    </ul>
    <t>Property: cdn-transport-capacity-limits</t>
    <ul>
      <li>
        <t>Description: Exposes some capacity limits associated with that dCDN transport arrangement</t>
      </li>
      <li>
        <t>Type: An array of FCI.CapacityLimit objects as defined in <xref target="SVTA2049"/>.</t>
      </li>
      <li>
        <t>Mandatory-to-Specify: No.</t>
      </li>
    </ul>
    <t>Property: cdn-transport-traffic-types</t>
    <ul>
      <li>
        <t>Description: A set of traffic types supported by this dCDN transport arrangement.</t>
      </li>
      <li>
        <t>Type: An array of MI.TrafficType objects</t>
      </li>
      <li>
        <t>Mandatory-to-Specify: No.</t>
      </li>
    </ul>
    <t>Property: cdn-transport-staging</t>
    <ul>
      <li>
        <t>Description: Indicate whether this dCDN transport arrangement corresponds to a staging arrangement.</t>
      </li>
      <li>
        <t>Type: A boolean. True if this is a staging arrangement. False (default) if this is a production arrangement.</t>
      </li>
      <li>
        <t>Mandatory-to-Specify: No. By default a production transport arrangement.</t>
      </li>
    </ul>
    <t>The following is an example advertising support for Multicast delivery:</t>
    <figure>
      <sourcecode><![CDATA[{
  "capabilities": [
    {
      "capability-type": "FCI.CdnTransport",
      "capability-value": {
        "cdn-transport-list": [
          {
            "cdn-transport-name": "MULTICAST",
            "cdn-transport-type": "MULTICAST",
            "cdn-transport-capacity-limits": [
              {
                "id": "capacity_limit_multicast",
                "limit-type": "ingress",
                "maximum-hard": 50000000,
                "maximum-soft": 40000000,
                "current": 15000000
              },
              {
                "id": "capacity_limit_multicast",
                "limit-type": "egress",
                "maximum-hard": 5000000,
                "maximum-soft": 4000000
              }
            ],
            "cdn-transport-traffic-types": [
              {
                "traffic-type": "live"
              }
            ]
          }
        ]
      }
    }
  ]
}]]></sourcecode>
    </figure>
  </section>
</section></section><section anchor="Security">
<name>Security Considerations</name>
<t>The FCI and MI objects defined in this document are transferred via the interfaces defined in CDNI [RFC8006] which describes how to secure these interfaces by protecting integrity and confidentiality while ensuring the authenticity of the dCDN and uCDN.</t>
</section><section anchor="IANA">
    <name>IANA Considerations</name>
    <section anchor="IANA.cdni.metadata.payload.types" title="CDNI Payload Types Registry">
        <t>
            This document registers the following entries under the "CDNI Payload Types" registry
            hosted by IANA:
        </t>
        <table anchor="table_registry_PayloadTypes">
            <name>CDNI Payload Types</name>
            <thead>
                <tr>
                    <th align="center">Payload Type</th>
                    <th align="center">Specification</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>MI.CdnTransport</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>MI.RequestRouting</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>MI.TrafficType</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>MI.MediaServiceDescription</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>FCI.RequestRouting</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>FCI.CdnTransport</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>FCI.CdnTransportArrangement</td>
                    <td>RFC this</td>
                </tr>
            </tbody>
        </table>
        <section anchor="IANA.cdni.payload.types.MI.CdnTransport" title="CDNI MI CdnTransport Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish CrossoriginPolicy MI
                objects (and any associated capability advertisement)

                Interface: MI/FCI

                Encoding: See Section 3
            </t>
        </section>
        <section anchor="IANA.cdni.payload.typesMI.RequestRouting" title="CDNI MI RequestRouting Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish RequestRouting MI
                objects (and any associated capability advertisement)

                Interface: MI/FCI

                Encoding: See Section 4
            </t>
        </section>
        <section anchor="IANA.cdni.payload.types.MI.TrafficType" title="CDNI MI TrafficType Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish TrafficType MI objects
                (and any associated capability advertisement)

                Interface: MI/FCI

                Encoding: See Section 5
            </t>
        </section>
        <section anchor="IANA.cdni.payload.types.MI.MediaServiceDescription" title="CDNI MI MediaServiceDescription Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish MediaServiceDescription
                MI objects (and any associated capability advertisement)

                Interface: MI/FCI

                Encoding: See Section 6
            </t>
        </section>
        <section anchor="IANA.cdni.payload.types.FCI.RequestRouting" title="CDNI FCI RequestRouting Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish RequestRouting FCI
                objects

                Interface: FCI

                Encoding: See Section 7.1
            </t>
        </section>
        <section anchor="IANA.cdni.payload.types.FCI.CdnTransport" title="CDNI FCI CdnTransport Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish CdnSelection FCI objects
                Interface: FCI

                Encoding: See Section 7.2
            </t>
        </section>
        <section anchor="IANA.cdni.payload.types.FCI.CdnTransportArrangement" title="CDNI FCI CdnTransportArrangement Payload Type">
            <t>
                Purpose: The purpose of this Payload Type is to distinguish CdnTransport FCI objects
                Interface: FCI

                Encoding: See Section 7.2.1
            </t>
        </section>
    </section>
    <section anchor="IANA.cdni.registry.TrafficType" title="CDNI Metadata Traffic Types Registry">
        <t>
            IANA SHOULD create a new "CDNI Metadata Traffic Types" subregistry in the "Content
            Delivery Network Interconnection (CDNI) Parameters" registry.
            The "CDNI Metadata Traffic Types" namespace defines the valid traffic types values used
            by the traffic-type property of the MI.TrafficType object defined in Section 5. The
            following table defines the initial values for the "CDNI Metadata Traffic Types"
            registry:
        </t>
        <table anchor="table_registry_TrafficTypes">
            <name>CDNI Metadata Traffic Types</name>
            <thead>
                <tr>
                    <th align="center">Traffic Type</th>
                    <th align="center">Description</th>
                    <th align="center">Specification</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>vod</td>
                    <td>This is streaming of on demand video. The delivery can be rate controlled.</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>live</td>
                    <td>This is streaming live with possible constraints in terms of latency.</td>
                    <td>RFC this</td>
                </tr>
                <tr>
                    <td>object</td>
                    <td>This is typically file download like WEB objects or VOD files. The delivery
                        can be rate controlled.</td>
                    <td>RFC this</td>
                </tr>
            </tbody>
        </table>
    </section>
</section><section anchor="Acknowledgements" title="Acknowledgements">
    <t>
        The authors would like to express their gratitude to the members of the Streaming Video Technology Alliance <xref target="SVTA"/> Open Caching Working Group for their guidance / contribution / reviews ...)
    </t>
    <t>Particulary the following people contribute in one way or another to the content of this draft:</t>
        <ul>
            <li>Christoph Neumann (Broadpeak)</li>
            <li>Will Power (Lumen) </li>
            <li>Shmuel Asafi (Qwilt)</li>
            <li>Yoav Gressel (Qwilt)</li>
            <li>Nir Sopher (Qwilt)</li>
            <li>Arnon Warshavsky (Qwilt)</li>
            <li>Francisco Cano Hila (Telefonica)</li>
        </ul>
</section>
   </middle>
   <back>
      <references>
         <name>Normative References</name>
         <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
         <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8006.xml"/>
         <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8007.xml"/>
         <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8008.xml"/>
      </references>
      <references>
         <name>Informative References</name>
         <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7336.xml"/>
         <reference anchor="SVTA" target="https://www.svta.org">
            <front>
               <title>Streaming Video Technology Alliance Home Page</title>
               <author />
               <date />
            </front>
         </reference>
         <reference anchor="SVTA2030" target="https://svta.org/documents/SVTA2030>">
            <front>
               <title>Open Caching Configuration Interface: Part 3 : Publishing Layer APIs</title>
               <author />
               <date />
            </front>
         </reference>
          <reference anchor="SVTA2049" target="https://svta.org/documents/SVTA2049>">
            <front>
               <title>Capacity Insights Interface</title>
               <author />
               <date />
            </front>
         </reference>
      </references>
   </back>
</rfc>
