better-than-best-effort: qos, intserv, diffserv, rsvp,...

117
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTP Shivkumar Kalyanaraman Rensselaer Polytechnic Institute [email protected] http://www.ecse.rpi.edu/Homepages/shivkuma Based in part on slides of Ion Stoica, Jim Kurose, Srini Seshan, Srini Keshav

Upload: others

Post on 23-Aug-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

1

Better-than-best-effort: QoS,IntServ, DiffServ, RSVP, RTP

Shivkumar KalyanaramanRensselaer Polytechnic Institute

[email protected] http://www.ecse.rpi.edu/Homepages/shivkuma

Based in part on slides of Ion Stoica, Jim Kurose, Srini Seshan, Srini Keshav

Page 2: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

2

Overview

Why better-than-best-effort (QoS-enabled) Internet ?Quality of Service (QoS) building blocksEnd-to-end protocols: RTP, H.323 Network protocols:

Integrated Services(IntServ), RSVP.Scalable differentiated services: DiffServ

Control plane: QoS routing, traffic engineering, policy management, pricing models

Page 3: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

3

Why Better-than-Best-Effort (QoS)?To support a wider range of applications

Real-time, Multimedia, etc

To develop sustainable economic models and new private networking services

Current flat priced models, and best-effort services do not cut it for businesses

Page 4: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

4

Quality of Service: What is it?

Multimedia applications: network audio and video

network provides application with level of performance needed for application to function.

QoS

Page 5: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

5

What is QoS?“Better performance” as described by a set of parameters or measured by a set of metrics.

Generic parameters: BandwidthDelay, Delay-jitterPacket loss rate (or loss probability)

Transport/Application-specific parameters:TimeoutsPercentage of “important” packets lost

Page 6: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

6

What is QoS (contd) ?These parameters can be measured at several granularities:

“micro” flow, aggregate flow, population.

QoS considered “better” if a) more parameters can be specifiedb) QoS can be specified at a fine-granularity.

QoS spectrum:

Best Effort Leased Line

Page 7: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

7

Fundamental Problems

B

Scheduling DisciplineFIFO

B

In a FIFO service discipline, the performance assigned to one flow is convoluted with the arrivals of packets from all other flows!

Cant get QoS with a “free-for-all”Need to use new scheduling disciplines which provide “isolation” of performance from arrival rates of background traffic

Page 8: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

8

Fundamental ProblemsConservation Law (Kleinrock): Σρ(i)Wq(i) = K

Irrespective of scheduling discipline chosen:

Average backlog (delay) is constantAverage bandwidth is constant

Zero-sum game => need to “set-aside” resources for premium services

Page 9: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

9

QoS Big Picture: Control/Data Planes

Internetwork or WANWorkstationRouter

Router

RouterWorkstation

Control Plane: Signaling + Admission Control orSLA (Contracting) + Provisioning/Traffic Engineering

Data Plane: Traffic conditioning (shaping, policing, markingetc) + Traffic Classification + Scheduling, Buffer management

Page 10: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

10

QoS ComponentsQoS => set aside resources for premium servicesQoS components:

a) Specification of premium services: (service/service level agreement design)b) How much resources to set aside? (admission control/provisioning)c) How to ensure network resource utilization, do load balancing, flexibly manage traffic aggregates and paths ? (QoS routing, traffic engineering)

Page 11: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

11

QoS Components (Continued)d) How to actually set aside these resources in a distributed manner ? (signaling, provisioning, policy)e) How to deliver the service when the traffic actually comes in (claim/police resources)? (traffic shaping, classification, scheduling)f) How to monitor quality, account and pricethese services? (network mgmt, accounting, billing, pricing)

Page 12: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

12

How to upgrade the Internet for QoS? Approach: de-couple end-system evolution from network evolution

End-to-end protocols: RTP, H.323 etc to spur the growth of adaptive multimedia applications

Assume best-effort or better-than-best-effort clouds

Network protocols: IntServ, DiffServ, RSVP, MPLS, COPS …

To support better-than-best-effort capabilities at the network (IP) level

