Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780...

105
KU EECS 780 – Communication Networks – Traffic Management and QoS –1– Communication Networks The University of Kansas EECS 780 Traffic Management and QoS © 2004–2007 James P.G. Sterbenz 28 May 2010 rev. 10.0 James P.G. Sterbenz Department of Electrical Engineering and Computer Science Information Technology & Telecommunications Research Center The University of Kansas [email protected] http://www.ittc.ku.edu/~jpgs/courses/nets © 2004–2010 James P.G. Sterbenz 28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-2 © James P.G. Sterbenz ITTC Traffic Management and QoS Outline TQ.1 Traffic management functions and services TQ.2 Traffic characteristics and service models TQ.3 Basic queueing analysis TQ.4 Congestion control and avoidance TQ.5 Packet scheduling disciplines TQ.6 QoS and Internet service models Q.6.1 Guaranteed service and ATM Q.6.2 IntServ and RSVP Q.6.3 DiffServ Q.6.4 MPLS traffic engineering

Transcript of Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780...

Page 1: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 1 –

© James P.G. SterbenzITTCCommunication Networks

The University of Kansas EECS 780Traffic Management and QoS

© 2004–2007 James P.G. Sterbenz28 May 2010 rev. 10.0

James P.G. Sterbenz

Department of Electrical Engineering and Computer ScienceInformation Technology & Telecommunications Research Center

The University of Kansas

[email protected]

http://www.ittc.ku.edu/~jpgs/courses/nets

© 2004–2010 James P.G. Sterbenz

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-2

© James P.G. SterbenzITTC

Traffic Management and QoSOutline

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

Page 2: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 2 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-3

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.1 Functions and Services

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-4

© James P.G. SterbenzITTC

Network Layer ControlHybrid Layer/Plane Cube

Layer 3:traffic management incontrol planesignificant interaction with management plane

physicalMAC

link

networktransport

sessionapplication

data plane control plane

management plane

social

virtual link

L1

L7L5L4L3

L2L1.5

L8

L2.5

Page 3: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 3 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-5

© James P.G. SterbenzITTC

Network LayerService and Interfaces

• Network layer 3 is above link layer 2– addressing : network layer identifier for end systems (hosts)– forwarding : transfers packets hop-by-hop

• using link layer services• network layer responsible for determining which next hop

– routing : determination of path to forward packets– signalling : messages to control network layer behaviour– traffic management : actions to manage E2E service

• Network layer service to transport layer (L4)– deliver TPDUs to destination transport entity

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-6

© James P.G. SterbenzITTC

SwitchesFunctions: Routing and Signalling

• Traffic management

routing and signalling

transfer control

routing algorithm

topology link state

traffic management

signalling

input processing switch fabric

output processing

management

data manipulation

link layer decapsulation

link layer framing

packet buffers

forwardingtable

link scheduling

congestioncontrol

filter classify

fabric control

Page 4: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 4 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-7

© James P.G. SterbenzITTC

Network LayerService Model and Traffic Management

• Service model describes– service the network provides for end-to-end data transfer

• Traffic management– actions the network takes to manage this service

• Conflicting goals– sufficient resources to deliver required service to users– minimise network resource use to keep costs low

• Components– congestion control and avoidance– resource provisioning and (perhaps) QoS

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-8

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.2 Traffic Characteristics & Service Models

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.5 QoS and Internet service models

Page 5: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 5 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-9

© James P.G. SterbenzITTC

Traffic CharacteristicsService Models

• Networks provide a service model to applications• Best effort

– no service guarantees to application

• Probabilistic guarantees– statistical guarantees of performance parameters

• Absolute guarantees– guarantees of performance parameters

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-10

© James P.G. SterbenzITTC

Traffic CharacteristicsService Models: Best Effort

• Best effort– no service guarantees to application– only “best effort” attempt to eventually deliver packets

• Resource allocation– over provisioning to provide reasonable service– no resource allocation to individual flows– may schedule among flows for fairness

Page 6: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 6 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-11

© James P.G. SterbenzITTC

Traffic CharacteristicsService Models: Probabilistic Guarantees

• Probabilistic guarantees– statistical guarantees of performance parameters

• Resource allocation– allocation of resources to meet probabilistic service bounds– assumes benefits from statistical multiplexing– average rate + burstiness allocation– degree of over provisioning helps meet service guarantees

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-12

© James P.G. SterbenzITTC

Traffic CharacteristicsService Models: Absolute Guarantees

• Absolute guarantees– hard guarantees of performance parameters

• Resource allocation– allocation of resources to meet absolute service bounds– worst case allocation of resources

• peak rate

– circuit emulation

Page 7: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 7 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-13

© James P.G. SterbenzITTC

Traffic CharacteristicsTraffic Parameters

• Throughput or rate• Delay• Jitter: delay variance• Reliability• Delivery order

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-14

© James P.G. SterbenzITTC

Traffic CharacteristicsThroughput or Rate

• Main parameters– peak rate rp

– average rate ra

– burstiness (peak to average ratio or max burst size)

rp

ra bursty

uniform

time

Page 8: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 8 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-15

© James P.G. SterbenzITTC

Traffic CharacteristicsDelay

• Delay [s] is the sum of components:– speed-of-light path delay

• through transmission media• through circuits in nodes

– object transmission delay– queueing delay in network nodes

• due to blocking in a switch fabric (try to avoid)• due to contention for an output link

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-16

© James P.G. SterbenzITTC

Traffic CharacteristicsJitter

• Jitter: delay variance around mean delay– dmin is the minimum path delay – additional delay due to variable queueing and processing

dela

y di

strib

utio

n

1

0delay

no jitter low jitter high jitter

d d ddmin

Page 9: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 9 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-17

© James P.G. SterbenzITTC

Traffic CharacteristicsReliability

• Reliability– packet loss rate– maximum burst error size

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-18

© James P.G. SterbenzITTC

Traffic CharacteristicsDelivery Order

• Delivery order– whether packets must be delivered in order– may be required by E2E protocol or application

Page 10: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 10 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-19

© James P.G. SterbenzITTC

Traffic CharacteristicsTraffic Classes

• The traffic class specifies the characteristics of a flow – constant bit rate

• specified as a single rate

– variable bit rate• specified as (peak rate, average rate, burstiness)

– best effort• a desired may be specified

• Mechanisms to support traffic classes– over-provisioning– QoS mechanisms

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-20

© James P.G. SterbenzITTC

Traffic CharacteristicsTraffic Matrix

• Traffic can be characterised by a traffic matrix– matrix that describes traffic from every input → output pair– element i, j is traffic parameter from i to j

• engineered capacity [b/s or Erlangs]• load [b/s or Erlangs] typically over some time interval• delay• loss rate

Page 11: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 11 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-21

© James P.G. SterbenzITTC

Traffic CharacteristicsTraffic Matrix

• Example traffic matrix: load [Mb/s]– traffic load from i → j and j → i (typically asymmetric)– requires measurements by service provider

• e.g.– rKCK→ZÜR = 3.4– rZÜR→KCK = 6.1

0.1

8.1

8.7

1.5

2.7

4.9

SAN

4.6

5.2

3.3

8.0

1.7

4.4

STL

3.84.39.85.42.2SAN

1.17.31.49.33.5STL

–2.74.66.12.9ZÜR

8.3–4.38.46.1MKE

6.60.2–4.29.3LAN

3.49.25.7–0.2KCK

