Bandwidth limit Cisco 3400 ME problem
I want to limit bandwidth (speed) of interface of Cisco 3400 ME switch.
I did these:
policy-map parent
class class-default
shape average 64000
And in gi0/2
interface I apply it: service-policy output parent
It gives me this error:
QoS: Configuration failed. The configured rate 64000 bps is not achievable in within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
What am I doing wrong? How can I limit bandwidth of gigabit interface to 64 kbit/s?
cisco cisco-ios bandwidth troubleshooting policy-map
|
show 6 more comments
I want to limit bandwidth (speed) of interface of Cisco 3400 ME switch.
I did these:
policy-map parent
class class-default
shape average 64000
And in gi0/2
interface I apply it: service-policy output parent
It gives me this error:
QoS: Configuration failed. The configured rate 64000 bps is not achievable in within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
What am I doing wrong? How can I limit bandwidth of gigabit interface to 64 kbit/s?
cisco cisco-ios bandwidth troubleshooting policy-map
What IOS version are you using? Please post output ofshow version
.
– Cown
Mar 18 at 11:20
2
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08
|
show 6 more comments
I want to limit bandwidth (speed) of interface of Cisco 3400 ME switch.
I did these:
policy-map parent
class class-default
shape average 64000
And in gi0/2
interface I apply it: service-policy output parent
It gives me this error:
QoS: Configuration failed. The configured rate 64000 bps is not achievable in within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
What am I doing wrong? How can I limit bandwidth of gigabit interface to 64 kbit/s?
cisco cisco-ios bandwidth troubleshooting policy-map
I want to limit bandwidth (speed) of interface of Cisco 3400 ME switch.
I did these:
policy-map parent
class class-default
shape average 64000
And in gi0/2
interface I apply it: service-policy output parent
It gives me this error:
QoS: Configuration failed. The configured rate 64000 bps is not achievable in within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
What am I doing wrong? How can I limit bandwidth of gigabit interface to 64 kbit/s?
cisco cisco-ios bandwidth troubleshooting policy-map
cisco cisco-ios bandwidth troubleshooting policy-map
edited Mar 18 at 11:52
Cown
6,63331031
6,63331031
asked Mar 18 at 11:09
it devit dev
344
344
What IOS version are you using? Please post output ofshow version
.
– Cown
Mar 18 at 11:20
2
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08
|
show 6 more comments
What IOS version are you using? Please post output ofshow version
.
– Cown
Mar 18 at 11:20
2
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08
What IOS version are you using? Please post output of
show version
.– Cown
Mar 18 at 11:20
What IOS version are you using? Please post output of
show version
.– Cown
Mar 18 at 11:20
2
2
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08
|
show 6 more comments
1 Answer
1
active
oldest
votes
The problem you describe is explained by Tassos (CCIE #19858) in the attached link below. I've copied his complete description and added the Cisco bug which relates to the problem you have.
Please notice, that the issue has been fixed on the newer enhanced ME 3400-E.
Everyone using ME-3400 switches might have noticed the following error
message when trying to configure an output policy-map under an
interface:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
Cisco documentation is cryptic (as always) about the details of this,
but it has to do with some hardware limitation of this specific
platform. In particular the granularity of the hardware for the
shaping action is somehow based on pre-configured values.
The ME-3400 (as most lower end switches) has physical memory buffers,
which can be used by IOS only in bunches of specific (pre-configured)
sizes. In routers and high end switches, QoS is usually implemented in
software through the use of memory pools, which allows the IOS to use
parts of buffers with variable sizes.
Egress shaping on ME-3400 comes into two categories : Port shaping and
Class-based shaping. Port shaping applies to all traffic passing
through an interface, while class-based shaping applies to specific
classes of traffic leaving an interface. Each one of them is using a
different formula in order to give you all the supported values.
Port shaping values are based on the following formula:
(1 - 16/N) * IfSpeed
Where:
N is a value between 17 and 64000 IfSpeed is the interface speed : 10
Mbps, 100 Mbps, 1 Gbps The result in then rounded up to a multiple of
16. An equivalent excel formula would be : CEILING((1-16/N)*IfSpeed;16)
Class-based shaping values are based on the following much simpler
formula:
1/N * IfSpeed
Where: N is a value between 1 and 15625 IfSpeed is the interface speed
: 10 Mbps, 100 Mbps, 1 Gbps
You can see some possible values in the table below:
According to the above table, in the port shaper the low end
granularity is very coarse and the high end granularity is very dense,
while the opposite happens in the class-based shaper. So there is no
possibility you can have a <58 Mbps port shaper for 1 Gbps interfaces,
as there is no possibility to have <5,8 Mbps port shaper for 100 Mbps
interfaces. Similarly you can't have a 700 Mbps class-based shaper on
a 1000 Mbps interface, nor a 80 Mbps class-based shaper on a 100 Mbps
interface.
Let's take for example the following policy-map configuration which is
applied on a 1 Gbps interface.
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD
If you try to change the shaper of the child class to a value >500
Mbps, you'll get a warning like the following:
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
If you check the formula for the class-based shaper (or have a quick
look at the table), 930000000 is not actually a valid value to
configure, but it gets printed because this is the limit imposed by
the parent class. You just have to ignore it.
If you need specific values you might want to try changing the speed
of the interface : choosing between 10/100/1000 should be easy for
BaseTX interfaces, while 100/1000 Mbps SFPs exist for the SFP-based
ones.
Also, it's strongly recommended that you disable port speed
autonegotiation when you attach an output policy map to a 10/100/1000
port, to prevent the port from autonegotiating to a rate that would
make the output policy map invalid.
Keep in mind that ME-3400E (the new enhanced version of ME-3400)
implements a improved version of Egress Shaping Granularity, which
uses a simpler linear formula. It's 64 Kbps for the class-based shaper
and 100/500/1000 Kbps for the 10/100/1000 Mbps port-based shaper (100
Kbps for 10 Mbps ports, 500 Kbps for 100 Mbps ports, 1000 Kbps for
1000 Mbps ports).
Cisco bug report for those who do not have access to Cisco:
ME3400 - inconsistent rate for hw shaper when queue-limit is changed
CSCsz52950
Description
Symptom:
If the queue-limit is configured on a policy-map with a shaper
attached the suggested configurabale rate gets changed.
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
Error using the default 160 packet queue [EXPECTED MESSAGE DUE TO
GRANULARITY - THIS IS NOT THE BUG]
========================================
Queue limit is changed to any value (therefore not to default any
more)
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
Conditions:
Queue-limit is expressely defined.
Workaround:
Use the suggested value.
Further Problem Description:
The message is cosmetic as at hardware level there is no change when
the queue-limit is configured.
Tassos source: https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco bug search (requires CCO login): https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "496"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f57723%2fbandwidth-limit-cisco-3400-me-problem%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The problem you describe is explained by Tassos (CCIE #19858) in the attached link below. I've copied his complete description and added the Cisco bug which relates to the problem you have.
Please notice, that the issue has been fixed on the newer enhanced ME 3400-E.
Everyone using ME-3400 switches might have noticed the following error
message when trying to configure an output policy-map under an
interface:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
Cisco documentation is cryptic (as always) about the details of this,
but it has to do with some hardware limitation of this specific
platform. In particular the granularity of the hardware for the
shaping action is somehow based on pre-configured values.
The ME-3400 (as most lower end switches) has physical memory buffers,
which can be used by IOS only in bunches of specific (pre-configured)
sizes. In routers and high end switches, QoS is usually implemented in
software through the use of memory pools, which allows the IOS to use
parts of buffers with variable sizes.
Egress shaping on ME-3400 comes into two categories : Port shaping and
Class-based shaping. Port shaping applies to all traffic passing
through an interface, while class-based shaping applies to specific
classes of traffic leaving an interface. Each one of them is using a
different formula in order to give you all the supported values.
Port shaping values are based on the following formula:
(1 - 16/N) * IfSpeed
Where:
N is a value between 17 and 64000 IfSpeed is the interface speed : 10
Mbps, 100 Mbps, 1 Gbps The result in then rounded up to a multiple of
16. An equivalent excel formula would be : CEILING((1-16/N)*IfSpeed;16)
Class-based shaping values are based on the following much simpler
formula:
1/N * IfSpeed
Where: N is a value between 1 and 15625 IfSpeed is the interface speed
: 10 Mbps, 100 Mbps, 1 Gbps
You can see some possible values in the table below:
According to the above table, in the port shaper the low end
granularity is very coarse and the high end granularity is very dense,
while the opposite happens in the class-based shaper. So there is no
possibility you can have a <58 Mbps port shaper for 1 Gbps interfaces,
as there is no possibility to have <5,8 Mbps port shaper for 100 Mbps
interfaces. Similarly you can't have a 700 Mbps class-based shaper on
a 1000 Mbps interface, nor a 80 Mbps class-based shaper on a 100 Mbps
interface.
Let's take for example the following policy-map configuration which is
applied on a 1 Gbps interface.
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD
If you try to change the shaper of the child class to a value >500
Mbps, you'll get a warning like the following:
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
If you check the formula for the class-based shaper (or have a quick
look at the table), 930000000 is not actually a valid value to
configure, but it gets printed because this is the limit imposed by
the parent class. You just have to ignore it.
If you need specific values you might want to try changing the speed
of the interface : choosing between 10/100/1000 should be easy for
BaseTX interfaces, while 100/1000 Mbps SFPs exist for the SFP-based
ones.
Also, it's strongly recommended that you disable port speed
autonegotiation when you attach an output policy map to a 10/100/1000
port, to prevent the port from autonegotiating to a rate that would
make the output policy map invalid.
Keep in mind that ME-3400E (the new enhanced version of ME-3400)
implements a improved version of Egress Shaping Granularity, which
uses a simpler linear formula. It's 64 Kbps for the class-based shaper
and 100/500/1000 Kbps for the 10/100/1000 Mbps port-based shaper (100
Kbps for 10 Mbps ports, 500 Kbps for 100 Mbps ports, 1000 Kbps for
1000 Mbps ports).
Cisco bug report for those who do not have access to Cisco:
ME3400 - inconsistent rate for hw shaper when queue-limit is changed
CSCsz52950
Description
Symptom:
If the queue-limit is configured on a policy-map with a shaper
attached the suggested configurabale rate gets changed.
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
Error using the default 160 packet queue [EXPECTED MESSAGE DUE TO
GRANULARITY - THIS IS NOT THE BUG]
========================================
Queue limit is changed to any value (therefore not to default any
more)
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
Conditions:
Queue-limit is expressely defined.
Workaround:
Use the suggested value.
Further Problem Description:
The message is cosmetic as at hardware level there is no change when
the queue-limit is configured.
Tassos source: https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco bug search (requires CCO login): https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
add a comment |
The problem you describe is explained by Tassos (CCIE #19858) in the attached link below. I've copied his complete description and added the Cisco bug which relates to the problem you have.
Please notice, that the issue has been fixed on the newer enhanced ME 3400-E.
Everyone using ME-3400 switches might have noticed the following error
message when trying to configure an output policy-map under an
interface:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
Cisco documentation is cryptic (as always) about the details of this,
but it has to do with some hardware limitation of this specific
platform. In particular the granularity of the hardware for the
shaping action is somehow based on pre-configured values.
The ME-3400 (as most lower end switches) has physical memory buffers,
which can be used by IOS only in bunches of specific (pre-configured)
sizes. In routers and high end switches, QoS is usually implemented in
software through the use of memory pools, which allows the IOS to use
parts of buffers with variable sizes.
Egress shaping on ME-3400 comes into two categories : Port shaping and
Class-based shaping. Port shaping applies to all traffic passing
through an interface, while class-based shaping applies to specific
classes of traffic leaving an interface. Each one of them is using a
different formula in order to give you all the supported values.
Port shaping values are based on the following formula:
(1 - 16/N) * IfSpeed
Where:
N is a value between 17 and 64000 IfSpeed is the interface speed : 10
Mbps, 100 Mbps, 1 Gbps The result in then rounded up to a multiple of
16. An equivalent excel formula would be : CEILING((1-16/N)*IfSpeed;16)
Class-based shaping values are based on the following much simpler
formula:
1/N * IfSpeed
Where: N is a value between 1 and 15625 IfSpeed is the interface speed
: 10 Mbps, 100 Mbps, 1 Gbps
You can see some possible values in the table below:
According to the above table, in the port shaper the low end
granularity is very coarse and the high end granularity is very dense,
while the opposite happens in the class-based shaper. So there is no
possibility you can have a <58 Mbps port shaper for 1 Gbps interfaces,
as there is no possibility to have <5,8 Mbps port shaper for 100 Mbps
interfaces. Similarly you can't have a 700 Mbps class-based shaper on
a 1000 Mbps interface, nor a 80 Mbps class-based shaper on a 100 Mbps
interface.
Let's take for example the following policy-map configuration which is
applied on a 1 Gbps interface.
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD
If you try to change the shaper of the child class to a value >500
Mbps, you'll get a warning like the following:
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
If you check the formula for the class-based shaper (or have a quick
look at the table), 930000000 is not actually a valid value to
configure, but it gets printed because this is the limit imposed by
the parent class. You just have to ignore it.
If you need specific values you might want to try changing the speed
of the interface : choosing between 10/100/1000 should be easy for
BaseTX interfaces, while 100/1000 Mbps SFPs exist for the SFP-based
ones.
Also, it's strongly recommended that you disable port speed
autonegotiation when you attach an output policy map to a 10/100/1000
port, to prevent the port from autonegotiating to a rate that would
make the output policy map invalid.
Keep in mind that ME-3400E (the new enhanced version of ME-3400)
implements a improved version of Egress Shaping Granularity, which
uses a simpler linear formula. It's 64 Kbps for the class-based shaper
and 100/500/1000 Kbps for the 10/100/1000 Mbps port-based shaper (100
Kbps for 10 Mbps ports, 500 Kbps for 100 Mbps ports, 1000 Kbps for
1000 Mbps ports).
Cisco bug report for those who do not have access to Cisco:
ME3400 - inconsistent rate for hw shaper when queue-limit is changed
CSCsz52950
Description
Symptom:
If the queue-limit is configured on a policy-map with a shaper
attached the suggested configurabale rate gets changed.
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
Error using the default 160 packet queue [EXPECTED MESSAGE DUE TO
GRANULARITY - THIS IS NOT THE BUG]
========================================
Queue limit is changed to any value (therefore not to default any
more)
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
Conditions:
Queue-limit is expressely defined.
Workaround:
Use the suggested value.
Further Problem Description:
The message is cosmetic as at hardware level there is no change when
the queue-limit is configured.
Tassos source: https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco bug search (requires CCO login): https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
add a comment |
The problem you describe is explained by Tassos (CCIE #19858) in the attached link below. I've copied his complete description and added the Cisco bug which relates to the problem you have.
Please notice, that the issue has been fixed on the newer enhanced ME 3400-E.
Everyone using ME-3400 switches might have noticed the following error
message when trying to configure an output policy-map under an
interface:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
Cisco documentation is cryptic (as always) about the details of this,
but it has to do with some hardware limitation of this specific
platform. In particular the granularity of the hardware for the
shaping action is somehow based on pre-configured values.
The ME-3400 (as most lower end switches) has physical memory buffers,
which can be used by IOS only in bunches of specific (pre-configured)
sizes. In routers and high end switches, QoS is usually implemented in
software through the use of memory pools, which allows the IOS to use
parts of buffers with variable sizes.
Egress shaping on ME-3400 comes into two categories : Port shaping and
Class-based shaping. Port shaping applies to all traffic passing
through an interface, while class-based shaping applies to specific
classes of traffic leaving an interface. Each one of them is using a
different formula in order to give you all the supported values.
Port shaping values are based on the following formula:
(1 - 16/N) * IfSpeed
Where:
N is a value between 17 and 64000 IfSpeed is the interface speed : 10
Mbps, 100 Mbps, 1 Gbps The result in then rounded up to a multiple of
16. An equivalent excel formula would be : CEILING((1-16/N)*IfSpeed;16)
Class-based shaping values are based on the following much simpler
formula:
1/N * IfSpeed
Where: N is a value between 1 and 15625 IfSpeed is the interface speed
: 10 Mbps, 100 Mbps, 1 Gbps
You can see some possible values in the table below:
According to the above table, in the port shaper the low end
granularity is very coarse and the high end granularity is very dense,
while the opposite happens in the class-based shaper. So there is no
possibility you can have a <58 Mbps port shaper for 1 Gbps interfaces,
as there is no possibility to have <5,8 Mbps port shaper for 100 Mbps
interfaces. Similarly you can't have a 700 Mbps class-based shaper on
a 1000 Mbps interface, nor a 80 Mbps class-based shaper on a 100 Mbps
interface.
Let's take for example the following policy-map configuration which is
applied on a 1 Gbps interface.
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD
If you try to change the shaper of the child class to a value >500
Mbps, you'll get a warning like the following:
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
If you check the formula for the class-based shaper (or have a quick
look at the table), 930000000 is not actually a valid value to
configure, but it gets printed because this is the limit imposed by
the parent class. You just have to ignore it.
If you need specific values you might want to try changing the speed
of the interface : choosing between 10/100/1000 should be easy for
BaseTX interfaces, while 100/1000 Mbps SFPs exist for the SFP-based
ones.
Also, it's strongly recommended that you disable port speed
autonegotiation when you attach an output policy map to a 10/100/1000
port, to prevent the port from autonegotiating to a rate that would
make the output policy map invalid.
Keep in mind that ME-3400E (the new enhanced version of ME-3400)
implements a improved version of Egress Shaping Granularity, which
uses a simpler linear formula. It's 64 Kbps for the class-based shaper
and 100/500/1000 Kbps for the 10/100/1000 Mbps port-based shaper (100
Kbps for 10 Mbps ports, 500 Kbps for 100 Mbps ports, 1000 Kbps for
1000 Mbps ports).
Cisco bug report for those who do not have access to Cisco:
ME3400 - inconsistent rate for hw shaper when queue-limit is changed
CSCsz52950
Description
Symptom:
If the queue-limit is configured on a policy-map with a shaper
attached the suggested configurabale rate gets changed.
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
Error using the default 160 packet queue [EXPECTED MESSAGE DUE TO
GRANULARITY - THIS IS NOT THE BUG]
========================================
Queue limit is changed to any value (therefore not to default any
more)
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
Conditions:
Queue-limit is expressely defined.
Workaround:
Use the suggested value.
Further Problem Description:
The message is cosmetic as at hardware level there is no change when
the queue-limit is configured.
Tassos source: https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco bug search (requires CCO login): https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
The problem you describe is explained by Tassos (CCIE #19858) in the attached link below. I've copied his complete description and added the Cisco bug which relates to the problem you have.
Please notice, that the issue has been fixed on the newer enhanced ME 3400-E.
Everyone using ME-3400 switches might have noticed the following error
message when trying to configure an output policy-map under an
interface:
QoS: Configuration failed. The configured rate 4000000 bps is not
achievable in hw within 1% of configuration.
Closest value(s) are: 11111120 bps, 5882368 bps
Cisco documentation is cryptic (as always) about the details of this,
but it has to do with some hardware limitation of this specific
platform. In particular the granularity of the hardware for the
shaping action is somehow based on pre-configured values.
The ME-3400 (as most lower end switches) has physical memory buffers,
which can be used by IOS only in bunches of specific (pre-configured)
sizes. In routers and high end switches, QoS is usually implemented in
software through the use of memory pools, which allows the IOS to use
parts of buffers with variable sizes.
Egress shaping on ME-3400 comes into two categories : Port shaping and
Class-based shaping. Port shaping applies to all traffic passing
through an interface, while class-based shaping applies to specific
classes of traffic leaving an interface. Each one of them is using a
different formula in order to give you all the supported values.
Port shaping values are based on the following formula:
(1 - 16/N) * IfSpeed
Where:
N is a value between 17 and 64000 IfSpeed is the interface speed : 10
Mbps, 100 Mbps, 1 Gbps The result in then rounded up to a multiple of
16. An equivalent excel formula would be : CEILING((1-16/N)*IfSpeed;16)
Class-based shaping values are based on the following much simpler
formula:
1/N * IfSpeed
Where: N is a value between 1 and 15625 IfSpeed is the interface speed
: 10 Mbps, 100 Mbps, 1 Gbps
You can see some possible values in the table below:
According to the above table, in the port shaper the low end
granularity is very coarse and the high end granularity is very dense,
while the opposite happens in the class-based shaper. So there is no
possibility you can have a <58 Mbps port shaper for 1 Gbps interfaces,
as there is no possibility to have <5,8 Mbps port shaper for 100 Mbps
interfaces. Similarly you can't have a 700 Mbps class-based shaper on
a 1000 Mbps interface, nor a 80 Mbps class-based shaper on a 100 Mbps
interface.
Let's take for example the following policy-map configuration which is
applied on a 1 Gbps interface.
policy-map CHILD class TEST-CLASS
shape average 100000 policy-map PARENT class class-default
shape average 930000000 service-policy CHILD
If you try to change the shaper of the child class to a value >500
Mbps, you'll get a warning like the following:
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
If you check the formula for the class-based shaper (or have a quick
look at the table), 930000000 is not actually a valid value to
configure, but it gets printed because this is the limit imposed by
the parent class. You just have to ignore it.
If you need specific values you might want to try changing the speed
of the interface : choosing between 10/100/1000 should be easy for
BaseTX interfaces, while 100/1000 Mbps SFPs exist for the SFP-based
ones.
Also, it's strongly recommended that you disable port speed
autonegotiation when you attach an output policy map to a 10/100/1000
port, to prevent the port from autonegotiating to a rate that would
make the output policy map invalid.
Keep in mind that ME-3400E (the new enhanced version of ME-3400)
implements a improved version of Egress Shaping Granularity, which
uses a simpler linear formula. It's 64 Kbps for the class-based shaper
and 100/500/1000 Kbps for the 10/100/1000 Mbps port-based shaper (100
Kbps for 10 Mbps ports, 500 Kbps for 100 Mbps ports, 1000 Kbps for
1000 Mbps ports).
Cisco bug report for those who do not have access to Cisco:
ME3400 - inconsistent rate for hw shaper when queue-limit is changed
CSCsz52950
Description
Symptom:
If the queue-limit is configured on a policy-map with a shaper
attached the suggested configurabale rate gets changed.
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
Error using the default 160 packet queue [EXPECTED MESSAGE DUE TO
GRANULARITY - THIS IS NOT THE BUG]
========================================
Queue limit is changed to any value (therefore not to default any
more)
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
Conditions:
Queue-limit is expressely defined.
Workaround:
Use the suggested value.
Further Problem Description:
The message is cosmetic as at hardware level there is no change when
the queue-limit is configured.
Tassos source: https://ccie-in-3-months.blogspot.com/2010/01/shaper-granularity-on-me-3400.html
Cisco bug search (requires CCO login): https://bst.cloudapps.cisco.com/bugsearch/bug/CSCsz52950
answered Mar 18 at 11:42
CownCown
6,63331031
6,63331031
add a comment |
add a comment |
Thanks for contributing an answer to Network Engineering Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fnetworkengineering.stackexchange.com%2fquestions%2f57723%2fbandwidth-limit-cisco-3400-me-problem%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What IOS version are you using? Please post output of
show version
.– Cown
Mar 18 at 11:20
2
You did perform nothing wrong, it is some limitation of model. You can google "achievable in hw within 1% of configuration" and check a lot of articles about this. As I understand, you can try to use 10Mbps speed on the link for using 100Kbps (1%) for shaping, but no less.
– Konstantin Goncharenko
Mar 18 at 11:21
@KonstantinGoncharenko, there is no speed command appliable, because it is SFP port.
– it dev
Mar 18 at 12:04
@Cown, IOS version: (ME340x-METROBASE-M) Version 12.2(53)SE
– it dev
Mar 18 at 12:06
@itdev read the answer. There's nothing you can do.
– Cown
Mar 18 at 12:08