Aut inveniam viam aut faciam

Quality of Service (QoS) Notes

Quality of Service (QoS) 

 – Managed unfairness

 – Problem with QoS is you will not see any results unless there is traffic congestion

     -> It’s hard to generate a variety of different types of traffic

     -> During the lab, they are not expecting to you to generate traffic to verify the configuration

     -> They will only verify your configuration

Instructor comment, “Bandwidth and sex, there is never enough.”

Bandwidth

     -> Traffic rate (width of the pipe)

Propagation Delay

     -> The time is takes to get from point A to point B (length of the pipe)

Serialization Delay

     -> The time it takes to send traffic from the interface to the media

     -> Delay = Amount of data / clock rate

          -> Clock rate of the interface

Jitter

     -> Variance in delay

QoS Architecture

 – Integrated QoS

     -> End-to-end QoS

 – Differential Service QoS

     -> Per-hop QoS

Integrated Services QoS

Resource Reservation Protocol (RSVP)

 – Path message set to destination and waits for a reservation message response before sending traffic

 – If any router disagrees with Path, it will be dropped and no traffic will be sent

Diff Serv

 – The first hop router will mark the important traffic and hope that other routers agrees with the markings

 – Mark the traffic and hope for the best

 – Per hop behavior (PHB)

Differential Service

 – Marking of packet

     -> Layer 3

          -> IP header

          -> IP Precedence / Differential Service Code Point (DSCP)

     -> Layer 2

          -> Frame header

          -> Class of Service (CoS)

               -> 802.1q tag

IP Header

 – 8 bit field called Type of Service (ToS)

IP Precedence (IPP)

 – Higher is better

     -> 0 – Routine

     -> 1 – Priority

          -> Data

     -> 2 – Immediate

          -> Video signaling

     -> 3 – Flash

          -> Voice signaling

     -> 4 – Flash Override

          -> Video stream

     -> 5 – Critical

          -> Voice stream

     -> 6 – Internetwork

          -> Management protocol

     -> 7 – Network

          -> Management protocol

Priority Values

     -> 0 – Default

     -> 1 – Assured Forwarding (AF)

     -> 2 – Assured Forwarding (AF)

     -> 3 – Assured Forwarding (AF)

     -> 4 – Assured Forwarding (AF)

     -> 5 – Expedited Forwarding (EF)

     -> 6 – Internetwork

     -> 7 – Network

Drop Precedence

 – Only works with AF

 – 2^2 = 4 Drop Precedence Values

     -> 0 0 = 0 -> Never used

     -> 0 1 = 1

     -> 1 0 = 2

     -> 1 1 = 3

AF X Y

 – X – Priority Value

     -> Higher is better

 – Y – Drop Precedence

     -> Lower is better

AF1     ->     AF11     AF12     AF13

AF2     ->     AF21     AF22     AF23

AF3     ->     AF31     AF32     AF33

AF4     ->     AF41     AF42     AF43

AF23     -> Priority 2                         -> 010

                 Drop Precendence 3         -> 11

                 Last bit                            -> 0

                 DSCP Value – 010110 = 22 in decimal

                    -> Don’t need to know for the lab, but need to know for the written

AF X Y = ( 8X + 2Y )

AF23   = ( 8*2 + 2*3 ) = 22

Modular QoS CLI (MQC)

 – Old configuration was directly in global config

 – Class-map

     -> Matching procedure

     -> Classifying the data

 – Policy-map

     -> Defines the action

          -> Marking

          -> Queueing

          -> Shaping

          -> Policing

          -> Dropping

 – Service-policy

     -> Implement the policy-map

     -> Inside interface configuration

     -> In | out direction

Class-map

class-map [match-any | match-all] <name>

 match <condition>

match [ip] precedence <up to 4 comma separated values>

 – ip option

     -> If used, then only IPv4 packets are checked

     -> Otherwise, both IPv4 and IPv6 packets are checked

match [ip] dscp <up to 8 different vlaues>

     -> match dscp AF11 AF12

match cos <up to 4 values>

match address-group <acl> [ip address]

     -> IP addresses and port numbers

match source-address mac <mac address>

match destination-address mac <mac address>

match mpls experimental [topmost] <value>

Network Based Application Recognition (NBAR)

 – Performs deep packet inspection

match protocol <name>

match packet length min <value> max <value>

     – Only min or max needs to be specified, or both

match input-interface <int>

Voice Traffic

 – Real-time Transport Protocol (RTP)

     -> Port numbers

          -> 16384 – 32767

          -> Even port number

               -> Voice traffic

          -> Odd port number

               -> Voice signal

     -> Best way to match is to use NBAR

match protocol rtp audio

     – or –

match ip rtp <start of range> <range>

     – start of range is a port number

match ip rtp 100 50

     -> Ports 100 – 150

match ip rtp 16384 16384

     -> Matches the entire RTP port range

match not <condition>

match class <class-map name>

     -> For nesting class-maps for advanced matching scenarios

Policy-map

policy-map <name>

 class <name>

  <action>

 class <name>

  <action>

 class class-default

  <action>

     -> All traffic not matching other classes

Class-map Actions

 – Marking

 – Queueing

 – Shaping

 – Policing

 – Dropping

 – Random-detect

int s0/0

 service policy { input | output } <name of policy-map>

sh policy-map interface <int>

Classification and Marking

Scenario -> R1 is the edge router.  Mark all incoming voice traffic with DSCP EF.  Mark all incoming http traffic with AF31.  All other traffic should be marked “default”.

R1(config)# class-map CLASS1

 match protocol rtp audio

class-map CLASS2

 match protocol http

policy-map POLICY1

 class CLASS1

  set dscp ef

 class CLASS2

  set dscp AF31

 class class-default

  set dscp default

int s0/0

 service-policy input POLICY1

sh policy-map int s0/0

Queueing

 – Congestion Management

e.g. – Clock rate 64000bps

     -> But if traffic rate is 96000bps

Congestion

 – If there HW queue is full and more traffic is waiting to be sent

Software Queue

 – Collection of pointers to the memory locations where the packets are located

 – FIFO queue

Tail Drop

 – What happens when the HW queue and Software queue is full

To change the hardward queue-length

int s0/0

 tx-ring-limit <number>

To change the software queue-length

int s0/0

 hard-queue <number> out

To display the HW Queue

sh controllers s0/0

 . . .

 . . . 

 . . .

tx-limit x(y)

     -> x – 0 -> default sofware queue

              1 -> advanced queueing

     -> y – queue-length

tx-limit 0(16)

     -> Default for most routers

tx-limit 0(128)

     -> IOU routers

          -> This could cause unexpected results if QoS was first tested in an IOU environment

Comments are closed.

This entry was posted on Friday, October 26th, 2018 at 10:13 pm and is filed under CCIE. You can follow any responses to this entry through the RSS 2.0 feed. Responses are currently closed, but you can trackback from your own site.