9.66.41.47.1–BOS

ZÜRMKELANKCKBOS

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-22

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.3 Basic Queueing Analysis

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Page 12: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 12 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-23

© James P.G. SterbenzITTC

Queueing AnalysisBasic Model

• Packets arrive in a queue at rate λ [1/s]• Packets are served at a rate μ [1/s]

– service time of s [s]

• System utilisation is ρ = λ/μ [Erlangs] ([1] = [s/s])– expressed as number in (0…1) or %

λ arrival rateρ utilisation

queue server μ

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-24

© James P.G. SterbenzITTC

Queueing AnalysisLittle’s Theorem

• N = λT• Variables

N – average number of customers in systemλ – arrival rate [1/s]T – average time spent in system [s]

• Holds for all distributions• Intuition

– as service time increases, so do number in system– as arrival rate increases, so do number in system

Page 13: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 13 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-25

© James P.G. SterbenzITTC

Queueing AnalysisDistributions

• Arrival and service rates determine performance– average rates matter, but…

• Distribution of rates are critical– uniform: all interarrival or service times equal

• simple but unrealistic for most systems

– exponential or Poisson• Pr[k arrivals in interval T] =

– bursty: arrivals clumped into groups– self-similar: distribution similar at different granularities

• evidence of self-similar traffic in Internet• challenges benefits of statistical multiplexing

( )!

kTT

ek

λλ −

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-26

© James P.G. SterbenzITTC

Queueing AnalysisNotation

• A/S/N– A and S: distribution of arrivals and service times

G – general independentM – exponential (Poisson)D – deterministic or uniform

– N: number of servers

• Examples– M/M/1: exponential arrival, exponential service, single server

Page 14: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 14 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-27

© James P.G. SterbenzITTC

M/M/1 Queueing AnalysisBasic Results

• Utilization ρ = λ / μ– arrival rate / service rate

• Average time in queue– note what happens as

ρ → 1

• Average time in system

/1

W ρ μρ

=−

1/1

T μρ

=−

ρ 1.0

W

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-28

© James P.G. SterbenzITTC

M/M/1 Queueing AnalysisDiscussion

• M/M/1 equations very simple– so they are frequently used in closed-form analysis– reflects independent arrivals

• e.g. Web transactions

– does not accurately represent traffic in network• bursty traffic• correlated traffic

• G/G/1 equations very complex!– requires integration of a function– difficult to analyse networks of generalised queues

Page 15: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 15 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-29

© James P.G. SterbenzITTC

Analysis TechniquesAnalytical

• Analytical queueing analysis– mathematical analysis of system– useful for small simple system– exact behaviour of complex system difficult or impossible

• not possible to precisely analyse large network of real traffic

– critical problem:• simplifying assumptions must be made for complex systems• usefulness of results depends on these assumptions!

• Simulation• Emulation• Measurement

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-30

© James P.G. SterbenzITTC

Analysis TechniquesSimulation

• Queueing analysis• Simulation

– build software simulation model of system• generally more complex models possible than analytical

– critical problem:• real system must be abstracted to software model• abstractions usually contain simplifying assumptions• usefulness of results depends on abstraction and model!

• Emulation• Measurement

Page 16: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 16 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-31

© James P.G. SterbenzITTC

Analysis TechniquesEmulation

• Queueing analysis• Simulation• Emulation

– hardware component designed to behave like real system• e.g. link emulator

– allows control of behaviour not possible in real system– critical problem

• emulator usually simplification of real system• usefulness of results depends on simplification!

– emulator frequently a component of simulation or testbed

• Measurement

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-32

© James P.G. SterbenzITTC

Analysis TechniquesMeasurement

• Queueing analysis• Simulation• Emulation• Measurement

– measurement of actual system• may be a testbed – usually a small replica of real network

– critical problem:• testbed may not reflect scale of real network• access to measurement data difficult

– due to scale of real network– due to administrative concerns, including privacy

Page 17: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 17 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-33

© James P.G. SterbenzITTC

Analysis TechniquesVerification

• Combination of techniques– each technique has strengths and weaknesses– should be combined as necessary

• Verification of models– compare results of two techniques to verify model– example:

• compare queueing and simulation model of simple system• gives confidence of simulation model for more complex system

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-34

© James P.G. SterbenzITTC

Analysis TechniquesDesign Cycle

• Use each technique as appropriate in design cycle• Design cycle

– mathematical analysis and/or simulation• iterate on design parameters until desired behaviour• gives insight on how to build prototype system

– construct prototype and measure in testbed• analysis in small scale• iterate design; modify simulation model if necessary

– build real system on large scale• measure to confirm design and modify future deployments

Page 18: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 18 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-35

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.4 Congestion Control and Avoidance

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-36

© James P.G. SterbenzITTC

Congestion ControlDefinitions

• Flow control– control transmission to avoid overwhelming receiver– this is a exclusively a transport layer function lecture TL

• Congestion control– control transmission to avoid overwhelming network paths– this is a network layer function

• that may interact with the transport or application layers

Page 19: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 19 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-37

© James P.G. SterbenzITTC

Congestion ControlIdeal Network

offered load

ideal

carr

ied

load

offered load

ideal

1.0

dela

y

throughput delay

• Ideal network:– throughput: carried load = offered load (45° line)– zero delay (flat line)

Why isn’t this possible?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-38

© James P.G. SterbenzITTC

Congestion ControlReal Network

• Delay can’t be zero: speed-of-light– delay through network channels– delay along paths in network nodes

• Throughput can’t be infinite– channel capacity limits bandwidth– switching rate of components limits bit rate

Page 20: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 20 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-39

© James P.G. SterbenzITTC

Congestion ControlDesired Real Network Behaviour

knee

offered load

ideal1.0

1.0

carr

ied

load

offered load 1.0

dela

y

knee

throughput

dmin

delay

• Desired network:– carried load = offered load up to share of capacity

what happens to delay?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-40

© James P.G. SterbenzITTC

Congestion ControlCauses of Congestion

• Congestion when offered load → link capacity• Best effort

– occurs whenever load is high

• Probabilistic guarantees– occurs when load exceeds resource reservations

• Absolute guarantees– can’t happen (in theory)

Page 21: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 21 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-41

© James P.G. SterbenzITTC

Congestion ControlInfinite Buffers / No Retransmission

• Congestion when offered load → link capacity• Infinite buffers

– queue length builds to infinity– d → ∞

todo: figures

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-42

© James P.G. SterbenzITTC

Congestion ControlFinite Buffers with Retransmission

• Finite buffers cause packet loss– retransmissions contribute to offered load

• assuming reliable protocol

– throughput curve levels off

Page 22: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 22 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-43

© James P.G. SterbenzITTC

Congestion ControlMultihop Network

• Multiple hops– downstream packet loss– upstream transmission wasted

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-44

© James P.G. SterbenzITTC

Congestion ControlConsequences of Congestion

• Delay increases– due to packet queuing in network nodes– due to retransmissions when packets overflow buffers

• finite buffers must drop packets when full

• Throughput– levels off gradually (with real traffic)– then decreases

• due to retransmissions when packets dropped• particularly over multiple hops

– congestion collapse• “cliff” of the throughput curve

Page 23: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 23 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-45

© James P.G. SterbenzITTC

Congestion ControlCongestion Control

knee cliff

offered load

ideal1.0

1.0

carr

ied

load

offered load

