Network Working Group                                       M. Boucadair
Internet Draft                                              C. Jacquenet
Document: draft-jacquenet-ip-fwd-pib-00.txt               France Telecom
Category: Experimental                                      January 2003
Expires July 2003


                An IP Forwarding Policy Information Base
                    <draft-jacquenet-ip-fwd-pib-00.txt>


Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC 2026 [1].

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups. Note that other
   groups may also distribute working documents as Internet-Drafts.
   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".

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

Abstract

   This draft specifies a set of Policy Rule Classes (PRC) for the
   enforcement of an IP forwarding policy by COPS-PR-enabled routers.
   Instances of such classes reside in a virtual information store,
   which is called the IP Forwarding Policy Information Base. The
   corresponding IP forwarding policy provisioning data are intended for
   use by a COPS-PR IP TE Client-Type, and they complement the PRC
   classes that have been defined in the Framework PIB.

Table of Contents

   1.      Introduction................................................2
   2.      Conventions used in this document...........................3
   3.      Changes since the Previous Version..........................3
   4.      PIB Overview................................................3
   5.      The IP Forwarding Policy Information Base...................4
   6.      Security Considerations.....................................9
   7.      References..................................................9
   8.      Acknowledgments............................................10
   9.      Authors' Addresses.........................................10

Jacquenet et al.    Experimental - Expires July 2003            [Page 1]


Internet Draft            An IP Forwarding PIB                 June 2002


   10.     Full Copyright Statement...................................11

1. Introduction

   The deployment of value-added IP services over the Internet has
   become one of the most competing challenges for service providers, as
   well as a complex technical issue.

   Within the context of network resource provisioning and allocation,
   the Common Open Policy Service protocol (COPS, [2]) and its usage for
   the support of Policy Provisioning ([3]) is one of the ongoing
   specification efforts of the Resource Allocation Protocol (rap)
   Working Group of the IETF that should help service providers in
   dynamically enforcing IP routing and traffic engineering policies.

   An IP routing/TE policy consists in appropriately provisioning and
   allocating/de-allocating the switching and the transmission resources
   of an IP network (i.e. the routers and the links that connect these
   routers, respectively), according to e.g. rate, one-way delay, inter-
   packet delay variation, etc.) that have been possibly negotiated
   between the customers and the service providers, and according to (a
   set of)routing metrics, which can also reflect the network
   conditions.

   Thus, the enforcement of IP routing/TE policies yields the need for
   an introduction of a high level of automation for the dynamic
   provisioning of the configuration data that will be taken into
   account by the routers to select the appropriate IP routes.

   Within the context of this document, the actual enforcement of an IP
   forwarding policy is primarily based upon the activation of both
   intra- and inter-domain dynamic routing protocols (e.g. [4], [5])
   that will be activated by the routers to select, install, maintain
   and possibly withdraw IP routes.

   Such routes have been selected so that they comply as much as
   possible with the aforementioned QoS requirements and/or specific
   routing constraints, possibly depending on the type of traffic that
   will be conveyed along them.

   It is therefore necessary to provide the route selection processes
   with the information that will depict the routing policies that are
   to be enforced within a domain and, whenever appropriate, the
   aforementioned constraints and metrics, given the dynamic routing
   protocols actually support traffic engineering capabilities for the
   calculation and the selection of such routes.

   Some of these capabilities are currently being specified in [6] and
   [7] for the OSPF (Open Shortest Path First) and the IS-IS
   (Intermediate System to Intermediate System routing protocol, [8])
   interior routing protocols respectively, while there is a comparable


Jacquenet et al.    Experimental - Expires July 2003            [Page 2]


