Thursday, February 16, 2012

QOS LLQ

LLQ

  • LLQ is the priority queing typically used for VOIP traffic and delay sensitive traffic
  • Priority Que Only one per HQF configuration
  • Always emptied first
  • police to value in times of conjestion but only times of conjestion
  • conjestion being hardware que full
  • multiple class may have priority but will share same que
  • fifo in que
  • remaining bandwidth commonly used with LLQ  it is for bandwidth after LLQ has taken it priority slice
Commands

priority "x"  - x could be a value in kbps or percent
bandwidth remaining "x" - use bandwidth remaining on non priority class

LAB


We will have a quick look at setting up low latency que and the options avaible we also generate traffic using ip sla for testing

so on
r4
---

We create a few ip sla to generate different traffic types

SO ICMP traffic
r4(config)#ip sla monitor 1
r4(config-rtr)#type echo protocol ipicmpEcho 22.2.2.2
r4(config-ip-sla-echo)#timeout 0
r4(config-ip-sla-echo)#frequency 8
r4(config-ip-sla-echo)#
r4(config)#ip sla monitor schedule 1 start now life forever

SO DNS
r4(config)#ip sla monitor 2
r4(config-rtr)#type dns target-addr http://www.cisco.com/ name-server 22.2.2.2
r4(config-ip-sla-dns)#timeout 0
r4(config-ip-sla-dns)#frequency 7
Error: Minimum frequency for DNS operation should be 9
r4(config-ip-sla-dns)#frequency 9
r4(config-ip-sla-dns)#
r4(config)#ip sla monitor schedule 2 start-time now life forever

HTTP
r4(config)#ip sla monitor 3
r4(config-rtr)#type http operation get url http://22.2.2.2/
r4(config-rtr-http)#frequency 60
r4(config-rtr-http)#exit
r4(config)#ip sla monitor schedule 3 start-time now life forever
r4(config)#

G729
p sla monitor 4
type jitter dest-ipaddr 192.168.23.2 dest-port 16385 codec g729a codec-numpackets 50 codec-size 20 codec-interval 20
timeout 0
frequency 1
ip sla monitor schedule 4 start-time now life forever

r5
---
r5(config)#class-map DNS
r5(config-cmap)#match protocol dns
r5(config-cmap)#exit
r5(config)#class-map HTTP
r5(config-cmap)#match protocol http
r5(config-cmap)#exit
r5(config)#class-map ICMP
r5(config-cmap)#match protocol ICMP
r5(config-cmap)#exit
r5(config)#class-map G729
r5(config-cmap)#match protocol rtp

Let configure low latency queing for http and g729 and weighted fair que for the rest
r5(config)#policy-map LLQ
r5(config-pmap)#class G729
r5(config-pmap-c)#priority percent 2
r5(config-pmap-c)#class HTTP
r5(config-pmap-c)#priority percent 5
r5(config-pmap-c)#class ICMP
r5(config-pmap-c)#bandwidth remaining percent 10
r5(config-pmap-c)#class DNS
r5(config-pmap-c)#bandwidth remaining percent 25

now we will apply inbound on r5 int to r4
r5(config-if)#service-policy input LLQ
CBWFQ : Can be enabled as an output feature only
but we can not it is an output feature only so we apply outbound to sw2

r5(config)#int fa0/0
r5(config-if)#service-policy output LLQ
r5(config-if)#


on R5

r5#sh policy-map int
 FastEthernet0/0
  Service-policy output: LLQ
    Class-map: G729 (match-all)
      0 packets, 0 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol rtp
      Queueing
        Strict Priority
        Output Queue: Conversation 264
        Bandwidth 2 (%)
        Bandwidth 2000 (kbps) Burst 50000 (Bytes)
        (pkts matched/bytes matched) 0/0
        (total drops/bytes drops) 0/0
    Class-map: HTTP (match-all)
      5 packets, 288 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol http
      Queueing
        Strict Priority
        Output Queue: Conversation 264
        Bandwidth 5 (%)
        Bandwidth 5000 (kbps) Burst 125000 (Bytes)
        (pkts matched/bytes matched) 0/0
        (total drops/bytes drops) 0/0
    Class-map: ICMP (match-all)
      7 packets, 546 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol icmp
      Queueing
        Output Queue: Conversation 265
        Bandwidth remaining 10 (%)Max Threshold 64 (packets)
        (pkts matched/bytes matched) 0/0
        (depth/total drops/no-buffer drops) 0/0/0
    Class-map: DNS (match-all)
      7 packets, 511 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: protocol dns
      Queueing
        Output Queue: Conversation 266
        Bandwidth remaining 25 (%)Max Threshold 64 (packets)
        (pkts matched/bytes matched) 0/0
        (depth/total drops/no-buffer drops) 0/0/0
    Class-map: class-default (match-any)
      24 packets, 1920 bytes
      5 minute offered rate 0 bps, drop rate 0 bps
      Match: any
r5#

ok so we can see that we are getting matches on all them the g729 is not matching as i ave the wrong protocol in the match statement. Basically in this config http and G729 are or should be i have had configured the match correct are sharing the same que. ICMP is getting 10 percent of the bandwith minus HTTP and G729 slice then DNS is getting 25 % the rest will go to.
G729 and HTTP are getting strict priority meaning that if there is anything in that single priority que it will be serviced first within the que it is fifo queing
FOr the other classes it is weighted fair queing

No comments:

Post a Comment