# Presentation: 672506

## Network QoS:RSVP, Diff-Serv, and WFQ

- 501
- fbaker@cisco.com
- NW’98

- © 1998, Cisco Systems, Inc.** **

## This Is About Quality of Service

**What Is It**
**How to Give It**
**How to Get It**
**How We Get There from Here**

## Backbone Traffic Mix - Heavily TCP

**Transport Breakout**

**TCP Applications**

**Source: MCI/NSF OC3MON**
**via http://www.nlanr.net, 1998**

## Changing Corporate Network Application Predominance

**Changing Corporate Network Application Predominance**

*** Source: The Yankee Group, 1996**

**1996**

**1998**

**2000**

**2%**

**7%**

**27%**

**39%**

**17%**

**8%**

**13%**

**18%**

**23%**

**23%**

**16%**

**7%**

**14%**

**17%**

**12%**

**15%**

**28%**

**14%**

**Multimedia**

**Dynamic WWW**

**Static WWW**

**FTP and Telnet**

**E-Mail and News**

**Other**

**0**

**20**

**40**

**60**

**80**

**100**

**Numbers****in Percent**

## Multiple Drops in TCP

**Ack N+1**

**Ack N+1**

**Ack N+1**

**N+1**

**N**

**N+2**

**N+3**

**Multiple Drops in TCP**

**In the event of multiple drops within the same session:**
**Current TCPs wait for time-out**
**Selective Acknowledge may work around (but see INFOCOM ’98)**
**Hoe’s “fast retransmit phase” takes several RTTs to recover**

**N+3**

**Ack N+3**

**tic**
**tic**
**tic**

## Video: Playback Point

**Video: Playback Point**

**Distribution of Deliveries in Time**

**Transmission Time**

**Playback Point**

**Unless It’s ****Too Late...**

**Typical Delivery**

**Application Buffers Data**
**to Ensure Consistency**

## Definition of Quality of Service

**Inherently an application definition**
**QoS for Voice**
**Low loss, low latency, low jitter**
**QoS for Video**
**Low loss, all messages defining a frame arrive within the frame interval**
**QoS for TCP**
**At most one drop per round trip**

## Differentiated Services Model

**Focuses on classification**
**Objective is to reduce flow state**
**Assumes that there are two kinds of traffic**
**“****Adaptive”**
**Some flows adapt like TCP does**
**“****Rate controlled”**
**The rest produce well behaved traffic**
**(Cough)**

## Interaction between Integrated and Differentiated Services

**Orthogonal subjects**
**Integrated services is about congestion management and description of traffic**
**Questions: “May I send this?”**
**Answers: “You may send this” or “You may not”**
**Differentiated services is about aggregated traffic classification**
**Assertions: “This is en example of the traffic ****about which we agreed that...”**

## Fundamental Differentiated Service “Services”

**Assured Forwarding service**
**Engineering of best effort service**
**“****Coloring” of adaptive traffic**
**Expedited Forwarding service**
**Low loss/low delay for rate controlled flows**

## Assured Service

**Proposed by Dave Clark, MIT**
**Presumes service level agreement**
**Flat rate for traffic meeting a rate/burst profile**
**Usage charging for traffic out of profile**
**Drop management (Weighted RED)**
**All traffic subject to loss**
**Traffic out of profile much more subject to loss**
**Enhances ISP traffic engineering**
**(Good for consumer)**

## Random Early Detection (RED) Algorithm

**Maintain mean queue depth**
**Make it be normally low**
**Absorb spikes**
**Drop traffic at a rate proportional to **
**Mean queue depth**
**Time since last discard**
**IP precedence or RSVP concern**

## RED Behavior

**Maximum Threshold**

**Drop Rate**

**Weighted RED Behavior with TCP**

**0**

**50**

**100**

**150**

**200**

**250**

**300**

**350**

**0**

**4**

**8**

**12**

**16**

**20**

**24**

**28**

**32**

**36**

**40**

**44**

**48**

**52**

**56**

**60**

**64**

**68**

**72**

**76**

**80**

**84**

**88**

**92**

**96**

**10**

**0**

**Time Sequence**

**Queue Depth**

**0.00%**

**0.01%**

**0.02%**

**0.03%**

**0.04%**

**0.05%**

**0.06%**

**0.07%**

**0.08%**

**0.09%**

**0.10%**

**Maximum ****Threshold**

**Minimum Threshold**

**Drop Rate**

**Mean Queue**
**Depth**

**Actual**
**Queue**
**Depth**

**RED Behavior**

**Minimum Threshold**

**Maximum threshold**

**Minimum Threshold**

**Mean **
**Queue Depth**

**Actual **
**Queue Depth**

**Drop Rate**

- 501
- fbaker@cisco.com
- NW’98

- © 1998, Cisco Systems, Inc.** **

## Effect of RED

**Effect of RED**

**One day, below 100% throughput**
**Simple FIFO with Tail Drop**
**Starting 10:00 second day, 100% throughput**
**Random Early Detection enabled**

**RED Enabled**

**Courtesy of Sean Doran, Ebone**

## Was that a fluke?

**No, here’s what happened that week...**
**Session Synchronization reduced throughput until RED enabled**

**RED Enabled**

