ALTO WG                                                         W. Roome
Internet Draft                                  Alcatel-Lucent Bell Labs
Intended status: Standards Track                                 Y. Yang
                                                                    Yale
Expires April 2014                                      October 21, 2013

                PID Property Extension for ALTO Protocol
                 draft-roome-alto-pid-properties-00.txt

Abstract

   This document extends the Application-Layer Traffic Optimization
   (ALTO) protocol [I-D.ietf-alto-protocol] by defining PID-based
   properties in much the same way that the original ALTO protocol
   defines endpoint-based properties.

Requirement 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 April 24, 2014.

Copyright Notice

   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



Roome, Yang                Expires April 2014                   [Page 1]


Internet Draft            ALTO PID Properties           October 21, 2013


   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.














































Roome, Yang                Expires April 2014                   [Page 2]


Internet Draft            ALTO PID Properties           October 21, 2013


Table of Contents

    1. Introduction
        1.1. ALTO PIDs
        1.2. ALTO Endpoint Properties
        1.3. PID Properties
        1.4. Inheritance Via Nested PIDs
    2. Services
        2.1. Full PID Property Map Service
        2.2. Filtered PID Property Map Service
        2.3. Extension to ALTO Endpoint Property Service
    3.  Security Considerations
    4.  IANA Considerations
    5.  References
        6.1.  Normative References
        6.2.  Informative References


1. Introduction

   1.1. ALTO PIDs

   The ALTO protocol defines a PID (Provider-defined Identifier) as a
   collection of endpoint addresses. Each PID has a name, and the PID's
   address set is defined by one or more endpoint address prefixes
   called CIDRs [RFC4632]. An ALTO server uses PIDs by providing one or
   more Network Maps, each of which is defined by a collection of PIDs.

   PID specifications can overlap. For example, if PID1 is 10.0.0.0/8,
   and PID2 is 10.0.1.0/24, then all endpoints in PID2 are also in PID1.
   However, ALTO requires that an endpoint address be in one, and only
   one, PID. ALTO resolves this ambiguity by saying that if an endpoint
   address matches several CIRDs, the endpoint is in the PID with the
   CIDR with the longest prefix. We refer to this PID as the home PID of
   the endpoint. Thus, for the example, 10.0.1.5 is in PID2, and
   10.0.2.6 in in PID1.

   Although not required by the ALTO protocol, the hierarchical
   structure of the PIDs in a Network Map may reflect the logical
   structure of the network. In particular, although it is not required,
   the endpoints in a PID may be in the same geographical area.

   1.2. ALTO Endpoint Properties

   The ALTO protocol defines endpoint properties as a set of (name,
   value) pairs associated with each selected endpoint address. An ALTO
   server defines those properties, and the ALTO protocol allows a
   client to obtain those properties from a server.



Roome, Yang                Expires April 2014                   [Page 3]


Internet Draft            ALTO PID Properties           October 21, 2013


   1.3. PID Properties

   This document proposes extending the property concept by allowing
   PIDs to have properties. This is useful when the endpoints in a given
   PID share common properties. Examples are "country code", "continent
   code", "ISP", "lat/long bounding box", "endpoint type" (server farm,
   end users, cell data connections, etc).

   1.4. Implicit Inheritance Via Nested PIDs

   In this document, we define PID properties to take advantage of the
   fact that PID definitions can overlap, or nest. That is, an ALTO
   server may define PID1, PID2 and PID3 such that all CIDRs defined in
   PID2 are also covered by the CIDRs in PID1; so are the CIDRs defined
   in PID3. Hence, we say that PID2 and PID3 can be considered "sub-
   PIDs" of PID1.

   To avoid potential issues of "multi-inheritance", for example, when
   PID2 is also a "sub-PID" of PID4, we consider only the case that the
   derived inheritance forms a tree. In other words, for the example
   that PID2 is sub-PID of both PID1 and PID4, then either PID1 is a
   sub-PID of PID4 or vice versa. Hence, we can say uniquely the direct
   parent of a PID. Future ALTO extensions may consider explicit
   definitions of nesting, for example, by specifying that PID1 consists
   of PID2 and PID2, without implicit derivation.

   With nesting, we define that PID2 and PID3 would inherit all
   properties of its ancestors, for example PID1, unless overriden in
   the sub-PIDs. For example, an ALTO server might define continent-
   level PIDs, as well as country-level or region-level sub-PIDs. If the
   ALTO server defines a "continent code" property for the continent-
   level PIDs, the country-level PIDs will automatically inherit that
   property. Such inheritance reduces information redundancy.


   2. Services

   In the interests of simplicity, we will give an overview of the
   proposed services, rather than detailed descriptions.

   2.1. Full PID Property Map Service

   Analogous to ALTO's Full Cost Map Service, a Full PID Map Service
   returns properties defined for all PIDs in a Network Map.

   This is a GET request. The response message is similar to that of
   ALTO's Endpoint Property Service, but with PID names instead of
   endpoint addresses. The IRD entry for the service defines a "prop-



