Skip to main content

Content Distribution Network Interconnection (CDNI) Footprint & Capabilities Advertisement Interface
draft-ma-cdni-capabilities-02

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Author Kevin J. Ma
Last updated 2013-08-03
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-ma-cdni-capabilities-02
Network Working Group                                              K. Ma
Internet-Draft                                       Azuki Systems, Inc.
Intended status: Standards Track                         August 04, 2013
Expires: February 05, 2014

    Content Distribution Network Interconnection (CDNI) Footprint &
                  Capabilities Advertisement Interface
                     draft-ma-cdni-capabilities-02

Abstract

   The interconnection of Content Distribution Networks (CDNs) is
   predicated on the ability of downstream CDNs (dCDNs) to handle end-
   user requests in a functionally equivalent manner to the upstream CDN
   (uCDN).  The uCDN must be able to assess the ability of the dCDN to
   handle individual requests.  The CDNI Footprint & Capabilities
   Advertisement interface (FCI) is provided for the advertisement of
   capabilities and the footprints to which they apply by the dCDN to
   the uCDN.  This document describes an approach to implementing the
   CDNI FCI.

Requirements Language

   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 RFC 2119 [RFC2119].

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on February 05, 2014.

Copyright Notice

Ma                      Expires February 05, 2014               [Page 1]
Internet-Draft                CDNI Metadata                  August 2013

   Copyright (c) 2013 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   4
   2.  Capabilities  . . . . . . . . . . . . . . . . . . . . . . . .   4
     2.1.  Delivery Protocol . . . . . . . . . . . . . . . . . . . .   6
     2.2.  Acquisition Protocol  . . . . . . . . . . . . . . . . . .   7
     2.3.  Redirection Mode  . . . . . . . . . . . . . . . . . . . .   8
   3.  Capability Advertisement  . . . . . . . . . . . . . . . . . .  10
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  10
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  10
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  11
   Appendix A.  Capability Aggregation . . . . . . . . . . . . . . .  11
     A.1.  Downstream CDN Aggregation  . . . . . . . . . . . . . . .  11
     A.2.  Internal Request Router Aggregation . . . . . . . . . . .  13
     A.3.  Internal Capability Aggregation . . . . . . . . . . . . .  14
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  16

1.  Introduction

   The need for footprint and capabilities advertisement in CDNI is
   described in the CDNI requirements document
   [I-D.ietf-cdni-requirements].  Requirements FCI-1 and FCI-2 describe
   the need to allow dCDNs to communicate capabilities to the uCDN.
   Requirement FCI-3 describes how a uCDN may aggregate the footprint
   and capabilities information for all cascaded dCDNs and use the
   aggregated information in advertisements to CDNs further upstream.
   This concept of aggregation can apply to both organizationally
   different dCDNs (e.g., other CDN providers, or different business
   units within a larger organization) or logical entities within the
   same CDN (e.g., using multiple request routers for scalability
   reasons, to segregate surrogates based on specific protocol support,

Ma                      Expires February 05, 2014               [Page 2]
Internet-Draft                CDNI Metadata                  August 2013

   or to segregate surrogates based on software version or feature
   level, etc.).

   Appendix A contains more detailed descriptions of different footprint
   and capabilities management scenarios, but it is important to note
   that it is the ability of the dCDN to service each request in a
   functionally equivalent manner as the uCDN that is important, not the
   physical layout of resources through which it services the request.
   The aggregation of resource knowledge by the dCDN into a simple set
   of capabilities and their affective footprints, that is then
   advertised to the uCDN enables efficient decision making at each
   delegation point in the CDN interconnection hierarchy.

   It is assumed that an authoritative request router in each CDN will
   be responsible for aggregating and advertising capabilities
   information in a dCDN, and receiving and aggregating capabilities
   information in the uCDN.  The CDNI Footprint & Capabilities
   Advertisement interface (FCI) along with the CDNI Request Routing
   Redirection interface (RI) make up the CDNI Request Routing
   Interface.  As there is no other centralized CDNI controller, the
   authoritative request router seems the most logical place for
   capabilities aggregation to occur, as it is the request router that
   needs such information to make delegation decisions.  The protocol
   defined herein may be implemented as part of an entity other than an
   authoritative request router, but for the purposes of this
   discussion, the authoritative request router is assumed to be the
   centralized capabilities aggregation point.

   Though there is an obvious need for the ability to exchange and
   update footprint and capability information in real-time, it is
   assumed that capabilities do not change very often.  It is also
   assumed that the capabilities are not by themselves useful for making
   delegation decisions.  Capability information is assumed to be input
   into business logic.  It is the business logic which provides the
   algorithms for delegation decision making.  The definition of
   business logic occurs outside the scope of CDNI and outside the
   timescale of footprint and capability advertisement.  It may be the
   case that the business logic anticipates and reacts to changes in
   dCDN capabilities.  However, it may also be the case that business
   logic is tailored through offline processes as dCDN capabilities
   change.  The FCI is agnostic to the business processes employed by
   any given uCDN.  The footprints and capabilities that are advertised
   over the FCI may be used by the uCDN at its discretion to implement
   delegation rules.  Setting proper defaults in the business logic
   should prevent any unwanted delegation from occurring when dCDN
   capabilities change, however, that is beyond the scope of this
   discussion.

