QoS issue

Answered Question
Mar 3rd, 2009

Dear all,


i have an issue here which gives me a lot of headakes.


We have one Catlayst 6509 and one 6506. This two are linked over a 10Mbit/fdx WAN connection.

In both locations we have a Codian Lifesize Videoconference System.

This systems are marking the IP packets

voice: 101110 (EF)

video:100010 (AF41) so that i trust on all ports the dscp value (from Layer 2 to the Layer 3 interfaces). Now i have o both sides following configuration:


class-map match-all CLASSIFY-VOICE

match access-group name CLASSIFY-VOICE

class-map match-all CLASSIFY-OTHER

match access-group name CLASSIFY-OTHER

!

policy-map QoS-10Mbit

class CLASSIFY-VOICE

trust dscp

class CLASSIFY-OTHER

police 7000000 125000 125000 conform-action set-dscp-transmit default exceed-action drop


ip access-list extended CLASSIFY-OTHER

permit ip any any

ip access-list extended CLASSIFY-VOICE

permit ip any any dscp ef

permit ip any any dscp af41

!

Now to test that Qos is working we made a huge filetransfer between this locations and held in the same time a conference. The bandwith was occupying those 7Mbit as in the policy-map. The problem was that the sound and video was distorted.

Now here is the output of sh mls qos ip from both switches:


Switch 1:

sw-20-cd01#sh mls qos ip

QoS Summary [IPv4]: (* - shared aggregates, Mod - switch module)


Int Mod Dir Class-map DSCP Agg Trust Fl AgForward-By AgPoliced-By

Id Id

-------------------------------------------------------------------------------

Gi3/42 5 In CLASSIFY-V 0 1 dscp 0 800333710 0

Gi3/42 5 In CLASSIFY-O 0 2 No 0 29606082264 473387588


All 5 - Default 0 0* No 0 447495963416 0


Switch 2:

sw-10-cd01#sh mls qos ip gig1/43

[In] Policy map is QoS-10Mbit [Out] Default.

QoS Summary [IPv4]: (* - shared aggregates, Mod - switch module)


Int Mod Dir Class-map DSCP Agg Trust Fl AgForward-By AgPoliced-By

Id Id

-----------------------------------------------------------------------------------

Gi1/43 5 In CLASSIFY-V 0 1 dscp 0 1897936817 0

Gi1/43 5 In CLASSIFY-O 0 2 No 0 4534286636 4917207


I don't understand why qos doesn't work in my case. Any help/hint are much appreciated.


Thank you,


Chris



Correct Answer by Jon Marshall about 7 years 11 months ago

Chris


Remember that queueing only comes into effect at times of congestion. So if there is no other traffic on the link then there is no reason why your'e file transfer cannot use the whole link.


Jon

Correct Answer by Edison Ortiz about 7 years 11 months ago

Your mappings are wrong, they should be:


0 8 16 26 34 46 48 56


AF41 = DSCP 34

EF = DSCP 46


Both of those values are not being mapped properly when going from COS-to-DSCP hence they aren't matching the ACL.


As illustrated in the article I posted, the internal DSCP mapping takes place when a packet enters the switchport on a 6500. If the mapping isn't correct, you won't get the expected results.


I agree with my colleagues about using priority instead of police for VoIP traffic but before addressing that subject, we need to get the markings right.


HTH,


__


Edison.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (3 ratings)
Loading.
Joseph W. Doherty Tue, 03/03/2009 - 12:46

I would suggest you want to change your QoS model. Instead of policing non-realtime traffic to 70% of the link, absolute prioritize (e.g. LLQ) the realtime traffic.

syntaxmonster Wed, 03/04/2009 - 00:18

Thank you for your responses.

Jospehdoherty, MQC/LLQ is not possible on the switch. So that commands like shape, bandwith,priority are not supported.


We have the WS-X6748-GE-TX 10/100/1000 Linecard and the SUP720B, SUP720A respectively.


Edison, no we have the default qos-dscp mapping on the switch:


Cos-dscp map:

cos: 0 1 2 3 4 5 6 7

------------------------------------

dscp: 0 8 16 24 32 40 48 56


and following IOS:


Version 12.2(33)SXH2

and

Version 12.2(18)SXF1


Chris


syntaxmonster Wed, 03/04/2009 - 05:07

Hello Jon, thank you for your time. Does this mean that at the moment the port doesn's support any queing?

Take a look at the sh queing output:


sw-10-cd01#sh queueing int gig1/44

Interface GigabitEthernet1/44 queueing strategy: Weighted Round-Robin

Port QoS is enabled

Trust state: trust DSCP

Extend trust state: not trusted [COS = 0]

Default COS is 0

Queueing Mode In Tx direction: mode-cos

Transmit queues [type = 1p3q8t]:

Queue Id Scheduling Num of thresholds

-----------------------------------------

01 WRR 08

02 WRR 08

03 WRR 08

04 Priority 01


WRR bandwidth ratios: 100[queue 1] 150[queue 2] 200[queue 3]

queue-limit ratios: 50[queue 1] 20[queue 2] 15[queue 3] 15[Pri Queue]


queue tail-drop-thresholds

--------------------------

1 70[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]

2 70[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]

3 100[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]


queue random-detect-min-thresholds

----------------------------------

1 40[1] 70[2] 70[3] 70[4] 70[5] 70[6] 70[7] 70[8]

2 40[1] 70[2] 70[3] 70[4] 70[5] 70[6] 70[7] 70[8]

3 70[1] 70[2] 70[3] 70[4] 70[5] 70[6] 70[7] 70[8]


queue random-detect-max-thresholds

----------------------------------

1 70[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]

2 70[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]

3 100[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]


WRED disabled queues:


queue thresh cos-map

---------------------------------------

1 1 0

1 2 1

1 3

1 4

1 5

1 6

1 7

1 8

2 1 2

2 2 3 4

2 3

2 4

2 5

2 6

2 7

2 8

3 1 6 7

3 2

3 3

3 4

3 5

3 6

3 7

3 8

4 1 5


Queueing Mode In Rx direction: mode-cos

Receive queues [type = 1q8t]:

Queue Id Scheduling Num of thresholds

-----------------------------------------

01 WRR 08


WRR bandwidth ratios: 100[queue 1]

queue-limit ratios: 100[queue 1]


queue tail-drop-thresholds

--------------------------

1 100[1] 100[2] 100[3] 100[4] 100[5] 100[6] 100[7] 100[8]


queue thresh cos-map

---------------------------------------

1 1 0 1 2 3 4 5 6 7

1 2

1 3

1 4

1 5

1 6

1 7

1 8



Packets dropped on Transmit:

BPDU packets: 0


queue dropped [cos-map]

---------------------------------------------

1 738 [0 1 ]

2 0 [2 3 4 ]

3 0 [6 7 ]

4 0 [5 ]


Packets dropped on Receive:

BPDU packets: 0


queue dropped [cos-map]

---------------------------------------------

1 10 [0 1 2 3 4 5 6 7 ]


Do i have to reconfigure the 1P3Q8T queue on the line card?

Jon Marshall Wed, 03/04/2009 - 05:24

The port has 4 transmit queue available to it, from the output


Queueing Mode In Tx direction: mode-cos

Transmit queues [type = 1p3q8t]:

Queue Id Scheduling Num of thresholds

-----------------------------------------

01 WRR 08

02 WRR 08

03 WRR 08

04 Priority 01


Queue 4 is your priority queue so you need to map your voice traffic to that queue and ensure that that queue has the bandwidth you need for the voice traffic.


Jon

Joseph W. Doherty Wed, 03/04/2009 - 03:57

Correct, that it's often the case you cannot use MQC/LLQ as you would on router, however that's why I recommended absolute priorization (like LLQ). Jon's post provides links to "how to".

Correct Answer
Edison Ortiz Wed, 03/04/2009 - 06:33

Your mappings are wrong, they should be:


0 8 16 26 34 46 48 56


AF41 = DSCP 34