ideal

1.0

dela

y

knee

cliff

CC

throughput

dmin

delay

CC

• Congestion control reacts to congestion– operates at the cliff of the curve to prevent collapse

What should congestion control do?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-46

© James P.G. SterbenzITTC

Congestion ControlLocal Action

• Local action at point of congestion• Drops packets: discard policy

– tail drop simplest: drop packets that overflow buffers– more intelligent policies possible

• need flow or connection state in switches• discriminate which flows are causing congestion and penalise

Page 24: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 24 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-47

© James P.G. SterbenzITTC

Congestion ControlEnd-to-End Action

• End-to-end action: throttle source– reduce transmission rates– prevent unnecessary retransmissions

• Explicit congestion control– message to signal source to throttle

• Implicit– sender assumes that loss is due to congestion– source throttles with tail drop of a packet

More later

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-48

© James P.G. SterbenzITTC

Congestion ControlPreventing Congestion Collapse

• Congestion control reacts to congestion occurring– may be too late to avoid large-scale congestion collapse

Can we do better?consider how a node could detect congestion

Page 25: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 25 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-49

© James P.G. SterbenzITTC

Congestion ControlCongestion Avoidance

• Congestion control reacts to congestion occurring– may be too late to avoid large-scale congestion collapse

• Congestion avoidance attempts to prevent– measure impending congestion– detection of increasing queue occupancy

• Important with high bandwidth-×-delay product– response to an event happens after more bits transferred– it may be too late to react

• all bits causing problem may already be transmitted• other cause of problem may have gone away

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-50

© James P.G. SterbenzITTC

Congestion AvoidanceCongestion Avoidance

knee cliff

offered load

ideal1.0

1.0

carr

ied

load

offered load

ideal

1.0

dela

y

knee

cliff

CA CC

throughput

dmin

delay

CA

CC

• Congestion avoidance predicts congestion– operates at the knee of the curve to prevent collapse

What should congestion avoidance do?

Page 26: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 26 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-51

© James P.G. SterbenzITTC

Congestion AvoidanceGoals

• Congestion avoidance– prevent congestion from occurring

• Keep delay low– buffer occupancy → 0 in steady state– buffering needed for

• transient conditions• traffic bursts

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-52

© James P.G. SterbenzITTC

Congestion AvoidanceMechanisms

• Queue threshold detects impending congestion– less than buffer size (before tail drop)

• Explicit congestion avoidance– signal source to throttle or adjust rate

• Implicit congestion avoidance– AQM: active queue management– e.g. RED (random early detection)

• Fragment discard should cause PDU discard– PPD/EPD (partial/early packet discard) in ATM network– IP fragment discard possible, but better avoid fragmentation

Page 27: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 27 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-53

© James P.G. SterbenzITTC

Congestion Avoidance & ControlImplicit

• Sender assume loss is congestion and throttles– assumes that all losses are due to congestion

• End-to-end error and congestion control combined– missing ACK assumed to be congestion

• causes throttling and then retransmission

– TCP does this Lecture TL– reasonable when all losses are due to congestion

• fiber optic channels connected by reliable switches

– performs poorly when significant losses in channel• mobile wireless links [Krishnan 2004]

• under-provisioned CDMA (including optical CDMA)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-54

© James P.G. SterbenzITTC

Congestion Control & AvoidanceClosed-Loop End-to-End Congestion Control

networkcongestion control

packet scheduling

flow control

• Closed loop congestion– feedback from network necessary if no hard reservations

Page 28: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 28 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-55

© James P.G. SterbenzITTC

Implicit Congestion AvoidanceAQM: Random Early Detection

• RED (random early detection) [Floyd 1993]– drop packets

• Compute average queue length over an interval– EWMA: exponentially weighted moving average

q = instantaneous queue lengthα = weighting factor

• Drop packets if threshold exceeded– if do nothing

– if drop with probability proportional to

– if drop every packet

(1 )q q qα α= − +

minq θ<

maxq θ>maxmin qθ θ≤ ≤ q

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-56

© James P.G. SterbenzITTC

• Drop packets if threshold exceeded– if do nothing

– if drop with probability proportional to

– if drop every packet

Implicit Congestion AvoidanceAQM: Random Early Detection

dropprobability

qmaxθminθ

maxp

1

minq θ<

maxq θ>maxmin qθ θ≤ ≤ q

Page 29: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 29 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-57

© James P.G. SterbenzITTC

Implicit Congestion AvoidanceAQM: Random Early Detection

• RED advantages– causes TCP sources to throttle to relieve congestion

• RED disadvantages– random drops don’t necessarily penalise offending source– UDP and non-TCP friendly transport ignores RED drops

• at the cost of TCP flows

• RED deployment– AQM recommended by [RFC 2309]

• RED default recommendation

– not possible to directly measure deployment E2E

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-58

© James P.G. SterbenzITTC

Congestion Control & AvoidanceExplicit

• Congested node signals sender to throttle– ECN: explicit congestion notification

• Explicit signalling message– BECN or FECN (backward or forward ECN)– example: BECN/FECN in ATM networks– example: ICMP source quench– requires ability to address signalling message to source

• Congestion marking of headers in packets– example: ECN in IP networks

Page 30: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 30 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-59

© James P.G. SterbenzITTC

Congestion Control & AvoidanceFECN Performance

• Forward notification requires full RTT– may necessary if no signalling back-channel

alternative?

C=1

CONGESTION

FECN

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-60

© James P.G. SterbenzITTC

Congestion Control & AvoidanceBECN Performance

• Backward signaling reduces control loop delay– half on average– important in high bandwidth-×-delay networks (why? )

C=1

CONGESTION

FECN

CONGESTION

BECN

Page 31: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 31 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-61

© James P.G. SterbenzITTC

Congestion Control & AvoidanceInternet ECN

• Explicit congestion notification in the Internet• BECN (backward ECN)

– ICMP source quench (never deployed)

• FECN (forward ECN)– ECN (explicit congestion notification)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-62

© James P.G. SterbenzITTC

ICMP Source QuenchOverview

• ICMP Source quench– type = 4– code = 0– payload is congesting

datagram + 64Bof its payload

• Congested router– signals source– TCP throttles

• Never widely deployed– in spite of [RFC 1122]

0 4 checksum

unused

0 0

04 lengthhl TOS

fragment id

TTL 0 1 header checksum

source address

destination address

flag frag offset

04 lengthhl TOS

fragment id

TTL protocol header checksum

source address

destination address

flag frag offset

Page 32: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 32 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-63

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source– ECT (ECN capable transport) bit in IP header

• IP router marks packet when congestion impending– CE (congestion experienced) bit in IP header– FECN since packets marked; receiver must reply to source

• Receiver turns around congestion notification– ECE (ECN echo) flag in TCP header for ACKs until…

• Sender acknowledges ECE received– CWR (congestion window reduced) bit in TCP header

0

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-64

© James P.G. SterbenzITTC

Internet ECNIP Packet Fields

• ECN fields– replaces part of IPv4 TOS– b6 – b6 – DSCP– b6: ECT – ECN capable

transport– b7: CE – congestion

experienced payload(= length – hl – 20B)

04 lengthhl

fragment id

TTL protocol header checksum

source address

destination address

options(= hl – 20B)

flag frag offset

DSCP ECECT

CE

DSCP

Page 33: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 33 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-65

© James P.G. SterbenzITTC