Ma                      Expires February 05, 2014               [Page 3]
Internet-Draft                CDNI Metadata                  August 2013

1.1.  Terminology

   This document uses the terminology defined in section 1.1 of the CDNI
   Framework [I-D.ietf-cdni-framework] document.

2.  Capabilities

   As described in Requirement FCI-2, there is a basic set of
   capabilities that must be supported by the FCI for the uCDN to be
   able to determine if the dCDN is functionally able to handle a given
   request.  The CDNI Footprint and Capabilities Semantics
   [I-D.ietf-cdni-footprint-capabilities-semantics] document lists
   mandatory capabilities types:

   o  Delivery Protocol

   o  Acquisition Protocol

   o  Redirection Mode

   o  CDNI Logging Capabilities

   o  CDNI Metadata Capabilities

   The following sections describe each of the capabilities in further
   detail, however, all of the capabilities can be described using the
   same general format.  A capability object is specified as:

     CapabilityObject:
       Name: Identifier for the capability
       Values: List of supported options for the capability
       Footprint: Optional list of footprint objects

   The list of valid capability options for a given capability will be
   specific to the given capability type.  Though the degenerate case
   may exist where the range of option values is a single value, it is
   anticipated that all capability types will have more than one
   capability option value.  For consistency in the model, all
   capability types are implemented with lists of values.  To optimize
   actions on the entire range of capability option values for a given
   capability type, the capability option value "ALL" is reserved and
   MUST be supported by all capability types.  For completeness, the
   capability option value "NONE" is also reserved and MUST be supported
   by all capability types.  If a reserved value is specified, it MUST
   be the only entry in the capability value list.

Ma                      Expires February 05, 2014               [Page 4]
Internet-Draft                CDNI Metadata                  August 2013

   The footprint restriction list is optional.  When included, the
   footprint restriction list contains a list of generic footprint
   objects.  The footprint object is specified as:

     FootprintObject:
       Type: Identifier for the capability
       Values: List of footprint entries
       Mode: Optional footprint application directive

   The footprint type specifies the format of the footprint value
   entries.  The footprint object type field contains the IANA registry
   defined footprint type name.  The CDNI Footprint and Capabilities
   Semantics [I-D.ietf-cdni-footprint-capabilities-semantics] document
   lists the mandatory footprint types as: ISO Country Code, AS number,
   and IP-prefix.  The CDNI Footprint and Capabilities Semantics
   [I-D.ietf-cdni-footprint-capabilities-semantics] document defines the
   footprint type names for the mandatory footprint types and describes
   the process for defining additional optional footprint types.  The
   footprint value "GLOBAL" is reserved and MUST be supported by all
   footprint types.  If the reserved value "GLOBAL" is specified, it
   MUST be the only entry in the footprint value list.

   The optional footprint mode describes how the footprint should be
   applied.  The valid footprint mode values are: "replace", "include",
   and "exclude".  The footprint mode "replace" (represented by the
   integer value 0) indicates that all previous footprint information
   for the given footprint type (and for the capabilities to which the
   current footprint object applies) MUST be replaced in its entirety
   with the footprint information specified in the accompanying
   footprint value list.  The footprint mode "include" (represented by
   the integer value 1) indicates that the any existing footprint
   information for the given footprint type (and for the capabilities to
   which the current footprint object applies) SHOULD be augmented with
   the footprint information specified in the accompanying footprint
   value list.  The footprint mode "exclude" (represented by the integer
   value 2) indicates that the any existing footprint information for
   the given footprint type (and for the capabilities to which the
   current footprint object applies) SHOULD be reduced by the footprint
   information specified in the accompanying footprint value list.  If
   no footprint mode value is specified, the default mode SHALL be
   understood to be "replace".

