Can anyone tell me what is considered best practice when traffic shaping is required due to a fast ethernet carrier handoff, shaped to 20mb?
traffic-shape rate 20000000 200000 0 1000
I currently have voice calls traversing over the 20mb link that experience issues which correspond with times of heavy usage.
show policy-map output doesn't display any drops for any queue, although show traffic-shape queue fa0/0
Queueing Stats: 19/1000/64/354701 (size/max total/threshold/drops)
Can anyone suggested an improvement? I suspect traffic shaping might be causing the call quality to suffer.
You don't want to have both a traffic shape command and service policy on the same interface, you want to have a service policy that does the shaping.
If you have both, the GTS shaper is queuing traffic and most (or all?) of it isn't overflowing into your service policy queues including the LLQ. You might be able to see this by looking at the service policy stats. I.e. packets queued in the GTS shaper, as you noted, and none or little matches within the service policy. Or, besides not seeing tail or WRED drops, do you see queues also form in your service policy or what's the match ratio to packets that match the service policy class?
Actually, I believe something similar even happens when you use "standard" hierarchal service policy. I.e. Still might have two levels of queues. This is why I also provided an example of a non-hierarchal service policy with a high level LLQ and shaping in the default class.
Something else to be aware of, physical interfaces usually maintain their own hardware FIFO queue, especially ATM interfaces. This can be a problem for voice since LLQ doesn't apply until after the hardware FIFO queue overflows into the software queues. This can be reconfigured use tx-ring-limit.
Didn't know what version of IOS you're using or your allocation for voice. You could either use 12% directly with 12.4 or 1.7 MB.
Again, another option is to only use GTS, but to insure the voice packets get a much higher ratio of the shaped bandwidth via their weight.