Internet ECNTCP Segment Flags

• Control flags (1 bit each)– CWR cong. win. reduced– ECE ECN echo– URG urgent data– ACK acknowledgement– PSH push data– RST reset connection– SYN connection setup– FIN connection teardown

checksum urg data pointerreceive window

ack numbersequence number

dest port #source port #

options (variable length)

applicationpayload

(variable length)

HL

32 bits

CEUAPRSF

URG

ACK

PSH

RST

SYN

FIN

ECE

CWR

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-66

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source– ECT (ECN capable transport) bit in IP header set to 1

• IP router marks packet when congestion impending• Receiver turns around congestion notification• Sender acknowledges ECE received

IP IP

1

IP:ECT=1CE=0

TCP:ECE=0CWR=0

Page 34: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 34 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-67

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router passes packet unmarked if no congestion

– CE (congestion experienced) bit in IP header left at 0

• Receiver turns around congestion notification• Sender acknowledges ECE received

2

IP:ECT=1CE=0

TCP:ECE=0CWR=0

IP IP

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-68

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending

– CE (congestion experienced) bit in IP header set to 1

• Receiver turns around congestion notification• Sender acknowledges ECE received

3

IP:ECT=1CE=1

TCP:ECE=0CWR=0

IP IP

Page 35: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 35 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-69

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending• Receiver turns around congestion notification

– ECE (ECN echo) flag in TCP ACK header set to 1

• Sender acknowledges ECE received4

IP:ECT=1CE=0

TCP:ECE=1CWR=0

IP IP

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-70

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending• Receiver turns around congestion notification

– ECE flag continues to be set in case ACKs dropped until…

• Sender acknowledges ECE received5

IP:ECT=1CE=0

TCP:ECE=1CWR=0

IP:ECT=1CE=0

TCP:ECE=1CWR=0

IP IP

Page 36: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 36 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-71

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending• Receiver turns around congestion notification• Sender acknowledges ECE received

– CWR (congestion window reduced) TCP flag set to 16

IP:ECT=1CE=0

TCP:ECE=0CWR=1

IP IP

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-72

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending• Receiver turns around congestion notification• Sender acknowledges ECE received

– note that if CWR packet lost it will be retransmitted 7

IP:ECT=1CE=0

TCP:ECE=0CWR=1

IP IP

Page 37: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 37 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-73

© James P.G. SterbenzITTC

Internet ECNSignalling Message Sequence

• Capability to support ECN signalled by source• IP router marks packet when congestion impending• Receiver turns around congestion notification• Sender acknowledges ECE received

– on receipt receiver resets ECE to 0 in subsequent ACKs 8

IP:ECT=1CE=0

TCP:ECE=0CWR=0

IP IP

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-74

© James P.G. SterbenzITTC

Congestion Control & AvoidanceOpen-Loop End-to-End Rate Control

network

conforming traffic

admission control

rate scheduling

rate policing excess traffic

receiver negotiation

• Initial negotiation– admission control limits traffic to available net resources– receiver negotiates what it can accept (flow control)

• Steady state– policing enforces traffic contract from transmitter

• excess traffic may be marked and passed if capacity available

Page 38: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 38 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-75

© James P.G. SterbenzITTC

Congestion Control & AvoidanceHybrid End-to-End Rate/Congestion Control

network

conforming traffic

admission control

rate scheduling

rate policing excess traffic

receiver negotiation congestion

control

• Open loop rate control for statistical guarantees• Overbooking of resources requires congestion control

– dynamic rate adjustments to sender

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-76

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.5 Packet Scheduling Disciplines

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Page 39: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 39 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-77

© James P.G. SterbenzITTC

Packet SchedulingOutput Scheduling Motivation

• Output scheduling– switch output processing function Lecture NL

• typically on line card

– required if contention for egress link from switch

• Fairness among flows– fair queuing within best-effort service– fair queueing among flows in any service class

• Flow and class differentiation• Traffic contracts

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-78

© James P.G. SterbenzITTC

Packet SchedulingOutput Scheduling Motivation

• Output scheduling– switch output processing function Lecture NL

• typically on line card

– required if contention for egress link from switch

• Fairness among flows• Flow and class differentiation

– per-flow queueing to give flows different service– per-class queueing to give classes different service

• Traffic contracts

Page 40: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 40 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-79

© James P.G. SterbenzITTC

Packet SchedulingOutput Scheduling Motivation

• Output scheduling– switch output processing function Lecture NL

• typically on line card

– required if contention for egress link from switch

• Fairness among flows• Flow and class differentiation• Traffic contracts

– transmission of packets by end system to meet contract– policing at switch ingress to enforce contract – traffic shaping at switch egress to maintain contract

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-80

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)operation?

schedulingqueue

server(link)

0

Page 41: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 41 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-81

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-82

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

2

Page 42: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 42 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-83

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

3

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-84

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

4

Page 43: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 43 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-85

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

5

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-86

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

6

Page 44: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 44 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-87

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

7

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-88

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

8

Page 45: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 45 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-89

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

9

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-90

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

10

Page 46: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 46 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-91

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

11

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-92

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

12

Page 47: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 47 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-93

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

13

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-94

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

14

Page 48: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 48 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-95

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

15

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-96

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

schedulingqueue

server(link)

16

Page 49: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 49 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-97

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

What happens when the queue fills?

schedulingqueue

server(link)

17

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-98

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

• Discard policy: when full queue– tail drop: drop arriving packet

schedulingqueue

server(link)

18

Page 50: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 50 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-99

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

• Discard policy: when full queue– tail drop: drop arriving packet

alternatives?

schedulingqueue

server(link)

19

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-100

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

• Discard policy: when full queue– tail drop: drop arriving packet– priority: drop/remove on priority basis– random: drop/remove randomly why?

server(link)

20

Page 51: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 51 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-101

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

• FIFO (first in first out)– send in order of arrival to queue when link available

• Discard policy: when full queue– tail drop: drop arriving packet– priority: drop/remove on priority basis– random: drop/remove randomly: RED congestion avoidance

server(link)

21

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-102

© James P.G. SterbenzITTC

Packet SchedulingFIFO Queueing

Advantages and Disadvantages?

Page 52: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 52 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-103

© James P.G. SterbenzITTC

Packet SchedulingFIFO Advantages

• FIFO is simplest discipline– very simple software management– very simple hardware

• shift register is a series of flip-flops

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-104

© James P.G. SterbenzITTC

Packet SchedulingFIFO Disadvantages

• FIFO is simplest discipline– very simple software management– very simple hardware

• shift register is a series of flip-flops

• All packets treated equallyimplications?

Page 53: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 53 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-105

© James P.G. SterbenzITTC

Packet SchedulingFIFO Disadvantages

• FIFO is simplest discipline• All packets treated equally

– flows not necessarily treated fairly• important for best effort service

– flows not discriminated by service class• e.g. gold vs. silver vs. bronze

– variable packet size not accounted for• small packets wait behind large packets

(recall message switching)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-106

© James P.G. SterbenzITTC

Packet SchedulingFIFO Disadvantages

• FIFO is simplest discipline• All packets treated equally

– flows not necessarily treated fairly• important for best effort service

– flows not discriminated by service class• e.g. gold vs. silver vs. bronze

– variable packet size not accounted for• small packets wait behind large packets

(recall message switching)

Alternatives?