EF = DSCP 46


Both of those values are not being mapped properly when going from COS-to-DSCP hence they aren't matching the ACL.


As illustrated in the article I posted, the internal DSCP mapping takes place when a packet enters the switchport on a 6500. If the mapping isn't correct, you won't get the expected results.


I agree with my colleagues about using priority instead of police for VoIP traffic but before addressing that subject, we need to get the markings right.


HTH,


__


Edison.

syntaxmonster Wed, 03/04/2009 - 08:00

Hi Edison,


thank you again. I've set the right markings now on every switch (also on the Cat 2950 Edge switches)

Now the point is, that i can test the settings only on friday when the video conference room is free. Once i can test this szenario i will post the results right here.


Chris

Edison Ortiz Wed, 03/04/2009 - 08:05

Chris,


That's great. Now, please follow my colleagues' advice and allocate priority queueing for VoIP and Bandwidth guaranteed for Video.


HTH,


__


Edison.

syntaxmonster Wed, 03/04/2009 - 09:06

Hi Edison,

ok, so let me see if i can follow you:


now i have to allocate with following commands the priority queuing for VOIP/Video as stated in this example:

http://www.cisco.com/en/US/docs/solutions/Enterprise/WAN_and_MAN/QoS_SRND/QoSDesign.html#wp1002136


Once i've configured it, i do not need to police the traffic with DSCP 0


Please bear with me if i do not see this things right.


Chris

syntaxmonster Wed, 03/04/2009 - 09:18

There's something else i don't understand. From the example abowe there is following line:


CAT6500-PFC3-IOS(config-if)# wrr-queue bandwidth 5 25 70


! Sets the WRR weights for 5:25:70 (Q1:Q2:Q3) bandwidth servicing


So if i do the math the three queues Q1+Q2+Q3 are allocating 100% of the bandwith but whats the deal with the SP Queue? Q4?




Marwan ALshawi Wed, 03/04/2009 - 13:47

hi there


just try to make somthing like


interface GigabitEthernet3/4

wrr-queue queue-limit 40 30

wrr-queue random-detect min-threshold 1 40 80

wrr-queue random-detect min-threshold 2 70 80

wrr-queue random-detect max-threshold 1 80 100

wrr-queue random-detect max-threshold 2 80 100

wrr-queue cos-map 1 1 1

wrr-queue cos-map 1 2 0

wrr-queue cos-map 2 1 2 3 4

wrr-queue cos-map 2 2 6 7

mls qos trust dscp

switchport

switchport trunk encapsulation dot1q

switchport mode trunk

switchport nonegotiate


make sure to have the correct dscp-cos maping

and to use the right linecard config becuase each one has diffrent queues but the idea the same


good luck


HTH

syntaxmonster Wed, 03/04/2009 - 23:15

Edison and marwanshawi, thank you both for your replies.

I think a lightbulb just turned on over my head :D

So i have to figure out how much bandwith video and voip is needed and configure te port accordingly.

So if this hapens am i right to say that the access lists, class-maps and the policy-map isn't needed anymore as the packets have already the right DSCP value while entering the switch?


Thank you guys, you helped me much to see the whole QoS topic on the Cat6500 clearer.

If i succeed (and i will succeed ;) to have the desired qos configuration up and running, i'll post the runnig config.


Chris

Marwan ALshawi Thu, 03/05/2009 - 00:23

yes if you allocated the bandwidth accordigly you dont need the class map


this is per port

and as i mentioned above each cisco cat6500 line card has diffrent queue/throshoulds number this is imortant to know


for example:

WS-X6704-10GE (1P7Q8T)


wrr-queue bandwidth 5 25 20 20 20 5 5

! Sets the WRR weights for 5:25:20:20:20:5:5 (Q1 through Q7)

wrr-queue queue-limit 5 25 10 10 10 5 5

! Allocates 5% to Q1, 25% to Q2, 10% to Q3, 10% to Q4,

! Allocates 10% to Q5, 5% to Q6 and 5% to Q7