Internet Draft            An IP Forwarding PIB                 June 2002


   effort for the BGP4 (Border Gateway Protocol, version 4) protocol, as
   described in [9], for example.

   To provide the route selection processes with the aforementioned
   information, one possibility is to use the COPS-PR protocol, together
   with a collection of policy provisioning data that will be stored in
   a virtual information store, called a Policy Information Base.

   This draft describes a collection of Policy Rule Classes that will be
   stored and dynamically maintained in the IP forwarding PIB. The
   "rule" and "role" concepts, which have been defined in [10], are
   adopted by this document to distribute the IP routing policy
   provisioning data over the COPS-PR protocol.

   The corresponding IP forwarding policy provisioning data are intended
   for use by a COPS-PR IP TE Client-Type ([11]), and they complement
   the PRC classes that have been defined in the Framework PIB ([12]).

   This document is organized as follows:

   - Section 4 provides an overview of the organization of the IP
     forwarding PIB,

   - Section 5 provides a description of the PRC classes of the IP
     forwarding PIB, according to the semantics of the Structure of
     Policy Provisioning Information (SPPI, [13]).

2. Conventions used in this document

   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 [14].

3. Changes since the Previous Version

   - The PIB has been reorganized because of the introduction of IGP
     (Interior Gateway Protocol, such as [4]) and BGP (Border Gateway
     Protocol, [5]) Policy Information Bases, so as to allow a better
     granularity in the enforcement of an IP routing/TE policy. This
     reorganization yielded the deletion of the scalability section of
     this draft, which has been inserted in the aforementioned IGP/BGP-
     oriented PIB specifications,

   - The introduction has been slightly reworded,

   - The references section has been updated.

4. PIB Overview

   The dynamic enforcement of an IP forwarding policy relies upon the
   activation of intra- and inter-domain routing protocols that will
   have the ability to take into account configuration information for

Jacquenet et al.    Experimental - Expires July 2003            [Page 3]


Internet Draft            An IP Forwarding PIB                 June 2002


   the computation and the selection of routes, which will comply as
   much as possible with the constraints and requirements that MAY have
   been contractually defined between customers and service providers.

   From this standpoint, this document specifies an IP forwarding PIB
   that mainly aims at storing and maintaining the information related
   to the IP routes that have been installed in the routers' Forwarding
   Information Bases, so that the service providers have the permanent
   knowledge of the network's resources availability.

   As such, this PIB has been designed so that it SHOULD be gracefully
   complemented by PIB modules that will reflect the IGP- and BGP-
   inferred routing policies to be enforced, in terms of cost metrics'
   values to be assigned and updated whenever needed.

   The choice of this PIB organization is basically twofold:

   - Simplify the PIB implementation,

   - Provide the appropriate granularity of policy provisioning data
     that will be manipulated according to the requirements and
     technical choices of service providers.

   From this perspective, the IP forwarding PIB is currently organized
   into the following provisioning classes:

     1. The Forwarding Classes (ipFwdClasses): the information
        contained in these classes is meant to provide a detailed
        description of the IP routes,

     2. The Statistics Classes (ipFwdStatsClasses): the information
        contained in these classes is meant to provide statistics on
        the use of the IP routes currently depicted in the IP
        forwarding PIB.

5. The IP Forwarding Policy Information Base

   IP-FWD-PIB PIB-DEFINITIONS ::= BEGIN

   IMPORTS
        Unsigned32, Integer32, MODULE-IDENTITY,
        MODULE-COMPLIANCE, OBJECT-TYPE, OBJECT-GROUP
               FROM COPS-PR-SPPI
        InstanceId, ReferenceId, Prid, TagId
               FROM COPS-PR-SPPI-TC
        InetAddress, InetAddressType
               FROM INET-ADDRESS-MIB
        Count, TEXTUAL-CONVENTION
               FROM ACCT-FR-PIB-TC
        TruthValue, TEXTUAL-CONVENTION
               FROM SNMPv2-TC
        RoleCombination, PrcIdentifier

Jacquenet et al.    Experimental - Expires July 2003            [Page 4]