Page 13: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

13

QOS SPECIFICATION, TRAFFIC, SERVICE

CHARACTERIZATION, BASIC MECHANISMS

Page 14: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

14

Service SpecificationLoss: probability that a flow’s packet is lostDelay: time it takes a packet’s flow to get from source to destinationDelay jitter: maximum difference between the delays experienced by two packets of the flowBandwidth: maximum rate at which the soource can send trafficQoS spectrum:

Best Effort Leased Line

Page 15: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

15

Hard Real Time: Guaranteed Services

Service contractNetwork to client: guarantee a deterministic upper bound on delay for each packet in a session Client to network: the session does not send more than it specifies

Algorithm supportAdmission control based on worst-case analysisPer flow classification/scheduling at routers

Page 16: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

16

Soft Real Time: Controlled Load Service

Service contract:Network to client: similar performance as an unloaded best-effort networkClient to network: the session does not send more than it specifies

Algorithm SupportAdmission control based on measurement of aggregatesScheduling for aggregate possible

Page 17: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

17

Traffic and Service CharacterizationTo quantify a service one has two know

Flow’s traffic arrivalService provided by the router, i.e., resources reserved at each router

Examples:Traffic characterization: token bucketService provided by router: fix rate and fix buffer space

Characterized by a service model (service curve framework)

Page 18: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

18

Token BucketCharacterized by three parameters (b, r, R)

b – token depthr – average arrival rateR – maximum arrival rate (e.g., R link capacity)

A bit is transmitted only when there is an available tokenWhen a bit is transmitted exactly one token is consumed

r tokens per second

b tokens

<= R bpsregulator

time

bits

b*R/(R-r)

slope R

slope r

Page 19: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

19

Characterizing a Source by Token Bucket

Arrival curve – maximum amount of bits transmitted by time tUse token bucket to bound the arrival curve

time

bits

Arrival curve

time

bps

Page 20: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

20

ExampleArrival curve – maximum amount of bits transmitted by time tUse token bucket to bound the arrival curve

size of timeinterval

bits Arrival curve

time

bps

0 1 2 3 4 5

1

2

1 2 3 4 5

1

2

3

4

(b=1,r=1,R=2)

Page 21: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

21

Per-hop ReservationGiven b,r,R and per-hop delay dAllocate bandwidth ra and buffer space Ba such that to guarantee d

bits

b

slope rArrival curve

d

Ba

slope ra

Page 22: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

22

What is a Service Model?

“external process”Network element

offered trafficdelivered traffic

(connection oriented)

The QoS measures (delay,throughput, loss, cost) depend on offered traffic, and possibly other external processes.A service model attempts to characterize the relationship between offered traffic, delivered traffic, and possibly other external processes.

Page 23: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

23

Arrival and Departure Process

Network ElementRin Rout

Rin(t) = arrival process= amount of data arriving up to time t

Rout(t) = departure process= amount of data departing up to time t

bits

t

delay

buffer

Page 24: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

24

Traffic Envelope (Arrival Curve)

slope = max average rateb(t) = Envelope

slope = peak rate

t

“Burstiness Constraint”

Maximum amount of service that a flow can send during an interval of time t

Page 25: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

25

Service CurveAssume a flow that is idle at time s and it is backlogged during the interval (s, t)Service curve: the minimum service received by the flow during the interval (s, t)

Page 26: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

26

Big Picture

t t

slope = C

t

Rin(t)

Service curvebits bits

bits

Rout(t)

Page 27: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

27

t

S (t) = service curve

E(t) = Envelope

Maximum delay

Maximum buffer

bits

Delay and Buffer Bounds

Page 28: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

28

Mechanisms: Traffic Shaping/PolicingToken bucket: limits input to specified Burst Size (b) and Average Rate (r).

Traffic sent over any time T <= r*T + ba.k.a Linear bounded arrival process (LBAP)

Excess traffic may be queued, marked BLUE, or simply dropped

Page 29: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

29

Mechanisms: Queuing/Scheduling