while WS-X6408A-GBIC (1P2Q2T)


wrr-queue bandwidth 30 70

! Sets the WRR weights for 30:70 (Q1:Q2) bandwidth servicing

wrr-queue queue-limit 40 30


see the deffrrence in the config based on the line card !!!!


and also put the voice in the priority queue and enable the priority queue in the interface level


priority-queue cos-map 1 5



also cisco 6500 if you apply the above qos config for one port in a line card it will be applied automatically to all the ports in that line card !!




good lcuk


HTH

syntaxmonster Thu, 03/05/2009 - 00:28

Hi marwanshawi,


yes, my linecard has the 1p3q8t:


Interface GigabitEthernet1/46 queueing strategy: Weighted Round-Robin

Port QoS is enabled

Trust state: trust DSCP

Extend trust state: not trusted [COS = 0]

Default COS is 0

Queueing Mode In Tx direction: mode-cos

Transmit queues [type = 1p3q8t]:

Queue Id Scheduling Num of thresholds

-----------------------------------------

01 WRR 08

02 WRR 08

03 WRR 08

04 Priority 01


WRR bandwidth ratios: 100[queue 1] 150[queue 2] 200[queue 3]

queue-limit ratios: 50[queue 1] 20[queue 2] 15[queue 3] 15[Pri Queue]


Chris

syntaxmonster Thu, 03/05/2009 - 03:09

OK i've unbound the service policy from the WAN

interfaces with:

no service-policy input QoS-10Mbit on both swithces


The cos to dscp map looks like this on both switches:

mls qos map cos-dscp 0 8 16 26 34 46 48 56


The transmit queue 1p3q8t has the default values on both sides.


As mentioned in this dokument:

http://www.cisco.com/en/US/docs/switches/lan/catalyst6500/ios/12.2SXF/native/configuration/guide/qos.html#wp1478769


the Q1 has default 50% of the bandwith. Now i did a huge filetransfer and the bandwith utilization went to almost 90%, hence almost 10Mbit.

How can this be as traffic from the Q1 queue only gets 50%?


I kind of confused :(



Chris

Correct Answer
Jon Marshall Thu, 03/05/2009 - 03:19

Chris


Remember that queueing only comes into effect at times of congestion. So if there is no other traffic on the link then there is no reason why your'e file transfer cannot use the whole link.


Jon

Marwan ALshawi Thu, 03/05/2009 - 03:33

hi Jon

but i think apply only to policy maps


while when you allocate amount of bandwidth at interface leve using wrr this will limit the traffic for that COS or DSCP regardless the interface conjested or not !!


am i right !!

Jon Marshall Thu, 03/05/2009 - 03:51

Marwan


As with all things to do with Catalyst QOS it is not always that obvious :-).


My understanding is that all traffic will be sent on the link regardless of the queue length UNTIL congestion starts and then and only then will the traffic be limited to it's queue size.


There is a queueing algorithm called Shaped round robin (SRR)-SRR which allows a queue to use only the allocated bandwidth but Chris isn't using this.


Having said all that, this is only my understanding of how it works so happy to be corrected if it is not right. Unfortunately i don't have a 6500 to test with :-)


Jon

syntaxmonster Thu, 03/05/2009 - 04:30

Well, i can test this tomorrow as we have a maintenance window. Then i can start a filetransfer and simultaneously generate voip/video.


Chris

Marwan ALshawi Thu, 03/05/2009 - 20:04

Hi jon

when we assigning amount of bandwidth to each queu here works like police in MQC

which is workiing with conjestion and without as well

syntaxmonster Mon, 03/09/2009 - 06:28

Hi Jon,


well i've tested this configuration and it seems that it worked.

I've made a huge filetransfer while i was holding a videoconference whith a colleague. The normal (DSCP 0) traffic was occupying about 70% from the available bandwith while the DSCP 46 and 34 traffic didn't had any packet loss or quality problems.


So i think this worked.


Thank you once again @all


P.S. is there a way to see how the drop ratios for the queues are and how many packets where droped?



Actions

This Discussion