09-28-2016 10:30 PM
Hello,
attached is the topology used and the QoS configuration of the cisco routers in both sites.
the problem is that voice breaks at both ends if data traffic is heavy. Seems like QoS may not be functioning as expected
could you please check and advise any improvement actions?
thanks
Marinos
Solved! Go to Solution.
09-29-2016 02:11 AM
Hey
I see nat is this going acrros the public internet ? If it is qos wont work right unless its tunneled source to destination
if its private try the below
on your access-list add this , the reason is i dont see anywhere your specifiying EF trafffic for voice markings to be trusted on egress for the policy, there's multiple ways to do but based on what you have set this is probably the quickest , also span the local ports collect the traffic in wireshark and make sure your packets that are coming from voice devise are being marked correctly , cisco devices will mark at the source by default cos5/dscp 46
ip access-list extended VoiceBW_list
permit ip any host 192.168.0.90 dscp ef
permit ip host 192.168.0.90 any dscp ef
10-03-2016 01:11 AM
Is it the standard codec your using g711 , would be 6x64 plus signalling , you would want voice to have at least 500 and have it as priority so its serviced first , if its g729 could set it lower
when no voice calls are happening is the data still slow ? do you know what the maximum mtu is on that radio line ? sometimes there very low which could be having an effect on large data packets fragmenting , at the moment your just prioritizing voice , maybe prioritize other traffic if required in class map as well but with using bandwidth statement rather than priority
What's the deal with burst, average, peak, shape etc commands?
good explanation of shaping/policing with example , basically police cuts you off at target , shape allows you to shape an buffer
http://packetlife.net/blog/2008/jul/30/policing-versus-shaping/
09-29-2016 02:11 AM
Hey
I see nat is this going acrros the public internet ? If it is qos wont work right unless its tunneled source to destination
if its private try the below
on your access-list add this , the reason is i dont see anywhere your specifiying EF trafffic for voice markings to be trusted on egress for the policy, there's multiple ways to do but based on what you have set this is probably the quickest , also span the local ports collect the traffic in wireshark and make sure your packets that are coming from voice devise are being marked correctly , cisco devices will mark at the source by default cos5/dscp 46
ip access-list extended VoiceBW_list
permit ip any host 192.168.0.90 dscp ef
permit ip host 192.168.0.90 any dscp ef
09-29-2016 02:55 AM
thanks for your reply.
Actually this RADIO link is not public internet. It's a private leased line to connect the 2 sites.
------------ ------------
| internet | | internet |
------------ ------------
| |
| |
| |
| |
------------ ------------
| central |----------------- RADIO LINK --------------| remote |
------------ ------------
Each site has a separate link to internet.
NAT exists in order to use the private RADIO link as a backup for internet traffic in case primary internet link fails
I will implement your suggestion for dscp ef and let you know of the outcome.
However, I would appreciate it if you could comment on some concerns I have:
- class fair-queue.
Should I add this command in class-default? I hear that if this command is missing it may cause such voice problems. It this true?
- bandwidth statements
My leased line is 4MBps but since router uses an ethernet interface, the referenced bandwidth is shown as 100Mbps. Could this cause any conflicts in calculations and BW reservations maybe?
- use different approach in QoS?
Could a different QoS approach be more effective maybe? Any suggestions?
thank you for your comments
Marinos
09-29-2016 03:15 AM
- class fair-queue. Should I add this command in class-default? I hear that if this command is missing it may cause such voice problems. It this true? With ths command you will implement wfq in that class but without it wred will be in place, it cant effect voice if voice is set correctly, packets should be marked at the source lan ports and carried through to wan link and trusted there. This command only effects this class and how it marks packets and queues them -
bandwidth statements My leased line is 4MBps but since router uses an ethernet interface, the referenced bandwidth is shown as 100Mbps. Could this cause any conflicts in calculations and BW reservations maybe? No your bandwidth is set to 4000 which is correct, this is required for routing metrics for calculating best paths
- use different approach in QoS? Could a different QoS approach be more effective maybe? Any suggestions? Using priority command is best practice for voice to make sure that queue is serviced before all others , theres multiple ways to do , but you need to have EF in it somewhere either acl or class map that’s matching the acl , heres another example which would be very generic that a lot of people would use with voice/video, if you have cisco switches set the access ports to trust dscp and the uplinks as well , this will ensure qos is carried/trusted from src-dst
Router(config)# class-map match-any REALTIME
Router(config-cmap)# match dscp ef
Router(config-cmap)# ! Matches VoIP on DSCP EF (per RFC4594)
Router(config-cmap)# match dscp cs4
Router(config-cmap)# ! Matches Realtime-Interactive Video on CS4 (per RFC4594)
Router(config-cmap)#
Router(config-cmap)# policy-map LLQ2
Router(config-pmap)# class REALTIME
Router(config-pmap-c)# priority 500
Router(config-pmap-c)# ! Combined LLQ for VoIP and Video
Router(config-pmap-c)# class CALL-SIGNALING
Router(config-pmap-c)# bandwidth percent 5
Router(config-pmap-c)# class TRANSACTIONAL-DATA
Router(config-pmap-c)# bandwidth percent 20
Router(config-pmap-c)# class BULK-DATA
Router(config-pmap-c)# bandwidth percent 10
Router(config-pmap-c)# class class-default
Router(config-pmap-c)# fair-queue
09-30-2016 09:51 AM
Hi Mark and all,
here is the update:
I tried to configure dscp ef inside the ACL as you suggested but no packets were matching the access-list. When I run the command "show ip access-list" there was no match next to the rules. Voice was still breaking as before.
Next, I removed the dscp ef from the ACL and I configured the policy-map to set the dscp ef like this:
policy-map VoiceBW_pmap
class VoiceBW_cmap
set dscp ef
Now the voice does not break but I can see a lot of delay in the data traffic. I guess the bandwidth is not shared correctly?
The link is 4Mbps. How match BW should I reserve for 6 concurrent voice calls?
What's the deal with burst, average, peak, shape etc commands?
thank you
10-03-2016 01:11 AM
Is it the standard codec your using g711 , would be 6x64 plus signalling , you would want voice to have at least 500 and have it as priority so its serviced first , if its g729 could set it lower
when no voice calls are happening is the data still slow ? do you know what the maximum mtu is on that radio line ? sometimes there very low which could be having an effect on large data packets fragmenting , at the moment your just prioritizing voice , maybe prioritize other traffic if required in class map as well but with using bandwidth statement rather than priority
What's the deal with burst, average, peak, shape etc commands?
good explanation of shaping/policing with example , basically police cuts you off at target , shape allows you to shape an buffer
http://packetlife.net/blog/2008/jul/30/policing-versus-shaping/
10-03-2016 09:45 PM
Data was not slow until I implemented the DSCP EF command. My guess is that if this was an MTU related issue data would be slow even before applying this command, right?
I noticed some drops in the class-default class so I made a few changes in the configuration. Let's monitor for some days and see how it goes. I'll keep you updated.
Thank you for all your support
10-04-2016 12:29 AM
yes if it was mtu should always effect you really until you alter the mss or mtu values to alter the packet size, qos is one of those things one szie doesn't fit all so monitoring and tweaking it as you go is the best approach as everyone's network/traffic patterns do be slightly different
10-13-2016 09:25 PM
hi,
after some tweaking and monitoring, here's the status:
Data seem to break. What I mean is that when a data transfer is initiated, data begin to flow but suddenly stop, then flow again, then stop again and so on. There isn't a stable flow.
Voice seem to have similar behavior. At the very beginning of this problem, voice was breaking and also some distortion was noticed. When someone was speaking, sometimes he sounded like Donald Duck's voice. After applying the dscp ef configuration the voice sounds normal but still breaks (like the data breaks).
As I understand it, it seems that QoS policy works (no distortion anymore) but there must be another problem causing flow breaks on both data and voice. Any hints maybe what I should be looking for? I also tried to set the MTU size on 1380 but didn't observe any difference. Radio link MTU size was said to be set at 1600.
thank you
10-14-2016 12:25 AM
did you try set the ip tcp mss-adjust at the radio link incase traffic is being fragmented , you could tell by spanning the port or just set it on the link and start about 1460 lower it a bit see if it makes any difference to the data traffic
whats the utilization on the link is it really high or is this happening even when theres a low load ?
are all interfaces clear of errors along the path ?
is it only when traffic crosses the link there is an issue or do you have same issues internally user to user without crossing the link ?
11-25-2016 03:11 AM
after some more tweaking and monitoring (also using ip tcp mss-adjust):
Status has improved. It's not like I was describing in my previous post, however there are still some few... interruptions during the day.. Interruptions described in my previous post were too many within a call. Tweaking with "ip tcp mss-adjust" has improved a lot the situation but still not perfect.
What I mean is, that voice calls are now clear (no distortion) but user may face an interruption during his call for 1-2-3 seconds. Sometimes the user may continue speaking in his active call after the interruption is over, but some other times the interruption may last a bit longer resulting in a hanging voice call. In this case user needs to re-dial. There are also some times that a voice call is clear without facing any interruption at all
I cannot tell if these interruptions are regular or not (on time basis) but it seems as if throughput (data flow) on the link freezes for these 1-2-3 secs. Would you hint any possible causes for such behavior?
thanks
11-25-2016 03:20 AM
No distortion that's good but calls still slightly delayed sometimes , you don't experience congestion at times on the line I would check each port along path from source to destination see if any are over utilized this could cause that , if it was my setup and I was this far along troubleshooting my next step would be wireshark and trying to determine if there is a pattern when the issue occurs , it may show some ack not being sent or some irregular pattern during the issue but you will need to capture the problem live a couple of times and see if you can see something in the capture
I have seen before the devices or qos not causing this but issues with the pbx or call manager depending what in place how its setup and also with the ISP , radio link would not be the best medium to transport voice as they can fluctuate due to many external reasons but if your running constant ping a - b and its looks good its prob not the line
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