QUALITY               OF        SERVICE                 PART 1                                          packetlife.net
                        Quality of Service Models                                      IP Type of Service (TOS)
Best Effort    No QoS policies are implemented
                                                                                     Precedence
Integrated Services (IntServ)
Resource Reservation Protocol (RSVP) is used to reserve bandwidth per-
flow across all nodes in a path                                                           Ver     HL        TOS   Len

Differentiated Services (DiffServ)
Packets are individually classified and marked; policy decisions are made                 DSCP
independently by each node in a path

                           Layer 2 QoS Markings                                            Precedence/DSCP
                                                                                        Binary         DSCP        Prec.
       Medium Name                        Type

    Ethernet Class of Service (CoS) 3-bit 802.1p field in 802.1Q header            56 111000           Reserved    7

Frame Relay Discard Eligibility (DE) 1-bit drop eligibility flag                   48 110000           Reserved    6

         ATM Cell Loss Priority (CLP) 1-bit drop eligibility flag                  46 101110           EF          5

        MPLS Traffic Class (TC)           3-bit field compatible with 802.1p       32 100000           CS4
                                                                                   34 100010           AF41
                                IP QoS Markings                                                                    4
                                                                                   36 100100           AF42
IP Precedence
The first three bits of the IP TOS field; limited to 8 traffic classes             38 100110           AF43
Differentiated Services Code Point (DSCP)                                          24 011000           CS3
The first six bits of the IP TOS are evaluated to provide more granular
                                                                                   26 011010           AF31
classification; backward-compatible with IP Precedence                                                             3
                                                                                   28 011100           AF32
                                QoS Flowchart
                                                                                   30 011110           AF33
         No                                                                        16 010000           CS2
                                       Software Queue
                                                                                   18 010010           AF21
                                                            Scheduler




      HW       Yes                                                                                                 2
                     Queuing                                            Hardware
     Queue                             Software Queue                              20 010100           AF22
                     Decision                                            Queue
     Full?
                                       Software Queue                              22 010110           AF23
                                                                                     8 001000          CS1

                                 Terminology                                       10 001010           AF11
                                                                                                                   1
Per-Hop Behavior (PHB)                                                             12 001100           AF12
The individual QoS action performed at each independent DiffServ node              14 001110           AF13
Trust Boundary       Beyond this, inbound QoS markings are not trusted               0 000000          BE          0
Tail Drop     Occurs when a packet is dropped because a queue is full
                                                                                         Congestion Avoidance
Policing
Imposes an artificial ceiling on the amount of bandwidth that may be               Random Early Detection (RED)
consumed; traffic exceeding the policer rate is reclassified or dropped            Packets are randomly dropped
                                                                                   before a queue is full to prevent tail
Shaping
                                                                                   drop; mitigates TCP
Similar to policing but buffers excess traffic for delayed transmission;
                                                                                   synchronization
makes more efficient use of bandwidth but introduces a delay
TCP Synchronization                                                                Weighted RED (WRED)
Flows adjust TCP window sizes in synch, making inefficient use of a link           RED with the added capability of
                                                                                   recognizing prioritized traffic based
                         DSCP Per-Hop Behaviors                                    on its marking
Class Selector (CS)      Backward-compatible with IP Precedence values             Class-Based WRED (CBWRED)
Assured Forwarding (AF)          Four classes with variable drop preferences       WRED employed inside a class-
                                                                                   based WFQ (CBWFQ) queue
Expedited Forwarding (EF)          Priority queuing for delay-sensitive traffic

by Jeremy Stretch                                                                                                       v2.0
QUALITY                      OF    SERVICE                         PART 2                                        packetlife.net
                                                          Queuing Comparison
                                       FIFO               PQ               CQ               WFQ          CBWFQ           LLQ

        Default on Interfaces >2 Mbps                     No               No               <=2 Mbps     No              No
              Number of Queues 1                          4                Configured       Dynamic      Configured      Configured
            Configurable Classes No                       Yes              Yes              No           Yes             Yes
        Bandwidth Allocation Automatic                    Automatic        Configured       Automatic    Configured      Configured
 Provides for Minimal Delay No                            Yes              No               No           No              Yes
    Modern Implementation Yes                             No               No               No           Yes             Yes

    First In First Out (FIFO)                       Priority Queuing (PQ)                             LLQ Config Example

                                                  High                                                                Class Definitions

                     Tx                                                                      ! Match packets by DSCP value
                    Ring                       Medium                                        class-map match-all Voice
                                                                                              match dscp ef
                                               Normal
                                                                                 Hardware
                                                                                             !
              Hardware Queue                                                      Queue      class-map match-all Call-Signaling
                                                  Low                                         match dscp cs3
 Packets are transmitted in the                                                              !
