08-15-2012 10:48 PM - edited 03-07-2019 08:22 AM
Hi,
I have applied QoS on the ATM interface hoping to improve the VoIP calls quality.
interface ATM0.1
service-policy input QoS-PM-Voice
!
ip access-list extended QoS-ACL-Voice
permit ip 0.0.0.0 0.0.0.0 123.123.123.0 255.255.255.0
!
class-map match-all QoS-CM-Voice
match access-group name QoS-ACL-Voice
!
policy-map QoS-PM-Voice
class QoS-CM-Voice
set dscp ef
123.123.123.0 is the PBX hosted externally.
After few days, I get some counters from show Policy-map:
Router887W#sho policy-map int atm0.1
ATM0.1
Service-policy input: QoS-PM-Voice
Class-map: QoS-CM-Voice (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: access-group name QoS-ACL-Voice
QoS Set
dscp ef
Packets marked 0
Class-map: class-default (match-any)
15623489 packets, 15318282698 bytes
5 minute offered rate 506000 bps, drop rate 0 bps
Match: any
Service-policy output: QoS-PM-Voice
Class-map: QoS-CM-Voice (match-all)
126696 packets, 37368476 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: access-group name QoS-ACL-Voice
QoS Set
dscp ef
Packets marked 126696
Class-map: class-default (match-any)
12328457 packets, 2569388096 bytes
5 minute offered rate 87000 bps, drop rate 0 bps
Match: any
Questions:
1. Why there is no counter on for the Service-policy Input?
2. Class-map: QoS-CM-Voice: The counter for total matched packes is equal to the Packets marked (126696).
Does it mean the interface is heavily congested? What can be done to optimise?
Cheers,
Pei Wai
.
Solved! Go to Solution.
08-16-2012 03:52 AM
Pei Wai,
Since the PBX is hosted externally, the acl that you've applied seems to be marking anything going to that subnet. I'm assuming that 123.123.123.0/24 isn't your subnet, but instead the subnet that the phone switch resides on. With that in mind, the policy that's applied inbound is traffic coming from the outside into your router. A policy that's applied outbound is applied to traffic leaving your router. With that in mind, the acl that you could apply for inbound traffic could be:
access-list 123 permit ip 123.123.123.0 0.0.0.255 any
Then you should start matching packets inbound. For your second question, the packets will always be marked as I don't believe this is a function of congestion by simply marking. The router doesn't know if the packet may be dropped later down the path so it's going to mark in times of non-congestion as well. From the looks of it, you're not prioritizing anything in your policy which may help. The only problem that you might have is with your phone switch being hosted elsewhere. If you don't control both ends, or they've not set qos on their side, you're going to have a hard time getting great quality but you should be able to get acceptable. Try applying this policy:
class-map match-all QoS-CM-Voice
match access-group name QoS-ACL-Voice
!
policy-map QoS-PM-Voice
class QoS-CM-Voice
priority percent 5
set dscp ef
class class-default
fair-queue
You may need to play with the percentage for the LLQ, but overall this is a decent start. The policy is now telling the router to give voice packets priority and set the dscp marking to EF. The phone system provider on the other end should be matching EF inbound and giving it priority over FTP, Web, etc.
HTH,
John
*** Please rate all useful posts ***
08-16-2012 03:52 AM
Pei Wai,
Since the PBX is hosted externally, the acl that you've applied seems to be marking anything going to that subnet. I'm assuming that 123.123.123.0/24 isn't your subnet, but instead the subnet that the phone switch resides on. With that in mind, the policy that's applied inbound is traffic coming from the outside into your router. A policy that's applied outbound is applied to traffic leaving your router. With that in mind, the acl that you could apply for inbound traffic could be:
access-list 123 permit ip 123.123.123.0 0.0.0.255 any
Then you should start matching packets inbound. For your second question, the packets will always be marked as I don't believe this is a function of congestion by simply marking. The router doesn't know if the packet may be dropped later down the path so it's going to mark in times of non-congestion as well. From the looks of it, you're not prioritizing anything in your policy which may help. The only problem that you might have is with your phone switch being hosted elsewhere. If you don't control both ends, or they've not set qos on their side, you're going to have a hard time getting great quality but you should be able to get acceptable. Try applying this policy:
class-map match-all QoS-CM-Voice
match access-group name QoS-ACL-Voice
!
policy-map QoS-PM-Voice
class QoS-CM-Voice
priority percent 5
set dscp ef
class class-default
fair-queue
You may need to play with the percentage for the LLQ, but overall this is a decent start. The policy is now telling the router to give voice packets priority and set the dscp marking to EF. The phone system provider on the other end should be matching EF inbound and giving it priority over FTP, Web, etc.
HTH,
John
*** Please rate all useful posts ***
08-17-2012 12:38 AM
Hi John,
Thanks for your reply.
I have tried to read a bit more about LLQ and need your help to explain.
policy-map QoS-PM-Voice
class QoS-CM-Voice
priority percent 5
set dscp ef
class class-default
fair-queue
1. why apply fair-queue on class-default (instead of QoS-CM-Voice)?
2. Use priority instead of bandwidth on QoS-CM-Voice?
3. If I only apply dscp ef (without fair-queue and priority), would the traffic be prioritised?
Cheers,
Hannah
08-17-2012 03:43 AM
1. why apply fair-queue on class-default (instead of QoS-CM-Voice)?
This is for all of your other traffic. Anything that doesn't match your voice class is going to fall into the class default class (unless you plan on creating other classes later on). Turning on fair-queue allows the router to give fair bandwidth usage to each flow coming through the router.
2. Use priority instead of bandwidth on QoS-CM-Voice?
Yes. Priority also polices the traffic and doesn't allow the voice class to take up all of the bandwidth. The voice class would get 5 percent minimum, but also 5 percent maximum. If you were to use bandwidth command, the class would get a guarantee but it wouldn't be capped (unless you put a police command in the same class).
3. If I only apply dscp ef (without fair-queue and priority), would the traffic be prioritised?
That's going to depend on what's on the other side. This local router wouldn't prioritize it simply because it's just setting the dscp value. You really need to tell it to set aside some bandwidth, with the priority command, for it to be prioritized. Cisco recommends an LLQ for voice.
HTH,
John
08-23-2012 12:55 AM
Hi John,
When I apply LLQ as below
policy-map QoS-PM-Voice
class QoS-CM-Voice
priority percent 5
I get error:
Low Latency Queueing feature not supported in input policy.
When I apply:
class class-default
fair-queue
I get error:
Flow Fair Queueing feature not supported in input policy.
Please help.
Cheers,
Pei Wai
08-23-2012 03:33 AM
Yes, you'd apply these as output and not input. Try: service-policy output QoS-PM-Voice on the WAN interface.
HTH,
John
08-29-2012 12:47 AM
Hi John,
I remove input from ATM interface:
interface ATM0.1 point-to-point
no service-policy input QoS-PM-Voice
service-policy output QoS-PM-Voice
But I still get error:
(config)#policy-map QoS-PM-Voice
(config-pmap)#class QoS-CM-Voice
(config-pmap-c)#priority percent 5
Configuration failed!
(config-pmap-c)#class class-default
(config-pmap-c)#fair-queue
Configuration failed!
Please advise
cheers,
peiwai
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide