32
Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Embed Size (px)

Citation preview

Page 1: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Network Support for QoS – DiffServ and IntServ

Hongli LuoCEIT, IPFW

Page 2: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Topics

Providing Multiple Classes of Service DiffServ

Providing QoS guarantees InteServ and RSVP

Page 3: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Providing Multiple Classes of Service

thus far: making the best of best effort service one-size fits all service model

alternative: multiple classes of service partition traffic into classes network treats different classes of traffic

differently (analogy: VIP service vs regular service)

0111

granularity: differential service among multiple classes, not among individual connections

history: (Type-of-service) ToS bits in IPv4 header

Page 4: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW
Page 5: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Multiple classes of service: scenario

R1 R2H1

H2

H3

H41.5 Mbps linkR1 output

interface queue

Page 6: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Scenario 1: mixed FTP and audio

Example: 1Mbps IP phone, FTP share 1.5 Mbps link. bursts of FTP can congest router, cause audio loss want to give priority to audio over FTP

packet marking (packet classification) needed for router to distinguish between different classes; and new router policy to treat packets accordingly

Principle 1

R1 R2

Page 7: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Principles for QOS Guarantees (more) what if applications misbehave (audio sends higher

than declared rate) policing: force source adherence to bandwidth allocations

marking and policing at network edge:

provide protection (isolation) for one class from othersPrinciple 2

R1 R2

1.5 Mbps link

1 Mbps phone

packet marking and policing

Page 8: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Principles for QOS Guarantees (more)

Isolation Isolation among classes of traffic Isolation among flows within the same traffic class to

protect one flow from another flow. In practice

Packets within a class are treated the same at routers within the network core

At the edge of the network, packets within a given flow may be monitored to ensure that the aggregate rate of an individual flow does not exceed a given value

It is desirable to provide an isolation among traffic classes and among flows One class or flow is not adversely affected by

misbehaving flow

Page 9: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Principles for QOS Guarantees (more)

Allocating fixed (non-sharable) bandwidth to flow: inefficient use of bandwidth if flows doesn’t use its allocation

While providing isolation, it is desirable to use resources as efficiently as possible

Principle 3

R1R2

1.5 Mbps link

1 Mbps phone

1 Mbps logical link

0.5 Mbps logical link

Page 10: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Principles for QOS Guarantees (more) To provide isolation among traffic classes or flows

Policing• Ensure that a traffic class or flow meet certain criteria• For misbehaving application, policing mechanism

takes actions (drop or delay packets) to make sure the traffic actually entering the network conforms to the criteria

• Packet classification, marking, and policing can be located at the edge of the network

– In the end system or at an edge router

• leaky bucket Link-level packet-scheduling

• Explicitly allocate a fixed amount of link bandwidth to each class or flow

Page 11: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Scheduling And Policing Mechanisms

scheduling: choose next packet to send on link FIFO (first in first out) scheduling: send in order of arrival to queue

discard policy: if packet arrives to full queue: who to discard?• Tail drop: drop arriving packet• priority: drop/remove on priority basis• random: drop/remove randomly

Page 12: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Scheduling Policies: more

Priority scheduling: transmit highest priority queued packet

multiple classes, with different priorities class may depend on marking or other header info, e.g.

IP source/dest, port numbers, etc.. Each priority class has its own queue

Page 13: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Scheduling Policies: still more

round robin scheduling: multiple classes, alternates service among classes cyclically scan class queues, serving one from each class (if available)

Page 14: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Scheduling Policies: still more

Weighted Fair Queuing: generalized Round Robin each class gets weighted amount of service in each

cycle Plays a central role in QoS architecture. Available in today’s router products. Class i receives a throughput j

i

w

wR *

Page 15: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Policing Mechanisms

Policing : regulation of the rate at which a class or a flow is allowed to inject packets into the network

Goal: limit traffic to not exceed declared parameters

Three common-used criteria: (Long term) Average Rate: how many pkts can be

sent per unit time (in the long run) crucial question: what is the interval length: 100 packets

per sec or 6000 packets per min have same average!

Peak Rate: e.g., 6000 pkts per min. (ppm) avg.; 1500 pkts per second peak rate

(Max.) Burst Size: max. number of pkts sent consecutively over an extremely short interval of time (with no intervening idle)

Page 16: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Policing MechanismsToken Bucket: limit input to specified Burst Size and

Average Rate.

Before a packet is transmitted into the network, it must first remove a token from the token bucket.

bucket can hold b tokens tokens generated at rate r token/sec unless bucket full Maximum burst size for a leaky-bucket-policed flow is b packets over interval of length t: number of packets admitted less than or equal to (r t + b). r limits the long-term average rate at which packets can enter the