Ma                      Expires February 05, 2014               [Page 5]
Internet-Draft                CDNI Metadata                  August 2013

   The footprint restriction list MUST NOT contain multiple footprint
   objects of the same type.  Footprint restriction information MAY be
   specified using multiple different footprint types.  If no footprint
   restriction list is specified (or an empty list is specified), it
   SHALL be understood that all footprint types MUST be reset to
   "GLOBAL" coverage.

   Note: Further optimization of the footprint object to provide quality
   information for a given footprint is certainly possible, however, it
   is not critical to the basic interconnection of CDNs.  The ability to
   transfer quality information in capabilities advertisements may be
   desirable and is noted here for completeness, however, the specifics
   of such mechanisms are outside the scope of this document.

   Multiple capability objects of the same capability type are allowed
   within a given FCI message as long as the capability option values do
   not overlap, i.e., a given capability option value MUST NOT show up
   in multiple capability objects within a single FCI message.  If
   multiple capability objects for a given capability type exist, those
   capability objects SHOULD have different footprint restrictions;
   capability objects of a given capability type with identical
   footprint restrictions SHOULD be combined into a single capability
   object.

2.1.  Delivery Protocol

   The delivery protocol refers to the protocol over which an end user
   (EU) has requested content.  If a dCDN does not support the protocol
   requested by the client, then the dCDN is not a viable candidate for
   delegation.

   Though the delivery protocol is specified in the URI scheme (as
   defined in RFC3986 [RFC3986]) of the client request URL, protocol
   feature subsets or augmented protocol feature sets MAY be defined and
   SHOULD correspond with the protocols supported by the ProtocolACL
   defined in the CDNI Metadata Interface [I-D.ietf-cdni-metadata]
   document.

   The delivery protocol capability object MUST support a list of
   protocols for a given footprint.  The delivery protocol capability
   SHOULD support optional footprint restriction information.  The
   following example shows two lists of protocols with different
   footprints.

     {
       "capabilities": [
         { "name": "delivery_protocol",
           "values": [

Ma                      Expires February 05, 2014               [Page 6]
Internet-Draft                CDNI Metadata                  August 2013

             "HTTP",
             "RTSP",
             "MMS"
           ]
         },
         { "name": "delivery_protocol",
           "values": [
             "RTMP",
             "HTTPS"
           ],
           "footprint": [
             { "type": "IPv4",
               "values": [
                 "10.1.0.0/16",
                 "10.10.10.0/24"
               ]
             }
           ]
         }
       ]
     }

   In the above example, the three protocols HTTP, RTSP, and MMS are
   supported globally, while the protocols RTMP and HTTPS are only
   supported in a restricted footprint (in this case, specified by IP-
   prefix).

   A given protocol MUST NOT appear in multiple capability object value
   lists, within a given FCI message.

