Supported Platforms
Troubleshooting a CoS Classifier Configuration for a TCAM Space Error
Problem
When a CoS classifier configuration exceeds the amount of available ternary content addressable memory (TCAM) space, the switch returns the following system log message:
<number_of_rules_being_added> rules for <filter_name> class <filter_class> will not be installed, key: <bind_point>. no space in tcam db(<shared_pool_information>)
The switch returns this message during the commit operation if the number of classifiers defined in the CoS configuration or the number of bind points (interfaces) to which classifiers are bound causes the CoS configuration to exceed the amount of available TCAM space. However, the commit operation for the CoS configuration is completed in the CLI module.
Solution
When a CoS configuration exceeds the amount of available TCAM table space, you must either define fewer classifiers or bind them to fewer interfaces, or both, so that the space requirements for the CoS configuration do not exceed the available space in TCAM.
To delete classifier definitions and bind points in a CoS configuration, and to apply a new CoS classifier definition to fewer bind points:
- Delete either the CoS classifier definition or
the bind points:
- To delete the CoS classifier definition:
- For behavioral classifiers:
[edit class-of-service]
user@switch# delete classifier dscp d1 - For multifield classifiers:
[edit]
user@switch# delete interfaces ge-3/0/2 unit 0 family ethernet-switching filter input ipaclThis command deletes a multifield classifier defined for a port. Similarly, you can delete a multifield classifier defined for a VLAN or router.
You can also delete terms defined in a single multifield classifier:
[edit]
user@switch# delete firewall family inet filter f1 term t1
In both these examples (for behavioral and multifield classifiers), the assumption is that too many classifier definitions resulted in the error message.
- For behavioral classifiers:
- To delete the bind points:
[edit class-of-service]
user@switch# delete class-of-service interfaces ge-0/0/0
user@switch# delete class-of-service interfaces ge-0/0/1
user@switch# delete class-of-service interfaces ge-0/0/2
user@switch# delete class-of-service interfaces ge-0/0/3
user@switch# delete class-of-service interfaces ge-0/0/4
user@switch# delete class-of-service interfaces ge-0/0/5
user@switch# delete class-of-service interfaces ge-0/0/6
user@switch# delete class-of-service interfaces ge-0/0/7
user@switch# delete class-of-service interfaces ge-0/0/8Here the assumption is that too many bind points (nine) in the configuration resulted in the error message.
- To delete the CoS classifier definition:
- Commit the operation:
[edit]
user@switch# commit - Define fewer classifiers in the CoS configuration
or bind classifiers to fewer interfaces, or both, so that the CoS
classifier configuration does not exceed the amount of available TCAM
space on the switch:
- To define CoS classifiers:
- For behavioral classifiers:
[edit]
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc1 loss-priority low code-points 000001
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc2 loss-priority low code-points 000010
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc3 loss-priority low code-points 000011
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc4 loss-priority low code-points 000100
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc5 loss-priority low code-points 000101
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc6 loss-priority low code-points 000110
user@switch# set class-of-service classifiers dscp d2 forwarding-class fc7 loss-priority low code-points 000111 - For multifield Classifiers:
[edit]
user@switch# set firewall family inet filter f1 term t1 from protocol tcp
user@switch# set firewall family inet filter f1 term t1 then loss-priority high
user@switch# set firewall family inet filter f1 term t1 then forwarding-class best-effort
user@switch# set firewall family inet filter f1 term t2 from protocol udp
user@switch# set firewall family inet filter f1 term t2 then loss-priority high
user@switch# set firewall family inet filter f1 term t2 then forwarding-class assured-forwarding
user@switch# set firewall family inet filter f1 term t3 from source-port ssh
user@switch# set firewall family inet filter f1 term t3 then loss-priority low
user@switch# set firewall family inet filter f1 term t3 then forwarding-class fc8
user@switch#set class-of-service forwarding-classes best-effort, assured-forwarding, fc8
- For behavioral classifiers:
- To bind classifiers to fewer interfaces:
[edit]
user@switch# set class-of-service interfaces ge-0/0/0 unit 0 classifiers dscp d2
user@switch# set class-of-service interfaces ge-0/0/1 unit 0 classifiers dscp d2
user@switch# set class-of-service interfaces ge-0/0/2 unit 0 forwarding-class best-effort
user@switch# set class-of-service interfaces ge-0/0/3 unit 0 forwarding-class assured-forwarding
user@switch# set class-of-service interfaces ge-0/0/4 unit 0 forwarding-class fc8
- To define CoS classifiers:
- Commit the operation:
[edit]
user@switch# commit - Check system log for an error message. If an error
message is not logged, then your classifier configuration has not
exceeded the TCAM space limit.
If an error message is logged, then repeat this procedure by defining fewer classifiers or binding classifiers to fewer bind points.