DiffServ MIB
The DiffServ MIB is used to poll already configured information and statistics from the devices on which is it enabled.
Network service providers that deliver differentiated services to their customer must be able to configure and monitor routers in order to satisfy Service Level Agreements (SLAs). DiffServ is a protocol that allows the network service provider to use classes to control network traffic so that certain types of traffic get precedence. For example, voice traffic requires a relatively uninterrupted flow of data, and might get precedence over other kinds of traffic, such as e-mail. DiffServ can be offered to customers as a way to distinguish between various levels of service; for example, Premium, Gold, Silver, and Bronze. Therefore, SLAs and DiffServ technologies are closely linked.
- Finding Feature Information
- Information About DiffServ MIB
- How to Configure DiffServ MIB
- Configuration Examples for DiffServ MIB
- Additional References
- Feature Information for DiffServ MIB
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Information About DiffServ MIB
Restrictions for DiffServ MIB
DiffServ MIB will not support the configurations described in this section even if the user has configured them through Modular QoS CLI (MQC) and they are functioning in the forwarding path.
Note | The restrictions do not result in configurations being rejected, because Diffserv MIB is not exposed to the unsupported configurations. |
DiffServ MIB provides the ability to read Simple Network Management Protocol (SNMP) requests only; it cannot be used to perform any provisioning tasks.
Multiple filters in the same class-map definition are not supported. Therefore, in supported class maps that contain only one filter definition, match-any and match-all types are irrelevant.
NoteClass maps with one Access Control List (ACL) and that contain multiple Cisco Application Control Engines (ACEs) are supported. Class maps with one Differentiated Services Code Point (DSCP) filter that takes multiple DSCP values as part of one match criterion also are supported. However, match-not types are not supported.
Fair queueing is not supported.
Marking is not supported in the parent class of hierarchical policy.
Policing in the parent class is not supported if queueing is configured in the child class.
For priority and bandwidth feature configurations, the related table is populated with either kbps or relative percentage values only.
Default values are not populated into the MIB tables.
NoteThe classifier table does include defined defaults for address, port, and related fields.
Random-detect functionality is not supported in the parent class of a hierarchical policy.
Only child first (bottom-up) policing is supported in hierarchical policies.
Any fields not supported by the current routing platform will contain the value 0, or some appropriate default value. For example, the Cisco ASR1000 Series Aggregation Services Routers do not support policer color-aware statistics, so fields related to these statistics will be set to 0 on those routers.
MQC and DiffServ MIB
Most Cisco products use the Modular QoS CLI (MQC) to support the provisioning of industry-standard Differentiated Services Architecture services. However, the industry standard for the provisioning of differentiated services (DiffServ MIB) differs from the MQC implementation. The DiffServ MIB feature is implemented on top of the MQC functionality and translates service provisioning instructions from the DiffServ MIB to MQC.
By implementing DiffServ MIB on top of the MQC provisioning language, MQC can still be used to enable QoS policies in Cisco products. In addition, Cisco products that support MQC already support direct mapping of actions between the cbQoSMIB and MQC. The cbQoSMIB is the Cisco recommended MIB. Implementation of DiffServ MIB does not replace the cbQoSMIB.
The Diffserv MIB feature maps each field in a set of tables defined in the DiffServ MIB RFC to an MQC supported action (where an action is available).
Hierarchical Policies and DiffServ MIB
For hierarchical policies the Modular QoS CLI (MQC) runs all classification instructions first, from the top of the hierarchy to the bottom of the hierarchy. It then performs feature execution in the following order: marking (top to bottom), policing (bottom to top), and queueing (bottom to top).
To translate the MQC implementation of a hierarchical policy to a DiffServ MIB implementation, the hierarchy must be separated into different chained functional blocks that determine the execution order of the features.
Note | Not all feature combinations from an MQC hierarchy are supported in the DiffServ MIB. For more information see the "Restrictions for DiffServ MIB" section. |
How to Configure DiffServ MIB
Enabling DiffServ MIB
1.
enable
2.
configure
terminal
3.
qos
diffservmib
4.
end
DETAILED STEPS
Configuration Examples for DiffServ MIB
Example: Enabling DiffServ MIB
The following example shows how to enable DiffServ MIB support for Quality of Service (QoS) policy maps:
Device> enable Device# configure terminal Device(config)# qos diffservmib Device(config)# exit
Example: DiffServ MIB SNMP Walk Output
The following is sample output from a SNMP walk of the DiffServ MIB:
diffServDataPathStart.1.1 = diffServClfrStorage.201 diffServDataPathStart.10.2 = diffServClfrStorage.202 diffServDataPathStorage.1.1 = volatile(2) diffServDataPathStorage.10.2 = volatile(2) diffServDataPathStatus.1.1 = active(1) diffServDataPathStatus.10.2 = active(1) diffServClfrNextFree.0 = 0 diffServClfrStorage.201 = volatile(2) diffServClfrStorage.202 = volatile(2) diffServClfrStatus.201 = active(1) diffServClfrStatus.202 = active(1) diffServClfrElementNextFree.0 = 0 diffServClfrElementPrecedence.201.2011 = 255 diffServClfrElementPrecedence.202.2021 = 255 diffServClfrElementNext.201.2011 = diffServMeterSucceedNext.10001 diffServClfrElementNext.202.2021 = diffServMeterSucceedNext.10002 diffServClfrElementSpecific.201.2011 = diffServMultiFieldClfrAddrType.1 diffServClfrElementSpecific.202.2021 = diffServMultiFieldClfrAddrType.1 diffServClfrElementStorage.201.2011 = volatile(2) diffServClfrElementStorage.202.2021 = volatile(2) diffServClfrElementStatus.201.2011 = active(1) diffServClfrElementStatus.202.2021 = active(1) diffServMultiFieldClfrNextFree.0 = 0 diffServMultiFieldClfrAddrType.1 = unknown(0) diffServMultiFieldClfrAddrType.2 = ipv4(1) diffServMultiFieldClfrDstAddr.1 = diffServMultiFieldClfrDstAddr.2 = c9 diffServMultiFieldClfrDstPrefixLength.1 = 0 diffServMultiFieldClfrDstPrefixLength.2 = 8 diffServMultiFieldClfrSrcAddr.1 = diffServMultiFieldClfrSrcAddr.2 = c0 a8 01 diffServMultiFieldClfrSrcPrefixLength.1 = 0 diffServMultiFieldClfrSrcPrefixLength.2 = 24 diffServMultiFieldClfrDscp.1 = 41 diffServMultiFieldClfrDscp.2 = -1 diffServMultiFieldClfrFlowId.1 = 0 diffServMultiFieldClfrFlowId.2 = 0 diffServMultiFieldClfrProtocol.1 = 255 diffServMultiFieldClfrProtocol.2 = 6 diffServMultiFieldClfrDstL4PortMin.1 = 0 diffServMultiFieldClfrDstL4PortMin.2 = 1000 diffServMultiFieldClfrDstL4PortMax.1 = 65535 diffServMultiFieldClfrDstL4PortMax.2 = 10000 diffServMultiFieldClfrSrcL4PortMin.1 = 0 diffServMultiFieldClfrSrcL4PortMin.2 = 2000 diffServMultiFieldClfrSrcL4PortMax.1 = 65535 diffServMultiFieldClfrSrcL4PortMax.2 = 20000 diffServMultiFieldClfrStorage.1 = volatile(2) diffServMultiFieldClfrStorage.2 = volatile(2) diffServMultiFieldClfrStatus.1 = active(1) diffServMultiFieldClfrStatus.2 = active(1) diffServMeterNextFree.0 = 0 diffServMeterSucceedNext.10001 = diffServActionInterface.111 diffServMeterSucceedNext.10002 = diffServActionInterface.121 diffServMeterFailNext.10001 = diffServActionInterface.112 diffServMeterFailNext.10002 = diffServActionInterface.122 diffServMeterSpecific.10001 = diffServTBParamType.8000 diffServMeterSpecific.10002 = diffServTBParamType.8000 diffServMeterStorage.10001 = volatile(2) diffServMeterStorage.10002 = volatile(2) diffServMeterStatus.10001 = active(1) diffServMeterStatus.10002 = active(1) diffServTBParamNextFree.0 = 0 diffServTBParamType.8000 = diffServTBParamSimpleTokenBucket diffServTBParamType.8001 = diffServTBParamSrTCMBlind diffServTBParamRate.8000 = 64000 diffServTBParamRate.8001 = 512000 diffServTBParamBurstSize.8000 = 2000 diffServTBParamBurstSize.8001 = 5120 diffServTBParamInterval.8000 = 250000 diffServTBParamInterval.8001 = 10000 diffServTBParamStorage.8000 = volatile(2) diffServTBParamStorage.8001 = volatile(2) diffServTBParamStatus.8000 = active(1) diffServTBParamStatus.8001 = active(1) diffServActionNextFree.0 = 0 diffServActionInterface.111 = 10 diffServActionInterface.121 = 10 diffServActionNext.111 = diffServDscpMarkActEntry.41 diffServActionNext.121 = diffServAlgDropType.500 diffServActionSpecific.111 = diffServCountActOctets.111 diffServActionSpecific.121 = diffServCountActOctets.121 diffServActionStorage.111 = volatile(2) diffServActionStorage.121 = volatile(2) diffServActionStatus.111 = active(1) diffServActionStatus.121 = active(1) diffServDscpMarkActDscp.0 = 0 diffServDscpMarkActDscp.1 = 1 diffServDscpMarkActDscp.2 = 2 diffServDscpMarkActDscp.3 = 3 diffServDscpMarkActDscp.4 = 4 diffServDscpMarkActDscp.5 = 5 diffServDscpMarkActDscp.6 = 6 diffServDscpMarkActDscp.7 = 7 diffServDscpMarkActDscp.8 = 8 diffServDscpMarkActDscp.9 = 9 diffServDscpMarkActDscp.10 = 10 diffServDscpMarkActDscp.11 = 11 diffServDscpMarkActDscp.12 = 12 diffServDscpMarkActDscp.13 = 13 diffServDscpMarkActDscp.14 = 14 diffServDscpMarkActDscp.15 = 15 diffServDscpMarkActDscp.16 = 16 diffServDscpMarkActDscp.17 = 17 diffServDscpMarkActDscp.18 = 18 diffServDscpMarkActDscp.19 = 19 diffServDscpMarkActDscp.20 = 20 diffServDscpMarkActDscp.21 = 21 diffServDscpMarkActDscp.22 = 22 diffServDscpMarkActDscp.23 = 23 diffServDscpMarkActDscp.24 = 24 diffServDscpMarkActDscp.25 = 25 diffServDscpMarkActDscp.26 = 26 diffServDscpMarkActDscp.27 = 27 diffServDscpMarkActDscp.28 = 28 diffServDscpMarkActDscp.29 = 29 diffServDscpMarkActDscp.30 = 30 diffServDscpMarkActDscp.31 = 31 diffServDscpMarkActDscp.32 = 32 diffServDscpMarkActDscp.33 = 33 diffServDscpMarkActDscp.34 = 34 diffServDscpMarkActDscp.35 = 35 diffServDscpMarkActDscp.36 = 36 diffServDscpMarkActDscp.37 = 37 diffServDscpMarkActDscp.38 = 38 diffServDscpMarkActDscp.39 = 39 diffServDscpMarkActDscp.40 = 40 diffServDscpMarkActDscp.41 = 41 diffServDscpMarkActDscp.42 = 42 diffServDscpMarkActDscp.43 = 43 diffServDscpMarkActDscp.44 = 44 diffServDscpMarkActDscp.45 = 45 diffServDscpMarkActDscp.46 = 46 diffServDscpMarkActDscp.47 = 47 diffServDscpMarkActDscp.48 = 48 diffServDscpMarkActDscp.49 = 49 diffServDscpMarkActDscp.50 = 50 diffServDscpMarkActDscp.51 = 51 diffServDscpMarkActDscp.52 = 52 diffServDscpMarkActDscp.53 = 53 diffServDscpMarkActDscp.54 = 54 diffServDscpMarkActDscp.55 = 55 diffServDscpMarkActDscp.56 = 56 diffServDscpMarkActDscp.57 = 57 diffServDscpMarkActDscp.58 = 58 diffServDscpMarkActDscp.59 = 59 diffServDscpMarkActDscp.60 = 60 diffServDscpMarkActDscp.61 = 61 diffServDscpMarkActDscp.62 = 62 diffServDscpMarkActDscp.63 = 63 diffServCountActNextFree.0 = 0 diffServCountActOctets.111 = 0x000888888 diffServCountActOctets.121 = 0x000999999 diffServCountActPkts.111 = 0x000000088 diffServCountActPkts.121 = 0x000000099 diffServCountActStorage.111 = volatile(2) diffServCountActStorage.121 = volatile(2) diffServCountActStatus.111 = active(1) diffServCountActStatus.121 = active(1) diffServAlgDropNextFree.0 = 0 diffServAlgDropType.500 = randomDrop(4) diffServAlgDropType.501 = other(1) diffServAlgDropType.502 = headDrop(3) diffServAlgDropNext.500 = nullOID diffServAlgDropNext.501 = diffServQNext.600 diffServAlgDropNext.502 = diffServQNext.601 diffServAlgDropQMeasure.500 = nullOID diffServAlgDropQMeasure.501 = diffServQNext.600 diffServAlgDropQMeasure.502 = diffServQNext.601 diffServAlgDropQThreshold.500 = 0 diffServAlgDropQThreshold.501 = 64 diffServAlgDropQThreshold.502 = 64 diffServAlgDropSpecific.500 = nullOID diffServAlgDropSpecific.501 = nullOID diffServAlgDropSpecific.502 = diffServRandomDropMinThreshBytes.701 diffServAlgDropOctets.500 = 0x000000000 diffServAlgDropOctets.501 = 0x000777777 diffServAlgDropOctets.502 = 0x000000000 diffServAlgDropPkts.500 = 0x000000000 diffServAlgDropPkts.501 = 0x000007777 diffServAlgDropPkts.502 = 0x000000000 diffServAlgRandomDropOctets.500 = 0x000000000 diffServAlgRandomDropOctets.501 = 0x000000000 diffServAlgRandomDropOctets.502 = 0x000666666 diffServAlgRandomDropPkts.500 = 0x000000000 diffServAlgRandomDropPkts.501 = 0x000000000 diffServAlgRandomDropPkts.502 = 0x000006666 diffServAlgDropStorage.500 = volatile(2) diffServAlgDropStorage.501 = volatile(2) diffServAlgDropStorage.502 = volatile(2) diffServAlgDropStatus.500 = active(1) diffServAlgDropStatus.501 = active(1) diffServAlgDropStatus.502 = active(1) diffServRandomDropNextFree.0 = 0 diffServRandomDropMinThreshBytes.701 = 0 diffServRandomDropMinThreshPkts.701 = 1 diffServRandomDropMaxThreshBytes.701 = 0 diffServRandomDropMaxThreshPkts.701 = 10 diffServRandomDropProbMax.701 = 1000 diffServRandomDropWeight.701 = 512 diffServRandomDropSamplingRate.701 = 0 diffServRandomDropStorage.701 = volatile(2) diffServRandomDropStatus.701 = active(1) diffServQNextFree.0 = 0 diffServQNext.600 = diffServSchedulerNext.800 diffServQNext.601 = diffServSchedulerNext.801 diffServQMinRate.600 = diffServMinRatePriority.900 diffServQMinRate.601 = nullOID diffServQMaxRate.600 = nullOID diffServQMaxRate.601 = diffServMaxRateAbsolute.901 diffServQStorage.600 = volatile(2) diffServQStorage.601 = volatile(2) diffServQStatus.600 = active(1) diffServQStatus.601 = active(1) diffServSchedulerNextFree.0 = 0 diffServSchedulerNext.800 = diffServSchedulerNext.801 diffServSchedulerNext.801 = nullOID diffServSchedulerMethod.800 = diffServSchedulerPriority diffServSchedulerMethod.801 = diffServSchedulerWFQ diffServSchedulerMinRate.800 = diffServMinRatePriority.901 diffServSchedulerMinRate.801 = nullOID diffServSchedulerMaxRate.800 = nullOID diffServSchedulerMaxRate.801 = nullOID diffServSchedulerStorage.800 = volatile(2) diffServSchedulerStorage.801 = volatile(2) diffServSchedulerStatus.800 = active(1) diffServSchedulerStatus.801 = active(1) diffServMinRateNextFree.0 = 0 diffServMinRatePriority.901 = 4294967295 diffServMinRatePriority.902 = 1 diffServMinRateAbsolute.901 = 128 diffServMinRateAbsolute.902 = 0 diffServMinRateRelative.901 = 0 diffServMinRateRelative.902 = 750 diffServMinRateStorage.901 = volatile(2) diffServMinRateStorage.902 = volatile(2) diffServMinRateStatus.901 = active(1) diffServMinRateStatus.902 = active(1) diffServMaxRateNextFree.0 = 0 diffServMaxRateAbsolute.902.1 = 1000 diffServMaxRateAbsolute.902.2 = 0 diffServMaxRateRelative.902.1 = 0 diffServMaxRateRelative.902.2 = 500 diffServMaxRateThreshold.902.1 = 25000 diffServMaxRateThreshold.902.2 = 0 diffServMaxRateStorage.902.1 = volatile(2) diffServMaxRateStorage.902.2 = volatile(2) diffServMaxRateStatus.902.1 = active(1) diffServMaxRateStatus.902.2 = active(1)
Additional References
Related Documents
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
Cisco IOS Master Commands List, All Releases |
QoS commands |
Cisco IOS Quality of Service Solutions Command Reference |
Standards and RFCs
Standard/RFC |
Title |
---|---|
RFC 3289 |
Management Information Base for the Differentiated Services Architecture |
MIBs
MIB |
MIBs Link |
---|---|
DiffServ MIB |
To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL: |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
Feature Information for DiffServ MIB
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.Feature Name |
Releases |
Feature Information |
---|---|---|
DiffServ MIB |
15.3(1)T Cisco IOS XE 3.8S |
This feature provides support for QoS Diffserv MIB (RFC 3289). The following command was introduced or modified: qos diffservmib. |