Page 54: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 54 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-107

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– separate traffic classes by priority– serve highest priority first– provides relative service differentiation

Implementation?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-108

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

0

Page 55: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 55 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-109

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-110

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

2

Page 56: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 56 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-111

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

3

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-112

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

4

Page 57: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 57 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-113

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

5

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-114

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing– FIFO queue for each traffic class– queues served in priority order

• Packet classifier sorts into proper queues– e.g. source address, port, or QoS field

• Higher priority traffic classes receive better service6

Page 58: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 58 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-115

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

Advantages and Disadvantages?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-116

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queuing advantages– relatively simple discipline– priority queues

• multiple physical FIFO queues• memory and pointer management to partition between queues

Page 59: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 59 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-117

© James P.G. SterbenzITTC

Packet SchedulingPriority Queueing

• Priority queueing advantages– relatively simple discipline

• Priority queueing disadvantages– provides service differentiation– but lower priorities may get no service: starvation– no mechanism for proportional service

alternatives?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-118

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

Implementation?

0

Page 60: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 60 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-119

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id

0

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-120

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns1

Page 61: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 61 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-121

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns2

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-122

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns3

Page 62: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 62 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-123

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns4

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-124

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns5

Page 63: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 63 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-125

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns6

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-126

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns7

Page 64: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 64 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-127

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns8

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-128

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

• Round robin– FIFO queue for each class or flow – attempt to provide fair service among best-effort flows

• Packet classifier sorts into proper queues by flow id• Packets are served round-robin

– cyclically taking turns; skip if empty9

Page 65: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 65 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-129

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Queueing

Advantages and Disadvantages?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-130

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Advantages

• Round robin is simple discipline– very simple software management– very simple hardware

• round robin is a counter the points to a particular queue

– in per flow round-robin senders are treated equally• in terms of number of packets served

Page 66: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 66 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-131

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Disadvantages

• Round robin is simple discipline• All classes or flows treated equally

implications?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-132

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Disadvantages

• Round robin is simple discipline• All classes or flows treated equally

– senders not necessarily treated fairly– variable packet size not accounted for

• small packets wait behind large packets(recall message switching)

– senders not discriminated by service class• e.g. gold vs. silver vs. bronze

Page 67: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 67 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-133

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Disadvantages

• Round robin is simple discipline• All classes or flows treated equally

– senders not necessarily treated fairly– variable packet size not accounted for

• small packets wait behind large packets(recall message switching)

– senders not discriminated by service class• e.g. gold vs. silver vs. bronze

Alternatives?

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-134

© James P.G. SterbenzITTC

Packet SchedulingRound Robin Disadvantages

• Round robin is simple discipline• All classes or flows treated equally

– senders not necessarily treated fairly– variable packet size not accounted for

• small packets wait behind large packets(recall message switching)

– senders not discriminated by service class• e.g. gold vs. silver vs. bronze

Alternatives : combine priority and round robin?

Page 68: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 68 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-135

© James P.G. SterbenzITTC

Packet SchedulingWeighted Round Robin Queueing

• Weighted round robin– FIFO queue for each flow or class (flow aggregates)

• Packet classifier sorts into proper queues– by flow id or traffic class

• Packets are served cyclically: round-robinweights determine relative service: benefits of priority and RR

0

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-136

© James P.G. SterbenzITTC

Packet SchedulingFair Queueing

• Motivation– fairness among best effort flows

• GPS: generalised processor sharing– ideal fluid model of sharing among flows

• Bit-by-bit round robin– would serve a bit at a time from each queue– fair regardless of packet sizes– not practical to implement directly

Page 69: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 69 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-137

© James P.G. SterbenzITTC

Packet SchedulingWeighted Fair Queueing

• WFQ– (weighted fair queueing)– FIFO queue flow or flow class

• Simulates bit-by-bit round robin– schedules packets based on simulated departure time– relatively complex to implement

0

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-138

© James P.G. SterbenzITTC

Packet SchedulingDeficit Round Robin Fair Queueing

• Deficit round robin: simple hardware implementation– FIFO queue for each class or flow– each flow given a quantum of service

• Packets are served round-robin– as long as packet can be served within quantum + deficit– unused service (with packet waiting) added to deficit– provides long term fairness 0

Page 70: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 70 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-139

© James P.G. SterbenzITTC

Packet SchedulingOverengineering vs. Optimality

• Traffic management can be very complex– classification in switch input processing– scheduling in switch output processing – flow or connection management in switches– interaction with link-state routing

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-140

© James P.G. SterbenzITTC

Packet SchedulingOverengineering vs. Optimality

• Traffic management can be very complex– classification in switch input processing– scheduling in switch output processing – flow or connection management in switches– interaction with link-state routing

• Overengineering can dramatically simplify TM– at the cost of extra network resource

• links• line cards• switches

Page 71: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 71 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-141

© James P.G. SterbenzITTC

Packet SchedulingOverengineering vs. Optimality

• Traffic management can be very complex– classification in switch input processing– scheduling in switch output processing – flow or connection management in switches– interaction with link-state routing

• Overengineering can dramatically simplify TM– at the cost of extra network resource

• links• line cards• switches

• Goal: balance overengineering vs. optimality

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-142

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.6 QoS and Internet Service Models

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

Page 72: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 72 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-143

© James P.G. SterbenzITTC

Quality of ServiceOverview

• Quality of service (QoS or QOS)– the service model that the network provides to applications– along with supporting mechanisms

• Recall service models:– best effort

• no service guarantees to application

– probabilistic guarantees• statistical guarantees of performance parameters

– absolute guarantees• guarantees of performance parameters

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-144

© James P.G. SterbenzITTC

Quality of ServiceMechanisms: Best Effort

• Best effort– no service guarantees to application– no QoS mechanisms necessary (traditional Internet)

Page 73: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 73 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-145

© James P.G. SterbenzITTC

Quality of ServiceMechanisms: Best Effort with Fairness

• Best effort– no service guarantees to application– no QoS mechanisms necessary (traditional Internet)

• Fairness– desirable to allow fair sharing of network

• scheduling under no congestion• discard under impending congestion

– difficult to discriminate well-behaved and misbehaving flows• assuming IPv4 (this is why IPv6 has a flowid flowspec)

– fair mechanisms substantially more complex to implement• but hardware advances in the 2000s make this possible

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-146

© James P.G. SterbenzITTC

Internet Service ModelsOverview

• Best effort– traditional service model– IPv4 TOS field intended to for service differentiation

• Traditional best effort model is being supplemented– new congestion control mechanisms (e.g. ECN, RED)– fair queueing– SLAs supported by packet classification and MPLS underlays

• Integrated services– fine-grained traffic management supported by RSVP

• Differentiated services– coarse-grained traffic differentiation

Page 74: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 74 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-147

© James P.G. SterbenzITTC

Internet Best Effort ArchitectureIPv4 Type of Service

• TOS: type of service field– intended to give hints– almost never used

• except for routing traffic– no enforcement mechanisms

• TOS fields– 3 msb precedence

• 0–7 = normal–high priority– 3 flag bits

D: 0/1=normal/low delayT: 0/1=normal/high thruputR: 0/1=normal/high reliability

– 2 lsb unused

04 lengthhl TOS

fragment id

TTL protocol header checksum

source address

destination address

options(= hl – 20B)

payload(= length – hl – 20B)

flag frag offset

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-148

© James P.G. SterbenzITTC

