One document matched: draft-jenkins-cdni-names-00.txt
Network Working Group B. Niven-Jenkins
Internet-Draft Velocix (Alcatel-Lucent)
Intended status: Informational February 8, 2011
Expires: August 12, 2011
Thoughts on Naming and Referencing of Data Objects within Content
Distribution Network Interconnection (CDNI) solutions
draft-jenkins-cdni-names-00
Abstract
As part of the development of protocols and solutions for CDNI it
will be necessary to agree on common mechanisms for how to identify
and name the data objects that are to be interchanged between
interconnected CDNs, as well as how to describe which policy should
be used when doing so.
This document presents some thoughts on the naming and referencing of
data types/objects within a CDNI solution.
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 August 12, 2011.
Copyright Notice
Copyright (c) 2011 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
Niven-Jenkins Expires August 12, 2011 [Page 1]
Internet-Draft Naming in CDNI solutions February 2011
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 . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Data types that require names in a CDNI solution . . . . . . . 3
3. Classes of names in a CDNI solution . . . . . . . . . . . . . . 4
4. Mapping CDNI data types to Classes of CDNI name . . . . . . . . 5
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7
Niven-Jenkins Expires August 12, 2011 [Page 2]
Internet-Draft Naming in CDNI solutions February 2011
1. Introduction
[I-D.jenkins-cdni-problem-statement] introduces the Problem scope for
CDN Interconnection (CDNI). [I-D.bertrand-cdni-use-cases] introduces
some use cases that CDNI solutions should address.
As part of the development of protocols and solutions for CDNI it
will be necessary to agree on common mechanisms for how to identify
and name the data objects that are to be interchanged between
interconnected CDNs, as well as how to describe which policy should
be used when doing so.
This document presents some thoughts on the naming and referencing of
data types/objects within a CDNI solution.
Section 2 describes abstract data types required within CDNI
solutions. Section 3 introduces different categories (classes) of
CDNI names. Section 4 provides a mapping of the different CDNI data
types to the different classes of CDNI names.
1.1. Terminology
Within this document the terms 'name' and 'reference' are used
interchangeably.
This document defines the following terms:
Data type: An abstract classification which identifiies the possible
values of the data and the possible operations that can be performed
on that data.
Data object: An actual instance of a data type which is assigned a
name. Therefore a name can dereference to a data object which is an
instance of a particular data type.
2. Data types that require names in a CDNI solution
Regardless of the specific protocols or solutions that are defined
and (re-)used to solve the CDNI problem space and address the CDNI
requirements, the data types required to implement CDNI remain
broadly the same at an abstract level. Outlined below is a list of
such abstract data types which will need to be referenced (i.e.
referred to by their 'names') either within CDNI data objects or
within the CDNI APIs along with a short description of what they
represent and contain.
Note: This is not meant to be an exhaustive list of all CDNI data
Niven-Jenkins Expires August 12, 2011 [Page 3]
Internet-Draft Naming in CDNI solutions February 2011
types/objects just those that need to be explicitly referenced by
'name'.
CDNI Metadata: CDNI Metadata objects are used to describe various
properties about content to be distributed & delivered. They make
reference to other CDNI Metadata objects (e.g. distribution/delivery
policies), delivery and acquisition protocols, IP address locations,
events and log properties.
IP address locations: IP address locations are used to group sets of
IP addresses together. They can be used to group IP addresses into
geographical locations or other "well known" sets (e.g. "Anonymous
proxies") as well as to custom sets for example "CDN Operator X's
Quality Assurance team", "ISP Y's IP blocks" etc.
Delivery & Acquisition Protocols: Delivery and Acquisition protocols
are used to pass by reference particular delivery/acquisition feature
sets (transport & application protocols and combinations of protocol
options) but do not typically dereference to a specific data object.
CDN capabilities: CDN capabilities are used to pass by reference the
specific capabilities and features advertised by a CDN other than
delivery and acquisition protocols and other capability descriptors.
They do not typically dereference to a specific data object.
CDN references: CDN references are used to uniquely identify a
particular CDN, for example as part of a loop detection mechanism.
They do not typically dereference to a specific data object.
Events: Events are used to pass by reference specific "triggers"
(e.g. content delivery started/paused/stopped) that should (or have)
caused the generation of a log record. They do not typically
dereference to a specific data object.
Log properties: Log properties are used to reference specific items
of information that should be passed (or have been passed) in a log
record generated by an Event. They do not typically dereference to a
specific data object.
3. Classes of names in a CDNI solution
From the list of CDNI data types that require names in section
Section 2 it is immediately obvious that there are at least two
classes of CDNI names in CDNI solutions:
Niven-Jenkins Expires August 12, 2011 [Page 4]
Internet-Draft Naming in CDNI solutions February 2011
Class 1: CDNI names that dereference to a CDNI data object(s).
Class 2: CDNI names that do not dereference to a CDNI data object(s)
but rather are used within an implementation to influence
the code path taken (e.g. what properties to include in a
log record)
Furthermore in order to reduce the amount of information that needs
to be distributed between CDNs consensus may be reached that for
certain data types/objects there is value in having a well defined
name but allowing each CDN to apply its own value to that name. In
such cases, Class 1 could be further subdivided into:
Class 1a: CDNI names that dereference to a specific CDN data object
whose value is defined by the owner of the name (e.g. "IP
addresses that map to CDN Operator X's Quality Assurance
team").
Class 1b: CDNI names that dereference to a CDN data object whose
value is independently defined by each CDN (e.g. "IP
addresses that map to ISO 3166 Country Code GB" or "IP
addresses that are assigned to AS47712").
CDNI name class 1a requires a global namespace to be used as the
names used must be globally unique to avoid two CDNs using the same
CDNI name to refer to different underlying values within the
referenced data objects. However there is no requirement for prior
agreement between CDNs (beyond partitioning of the CDNI namespace) on
the names to be used by each CDN.
CDNI name classes 1a and 2 require a global namespace to be used and
furthermore prior agreement (i.e. specification) is required of the
semantics of each CDNI name because these classes of CDNI names must
be interpreted in the same manner by all CDNs in order to ensure
interoperability between different CDNI implementations and different
interconnected CDNs.
4. Mapping CDNI data types to Classes of CDNI name
The table below presents a mapping between the CDNI data types
described in Section 2 and the CDNI name classes introduced in
Section 3.
Niven-Jenkins Expires August 12, 2011 [Page 5]
Internet-Draft Naming in CDNI solutions February 2011
+----------------------------------+-------------+
| CDNI data type | Class |
+----------------------------------+-------------+
| CDNI Metadata | 1a |
| IP address location | 1a or 1b(*) |
| Delivery & Acquisition protocols | 2 |
| CDN capabilities | 2 |
| CDN references | 2 |
| Events | 2 |
| Log properties | 2 |
+----------------------------------+-------------+
(*) Whether an IP address location is of class 1a or 1b will depend
on the specific semantics of the name being used (e.g. which part of
the CDNI IP address location namespace the name being used belongs
to.
5. IANA Considerations
This document makes no specific request of IANA.
Note to RFC Editor: this section may be removed on publication as an
RFC.
6. Security Considerations
When CDN Operators are assigning names of class 1a to data objects
they have created care should be taken not to expose sensitive
private or sensitive information that would otherwise have not been
revealed. If each operator is allocated their own space within a
larger global namespace then they should be free to define arbitrary
mappings between names in their part of the namespace and the actual
underlying data objects that result from those names being
dereferenced.
7. Acknowledgements
The motivation for this document came out of an offline discussion
with Francois Le Faucheur.
8. References
Niven-Jenkins Expires August 12, 2011 [Page 6]
Internet-Draft Naming in CDNI solutions February 2011
8.1. Normative References
8.2. Informative References
[I-D.bertrand-cdni-use-cases]
Bertrand, G., Stephan, E., Watson, G., Burbridge, T., and
P. Eardley, "Use Cases for Content Distribution Network
Interconnection", draft-bertrand-cdni-use-cases-01 (work
in progress), January 2011.
[I-D.jenkins-cdni-problem-statement]
Niven-Jenkins, B., Faucheur, F., and N. Bitar, "Content
Distribution Network Interconnection (CDNI) Problem
Statement", draft-jenkins-cdni-problem-statement-01 (work
in progress), January 2011.
Author's Address
Ben Niven-Jenkins
Velocix (Alcatel-Lucent)
326 Cambridge Science Park
Milton Road, Cambridge CB4 0WG
UK
Email: ben@velocix.com
Niven-Jenkins Expires August 12, 2011 [Page 7]
| PAFTECH AB 2003-2026 | 2026-04-22 21:14:41 |