Use a few bits in header to indicate which queue (class) a packet goes into (also branded as CoS)High $$ users classified into high priority queues, which also may be less populated=> lower delay and low likelihood of packet drop

Ideas: priority, round-robin, classification, aggregation, ...

Class C

Class BClass A

Traffic Classes

Traffic Sources

$$$$$$

$$$

$

Page 30: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

30

Mechanisms: Buffer Mgmt/Priority Drop

Ideas: packet marking, queue thresholds, differential dropping, buffer assignments

Drop RED and BLUE packets

Drop only BLUE packets

Page 31: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

31

SCHEDULING

Page 32: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

32

Packet SchedulingDecide when and what packet to send on output link

Usually implemented at output interface

1

2

Scheduler

flow 1

flow 2

flow n

Classifier

Buffer management

Page 33: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

33

Focus: Scheduling PoliciesPriority Queuing: classes have different priorities; class may depend on explicit marking or other header info, eg IP source or destination, TCP Port numbers, etc.Transmit a packet from the highest priority class with a non-empty queuePreemptive and non-preemptive versions

Page 34: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

34

Scheduling Policies (more)Round Robin: scan class queues serving one from each class that has a non-empty queue

Page 35: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

35

Round-Robin DiscussionAdvantages: protection among flows

Misbehaving flows will not affect the performance of well-behaving flows

Misbehaving flow – a flow that does not implement any congestion control

FIFO does not have such a property

Disadvantages:More complex than FIFO: per flow queue/stateBiased toward large packets – a flow receives service proportional to the number of packets

Page 36: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

36

Generalized Processor Sharing(GPS)Assume a fluid model of traffic

Visit each non-empty queue in turn (RR)Serve infinitesimal from eachLeads to “max-min” fairness

GPS is un-implementable!We cannot serve infinitesimals, only packets

Page 37: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

37

