我想限制思科3400 ME交换机接口的带宽(速度)。
我做了这些:
policy-map parent
class class-default
shape average 64000在gi0/2接口中,我应用它:service-policy output parent
它给了我这个错误:
QoS: Configuration failed. The configured rate 64000 bps is not achievable in within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps我做错了什么?如何将千兆位接口带宽限制在64 kbit/s?
发布于 2019-03-18 11:42:07
在下面的链接中,你描述的问题由Tassos (CCIE #19858)解释。我复制了他的完整描述,并添加了思科的错误,这与你的问题有关。
请注意,这个问题已经在更新的增强ME3400-E上解决了。
在尝试在接口下配置输出策略映射时,使用ME-3400开关的每个人都可能注意到以下错误消息:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bpsCisco文档对于这方面的细节非常神秘(一如既往),但它与这个特定平台的一些硬件限制有关。特别是,成形操作的硬件粒度是基于预先配置的值的。ME-3400 (作为大多数低端开关)具有物理内存缓冲器,只能在特定(预配置)大小的包中被IOS使用。在路由器和高端交换机中,QoS通常是通过使用内存池在软件中实现的,这允许IOS使用具有可变大小的部分缓冲区。在ME-3400上的出口整形分为两类:端口整形和基于类的整形.端口整形适用于通过接口的所有通信量,而基于类的整形适用于离开接口的特定流量类别。它们中的每一个都使用不同的公式,以便为您提供所有受支持的值。端口整形值基于以下公式:
(1 - 16/N) * IfSpeed其中:n是一个17到64000 IfSpeed之间的值,它是接口速度: 10 Mbps,100 Mbps,1 Gbps,然后将结果舍入到16的倍数。一个等效的excel公式将是:上限((1-16/N)*IF速度;16)基于类的整形值基于以下简单得多的公式:
1/N * IfSpeed其中:n是一个介于1到15625 IfSpeed之间的值是接口速度: 10 Mbps、100 Mbps、1 Gbps你可以在下表中看到一些可能的值:根据上表,在端口整形器中,低端粒度非常粗糙,高端粒度非常密集,而基于类的shaper则相反。因此,您不可能为1 Gbps接口拥有一个<58 Mbps端口整形器,因为不可能为100 Mbps接口拥有<5,8 Mbps端口整形器。类似地,在1000 Mbps接口上不能有基于700 Mbps类的shaper,在100 Mbps接口上不能有基于80 Mbps类的shaper。让我们以以下策略映射配置为例,它应用于1 Gbps接口上。
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD如果尝试将子类的shaper更改为值>500 Mbps,则会收到如下警告:
3400(config-pmap-c)#shape average 700000000 QoS: Configuration failed.
The configured rate 700000000 bps is not achievable in hw within 1% of
configuration.
Closest value(s) are: 930000000 bps, 500000000 bps如果您检查基于类的shaper的公式(或者快速查看表),930000000实际上不是要配置的有效值,但是它会被打印出来,因为这是父类施加的限制。你只需要忽略它。如果您需要特定的值,您可能需要尝试更改接口的速度:对于BaseTX接口来说,在10/100/1000之间选择应该很容易,而基于SFP的接口则存在100/1000 Mbps SFP。此外,强烈建议在将输出策略映射附加到10/100/1000端口时禁用端口速度自动协商,以防止端口自动协商到使输出策略映射无效的速率。请记住,ME-3400E (ME-3400的新增强型版本)实现了一个改进版本的均衡化粒度,它使用了一个更简单的线性公式。基于类的整形器为64 Kbps,基于端口的10/ 100 /1000 Mbps为100/ 500 /1000 Kbps ( 10 Mbps端口为100 Kbps,100 Mbps端口为500 Kbps,1000 Mbps端口为1000 Kbps )。
ME3400 -当队列限制更改CSCsz52950时,hw整形器的不一致率
描述症状:如果队列限制是在策略映射上配置的,并且附加了一个shaper,则建议的配置速率将被更改。
policy-map test-shaper
class class-default
shape average 35000000
lan-me3400-1(config-pmap-c)#int g0/11
lan-me3400-1(config-if)#service-policy output test-shaper
QoS: Configuration failed. The configured rate 35000000 bps is not achievable in hw within 1% of configuration.
Closest value(s) are: 36000000 bps, 33333344 bps使用默认的160个数据包队列由于粒度而产生的预期消息--这不是错误 ========================================队列限制更改为任意值时出错(因此不再默认)
policy-map test-shaper
class class-default
shape average 35000000
queue-limit 200
lan-me3400-1(config-pmap-c)#int g0/11
lan-me3400-1(config-if)#
lan-me3400-1(config-if)#service-policy output test-shaper
QoS: Configuration failed. The configured rate 35000000 bps is not achievable in hw within 1% of configuration.
Closest value(s) are: 33333333 bps, 25000000 bps条件:队列限制是明确定义的。解决办法:使用建议的值。进一步的问题描述:消息是表面的,因为在硬件级别上,当队列限制被配置时没有改变。
资料来源:https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco搜索(需要CCO登录):https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
https://networkengineering.stackexchange.com/questions/57723
复制相似问题