Internet Draft            An IP Forwarding PIB                 June 2002


               FROM FRAMEWORK-ROLE-PIB
        SnmpAdminString
               FROM SNMP-FRAMEWORK-MIB;


   ipFwdPib    MODULE-IDENTITY

        SUBJECT-CATEGORIES { tbd }     -- IP TE client-type to be
                                      -- assigned by IANA
        LAST-UPDATED   "200301220900Z"
        ORGANIZATION   "France Telecom"
        CONTACT-INFO   "
                       Mohamed Boucadair
                       France Telecom R & D
                       42, rue des Coutures
                       BP 6243
                       14066 CAEN CEDEX 04
                       France
                       Phone: +33 2 31 75 92 31
                       E-Mail: mohamed.boucadair@francetelecom.com"
        DESCRIPTION
               "The PIB module containing a set of policy rule classes
                that describe the IP routes that have been computed by
                means of routing/TE policy enforcement, as well as
                route traffic statistics."
       REVISION        "2003102000Z"
       DESCRIPTION
               "Initial version."

        ::= { pib tbd } -- tbd to be assigned by IANA

   ipFwdClasses         OBJECT IDENTIFIER ::= { ipFwdPib 1 }
   ipFwdStatsClasses   OBJECT IDENTIFIER ::= { ipFwdPib 2 }

   --
   -- Forwarding classes. The information contained in these classes
   -- is meant to provide a detailed description of the available IP
   -- routes. One table has been specified so far, but there is room
   -- for depicting different kinds of routes, like MPLS (MultiProtocol
   -- Label Switching, ([15]) LSP (Label switched Paths) paths.
   --
   --
   --


   --
   -- The ipFwdTable
   --

   ipFwdTable          OBJECT-TYPE

          SYNTAX        SEQUENCE OF ipRouteEntry

Jacquenet et al.    Experimental - Expires July 2003            [Page 5]


Internet Draft            An IP Forwarding PIB                 June 2002


          PIB-ACCESS   notify
          STATUS        current
          DESCRIPTION
                "This table describes the IP routes that are installed
                in the forwarding tables of the routers."

          ::= { ipFwdClasses 1 }

   ipRouteEntry        OBJECT-TYPE

          SYNTAX        ipRouteEntry
          STATUS        current
          DESCRIPTION
                "A particular route to a particular destination."

          PIB-INDEX    { ipRoutePrid }
          UNIQUENESS   { ipRouteDest,
                          ipRouteMask,
                          ipRoutePhbId,
                          ipRouteNextHopAddress
                         ipRouteNextHopMask
                          ipRouteIfIndex }

          ::= { ipFwdTable 1 }

   ipRouteEntry ::= SEQUENCE {
               ipRoutePrid                    InstanceId,
               ipRouteDestAddrType            InetAddressType,
               ipRouteDest                    InetAddress,
               ipRouteMask                    Unsigned32,
               ipRouteNextHopAddrType         InetAddressType,
               ipRouteNextHopAddress          InetAddress,
               ipRouteNextHopMask             Unsigned32,
               ipRoutePhbId                   Integer32,
               ipRouteOrigin                  Integer32,
               ipRouteIfIndex                 Unsigned32
   }

   ipRoutePrid                OBJECT-TYPE

        SYNTAX                InstanceId
        STATUS                current
        DESCRIPTION
                "An integer index that uniquely identifies this route
                entry among all the route entries."

        ::= { ipRouteEntry 1 }

   ipRouteDestAddrType        OBJECT-TYPE

        SYNTAX                InetAddressType
        STATUS                current

Jacquenet et al.    Experimental - Expires July 2003            [Page 6]


Internet Draft            An IP Forwarding PIB                 June 2002


        DESCRIPTION
                "The address type enumeration value ([16]) used to
                specify the type of a route's destination IP address."

       ::= { ipRouteEntry 2 }

   ipRouteDest          OBJECT-TYPE

        SYNTAX         InetAddress
        STATUS         current
        DESCRIPTION
                "The IP address to match against the packet's
                destination address."

        ::= { ipRouteEntry 3 }

   ipRouteMask          OBJECT-TYPE

        SYNTAX         Unsigned32 (0..128)
        STATUS         current
        DESCRIPTION
                "Indicates the length of a mask for the matching of the
                destination IP address. Masks are constructed by
                setting bits in sequence from the most-significant bit
                downwards for ipRouteMask bits length. All other bits
                in the mask, up to the number needed to fill the length
                of the address ipRouteDest are cleared to zero.  A zero
                bit in the mask then means that the corresponding bit
                in the address always matches."

        ::= { ipRouteEntry 4 }

   ipRouteNextHopAddrType      OBJECT-TYPE

        SYNTAX                InetAddressType
        STATUS                current
        DESCRIPTION
                "The address type enumeration value used to specify the
                type of the next hop's IP address."

       ::= { ipRouteEntry 5 }

   ipRouteNextHopAddress       OBJECT-TYPE

        SYNTAX                 InetAddress
        STATUS                 current
        DESCRIPTION
                "On remote routes, the address of the next router en
                route; Otherwise, 0.0.0.0."

        ::= { ipRouteEntry 6 }


Jacquenet et al.    Experimental - Expires July 2003            [Page 7]


Internet Draft            An IP Forwarding PIB                 June 2002


   ipRouteNextHopMask         OBJECT-TYPE

        SYNTAX                Unsigned32 (0..128)
        STATUS                current
        DESCRIPTION
                "Indicates the length of a mask for the matching of the
                next hop's IP address. Masks are constructed by setting
                bits in sequence from the most-significant bit
                downwards for ipRouteNextHopMask bits length. All other
                bits in the mask, up to the number needed to fill the
                length of the address ipRouteNextHop are cleared to
                zero.  A zero bit in the mask then means that the
                corresponding bit in the address always matches."

        ::= { ipRouteEntry 7 }

   ipRoutePhbId        OBJECT-TYPE

        SYNTAX          Integer32 (-1 | 0..63)
        STATUS          current
        DESCRIPTION
                "The binary encoding that uniquely identifies a Per Hop
                Behaviour (PHB, [17]) or a set of PHBs associated to
                the DiffServ Code Point (DSCP) marking of the IP
                datagrams that will be conveyed along this route. A
                value of -1 indicates that a specific PHB ID value has
                not been defined, and thus, all PHB ID values are
                considered a match."

        ::= { ipRouteEntry 8 }

   ipRouteOrigin       OBJECT-TYPE

        SYNTAX INTEGER {
                       OSPF (0)
                       IS-IS (1)
                       BGP (2)
                       STATIC (3)
                       OTHER (4)
               }
        STATUS         current
        DESCRIPTION
                "The value indicates the origin of the route. Either
                the route has been computed by OSPF, by IS-IS,
                announced by BGP4, is static, or else."

        ::= { ipRouteEntry 9 }

   ipRouteIfIndex      OBJECT-TYPE

        SYNTAX          Unsigned32 (0..65535)
        STATUS          current

Jacquenet et al.    Experimental - Expires July 2003            [Page 8]


Internet Draft            An IP Forwarding PIB                 June 2002


        DESCRIPTION
                "The ifIndex value that identifies the local interface
                through which the next hop of this route is
                accessible."

        ::= { ipRouteEntry 10 }

   --
   -- Route statistics classes. The information contained
   -- in the yet-to-be defined tables aim at reporting statistics about
   -- COPS control traffic, route traffic and potential errors. The
   -- next version of the draft will provide a first table that will be
   -- based upon the use of the "count" clause.
   --
   --

   END

6. Security Considerations

   The traffic engineering policy provisioning data as they are
   described in this PIB will be used for configuring the appropriate
   network elements that will be involved in the dynamic enforcement of
   these routing and traffic engineering policies, by means of a COPS-PR
   communication that will convey this information.

   The function of dynamically provisioning network elements with such
   configuration information implies that only an authorized COPS-PR
   communication take place.

   From this perspective, this draft does not introduce any additional
   security issues other than those that have been identified in the
   COPS-PR specification, and it is therefore recommended that the IPSec
   ([18]) protocol suite be used to secure the above-mentioned
   authorized communication.

7. References

   [1]  Bradner, S., "The Internet Standards Process -- Revision 3",
        BCP 9, RFC 2026, October 1996.
   [2]  Boyle, J., Cohen, R., Durham, D., Herzog, S., Raja R., Sastry
        A., "The COPS (Common Open Policy Service) Protocol", RFC 2748,
        Proposed Standard, January 2000.
   [3]  Ho Chan, K., Durham, D., Gai, S., Herzog, S., McLoghrie, K.,
        Reichmeyer, F., Seligson, J., Smith, A., Yavatkar, R., "COPS
        Usage for Policy Provisioning (COPS-PR)", RFC 3084, March 2001.
   [4]  Moy J.,"OSPF Version 2", RFC 2328, April 1998.
   [5]  Rekhter Y., Li T., "A Border Gateway Protocol 4 (BGP-4)", RFC
        1771, March 1995.




Jacquenet et al.    Experimental - Expires July 2003            [Page 9]


Internet Draft            An IP Forwarding PIB                 June 2002



   [6]  Katz, D., Yeung, D., Kompella, K., "Traffic Engineering
        Extensions to OSPF", draft-katz-yeung-ospf-traffic-09.txt, Work
        in Progress, October 2002.
   [7]  Smit, H., Li, T., "IS-IS Extensions for Traffic Engineering",
        draft-ietf-isis-traffic-04.txt, Work in Progress, December
        2002.
   [8]  ISO/IEC 10589, "Intermediate System to Intermediate System,
        Intra-Domain Routing Exchange Protocol for use in Conjunction
        with the Protocol for Providing the Connectionless-mode Network
        Service (ISO 8473)", June 1992.
   [9]  Jacquenet, C., "Providing Quality of Service Indication by the
        BGP-4 Protocol: the QOS_NLRI Attribute", draft-jacquenet-qos-
        nrli-04.txt, Work in Progress, March 2002.
   [10] Moore, B. et al., "Policy Core Information Model -- Version 1
        Specification", RFC 3060, February 2001.
   [11] Jacquenet, C., "A COPS client-type for IP traffic engineering",
        draft-jacquenet-ip-te-cops-04.txt, Work in Progress, January
        2003.
   [12] Fine, M., et al., "Framework Policy Information Base", draft-
        ietf-rap-frameworkpib-09.txt, Work in Progress, June 2002.
   [13] McLoghrie, K., et al., "Structure of Policy Provisioning
        Information (SPPI)", RFC 3159, August 2001.
   [14] Bradner, S., "Key words for use in RFCs to Indicate Requirement
        Levels", BCP 14, RFC 2119, March 1997
   [15] Rosen, E., et al., "Multiprotocol Label Switching
        Architecture", RFC 3031, January 2001.
   [16] Daniele, M., Haberman, B., Routhier, S., Schoenwaelder, J.,
        "Textual Conventions for Internet Network Addresses", RFC 3291,
        May 2002.
   [17] Black, D., Brim, S., Carpenter, B., Le Faucheur, F., "Per Hop
        Behaviour Identification Codes", RFC 3140, June 2001.
   [18] Kent, S., Atkinson, R., "Security Architecture for the Internet
        Protocol", RFC 2401, November 1998.

8. Acknowledgments

   Part of this work is funded by the European Commission, within the
   context of the MESCAL (Management of End-to-End Quality of Service
   Across the Internet At Large, http://www.mescal.org) project, which
   is itself part of the IST (Information Society Technologies) research
   program.

   The author would also like to thank all the partners of the MESCAL
   project for the fruitful discussions that have been conducted so far
   within the context of the traffic engineering specification effort of
   the project.


9. Authors' Addresses

   Mohamed Boucadair

Jacquenet et al.    Experimental - Expires July 2003           [Page 10]


Internet Draft            An IP Forwarding PIB                 June 2002


   France Telecom R & D
   DMI/SIR
   42, rue des Coutures
   BP 6243
   14066 Caen Cedex 4
   France
   Phone: +33 2 31 75 92 31
   Email: mohamed.boucadair@francetelecom.com

   Christian Jacquenet
   France Telecom Long Distance
   3, avenue François Château
   CS 36901
   35069 Rennes CEDEX
   France
   Phone: +33 2 99 87 63 31
   Email: christian.jacquenet@francetelecom.com

10. Full Copyright Statement

   Copyright (C) The Internet Society (2003). All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist its implementation may be prepared, coed, published and
   distributed, in whole or in part, without restriction of any kind,
   provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works. However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.








Jacquenet et al.    Experimental - Expires July 2003           [Page 11]