rfc-3644

Policy Quality of Service (QoS) Information Model

Y. Snir, Y. Ramberg, J. Strassner, R. Cohen, B. Moore
date2003-11 streamIETF areaops wgpolicy statusPROPOSED STANDARD pages73 canonicalhttps://www.rfc-editor.org/rfc/rfc3644 doi10.17487/RFC3644
This document presents an object-oriented information model for representing Quality of Service (QoS) network management policies. This document is based on the IETF Policy Core Information Model and its extensions. It defines an information model for QoS enforcement for differentiated and integrated services using policy. It is important to note that this document defines an information model, which by definition is independent of any particular data storage mechanism and access protocol.

Extracted elements (25)

design-rationale §3.3.1

A three-level token bucket traffic profile (rate, normal burst, excess burst) is defined rather than the two-level meter from [DIFF-MIB], because three levels are needed to construct AF provisioning actions that mark conforming, exceeding, and violating traffic with different DSCPs (e.g., AF11/AF12/AF13).

qos, diffserv

design-rationale §1.4.1

Hierarchical bandwidth allocation policies use rule nesting to specify relative bandwidth within a traffic class, and these policies SHOULD be enforced using hierarchical schedulers where each rule hierarchy level maps to a corresponding scheduler level. A flat rule representation cannot express the same semantics because above-minimum bandwidth is divided differently.

qos, diffserv

design-rationale §1.4.3

If a policy sub-rule requires both bandwidth allocation refinement and threshold refinement, these must be placed in separate policy groups aggregated under the rule via PolicySetComponent. A bandwidth allocation action in a sub-rule implies its own queue, making threshold references to the parent queue ambiguous.

qos

design-rationale §1.2.1.1

QPIM deliberately avoids subclassing the PolicyRule class, instead using SimplePolicyCondition, CompoundPolicyCondition, SimplePolicyAction, and CompoundPolicyAction from [PCIMe]. Subclassing PolicyRule would have made it more difficult to combine actions and conditions from different functional domains within the same rules.

qos

design-rationale §1.2.1.3

QPIM is goal-oriented rather than device-configuration-oriented: the policy writer specifies desired network behavior (e.g., minimum bandwidth for a class), and PDPs or PEPs fill in device-specific details such as queue lengths using their defaults. This separates specification from implementation.

qos

design-rationale §1.2.2.2

Roles (from PCIM) are used to map policies to network elements in a device- and vendor-independent manner, allowing a single policy rule to target a large group of heterogeneous interfaces by assigning them a common role name such as 'core-interface'.

qos

interoperability-note §1.2.4

QPIM covers both provisioned QoS (DiffServ) and signaled QoS (IntServ/RSVP) using distinct action hierarchies: QoSPolicyAdmissionAction/PHBAction for DiffServ, and QoSPolicyRSVPAdmissionAction/QoSPolicyRSVPSimpleAction for RSVP. The model does not mandate the use of either methodology.

qos, diffserv

interoperability-note §1.2.5

QPIM interoperability among PDPs and management applications is defined at the information model level: different implementations sharing a common QPIM-derived schema can interpret each other's policies. However, different PDPs may translate the same abstract policy into different PEP configurations, producing equivalent network behavior rather than identical device configurations.

qos

normative-requirement §3.3.1 MUST

A policing action that models three-level policing MUST associate three separate actions with a three-level traffic profile: a conforming action, an exceeding action, and a violating action.

qos

normative-requirement §1.2.3 SHOULD

QPIM's constructs SHOULD always be interpreted so that policy-compliant behavior can be enforced on the network under management.

qos

normative-requirement §3.3.1 SHOULD

When two policing actions (per-flow and per-class) are placed in a single PolicyRule or CompoundPolicyAction, the ExecutionStrategy property SHOULD be set to 'Do All' so that both individual flows and aggregate traffic classes are policed.

qos

protocol-element §8.2

QoSPolicyAdmissionAction is an abstract class with the property qpAdmissionScope (0 = per-flow, 1 = per-class) that determines whether metering and policing applies to individual microflows or to an aggregate traffic class. It is linked to a traffic profile via QoSPolicyTrfcProfInAdmissionAction.

qos

protocol-element §8.7