Internet Best Effort ArchitectureIPv6 Traffic Class and Flow Label

• Traffic class (8b)– differentiates traffic class– originally 4b priority

• Flow label (20b)– identify flows for per

flow traffic management

• TM never well defined– later assumed that

DiffServ would define

06 flow labelclass

payload length hop limitnext hdrl

source address

destination address

payload(= payload length)

Page 75: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 75 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-149

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.6.1 Guaranteed Service and ATM

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-150

© James P.G. SterbenzITTC

Quality of ServiceMechanisms: Guaranteed Service

• Probabilistic or absolute guarantees (strong QoS)– guarantees of performance parameters: traffic contract– resources reserved to meet traffic contract

• Requires– connection or flow establishment– admission control:

only permit new flows if resources available– traffic policing to insure sources adhere to contract

• Conflicting goals:– sufficient resources to deliver required QoS to users– minimise network resource use to keep costs low

Page 76: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 76 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-151

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceConnection-Oriented Resource Reservation

• Connections establish state– admission control: resources

• reserved with SETUP• committed with CONNECT

– if resources not available• connection REJECTed

– at end of connection• resources must be RELEASEd

• QoS guarantees possible– feedback control loops not needed– less dependent on congestion control

• unless resources overbooked

SETUP

PROCEEDING

PROCEEDING

CONNECT

CONNECTCONNECT

SETUP

SETUP tsig

ACK

ACK

PROCEEDING

ACK

ts

tp

tsetup

txfer

dn

d1

Dn

tg tb

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-152

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceConnection-Oriented Admission Control/Policing

network

conforming traffic

admission control

rate scheduling

rate policing excess traffic

receiver negotiation

• Initial negotiation– traffic contract negotiated with network– admission control permits only if resources available

• Steady state– policing enforces traffic contract from transmitter– traffic shaping in switches ensures traffic remains compliant

Page 77: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 77 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-153

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceATM Traffic Management

• ATM (asynchronous transfer mode)– connection-oriented network based on fast-packet switching– major motivation was to support QoS for multimedia apps

• ATM traffic management [AF-TM-0101, -0149, -0150]– complex set of traffic classes and parameters– attempted to be too optimal in resource allocation

• recall overengineering vs. optimality tradeoff

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-154

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceATM Traffic Classes

• Large set of traffic classes originally specified– CBR: constant bit rate for circuit emulation– rt-VBR: real-time variable bit rate for multimedia applications– nrt-VBR: non-real-time variable bit rate for bursty data– ABT: fast reservation– UBR: unspecified bit rate for best effort service

• Later additions to support Internet traffic– ABR: available bit rate with closed loop flow control

• adaptive but relative complex

– GFR: guaranteed frame rate• response to concerns about ABR complexity

Page 78: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 78 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-155

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceATM Traffic Classes

peak rate*best effortnoneunspecified bit rateUBR

minimum ratepeak rate*

dataopen loopguaranteed frame rateGFR

minimum ratepeak rate*

datahybridavailable bit rateABR

peak and average rateburstdatafast reservation

open loopATM block transferABT

peak and average rateburstdataopen loopnon-real-time

variable bit ratenrt-VBR

peak and average rateburst, jitter, latency

real-time multimediaopen loopreal-time

variable bit ratert-VBR

peak ratereal timecircuit emulationopen loopconstant bit rateCBR

ParametersTrafficControlNameClass

* specified in SETUP but not guaranteed

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-156

© James P.G. SterbenzITTC

Guaranteed Quality of ServiceLeaky Bucket Policing and Traffic Shaping

• Leaky bucket to enforce– average rate or– peak rate

• Simple implementation– packet arrival ⇒

token placed in bucket– bucket drained at target rate– if threshold L exceeded

• packet dropped or• may be marked if excess aggregate capacity available• burst lengths may be limited by I

bucket

L

c

I+L 1/t rate

discard

Page 79: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 79 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-157

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.6.2 Internet Integrated Services and RSVP

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-158

© James P.G. SterbenzITTC

Internet Service ModelsIntServ Overview

• Integrated services [RFC 1633]– fine-grained per-flow traffic management

• Mechanisms– resource reservations in switches/routers

• assumes per packet delay is most important quality• soft state

– flow setup using RSVP signalling protocol– optional traffic engineering using other mechanisms

• Per flow end-to-end traffic classes– guaranteed service– controlled load

Page 80: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 80 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-159

© James P.G. SterbenzITTC

Internet Service ModelsAdmission Control

• Reservation specified as– R-spec: service requirements specification for network

• e.g. minimum rate

– T-spec: traffic descriptor of sender• e.g. token bucket parameters• will be specified by each receiver since RSVP receiver oriented

• Flow will not be admitted if resources not available• Signalling protocol

– carries R-spec and T-spec to routers– RSVP is signalling protocol for IntServ

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-160

© James P.G. SterbenzITTC

Internet Service ModelsIntServ Guaranteed Service Class1

• Guaranteed service [RFC 2212]– guarantees rate and delay bound

• Tspec (sender traffic descriptor)– leaky bucket with parameters (r, b)

r = rate [B/s]b = burst length [Bytes]

– peak rate p [B/s]– minimum policed unit m [B]

• smaller packets will be counted as m B long– maximum packet size M [B] (M MTU)

• Rspec (network service requirements)

Page 81: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 81 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-161

© James P.G. SterbenzITTC

Internet Service ModelsIntServ Guaranteed Service Class2

• Guaranteed service [RFC 2212]– guarantees rate and delay bound

• Tspec (sender traffic descriptor)• Rspec (network service requirements)

– rate R [B/s]– slack S [μs]

• per node delay allowed to meet E2E bound

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-162

© James P.G. SterbenzITTC

Internet Service ModelsIntServ Controlled Load Class

• Controlled load [RFC 2211]– does not provide performance quantitative guarantees

• Service model– between best effort and guaranteed service– similar to lightly loaded network– high percentage of transmitted packets will reach receiver– delay of most packets will not exceed minimum path delay

• Admission of controlled load– network has sufficient resources to avoid congestion

Page 82: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 82 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-163

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Overview

• RSVP Internet signalling protocol [RFC 2205]

• Designed for IntServ signalling [RFC 2210]

• Also adapted for other signalling purposes– e.g. RSVP-TE for MPLS path establishment [RFC 3209]

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-164

© James P.G. SterbenzITTC

RSVPDesign Goals

• Application diversity – different resource requirements

• Heterogeneous receiver bandwidth requirements– different bandwidth along paths

Page 83: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 83 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-165

© James P.G. SterbenzITTC

RSVPDesign Goals

• Application diversity• Heterogeneous receiver bandwidth requirements• Use existing routing protocols

– adaptation to changes in underlying unicast, multicast route

• Multicast a first class service– adaptation to multicast group membership– receiver oriented flow resource reservation

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-166

© James P.G. SterbenzITTC

RSVPDesign Goals

• Application diversity• Heterogeneous receiver bandwidth requirements• Use existing routing protocols• Multicast a first class service• Scalability

– signalling overhead to grow (at worst) linear in # receivers

• Modular design– heterogeneous underlying technologies

Page 84: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 84 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-167

© James P.G. SterbenzITTC

RSVPFunctionality

• Control plane for signalling– no interaction with forwarding data plane

• Specification only of what resources needed– only a signalling protocol to convey reservation