2.2.  Acquisition Protocol

   The acquisition protocol refers to the protocol over which the dCDN
   may acquire content from the uCDN.  If a dCDN does not support any of
   the protocols offered by the uCDN, then the dCDN is not a viable
   candidate for delegation.

   Though the acquisition protocol is disseminated to the dCDN in the
   URI scheme (as defined in RFC3986 [RFC3986]) of the URL provided by
   the uCDN via the CDNI Metadata Interface [I-D.ietf-cdni-metadata],
   protocol feature subsets or augmented protocol feature sets MAY be
   defined and SHOULD correspond with the protocols supported by the
   ProtocolACL defined in the CDNI Metadata Interface
   [I-D.ietf-cdni-metadata] document.

   The acquisition protocol capability object MUST support a list of
   protocols for a given footprint.  The acquisition protocol capability

Ma                      Expires February 05, 2014               [Page 7]
Internet-Draft                CDNI Metadata                  August 2013

   SHOULD support optional footprint restriction information.  The
   following example shows two lists of protocols with different
   footprints.

     {
       "capabilities": [
         { "name": "acquisition_protocol",
           "values": [
             "HTTP",
             "FTP"
           ]
         },
         { "name": "acquisition_protocol",
           "values": [
             "SFTP",
             "HTTPS"
           ],
           "footprint": [
             { "type": "ASN",
               "values": [
                 "0",
                 "65535"
               ],
               "mode": 2
             }
           ]
         }
       ]
     }

   In the above example, the two protocols HTTP and FTP are supported
   globally, while the protocols SFTP and HTTPS are updated to only be
   supported in a reduced restricted footprint (in this case, specified
   by ASN).

   A given protocol MUST NOT appear in multiple capability object value
   lists, within a given FCI message.

2.3.  Redirection Mode

   The redirection mode refers to the method(s) employed by request
   routers to perform request redirection.  The CDNI framework
   [I-D.ietf-cdni-framework] document describes four possible request
   routing modes:

   o  DNS iterative (DNS-I)

Ma                      Expires February 05, 2014               [Page 8]
Internet-Draft                CDNI Metadata                  August 2013

   o  DNS recursive (DNS-R)

   o  HTTP iterative (HTTP-I)

   o  HTTP recursive (HTTP-R)

   If a dCDN supports only a specific mode or subset of modes that does
   not overlap with the modes supported by the uCDN, then the dCDN is
   not a viable candidate for delegation.

   The redirection mode capability object MUST support a list of
   redirection modes for a given footprint.  The redirection mode
   capability SHOULD support optional footprint restriction information.
   The following XML-encoded example shows two lists of modes with
   different footprints.

     {
       "capabilities": [
         { "name": "redirection_mode",
           "values": [
             "DNS-I",
             "HTTP-I"
           ]
         },
         { "name": "redirection_mode",
           "values": [
             "DNS-R",
             "HTTP-R"
           ],
           "footprint": [
             { "type": "ASN",
               "values": [
                 "9"
               ],
               "mode": 0
             },
             { "type": "IPv6",
               "values": [
                 "8765:4321::/36"
               ]
             }
           ]
         }
       ]
     }

Ma                      Expires February 05, 2014               [Page 9]
Internet-Draft                CDNI Metadata                  August 2013

   In the above example, iterative redirection is supported globally,
   while recursive redirection is only supported in a restricted
   footprint (in this case, specified by both ASN and IP-prefix).

   A given mode MUST NOT appear in multiple capability object value
   lists, within a given FCI message.

3.  Capability Advertisement

   The FCI relies an HTTP-based protocol using the POST method.  The
   dCDN request router asynchronously issues FCI messages to the uCDN
   request router (see Appendix A for detailed descriptions of
   authoritative request router capabilities aggregation scenarios).  It
   is assumed that the dCDN request router has been configured with the
   uCDN request router address either through the CDNI Control interface
   bootstrapping function, or through some other out-of-band
   configuration.

4.  IANA Considerations

   This memo includes no request to IANA.

