All MIBs › POLICY-FRAMEWORK-PIB
Organization: IETF RAP WG
Last Updated: 2004-07-20
Category: QoS
Description:
Provides the IETF RAP Policy Framework Policy Information Base (PIB) structure for distributing QoS and access policies.
Imported Objects
From SNMP-FRAMEWORK-MIB
| SnmpAdminString |
From SNMPv2-CONF
| MODULE-COMPLIANCE | |
| OBJECT-GROUP |
From SNMPv2-SMI
| Integer32 | |
| MODULE-IDENTITY | |
| OBJECT-TYPE | |
| Unsigned32 |
From SNMPv2-TC
| TEXTUAL-CONVENTION | |
| TruthValue |
From SYNOPTICS-ROOT-MIB
| policy | OBJECT-IDENTITY |
What Is POLICY-FRAMEWORK-PIB?
POLICY-FRAMEWORK-PIB is an IETF RAP (Resource Allocation Protocol) Working Group Policy Information Base defining the base set of policy rule classes needed to support QoS and access-control policy distribution via COPS-PR to network devices called PEPs (Policy Enforcement Points). It exposes objects describing which Policy Rule Classes (PRCs) and attributes a device supports, along with PIB incarnation identity and longevity information used to track policy provisioning sessions. Its monitoring role is centered on policy-distribution software state: operators check policyPrcSupportTable to confirm a device actually supports the PRCs and attributes a policy server intends to push, and policyPibIncarnationTable to verify which policy provisioning session/instance is currently active on the device, both software-configuration health indicators rather than hardware sensors. As a base PIB, it explicitly depends on the broader COPS-PR/RAP policy framework and is extended by protocol-specific PIBs (e.g., QoS or DiffServ PIBs) that define concrete policy rules. It was deployed in policy-based networking environments where a centralized Policy Decision Point (PDP) provisions QoS or access rules to routers/switches acting as Policy Enforcement Points. A POLICY-FRAMEWORK-PIB reference is typically consulted alongside protocol-specific PIBs, such as QoS or DiffServ extensions, when troubleshooting why a device's policy state doesn't match what the PDP intended to provision.
IPNetwork Monitor allows you to monitor SNMP objects defined in POLICY-FRAMEWORK-PIB. Use the built-in SNMP Monitoring Browser to explore available variables, view their current values and descriptions, and select the objects you want to monitor. You can then create SNMP monitors, configure thresholds, and receive alerts when monitored values change.
What Can Be Monitored
- supported policy rule classes and attributes
- PIB incarnation identity and longevity
- policy provisioning session state
Supported Devices
- vendor-neutral, standards-based MIB, not tied to a specific manufacturer
- routers/switches acting as COPS-PR Policy Enforcement Points
Monitoring Examples
An operator would check policyPrcSupportTable/policyPrcSupportEntry, keyed by policyPrcSupportPrid, to confirm a device reports policyPrcSupportSupportedPrc and policyPrcSupportSupportedAttrs matching what the policy server expects to provision, catching a device that can't support a requested policy rule class. policyPibIncarnationTable's policyPibIncarnationId and policyPibIncarnationLongevity would be checked to confirm the device is running the expected, current policy provisioning incarnation and hasn't reverted to a stale or default policy state. A mismatch here would explain why newly pushed QoS or access policies aren't taking effect on a device.
OIDs
| OID symbolic | OID numeric | Type | Access | Description |
|---|---|---|---|---|
| policyFrameworkPib | 1.3.6.1.4.1.45.4.1 | A PIB module containing the base set of policy rule classes that are required for support of all policies. | ||
| policyBasePibClass | 1.3.6.1.4.1.45.4.1.1 | |||
| policyPrcSupportTable | 1.3.6.1.4.1.45.4.1.1.1 | not-accessible | Each instance of this class specifies a PRC that the device supports and a bit string to indicate the attributes of the class that are supported. These PRIs are sent to the PDP to indicate to the PDP which PRCs, and which attributes of these PRCs, the device supports. This table can also be downloaded by a network manager when static configuration is used. All install and install-notify PRCs supported by the device must be represented in this table. | |
| policyPrcSupportEntry | 1.3.6.1.4.1.45.4.1.1.1.1 | not-accessible | An instance of the policyPrcSupport class that identifies a specific policy class and associated attributes as supported by the device. | |
| POL policyPrcSupportPrid | 1.3.6.1.4.1.45.4.1.1.1.1.1 | PolicyInstanceId | not-accessible | An arbitrary integer index that uniquely identifies an instance of the policyPrcSupport class. |
| OID policyPrcSupportSupportedPrc | 1.3.6.1.4.1.45.4.1.1.1.1.2 | OBJECT IDENTIFIER | read-only | The object identifier of a supported PRC. There may not be more than one instance of the policyPrcSupport class with the same value of policyPrcSupportSupportedPrc. |
| OCT policyPrcSupportSupportedAttrs | 1.3.6.1.4.1.45.4.1.1.1.1.3 | OCTET STRING | read-only | A bit string representing the supported attributes of the class that is identified by the policyPrcSupportSupportedPrc object. Each bit of this bit mask corresponds to a class attribute, with the most significant bit of the i-th octet of this octet string corresponding to the (8*i - 7)-th attribute, and the least significant bit of the i-th octet corresponding to the (8*i)-th class attribute. Each bit of this bit mask specifies whether or not the corresponding class attribute is currently supported, with a '1' indicating support and a '0' indicating no support. If the value of this bit mask is N bits long and there are more than N class attributes then the bit mask is logically extended with 0's to the required length. |
| U32 policyPrcSupportMaxPris | 1.3.6.1.4.1.45.4.1.1.1.1.4 | Unsigned32 | read-only | A non-negative value indicating the maximum numbers of policy rule instances that can be installed in the identified policy rule class. Note that actual number of PRIs that can be installed in a PRC at any given time may be less than this value based on the current operational state (e.g., resources currently consumed) of the device. |
| policyPibIncarnationTable | 1.3.6.1.4.1.45.4.1.1.2 | not-accessible | This class contains a single policy rule instance that identifies the current incarnation of the PIB and the PDP or network manager that installed this incarnation. The instance of this class is reported to the PDP at client connect time so that the PDP can (attempt to) ascertain the current state of the PIB. A network manager may use the instance to determine the state of the device with regard to existing NMS interactions. | |
| policyPibIncarnationEntry | 1.3.6.1.4.1.45.4.1.1.2.1 | not-accessible | An instance of the policyPibIncarnation class. Only one instance of this policy class is ever instantiated. | |
| POL policyPibIncarnationPrid | 1.3.6.1.4.1.45.4.1.1.2.1.1 | PolicyInstanceId | not-accessible | An index to uniquely identify an instance of this policy class. |
| STR policyPibIncarnationName | 1.3.6.1.4.1.45.4.1.1.2.1.2 | SnmpAdminString | read-write | The name of the entity that installed the current incarnation of the PIB into the device. The name may reference a PDP when dynamic configuration is being used or a network manager when static configuration is being used. By default, it is the zero length string. |
| OCT policyPibIncarnationId | 1.3.6.1.4.1.45.4.1.1.2.1.3 | OCTET STRING | read-write | An ID to identify the current incarnation. It has meaning to the PDP/manager that installed the PIB and perhaps its standby PDPs/managers. By default, it is the zero-length string. |
| INT policyPibIncarnationLongevity | 1.3.6.1.4.1.45.4.1.1.2.1.4 | INTEGER | read-write | This attribute controls what the PEP does with the downloaded policy on receipt of a Client Close message or a loss of connection to the PDP. If set to expireNever, the PEP continues to operate with the installed policy indefinitely. If set to expireImmediate, the PEP immediately expires the policy obtained from the PDP and installs policy from local configuration. If set to expireOnTimeout, the PEP continues to operate with the policy installed by the PDP for a period of time specified by policyPibIncarnationTtl. After this time (and it has not reconnected to the original or new PDP) the PEP expires this policy and reverts to local configuration. For all cases, it is the responsibility of the PDP to check the incarnation and download new policy, if necessary, on a reconnect. Policy enforcement timing only applies to policies that have been installed dynamically (e.g., by a PDP via COPS). |
| U32 policyPibIncarnationTtl | 1.3.6.1.4.1.45.4.1.1.2.1.5 | Unsigned32 | read-write | The number of seconds after a Client Close or TCP timeout for which the PEP continues to enforce the policy in the PIB. After this interval, the PIB is considered expired and the device no longer enforces the policy installed in the PIB. This attribute is only meaningful if policyPibIncarnationLongevity is set to expireOnTimeout. |
| T/F policyPibIncarnationActive | 1.3.6.1.4.1.45.4.1.1.2.1.6 | TruthValue | read-write | If this attribute is set to TRUE, then the PIB instance to which this PRI belongs becomes the active PIB instance. The previous active instance becomes inactive and the policyPibIncarnationActive attribute in that PIB instance is automatically set to false. |
| policyDeviceIdentificationTable | 1.3.6.1.4.1.45.4.1.1.3 | not-accessible | This class contains a single policy rule instance that contains device-specific information that is used to facilitate efficient policy installation by a PDP. The instance of this class is reported to the PDP at client connect time so that the PDP can take into account certain device characteristics during policy installation. | |
| policyDeviceIdentificationEntry | 1.3.6.1.4.1.45.4.1.1.3.1 | not-accessible | An instance of the policyDeviceIdentification class. Only one instance of this policy class is ever instantiated. | |
| POL policyDeviceIdentificationPrid | 1.3.6.1.4.1.45.4.1.1.3.1.1 | PolicyInstanceId | not-accessible | An index to uniquely identify an instance of this policy class. |
| STR policyDeviceIdentificationDescr | 1.3.6.1.4.1.45.4.1.1.3.1.2 | SnmpAdminString | read-only | A textual description of the PEP. This value should include the name and version identification of the PEP's hardware and software. |
| U32 policyDeviceIdentificationMaxMsg | 1.3.6.1.4.1.45.4.1.1.3.1.3 | Unsigned32 | read-only | The maximum message size, in octets, that the device is capable of processing. Received messages with a size in excess of this value must cause the PEP to return an error to the PDP containing the global error code 'maxMsgSizeExceeded'. |
| policyCompLimitsTable | 1.3.6.1.4.1.45.4.1.1.4 | not-accessible | Each instance of this class identifies a policy class or attribute and a limitation related to the implementaion of the class/attribute in the device. Additional information providing guidance related to the limitation may also be present. These PRIs are sent to the PDP to indicate which PRCs or PRC attributes the device supports in a restricted manner. | |
| policyCompLimitsEntry | 1.3.6.1.4.1.45.4.1.1.4.1 | not-accessible | An instance of the policyCompLimits class that identifies a PRC or PRC attribute and a limitation related to the PRC or PRC attribute implementation supported by the device. All PRIs of this class represent errors that would be returned in relation to the identified component for policy installation requests that don't abide by the restrictions indicated by the error code and, possibly, a provided guidance value. | |
| POL policyCompLimitsPrid | 1.3.6.1.4.1.45.4.1.1.4.1.1 | PolicyInstanceId | not-accessible | An arbitrary integer index that uniquely identifies an instance of the policyCompLimits class. |
| OID policyCompLimitsComponent | 1.3.6.1.4.1.45.4.1.1.4.1.2 | OBJECT IDENTIFIER | read-only | The object identifier of a PRC or PRC attribute that is supported in some limited fashion with regard to it's definition in the associated PIB module. The same PRC or PRC attribute identifier may appear in the table several times, once for each implementation limitation acknowledged by the device. |
| I32 policyCompLimitsType | 1.3.6.1.4.1.45.4.1.1.4.1.3 | Integer32 | read-only | A value describing an implementation limitation for the device related to the PRC or PRC attribute identified by the policyCompLimitsComponent data in this class instance. Values for this object are derived from the defined error values associated with the PRC of the identified attribute or the PRC itself. All genericPrc and specificPrc (defined in a PRC INSTALL-ERRORS clause) error codes represent valid limitation type values. For example, an implementation of the qosIpAce class may be limited in several ways, such as address mask, protocol and Layer 4 port options. These limitations could be exported using this table with the following instances: Prid Component Type Guidance 1 'qosIpAceDstAddrMask' 'valueSupLimited' 0xFFFFFFFF 2 'qosIpAceSrcAddrMask' 'valueSupLimited' 0xFFFFFFFF 3 'qosIpAceProtocol' 'valueSupLimited' 0x06 -- TCP 4 'qosIpAceProtocol' 'valueSupLimited' 0x17 -- UDP 5 'qosIpAceDstL4PortMin' 'invalidDstL4PortData' 6 'qosIpAceDstL4PortMax' 'invalidDstL4PortData' 7 'qosIpAcePermit' 'enumSupLimited' 'true' The above entries describe a number of limitations that may be in effect for the qosIpAce class on a given device. The limitations include restrictions on acceptable values for certain attributes and indications of the relationship between related attributes. |
| OCT policyCompLimitsGuidance | 1.3.6.1.4.1.45.4.1.1.4.1.4 | OCTET STRING | read-only | A value used to convey additional information related to the implementation limitation noted by the policyCompLimitsType attribute. The value of this attribute must interpreted in the context of the policyCompLimitsType value. Note that a guidance value will not necessarily be provided for all exported limitations. Well-known genericPrc error codes that are applicable to all PRCs, such as 'attrValueSupLimited' and 'attrEnumSupLimited', have guidance value semantics as follows: genericPrc Guidance Semantics attrValueSupLimited Integer32 (4 octets) with supported value attrEnumSupLimited Integer32 (4 octets) with supported enumeration attrMaxLengthExceeded Integer32 (4 octets) with maximum supported length for attribute The specificPrc error codes have the semantics of the associated guidance value specified where the installation error is defined if appropriate. Errors for which the semantics of the guidance value are not specified require this value to be treated in an implementation dependent manner. |
| policyBasePibConformance | 1.3.6.1.4.1.45.4.1.2 | |||
| policyBasePibCompliances | 1.3.6.1.4.1.45.4.1.2.1 | |||
| policyBasePibCompliance | 1.3.6.1.4.1.45.4.1.2.1.1 | Describes the requirements for conformance to the Policy Framework PIB. | ||
| policyBasePibGroups | 1.3.6.1.4.1.45.4.1.2.2 | |||
| policyPrcSupportGroup | 1.3.6.1.4.1.45.4.1.2.2.1 | Objects from the policyPrcSupportTable. | ||
| policyPibIncarnationGroup | 1.3.6.1.4.1.45.4.1.2.2.2 | Objects from the policyPibIncarnationTable. | ||
| policyDeviceIdentificationGroup | 1.3.6.1.4.1.45.4.1.2.2.3 | Objects from the policyDeviceIdentificationTable. | ||
| policyCompLimitsGroup | 1.3.6.1.4.1.45.4.1.2.2.4 | Objects from the policyCompLimitsTable. |
RFC description
Policy-Based Management Framework PIB (RFC 3159); defines policy information base classes for network policy administration.
Start monitoring vendor-neutral, standards-based MIB (IETF RAP Policy Framework PIB, COPS-PR) with a free 30-day trial of IPNetwork Monitor. Import MIBs, browse SNMP OIDs, create custom SNMP monitors, configure alerts, and monitor any SNMP-enabled network device from a single console.