Generalized Processor Sharing

)(),(),(

)(

tBiwdtttW

wdtttW

tBj ji

i ∈∀+=+

∑ ∈

A work conserving GPS is defined as

wherewi – weight of flow iWi(t1, t2) – total service received by flow i during [t1, t2)W(t1, t2) – total service allocated to all flows during [t1, t2)B(t) – number of flows backlogged

Page 38: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

38

Fair Rate Computation in GPSAssociate a weight wi with each flow iIf link congested, compute f such that

Cwfr ii

i =×∑ ),max(

862

44

2

f = 2: min(8, 2*3) = 6min(6, 2*1) = 2min(2, 2*1) = 2

10(w1 = 3)(w2 = 1)(w3 = 1)

Page 39: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

39

Bit-by-bit Round RobinSingle flow: clock ticks when a bit is transmitted.For packet i:

Pi = length, Ai = arrival time, Si = begin transmit time, Fi = finish transmit timeFi = Si+Pi = max (Fi-1, Ai) + Pi

Multiple flows: clock ticks when a bit from all active flows is transmitted round number

Can calculate Fi for each packet if number of flows is known at all times

This can be complicated

Page 40: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

40

Packet Approximation of Fluid System

Standard techniques of approximating fluid GPSSelect packet that finishes first in GPS assuming that there are no future arrivals

Important properties of GPSFinishing order of packets currently in system independent of future arrivals

Implementation based on virtual timeAssign virtual finish time to each packet upon arrivalPackets served in increasing order of virtual times

Page 41: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

41

Fair Queuing (FQ)Idea: serve packets in the order in which they would have finished transmission in the fluid flow systemMapping bit-by-bit schedule onto packet transmissionscheduleTransmit packet with the lowest Fi at any given timeVariation: Weighted Fair Queuing (WFQ)

Page 42: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

42

Approximating GPS with WFQ

Fluid GPS system service order

0 2 4 6 108

Weighted Fair Queueingselect the first packet that finishes in GPS

Page 43: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

43

FQ Example

F=10

Flow 1(arriving)

Flow 2transmitting Output

F=2

F=5

F=8

Flow 1 Flow 2 Output

F=10

Cannot preempt packetcurrently being transmitted

Page 44: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

44

FQ AdvantagesFQ protect well-behaved flows from ill-behaved flowsExample: 1 UDP (10 Mbps) and 31 TCP’s sharing a 10 Mbps link

FQ

00.20.40.60.8

11.21.41.61.8

2

1 4 7 10 13 16 19 22 25 28 31Flow Number

Thro

ughp

ut(M

bps)RED

0123456789

10

1 4 7 10 13 16 19 22 25 28 31Flow Number

Th

rou

gh

pu

t(M

bp

s)

Page 45: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

45

System Virtual Time: V(t)Measure service, instead of timeV(t) slope – rate at which every active flow receives service

C – link capacityN(t) – number of active flows in fluid system at time t

1 23

1 24

3 45

5 6Servicein fluid flow

system time

time

V(t)

)()(

tNC

ttV =

∂∂

Page 46: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

46

System Virtual TimeVirtual time (VGPS) – service that backlogged flow with weight = 1 would receive in GPS

)(),(),()(

tBiwdtttWwdtttW

tBj jii ∈∀+×=+∑ ∈

tW

wtV

tBj j

GPS

∂∂×=

∂∂

∑ ∈ )(

1)()(

tBit

Ww

wt

W

tBj j

ii ∈∀∂

∂×=∂

∑ ∈

)(1),( 2

1)(

21 tBidtt

Ww

wttWt

tttBj j

ii ∈∀

∂∂××= ∫ ∑=

Page 47: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

47

Service Allocation in GPSThe service received by flow i during an interval [t1,t2), while it is backlogged is

)(),( 2

121 tBidt

tVwttW

t

ttGPS

ii ∈∀∂

∂×= ∫=

)())()((),( 1221 tBitVtVwttW GPSGPSii ∈∀−×=

Page 48: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

48

Virtual Time Implementation of Weighted Fair Queueing

wj

kj

jj

LSF +=

0)0( =V GPS

))(,max( kjjj aVFS =

if session j backlogged

if session j un-backlogged

kj

kj FS =

ajk – arrival time of packet k of flow j

Sjk – virtual starting time of packet k of flow j

Fjk – virtual finishing time of packet k of flow j

Ljk – length of packet k of flow j

Page 49: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

49

Virtual Time Implementation of Weighted Fair Queueing

Need to keep per flow instead of per packetvirtual start, finish time onlySystem virtual time is used to reset a flow’s virtual start time when a flow becomes backlogged again after being idle

Page 50: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

50

System Virtual Time in GPS

0 4 128 16

1/21/81/81/81/8

)(tVGPS

2*CC

2*C

Page 51: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

51

Virtual Start and Finish Times

0 4 128 16

kiFkiS

i

kik

ik

i wLSF +=

)(tVGPS

Utilize the time the packets would start Sik and

finish Fik in a fluid system

Page 52: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

52

Big PictureFQ does not eliminate congestion it just manages the congestionYou need both end-host congestion control and router support for congestion control

end-host congestion control to adaptrouter congestion control to protect/isolate

Don’t forget buffer management: you still need to drop in case of congestion. Which packet’s would you drop in FQ?

one possibility: packet from the longest queue

Page 53: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

53

QoS ARCHITECTURES

Page 54: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

54

Parekh-Gallager theorem

Let a connection be allocated weights at each WFQ scheduler along its path, so that the least bandwidth it is allocated is gLet it be leaky-bucket regulated such that # bits sent in time [t1, t2] <= g(t2 - t1) + σLet the connection pass through K schedulers, where the kth scheduler has a rate r(k)Let the largest packet size in the network be P

∑ ∑−

= =

++≤1

1 1)(///___

K

k

K

k

krPgPgdelayendtoend σ

Page 55: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

55

SignificanceP-G Theorem shows that WFQ scheduling can provide end-to-end delay bounds in a network of multiplexed bottlenecks

WFQ provides both bandwidth and delayguaranteesBound holds regardless of cross traffic behavior (isolation)Needs shapers at the entrance of the network

Can be generalized for networks where schedulers are variants of WFQ, and the link service rate changes over time

Page 56: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

56

Stateless vs. Stateful QoS SolutionsStateless solutions – routers maintain no fine grained state about traffic

scalable, robustweak services

Stateful solutions – routers maintain per-flow statepowerful services

guaranteed services + high resource utilizationfine grained differentiationprotection

much less scalable and robust

Page 57: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

57

Existing Solutions

DecBit [Ramkrishnan &Jain ’88]

Random Early Detection(RED) [Floyd & Jacobson ’93]

BLUE [Feng et al ’99]REM [Low at al ’00]

Round Robin [Nagle ’85]

Fair Queueing[Demers et al ’89]

Flow Random Early Drop (FRED) [Lin & Morris ’97]

Network support for congestion control

DiffServ - [Clark & Wroclawski ‘97] - [Nichols et al ’97]

Tenet [Ferrari &Verma ’89]

IntServ [Clark et al ’91]

ATM [late ’80s]

QoS

StatelessStateful

Page 58: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

58

Integrated Services (IntServ)An architecture for providing QOS guarantees in IP networks for individual application sessionsRelies on resource reservation, and routers need to maintain state information of allocated resources (eg: g) and respond to new Call setup requests

Page 59: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

59

Signaling semanticsClassic scheme: sender initiatedSETUP, SETUP_ACK, SETUP_RESPONSEAdmission controlTentative resource reservation and confirmationSimplex and duplex setup; no multicast support

Page 60: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

60

RSVP: Internet SignalingCreates and maintains distributed reservation stateDe-coupled from routing:

Multicast trees setup by routing protocols, not RSVP (unlike ATM or telephony signaling)

Receiver-initiated: scales for multicastSoft-state: reservation times out unless refreshedLatest paths discovered through “PATH” messages (forward direction) and used by RESVmesgs (reverse direction).

Page 61: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

61

Call AdmissionSession must first declare its QOS requirement and characterize the traffic it will send through the networkR-spec: defines the QOS being requestedT-spec: defines the traffic characteristicsA signaling protocol is needed to carry the R-spec and T-spec to the routers where reservation is required; RSVP is a leading candidate for such signaling protocol

Page 62: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

62

Call AdmissionCall Admission: routers will admit calls based on their R-spec and T-spec and base on the current resource allocated at the routers to other calls.

Page 63: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

63

Stateful Solution: Guaranteed Services

Achieve per-flow bandwidth and delay guaranteesExample: guarantee 1MBps and < 100 ms delay to a flow

SenderReceiver

Page 64: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

64

Stateful Solution: Guaranteed Services

Allocate resources - perform per-flow admission control

SenderReceiver

Page 65: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

65

Stateful Solution: Guaranteed Services

Install per-flow state

SenderReceiver

Page 66: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

66

Challenge: maintain per-flow state consistent

Stateful Solution: Guaranteed Services

SenderReceiver

Page 67: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

67

Stateful Solution: Guaranteed Services

Per-flow classification

SenderReceiver

Page 68: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

68

Stateful Solution: Guaranteed Services

Per-flow buffer management

SenderReceiver

Page 69: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

69

Stateful Solution: Guaranteed Services

• Per-flow scheduling

SenderReceiver

Page 70: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

70

Stateful Solution Complexity

Classifier

Buffermanagement

Scheduler

flow 1

flow 2

flow n

…Per-flow State

Data pathPer-flow classificationPer-flow buffer

managementPer-flow scheduling

Control pathinstall and maintain

per-flow state for data and control paths

output interface

Page 71: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

71

Stateless vs. Stateful

Stateless solutions are morescalablerobust

Stateful solutions provide more powerful and flexible services

guaranteed services + high resource utilizationfine grained differentiationprotection

Page 72: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

72

Question

Can we achieve the best of two worlds, i.e., provide services implemented by stateful networks while maintaining advantages of stateless architectures?

Yes, in some interesting cases. DPS, CSFQ.

Can we provide reduced state services, I.e., maintain state only for larger granular flows rather than end-to-end flows?

Yes: Diff-serv

Page 73: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

73

Differentiated Services (DiffServ)Intended to address the following difficulties with Intserv and RSVP;Scalability: maintaining states by routers in high speed networks is difficult sue to the very large number of flows Flexible Service Models: Intserv has only two classes, want to provide more qualitative service classes; want to provide ‘relative’ service distinction (Platinum, Gold, Silver, …)Simpler signaling: (than RSVP) many applications and users may only w ant to specify a more qualitative notion of service

Page 74: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

74

Differentiated Services Model

IngressEdge Router

EgressEdge Router

Interior Router

Edge routers: traffic conditioning (policing, marking, dropping), SLA negotiation

Set values in DS-byte in IP header based upon negotiated service and observed traffic.

Interior routers: traffic classification and forwarding (near stateless core!)

Use DS-byte as index into forwarding table

Page 75: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

75

Diffserv Architecture

Core router:

- per class TM- buffering and scheduling based on marking at edge- preference given to in-profile packets- Assured Forwarding

scheduling

...

r

b

markingEdge router:- per-flow traffic management- marks packets as in-profile and out-profile

Page 76: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

76

Packet format supportPacket is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6: renamed as “DS”6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive2 bits are currently unused

Page 77: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

77

Traffic ConditioningIt may be desirable to limit traffic injection rate of some class; user declares traffic profile (eg, rate and burst size); traffic is metered and shaped if non-conforming

Page 78: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

78

Per-hop Behavior (PHB)PHB: name for interior router data-plane functions

Includes scheduling, buff. mgmt, shaping etc

Logical spec: PHB does not specify mechanisms to use to ensure performance behavior

Examples: Class A gets x% of outgoing link bandwidth over time intervals of a specified lengthClass A packets leave first before packets from class B

Page 79: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

79

PHB (contd)PHBs under consideration:

Expedited Forwarding: departure rate of packets from a class equals or exceeds a specified rate (logical link with a minimum guaranteed rate)

Emulates leased-line behaviorAssured Forwarding: 4 classes, each guaranteed a minimum amount of bandwidth and buffering; each with three drop preference partitions

Emulates frame-relay behavior

Page 80: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

80

Question

Can we achieve the best of two worlds, i.e., provide services implemented by stateful networks while maintaining advantages of stateless architectures?

Yes, in some interesting cases. DPS, CSFQ.

Can we provide reduced state services, I.e., maintain state only for larger granular flows rather than end-to-end flows?

Yes: Diff-serv

Page 81: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

81

Scalable Core (SCORE)A trusted and contiguous region of network in which

edge nodes – perform per flow managementcore nodes – do not perform per flow management

core nodes edge nodesedge nodes

Page 82: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

82

The DPS Approach1. Define a reference stateful network that

implements the desired service

Reference Stateful Network SCORE Network

2. Emulate the functionality of the referencenetwork in a SCORE network

Page 83: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

83

The DPS IdeaInstead of having core routers maintaining per-flow state have packets carry per-flow state

Reference Stateful Network SCORE Network

Page 84: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

84

Dynamic Packet State (DPS)

Ingress node: compute and insert flow state in packet’s header

Page 85: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

85

Dynamic Packet State (DPS)Ingress node: compute and insert flow state in packet’s header

Page 86: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

86

Dynamic Packet State (DPS)Core node:

process packet based on state it carries and node’s stateupdate both packet and node’s state

Page 87: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

87

Dynamic Packet State (DPS)

Egress node: remove state from packet’s header

Page 88: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

88

Example: DPS-Guaranteed Services

r r rflow(reservation = r )

Goal: provide per-flow delay and bandwidth guaranteesHow: emulate ideal model in which each flow traverses dedicated links of capacity r

Per-hop packet service time = (packet length) / r

Page 89: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

89

Guaranteed ServicesDefine reference network to implement service

control path: per-flow admission control, reserve capacity r on each linkdata path: enforce ideal model, by using Jitter Virtual Clock (Jitter-VC) scheduler

Reference Stateful Network

Jitter-VC Jitter-VC Jitter-VC Jitter-VC

Jitter-VCJitter-VCJitter-VC

Page 90: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

90

Guaranteed ServicesUse DPS to eliminate per-flow state in core

control path: emulate per-flow admission controldata path: emulate Jitter-VC by Core-Jitter Virtual Clock (CJVC)

Reference Stateful Network SCORE Network

Jitter-VC Jitter-VC Jitter-VC Jitter-VC

Jitter-VCJitter-VCJitter-VC

CJVC CJVC

CJVC

CJVC

CJVC

CJVC

Page 91: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

91

End-to-end Adaptive Applications

Internet

End-to-endClosed-loop control

Congestion control

Packetization, Marking, playoutBuffer ManagementCongestion control

Video Coding, Error Concealment, Unequal Error Protection (UEP)

Video Coding, Error Concealment, Unequal Error Protection (UEP)Packetization, Marking, SourceBuffer Management

Page 92: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

92

End-to-end: Real-Time Protocol (RTP)Provides standard packet format for real-time applicationTypically runs over UDPSpecifies header fields belowPayload Type: 7 bits, providing 128 possible different types of encoding; eg PCM, MPEG2 video, etc.Sequence Number: 16 bits; used to detect packet loss

Page 93: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

93

Real-Time Protocol (RTP)Timestamp: 32 bytes; gives the sampling instant of the first audio/video byte in the packet; used to remove jitter introduced by the networkSynchronization Source identifier (SSRC): 32 bits; an id for the source of a stream; assigned randomly by the source

Page 94: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

94

RTP Control Protocol (RTCP)Protocol specifies report packets exchanged between sources and destinations of multimedia informationThree reports are defined: Receiver reception, Sender, and Source descriptionReports contain statistics such as the number of packets sent, number of packets lost, inter-arrival jitterUsed to modify sender transmission rates and for diagnostics purposes

Page 95: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

95

Eg: Streaming & RTSPUser interactive control is provided, e.g. the public protocol Real Time Streaming Protocol (RTSP)Helper Application: displays content, which is typically requested via a Web browser; e.g. RealPlayer; typical functions:

DecompressionJitter removalError correction: use redundant packets to be used for reconstruction of original streamGUI for user control

Page 96: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

96

Using a Streaming ServerWeb browser requests and receives a Meta File (a file describing the object) Browser launches the appropriate Player and passes it the Meta File; Player contacts a streaming server, may use a choice of UDP vs. TCP to get the stream

Page 97: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

97

Receiver Adaptation OptionsIf UDP: Server sends at a rate appropriate for client; to reduce jitter, Player buffers initially for 2-5 seconds, then starts displayIf TCP: sender sends at maximum possible rate; retransmit when error is encountered; Player uses a much large buffer to smooth delivery rate of TCP

Page 98: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

98

H.323H.323 is an ITU standard for multimedia communications over best-effort LANs.Part of larger set of standards (H.32X) for videoconferencing over data networks.H.323 includes both stand-alone devices and embedded personal computer technology as well as point-to-point and multipoint conferences. H.323 addresses call control, multimedia management, and bandwidth management as well as interfaces between LANs and other networks.

Page 99: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

99

H.323 Architecture

Page 100: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

100

Inter-domain QoS: Challenge Provide high quality service across ISPsProblem: intermediate ISPs don’t have incentive to provide “good” service

e.g., “hot-potato” policy

ISP 1

ISP 2

ISP 3?

Page 101: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

101

Approach: Virtual ISP (V-ISP) Avoid crossing ISP boundaries

Each ISP will provide good service; V-ISP can easily verify it

Allocate/buy service across each ISP and compose them

ISP 1

ISP 2

ISP 3Proxy(edge)

GPoP(core)

GPoP(core)

Proxy(edge)

Page 102: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

102

Composition Tools for QoSDynamic Packet State (DPS):

Proxy (edge): maintain per flow state; label packetsGiga PoPs (core): maintain no per flow state; process packets based on their labels

I E

I

EI

E

Logical FIFO

B

Closed-loop building blocks:No core upgrades, smaller QoS service spectrum

Page 103: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

103

Closed-Loop Building Blocks for QoS

International Linkor

International Linkor

Page 104: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

104

Edge-based QoS building blocks

New: Closed-loop control !

I

EI

E

Logical FIFO

B

Policy/Bandwidth Broker

I E

Page 105: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

105

Closed-loop QoS Building BlocksPriority/WFQ

B

FIFO

Loops: differentiate service on an RTT-by-RTT basis using purely edge-based policy configuration.

B

Scheduler: differentiates service on a packet-by-packet basis

Page 106: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

106

Recall: Accumulation-based CC Schemes!

1 j j+1 J

µij Λi,j+1

djfi

Λiµi

… …

106time

)(1f

ii dtq − )(1

∑−

=

−J

jkkij dtq

)(tq iJ

1 j j+1 J

jd 1−Jd

),( tdtI fii ∆−

)(ta i

)( tta i ∆+

),( ttO i ∆

fid

t∆

Page 107: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

107

Recall: Accumulation-based CC Schemes!

1 j j+1 J

µij Λi,j+1

djfi

Λiµi

… …

107time

)(1f

ii dtq − )(1

∑−

=

−J

jkkij dtq

)(tq iJ

1 j j+1 J

jd 1−Jd

),( tdt fi ∆−

)(ta i

( tta i ∆+

),( ttO i ∆

fid

t∆

I i

)

Page 108: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

108

1 j j+1 J

µij Λi,j+1

djfi

Λiµi

0)( >= ii ta ε

108

control objective : keepif , no way to probe increase of available bandwidth;

0)( =ta i

ttttdtttarec

thentaif

thentaif

if

iii

iii

iii

∆×∆−∆−=∆∆

↓>

↑<

)],(),([),(:

)(

)(

µλλελε

control algorithm :

Recall: Accln-based Control Policy

Page 109: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

109

Recall: “Monaco” CC Scheme

congestion estimation:out-of-band and in-band control packets

congestion response:if qm < α, cwnd(k+1) = cwnd(k) + 1;if qm > β, cwnd(k+1) = cwnd(k) – 1;[ 1 = α < β = 3 ]

109

Page 110: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

110

Closed-Loop Service Differentiation: Loss-based or Accumulation-based ?

110

Page 111: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

111

Closed-Loop QoS: Bandwidth Assurances

Flow 1 with 4 Mbps assured + 3 Mbps best effort

Flow 2 with 3 Mbps best effort

Page 112: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

112

QoS: an application-level approach

sophisticated services in application• architecturally “above” network core• open services: let 1000 flowers bloom

simple, fast, diffserv network

Page 113: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

113

QoS: an application-level approach

Application-level infrastructure• accommodate network-level service• additional tailoring of user services

Page 114: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

114

Content Delivery Motivation: congestion

BrowsersBrowsers

Web ServersWeb Servers

RoutersRouters

NetworksNetworks

Page 115: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

115

Content Delivery: idea• Reduces load on server• Avoids network congestion

BrowsersBrowsers

Web ServerWeb Server

ReplicatedReplicatedcontentcontent

RouterRouter Content SourceContent SourceContent SinkContent Sink

Page 116: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

116

CDN: Architectural LayoutRequest

Routing(RR)

Distribution System

1

2

3

4

5

6

Client

Origin

Surrogate

Publisher informs RR of Content Availability.Content Pushed to Distribution System.Client Requests Content, Requested redirected to RR.RR finds the most suitable SurrogateSurrogate services client request.

Page 117: Better-than-best-effort: QoS, IntServ, DiffServ, RSVP, RTPkoushik/shivkuma-teaching/sp2002/ip2002-qos.pdfOverview Why better-than ... Network protocols: IntServ, DiffServ, RSVP, MPLS,

Shivkumar KalyanaramanRensselaer Polytechnic Institute

117

Summary

QoS big picture, building blocksIntegrated services: RSVP, 2 services, scheduling, admission control etcDiff-serv: edge-routers, core routers; DS byte marking and PHBs Real-time transport/middleware: RTP, H.323New problems: inter-domain QoS, Application-level QoS, Content delivery/web caching