network

Page 17: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Policing Mechanisms (more)

token bucket, WFQ combine to provide guaranteed upper bound on delay, i.e., QoS guarantee!

WFQ

token rate, r

bucket size, b

per-flowrate, R

D = b/Rmax

arrivingtraffic

Page 18: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

IETF Differentiated Services

Goal: provide service differentiation in a scalable and flexible manner.

scalability: simple functions in network core, relatively complex functions at edge routers (or hosts) signaling, maintaining per-flow router state

difficult with large number of flows Flexibility:

Does not define specific service or service classes, provide functional components to build service

classes

Page 19: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Edge functions: At host or edge router Packet classification and traffic conditioning per-flow traffic

management

Packet mark identifies the class of traffic

Core functions: Core router

forwarding

per class traffic management per-hop behavior: buffering

and bandwidth sharing based on marking at edge

Diffserv Architecture

scheduling

...

r

b

marking

Page 20: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW
Page 21: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Edge-router Packet Marking

class-based marking: packets of different classes marked differently

intra-class marking: conforming portion of flow marked differently than non-conforming one

profile: pre-negotiated rate A, bucket size B packet marking at edge based on per-flow profile

Possible usage of marking:

User packets

Rate A

B

Page 22: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Classification and Conditioning

Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6

6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive

2 bits are currently unused

Page 23: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Classification and Conditioning at the Edge Router

may be desirable to limit traffic injection rate of some class:

user declares traffic profile (e.g., rate, burst size)

traffic metered, shaped if non-conforming

Page 24: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Forwarding (PHB)

Per-hop behaviors (PHB) PHB result in a different observable

(measurable) forwarding performance behavior

PHB does not specify what mechanisms to use to ensure required PHB performance behavior

Examples: Class A gets x% of outgoing link bandwidth over time

intervals of a specified length Class A packets leave first before packets from class

B

Page 25: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Forwarding (PHB)

PHBs being developed: Expedited Forwarding: pkt departure rate of a

class equals or exceeds specified rate logical link with a minimum guaranteed rate

Assured Forwarding: 4 classes of traffic each guaranteed minimum amount of bandwidth each with three drop preference partitions

Page 26: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Principles for QOS Guarantees (more)

Basic fact of life: can not support traffic demands beyond link capacity

Call Admission: flow declares its needs, network may block call (e.g., busy signal) if it cannot meet needs

Principle 4

R1R2

1.5 Mbps link

1 Mbps phone

1 Mbps phone

Page 27: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

QoS guarantee scenario

Resource reservation call setup, signaling (RSVP) traffic, QoS declaration per-element admission control

QoS-sensitive scheduling (e.g.,

WFQ)

request/reply

Page 28: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

IETF Integrated Services (InteServ)

architecture for providing QoS guarantees in IP networks for individual application sessions

resource reservation: routers maintain state info of allocated resources, QoS req’s

admit/deny new call setup requests:

Question: can newly arriving flow be admitted with performance guarantees while not violated QoS guarantees made to already admitted flows?

Page 29: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Call Admission

Arriving session must : declare its QOS requirement

R-spec: defines the QOS being requested characterize traffic it will send into network

T-spec: defines traffic characteristics signaling protocol: needed to carry R-spec and T-

spec to routers (where reservation is required) RSVP

Page 30: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

Signaling in the Internet

connectionless (stateless)

forwarding by IP routers

best effort service

no network signaling protocols

in initial IP design

+ =

New requirement: reserve resources along end-to-end path (end system, routers) for QoS for multimedia applications

RSVP Resource Reservation Protocol [RFC 2205] An Internet Signaling protocol perform the call setup

signaling needed by IntServ. Allows applications to reserve bandwidth for their data

flows.

Page 31: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

RSVP Design Goals

1. Used by host to request a specific amount of bandwidth from the network.

2. Used by the routers to forward bandwidth reservation requests.

3. Receiver-oriented:

1. accommodate heterogeneous receivers (different bandwidth along paths)

2. accommodate different applications with different resource requirements

4. Provides reservation for bandwidth in multicast trees

5. control protocol overhead to grow (at worst) linear in # receivers

6. modular design for heterogeneous underlying technologies

Page 32: Network Support for QoS – DiffServ and IntServ Hongli Luo CEIT, IPFW

RSVP: does not…

specify how resources are to be reserved rather: a mechanism for communicating needs

determine routes packets will take that’s the job of routing protocols signaling decoupled from routing

interact with forwarding of packets separation of control (signaling) and data

(forwarding) planes