– IntServ (or other mechanism) determines how reserved

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-168

© James P.G. SterbenzITTC

RSVPFunctionality

• Control plane for signalling• Specification only of what resources needed • No determination of path

– RSVP separate from routing protocols– key problem: BGP not QoS aware– traffic engineering helps

• No multicast group management– done by IGMP

Page 85: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 85 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-169

© James P.G. SterbenzITTC

RSVPSignalling Message Format

• Raw IP datagrams– protocol ID = 46– may also be encapsulated

in UDP packets

• Format– router alert IP option

• needed for PATH• intermediate processing

– common header– followed by variable

number of object headers

04 lengthhl TOS

fragment id

TTL 46 header checksum

source address

destination address

. . .

flag frag offset

01 RSVP checksum

RSVP lengthsend TTL

msg typeflgs

reserved

object content(variable length)

class #object length c type

router alert option

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-170

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Messages

• Path messages (sender-to-network)1  PATH path establishment message3  PATHErr error response to PATH message5  PATHTear path state teardown (remove) message

• Reservation messages (receiver-to-network)2  RESV reservation message4  RESVErr error response to RESV message6  RESVTear reservation teardown (release) message7  RESVConf reservation confirmation message

Page 86: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 86 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-171

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Object Classes

• NULL• SESSION

– required in all messages

• RSVP_HOP• TIME_VALUE• STYLE• FLOWSPEC

– desired QoS in RESV msg.

• FILTER_SPEC• SENDER_TEMPLATE

• SENDER_TSPEC– sender TSpec

• ADSPEC• ERROR_SPEC• POLICY_DATA• INTEGRITY• SCOPE• RESV_CONF

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-172

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

PATH

S R1 R2A B

0

A

BS R2

R1

Page 87: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 87 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-173

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

PATH

S A B

2

1

R2

A

BS R2

R1

R1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-174

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

PATH

S A B

2

R2

A

BS R2

R1

R1

Page 88: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 88 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-175

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

S A B

3

R2

A

BS R2

R1

R1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-176

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

4

R2

A

BS R2

R1

R1

Page 89: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 89 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-177

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

5

R2

A

BS R2

R1

R1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-178

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

6

R2

A

BS R2

R1

R1

Page 90: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 90 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-179

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

7

R2

A

BS R2

R1

R1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-180

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

8

R2

A

BS R2

R1

R1

Page 91: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 91 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-181

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Signalling Overview

• Designed for IP multicast– receiver oriented

• PATH from sender– establishes path state across group

• RESV from receivers– reserves resources for each

PATH

RESV

RESV

S A B

9

R2

A

BS R2

R1

R1

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-182

© James P.G. SterbenzITTC

Internet Service ModelsRSVP PATH Messages

• PATH message communicates:– sender information– reverse-path-to-sender routing information– later upstream forwarding of receiver reservations

• PATH message contents:– address: unicast destination, or multicast group– flowspec: bandwidth requirements spec– filter flag: if yes, record identities of upstream senders

• to allow packets filtering by source

– previous hop: upstream router/host ID– refresh time: time until this info times out

Page 92: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 92 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-183

© James P.G. SterbenzITTC

Internet Service ModelsRSVP RESV Messages

• Reservations flow upstream from receiver-to-senders– create additional receiver-related state at routers– reserve resources

• RESV message contents:– desired bandwidth– filter type– filter spec

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-184

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Reservation Styles

• Determine merging of RESV requests• FF: fixed filter

– distinct reservation– explicit sender selection

• Shared reservations– intended for multicast application

• senders generally do not simultaneously transmit

– WF: wildcard filter• wildcard sender selection (largest of any receiver request)

– SE: shared explicit• explicit sender selection (list)

Page 93: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 93 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-185

© James P.G. SterbenzITTC

Internet Service ModelsRSVP Soft State

• State periodically refreshed– senders periodically resend PATH to maintain state– receivers periodically resend RESV to maintain state– new receivers alter reservations with new RESV messages– messages have TTL field specifying refresh interval

• Flow state removal– explicit teardown: PATHTear and RESVTear– removed after timeout

• prevents accumulation of unused state

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-186

© James P.G. SterbenzITTC

Internet Service ModelsIntServ and RSVP Discussion

• IntServ and RSVP deployment– none in backbones– very limited in experimental edge networks– needed everywhere for end-to-end service

• Concerns– scalability of maintaining per flow state [RFC 2208]

• serious challenge in 1990s• but feasible now given advances in hardware technology

– flexibility• only two service classes defined• but framework allows more

Page 94: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 94 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-187

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.6.3 Internet DiffServ Architecture

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-188

© James P.G. SterbenzITTC

Internet Differentiated ServicesDiffServ Overview

• Differentiated services [RFC 2474, 2475, 3260]

• Reaction to IntServ and RSVP– concerns about scalability

• Coarse-grained traffic management– emphasis on relative performance of aggregate flows– static provisioning rather than dynamic resource reservation– no per flow signalling like RSVP

• No definition for end-to-end traffic classes– rather functional components that allow service provisioning

Page 95: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 95 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-189

© James P.G. SterbenzITTC

Internet DiffServFunctional Placement

• Simple functions in network core– PHB: per hop behaviour– avoids significant per flow state

• Relatively complex functions at edge– flow classification– traffic conditioning

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-190

© James P.G. SterbenzITTC

Internet DiffServArchitecture

• Network– DS domain: contiguous set of nodes

• common provisioning policies and PHB definitions

– DS region: contiguous set of DS domains that offer DiffServ

• Nodes– boundary node: node at edge of DS domain– interior or core node: nonboundary node within DS domain

Page 96: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 96 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-191

© James P.G. SterbenzITTC

Internet DiffServArchitecture

region

domain

domain

PDB

domain

PDB

boundary node (class/cond)

premarking (set DSCP)

interior node (PHB PHB)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-192

© James P.G. SterbenzITTC

Internet DiffServService Level Specification

• SLS (service level specification)• formerly SLA in DiffServ RFCs [RFC 3260]

• Service agreement between network and customer– traffic conditioning specification (TCS)– pricing, billing, accounting, auditing– reliability, availability, security– policy for traffic and routing

Page 97: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 97 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-193

© James P.G. SterbenzITTC

Internet DiffServTraffic Conditioning Specification

• TCS (traffic conditioning specification)• formerly TCA in DiffServ RFCs [RFC 3260]

• Details parameters for traffic profiles and policing• Examples:

– traffic profiles, e.g. token bucket parameters for each class– performance metrics, e.g. throughput, delay, drop priorities– actions for non-conformant packets– marking and shaping by service provider

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-194

© James P.G. SterbenzITTC

Internet DiffServIPv4 DSCP

• DS: diff serv field– replaces IPv4 TOS– 6 msb – DSCP– 2 lsb – unallocated (ECN)

• DSCP: diff serv code point– determines PHB of packet– default: 000000– class selector: others– relative treatment

• 111X000 > 000000– routing precedence

– > larger DSCP smaller

04 lengthhl

fragment id

TTL protocol header checksum

source address

destination address

options(= hl – 20B)

payload(= length – hl – 20B)

flag frag offset

DSCP EC

Page 98: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 98 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-195

© James P.G. SterbenzITTC

Internet DiffServClassification

• DiffServ classifier– classifier uses predefined rules to select packets

• BA: behaviour aggregate (when DSCP already marked)• MF: multifield – multidimensional classification

