You are on page 1of 2

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

You might also like