tech-invite   World Map
3GPP     Specs     Glossaries     UICC       IETF     RFCs     Groups     SIP     ABNFs       T+       Search     Home

RFC 3644

 
 
 

Policy Quality of Service (QoS) Information Model

Part 3 of 3, p. 48 to 73
Prev RFC Part

 


prevText      Top      Up      ToC       Page 48 
8.  Class Definitions: Inheritance Hierarchy

   The following sections define object classes that are specified by
   QPIM.

8.1.  The Class QoSPolicyDiscardAction

   This class is used to specify that packets should be discarded.  This
   is the same as stating that packets should be denied forwarding.  The
   class definition is as follows:

   NAME           QoSPolicyDiscardAction
   DESCRIPTION    This action specifies that packets should be
                  discarded.
   DERIVED FROM   PolicyAction (defined in [PCIM])
   ABSTRACT       FALSEFALSE
   PROPERTIES     None

8.2.  The Class QoSPolicyAdmissionAction

   This class is the base class for performing admission decisions based
   on a comparison of a meter measuring the temporal behavior of a flow
   or a set of flow with a traffic profile.  The qpAdmissionScope
   property controls whether the comparison is done per flow or per
   class (of flows).  Only packets that conform to the traffic profile
   are admitted for further processing; other packets are discarded.
   The class definition is as follows:

   NAME           QoSPolicyAdmissionAction
   DESCRIPTION    This action controls admission decisions based on
                  comparison of a meter to a traffic profile.
   DERIVED FROM   PolicyAction (defined in [PCIM])
   ABSTRACT       FALSEFALSE
   PROPERTIES     qpAdmissionScope

8.2.1.  The Property qpAdmissionScope

   This attribute specifies whether the admission decision is done per
   flow or per the entire class of flows defined by the rule condition.
   If the scope is "flow", the actual or requested rate of each flow is
   compared against the traffic profile.  If the scope is set to
   "class", the aggregate actual or requested rate of all flows matching
   the rule condition is measured against the traffic profile.  The
   property is defined as follows:

Top      Up      ToC       Page 49 
   NAME         qpAdmissionScope
   DESCRIPTION  This property specifies whether the admission decision
                is done per flow or per the entire class of flows.
   SYNTAX       Integer
   VALUE        This is an enumerated integer.  A value of 0 specifies
                that admission is done on a per-flow basis, and a value
                of 1 specifies that admission is done on a per-class
                basis.

8.3.  The Class QoSPolicyPoliceAction

   This is used for defining policing actions (i.e., those actions that
   restrict traffic based on a comparison with a traffic profile).
   Using the three associations QoSPolicyConformAction,
   QoSPolicyExceedAction and QoSPolicyViolateAction, it is possible to
   specify different actions to take based on whether the traffic is
   conforming, exceeding, or violating a traffic profile.  The traffic
   profile is specified in a subclass of the QoSPolicyTrfcProf class.
   The class definition is as follows:

   NAME         QoSPolicyPoliceAction
   DESCRIPTION  This action controls the operation of policers.  The
                rate of flows is measured against a traffic profile.
                The actions that need to be performed on conforming,
                exceeding and violating traffic are indicated using
                the conform, exceed and violate action associations.
   DERIVED FROM QoSPolicyAdmissionAction (defined in this document)
   ABSTRACT     FALSEFALSE
   PROPERTIES   None

8.4.  The Class  QoSPolicyShapeAction

   This class is used for defining shaping actions.  Shapers are used to
   delay some or all of the packets in a traffic stream in order to
   bring a particular traffic stream into compliance with a given
   traffic profile.  The traffic profile is specified in a subclass of
   the QoSPolicyTrfcProf class.  The class definition is as follows:

   NAME         QoSPolicyShapeAction
   DESCRIPTION  This action indicate that traffic should be shaped to be
                conforming with a traffic profile.
   DERIVED FROM QoSPolicyAdmissionAction (defined in this document)
   ABSTRACT     FALSEFALSE
   PROPERTIES   None

Top      Up      ToC       Page 50 
8.5.  The Class QoSPolicyRSVPAdmissionAction

   This class determines whether to accept or reject a given RSVP
   request by comparing the RSVP request's TSPEC or RSPEC parameters
   against the associated traffic profile and/or by enforcing the pre-
   set maximum sessions limit.  The traffic profile is specified in the
   QoSPolicyIntServTrfcProf class.  This class inherits the
   qpAdmissionScope property from its superclass.  This property
   specifies whether admission should be done on a per-flow or per-class
   basis.  If the traffic profile is not larger than or equal to the
   requested reservation, or to the sum of the admitted reservation
   merged with the requested reservation, the result is a deny decision.
   If no traffic profile is specified, the assumption is that all
   traffic can be admitted.

   The class definition is as follows:

   NAME         QoSPolicyRSVPAdmissionAction
   DESCRIPTION  This action controls the admission of RSVP requests.
                Depending on the scope, either a single RSVP request or
                the total admitted RSVP requests matching the conditions
                are compared against a traffic profile.
   DERIVED FROM QoSPolicyAdmissionAction (defined in this document)
   ABSTRACT     FALSEFALSE
   PROPERTIES   qpRSVPWarnOnly, qpRSVPMaxSessions

