IP QOS Theory and Practice. eng. Nikolay Milovanov CCIE SP# 20094

Similar documents
"Charting the Course... Implementing Cisco Quality of Service (QOS) Course Summary

Sharing Bandwidth Fairly During Congestion

Exam: Title : Quality of Service (QOS) Ver :

Implementing Cisco Quality of Service 2.5 (QOS)

The Quickest Way To Get Certified. Cisco (QOS) Quality of Service. Version 2.0

Congestion Management Overview

Congestion Management Overview

QoS Configuration. Overview. Introduction to QoS. QoS Policy. Class. Traffic behavior

Queuing Mechanisms. Overview. Objectives

H3C S9500 QoS Technology White Paper

Congestion Management Overview

Configuring QoS CHAPTER

Defining QoS for Multiple Policy Levels

QoS Technology White Paper

Quality of Service Commands match ip precedence. match ip precedence ip-precedence-value [ip-precedence-value ip-precedence-value

Quality of Service Commands policy-map. This command has no default behavior or values.

Understanding How Routing Updates and Layer 2 Control Packets Are Queued on an Interface with a QoS Service Policy

Advanced Computer Networks

Prioritizing Services

Real-Time Protocol (RTP)

Configuring Weighted Fair Queueing

Modular Quality of Service Overview on Cisco IOS XR Software

Basics (cont.) Characteristics of data communication technologies OSI-Model

Advanced Lab in Computer Communications Meeting 6 QoS. Instructor: Tom Mahler

Configuring Modular Quality of Service Congestion Management on Cisco IOS XR Software

ip rsvp reservation-host

Configuring Quality of Service

fair-queue aggregate-limit

Principles. IP QoS DiffServ. Agenda. Principles. L74 - IP QoS Differentiated Services Model. L74 - IP QoS Differentiated Services Model

Improving QOS in IP Networks. Principles for QOS Guarantees

Configuring Modular QoS Congestion Avoidance

QoS Policy Parameters

Setting Up Quality of Service

QoS: Time-Based Thresholds for WRED and Queue Limit

Lecture Outline. Bag of Tricks


Configuring priority marking 63 Priority marking overview 63 Configuring priority marking 63 Priority marking configuration example 64

Quality of Service Monitoring and Delivery Part 01. ICT Technical Update Module

Part1: Lecture 4 QoS

Configuring QoS. Finding Feature Information. Prerequisites for QoS

Before configuring standard QoS, you must have a thorough understanding of these items:

Mohammad Hossein Manshaei 1393

Hierarchical Queuing Framework

Configuring QoS CHAPTER

Introduction to IP QoS

Cisco Optimizing Converged Cisco Networks. Practice Test. Version

Network Support for Multimedia

QoS Technology White Paper

Configuring global CAR 73 Overview 73 Configuring aggregate CAR 73 Configuration procedure 73 Configuration example 73

Table of Contents. Cisco Quality of Service Options on GRE Tunnel Interfaces

Presentation Outline. Evolution of QoS Architectures. Quality of Service Monitoring and Delivery Part 01. ICT Technical Update Module

Last time! Overview! 14/04/15. Part1: Lecture 4! QoS! Router architectures! How to improve TCP? SYN attacks SCTP. SIP and H.

Explain the methods for implementing QoS on a converged network with Cisco's routers and Catalyst Switches

Contents. QoS overview 1

Using Multilink PPP over Frame Relay

Master Course Computer Networks IN2097

QoS: Per-Session Shaping and Queuing on LNS

Configuring Modular QoS Congestion Management on Cisco IOS XR Software

A Differentiated Services API for Adaptive QoS Management in IP Networks

Master Course Computer Networks IN2097

Configuring QoS CHAPTER

Applying QoS Features Using the MQC

QoS v6.0. QoS v6.0 VGN

QoS: Match on ATM CLP

Marking Traffic CHAPTER

Configuring QoS. Understanding QoS CHAPTER

Cisco. Implementing Cisco Service Provider Next-Generation Core Network Services Version: Demo. Web:

Using Multilink PPP over Frame Relay

default ip nbar protocol-pack

Byte-Based Weighted Random Early Detection

Topic 4b: QoS Principles. Chapter 9 Multimedia Networking. Computer Networking: A Top Down Approach

Exam : Title : Quality of Service Exam (QoS) Ver :

Comparing the bandwidth and priority Commands of a QoS Service Policy

Understanding SROS Priority Queuing, Class-Based WFQ, and QoS Maps

Unit 2 Packet Switching Networks - II

Configuring QoS Policy Actions and Rules

QoS: Regulating Packet Flow Configuration Guide, Cisco IOS Release 15S

Internet Services & Protocols. Quality of Service Architecture

Quality of Service. Understanding Quality of Service

Configuring PFC QoS CHAPTER

qos police order parent-first

Before configuring standard QoS, you must have a thorough understanding of these items: Standard QoS concepts.

MQC Hierarchical Queuing with 3 Level Scheduler

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

NETLOGIC TRAINING CENTER

Sections Describing Standard Software Features

Multicast and Quality of Service. Internet Technologies and Applications

Configuring Modular QoS on Link Bundles

Cisco ASR 1000 Series Aggregation Services Routers: QoS Architecture and Solutions

QoS: Hierarchical Queueing Framework Configuration Guide, Cisco IOS Release 15M&T

Cisco - Catalyst G-L3 Series Switches and WS-X4232-L3 Layer 3 Modules QoS FAQ

Quality of Service (QoS)

Fragmenting and Interleaving Real-Time and Nonreal-Time Packets

Quality of Service. Ib Hansen TECRST-2500_c Cisco Systems, Inc. All rights reserved. Cisco Public 1

Quality of Service in the Internet. QoS Parameters. Keeping the QoS. Leaky Bucket Algorithm

Provisioning: Working with Pre-Configuration

HUAWEI NetEngine5000E Core Router V800R002C01. Feature Description - QoS. Issue 01 Date HUAWEI TECHNOLOGIES CO., LTD.

Distributing Bandwidth Between Queues

Configuring Quality of Service

Configuring Quality of Service

Transcription:

IP QOS Theory and Practice eng. Nikolay Milovanov CCIE SP# 20094

QoS Architectures

QoS Architecture Models Best Effort Service Integrated Service Differentiated Service 3

Best Effort Service What exactly IP does: All packets treated equally Unpredictable bandwidth Unpredictable delay and jitter 4

Integrated Services

IntServ (RFC1633) 6

IntServ Resource Reservation through RSVP 7

Traffic Engineering

Without Traffic Engineering Cars: SFO-LAX LAX-SFO SAN-SMF SMF-SAN No Traffic Engineering analogy to Human Drivers

With Traffic Engineering Cars: SFO-LAX LAX-SFO SAN-SMF SMF-SAN Traffic Engineering analogy to Auto Pilot

MPLS 11

MPLS TE 12

MPLS + TE To build MPLS TE tunnels you need RSVP-TE to signal the tunnel, to reserve the resources and to distribute the labels OSPF/ISIS TE extension to provide a way of describing the traffic engineering topology (including bandwidth and administrative constraints) and distributing this information within a given area. 13

Differentiated Services

DiffServ (RFC2474/2475) 15

Traffic Classification Most fundamental QoS building block The component of a QoS feature that recognizes and distinguishes between different traffic streams Without classification, all packets are treated the same 16

Traffic Classification/ Admission Control Issues Always performed at the network perimeter Makes traffic conform to the internal network policy Marks packets with special flags (colors) Colors used afterwards inside the network for QoS management 17

Classification/ Admission Control Scheme Meter Admitted Packet Classifier Marker Shaper/ Policer Dropped 18

Classification Criteria IP header fields TCP/UDP header fields Routing information Packet Content (NBAR) i.e. HTTP, HTTPS, FTP, Napster etc. 19

Traffic Coloring Options IP Precedence DSCP QoS Group 802.1p CoS ATM CLP Frame Relay DE 20

Type-of-Service (RFC791) Precedence D T R Unused Version Length ToS Field Total Length 0 8 15 31 0 1 D Normal Delay Low Delay T Normal Throughput High Throughput R Normal Reliability High Reliability 21

IP Precedence Values 111 Network Control 110 Internetwork Control 101 Critical 100 Flash Override 011 Flash 010 Immediate 001 Priority 000 Routine 22

DSCP - Diffserv Code Point DSCP (6 bits) Unused Class 1 Class 2 Class 3 Class 4 Low Drop Precedence 001010 010010 011010 100010 Medium Drop Precedence 001100 010100 011100 100100 High Drop Precedence 001110 010110 011110 100110 23

Classification mechanisms MQC ( Modular Qos Command Line Interface) CAR ( Commited Access Rate) 24

Congestion Management

Queuing Traffic burst may temporarily exceed interface capacity Without queuing this excess traffic will be lost Queuing allows bursty traffic to be transmitted without drops Queuing strategy defines order in which packets are transmitted through egress interface Queuing introduced additional delay which signals to adaptive flows (like TCP) to back off their throughput 26

Queuing Algorithms FIFO Priority (Absolute) Weighted Round Robin (WRR) Fair 27

FIFO Simplest queuing method with the least CPU overhead No congestion control Transmits packets in the order of arrival High volume traffic can suppress interactive flows Default queuing for interfaces > 2Mbps (i.e. Ethernet) 28

FIFO FIFO average queue depth dependence on load 29

Absolute Priority Queuing Generic Priority Queuing Custom Queuing RTP Priority Queuing Low Latency Queuing (LLQ) 30

Simplest QoS Algorithm: Priority Queuing Stated requirement: If <application> has traffic waiting, send it next Commonly implemented Defined behavior of IP precedence 31

Priority Queuing Implementation Approach Identify interesting traffic Access lists Place traffic in various queues Dequeue in order of queue precedence 32

Priority Queuing (PQ) Traffic Destined for Interface Classify High Medium Normal Low Interface Hardware Ethernet Frame Relay ATM Serial Link Etc. Transmit Queue Output Line Classification by: Protocol (IP, IPX, AppleTalk, SNA, DecNet, Bridge, etc.) Incoming Interface (EO, SO, S1, etc.) Q Length Defined by Q Limit Interface Buffer Resources Absolute Priority Scheduling 33

Priority Queuing Scheme High Empty? Y Y Y Y Medium Empty? Normal Empty? Low Empty? N N N N Send packet from High Send Packet from Medium Send Packet from Normal Send Packet from Low 34

Generic PQ Drawbacks Needs thorough admission control No upper limit for each priority level High risk of low priority queues` starvation effect 35

Generic PQ Configuration Sample priority-list 1 protocol ip high tcp telnet priority-list 1 protocol ip high list 100 priority-list 1 protocol ip medium lt 1000 priority-list 1 interface ethernet 0/0 medium priority-list 1 default low! interface serial 2/1! ip unnumbered loopback 0 priority-group 1 access-list 100 permit tcp host 10.0.0.1 any eq http PQ Definition PQ Attached to Interface ACL definition 36

Custom Queuing (CQ) (Weighted Round Robin) Traffic Destined for Interface Classify 1/10 2/10 3/10 2/10 Interface Hardware Ethernet Frame Relay ATM Serial Link Etc. Transmit Queue Output Line 3/10 Up to 16 Q Length Deferred by Queue Limit Link Utilization Ratio Weighted Round Robin Scheduling (byte count) Classification by: Protocol (IP, IPX, AppleTalk, SNA, DecNet, Bridge, etc.) Incoming interface (EO, SO, S1, etc.) Interface Buffer Resources Allocate Proportion of Link Bandwidth) 37

WRR Drawbacks Unpredictable jitter Fairness significantly depends on MTU and TCP window size Complex calculations to achieve desired traffic proportions 38

CQ Byte-count Calculus Distribute bandwidth to 3 queues with proportion x:y:z and packet sizes q x, q y, q z. 1.Calculate a x =x/q x, a y =y/q y, a z =z/q z. 2.Normalize and round a x, a y, a z. a x = round(a x /min(a x, a y, a z )); a y = round(a y /min(a x, a y, a z )); a z = round(a z /min(a x, a y, a z )). 3.Convert obtained packet proportion into byte count bc x = a x q x ; bc y = a y q y ; bc z = a z q z. 4.Actual bandwidth share of i-th queue can be calculated with the following formula: share i = n bc j=1 i bc j C 5.For better approximation obtained byte-counts can be multiplied by some positive whole number. 39

CQ Configuration Sample queue-list 1 protocol ip 1 tcp telnet queue-list 1 protocol ip 2 list 100 queue-list 1 protocol ip 3 udp 53 queue-list 1 interface ethernet 0/0 4 queue-list 1 queue 1 byte-count 3000 queue-list 1 queue 2 byte-count 4500 queue-list 1 queue 3 byte-count 3000 queue-list 1 queue 4 byte-count 1500 queue-list 1 default 4! interface serial 2/1! ip unnumbered loopback 0 custom-queue-list 1 CQ List Definition CQ Attached to Interface access-list 100 permit tcp host 10.0.0.1 any eq http ACL Definition 40

Bitwise Round Robin Fair Queuing TDM Model Time Division Multiplexer Keshav, Demers, Shenker, and Zhang Simulates a TDM One flow per channel 41

TDM Message Arrival Sequence 6 4 1 5 2 3 Time Division Multiplexer 42

TDM Message Delivery Sequence 5 4 1 Time Division Multiplexer 6 3 2 43

Fair Queuing Algorithm Employs virtual bit-by-bit round robin model (BRR) R BRR dynamics are described by the equation: = t μ N (t) ac i-th packet from flow α arriving at time t 0 is services at time t : R = ) + α α ( ti ) R( ti 0 P α i Servicing of i-th packet from flow α will start at S iα and finish at F iα : S α i α = MAX ( F 1, R( t i α i )) F = S + Additional δ parameter is added for priority assignment to inactive flows : B α i α i = i i α i α α MAX ( F 1, R( t ) δ ) Packets are ordered for transmission according to B iα values. P α i 44

Fair Queuing Approach Enqueue traffic in the sequence the TDM would deliver it As a result, be as fair as the TDM 45

Effects of Fair Queuing Low-bandwidth flows get As much bandwidth as they can use Timely service High-bandwidth flows Interleave traffic Cooperatively share bandwidth Absorb latency 46

What Weighting Does In TDM Channel speed determines message duration In WFQ Multiplier on message length changes simulated message duration Result: Flow s fair share predictably unfair 47

Weighted Fair Queuing (WFQ) Traffic Destined for Interface Classify Transmit Queue Output Line Configurable Number of Queues Weighted Fair Scheduling Flow-Based Classification by: Source and destination address Protocol Session identifier (port/socket) Interface Buffer Resources Weight Determined by: Requested QoS (IP Procedure, RSVP) Frame Relay FECN, BECN, DE (For FR Traffic) Flow throughput (weighted-fair) 48

Weighted Fair Queuing (WFQ) Fair bandwidth per flow allocation Low delay for interactive applications Protection from ill-behaved sources 49

Weighted Fair Queuing (WFQ) Flow classified by the following fields: Source address Source port Destination address Destination port ToS Weight of each flow (queue) depends on ToS: weight = 1/(precedence+1) Bandwidth distributed in 1/weight proportions 50

Weighted Fair Queuing (WFQ) Packets are ordered according to the expected virtual departure time of their last bit. Low volume flows have preference over high volume transfers. Low volume flow is identified as using less than its share of bandwidth. The special queue length threshold value is established, after which only low volume flows can enqueue. All the packets, that belong to high volume flows are dropped. 51

Drawbacks of Weighted Fair Queuing Requires more sorting than other approaches 52

Weighted Fair Queuing (WFQ) FTP Delay Telnet t 53

Weighted Fair Queuing (WFQ) FTP Telnet Delay t 54

WFQ Configuration Sample interface serial 2/1 ip unnumbered loopback 0 fair-queue 32 128 0 Queue Threshold (packets) Number of reservable queues Maximal number of queues 55

RTP Priority Queuing Classifies only by UDP port range Only even ports from the range are classified Establishes upper limit via integrated policer Excess traffic dropped during congestion periods RTP PQ has priority over LLQ 56

RTP PQ Configuration Sample interface serial 2/1 ip unnumbered loopback 0 ip rtp priority 16384 16383 256 Starting UDP port Range length Bandwidth Limit (kbps) 57

Low Latency Queuing (LLQ) Implemented using MQI Very rich classification criteria (class-map) Establishes upper limit via integrated policer Excess traffic dropped during congestion periods 58

LLQ Configuration Sample class-map match-all voice! match access-group name voip policy-map llq! class voip priority 30 class class-default fair-queue 64 interface serial 2/1 ip unnumbered loopback 0 service-policy output llq! ip access-list extended voip permit ip host 10.0.0.1 any Class definitions LLQ policy definition LLQ Policy attached to interface ACL definition 59

Class Based WFQ (CBWFQ) Based on the same algorithm as WFQ Weights can be manually configured Allows to easily specify guaranteed bandwidth for a class Configuration based on Cisco MQI 60

CBWFQ Configuration Sample class-map match-all premium match access-group name premium-cust class-map match-all low-priority match protocol napster! policy-map cbwfq-sample class premium bandwidth 512 class low-priority shape average 128 shape peak 512 class class-default fair-queue 64! interface serial 2/1 ip unnumbered loopback 0 max-reserved-bandwidth 85 service-policy output cbwfq-sample! ip access-list extended premium-cust permit ip host 10.0.0.1 any Class definitions Qos policy definition QoS Policy attached to interface ACL definition 61

CBWFQ Configuration Sample Hierarchical Design class-map match-all premium match access-group name premium-cust class-map match-all voice match ip precedence flash! policy-map total-shaper class class-default shape average 1536 service-policy class-policy policy-map class-policy class premium bandwidth 512 class voice priority 64 class class-default fair-queue 128 interface fastethernet 1/0 ip unnumbered loopback 0 max-reserved-bandwidth 85 service-policy output total-shaper! ip access-list extended premium-cust permit ip host 10.0.0.1 any 62

Hierarchical CBWFQ Limitations Only two levels of hierarchy are supported set command not supported in child policy Shaping allows only in parent policy LLQ can be configured only either in child or parent policies but not in both FQ allowed only in child policy 63

Congestion Avoidance

Global Synchronization Effect Load Link Capacity Avg. Throughput t 65

Tail Drop and TCP Flow Control Packet drops from all TCP sessions simultaneously High probability of multiple drops from the same TCP session Uniformly distributed drops from high volume and interactive flows Result: Low average throughput! 66

Random Early Detection (RED) Developed by Van Jacobson in 1993 Starts randomly dropping packets before actual congestion occurs Keeps average queue depth low Increases average throughput 67

Global Synchronization Removed Load Link Capacity Avg. Throughput t 68

Random Early Detection (RED) p Tail Drop p RED 1 1 δ Adjustable 0 q max q avg 0 θ min θ max q avg 69

Random Early Detection (RED) RED Parameters: θ min Minimal threshold after which RED starts packet drops. Minimal recommended value is 5 packets. θ max Maximal threshold after which all packets are dropped. Recommended value is 2-3 times θ min. δ - Mark probability denominator denotes packet drop probability at θ max average queue depth. Optimal value 0.1. α - Exponential weighting factor determines the level of backward value-dependence in average queue depth calculation: q avg = (q old (1-2 -α )) + (q cur 2 -α ) General recommendation α = 9. 70

TCP Rate Control - 1 In TCP, the spacing of ACKs and the window size in the ACKs controls the transmitter s rate. Rate Control manipulates the ACKs as they pass through the rate control device by: Adjusting the size of TCP ACK window Inserting new ACKs Re-spacing existing ACKs Rate Control works only with TCP; other methods, such as Token Bucket, must be used with UDP. Rate Control violates the protocol layering design, as it allows network devices to manipulate a higher-layer protocol s operation. Nevertheless, it usually functions well and provides fine-grained control.

TCP Rate Control - 2 Example: Transmitter Rate-control device Receiver window: 8000 window: 2000 window: 2000 window: 2000 window: 2000

Weighted Random Early Detection (WRED) Modified version of RED Weights determine the set of parameters: θ min, θ max and δ. Weight depends on ToS field value Interactive flows are preserved 73

WRED Configuration Sample Interface based interface serial 2/1 ip unnumbered loopback 0 random-detect random-detect 0 32 64 20 random-detect 1 32 64 20 random-detect 2 32 64 20 random-detect 3 32 64 20 θ min δ θ max 74

WRED Configuration Sample MQI based policy-map red class class-default random-detect random-detect 0 32 64 20 random-detect 1 32 64 20 random-detect 2 32 64 20 random-detect 3 32 64 20 interface Serial2/1 ip unnumbered loopback 0 service-policy output red θ min δ θ max WRED is incompatible with LLQ feature! 75

Link Optimization

Link Fragmentation and Interleaving (LFI) For links < 128kbps Jumbogram Voice Packet 64 kbps 1500 bytes 190ms 77

Link Fragmentation and Interleaving (LFI) Supported interfaces: Multilink PPP Frame Relay DLCI ATM VC 64 kbps 78

LFI Configuration Sample MLP version interface virtual-template 1 ip unnumbered loopback 0 ppp multilink ppp multilink interleave ppp multilink fragment-delay 30 ip rtp interleave 16384 1024 512 79

Questions??? eng. Nikolay Milovanov email: nmil@niau.org