23
1 Computer Communications - CSCI 551 Copyright © William C. Cheng CS551 Differentiated Services (DiffServ) Bill Cheng http://merlot.usc.edu/cs551-f12

Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

1

Computer Communications - CSCI 551

Copyright © William C. Cheng

CS551Differentiated Services

(DiffServ)

Bill Cheng

http://merlot.usc.edu/cs551-f12

Page 2: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Tune applications to network services rather than

network services to applications

Traffic classes instead of flows

2

Key Ideas

Computer Communications - CSCI 551

Copyright © William C. Cheng

Forwarding behaviors instead of end-to-end service

guarantees

No resource reservation

Discrete v.s. continuous space

Somewhere between Best Effort and IntServ

Page 3: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

airline service, first class, coach, various restrictions on

coach as a function of payment

Analogy:

3

Service Differentiation

Computer Communications - CSCI 551

Copyright © William C. Cheng

Best-effort expected to make up bulk of traffic, but

revenue from first class important to economic base (will pay

for more plentiful bandwidth overall)

Not motivated by real-time but by economics and assurances

Page 4: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

admitted based on peak rate

Premium service: (type P)

4

Types of Service

Computer Communications - CSCI 551

Copyright © William C. Cheng

conservative, virtual wire services

unused premium goes to best effort (subsidy!)

based on expected capacity usage profiles

Assured service: (type A)

traffic unlikely to be dropped if user maintains profile

out-of-profile traffic marked

traffic is in or out (of profile)

police traffic to keep in within limits

use provisioning and/or admission control to limit amout

of in

preferentially drop out traffic

Page 5: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

No need for reservations: just mark packets

5

Differences With Integrated Services

Computer Communications - CSCI 551

Copyright © William C. Cheng

Packet marking done at administrative boundaries before

injecting packets into network

Significant savings in signaling, much simpler overall

Page 6: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

CS551A Two-bit Differentiated

Services Architecture[Nichols99a]

Bill Cheng

http://merlot.usc.edu/cs551-f126

Computer Communications - CSCI 551

Copyright © William C. Cheng

Page 7: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Appropriate for intolerant and rigid applications

Premium packets receive virtual circuit type of treatment

7

Premium vs. Assured Forwarding Behaviors

Computer Communications - CSCI 551

Copyright © William C. Cheng

Appropriate for adaptive applications

Assured packets receive "better than best effort" type of

treatment

Page 8: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Precedence field encodes P & A type packets

8

2-bit Differentiated Service

Computer Communications - CSCI 551

Copyright © William C. Cheng

P packets are BW limited, shaped and queued at higher

priority than ordinary best effort

A packets treated preferentially with respect to dropping

probability in the normal queue

Leaf and border routers have input and output tasks -

other routers just output

Page 9: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

User sends within profile, network commits to delivery

with requested profile

Simple forwarding: classify packet in one of two queues,

use priority

Shaping at trust boundaries only, using token bucket

Signaling, admission control may get more elaborate, but

still not end-to-end

9

Computer Communications - CSCI 551

Copyright © William C. Cheng

Premium Service

Page 10: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

10

Computer Communications - CSCI 551

Copyright © William C. Cheng

Premium Traffic Flow

internalrouter

borderrouter

first hoprouter

host

borderrouter

Premium packet flowrestricted to R bytes/sec

Unmarkedpacket flow

Packets in premiumflows have bit set

Company A

ISP

Page 11: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Markers: service class, rate, permissible burst size

11

First-hop Router Input Functionality

Computer Communications - CSCI 551

Copyright © William C. Cheng

ClearA & P

bits

Packetclassifier

Arrivingpacket

Forwardingengine

Marker 1

Marker N

Best effort

Flow 1

Flow N

Page 12: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

First-hop routers have traffic profiles - they classify packets

based on packet header

12

Marker Function in Routers

Computer Communications - CSCI 551

Copyright © William C. Cheng

if no profile present, pass as best effort

mark packets in or out (in-profile packets with A,

forward others unmarked)

if profile is for A:

delay or drop out-of -profile packets to shape into profile

if profile is for P:

Routers at administrative boundaries

must make sure traffic exchange agreements are met

Page 13: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