**Courtesy of Sean Doran, Ebone**

## Structure of Clark’s Service Level Agreement

**Structure of Clark’s Service Level Agreement**

**Up to ****rate ****over ****interval ****is “in profile”**
**Traffic within profile gets some guarantees**
**Traffic out of profile has no guarantees**
**Potentially dropped by WRED at bottleneck**
**Usage pricing**** of overage**

**Assured Service**

**0%**

**10%**

**20%**

**30%**

**40%**

**50%**

**60%**

**70%**

**0**

**10**

**20**

**30**

**40**

**50**

**60**

**70**

**80**

**90**

**Time**

**Usage**

## Best Effort Service in the Spheres of Influence Model

**Best Effort Service in the Spheres of Influence Model**

**Line Congested?**
**Drop at Some Rate!**

- 501
- fbaker@cisco.com
- NW’98

- © 1998, Cisco Systems, Inc.** **

## Assured Service in the Spheres of Influence Model

**Assured Service in the Spheres of Influence Model**

**Line Congested ****and Packet Out of Profile****? Drop at Some Rate!**

- 501
- fbaker@cisco.com
- NW’98

- © 1998, Cisco Systems, Inc.** **

## Best Effort Service in the Link Layer Bubble Model

**Best Effort Service in the ****Link Layer Bubble Model**

## Assured Service in the Link Layer Bubble Model

**Assured Service in the ****Link Layer Bubble Model**

## Expedited Forwarding Service

**Proposed by Van Jacobson, ****Lawrence Berkeley Labs**
**Targets jitter-sensitive traffic**
**Simple priority scheme**
**Rate controlled traffic (voice/video)**
**Admission service**
**“****Bandwidth Broker”**
**Centralized bandwidth reservation per AS path**

## Admission of Traffic

**It is a priority service**
**Therefore admission is the only protection against abuse**
**Various protocols possible**
**RSVP**
**RSVP-II, a.k.a. “Bandwidth Broker”**

## RSVP + Differentiated Services

**Intra-domain, use RSVP ****admission**** as is in corporate network**
**Use inter-domain bandwidth broker for ****inter-domain reservations (no work item in IETF)**
**Use Expedited Forwarding service to identify (****classify****) admitted traffic**

## RSVP+Diff-serv within domain

**RSVP+Diff-serv within domain**

**Host sends traffic shaped to contract**
**First hop router **
**polices to contract**
**re-marks as aggregate**
**Succeeding routers police to aggregate contract**

## RSVP for Diff-serv Aggregates

**RSVP for Diff-serv Aggregates**

**Defined for use within a service provider network**
**RSVP end to end, but micro-flow state not stored in core**
**Secondary RSVP for diff-serv aggregate**

## RSVP-II Bandwidth Broker

**Function of policy server**
**Server uses availability of contracted bandwidth   in one of its rules**
**Contract could be variable**
**Bandwidth broker is a BGP speaker**
**Therefore knows AS path to destination**
**Can communicate with ISP bandwidth broker         to obtain bandwidth along AS path**

## Bandwidth Broker Model

**Bandwidth Broker Model**

**Need 64**
**KBPS**
**Along**
**{3,7,11}**

**Need 64**
**KBPS**
**to AS**
**{11}**

**OK**

**RSVP Session**

**Need 64**
**KBPS**
**Along**
**{7,11}**

## Differentiated Services status

**Working group in IETF**
**Initial documents approved or in last call**
**No chartered work on Bandwidth Broker**

## Fair Queuing Approach

**Enqueue traffic in the sequence ****the TDM would deliver it**
**As a result, be as fair as the TDM**

## Fair Queuing Implementations

**Access/RSP fair queuing**
**Distributed fair queuing**
**Distributed precedence classes**
**VIP**
**GSR**

## RSP+Access Routers WFQ

**First deployed in 11.0**
**Optimized for minimizing jitter on ****low-speed lines**
**In each protocol, discriminates flows statistically, based on **
**Address, port/socket, protocol, 5 TOS bits**
**In IP,**
**Weights selected via IP precedence**
**Different packets in the same flow can have ****different weight(!)**
**Not supported in Catalyst****®**** products**

## Distributed (VIP) Fair Queuing

**First deployed in 11.1 CC**
**General deployment in 12.0**
**Deficit Round Robin Algorithm:**
**Optimized for speed on T-3/OC-3 lines**
**In each protocol, discriminates flows statistically, based on **
**Address, port/socket, protocol, 5 TOS bits**
**Uses nominal weights**

## Class Queuing     

**Intended replacement for ****custom queuing**
**Builds on distributed WFQ engine**
**Now implemented in**
**RSP**
**VIP**
**GSR**

## Class Queuing—VIP

**Classifier:**
**Access list**
**IP precedence**
**Calendar queue orders buckets of traffic**
**One weight per class**
**WRED within class**

**Queue**

**Queue**

**Queue**

**Queue**

**Queue**

**Queue**

- 501
- fbaker@cisco.com
- NW’98

- © 1998, Cisco Systems, Inc.** **

## Class Queuing—GSR

**Queue Round Robin**
**Weight selects amount of traffic removed on turn**
**Classifier:**
**IP precedence**
**One weight per class**
**One class can obtain every other access**
**WRED within class**