order they are processed                       Provides four static queues which             class-map match-any Critical-Apps
                                              cannot be reconfigured                          match dscp af21 af22
 No prioritization is provided
                                                                                             !
 Default queuing method on high-               Higher-priority queues are                    ! Match packets by access list
speed (>2 Mbps) interfaces                    always emptied before lower-                   class-map match-all Scavenger
                                              priority queues                                 match access-group name Other
  Configurable with the tx-ring-
limit interface config command                 Lower-priority queues are at risk
                                                                                             policy-map Foo         Policy Creation
                                              of bandwidth starvation
      Custom Queuing (CQ)                                                                     class Voice
                                              Weighted Fair Queuing (WFQ)                      ! Priority queue policed to 33%
 Queue A      500 B/cycle                                                                      priority percent 33
                                                Flow 1                                        class Call-Signaling
 Queue B      4500 B/cycle                                                                     ! Allocate 5% of bandwidth
                                                Flow 2                                         bandwidth percent 5
                                  Hardware
 Queue C      1500 B/cycle         Queue                         ...                          class Critical-Apps
                                                                                 Hardware      bandwidth percent 20
 Rotates through queues using                   Flow n                            Queue        ! Extend queue size to 96 packets
Weighted Round Robin (WRR)                                                                     queue-limit 96
                                               Queues are dynamically created                 class Scavenger
 Processes a configurable number                                                               ! Police to 64 kbps
                                              per flow to ensure fair processing
of bytes from each queue per turn                                                              police cir 64000
                                               Statistically drops packets from
 Prevents queue starvation but                                                                  conform-action transmit
                                              aggressive flows more often                       exceed-action drop
does not provide for delay-
sensitive traffic                               No support for delay-sensitive                class class-default
                                              traffic                                          ! Enable WFQ
  Class-Based WFQ (CBWFQ)                                                                      fair-queue
                                                Low Latency Queuing (LLQ)                      ! Enable WRED
                                                                                               random-detect
 Queue A     512 Kbps Min
                                               Priority    512 Kbps Max
                                                                                             interface Serial0   Policy Application
 Queue B     1024 Kbps Min
                                              Queue A      512 Kbps Min                       ! Apply the policy in or out
                                  Hardware                                                    service-policy output Foo
  Default     Remainder            Queue      Queue B      1024 Kbps Min

 WFQ with administratively                                                       Hardware             LLQ Config Example
                                               Default        Remainder           Queue
configured queues                                                                            show policy-map [interface]
 Each queue is allocated an                    CBWFQ with the addition of a
                                                                                             Show interface
amount/percentage of bandwidth                policed strict-priority queue
  No support for delay-sensitive               Highly configurable while still               show queue <interface>
traffic                                       supporting delay-sensitive traffic             Show mls qos

by Jeremy Stretch                                                                                                                 v2.0

