1 / 5

CDNI Capabilities Interface draft-ma-cdni-capabilities-00

CDNI Capabilities Interface draft-ma-cdni-capabilities-00. Kevin J. Ma. Capabilities as Input to Request Routing Decisions. Capabilities are properties of a CDN that do not change very often and are evaluated as part of business rules to determine if a dCDN is eligible for delegation.

hamlet
Download Presentation

CDNI Capabilities Interface draft-ma-cdni-capabilities-00

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CDNI Capabilities Interfacedraft-ma-cdni-capabilities-00 Kevin J. Ma

  2. Capabilities as Input toRequest Routing Decisions • Capabilities are properties of a CDN that do not change very often and are evaluated as part of business rules to determine if a dCDN is eligible for delegation. • Delivery protocol: HTTP, HTTPS, RTMP, RTSP, etc. • Acquisition protocol: HTTP, FTP, SFTP, ASCP, etc. • Metadata bundle: core.v1, ext.azuki.v2, etc • Redirection mode: HTTP, DNS • Capabilities themselves do not define the performance characteristics of a CDN, nor should they attempt to provide real-time quality metrics for selecting a dCDN. • The lack of a given capability can prevent delegation, however, support for a given capability may not by iteself be a sufficient criteria for selecting a dCDN.

  3. dCDN Selection Use Cases • It is assumed that business rules are likely to govern the selection of a dCDN, e.g.: • Lowest cost dCDN that supports delivery protocol X, redirection mode Y, and metadata bundle Z. • In this case, “lowest cost” is the quality metric, while capabilities X, Y, and Z define dCDN eligibility. • Lowest latency dCDN that supports delivery protocol X, redirection mode Y, and metadata bundle Z. • In this case, “Lowest latency” is the quality metric, while capabilities X, Y, and Z define dCDN eligibility. • Though quality metrics may be protocol X specific, the decoupling of capability advertisement from quality metric updates simplifies the use cases where quality metrics are negotiated out of band (e.g., lowest cost).

  4. Capability Interface • Capability objects consist of a name, a list of values, and may include an optional footprint. • Footprints are assumed to be global by default. • Footprints may be used to further restrict the capability. • The quality of footprint information is not verified. • Capability objects do not include any quality metrics. • Capabilities are exchanged via RESTful APIs • Capability advertisements use the POST method • Capability retractions use the DELETE method • Re-advertisement for a subset of capabilities is allowed if only a subset of capabilities have changed. • The keyword “ALL” is reserved to simplify retractions.

  5. Next Steps • Decide if metadata bundling and versioning is necessary or if each individual metadata object supported should be advertised independently. • If bundling is necessary, decide if it should be defined as part of the metadata interface, or is bundling of metadata for capabilities advertisement completely orthogonal to the distribution of the actual metadata. • Decide if individual options within a given metadata object definition need to be advertised independently • Decide if quality metric support (not the quality metrics themselves) should be advertised with the capabilities. • Decide if other methods of footprint definition besides ASN/IP (e.g., area code, zip code, GPS, etc.) are necessary. • Decide if protocols need to expand beyond URI scheme, to application layer protocols (e.g., HLS/DASH over HTTP).

More Related