- Default DOCSIS 1.0 ToS Overwrite
- DOCSIS 1.1 for the Cisco CMTS Routers
- DOCSIS WFQ Scheduler on the Cisco CMTS Routers
- Dynamic Bandwidth Sharing on the Cisco CMTS Router
- Fairness Across DOCSIS Interfaces
- Modular Quality of Service Command-Line Interface QoS on the Cisco CMTS Routers
- Service Flow Admission Control for the Cisco CMTS Routers
- Subscriber Traffic Management for the Cisco CMTS Routers
- Prerequisites for SFAC for the Cisco CMTS Routers
- Restrictions for SFAC
- Information About SFAC
- Overview of SFAC for the Cisco CMTS
- SFAC and Cisco Universal Broadband Routers
- SFAC and Cisco CMTS Resources
- SFAC and CPU Utilization
- SFAC and Memory Utilization
- SFAC and Upstream or Downstream Bandwidth Utilization
- Comparing SFAC with Prior Admission Control
- Overview of Bonding Group Admission Control
- How to Configure, Monitor, and Troubleshoot Service Flow Admission Control
- Enabling SFAC for Event Types
- Configuring SFAC Based on CPU Utilization
- Configuring SFAC Based on Memory Resources
- Defining Rules for Service Flow Categorization
- Naming Application Buckets
- Defining Maximum Reserved Bandwidth Limit
- Setting Downstream and Upstream Application Thresholds
- Preempting High-Priority Emergency 911 Calls
- Calculating Bandwidth Utilization
- Monitoring and Troubleshooting Commands for SFAC
- Bandwidth Validity Checks for SFAC
- Displaying Application Buckets for SFAC
- Displaying Service Flow Reservation Levels
- Displaying SFAC Configuration and Status
- Debugging SFAC for Different Event Types
- Debugging SFAC for CPU Resources
- Debugging SFAC for Memory Resources
- Debugging SFAC for Downstream Bandwidth
- Debugging SFAC for Upstream Throughput
- Debugging Flow Categorization for SFAC
- Debugging Wideband Interfaces for SFAC
- What to Do Next
Service Flow
Admission Control for the Cisco CMTS Routers
First Published: February 14, 2008
Last Updated: November 29, 2010
![]() Note | Cisco IOS Release 12.2(33)SCA integrates support for this feature on the Cisco CMTS routers. This feature is also supported in Cisco IOS Release 12.3BC, and this document contains information that references many legacy documents related to Cisco IOS 12.3BC. In general, any references to Cisco IOS Release 12.3BC also apply to Cisco IOS Release 12.2SC. |
This document describes the topics, advantages, configuration, and monitoring capabilities of Service Flow Admission Control (SFAC) on the Cisco CMTS.
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see 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 at the end of this document.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http://tools.cisco.com/ITDIT/CFN/. An account on http://www.cisco.com/ is not required.
Contents
- Prerequisites for SFAC for the Cisco CMTS Routers
- Restrictions for SFAC
- Information About SFAC
- How to Configure, Monitor, and Troubleshoot Service Flow Admission Control
- Configuration Examples for SFAC
- Additional References
- Feature Information for SFAC for the Cisco Cable Modem Termination System
Prerequisites for SFAC for the Cisco CMTS Routers
The Service Flow Admission Control (SFAC) feature is supported on the Cisco CMTS routers in Cisco IOS Release 12.3BC and 12.2SC. Table below shows the hardware compatibility prerequisites for this feature.
|
CMTS Platform |
Processor Engine |
Cable Interface Cards |
||
|---|---|---|---|---|
|
Cisco uBR10012 Universal Broadband Router |
Cisco IOS Release 12.3(21)BC and later releases Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCB and later releases
Cisco IOS Release 12.2(33)SCC and later releases
Cisco IOS Release 12.2(33)SCH and later releases
|
Cisco IOS Release 12.3(21)BC and later releases
Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCC and later releases
Cisco IOS Release 12.2(33)SCE and later releases
|
||
|
Cisco uBR7246VXR Universal Broadband Router |
Cisco IOS Release 12.3(21)BC and later releases
Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCD and later releases
|
Cisco IOS Release 12.3(21)BC and later releases
Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCD and later releases
|
||
|
Cisco uBR7225VXR Universal Broadband Router |
Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCD and later releases
|
Cisco IOS Release 12.2(33)SCA and later releases
Cisco IOS Release 12.2(33)SCD and later releases
|
Restrictions for SFAC
SFAC in Cisco IOS Release 12.3(21)BC and 12.2(33)SC follows these general factors when implementing on the Cisco CMTS:
- Configure SFAC before admitting any static or dynamic service flows. The best option is to have the configuration in place during startup time, or before the interface is up.
-
SFAC in Cisco IOS Release 12.3(21)BC and Cisco IOS Release 12.2(33)SC supports the following resource monitoring on the Cisco CMTS:
- Upstream and downstream bandwidth on the Cisco CMTS
- CPU utilization and memory resources on the Cisco uBR10012, Cisco uBR7246VXR, and Cisco uBR7225VXR router chassis (Cisco uBR10-MC5X20U and Cisco uBR-MC88V broadband processing engines)
- SFAC does not support WAN bandwidth monitoring for the Cisco uBR10012, Cisco uBR7246VXR, and Cisco uBR7225VXR routers.
Information About SFAC
This section describes DOCSIS topics and configuration options supported on the Cisco CMTS for SFAC.
- Overview of SFAC for the Cisco CMTS
- SFAC and Cisco Universal Broadband Routers
- SFAC and Cisco CMTS Resources
- SFAC and CPU Utilization
- SFAC and Memory Utilization
- SFAC and Upstream or Downstream Bandwidth Utilization
- Comparing SFAC with Prior Admission Control
- Overview of Bonding Group Admission Control
Overview of SFAC for the Cisco CMTS
SFAC on the Cisco CMTS is a mechanism that gracefully manages service flow admission requests when one or more resources are not available to process and support the incoming service request. Lack of such a mechanism not only causes the new request to fail with unexpected behavior but could potentially cause the flows that are in progress to have quality related problems. SFAC monitors such resources constantly, and accepts or denies requests depending on the resource availability.
SFAC enables you to provide a reasonable guarantee about the Quality of Service (QoS) to subscribers at the time of call admission, and to enable graceful degradation of services when resource consumption approaches critical levels. SFAC reduces the impact of unpredictable traffic demands in circumstances that would otherwise produce degraded QoS for subscribers.
SFAC uses two event types for resource monitoring and management—cable modem registration and dynamic service (voice call) requests. When either of these two events occurs on the Cisco CMTS, SFAC verifies that the associated resources conform to the configured limits prior to admitting and supporting the service call request.
SFAC is not a mechanism to apply QoS to the traffic flows. Scheduling and queuing are some of the mechanisms used for implementing the QoS. The QoS is applied on per packet basis. SFAC checks are performed before the flow is admitted.
SFAC in Cisco IOS Release 12.3(21)BC monitors the following resources on the Cisco CMTS.
- CPU utilization —SFAC monitors CPU utilization on the Cisco CMTS, and preserves QoS for existing service flows when new traffic would otherwise compromise CPU resources on the Cisco CMTS.
- Memory resource utilization (I/O, Processor, and combined total) —SFAC monitors one or both memory resources and their consumption, and preserves QoS in the same way as with CPU utilization.
- Bandwidth utilization for upstream and downstream —SFAC monitors upstream and downstream bandwidth utilization, and associated service classes, whether for data or dynamic service traffic.
![]() Note | See also SFAC and Cisco CMTS Resources. |
![]() Note | SFAC begins graceful degradation of service when either a critical threshold is crossed, or when bandwidth is nearly consumed on the Cisco CMTS, depending on the resource being monitored. |
SFAC enables you to configure major and minor thresholds for each resource on the Cisco CMTS. These thresholds are expressed in a percentage of maximum allowable resource utilization. Alarm traps may be sent each time a minor or major threshold is crossed for a given resource.
For system-level resources, such as CPU and memory utilization, you can configure critical thresholds in addition to the major and minor thresholds. When a critical threshold is crossed, further service requests are gracefully declined until the associated resource returns to a lower threshold level.
For upstream (US) and downstream (DS) channels, you can configure the bandwidth allocation with exclusive and non-exclusive thresholds. These thresholds can be configured for specified DOCSIS traffic types.
- Exclusive bandwidth indicates the percentage of bandwidth that is allocated exclusively for the specified traffic type. This bandwidth may not be shared with any other traffic type.
- Non-exclusive bandwidth indicates the percentage of bandwidth that is configured in addition to the exclusive bandwidth. Non-exclusive bandwidth is also configured for specific DOCSIS traffic types. Non-exclusive bandwidth is not guaranteed, and may be shared with other traffic types.
- The sum of exclusive and non-exclusive thresholds indicates the maximum bandwidth the specified traffic type may use.
SFAC and Cisco Universal Broadband Routers
- SFAC on the Cisco uBR10012 Universal Broadband Router
- SFAC on the Cisco uBR7246VXR and the Cisco uBR7225VXR Universal Broadband Routers
- SFAC and Memory Requirements for the Cisco CMTS
SFAC on the Cisco uBR10012 Universal Broadband Router
Cisco IOS Release 12.3(21)BC and Cisco IOS Release 12.2(33)SC support SFAC on the Cisco uBR10012 router and all broadband processing engines.
Starting with Cisco IOS Release 12.2(33) SCC, the SFAC support is extended to bonded channels (wideband interface for downstream and upstream channel bonding), modular cable, and integrated cable interfaces.
SFAC on the Cisco uBR7246VXR and the Cisco uBR7225VXR Universal Broadband Routers
Cisco IOS release 12.3(21)BC and Cisco IOS release 12.2(33)SC support SFAC on the Cisco uBR7246VXRand uBR7225VXR routers.
Starting with Cisco IOS Release 12.2(33) SCC, the SFAC support is extended to bonded channels (wideband interface for downstream and upstream channel bonding), modular cable, and integrated cable interfaces.
interface for down stream and upstreamCB) as well as Modular cable and Integrated cable interfaces.
SFAC and Memory Requirements for the Cisco CMTS
SFAC for the Cisco CMTS is a powerful feature that maintains Quality of Service (QoS) on the Cisco CMTS and enforces graceful degradation in service when attempted consumption exceeds resource availability.
Additional memory is required in the Cisco universal broadband router to maintain and store information about various scheduling types, the distribution of upstream or downstream traffic, and associated resource check processes. For complete information about memory requirements and Cisco IOS Release 12.3(21)BC, refer to the corresponding release notes for your product:
- Release Notes for Cisco uBR10012 Universal Broadband Router for Cisco IOS Release 12.3 BC
- Release Notes for Cisco uBR7200 Series for Cisco IOS Release 12.3 BC
http://www.cisco.com/en/US/docs/cable/cmts/ubr7200/release/notes/12_3bc/123BCu72.html
- Release Notes for Cisco Universal Broadband Routers in Cisco IOS Release 12.2SC
SFAC and Cisco CMTS Resources
SFAC with Cisco IOS Release 12.3(21)BC implements graceful QoS policies for the following resources of the Cisco CMTS:
System-Level Resources—Impact All Cisco CMTS Functions
Bandwidth-Level Resources—Impact Traffic Per Interface or Per Port
- Downstream DOCSIS 1.1 bandwidth with QoS support on Cisco cable interface line cards or BPEs
- Upstream DOCSIS 1.1 bandwidth with QoS support on Cisco cable interface line cards or BPEs
Cisco IOS release 12.3(21)BC supports the following resources for the following Cisco CMTS routers:
Cisco uBR10012 Router Resources
- Cisco uBR Route Processor
- CPU Utilization
- Processor Memory
- I/O Memory
- Cisco uBR Cable Interface Line Card
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7246VXR Router Resources with the Cisco MC28U Cable Interface Line Card
- Cisco uBR Route Processor
- CPU Utilization
- Processor Memory
- I/O Memory
- Cisco uBR Cable Interface Line Card
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7246VXR Router Resources without the Cisco MC28U Cable Interface Line Card
- Network Processing Engine
- CPU Utilization
- Processor Memory
- I/O Memory
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7246VXR Router Resources with the Cisco MC88V Cable Interface Line Card
- Cisco uBR Router Processor
- CPU Utilization
- Processor Memory
- I/O Memory
- Cisco uBR Cable Interface Line Card
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7246VXR Router Resources without the Cisco MC88V Cable Interface Line Card
- Network Processing Engine
- CPU Utilization
- Processor Memory
- I/O Memory
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7225VXR Router Resources with the Cisco MC28U Cable Interface Line Card
- Cisco uBR Router Processor
- CPU Utilization
- Processor Memory
- I/O Memory
- Cisco uBR Cable Interface Line Card
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7225VXR Router Resources without the Cisco MC28U Cable Interface Line Card
- Network Processing Engine
- CPU Utilization
- Processor Memory
- I/O Memory
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7225VXR Router Resources with the Cisco MC88V Cable Interface Line Card
- Cisco uBR Router Processor
- CPU Utilization
- Processor Memory
- I/O Memory
- Cisco uBR Cable Interface Line Card
- Downstream Bandwidth
- Upstream Bandwidth
Cisco uBR7225VXR Router Resources without the Cisco MC88V Cable Interface Line Card
- Network Processing Engine
- CPU Utilization
- Processor Memory
- I/O Memory
- Downstream Bandwidth
- Upstream Bandwidth
For more information, see the How to Configure, Monitor, and Troubleshoot Service Flow Admission Control.
SFAC and CPU Utilization
CPU utilization is defined and monitored either as a five-second or a one-minute average. Both averages cannot be configured at the same time for any given resource. For CPU utilization, you can set minor, major, and critical threshold levels.
For additional information, refer to the Configuring SFAC Based on CPU Utilization.
SFAC and Memory Utilization
SFAC can define up to three different memory options on the Cisco CMTS:
- IO memory - Current available (free) I/O memory
- Processor memory - Current available processor memory
- Both - Combined (IO and processor) memory that are available on the router
Memory resources are similar to CPU utilization, in that you can set minor, major, and critical threshold levels. Memory-based SFAC is supported for memory on the main CPU in Cisco IOS Release 12.3(21)BC, and not for the broadband processing engine line card memory.
For additional information, refer to the Configuring SFAC Based on Memory Resources.
SFAC and Upstream or Downstream Bandwidth Utilization
SFAC allows you to control the bandwidth usage for various DOCSIS traffic types or application types. The application types are defined by the user using a CLI to categorize the service flow.
- Categorization of Service Flows
- Thresholds for Upstream or Downstream Bandwidth
- Exclusive and Non-Exclusive Bandwidth Thresholds
Categorization of Service Flows
The SFAC feature allows you to allocate the bandwidth based on the application types. Flow categorization allows you to partition bandwidth in up to eight application types or buckets. The composition of a bucket is defined by the command-line interface (CLI), as is the definition of rules to categorize service flows into one of these eight application buckets. Various attributes of the service flow may be used to define the rules.
For flows created by PacketCable, the following attributes may be used:
- The priority of the Packetcable gate associated with the flow (high or normal)
For flows created by PacketCable MultiMedia (PCMM), the following attributes may be used:
- Priority of the gate (0 to 7)
- Application type (0 to 65535)
The scheduling type for Upstream flows uses the following attribute type:
- Service class name
Before a service flow is admitted, it is passed through the categorization routine. Various attributes of the service flow are compared with the user-configured rules. Based on the match, the service flow is labeled with application type, from 1 to 8. The bandwidth allocation is then performed per application type.
Before a service flow is admitted, it is categorized based on its attributes. The flow attributes are compared against CLI-configured rules, one bucket at a time. If a match is found for any one of the rules, the service flow is labeled for that bucket, and no further check is performed.
Bucket 1 rules are scanned first and bucket 8 rules are scanned last. If two different rules match two different buckets for the same service flow, the flow gets categorized under the first match. If no match is found, the flow is categorized as Best Effort (BE) and the bucket with best effort rule is labelled to the flow. By default, the BE bucket is bucket 8.
Thresholds for Upstream or Downstream Bandwidth
SFAC monitors upstream or downstream bandwidth consumption with minor, major, and critical thresholds. SFAC generates alarm traps when bandwidth consumption crosses minor and major thresholds. For additional information, refer to the How to Configure, Monitor, and Troubleshoot Service Flow Admission Control.
Exclusive and Non-Exclusive Bandwidth Thresholds
In addition to minor and major thresholds, SFAC also allows configuration of exclusive or non-exclusive thresholds.
- Exclusive bandwidth thresholds, for the upstream or downstream bandwidth, define a given percentage of the total (100%) bandwidth, and dedicate it to a specific traffic type.
- Non-exclusive bandwidth thresholds can be shared with multiple traffic types. Non-exclusive bandwidth is typically used by Best Effort traffic, yet remains available to other traffic types when required.
When the traffic usage exceeds the exclusive threshold, SFAC checks if there is any non-exclusive bandwidth available. Any new service request is permitted only if sufficient non-exclusive bandwidth is available.
Comparing SFAC with Prior Admission Control
The prior Admission Control feature on the Cisco CMTS was introduced in Cisco IOS Release 12.3(13a)BC. This prior version of Admission Control allows you to set minor, major, exclusive and non-exclusive thresholds. This topic lists changes introduced for SFAC in Cisco IOS Release 12.3(21)BC, and identifies which part of the functionality is changed and which functionality is preserved.
![]() Note | The configuration, monitoring, and debugging commands used for the original Admission Control feature are not supported for the SFAC bucket scheme. |
- SFAC retains the prior Admission Control concept of thresholds. SFAC enables configuration of major, minor, exclusive and non-exclusive thresholds. However, SFAC is distinct and unique in that the thresholds are applied per application bucket, numbered 1 to 8.
- For downstream service flows, the prior Admission Control feature permitted bandwidth allocation for only data and voice traffic, and only PacketCable voice was recognized. SFAC uniquely allows bandwidth allocation per application bucket. As with Admission Control, however, SFAC allocates bandwidth for PacketCable voice by configuring the appropriate rules that apply to the application buckets.
- Upstream bandwidth allocation in SFAC is not based on the scheduling types, such as UGS, RTPS and so forth. SFAC newly handles upstream channels in fashion similar to downstream channels—the upstream channels also support eight application types. You may configure SFAC bandwidth allocation based on the scheduling types. You achieve the same result, however, by defining the appropriate rules to map each scheduling type into one of the eight buckets.
- SFAC monitors and manages Cisco CMTS resources according to the categorization of service flow, in which service flow policies, status and resource management are configured and processed in more categorical fashion, to include support for both PacketCable and PacketCable MultiMedia voice traffic.
- SFAC newly treats upstream and downstream traffic in the same manner and in more uniform fashion than the previous Admission Control feature.
- Exclusive and non-exclusive thresholds define resource management processes of the SFAC feature.
- SFAC introduces enhanced support for the CISCO-CABLE-ADMISSION-CTRL-MIB.
Overview of Bonding Group Admission Control
DOCSIS 3.0 introduced bonded channels or bonding groups that allow a single cable modem to send data over multiple RF channels achieving higher throughput. These bonding groups are defined for both upstream and downstream channels. Cisco IOS 12.2(33)SCC release extends the SFAC feature to support upstream and downstream bonding groups.
Bonding groups are created by combining multiple RF channels. A single RF channel may also be shared by multiple bonding groups.
Bonding group SFAC functionality allows to define the maximum reserved bandwidth for an application-type as a fraction of the available bandwidth. This fraction of the bandwidth is defined as a percentage value of the total bandwidth that can be reserved.
In order to support SFAC for bonding groups, Cisco IOS 12.2(33)SCC release introduced a new command to specify the reserve-able bandwidth available for a bonding group. Thus 100% threshold equals the bandwidth that can be reserved for a bonding group.
For additional information, refer to the Defining Maximum Reserved Bandwidth Limit.
How to Configure, Monitor, and Troubleshoot Service Flow Admission Control
This section describes the following configuration, monitoring and troubleshooting procedures for the SFAC (SFAC) feature. Configuration procedures are optional, given default configurations are enabled in Cisco IOS Release 12.3(21)BC. This section presents a sequence of procedures for non-default configurations, monitoring and debugging procedures that apply in default or non-default operations of SFAC.
- Enabling SFAC for Event Types
- Configuring SFAC Based on CPU Utilization
- Configuring SFAC Based on Memory Resources
- Defining Rules for Service Flow Categorization
- Naming Application Buckets
- Defining Maximum Reserved Bandwidth Limit
- Setting Downstream and Upstream Application Thresholds
- Preempting High-Priority Emergency 911 Calls
- Calculating Bandwidth Utilization
- Monitoring and Troubleshooting Commands for SFAC
Enabling SFAC for Event Types
SFAC can be enabled for one or more of the following events. At least one of these events must be configured for SFAC on the Cisco CMTS prior to the configuration of any additional settings:
- the registration of a cable modem
- the request for a dynamic service, such as a PacketCable or PCMM voice call
Perform these steps to configure either or both event types on the Cisco CMTS.
![]() Note | Starting from Cisco IOS Release 12.2(33)SCC, during a CM registration process, if a SFAC committed information rate (CIR) threshold value for a matching bucket is exceeded due to admission of a non-zero CIR service flow, the CM registration will be rejected by admission control with a minimum reserve rate failure. This functionality helps in avoiding CIR over-subscription that was observed in CM registration processes prior to Cisco IOS Release 12.2(33)SCC. |
SFAC requires that event types, traffic types and CMTS resource thresholds be configured and enabled on the Cisco CMTS.
Once configured, event types and SFAC event activity on the Cisco CMTS can be reviewed using the following two commands:
If the resources to be monitored and managed by SFAC are not yet configured on the Cisco CMTS, refer to the additional procedures in this document for information about their configuration.
Configuring SFAC Based on CPU Utilization
SFAC allows you to configure minor, major and critical thresholds for CPU utilization. The thresholds are specified as percentage of CPU utilization. When the an event such as cable modem registration or dynamic service takes place, and the CPU utilization is greater than the major or minor threshold, an alarm is generated. If it is greater than the critical threshold, the new service is gracefully declined.
SFAC enforces threshold levels in one of two ways. The Cisco CMTS supports both enforcement methods, but both cannot be configured at the same time.
- cpu-5sec—This finest-level setting configures the Cisco CMTS to reject new requests when the cpu-5sec utilization has exceeded the configured critical threshold. This protects any time-sensitive activities on the router. SFAC takes action on the router when a new request might otherwise exceed the configured CPU threshold level.
![]() Note | When CPU utilization exceeds the critical threshold, new requests for dynamic service flow creation for packetcable are rejected. However, new requests for CM registration will still be accepted as long as bandwidth thresholds are not crossed. |
- cpu-avg—This normal-level setting is a CPU utilization average, enforced by sampling the CPU utilization at much lower frequency and calculating an exponentially weighted average. SFAC takes action on the router when a new service request might otherwise exceed the configured CPU peak threshold level.
| Command or Action | Purpose | |||
|---|---|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. | ||
| Step 2 | configure
terminal
Example: Router# configure terminal |
Enters global configuration mode. | ||
| Step 3 | [no]
cable
admission-control {cpu-5sec |
cpu-avg}
minor
num1
major
num2
critical
num3
Example: Router# no cable admission-control cpu-avg minor 60 major 70 critical 80 |
Configures CPU memory thresholds on the Cisco CMTS for SFAC.
There are no default values for this command.
| ||
| Step 4 |
Ctrl-Z
Example: Router(config-if)# Ctrl^Z |
Returns to Privileged EXEC mode. |
![]() Note | When the minor value (num1 ) is crossed, then an alarm (trap) is sent. When the major value (num2 ) is crossed, then another alarm (trap) is sent. When the critical value (num3 ) is crossed, then the request is gracefully declined. |
![]() Note | The threshold counters are set to zero when the resource is re-configured. |
![]() Note | The minor threshold should be less than the major threshold, and the major threshold must be less than the critical threshold. |
Configuring SFAC Based on Memory Resources
Three different memory resource options can be configured on the Cisco CMTS:
- IO memory - Current available (free) I/O memory
- Processor memory - Current available processor memory
- Both - Combined (IO and processor) memory that are available on the router
Memory-based SFAC is supported for memory on the main CPU in Cisco IOS Release 12.3(21)BC, and not for the broadband processing engine line card memory. As with CPU utilization, you can set minor, major, and critical threshold levels.
![]() Note | When memory utilization exceeds the critical threshold, new requests for dynamic service flow creation for packetcable are rejected. However, new requests for CM registration will still be accepted as long as bandwidth thresholds are not crossed. |
| Command or Action | Purpose | |||
|---|---|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode.
| ||
| Step 2 | configureterminal
Example: Router# configure terminal |
Enters global configuration mode. | ||
| Step 3 | [no]
cable admission-control {
io-mem |
proc-mem |
total-memory}
minor
num1
major
num2
critical
num3
Example: Router# no cable admission-control io-mem minor 60 major 70 critical 80 |
Configures CPU memory thresholds on the Cisco router. There are no default values for this command.
| ||
| Step 4 |
Ctrl-Z
Example: Router(config-if)# Ctrl^Z |
Returns to Privileged EXEC mode. |
![]() Note | When the minor value (num1 ) is crossed, then an alarm (trap) is sent. When the major value (num2 ) is crossed, then another alarm (trap) is sent. When the critical value (num3 ) is crossed, then the request is gracefully declined. |
![]() Note | The threshold counters are set to zero when the resource is re-configure. |
Defining Rules for Service Flow Categorization
This procedure describes how to configure service flow categorization rules on the Cisco CMTS. This flexible procedure changes default global service flow rules with variations of the cable application type include command.
By default, Cisco IOS Release 12.3(21)BC enables the definition of service flows according to application or traffic type, with bucket assignments for a standard set of service flow applications.
Any one or several of these steps or commands may be used, in nearly any combination, to set or re-configure SFAC on the Cisco CMTS.
![]() Note | Application rules for SFAC are global configurations, and upstream and downstream bandwidth resources use the same sets of service flow rules. |
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | configure
terminal
Example: Router# configure terminal |
Enters global configuration mode. |
| Step 3 | cable
application-type
n
include
packetcable {
normal |
priority }
Example: Router(config)# cable application-type 5 include packetcable priority |
For PacketCable, this command variation maps PacketCable service flow attributes to the specified bucket. PacketCable service flows are associated with PacketCable gates. The gate can be normal or high-priority. |
| Step 4 | cable
application-type
n
include
pcmm
{priority
gate-priority
/
app-id
gate-app-id
}
Example: Router(config)# cable application-type 2 include pcmm priority 7 Router(config)# cable application-type 2 include pcmm app-id 152 |
For PCMM, this command variation maps PCMM service flow priority or application to the specified bucket. The PCMM gates are characterized by a priority level and by an application identifier. |
| Step 5 | cable
application-type
n
include
scheduling-type
type
Example: Router(config)# cable application-type 1 include scheduling-type ugs Router(config)# cable application-type 1 include scheduling-type ugs-ad |
For DOCSIS scheduling types, this command variation binds the DOCSIS scheduling types into the designated application bucket. DOCSIS 1.1 specifies the scheduling type to bind QoS parameters to the service flows for upstream traffic. |
| Step 6 | cable
application-type
n
include
service-class
service-class-name
Example: Router(config)# cable application-type 1 include service-class stream1 |
For service class parameters, this command variation applies a service class name to the service flows, and applies corresponding QoS parameters. DOCSIS 1.1 introduced the concept of service classes. A service class is identified by a service class name. A service class name is a string that the Cisco CMTS associates with a QoS parameter set One of the objectives of using a service class is to allow the high level protocols to create service flows with the desired QoS parameter set. Using a service class is a convenient way to bind the application with the service flows. The rules provide a mechanism to implement such binding. Note the following factors when using the command in this step:
|
| Step 7 |
cable
application-type n
include
BE
Example: Router# cable application-type 3 include BE |
For Best Effort service flows, this command variation elaborates on Step 3, and changes the default bucket of 8 for Best Effort service flows with non-zero Committed Information Rate (CIR). These BE service flows are often created during cable modem registration. Note that there is an alternate rule that applies to the Best Effort scheduling type. This rule is applicable only for upstream service flows, as described in an earlier step of this procedure. The BE CIR service flow rule may be applicable to both upstream and downstream. However, in the case of upstream service flows, in most cases, the same service flow may map both the rules.
|
| Step 8 | Ctrl-Z
Example: Router(config)# Ctrl^Z |
Returns to Privileged EXEC mode.
|
The following example maps high-priority PacketCable service flows into application bucket 5.
Router(config)# cable application-type 5 include packetcable priority
The following example maps normal PacketCable service flows into application bucket 1.
Router(config)# cable application-type 1 include packetcable normal
The following example maps the specified bucket number with PCMM service flow with a priority of 7, then maps an application identifier of 152 for the same bucket number:
Router(config)# cable application-type 2 include pcmm priority 7 Router(config)# cable application-type 2 include pcmm app-id 152
The following example maps both UGS and UGS-AD into bucket number 1:
Router(config)# cable application-type 1 include scheduling-type ugs Router(config)# cable application-type 1 include scheduling-type ugs-ad
The following example maps the Best Effort CIR flows to bucket 3:
Router(config)# cable application-type 3 include BE
Naming Application Buckets
This procedure enables you to assign alpha-numeric names to six of the eight application buckets that SFAC supports. The default bucket identifiers range from 1 to 8.
| Command or Action | Purpose | |||
|---|---|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. | ||
| Step 2 | configureterminal
Example: Router# configure terminal |
Enters global configuration mode. | ||
| Step 3 | cable
application-type
nname bucket-name
Example: Router(config)# cable application-type 7 name besteffort |
Assigns an alpha-numeric name for the specified bucket.
| ||
| Step 4 | Ctrl-Z
Example: Router(config)# Ctrl^Z |
Returns to Privileged EXEC mode. |
Defining Maximum Reserved Bandwidth Limit
This procedure enables you to define the maximum bandwidth available for CIR reservations per bonding group for all service flows that are allowed by the Cisco CMTS. The bandwidth limit depends on the RF bandwidth percent configuration for the specific bonding group.
The max-reserved-bandwidth for WB/MC/IC interfaces have lower threshold as 1% instead of 0%. For upstream and downstream bonding the lower threshold is 0%.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | configure
terminal
Example: Router# configure terminal |
Enters global configuration mode. |
| Step 3 |
interface
cable {slot/port |
slot/subslot
/port
}
Example: Router(config)# interface cable w1/0/0:0 |
(Optional) Interface configuration mode implements this feature only for the specific WB, IC, or MC interface, and upstream bonding groups. Use global configuration mode in step 4 for global configurations. If downstream thresholds are configured for the interface, then that configuration supersedes the global configuration. |
| Step 4 |
cable
admission-control
max-reserved-bandwidth
bw-in-kbps
Example: Router(config-if)# cable admission-control max-reserved-bandwidth 6344 |
Defines the maximum reserved bandwidth for the specific WB, IC or MC interface. |
| Step 5 |
Ctrl-Z
Example: Router(config)# Ctrl^Z |
Returns to Privileged EXEC mode. |
Setting Downstream and Upstream Application Thresholds
This procedure sets downstream and upstream applications thresholds for SFAC on the Cisco CMTS. This procedure extends the previous Admission Control commands from earlier Cisco IOS releases to support additional applications in SFAC. The settings in this procedure may be applied in either global or per-interface mode for downstream and upstream applications, and may also be applied in per-upstream fashion if desired.
Precedence of These Configuration Commands
SFAC based on bandwidth can be configured at the interface or global level. For upstream bandwidth, SFAC can be configured at the per-upstream level as well.
For downstream channels, the interface-level thresholds have higher precedence over the global thresholds configured. For upstream ports, the port-level thresholds have higher precedence over interface-level thresholds; and the interface-level thresholds have higher precedence over global thresholds.
As such, if you configure both global and interface-level downstream thresholds, the interface-level thresholds are effective for that interface. In similar fashion, if you configure port-level settings and the interface-level upstream thresholds, the port-level thresholds are effective on that port. The remaining ports, with no port-level thresholds in place, use the interface-level upstream thresholds.
| Command or Action | Purpose | |||
|---|---|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. | ||
| Step 2 | configureterminal
Example: Router# configure terminal |
Enters global configuration mode. | ||
| Step 3 |
interface
cable {slot/port |
slot/subslot
/port
}
Example: Router(config)# interface c5/0/1 Router(config-if)# |
(Optional). Interface configuration mode implements this feature only for the specified interface. Use global configuration mode in step 4 for global configurations. If downstream thresholds are configured for the interface, then that configuration supersedes global configuration.
| ||
| Step 4 | cable
admission-control
ds-bandwidth
bucket-no
n
minor
minor-threshold
major
major-threshold
exclusive
exclusive-percentage [
non-exclusive
non-exclusive-percentage ]
Example: Router(config)# cable admission-control ds-bandwidth bucket-no 1 minor 15 major 25 exclusive 30 non-exclusive 15 |
Sets minor, major and exclusive thresholds for downstream voice or data bandwidth for each or all interfaces on the Cisco CMTS. Repeat this step when setting bandwidth for multiple buckets. Global configuration mode implements this feature across the entire Cisco CMTS. Otherwise, use this command in interface configuration mode as per step 3. Bandwidth values are as follows:
The no form of this command removes downstream bandwidth configuration from the Cisco CMTS:
| ||
| Step 5 |
interface
cable {slot/port |
slot/subslot
/port
}
Example: Router(config)# interface c5/0/1 Router(config-if)# |
(Optional). Interface configuration mode implements this feature only for the specified interface. Use global configuration mode for global configurations.
| ||
| Step 6 | cable
admission-control
us-bandwidth
bucket-no
n
minor
minor-threshold
major
major-threshold
exclusive
exclusive-percentage [
non-exclusive
non-exclusive-percentage ]
Example: Router(config)# cable admission-control us-bandwidth bucket-no 1 minor 10 major 20 exclusive 30 non-exclusive 10 |
Configures global or interface-level upstream bandwidth thresholds and exclusive or non-exclusive resources on the Cisco CMTS. If upstream thresholds are configured for the interface, then that configuration supersedes global configuration.
| ||
| Step 7 |
interface
cable {slot/port |
slot/subslot
/port
}
Example: Router(config)# interface c5/0/1 Router(config-if)# |
(Optional). Interface configuration mode implements this feature only for the specified interface. Use global configuration mode for global configurations. If downstream thresholds are configured for the interface, then that configuration supersedes global configuration.
| ||
| Step 8 | cable
upstream
n
admission-control
us-bandwidth
bucket-no
nminor
minor-threshold
major
major-threshold
exclusive
exclusive-percentage [
non-exclusive
non-exclusive-percentage
]
Example: Router(config)# cable upstream 1 admission-control us-bandwidth bucket-no 1 minor 10 major 20 exclusive 30 non-exclusive 10 |
Configures global or interface-level upstream bandwidth thresholds and exclusive or non-exclusive resources on the Cisco CMTS. If upstream thresholds are configured for the interface, then that configuration supersedes global configuration.
| ||
| Step 9 | Ctrl-Z
Example: Router(config)# Ctrl^Z |
Returns to Privileged EXEC mode. |
Preempting High-Priority Emergency 911 Calls
You may configure SFAC rules and thresholds so that the high-priority voice (911) traffic receives an exclusive share of bandwidth. Because the average call volume for Emergency 911 traffic may not be very high, the fraction of bandwidth reserved for Emergency 911 calls may be small. In the case of regional emergency, the call volume of Emergency 911 calls may surge. In this case, it may be necessary to preempt some of the normal voice traffic to make room for surging Emergency 911 calls.
The Cisco CMTS software preempts one or more normal-priority voice flows to make room for the high-priority voice flows. SFAC provides the command-line interface (CLI) to enable or disable this preemption ability.
SFAC preemption logic follows the following steps:
- When the first pass of admission control fails to admit a high priority PacketCable flow, it checks if it is possible to admit the flow in another bucket configured for normal PacketCable calls (applicable only if the PacketCable normal and high-priority rules are configured for different buckets). If the bandwidth is available, the call is admitted in the normal priority bucket.
- If there is no room in normal priority bucket, it preempts a normal priority PacketCable flow and admits the high priority flow in the bucket where the low priority flow was preempted.
- If there is no normal priority flow that it can preempt, it rejects the admission for high-priority flow. This usually happens when both normal and high-priority buckets are filled with 911 flows.
This preemption is effective only for PacketCable high-priority flows.
When an upstream or downstream low-priority service flow is chosen for preemption, the corresponding service flow for the same voice call in the opposite direction gets preempted as well.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | configure
terminal
Example: Router# configure terminal |
Enters global configuration mode.
|
| Step 3 | [
no ]
cable
admission-control
preempt
priority-voice
Example: Router(config)# no cable admission-control preempt priority-voice |
Changes the default Emergency 911 call preemption functions on the Cisco CMTS, supporting throughput and bandwidth requirements for Emergency 911 calls above all other buckets on the Cisco CMTS. The no form of this command disables this preemption, and returns the bucket that supports Emergency 911 calls to default configuration and normal function on the Cisco CMTS.
|
| Step 4 |
Ctrl-Z
Example: Router(config)# Ctrl^Z Router# |
Returns to Privileged EXEC mode. |
Calculating Bandwidth Utilization
The SFAC feature maintains a counter for every US and DS channel, and this counter stores the current bandwidth reservation. Whenever a service request is made to create a new service flow, SFAC estimates the bandwidth needed for the new flow, and adds it to the counter. The estimated bandwidth is computed as follows:
- For DS service flows, the required bandwidth is the minimum reservation rate, as specified in the DOCSIS service flow QoS parameters.
- For US flows, the required
bandwidth is as follows:
- For BE flows the required bandwidth is the minimum reservation rate as specified in the DOCSIS service flow QoS parameters.
- For UGS flows the required bandwidth is grant size times number of grants per second, as per the DOCSIS specification.
- For RTP and RTPS flows, the required bandwidth is sum of minimum reservation rate as specified in the DOCSIS service flow QoS parameters; and the bandwidth required to schedule the request slots.
- For UGSAD flows the required bandwidth is sum of bandwidth required for payload (same as UGS flows) and the bandwidth required to schedule to request slots.
In each of the above calculations, SFAC does not account for the PHY overhead. DOCSIS overhead is counted only in the UGS and UGS-AD flows. To estimate the fraction of bandwidth available, the calculation must account for the PHY and DOCSIS overhead, and also the overhead incurred to schedule DOCSIS maintenance messages. SFAC applies a correction factor of 80% to the raw data rate to calculate the total available bandwidth.
![]() Note | For the DS and US flow in bonded channels, the maximum reserved bandwidth is the bandwidth defined for the SFAC threshold values. This value is indicated in kbps. |
Monitoring and Troubleshooting Commands for SFAC
This section describes the following monitoring and troubleshooting procedures for the SFAC (SFAC) feature.
- Bandwidth Validity Checks for SFAC
- Displaying Application Buckets for SFAC
- Displaying Service Flow Reservation Levels
- Displaying SFAC Configuration and Status
- Debugging SFAC for Different Event Types
- Debugging SFAC for CPU Resources
- Debugging SFAC for Memory Resources
- Debugging SFAC for Downstream Bandwidth
- Debugging SFAC for Upstream Throughput
- Debugging Flow Categorization for SFAC
- Debugging Wideband Interfaces for SFAC
- What to Do Next
Bandwidth Validity Checks for SFAC
SFAC is based on and monitors multiple resources on the Cisco CMTS. You can configure major, minor, exclusive and non-exclusive thresholds for various traffic types. To prevent circumstances in which some SFAC configurations are inconsistent, SFAC first validates the attempted configuration, and if an error is found, SFAC prints an error message and the configuration is not set.
Before setting the threshold limits for a given resource on the Cisco CMTS, SFAC configuration should follow these important guidelines to ensure a valid configuration:
- For the given resource, the minor threshold should be less than the major threshold, and the major threshold should be less than the exclusive or critical threshold. For example, minor threshold at 45%, major threshold at 65%, and critical threshold at 85%.
- For downstream and upstream bandwidth, the sum of the exclusive thresholds and the maximum configured non-exclusive threshold should be less than 100%. For example, consider US bandwidth configuration for various buckets. If exclusive thresholds for buckets 1-4 were configured at 15% each, this would mean a total of 60% bandwidth is reserved exclusively for these four buckets. This leaves only 40% for any non-exclusive bandwidth. Therefore, in this case, the maximum non-exclusive thresholds that any bucket can have is 40% (100% - 60%), and should be less than 40%.
Implicit Bandwidth
You may choose not to assign any explicit thresholds to certain buckets. In this case, these buckets assume implicit thresholds. In the previous example, if you do not configure any thresholds for buckets 5-8, then those buckets assume implicit thresholds. Because 60% bandwidth is already reserved by buckets 1-4, buckets 5-8 can share the remaining 40% bandwidth. This 40% bandwidth is treated in a non-exclusive manner. This information displays in supporting show commands. The implicit bucket bandwidth for WB interface is 0 unlike other cable interface types where the implicit bandwidth is 100%.
If cable application type includes any multicast application ID, then CMTS expects default bucket will not accommodate multicast service flows. If no multicast application type is configured, all the multicast service flows are admitted to the default bucket 8.
Once a bucket is configured for one multicast application ID, all the subsequent multicast application IDs should be mapped to buckets other than bucket 8.
Oversubscription
Oversubscription of a given resource on the Cisco CMTS may be encountered in one of the following ways:
- Consider a situation where voice and data are both given 50% exclusive bandwidth. If a large number of cable modems register with non-zero committed information rate (CIR) service flows, this results in consuming a large fraction of the bandwidth. This situation is called oversubscription.
- Cable modem registration with CM configuration files with CIR flows may result in oversubscription. As explained above, the admission of CIR flows, even though it violates the admission control policy, can result in oversubscription.
- Enabling SFAC events after the service flows are admitted may result in oversubscription. If the SFAC check is not enabled using the cable admission-control dynamic-service command, this can result in service flows being admitted. If the thresholds are configured, the bandwidth usage may exceed its allocated share.
- Dynamically changing the thresholds can result in oversubscription. You can make changes in dynamic fashion to the threshold levels while the flows are already admitted. If the new threshold is lower than the current reservation for a given bucket, that bucket will oversubscribe its share under the new and lower threshold.
- The service flow handling method may result in oversubscription. The amount of bandwidth exceeding the allocated bandwidth is measured as "oversubscribed bandwidth". The oversubscribed bandwidth is displayed in the show cable admission-control commands. While calculating the available bandwidth for the rest of the buckets, the oversubscribed bandwidth is not taken into consideration. We calculate effective bandwidth as follows:
Effective bandwidth = current reservation - oversubscribed bandwidth
For example, referring to the starting scenario with voice and data both given 50% bandwidth, if the data usage reaches 70%, the data bucket oversubscription totals 20%. That is, the effective bandwidth for the data bucket = 70 - 20 = 50%.
Therefore, while calculating the available bandwidth for voice, full 50% bandwidth is considered available. Note that in this example, if you allow voice utilization to reach 50%, the total reservation becomes 120%. At present the Cisco CMTS platforms do not allow total reservation to exceed 100% of the available bandwidth for downstream channels; only upstream channels may exceed 100% reservation.
Displaying Application Buckets for SFAC
Cisco IOS Release 12.3(21)BC introduces the show application-buckets command to display default or customized SFAC settings and status on the Cisco CMTS. This command displays the bucket number and bucket name, if the latter is configured, and the associated rules for each bucket. When multiple rules are applied to one bucket, the rules display in order of priority for that bucket.
This procedure presumes that SFAC is configured and operational on the Cisco CMTS.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | show
cable
application-type [
bucket-no
n]
Example: Router# show cable application-buckets 5 |
Displays rules for any or all buckets supporting SFAC on the Cisco CMTS. The configured rules for any given bucket are displayed in order of precedence in the Rule field.
|
The following example illustrates sample output of the show cable application-type command.
Router# show cable application-type
For bucket 1, Name PktCable
Packetcable normal priority gates
Packetcable high priority gates
For bucket 2, Name PCMM-Vid
PCMM gate app-id = 30
For bucket 3, Name Gaming
PCMM gate app-id = 40
For bucket 4, Name
For bucket 5, Name
For bucket 6, Name
For bucket 7, Name
For bucket 8, Name HSD
Best-effort (CIR) flows
The change made with this procedure is displayed with the show application-buckets command.
Displaying Service Flow Reservation Levels
Cisco IOS Release 12.3(21)BC introduces a new command to display service flows, application categorizations, and bandwidth consumption on the Cisco CMTS.
This procedure presumes that SFAC is configured and operational on the Cisco CMTS.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode.
|
| Step 2 | show
interface
cable {
slot / port |
slot
/ subslot / port }
admission-control
reservation {
downstream |
upstream
port-no
}
Example: Router# show interface cable 5/1/1 admission-control reservation downstream |
Displays service flows, categorizations, and bandwidth consumption on the Cisco CMTS, for the specified interface, and the specified service flow direction.
|
The following example illustrates sample output and status of the SFAC feature, and the show interface cable admission-control reservation { downstream | upstream } port-no command.
Router# show interface cable 5/1/1 admission-control reservation downstream SfId Mac Address Bucket Bucket Name State Current Reserv 4 0000.cad6.f052 8 act 0 88 0000.cad6.f052 8 act 2000 6 0000.cad6.eece 8 act 0 21 0000.cad6.eece 8 act 2000 8 0000.cad6.eebe 8 act 0 24 0000.cad6.eebe 8 act 2000 10 0000.cadb.30a6 8 act 0 27 0000.cadb.30a6 8 act 2000
Displaying SFAC Configuration and Status
Cisco IOS Release 12.3(21)BC supports an enhanced command to display service flows, application categorizations, and bandwidth consumption status on the Cisco CMTS. This command also displays DS threshold values, reservations per bucket on a modular cable or interface cable or DS channel bonding.
This procedure presumes that SFAC is configured and operational on the Cisco CMTS.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | show
cable
admission-control [global] [interface
slot/port |
slot/subslot/port] [all]
Example: Router# show cable admission-control interface cable 5/1/1 upstream 0 |
Displays the current SFAC configuration and status on the Cisco CMTS, or on a specified interface.
|
The following example illustrates further information for the SFAC feature. This example displays threshold levels and current reservation per bucket, and the oversubscribed bandwidth per bucket. Cisco IOS indicates implicitly calculated threshold with asterisk.
Router# show cable admission-control interface cable 5/1/1 upstream 0 Interface Cable5/1/1 Upstream Bit Rate (bits per second) = 4096000 Resource - Upstream Bandwidth ----------------------------- Bucket Names Minor # of Major # of Excls # of Non-Ex Curr. Curr. Conf # of No Level Times Level Times Level Times Level Resv Ovrsb Level Rejec 1 5 1312 7 1262 45 0 0 31 0 I 36 2 0 0 0 0 0 0 6* 0 0 I 0 3 0 0 0 0 0 0 6* 0 0 I 0 4 0 0 0 0 0 0 6* 0 0 I 0 5 0 0 0 0 0 0 6* 0 0 I 0 6 0 0 0 0 0 0 6* 0 0 I 0 7 0 0 0 0 0 0 6* 0 0 I 0 8 5 31 7 29 49 11 5 79 25 I 0
Debugging SFAC for Different Event Types
Cisco IOS Release 12.3(21)BC supports the debugging of service flow events for SFAC on the Cisco CMTS.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose |
|---|
The following example illustrates the enabling and display of the debug cable admission-control event command.
Router# debug cable admission-control event *Sep 12 23:15:22.867: Entering admission control check on PRE and it's a cm-registration *Sep 12 23:15:22.867: Admission control event check is TRUE
Debugging SFAC for CPU Resources
Cisco IOS Release 12.3(21)BC supports the debugging of CPU resources configured for SFAC on the Cisco CMTS.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
Configuring SFAC Based on CPU Utilization| Command or Action | Purpose |
|---|
The following example illustrates enabling and display of the debug cable admission-control cpu command.
Router# debug cable admission-control cpu *Sep 12 23:08:53.255: CPU admission control check succeeded *Sep 12 23:08:53.255: System admission control check succeeded *Sep 12 23:08:53.255: CPU admission control check succeeded *Sep 12 23:08:53.255: System admission control check succeeded
Debugging SFAC for Memory Resources
Cisco IOS Release 12.3(21)BC supports the debugging of memory resources configured for SFAC on the Cisco CMTS.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose |
|---|
The following example illustrates the enablement and displays of the debug cable admission-control memory command.
Router# debug cable admission-control memory *Sep 12 23:08:53.255: CPU admission control check succeeded *Sep 12 23:08:53.255: System admission control check succeeded *Sep 12 23:08:53.255: CPU admission control check succeeded *Sep 12 23:08:53.255: System admission control check succeeded
Debugging SFAC for Downstream Bandwidth
Cisco IOS Release 12.3(21)BC supports the debugging of downstream bandwidth resources configured for SFAC on the Cisco CMTS.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | debug
cable
admission-control
ds-bandwidth
Example: Router# debug cable admission-control ds-bandwidth |
Enables downstream throughput troubleshooting processes for SFAC. Use the no form of this command to disable this debugging. |
The following example illustrates the enablement and displays of the debug cable admission-control ds-bandwidth command.
Router# debug cable admission-control ds-bandwidth Oct 8 23:29:11: Failed to allocate DS bandwidth for CM 0007.0e01.1db5 in adding a new service entry
Debugging SFAC for Upstream Throughput
Cisco IOS Release 12.3(21)BC supports the debugging of upstream bandwidth resources configured for SFAC on the Cisco CMTS.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | debug
cable
admission-control
us-bandwidth
Example: Router# debug cable admission-control us-bandwidth |
Enables enable upstream throughput troubleshooting processes for SFAC. Use the no form of this command to disable this debugging. |
The following example illustrates the enablement and displays of the debug cable admission-control us-bandwidth command.
Router# debug cable admission-control us-bandwidth Router# Oct 8 23:29:11: Failed to allocate US bandwidth for CM 0007.0e01.9b45 in adding a new service entry
Debugging Flow Categorization for SFAC
Cisco IOS Release 12.3(21)BC introduces a new debug command that accounts for the bucket-flow scheme of SFAC. This debug command displays service flow categorization results—when a service flow is classified, the debug command displays the application by which it was categorized, along with which rule is matched.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | debug
cable
admission-control
flow-categorization
Example: Router# debug cable admission-control flow-categorization |
Enables debugging of service flow categorization processes for SFAC. This command displays service flow categorizations currently enabled on the Cisco CMTS. Use the no form of this command to disable this debugging. |
Below is a shortened example of the information displayed when the debug cable admission-control flow-categorization command is enabled on the Cisco CMTS. This command displays interface-level information.
Router# debug cable admission-control flow-categorization int ca 5/1/1 sfid 55 identified as video pcmm priority 6 matched.
Debugging Wideband Interfaces for SFAC
Cisco IOS Release 12.2(33)SCC supports debugging of the wideband interface for SFAC on the Cisco CMTS using a new debug command.
Default or manual configuration of the following procedure is required for using this debug command, with additional SFAC settings presumed, according to your requirements.
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | enable
Example: Router> enable |
Enables privileged EXEC mode. |
| Step 2 | debug
cable
wbcmts
admission-control
Example: Router# debug cable wbcmts admission-control |
Enables debugging of the wideband interface admission control on the Cisco CMTS. Use the no form of this command to disable this debugging. |
The following example shows a sample output of the debug cable wbcmts admission-control command.
Router> enable Router# debug cable wbcmts admission-control Oct 5 15:43:32.230: Wideband-Cable1/0/0:0 NB 6/1/0 app 1, nb cir = 0, total bkt cir = 0 Oct 5 15:43:32.230: total_cfg_non_ex_pct: 0, prev_bkt_resv: 0 Oct 5 15:43:32.230: total_cfg_ex_pct: 100, total_cfg_non_ex_pct: 0, total_ex_cir_cfg_bps: 72000000, total bkt resv 0 Oct 5 15:43:32.230: Wideband-Cable1/0/0:0 app 1, per_bucket_cfg_excl_bps: 0, max_non_ex_bps: 0, total_nonex_resvd_bps: 0, bkt type: 0
What to Do Next
Refer to additional non-default procedures in this document, or to the following procedures for monitoring or troubleshooting SFAC on the Cisco CMTS:
- Displaying Application Buckets for SFAC
- Displaying Service Flow Reservation Levels
- Debugging SFAC for Different Event Types
- Debugging SFAC for CPU Resources
- Debugging SFAC for Memory Resources
- Debugging SFAC for Downstream Bandwidth
- Debugging SFAC for Upstream Throughput
- Debugging Flow Categorization for SFAC
Troubleshooting Tips
SFAC supports debug and show commands for monitoring and troubleshooting functions on the Cisco CMTS. Refer to the following procedures:
If SFAC checks fail for memory resources, refer to the following sections for additional information about memory thresholds, events and configuration:
- debug cable admission-control
- show cable admission-control
- How to Configure, Monitor, and Troubleshoot Service Flow Admission Control
Configuration Examples for SFAC
This section describes solutions-level examples of the SFAC feature on the Cisco CMTS. This section illustrates the functioning of SFAC in default or non-default but properly operational configurations. This section presumes the proper use of configuration and monitoring procedures and commands described elsewhere in this document.
This section contains the following examples to illustrate SFAC:
- Example: SFAC Configuration Commands
- Example: SFAC for Downstream Traffic
- Example: SFAC for Bonding Groups
Example: SFAC Configuration Commands
In this section of configuration examples, the following SFAC parameters are set on the Cisco CMTS:
The following configuration commands enable these settings:
- To map the packetcable voice flows, these commands are used:
cable application-type 1 include packetcable normal cable application-type 1 include packetcable priority cable application-type 1 name PktCable
- To map the BE flows into bucket 8, these commands are used.
cable application-type 8 name HSD cable application-type 8 include best-effort
- Given the above configurations, you may also control bandwidth allocation to a PCMM streaming video application. The streaming video application is identified by the PCMM application ID 35. The following commands implement this configuration:
cable application-type 2 name PCMM-Vid cable application-type 2 include pcmm app-id 35
- These configurations may be verified on the Cisco CMTS using the following show commands:
Router# show cable application-type
For bucket 1, Name PktCable
Packetcable normal priority gates
Packetcable high priority gates
For bucket 2, Name PCMM-Vid
PCMM gate app-id = 30
For bucket 3, Name Gaming
PCMM gate app-id = 40
For bucket 4, Name
For bucket 5, Name
For bucket 6, Name
For bucket 7, Name
For bucket 8, Name HSD
Best-effort (CIR) flows
These above configuration examples might be omitted or changed, but the remaining examples in this section presume the above configurations.
Example: SFAC for Downstream Traffic
This example presumes that you have configured the rules according to the commands illustrated at the start of this section. All the voice flows in bucket 1. All the CIR data flows are categorized in bucket 8.
This example illustrates a sample configuration for SFAC with downstream traffic. In this example, if voice traffic exceeds 30% bandwidth consumption, additional voice flows are denied.
- 30% downstream throughput is reserved exclusively for voice traffic.
- Minor and major alarms for voice traffic to be generated at 15% and 25% respectively.
The following Cisco IOS command implements this configuration:
Router(config)# cable admission-control ds-bandwidth bucket-no 1 minor 15 major 25 exclusive 30
In this example, the voice flows are rejected when the bandwidth usage of the flows exceeds 30%.
In addition, you can allow for some flexibility by allowing flows to exceed their exclusive share, and to consume up to 50% of the total downstream throughput (30% + 20%). The following command accomplishes this:
Router(config)# cable admission control downstream bucket-no 1 minor 15 major 25 exclusive 30 non-exclusive 20
With this previous command, the bucket 1 flows are rejected when the voice usage exceeds 50% (30% + 20%).
Similarly you can configure data thresholds as follows:
Router(config)# cable admission control bucket-no 8 minor 15 major 25 exclusive 50 non-exclusive 10
With the configuration commands as above, the following multi-stage scenario illustrates how the lending and borrowing of throughput is achieved in the presence of multiple traffic classes.
Stage I—Initial Throughput Allocations
Assume downstream throughput distribution is as follows:
- Downstream voice threshold is configured at 30%, with current consumption at 20%.
- Downstream data threshold is configured at 50%, with current consumption at 40%.
Table below summarizes this throughput distribution:
|
Throughput Type |
Exclusive Threshold |
Non-exclusive Threshold |
% Consumed |
% Available |
|---|---|---|---|---|
|
Bucket-no 1 (Voice) |
30% |
20% |
20% |
30% |
|
Bucket-no 8 (Data) |
50% |
10% |
40% |
20% |
|
Uncategorized Traffic |
|
|
0% |
40% (100% -20% - 40%) |
Stage 2—Voice Traffic Exceeds 30% Exclusive Throughput
Now assume conditions change as follows:
- Voice throughput increases to 40%. Voice obtains 10% from the non-exclusive share.
- Data (Best Effort CIR) throughput usage increases to 50%, consuming all exclusive data throughput.
- Bandwidth available for uncategorized traffic shrinks to 30%.
Table below summarizes this throughput distribution:
|
Throughput Type |
Exclusive Threshold |
Non-exclusive Threshold |
% Consumed |
% Available |
|---|---|---|---|---|
|
Voice |
30% |
20% |
40% (30% + 10%) |
10% |
|
Data |
50% |
10% |
50% |
10% |
|
Uncategorized Traffic |
|
|
0% |
10% (100% - 40% - 50%) |
Step 3—Bandwidth Consumption Increases by 10%
Now assume that data throughput usage increases by 10% for a new consumption total of 60%, and voice usage remains same. This consumes all remaining non-exclusive bandwidth from Best Effort.
Table below summarizes this throughput distribution:
|
Throughput Type |
Exclusive Threshold |
Non-exclusive Threshold |
% Consumed |
% Available |
|---|---|---|---|---|
|
Voice |
30% |
20% |
40% (30% + 10%) |
0% |
|
Data |
50% |
10% |
60% (50% + 10%) |
0% |
|
Uncategorized Traffic |
|
|
|
0% (100%-40%-60%) |
![]() Note | For the first time in this multi-stage example, bandwidth consumption on the Cisco CMTS has reached 100%, and there is no bandwidth available for uncategorized flows after the events of Stage 3. |
Example: SFAC for Bonding Groups
This example shows configuration of SFAC with the following line card configurations:
- Modular cable interface with 3 Gigabit Ethernet cards
- Wideband interface with 3 Gigabit Ethernet cards
- MC20x20 line card with 3Gigabit Ethernet cards
Router(config-if)#cable application-type 1 include scheduling-type ugs Router(config-if)#cable application-type 1 include packetcable normal Router(config-if)#cable application-type 1 include packetcable high-priority Router(config-if)#cable application-type 1 include pcmm priority 2 Router(config-if)#cable application-type 2 include BE Router(config-if)#cable application-type 3 include multicast 12 ! Router(config)#interface Wideband-Cable1/0/0:0 cable bundle 2 cable bonding-group-id 1 cable rf-channel 1 cable rf-channel 2 cable rf-channel 3 bandwidth-percent 1 Router(config-if)#cable admission-control max-reserved-bandwidth 60302 Router(config-if)#cable admission-control ds-bandwidth 1 minor 10 major 20 exclusive 30 non-exclusive 40 Router(config-if)#cable admission-control ds-bandwidth 2 minor 5 major 10 exclusive 15 non-exclusive 25
Additional References
The following topics provide references related to SFAC for the Cisco CMTS.
Related Documents
|
Related Topic |
Document Title |
|---|---|
|
Cisco CMTS Cable Commands |
|
|
DOCSIS 1.1 for the Cisco CMTS Routers |
DOCSIS 1.1 for the Cisco CMTS http://www.cisco.com/en/US/docs/ios/cable/configuration/guide/cmts_docsis11.html |
|
CISCO-CABLE-ADMISSION-CTRL-MIB for the Cisco Cable Modem Termination System |
Cisco CMTS Universal Broadband Series Router MIB Specifications Guide 12.2 SC http://www.cisco.com/en/US/docs/cable/cmts/mib/12_2sc/reference/guide/ubrmibv5.html |
Standards
|
Standard |
Title |
|---|---|
|
CableLabs™ DOCSIS 1.1 specifications |
|
|
CableLabs™ PacketCable specifications |
|
|
CableLabs™ PacketCable MultiMedia specifications |
http://www.cablelabs.com/packetcable/specifications/multimedia.html |
MIBs
|
MIB |
MIBs Link |
|---|---|
|
MIBs for the Cisco Cable Modem Termination System |
Cisco CMTS Universal Broadband Series Router MIB Specifications Guide 12.2 SC http://www.cisco.com/en/US/docs/cable/cmts/mib/12_2sc/reference/guide/ubrmibv5.html |
|
MIBs Supporting Cisco IOS |
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: |
Technical Assistance
|
Description |
Link |
|---|---|
|
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies. To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds. Access to most tools on the Cisco Support website requires a Cisco.com user ID and password. |
Feature Information for SFAC for the Cisco Cable Modem Termination System
Table below lists the release history for this feature.
Not all commands may be available in your Cisco IOS software release. For release information about a specific command, see the command reference documentation.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which Cisco IOS and Catalyst OS software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://tools.cisco.com/ITDIT/CFN/. An account on Cisco.com is not required.
![]() Note | Table 1 lists only the Cisco IOS software release that introduced support for a given feature in a given Cisco IOS software release train. Unless noted otherwise, subsequent releases of that Cisco IOS software release train also support that feature. |
|
Feature Name |
Releases |
Feature Information |
|---|---|---|
|
Admission Control for the Cisco CMTS Routers |
12.3(13a)BC |
The Service Flow Admission Control feature was introduced on the Cisco uBR10012 and Cisco uBR7246VXR universal broadband routers. |
|
Service Flow Admission Control for the Cisco CMTS Routers |
12.3(21)BC |
This feature was introduced on the Cisco uBR10012 and the Cisco uBR7246VXR universal broadband routers. It supersedes the previous form of admission control supported on these CMTSs. |
|
Service Flow Admission Control for the Cisco CMTS Routers |
12.2(33)SCA |
This feature was integrated into Cisco IOS Release 12.2(33)SCA. Support for the Cisco uBR7225VXR Universal Broadband Router was added. |
|
Service Flow Admission Control for Bonding Groups. |
12.2(33)SCC |
The Service Flow Admission Control feature has been updated to extend the functionality to US and DS bonding groups to Cisco uBR10012 routers. |
|
Service Flow Admission Control for Bonding Groups. |
12.2(33)SCD |
The Service Flow Admission Control feature has been updated to extend the functionality to US and DS bonding groups for Cisco uBR7200 series routers. |

Feedback