QoSPolicyBandwidthAction specifies forwarding behavior via qpForwardingPriority (non-zero enables preemptive forwarding), qpBandwidthUnits (Kb/s or percentage), qpMinBandwidth, qpMaxBandwidth, qpMaxDelay (ms), qpMaxJitter (ms), and qpFairness.

qos, diffserv

protocol-element §8.8

QoSPolicyCongestionControlAction specifies queue depth (qpQueueSize with units qpQueueSizeUnits), drop method (qpDropMethod), drop threshold units (qpDropThresholdUnits), and minimum/maximum threshold values (qpDropMinThresholdValue and qpDropMaxThresholdValue).

qos, congestion

protocol-element §8.1

QoSPolicyDiscardAction is a concrete subclass of PolicyAction implementing unconditional packet discard. It is used either standalone or as one of the outcome actions (e.g., exceed action) associated with QoSPolicyPoliceAction.

qos

protocol-element §8.11

QoSPolicyIntServTrfcProf defines an IntServ/RSVP traffic profile with qpISTokenRate, qpISPeakRate, qpISBucketSize, qpISResvRate, qpISResvSlack, qpISMinPolicedUnit, and qpISMaxPktSize, used for comparing RSVP TSPEC/RSPEC parameters in admission control decisions.

qos

protocol-element §8.6

QoSPolicyPHBAction is an abstract base class for per-hop behavior actions with the qpMaxPacketSize property (packet size in bytes), needed to translate bandwidth and queue size parameters into byte-based implementation configurations.

qos, diffserv

protocol-element §8.3

QoSPolicyPoliceAction (concrete subclass of QoSPolicyAdmissionAction) associates with outcome actions via three associations: QoSPolicyConformAction, QoSPolicyExceedAction, and QoSPolicyViolateAction, supporting two-level and three-level metering scenarios.

qos, diffserv

protocol-element §8.5

QoSPolicyRSVPAdmissionAction compares RSVP TSPEC/RSPEC parameters against a QoSPolicyIntServTrfcProf to accept or reject reservations. It includes qpRSVPWarnOnly (admit with warning) and qpRSVPMaxSessions (cap on admitted reservations) properties.

qos

protocol-element §8.32

QoSPolicyRSVPSimpleAction has the qpRSVPActionType property with values REPLACE (COPS Replace Decision, controlling RSVP message content), STATELESS (COPS Stateless Decision, controlling admission parameters), or REPLACEANDSTATELESS (both). It is associated with QoSPolicyRSVPVariable instances via QoSPolicyRSVPVariableInRSVPSimplePolicyAction.

qos

protocol-element §8.13

QoSPolicyRSVPVariable is an abstract class with 17 concrete subclasses covering RSVP session attributes: source/destination IPv4/IPv6 addresses and ports, IP protocol, IP version, DCLASS, reservation style, IntServ parameters, message type, preemption priority and default priority, user identity, application identity, and authentication method.

qos

protocol-element §8.4

QoSPolicyShapeAction (subclass of QoSPolicyAdmissionAction) delays packets to bring a traffic stream into compliance with a traffic profile. Its only required association is a traffic profile specifying rate and burst parameters.

qos

protocol-element §8.10

QoSPolicyTokenBucketTrfcProf defines a token bucket traffic profile with qpTBRate (committed rate), qpTBNormalBurst (normal burst size), and qpTBExcessBurst (excess burst size), supporting two-level and three-level metering for DiffServ policing.

qos, diffserv

security-consideration §11

Security considerations for QPIM are addressed in section 11. Because QPIM governs access to network QoS resources, unauthorized modification of QPIM policy data instances could allow an attacker to disrupt traffic conditioning, grant unauthorized QoS privileges, or deny service to legitimate flows. The security of QPIM data depends on the access controls and authentication mechanisms of the underlying data model and access protocol (e.g., LDAP, SNMP) used to store and retrieve policy instances.

qos, security

state-machine §3.3.1

Token bucket metering defines three states triggered by traffic rate relative to the QoSPolicyTokenBucketTrfcProf: conforming (rate within normal burst), exceeding (above normal burst, within excess burst), and violating (above excess burst). Each state maps to a distinct outcome action via QoSPolicyConformAction, QoSPolicyExceedAction, and QoSPolicyViolateAction associations on QoSPolicyPoliceAction.

qos, diffserv