Roome, Yang                Expires April 2014                   [Page 4]


Internet Draft            ALTO PID Properties           October 21, 2013


   types" capability with the names of the properties that this service
   returns, and specifies a "uses" attribute for the Network Map
   defining the PIDs.

   In the interests of limiting the response message size, the Full PID
   Property Map Service would NOT enumerate inherited property values.
   Thus if PID1 defines PROP1, and if PID2 is contained within PID1 and
   does not override the value for PROP1, then the response message
   gives a value for PROP1 in PID1, but not in PID2. In this case the
   client is expected to deduce the inheritance. That is feasible
   because the client has all information needed to do that.

   2.2. Filtered PID Property Map Service

   Analogous to ALTO's Filtered Cost Map Service, a Filtered PID Map
   Service returns a subset of the Full PID Property Map. The client
   specifies the desired property and PID names.

   This is a POST request. The response message is the same as for the
   Full PID Property Map Service. The request message is similar to the
   request message for ALTO's Endpoint Property Service, except with PID
   names instead of endpoint addresses. The IRD entry for the service
   defines a "prop-types" capability with the names of the properties
   this service returns, and specifies a "uses" attribute for the
   Network Map defining the PIDs.

   Unlike the Full Filtered PID Property Service, the Filtered PID
   Property Service would explicitly enumerate inherited property
   values. Thus if PID1 defines PROP1, and if PID2 is contained within
   PID1 and does not override the value for PROP1, then the response
   message includes PID1's value for PROP1 in PID2's properties. This is
   necessary because the Filtered PID Property Map response does not
   give the client enough information to deduce the inherited
   properties. For consistency, the Filtered PID Property Service would
   enumerate inherited properties for a PID even if the client also
   requested properties for all PIDs that containing that PID.

   2.3. Potential Integration with ALTO Endpoint Property Service

   When one considers inheritance and considers that each endpoint
   defines a leaf of the PID inheritance tree, with its direct parent
   being its home PID, then each endpoint will inherit the properties of
   its ancestor PIDs. We propose extending the current Endpoint Property
   Service (EPS) to allow EPS to use PID properties as a default.
   Specifically, if the IRD for an EPS "uses" a Network Map resource,
   then if that EPS does not define a property value for a given
   endpoint, but the PID containing that endpoint does define a value
   for that property, then the EPS will return the PID property. As with



Roome, Yang                Expires April 2014                   [Page 5]


Internet Draft            ALTO PID Properties           October 21, 2013


   the Filtered PID Property Map Service, sub-PIDs would inherit
   property values from higher-level PIDs.

3.  Security Considerations

   There are no security considerations relevant to this document.

4.  IANA Considerations

   No actions are required from IANA as result of the publication of
   this document.

5.  References

   5.1.  Normative References

   [I-D.ietf-alto-protocol] Alimi, R., Penno, R., and Y. Yang, "ALTO
              Protocol", draft-ietf-alto-protocol-20 (work in progress),
              October 2013.

   [RFC4632] Fuller, V. and T. Li, "Classless Inter-domain Routing
              (CIDR): The Internet Address Assignment and Aggregation
              Plan", BCP 122, RFC 4632, August 2006.


   5.2.  Informative References

Authors' Addresses

   Wendy Roome
   Alcatel-Lucent Bell Labs
   600 Mountain Ave, Rm 2B-234
   Murray Hill, NJ 07974
   USA
   Email: w.roome@alcatel-lucent.com

   Y. Richard Yang
   Yale University
   51 Prospect St
   New Haven CT
   USA
   Email: yry@cs.yale.edu









Roome, Yang                Expires April 2014                   [Page 6]