QoS Cheatsheet by packetlife.net

  • 1.
    QUALITY OF SERVICE PART 1 packetlife.net Quality of Service Models IP Type of Service (TOS) Best Effort No QoS policies are implemented Precedence Integrated Services (IntServ) Resource Reservation Protocol (RSVP) is used to reserve bandwidth per- flow across all nodes in a path Ver HL TOS Len Differentiated Services (DiffServ) Packets are individually classified and marked; policy decisions are made DSCP independently by each node in a path Layer 2 QoS Markings Precedence/DSCP Binary DSCP Prec. Medium Name Type Ethernet Class of Service (CoS) 3-bit 802.1p field in 802.1Q header 56 111000 Reserved 7 Frame Relay Discard Eligibility (DE) 1-bit drop eligibility flag 48 110000 Reserved 6 ATM Cell Loss Priority (CLP) 1-bit drop eligibility flag 46 101110 EF 5 MPLS Traffic Class (TC) 3-bit field compatible with 802.1p 32 100000 CS4 34 100010 AF41 IP QoS Markings 4 36 100100 AF42 IP Precedence The first three bits of the IP TOS field; limited to 8 traffic classes 38 100110 AF43 Differentiated Services Code Point (DSCP) 24 011000 CS3 The first six bits of the IP TOS are evaluated to provide more granular 26 011010 AF31 classification; backward-compatible with IP Precedence 3 28 011100 AF32 QoS Flowchart 30 011110 AF33 No 16 010000 CS2 Software Queue 18 010010 AF21 Scheduler HW Yes 2 Queuing Hardware Queue Software Queue 20 010100 AF22 Decision Queue Full? Software Queue 22 010110 AF23 8 001000 CS1 Terminology 10 001010 AF11 1 Per-Hop Behavior (PHB) 12 001100 AF12 The individual QoS action performed at each independent DiffServ node 14 001110 AF13 Trust Boundary Beyond this, inbound QoS markings are not trusted 0 000000 BE 0 Tail Drop Occurs when a packet is dropped because a queue is full Congestion Avoidance Policing Imposes an artificial ceiling on the amount of bandwidth that may be Random Early Detection (RED) consumed; traffic exceeding the policer rate is reclassified or dropped Packets are randomly dropped before a queue is full to prevent tail Shaping drop; mitigates TCP Similar to policing but buffers excess traffic for delayed transmission; synchronization makes more efficient use of bandwidth but introduces a delay TCP Synchronization Weighted RED (WRED) Flows adjust TCP window sizes in synch, making inefficient use of a link RED with the added capability of recognizing prioritized traffic based DSCP Per-Hop Behaviors on its marking Class Selector (CS) Backward-compatible with IP Precedence values Class-Based WRED (CBWRED) Assured Forwarding (AF) Four classes with variable drop preferences WRED employed inside a class- based WFQ (CBWFQ) queue Expedited Forwarding (EF) Priority queuing for delay-sensitive traffic by Jeremy Stretch v2.0
  • 2.
    QUALITY OF SERVICE PART 2 packetlife.net Queuing Comparison FIFO PQ CQ WFQ CBWFQ LLQ Default on Interfaces >2 Mbps No No <=2 Mbps No No Number of Queues 1 4 Configured Dynamic Configured Configured Configurable Classes No Yes Yes No Yes Yes Bandwidth Allocation Automatic Automatic Configured Automatic Configured Configured Provides for Minimal Delay No Yes No No No Yes Modern Implementation Yes No No No Yes Yes First In First Out (FIFO) Priority Queuing (PQ) LLQ Config Example High Class Definitions Tx ! Match packets by DSCP value Ring Medium class-map match-all Voice match dscp ef Normal Hardware ! Hardware Queue Queue class-map match-all Call-Signaling Low match dscp cs3 Packets are transmitted in the ! order they are processed Provides four static queues which class-map match-any Critical-Apps cannot be reconfigured match dscp af21 af22 No prioritization is provided ! Default queuing method on high- Higher-priority queues are ! Match packets by access list speed (>2 Mbps) interfaces always emptied before lower- class-map match-all Scavenger priority queues match access-group name Other Configurable with the tx-ring- limit interface config command Lower-priority queues are at risk policy-map Foo Policy Creation of bandwidth starvation Custom Queuing (CQ) class Voice Weighted Fair Queuing (WFQ) ! Priority queue policed to 33% Queue A 500 B/cycle priority percent 33 Flow 1 class Call-Signaling Queue B 4500 B/cycle ! Allocate 5% of bandwidth Flow 2 bandwidth percent 5 Hardware Queue C 1500 B/cycle Queue ... class Critical-Apps Hardware bandwidth percent 20 Rotates through queues using Flow n Queue ! Extend queue size to 96 packets Weighted Round Robin (WRR) queue-limit 96 Queues are dynamically created class Scavenger Processes a configurable number ! Police to 64 kbps per flow to ensure fair processing of bytes from each queue per turn police cir 64000 Statistically drops packets from Prevents queue starvation but conform-action transmit aggressive flows more often exceed-action drop does not provide for delay- sensitive traffic No support for delay-sensitive class class-default traffic ! Enable WFQ Class-Based WFQ (CBWFQ) fair-queue Low Latency Queuing (LLQ) ! Enable WRED random-detect Queue A 512 Kbps Min Priority 512 Kbps Max interface Serial0 Policy Application Queue B 1024 Kbps Min Queue A 512 Kbps Min ! Apply the policy in or out Hardware service-policy output Foo Default Remainder Queue Queue B 1024 Kbps Min WFQ with administratively Hardware LLQ Config Example Default Remainder Queue configured queues show policy-map [interface] Each queue is allocated an CBWFQ with the addition of a Show interface amount/percentage of bandwidth policed strict-priority queue No support for delay-sensitive Highly configurable while still show queue <interface> traffic supporting delay-sensitive traffic Show mls qos by Jeremy Stretch v2.0