8.5.1.  The Property qpRSVPWarnOnly

   This property is applicable when fulfilling ("admitting") an RSVP
   request would violate the policer (traffic profile) limits or when
   the maximum number session would be exceeded (or both).

   When this property is set to TRUE, the RSVP request is admitted in
   spite of the violation, but an RSVP error message carrying a warning
   is sent to the originator (sender or receiver).  When set to FALSE,
   the request would be denied and an error message would be sent back
   to the originator.  So the meaning of the qpWarnOnly flag is: Based
   on property's value (TRUE or FALSE), determine whether to admit but
   warn the originator that the request is in violation or to deny the
   request altogether (and send back an error).

   Specifically, a PATHERR (in response to a Path message) or a RESVERR
   (in response of a RESV message) will be sent.  This follows the COPS
   for RSVP send error flag in the Decision Flags object.  This property
   is defined as follows:

Top      Up      ToC       Page 51 
   NAME      qpRSVPWarnOnly
   SYNTAX    Boolean
   Default   FALSE
   VALUE     The value TRUE means that the request should be admitted
             AND an RSVP warning message should be sent to the
             originator.  The value of FALSE means that the request
             should be not admitted and an appropriate error message
             should be sent back to the originator of the request.

8.5.2.  The Property qpRSVPMaxSessions

   This attribute is used to limit the total number of RSVP requests
   admitted for the specified class of traffic.  For this property to be
   meaningful, the qpAdmissionScope property must be set to class.  The
   definition of this property is as follows:

   NAME     qpRSVPMaxSessions
   SYNTAX   Integer
   VALUE    Must be greater than 0.

8.6.  The Class QoSPolicyPHBAction

   This class is a base class that is used to define the per-hop
   behavior that is to be assigned to behavior aggregates.  It defines a
   common property, qpMaxPacketSize, for use by its subclasses
   (QoSPolicyBandwidthAction and QoSPolicyCongestionControlAction).  The
   class definition is as follows:

   NAME           QoSPolicyPHBAction
   DESCRIPTION    This action controls the Per-Hop-Behavior provided to
                  behavior aggregates.
   DERIVED FROM   PolicyAction  (defined in [PCIM])
   ABSTRACT       TRUE
   PROPERTIES     qpMaxPacketSize

8.6.1.  The Property qpMaxPacketSize

   This property specifies the maximum packet size in bytes, of packets
   in the designated flow.  This attribute is used in translation of
   QPIM attributes to QoS mechanisms used within a PEP.  For example,
   queue length may be measured in bytes, while the minimum number of
   packets that should be kept in a PEP is defined within QPIM in number
   of packets.  This property is defined as follows:

   NAME       qpMaxPacketSize
   SYNTAX     Integer
   Value      Must be greater than 0

