Convert CQ to CBWFQ

     

    This document will show a simple example of how to convert a legacy custom queuing strategy into the MQC CBWFQ.

     

    Objective:  Company CORP has asked you to convert the legacy custom queuing configuration on CORP1 to a MQC CBWFQ configuration and place it on CORP2.  CORP company has asked you to use NBAR in your configuration.

     

    CORP1#sh run | in que

    queue-list 1 protocol ip 1 tcp pop3

    queue-list 1 protocol ip 2 udp ntp

    queue-list 1 protocol ip 3 tcp www

    queue-list 1 protocol ip 4 tcp smtp

    queue-list 1 default 5

    queue-list 1 queue 1 byte-count 3500

    queue-list 1 queue 2 byte-count 2000

    queue-list 1 queue 3 byte-count 4000

    queue-list 1 queue 4 byte-count 3500

     

    1.   The first thing we have to do is to add up the total byte count for all queues.

     

           3500 + 2000 + 4000 + 3500 = 13000

     

    2.   Now we have to find the percentages for the bandwidth to assign based on byte count configured for each queue.

     

    3500/13000 = .27

    2000/13000 = .15

    4000/13000 = .31

    3500/13000 = .27

     

    I am going to assume everyone knows that percent also means per hundred and we can multiply our decimal figures by 100 effectively moving our decimal point two positions to the right to get the percentage value.

     

    100 * .27 = 27%

    100 * .15 = 15%

    100 * .31 = 31%

    100 * .27 = 27%

     

    Now that we have our bandwidth percentages, we need to remember that by default our maximum reserved bandwidth is 75%.  Adding up our percentages, we get a total of 100%.  We need to remember to change the max-reserve-bandwidth value to 100% for this configuration. 

     

    Here is the final configuration on CORP2.

     

    class-map match-all SMTP

    match protocol smtp

    class-map match-all NTP

    match protocol ntp

    class-map match-all WWW

    match protocol http

    class-map match-all POP3

    match protocol pop3

    !

    !

    policy-map BW-ALLOCATION

    class POP3

      bandwidth percent 27

    class NTP

      bandwidth percent 15

    class WWW

      bandwidth percent 31

    class SMTP

      bandwidth percent 27

    !

    !

    interface FastEthernet0/0

    max-reserved-bandwidth 100

    service-policy output BW-ALLOCATION

     

     

    We can verify our configuration by looking at the policy map for the interface.

     

    CORP2#sh policy-map int fa0/0

    FastEthernet0/0

     

      Service-policy output: BW-ALLOCATION

     

        Class-map: POP3 (match-all)

          1 packets, 60 bytes

          5 minute offered rate 0 bps, drop rate 0 bps

          Match: protocol pop3

          Queueing

            Output Queue: Conversation 265

            Bandwidth 27 (%)

            Bandwidth 2700 (kbps)Max Threshold 64 (packets)

            (pkts matched/bytes matched) 1/60

           (depth/total drops/no-buffer drops) 0/0/0

     

        Class-map: NTP (match-all)

          18 packets, 1620 bytes

          5 minute offered rate 0 bps, drop rate 0 bps

          Match: protocol ntp

          Queueing

            Output Queue: Conversation 266

            Bandwidth 15 (%)

            Bandwidth 1500 (kbps)Max Threshold 64 (packets)

            (pkts matched/bytes matched) 18/1620

            (depth/total drops/no-buffer drops) 0/0/0

     

        Class-map: WWW (match-all)

          0 packets, 0 bytes

          5 minute offered rate 0 bps, drop rate 0 bps

          Match: protocol http

          Queueing

            Output Queue: Conversation 267

            Bandwidth 31 (%)

            Bandwidth 3100 (kbps)Max Threshold 64 (packets)

            (pkts matched/bytes matched) 0/0

            (depth/total drops/no-buffer drops) 0/0/0

     

        Class-map: SMTP (match-all)

          7 packets, 420 bytes

          5 minute offered rate 0 bps, drop rate 0 bps

          Match: protocol smtp

          Queueing

            Output Queue: Conversation 268

            Bandwidth 27 (%)

            Bandwidth 2700 (kbps)Max Threshold 64 (packets)

            (pkts matched/bytes matched) 7/420

            (depth/total drops/no-buffer drops) 0/0/0

     

        Class-map: class-default (match-any)

          117 packets, 12018 bytes

          5 minute offered rate 0 bps, drop rate 0 bps

          Match: any

     

    That’s it.  It’s that easy.