5.  Security Considerations

   There are a number of security concerns associated with the FCI.  The
   FCI essentially provides configuration information which the uCDN
   uses to make request routing decisions.  Injection of fake capability
   advertisement messages or the interception and discard of real
   capability advertisement messages may be used for denial of service
   (e.g., by falsely advertising or deleting capabilities or preventing
   capability advertisements from reaching the uCDN).  dCDN capability
   advertisements MUST be authenticated by the uCDN to prevent
   unauthorized FCI message injection.  uCDN FCI servers MUST be
   authenticated by the dCDN to prevent unauthorized interception of FCI
   messages.  TLS with client authentication SHOULD be used for all FCI
   implementations.  Deployments in controlled environments where
   physical security and IP address white-listing is employed MAY choose
   not to use TLS.

6.  Acknowledgements

   The authors would like to thank Ray van Brandenburg, Gilles Bertrand,
   and Scott Wainner for their timely reviews and invaluable comments.

7.  References

7.1.  Normative References

Ma                      Expires February 05, 2014              [Page 10]
Internet-Draft                CDNI Metadata                  August 2013

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66, RFC
              3986, January 2005.

7.2.  Informative References

   [I-D.ietf-cdni-footprint-capabilities-semantics]
              Seedorf, J., Peterson, J., Previdi, S., van Brandenburg,
              R., and K. Ma, "CDNI Request Routing: Footprint and
              Capabilities Semantics draft-ietf-cdni-footprint-
              capabilities-semantics-00", July 2013.

   [I-D.ietf-cdni-framework]
              Peterson, L., Ed. and B. Davie, Ed., "Framework for CDN
              Interconnection draft-ietf-cdni-framework-03", February
              2013.

   [I-D.ietf-cdni-logging]
              Le Faucheur, F., Bertrand, G., Oprescu, I., and R.
              Peterkofsky, "CDNI Logging Interface draft-ietf-cdni-
              logging-05", July 2013.

   [I-D.ietf-cdni-metadata]
              Niven-Jenkins, B., Murray, R., Watson, G., Caulfield, M.,
              Leung, K., and K. Ma, "CDN Interconnect Metadata draft-
              ietf-cdni-metadata-02", July 2013.

   [I-D.ietf-cdni-requirements]
              Leung, K. and Y. Lee, "Content Distribution Network
              Interconnection (CDNI) Requirements draft-ietf-cdni-
              requirements-09", July 2013.

Appendix A.  Capability Aggregation

   The following sections show examples of three aggregation scenarios.
   In each case, CDN-U is the ultimate uCDN and CDN-P is the penultimate
   CDN which must perform capabilities aggregation.

A.1.  Downstream CDN Aggregation

   Figure A1 shows five organizationally different CDNs: CDN-U, CDN-P,
   and CDNS A, B, and C, the dCDNs of CDN-P which are being aggregated.
   Given the setup shown in Figure A1, we can construct a number of use
   cases, based on the coverage areas of each dCDN (i.e., CDNs P, A, B,
   and C).  Note: In all cases, the reachability of the uCDN (i.e.,

Ma                      Expires February 05, 2014              [Page 11]
Internet-Draft                CDNI Metadata                  August 2013

   CDN-U) is a don't care as it is assumed that the uCDN knows its own
   coverage area and is likely to favor itself in most situations, and
   if it has decided that it needs to delegate to a dCDN, then the only
   relevant question is if the dCDN can handle the request.

                               ,---,---,---.
                            ,-'             `-.
                           ( rr0.u.example.com )
                            `-.    CDN-U    ,-'
                               `---'-+-'- --'
                                     |
                               ,---,-+-,---.
                            ,-'             `-.
                           ( rr0.p.example.com )
                            `-.    CDN-P    ,-'
                               `---'-+-'---'
                                     |
               +---------------------+---------------------+
              /                      |                      \
       ,---,-+-,---.           ,---,-+-,---.           ,---,-+-,---.
    ,-'             `-.     ,-'             `-.     ,-'             `-.
   ( rr0.a.example.com )   ( rr0.b.example.com )   ( rr0.c.example.com )
    `-.    CDN-A    ,-'     `-.    CDN-B    ,-'     `-.    CDN-C    ,-'
       `---'---'---'           `---'---'---'           `---'---'---'

              Figure A1: CDNI dCDN Request Router Aggregation

   o  None of the four dCDNs (CDNs P, A, B, and C) have global
      reachability.  In this case, each CDN is likely to advertise
      footprint information with its capabilities, specifying its
      reachability.  When CDN-P advertises capabilities to CDN-U, it may
      advertise the aggregate footprint of itself and CDNs A, B, and C.
      Note: CDN-P MAY exclude any dCDN, and consequently its footprint,
      per its own internal aggregation decision criteria.

   o  All four dCDNs (CDNs P, A, B, and C) have global reachability.  In
      this case, none of the CDNs is likely to advertise any footprint
      information as none have any footprint restrictions.  When CDN-P
      advertises capabilities to CDN-U, the aggregate of all global
      reachability is global reachability.

   o  Some of the four dCDNs (CDNs P, A, B, and C) have global
      reachability and some do not.  In this case, even though some
      dCDNs do not have global reachability, the aggregate of some dCDNs
      having global reachability and some not should still be global
      reachability (for the given capability).  When CDN-P advertises
      capabilities to CDN-U, CDN-P may advertise capabilities for which
      at least one dCDN has global reach as being supported with global