Top      Up      ToC       Page 52 
8.7.  The Class QoSPolicyBandwidthAction

   This class is used to control the bandwidth, delay, and forwarding
   behavior of a PHB.  Its class definition is as follows:

   NAME           QoSPolicyBandwidthAction
   DESCRIPTION    This action controls the bandwidth, delay, and
                  forwarding characteristics of the PHB.
   DERIVED FROM   QoSPolicyPBHAction (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     qpForwardingPriority, qpBandwidthUnits,
                  qpMinBandwdith, qpMaxBandwidth, qpMaxDelay,
                  qpMaxJitter, qpFairness

8.7.1.  The Property qpForwardingPriority

   This property defines the forwarding priority for this set of flows.
   A non-zero value indicates that preemptive forwarding is required.
   Higher values represent higher forwarding priority.  This property is
   defined as follows:

   NAME        qpForwardingPriority
   SYNTAX      Integer
   VALUE       Must be non-negative.  The value 0 means that preemptive
               forwarding is not required.  A positive value indicates
               the priority that is to be assigned for this (set of)
               flow(s).  Larger values represent higher priorities.

8.7.2.  The Property qpBandwidthUnits

   This property defines the units that the properties qpMinBandwidth
   and qpMaxBandwidth have.  Bandwidth can either be defined in bits/sec
   or as a percentage of the available bandwidth or scheduler resources.
   This property is defined as follows:

   NAME        qpBandwidthUnits
   SYNTAX      Integer
   VALUE       Two values are possible.  The value of 0 is used to
               specify units of bits/sec, while the value of 1 is used
               to specify units as a percentage of the available
               bandwidth.  If this property indicates that the bandwidth
               units are percentages, then each of the bandwidth
               properties expresses a whole-number percentage, and hence
               its maximum value is 100.

Top      Up      ToC       Page 53 
8.7.3.  The Property qpMinBandwidth

   This property defines the minimum bandwidth that should be reserved
   for this class of traffic.  Both relative (i.e., a percentage of the
   bandwidth) and absolute (i.e., bits/second) values can be specified
   according to the value of the qpBandwidthUnits property.  This
   property is defined as follows:

   NAME        qpMinBandwidth
   SYNTAX      Integer
   VALUE       The value must be greater than 0.  If the property
               qpMaxBandwidth is defined, then the value of
               qpMinBandwidth must be less than or equal to the value of
               qpMaxBandwidth.

8.7.4.  The Property qpMaxBandwidth

   This property defines the maximum bandwidth that should be allocated
   to this class of traffic.  Both relative (i.e., a percentage of the
   bandwidth)and absolute (i.e., bits/second) values can be specified
   according to the value of the qpBandwidthUnits property.  This
   property is defined as follows:

   NAME        qpMaxBandwidth
   SYNTAX      Integer
   VALUE       The value must be greater than 0.  If the property
               qpMaxBandwidth is defined, then the value of
               qpMinBandwidth must be less than or equal to the value of
               qpMaxBandwidth.

8.7.5.  The Property qpMaxDelay

   This property defines the maximal per-hop delay that traffic of this
   class should experience while being forwarded through this hop.  The
   maximum delay is measured in microseconds.  This property is defined
   as follows:

   NAME        qpMaxDelay
   SYNTAX      Integer (microseconds)
   VALUE       The value must be greater than 0.

8.7.6.  The Property qpMaxJitter

   This property defines the maximal per-hop delay variance that traffic
   of this class should experience while being forwarded through this
   hop. The maximum jitter is measured in microseconds.  This property
   is defined as follows:

Top      Up      ToC       Page 54 
   NAME        qpMaxJitter
   SYNTAX      Integer (microseconds)
   VALUE       The value must be greater than 0.

8.7.7.  The Property qpFairness

   This property defines whether fair queuing is required for this class
   of traffic.  This property is defined as follows:

   NAME        qpFairness
   SYNTAX      Boolean
   VALUE       The value of FALSE means that fair queuing is not
               required for this class of traffic, while the value of
               TRUE means that fair queuing is required for this class
               of traffic.

8.8.  The Class QoSPolicyCongestionControlAction

   This class is used to control the characteristics of the congestion
   control algorithm being used.  The class definition is as follows:

   NAME         QoSPolicyCongestionControlAction
   DESCRIPTION  This action control congestion control characteristics
                of the PHB.
   DERIVED FROM QoSPolicyPBHAction (defined in this document)
   ABSTRACT     FALSE
   PROPERTIES   qpQueueSizeUnits, qpQueueSize, qpDropMethod,
                qpDropThresholdUnits, qpDropMinThresholdValue,
                qpDropMaxThresholdValue

8.8.1.  The property qpQueueSizeUnits

   This property specifies the units in which the qpQueueSize attribute
   is measured.  The queue size is measured either in number of packets
   or in units of time.  The time interval specifies the time needed to
   transmit all packets within the queue if the link speed is dedicated
   entirely to transmission of packets within this queue.  The property
   definition is:

   NAME        qpQueueSizeUnits
   SYNTAX      Integer
   VALUE       This property can have two values.  If the value is set
               to 0, then the unit of measurement is number of packets.
               If the value is set to 1, then the unit of measurement is
               milliseconds.

Top      Up      ToC       Page 55 
8.8.2.  The Property qpQueueSize

   This property specifies the maximum queue size in packets or in
   milliseconds, depending on the value of the qpQueueSizeUnits (0
   specifies packets, and 1 specifies milliseconds).  This property is
   defined as follows:

   NAME        qpQueueSize
   SYNTAX      Integer
   VALUE       This value must be greater than 0.

8.8.3.  The Property qpDropMethod

   This property specifies the congestion control drop algorithm that
   should be used for this type of traffic.  This property is defined as
   follows:

   NAME        qpDropMethod
   SYNTAX      Integer
   VALUES      Three values are currently defined.  The value 0
               specifies a random drop algorithm, the value 1 specifies
               a tail drop algorithm, and the value 2 specifies a head
               drop algorithm.

8.8.4.  The Property qpDropThresholdUnits

   This property specifies the units in which the two properties
   qpDropMinThresholdValue and qpDropMaxThresholdValue are measured.
   Thresholds can be measured either in packets or as a percentage of
   the available queue sizes.  This property is defined as follows:

   NAME        qpDropThresholdUnits
   SYNTAX      Integer
   VALUES      Three values are defined.  The value 0 defines the units
               as number of packets, the value 1 defines the units as a
               percentage of the queue size and the value 2 defines the
               units in milliseconds.  If this property indicates that
               the threshold units are percentages, then each of the
               threshold properties expresses a whole-number percentage,
               and hence its maximum value is 100.

8.8.5.  The Property qpDropMinThresholdValue

   This property specifies the minimum number of queuing and buffer
   resources that should be reserved for this class of flows.  The
   threshold can be specified as either relative (i.e., a percentage) or
   absolute (i.e., number of packets or millisecond) value according to
   the value of the qpDropThresholdUnits property.  If this property

Top      Up      ToC       Page 56 
   specifies a value of 5 packets, then enough buffer and queuing
   resources should be reserved to hold 5 packets before running the
   specified congestion control drop algorithm.  This property is
   defined as follows:

   NAME        qpDropMinThresholdValue
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0.  If the
               property qpDropMaxThresholdValue is defined, then the
               value of the qpDropMinThresholdValue property must be
               less than or equal to the value of the
               qpDropMaxThresholdValue property.

8.8.6.  The Property qpDropMaxThresholdValue

   This property specifies the maximum number of queuing and buffer
   resources that should be reserved for this class of flows.  The
   threshold can be specified as either relative (i.e., a percentage) or
   absolute (i.e., number of packets or milliseconds) value according to
   the value of the qpDropThresholdUnits property.  Congestion Control
   droppers should not keep more packets than the value specified in
   this property.  Note, however, that some droppers may calculate queue
   occupancy averages, and therefore the actual maximum queue resources
   should be larger.  This property is defined as follows:

   NAME        qpDropMaxThresholdValue
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0.  If the
               property qpDropMinThresholdValue is defined, then the
               value of the qpDropMinThresholdValue property must be
               less than or equal to the value of the
               qpDropMaxThresholdValue property.

8.9.  The Class QoSPolicyTrfcProf

   This is an abstract base class that models a traffic profile.
   Traffic profiles specify the maximum rate parameters used within
   admission decisions.  The association
   QoSPolicyTrfcProfInAdmissionAction binds the admission decision to
   the traffic profile.  The class definition is as follows:

   NAME          QoSPolicyTrfcProf
   DERIVED FROM  Policy (defined in [PCIM])
   ABSTRACT      TRUE
   PROPERTIES    None

Top      Up      ToC       Page 57 
8.10.  The Class QoSPolicyTokenBucketTrfcProf

   This class models a two- or three-level Token Bucket traffic profile.
   Additional profiles can be modeled by cascading multiple instances of
   this class (e.g., by connecting the output of one instance to the
   input of another instance).  This traffic profile carries the policer
   or shaper rate values to be enforced on a flow or a set of flows.
   The class definition is as follows:

   NAME          QoSPolicyTokenBucketTrfcProf
   DERIVED FROM  QoSPolicyTrfcProf (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    qpTBRate, qpTBNormalBurst, qpTBExcessBurst

8.10.1.  The Property qpTBRate

   This is a non-negative integer that defines the token rate in
   kilobits per second.  A rate of zero means that all packets will be
   out of profile.  This property is defined as follows:

   NAME        qpTBRate
   SYNTAX      Integer
   VALUE       This value must be greater than to 0

8.10.2.  The Property qpTBNormalBurst

   This property is an integer that defines the normal size of a burst
   measured in bytes.  This property is defined as follows:

   NAME        qpTBNormalBurst
   SYNTAX      Integer
   VALUE       This value must be greater than to 0

8.10.3.  The Property qpTBExcessBurst

   This property is an integer that defines the excess burst size
   measured in bytes.  This property is defined as follows:

   NAME        qpTBExcessBurst
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to
               qpTBNormalBurst

8.11.  The Class QoSPolicyIntServTrfcProf

   This class represents an IntServ traffic profile.  Values of IntServ
   traffic profiles are compared against Traffic specification (TSPEC)
   and QoS Reservation (FLOWSPEC) requests carried in RSVP requests.

Top      Up      ToC       Page 58 
   The class definition is as follows:

   NAME          QoSPolicyIntServTrfcProf
   DERIVED FROM  QoSPolicyTrfcProf (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    qpISTokenRate, qpISPeakRate, qpISBucketSize,
                 qpISResvRate, qpISResvSlack, qpISMinPolicedUnit,
                 qpISMaxPktSize

8.11.1.  The Property qpISTokenRate

   This property is a non-negative integer that defines the token rate
   parameter, measured in kilobits per second.  This property is defined
   as follows:

   NAME        qpISTokenRate
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.2.  The Property qpISPeakRate

   This property is a non-negative integer that defines the peak rate
   parameter, measured in kilobits per second.  This property is defined
   as follows:

   NAME        qpISPeakRate
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.3.  The Property qpISBucketSize

   This property is a non-negative integer that defines the token bucket
   size parameter, measured in bytes.  This property is defined as
   follows:

   NAME        qpISBucketSize
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.4.  The Property qpISResvRate

   This property is a non-negative integer that defines the reservation
   rate (R-Spec) in the RSVP guaranteed service reservation.  It is
   measured in kilobits per second.  This property is defined as
   follows:

Top      Up      ToC       Page 59 
   NAME        qpISResvRate
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.5.  The Property qpISResvSlack

   This property is a non-negative integer that defines the RSVP slack
   term in the RSVP guaranteed service reservation.  It is measured in
   microseconds.  This property is defined as follows:

   NAME        qpISResvSlack
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.6.  The Property qpISMinPolicedUnit

   This property is a non-negative integer that defines the minimum RSVP
   policed unit, measured in bytes.  This property is defined as
   follows:

   NAME        qpISMinPolicedUnit
   SYNTAX      Integer
   VALUE       This value must be greater than or equal to 0

8.11.7.  The Property qpISMaxPktSize

   This property is a positive integer that defines the maximum allowed
   packet size for RSVP messages, measured in bytes.  This property is
   defined as follows:

   NAME        qpISMaxPktSize
   SYNTAX      Integer
   VALUE       This value must be a positive integer, denoting the
               number of bytes in the largest payload packet of an RSVP
               signaled flow or class.

8.12.  The Class QoSPolicyAttributeValue

   This class can be used for representing an indirection in variable
   and value references either in a simple condition ("<x> match <y>")
   or a simple action ("<x> = <y>").  In both cases, <x> and <y> are
   known as the variable and the value of either the condition or
   action.  The value of the properties qpAttributeName and
   qpAttributeValueList are used to substitute <x> and <y> in the
   condition or action respectively.

Top      Up      ToC       Page 60 
   The substitution is done as follows: The value of the property
   qpAttributeName is used to substitute <x> and the value of the
   property qpAttributeValueList is used to substitute <y>.

   Once the substitution is done, the condition can be evaluated and the
   action can be performed.

   For example, suppose we want to define a condition over a user name
   of the form "user == 'Smith'", using the QoSPolicyRSVPUserVariable
   class.  The user information in the RSVP message provides a DN.  The
   DN points to a user objects holding many attributes.  If the relevant
   attribute is "last name", we would use the QoSPolicyAttributeValue
   class with qpAttributeName = "Last Name", qpAttributeValueList =
   {"Smith"}.

   The class definition is as follows:

   NAME           QoSPolicyAttributeValue
   DERIVED FROM   PolicyValue (defined in [PCIMe])
   ABSTRACT       FALSE
   PROPERTIES     qpAttributeName, qpAttributeValueList

8.12.1.  The Property qpAttributeName

   This property carries the name of the attribute that is to be used to
   substitute <x> in a simple condition or simple condition of the forms
   "<x> match <y>" or "<x> = <y>" respectively.  This property is
   defined as follows:

   NAME       qpAttributeName
   SYNTAX     String

8.12.2.  The Property qpAttributeValueList

   This property carries a list of values that is to be used to
   substitute <y> in a simple condition or simple action of the forms
   "<x> match <y>" or "<x> = <y>" respectively.

   This property is defined as follows:

   NAME       qpAttributeValueList
   SYNTAX     String

8.13.  The Class "QoSPolicyRSVPVariable"

   This is an abstract class that serves as the base class for all
   implicit variables that have to do with RSVP conditioning.  The class
   definition is as follows:

Top      Up      ToC       Page 61 
   NAME           QoSPolicyRSVPVariable
   DESCRIPTION    An abstract base class used to build other classes
                  that specify different attributes of an RSVP request
   DERIVED FROM   PolicyImplicitVariable (defined in [PCIMe])
   ABSTRACT       TRUE
   PROPERTIES     None

8.14.  The Class "QoSPolicyRSVPSourceIPv4Variable"

   This is a concrete class that contains the source IPv4 address of the
   RSVP signaled flow, as defined in the RSVP PATH SENDER_TEMPLATE and
   RSVP RESV FILTER_SPEC [RSVP] objects.  The class definition is as
   follows:

   NAME           QoSPolicyRSVPSourceIPv4Variable
   DESCRIPTION    The source IPv4 address of the RSVP signaled flow, as
                  defined in the RSVP PATH SENDER_TEMPLATE and RSVP RESV
                  FILTER_SPEC [RSVP] objects.

                  ALLOWED VALUE TYPES: PolicyIPv4AddrValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.15.  The Class "QoSPolicyRSVPDestinationIPv4Variable"

   This is a concrete class that contains the destination IPv4 address
   of the RSVP signaled flow, as defined in the RSVP PATH
   SENDER_TEMPLATE and RSVP RESV FILTER_SPEC [RSVP] objects.  The class
   definition is as follows:

   NAME           QoSPolicyRSVPDestinationIPv4Variable
   DESCRIPTION    The destination IPv4 address of the RSVP signaled
                  flow, as defined in the RSVP PATH and RESV SESSION
                  [RSVP] objects.

                  ALLOWED VALUE TYPES: PolicyIPv4AddrValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

Top      Up      ToC       Page 62 
8.16.  The Class "QoSPolicyRSVPSourceIPv6Variable"

   This is a concrete class that contains the source IPv6 address of the
   RSVP signaled flow, as defined in the RSVP PATH SENDER_TEMPLATE and
   RSVP RESV FILTER_SPEC [RSVP] objects.  The class definition is as
   follows:

   NAME           QoSPolicyRSVPSourceIPv6Variable
   DESCRIPTION    The source IPv6 address of the RSVP signaled flow, as
                  defined in the RSVP PATH SENDER_TEMPLATE and RSVP RESV
                  FILTER_SPEC [RSVP] objects.

                  ALLOWED VALUE TYPES: PolicyIPv6AddrValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.17.  The Class "QoSPolicyRSVPDestinationIPv6Variable"

   This is a concrete class that contains the destination IPv6 address
   of the RSVP signaled flow, as defined in the RSVP PATH
   SENDER_TEMPLATE and RSVP RESV FILTER_SPEC [RSVP] objects.  The class
   definition is as follows:

   NAME           QoSPolicyRSVPDestinationIPv6Variable
   DESCRIPTION    The destination IPv6 address of the RSVP signaled
                  flow, as defined in the RSVP PATH and RESV SESSION
                  [RSVP] objects.

                  ALLOWED VALUE TYPES: PolicyIPv6AddrValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.18.  The Class "QoSPolicyRSVPSourcePortVariable"

   This class contains the source port of the RSVP signaled flow, as
   defined in the RSVP PATH SENDER_TEMPLATE and RSVP RESV FILTER_SPEC
   [RSVP] objects.  The class definition is as follows:

   NAME           QoSPolicyRSVPSourcePortVariable
   DESCRIPTION    The source port of the RSVP signaled flow, as defined
                  in the RSVP PATH SENDER_TEMPLATE and RSVP RESV
                  FILTER_SPEC [RSVP] objects.

                  ALLOWED VALUE TYPES: PolicyIntegerValue (0..65535)

Top      Up      ToC       Page 63 
   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.19.  The Class "QoSPolicyRSVPDestinationPortVariable"

   This is a concrete class that contains the destination port of the
   RSVP signaled flow, as defined in the RSVP PATH SENDER_TEMPLATE and
   RSVP RESV FILTER_SPEC [RSVP] objects.  The class definition is as
   follows:

   NAME           QoSPolicyRSVPDestinationPortVariable
   DESCRIPTION    The destination port of the RSVP signaled flow, as
                  defined in the RSVP PATH and RESV SESSION [RSVP]
                  objects.

                  ALLOWED VALUE TYPES: PolicyIntegerValue (0..65535)

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.20.  The Class "QoSPolicyRSVPIPProtocolVariable"

   This is a concrete class that contains the IP Protocol number of the
   RSVP signaled flow, as defined in the RSVP PATH and RESV SESSION
   [RSVP] objects.  The class definition is as follows:

   NAME           QoSPolicyRSVPIPProtocolVariable
   DESCRIPTION    The IP Protocol number of the RSVP signaled flow, as
                  defined in the RSVP PATH and RESV SESSION [RSVP]
                  objects.

                  ALLOWED VALUE TYPES: PolicyIntegerValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.21.  The Class "QoSPolicyRSVPIPVersionVariable"

   This is a concrete class that contains the IP Protocol version number
   of the RSVP signaled flow, as defined in the RSVP PATH and RESV
   SESSION [RSVP] objects.  The well-known version numbers are 4 and 6.
   This variable allows a policy definition of the type:

      "If IP version = IPv4 then ...".

Top      Up      ToC       Page 64 
   The class definition is as follows:

   NAME           QoSPolicyRSVPIPVersionVariable
   DESCRIPTION    The IP version number of the IP Addresses carried the
                  RSVP signaled flow, as defined in the RSVP PATH and
                  RESV SESSION [RSVP] objects.

                  ALLOWED VALUE TYPES: PolciIntegerValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.22.  The Class "QoSPolicyRSVPDCLASSVariable"

   This is a concrete class that contains the DSCP value as defined in
   the RSVP DCLASS [DCLASS] object.  The class definition is as follows:

   NAME           QoSPolicyRSVPDCLASSVariable
   DESCRIPTION    The DSCP value as defined in the RSVP DCLASS [DCLASS]
                  object.

                  ALLOWED VALUE TYPES: PolicyIntegerValue,
                                       PolicyBitStringValue

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.23.  The Class "QoSPolicyRSVPStyleVariable"

   This is a concrete class that contains the reservation style as
   defined in the RSVP STYLE object in the RESV message [RSVP].  The
   class definition is as follows:

   NAME           QoSPolicyRSVPStyleVariable
   DESCRIPTION    The reservation style as defined in the RSVP STYLE
                  object in the RESV message [RSVP].

                  ALLOWED VALUE TYPES:  PolicyBitStringValue,
                                        PolicyIntegerValue (Integer has
                                        an enumeration of
                                        { Fixed-Filter=1,
                                         Shared-Explicit=2,
                                         Wildcard-Filter=3}

Top      Up      ToC       Page 65 
   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.24.  The Class "QoSPolicyIntServVariable"

   This is a concrete class that contains the Integrated Service
   requested in the RSVP Reservation message, as defined in the FLOWSPEC
   RSVP Object [RSVP].  The class definition is as follows:

   NAME           QoSPolicyRSVPIntServVariable
   DESCRIPTION    The integrated Service requested in the RSVP
                  Reservation message, as defined in the FLOWSPEC RSVP
                  Object [RSVP].

                 ALLOWED VALUE TYPES: PolicyIntegerValue (An enumerated
                                      value of { CL=1 , GS=2, NULL=3}

   DERIVED FROM   QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT       FALSE
   PROPERTIES     None

8.25.  The Class "QoSPolicyRSVPMessageTypeVariable"

   This is a concrete class that contains the RSVP message type, as
   defined in the RSVP message common header [RSVP] object.  The class
   definition is as follows:

   NAME          QoSPolicyRSVPMessageTypeVariable
   DESCRIPTION   The RSVP message type, as defined in the RSVP message
                 common header [RSVP] object.

                 ALLOWED VALUE TYPES: Integer (An enumerated value of
                                       {PATH=1 , PATHTEAR=2, RESV=3,
                                        RESVTEAR=4, RESVERR=5, CONF=6,
                                        PATHERR=7}

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.26.  The Class "QoSPolicyRSVPPreemptionPriorityVariable"

   This is a concrete class that contains the RSVP reservation priority,
   as defined in [RFC3181] object.  The class definition is as follows:

   NAME          QoSPolicyRSVPPreemptionPriorityVariable
   DESCRIPTION   The RSVP reservation priority as defined in [RFC3181].

Top      Up      ToC       Page 66 
                 ALLOWED VALUE TYPES: PolicyIntegerValue

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.27.  The Class "QoSPolicyRSVPPreemptionDefPriorityVariable"

   This is a concrete class that contains the RSVP reservation defending
   priority, as defined in [RFC3181] object.  The class definition is as
   follows:

   NAME          QoSPolicyRSVPPreemptionDefPriorityVariable
   DESCRIPTION   The RSVP preemption reservation defending priority as
                 defined in [RFC3181].

                 ALLOWED VALUE TYPES: PolicyIntegerValue

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.28.  The Class "QoSPolicyRSVPUserVariable"

   This is a concrete class that contains the ID of the user that
   initiated the flow as defined in the User Locator string in the
   Identity Policy Object [RFC3182].  The class definition is as
   follows:

   NAME          QoSPolicyRSVPUserVariable
   DESCRIPTION   The ID of the user that initiated the flow as defined
                 in the User Locator string in the Identity Policy
                 Object [RFC3182].

                 ALLOWED VALUE TYPES: QoSPolicyDNValue,
                                      PolicyStringValue,
                                      QoSPolicyAttributeValue

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.29.  The Class "QoSPolicyRSVPApplicationVariable"

   This is a concrete class that contains the ID of the application that
   generated the flow as defined in the application locator string in
   the Application policy object [RFC2872].  The class definition is as
   follows:

Top      Up      ToC       Page 67 
   NAME          QoSPolicyRSVPApplicationVariable
   DESCRIPTION   The ID of the application that generated the flow as
                 defined in the application locator string in the
                 Application policy object [RFC2872].

                 ALLOWED VALUE TYPES: QoSPolicyDNValue,
                                      PolicyStringValue,
                                      QoSPolicyAttributeValue

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.30.  The Class "QoSPolicyRSVPAuthMethodVariable"

   This is a concrete class that contains the type of authentication
   used in the Identity Policy Object [RFC3182].  The class definition
   is as follows:

   NAME          QoSPolicyRSVPAuthMethodVariable
   DESCRIPTION   The RSVP Authentication type used in the Identity
                 Policy Object [RFC3182].

                 ALLOWED VALUE TYPES: PolicyIntegerValue (An enumeration
                                      of { NONE=0, PLAIN-TEXT=1,
                                      DIGITAL-SIG = 2, KERBEROS_TKT=3,
                                      X509_V3_CERT=4, PGP_CERT=5}

   DERIVED FROM  QoSPolicyRSVPVariable (defined in this document)
   ABSTRACT      FALSE
   PROPERTIES    None

8.31.  The Class QoSPolicyDNValue

   This class is used to represent a single or set of Distinguished Name
   [DNDEF] values, including wildcards.  A Distinguished Name is a name
   that can be used as a key to retrieve an object from a directory
   service. This value can be used in comparison to reference values
   carried in RSVP policy objects, as specified in [RFC3182].  The class
   definition is as follows:

   NAME           QoSPolicyDNValue
   DERIVED FROM   PolicyValue
   ABSTRACT       FALSE
   PROPERTIES     qpDNList

Top      Up      ToC       Page 68 
8.31.1.  The Property qpDNList

   This attribute provides an unordered list of strings, each
   representing a Distinguished Name (DN) with wildcards.  The format of
   a DN is defined in [DNDEF].  The asterisk character ("*") is used as
   wildcard for either a single attribute value or a wildcard for an
   RDN.  The order of RDNs is significant.  For example: A qpDNList
   attribute carrying the following value:

      "CN=*, OU=Sales, O=Widget Inc., *, C=US" matches:

      "CN=J. Smith, OU=Sales, O=Widget Inc, C=US"

   and also matches:

      "CN=J. Smith, OU=Sales, O=Widget Inc, L=CA, C=US".

   The attribute is defined as follows:

   NAME     qpDNList
   SYNTAX   List of Distinguished Names implemented as strings, each of
            which serves as a reference to another object.

8.32.  The Class QoSPolicyRSVPSimpleAction

   This action controls the content of RSVP messages and the way RSVP
   requests are admitted.  Depending on the value of its
   qpRSVPActionType property, this action directly translates into
   either a COPS Replace Decision or a COPS Stateless Decision, or both
   as defined in COPS for RSVP.  Only variables that are subclasses of
   the QoSPolicyRSVPVariable are allowed to be associated with this
   action.  The property definition is as follows:

   NAME          QoSPolicyRSVPSimpleAction
   DESCRIPTION   This action controls the content of RSVP messages and
                 the way RSVP requests are admitted.
   DERIVED FROM  SimplePolicyAction (defined in [PCIMe])
   ABSTRACT      FALSE
   PROPERTIES    qpRSVPActionType

8.32.1.  The Property qpRSVPActionType

   This property is an enumerated integer denoting the type(s) of RSVP
   action.  The value 'REPLACE' denotes a COPS Replace Decision action.
   The value 'STATELESS' denotes a COPS Stateless Decision action.  The
   value REPLACEANDSTATELESS denotes both decision actions.  Refer to
   [RFC2749] for details.

Top      Up      ToC       Page 69 
   NAME          qpRSVPActionType
   DESCRIPTION   This property specifies whether the action type is for
                 COPS Replace, Stateless, or both types of decisions.
   SYNTAX        Integer
   VALUE         This is an enumerated integer.  A value of 0 specifies
                 a COPS Replace decision.  A value of 1 specifies a COPS
                 Stateless Decision.  A value of 2 specifies both COPS
                 Replace and COPS Stateless decisions.

9.  Intellectual Property Rights Statement

   The IETF takes no position regarding the validity or scope of any
   intellectual property or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; neither does it represent that it
   has made any effort to identify any such rights.  Information on the
   IETF's procedures with respect to rights in standards-track and
   standards-related documentation can be found in BCP-11.

   Copies of claims of rights made available for publication and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF Secretariat.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights which may cover technology that may be required to practice
   this standard.  Please address the information to the IETF Executive
   Director.

10.  Acknowledgements

   The authors wish to thank the input of the participants of the Policy
   Framework working group, and especially the combined group of the
   PCIMe coauthors, Lee Rafalow, Andrea Westerinen, Ritu Chadha and
   Marcus Brunner.  In addition, we'd like to acknowledge the valuable
   contribution from Ed Ellesson, Joel Halpern and Mircea Pana.  Thank
   you all for your comments, critique, ideas and general contribution.

11.  Security Considerations

   The Policy Core Information Model [PCIM] describes the general
   security considerations related to the general core policy model.
   The extensions defined in this document do not introduce any
   additional considerations related to security.

Top      Up      ToC       Page 70 
12.  References

12.1.  Normative References

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

   [PCIM]     Moore, B., Ellesson, E., Strassner, J. and A. Westerinen,
              "Policy Core Information Model -- Version 1
              Specification", RFC 3060, February 2001.

   [PCIMe]    Moore, B., Ed., "Policy Core Information Model
              Extensions", RFC 3460, January 2003.

12.2.  Informative References

   [TERMS]    Westerinen, A., Schnizlein, J., Strassner, J., Scherling,
              M., Quinn, B., Herzog, S., Huynh, A., Carlson, M., Perry,
              J. and M. Waldbusser, "Terminology for Policy-based
              Management", RFC 3198, November 2001.

   [DIFFSERV] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.
              and W. Weiss, "An Architecture for Differentiated
              Services", RFC 2475, December 1998.

   [INTSERV]  Braden, R., Clark, D. and S. Shenker, "Integrated Services
              in the Internet Architecture: an Overview", RFC 1633, June
              1994.

   [RSVP]     Braden, R., Ed., Zhang, L., Berson, S.,  Herzog, S. and S.
              Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
              Functional Specification", RFC 2205, September 1997.

   [RFC2749]  Herzog, S., Ed., Boyle, J., Cohen, R., Durham, D., Rajan,
              R. and A. Sastry, "COPS usage for RSVP", RFC 2749, January
              2000.

   [RFC3181]  Herzog, S., "Signaled Preemption Priority Policy Element",
              RFC 3181, October 2001.

   [DIFF-MIB] Baker, F., Chan, K. and A. Smith, "Management Information
              Base for the Differentiated Services Architecture", RFC
              3289, May 2002.

   [AF]       Heinanen, J., Baker, F., Weiss, W. and J. Wroclawski,
              "Assured Forwarding PHB Group", RFC 2597, June 1999.

Top      Up      ToC       Page 71 
   [CL]       Wroclawski, J., "Specification of the Controlled-Load
              Network Element Service", RFC 2211, September 1997.

   [RSVP-IS]  Wroclawski, J., "The Use of RSVP with IETF Integrated
              Services", RFC 2210, September 1997.

   [GS]       Shenker, S., Partridge, C. and R. Guerin, "Specification
              of the Guaranteed Quality of Service", RFC 2212, September
              1997.

   [DCLASS]   Bernet, Y., "Format of the RSVP DCLASS Object", RFC 2996,
              November 2000.

   [RFC3182]  Yadav, S., Yavatkar, R., Pabbati, R., Ford, P., Moore, T.,
              Herzog, S. and R. Hess, "Identity Representation for
              RSVP", RFC 3182, October 2001.

   [RFC2872]  Bernet, Y. and R. Pabbati, "Application and Sub
              Application Identity Policy Element for Use with RSVP",
              RFC 2872, June 2000.

   [DNDEF]    Wahl, M., Kille, S. and T. Howes, "Lightweight Directory
              Access Protocol (v3): UTF-8 String Representation of
              Distinguished Names", RFC 2253, December 1997.

Top      Up      ToC       Page 72 
13.  Authors' Addresses

   Yoram Ramberg
   Cisco Systems
   4 Maskit Street
   Herzliya Pituach, Israel  46766

   Phone:  +972-9-970-0081
   Fax:    +972-9-970-0219
   EMail:  yramberg@cisco.com

   Yoram Snir
   Cisco Systems
   300 East Tasman Drive
   San Jose, CA 95134

   Phone:  +1 408-853-4053
   Fax:    +1 408 526-7864
   EMail:  ysnir@cisco.com

   John Strassner
   Intelliden Corporation
   90 South Cascade Avenue
   Colorado Springs, Colorado  80903

   Phone:  +1-719-785-0648
   Fax:    +1-719-785-0644
   EMail: john.strassner@intelliden.com

   Ron Cohen
   Ntear LLC

   Phone: +972-8-9402586
   Fax:   +972-9-9717798
   EMail: ronc@lyciumnetworks.com

   Bob Moore
   IBM Corporation
   P. O. Box 12195, BRQA/501/G206
   3039 Cornwallis Rd.
   Research Triangle Park, NC 27709-2195

   Phone:   +1 919-254-4436
   Fax:     +1 919-254-6243
   EMail: remoore@us.ibm.com

Top      Up      ToC       Page 73 
14.  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 in its implementation may be prepared, copied, 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 assignees.

   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.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.