– marker• optional premarking of DSCP

– at source node based on application requirements– at access boundary based on LAN or enterprise network

• marking of DSCP based on MF classification

classifier marker

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-196

© James P.G. SterbenzITTC

Internet DiffServConditioning

• Traffic conditioner at region boundary to enforce TCS– meter measures traffic– remarker inserts new DSCP for out-of-conformance packets– shaper delays some packets to conform to TCS– dropper may drop out-of-conformance packets

meter

remarkershaper

dropperclassifier

Page 99: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 99 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-197

© James P.G. SterbenzITTC

Internet DiffServ DiffServ Per Hop Behaviours

• PHB: per hop behaviour– forwarding behaviour at each node in DiffServ domain

• externally observable and measurable• does not specify mechanism to be used or implementation

– each PHB has unique id code [RFC 3140]

• Standard PHBs– expedited forwarding (EF): id 101110– assured forwarding (AF): id cccpp0

• ccc = class ∈ {001, 010, 011, 100}• pp = drop precedence ∈ {01, 11, 10}

– others possible (but no current IETF activity)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-198

© James P.G. SterbenzITTC

Internet DiffServExpedited Forwarding PHB

• EF (expedited forwarding) PHB [RFC 3246, 3247]– forwarding similar to high priority queueing

• Typically used to construct low delay & jitter service– requires sufficient provisioning of resources for EF– if EF traffic exceeds resources delay bounds will not be met

• Packets served at rate of at least R– independent of non-EF offered load– logical link with a minimum guaranteed rate

• Implementation alternatives (recall: not specified)– priority queueing with token bucket– WFQ such that EF traffic has large enough weight

Page 100: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 100 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-199

© James P.G. SterbenzITTC

Internet DiffServAssured Forwarding PHB1

• AF (assured forwarding) PHB [RFC 2597]

• Intended to allow relative levels of service– classes provisioned to partition bandwidth

• Four forwarding classes– each class has a bandwidth guarantee

• allocated a minimum amount of buffers and rate

– packet order preserved within each class– each class has three drop precedences

• which packets are dropped during congestion within class• highest drop precedence dropped first

– mechanism to share bandwidth above min. not specified

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-200

© James P.G. SterbenzITTC

Internet DiffServAssured Forwarding PHB2

• Implementation properties– attempt to minimise long term congestion

while allowing short term fluctuation• smoothing function to measure congestion level

– dropping insensitive to short-term traffic characteristicsdiscard from flows of = long-term traffic char with = prob.

– discard rate per flow proportional to its fraction of total– gradual discard in response to congestion

• Implementation alternatives (recall: not specified)– WFQ to partition bandwidth among AF classes– random dropping, e.g. RED

Page 101: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 101 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-201

© James P.G. SterbenzITTC

Internet DiffServDiffServ Region Behaviours

• PRB: per region behaviour [RFC 3086]– edge-to-edge service through a DS region (or domain)

• not the same at end-to-end unless only one region or domain

• PRB is combination of:– interior node PHB– boundary node classification and conditioning

• Examples:– BE (best effort) PRB

• best effort with provisioning to support SLS– VW (virtual wire) PRB [draft-ietf-diffserv-pdb-vw]

• circuit emulation: EF PHB with minimum departure rate• conditioning to assure that arrival rate < departure rate

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-202

© James P.G. SterbenzITTC

Traffic Management and QoSTQ.6.4 MPLS Traffic Engineering

TQ.1 Traffic management functions and servicesTQ.2 Traffic characteristics and service modelsTQ.3 Basic queueing analysisTQ.4 Congestion control and avoidanceTQ.5 Packet scheduling disciplinesTQ.6 QoS and Internet service models

Q.6.1 Guaranteed service and ATMQ.6.2 IntServ and RSVPQ.6.3 DiffServQ.6.4 MPLS traffic engineering

Page 102: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 102 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-203

© James P.G. SterbenzITTC

Internet Traffic EngineeringOverview

• Provisioning and managing resources– sufficient resources to meet customer SLAs– limit cost of network infrastructure– determine proper placement of infrastructure to balance

• Problem: IP routing not QoS aware– generally destination based with no load balancing– although OSPF has capability

• Recall:– IntServ/RSVP and DiffServ do not do this– contrast:

ATM PNNI combines QoS, traffic engineering, routing

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-204

© James P.G. SterbenzITTC

Internet Traffic EngineeringAlternative Solutions

• Overlay– overlay topology engineered on virtual underlay

• ATM• MPLS: multiprotocol label switching

– required for interdomain routing (BGP4)

• Link-state weight– OSPF link state weight manipulation– can’t be done interdomain

Page 103: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 103 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-205

© James P.G. SterbenzITTC

Internet Traffic EngineeringMPLS Overview

• MPLS: multiprotocol label switching– fast packet switching roots– label swapping

• Initial motivation: label swapping in Internet– fast packet forwarding– without complexity and incompatibility of IP over ATM– but IP CIDR lookup at line speed solved in 1990s

• Traffic engineering motivation– provide set of engineered paths for underlay

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-206

© James P.G. SterbenzITTC

Internet Traffic EngineeringMPLS for Traffic Engineering

• LSP: label switched path– generated for

• traffic engineering• load balance

• Label distribution signalling protocols– LDP: label distribution protocol [RFC 3036]

• initial protocol but no traffic engineering capabilities– RSVP-TE (RSVP traffic engineering) [RFC 3209]

• chosen by IETF [RFC 3468]• RSVP with new object classes

– CR-LDP (constraint routing LDP) [RFC 3212]• alternative IETF protocol not chosen

Page 104: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 104 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-207

© James P.G. SterbenzITTC

Internet Traffic EngineeringMPLS Shim Format

network layer packet

stacked labels single label

S=1

label

COS TTL

link layer header

link layer header

label4B

shim

labelstack

link layer trailer link layer trailer

network layer packet

S=1

label

COS TTL

S=0

label

COS TTL

S=0

label

COS TTL

• Label shim– encapsulates IP packet– switches swap label– stacked labels

• allows net hierarchy(ala ATM VP/VC)

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-208

© James P.G. SterbenzITTC

Traffic Management & QoSFurther Reading and Additional References

• Natalie Giroux and Sudhakar Gantio,Quality of Service in ATM Networks:State-of-the-Art Traffic Management,Prentice-Hall, 1999.

• Zheng Wang,Internet QoS:Architectures and Mechanisms for Quality of ServiceMorgan-Kaufmann, 2001.

• Michael Welzl,Network Congestion Control,John Wiley, Chichester UK, 2005.

Page 105: Traffic Managent and QoS - KU ITTCjpgs/courses/nets/lecture-traffic-qos-print.pdf · KU EECS 780 – Communication Networks – Traffic Management and QoS ... L1 L7 L5 L4 L3 L2 L1.5

KU EECS 780 – Communication Networks – Traffic Management and QoS

– 105 –

28 May 2010 KU EECS 780 – Comm Nets – Traffic Management and QoS NET-TQ-209

© James P.G. SterbenzITTC

Traffic Management & QoSAcknowledgements

Some material in these foils comes from the textbook supplementary materials:

• Kurose & Ross,Computer Networking:A Top-Down Approach Featuring the Internet

• Sterbenz & Touch,High-Speed Networking:A Systematic Approach toHigh-Bandwidth Low-Latency Communicationhttp://hsn‐book.sterbenz.org