13

Markers to Implement Two Different Services

Computer Communications - CSCI 551

Copyright © William C. Cheng

Test iftoken

Set A bitPacketoutputtoken

Packetinput

No token

delay or drop out-of -profile packets to shape into profile

if profile is for P:

Wait fortoken

Set P bitPacketinput

Packetoutput

Drop on overflow

Page 14: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

14

Markers to Implement Two Different Services

Computer Communications - CSCI 551

Copyright © William C. Cheng

Test iftoken

Set A bitPacketoutputtoken

Packetinput

No token

Wait fortoken

Set P bitPacketinput

Packetoutput

Drop on overflow

mark packets in or out (in-profile packets with A,

forward others unmarked)

if profile is for A:

if no profile present, pass as best effort

Page 15: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

drop P packets out of profile

At border routers profile meters test marked flows:

unmark A packets

15

Computer Communications - CSCI 551

Copyright © William C. Cheng

Border Router Input Interface Profile Meters

Forwardingengine

Clear A-bitToken

available?

Tokenavailable?

Is packetmarked?

Arrivingpacket

A set

P set

token

token

no

no

Not marked

Drop packet

Page 16: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

2 queues: P packets on higher priority queue

16

Output Forwarding

Computer Communications - CSCI 551

Copyright © William C. Cheng

Lower priority queue implements RED "In or Out" scheme

(RIO) [Clark98a]

P-bit set? High-priority Q

Low-priority QIf A-bit setincr A_cnt

If A-bit set decr A_cnt

RIO queuemanagement

Packets out

yes

no

Page 17: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

For Assured Services

17

Red With In or Out (RIO)

Computer Communications - CSCI 551

Copyright © William C. Cheng

Similar to RED, but with two separate probability curves

Has two classes, "In" and "Out" (of profile)

"Out" class has lower Minthresh, so packets are dropped

from this class first

As avg queue

length increases,

"in" packets are

dropped

[Clark98a]

Maxin

1.0

Pmax

AvgLen

P(drop)

Minin MaxoutMinout

inout

More drop

probability curves

(WRED)

Page 18: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Define behavior of individual routers rather than

end-to-end services

18

Per-hop Behaviors (PHBs)

Computer Communications - CSCI 551

Copyright © William C. Cheng

Multiple behaviors - need more than one bit in the header

Six bits from IP tos field are taken for Diffserv code

points (DSCP)

there may be much more services than behaviors

Page 19: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

static (long-term):

done out-of-band

Where?

19

Signaling

Computer Communications - CSCI 551

Copyright © William C. Cheng

dynamic:

from leaf to Bandwidth Broker

and from BB in one domain to another BB

not clear, but maybe RSVP

How?

Page 20: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

20

Signaling: BBs

Computer Communications - CSCI 551

Copyright © William C. Cheng

Page 21: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Resources to aggregated traffic, not flows

21

Diffserv vs. Intserv Summary

Computer Communications - CSCI 551

Copyright © William C. Cheng

Traffic policing at the edges, class forwarding in the core

Define forwarding behaviors, not services

Guarantees by provisioning and Service Level Agreements,

not reservations

Focus on single domain, not e2e (need BBs for e2e)

Page 22: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

Reservation based strategies can provide more varied QoS

than feedback-based schemes

22

Open Issue: Inside or Outside the Network?

Computer Communications - CSCI 551

Copyright © William C. Cheng

Will this be the end of TCP?

Diffserv is middle ground: no intelligence v.s. high

intelligence with Intserv

Will we see a deployment? Jury is still out..

highly unlikely

applications are established, heterogeneous networks, etc.

Page 23: Computer Communications - CSCI 551 CS551 Differentiated ...merlot.usc.edu/cs551-m05/lectures/tentative/13b_diffserv.pdf · Packet token output Packet input No token Wait for token

23

Computer Communications - CSCI 551

Copyright © William C. Cheng

Discussions

a lot of people had been looking at Integrated Services

realizing that Integrated Services were unworkable

Context

nice, implementable schemes

Discussion

no real driver for this

it’s worthwhile to note that when you build a network

and put in services, people might find a way to use those

when the network is mature, need an economic driver to

introduce new services