Ma                      Expires February 05, 2014              [Page 12]
Internet-Draft                CDNI Metadata                  August 2013

      reachability.  It is up to the CDN-P request router to properly
      select a dCDN to process individual client requests and not choose
      a dCDN whose restricted footprint makes it unsuitable for
      delivering the requested content.

A.2.  Internal Request Router Aggregation

   Figure A2 shows CDN-U and CDN-P where CDN-P internally has four
   request routers: the authoritative request router rr0, and three
   other request routers rr1, rr2, and rr3.  The use of multiple request
   routers may be used to distribute request routing load across
   resources, possibly in different geographic regions covered by CDN-P.
   Similar to Figure A1, the setup shown in Figure A2 requires the
   authoritative request router rr0 in CDN-P to aggregate capabilities
   information from downstream request routers rr1, rr2, and rr3.  The
   primary difference between the scenario is that the request routers
   in Figure A2 are logically within the same CDN-P organization.  The
   same reachability scenarios apply to Figure A2 as with Figure A1.

                               ,---,---,---.
                            ,-'             `-.
                           ( rr0.u.example.com )
                            `-.    CDN-U    ,-'
                               `---'-+-'---'
                                     |
                    ,---,---,---,--,-+-,--,---,---,---.
                   (                                   )
                 ,-'       +-------------------+       `-.
                (          | rr0.p.example.com |          )
              ,-'          +---------+---------+          `-.
             (                       |                       )
           ,-'            +----------+----------+            `-.
          (              /           |           \              )
           )  +---------+---------+  |  +---------+---------+  (
          (   | rr1.p.example.com |  |  | rr3.p.example.com |   )
           `. +-------------------+  |  +-------------------+ ,'
            (                        |                        )
             `-.           +---------+---------+           ,-'
               (           | rr2.p.example.com |           )
                `-.        +-------------------+        ,-'
                  (                CDN-P                )
                   `---'---'---'---'---'---'---'---'---'

              Figure A2: Local CDN Request Router Aggregation

   o  None of the four CDN-P request routers have global reachability.
      In this case, each request router is likely to advertise footprint
      information with its capabilities, specifying its reachability.

Ma                      Expires February 05, 2014              [Page 13]
Internet-Draft                CDNI Metadata                  August 2013

      When rr0 advertises capabilities to CDN-U, it may advertise the
      aggregate footprint of itself and rr1, rr2, and rr3.

   o  All four CDN-P request routers have global reachability.  In this
      case, none of the request routers is likely to advertise any
      footprint information as none has any footprint restrictions.
      When rr0 advertises capabilities to CDN-U, the aggregate of all
      global reachability is global reachability.

   o  Some of the four CDN-P request routers have global reachability
      and some do not.  In this case, even though some request routers
      do not have global reachability, the aggregate of some request
      routers having global reachability and some not should still be
      global reachability (for the given capability).  When rr0
      advertises capabilities to CDN-U, CDN-P may advertise capabilities
      for which at least one request router has global reach as being
      supported with global reachability.  It is up to the authoritative
      request router rr0 to properly select from the other request
      routers for any given request, and not choose a request router
      whose restricted footprint makes it unsuitable for delivering the
      requested content.

A.3.  Internal Capability Aggregation

   Figure A3 shows CDN-U and CDN-P where the delivery network of CDN-P
   is segregated by delivery protocol (e.g., RTSP, HTTP, and RTMP).
   Figure A3 differs from Figures A1 and A2 in that request router rr0
   of CDN-P is not aggregating the capabilities advertisements of
   multiple other downstream request routers, but rather it is managing
   the disparate capabilities across resources within its own local CDN.
   Though not every delivery node has the same protocol capabilities,
   the aggregate delivery protocol capabilities advertised by CDN-A may
   include all delivery protocols.  Note, Figure A3 should not be
   construed to imply anything about the coverage areas for each
   delivery protocol.  They may all support the same delivery footprint,
   or they may have different delivery footprints.  It is the
   responsibility of the request router rr0 to properly assign protocol-
   appropriate delivery nodes to individual content requests.  If
   certain protocols have limited reachability, CDN-P may advertise
   footprint restrictions for each protocol.

   It should be noted that though the delivery protocol capability was
   selected for this example, the concept of internal capability
   aggregation applies to all capabilities as discussed below.

                               ,---,---,---.
                            ,-'             `-.
                           ( rr0.u.example.com )

Ma                      Expires February 05, 2014              [Page 14]
Internet-Draft                CDNI Metadata                  August 2013

                            `-.    CDN-U    ,-'
                               `---'-+-'---'
                                     |
                    ,---,---,---,--,-+-,--,---,---,---.
                   (                                   )
                 ,-'       +-------------------+       `-.
                (          | rr0.p.example.com |          )
              ,-'          +---------+---------+          `-.
             (                       .                       )
           ,-'            .......................            `-.
          (              .           .           .              )
           )  +-------------------+  .  +-------------------+  (
          (   |rtsp.p.example.com |  .  |rtmp.p.example.com |   )
           `. +-------------------+  .  +-------------------+ ,'
            (                        .                        )
             `-.           +-------------------+           ,-'
               (           |http.p.example.com |           )
                `-.        +-------------------+        ,-'
                  (                CDN-A                )
                   `---'---'---'---'---'---'---'---'---'

                Figure A3: Local CDN Capability Segregation

   Another situation in which physical footprint may not matter in an
   aggregated view has to do with feature support (e.g., new CDNI
   metadata features or new redirection modes).  Situations often arise
   when phased roll-out of software upgrades, or staging network
   segregation result in only certain portions of a CDN's resources
   supporting the new feature set.  The dCDN has a few options in this
   case:

   o  Enforce atomic update: The dCDN does not advertise support for the
      new capability until all resources have been upgraded to support
      the new capability.

   o  Transparent segregation: The dCDN advertises support for the new
      capability, and when requests are received that require the new
      capability, the dCDN request router properly selects a resource
      which supports that capability.

   o  Advertised segregation: The dCDN advertises support for the new
      capability with a footprint restriction allowing the uCDN to make
      delegation decisions based on the dCDN's limit support.

   The level of aggregation employed by the dCDN is likely to vary as
   business relationships dictate, however, the FCI should support all
   possible modes of operation.

Ma                      Expires February 05, 2014              [Page 15]
Internet-Draft                CDNI Metadata                  August 2013

Author's Address

   Kevin J. Ma
   Azuki Systems, Inc.
   43 Nagog Park
   Acton, MA  01720
   USA

   Phone: +1 978-844-5100
   Email: kevin.ma@azukisystems.com

Ma                      Expires February 05, 2014              [Page 16]