internet qos 1. integrated service 2. differentiated...

51
Internet QoS 1. Integrated Service 2. Differentiated Service 3. Linux Traffic Control weafon 2001/9/27

Upload: doxuyen

Post on 12-May-2019

230 views

Category:

Documents


0 download

TRANSCRIPT

Internet QoS1. Integrated Service2. Differentiated Service3. Linux Traffic Control

weafon 2001/9/27

HIGH SPEED NETWORK LAB. 29/28/2001

Concept of IntServ Network

A “ flow “ is the basic management unitSupporting accurate quality control.Resource reservation is dynamic.Knowing how to handle each packets with QoS constraints is requirement for all NEs in the network.

HIGH SPEED NETWORK LAB. 39/28/2001

Basic Elemenets Tree of IntServ

HIGH SPEED NETWORK LAB. 49/28/2001

Session Description Diagram

STEP 1. Reservation Setup

STEP 2. Admission Control

STEP 3. QoS Routing

STEP 4. Classification

STEP 5. Scheduling

Traffic Description

Service Types

RSVP

Integrated Service

HIGH SPEED NETWORK LAB. 59/28/2001

Key Components in a NE of IntServ

Network Equipment (QoS Aware)

Admission Control

Classification Scheduling

Resource Reservation

QoS Routing

CONTROLPLANE

DATAPLANE

HIGH SPEED NETWORK LAB. 69/28/2001

How to Support QoS under IntServ?Before transmitting data packets ….

If you (a flow) want to get QoS service, to make resource reservation is requirement.

STEP 1. Reservation Setup

Sender ReceiverAB C

QoS-Aware NEs

QoS Network

Reservation Signal

HIGH SPEED NETWORK LAB. 79/28/2001

How to Support QoS under IntServ?Before transmitting data packets ….

STEP 2. Admission Control

A QoS-aware NE need response to the reservation request according to it’s load and the request.

A

A path with 3 MB/s is requirement

10MBMax Support BW

Current BW

BW

TIME

•Bandwidth Constraint•Packet Loss Constraint

HIGH SPEED NETWORK LAB. 89/28/2001

How to Support QoS under IntServ?Before transmitting data packets ….

Sender ReceiverA

D

BC

QoS -awareNEQoS Network

STEP 3. QoS Routing

?

?

A path must be selected so that it is likely to have enough resource to satisfy the user’s requirement.

•Bandwidth Constraint•Packet Loss Constraint

HIGH SPEED NETWORK LAB. 99/28/2001

How to Support QoS under IntServ?As data packets are transmitting….

QoS-aware NE

classification

Fq1

Fqn

schedulingFq2

Best Effort q

STEP 4. Classification

Examining every incoming packet and decide if the packet belongs to one of the reserved flow.

Src IP Dest. IPDest PortSrc Port

Protocol IDFlow Queue

HIGH SPEED NETWORK LAB. 109/28/2001

How to Support QoS under IntServ?As data packets are transmitting….

STEP 5. Scheduling

QoS-aware NE

Fq1

Fqn

Fq2

Best Effort q

scheduling

S

Deciding packets transmitting sequence so that it can satisfy the QoS constraints of all reserved flows

•Bandwidth Constraint•Max Delay Constraint

HIGH SPEED NETWORK LAB. 119/28/2001

How to Descript Traffic Parameters in IntServ?

Common Traffic Description Parameters:

• Peak rate p• Average rate r• Burst size b

Token Bucket

Peak Rate p

Token Stream with

average rate r

Bucket depth b

Input Packet Queue

Rate Permitted Packets

HIGH SPEED NETWORK LAB. 129/28/2001

Service Types Provided by IntServ

NoneRFC 2211RFC 2212RFC

None•Emulate a lightly loaded network for AP

•Guaranteed BW

•E2E* Delay Bound

Provide QoS

NoneTSpecRSpec >TSpecParameters

Best EffortControl LoadGuaranteedService Types

*) “E2E” implies End-to-End

Description Specification:TSpec : Traffic descriptor specification RSpec : Reservation specification

HIGH SPEED NETWORK LAB. 139/28/2001

Basic Features of Resource Reservation Setup Protocol (RSVP)

Just a signal machineWithout any traffic policy machine

Soft Statefor maintaining a reservation state

Policy IndependentControl Parameters is packaged in the

opaque with RSVP message

Simplex Reservation Receiver Oriented

HIGH SPEED NETWORK LAB. 149/28/2001

RSVP Operation Block Diagram

HIGH SPEED NETWORK LAB. 159/28/2001

Traffic Flow of the RSVP messages

HIGH SPEED NETWORK LAB. 169/28/2001

Objectives and Issues of Admission Control

ObjectivesProvide a mechanism to admit the connect request of a

user according to 1)Current Resource Usage2)The User Requirement

Major Issues1)How to get the information about link resource usage

efficiently ?2)How to know the residual resource is enough to

satisfy a user’s request under OVERBOOKING?

HIGH SPEED NETWORK LAB. 179/28/2001

Basic Approaches of Admission ControlStatistical-Based

Measurement-Based

- Average/Peak Rate Combinatory- Additive Effective Bandwidths- Engineering the loss Curve- Maximum-Variance-Based Approaches

- Exponential averaging over consecutive measurement estimation

new =(1-w) X estimationold+ w X measurementnew

- Time WindowEstimated rate=max[C1,C2,C3….Cn]

- Accurate, tight traffic models is hard to given.- meet the worst-case requirements -> low network resource utilization

Drawbacks

HIGH SPEED NETWORK LAB. 189/28/2001

Objectives and Issues of QoS Routing

ObjectiveData packet routing at presentMajor Drawback:

non support resource reserveunpredictable delay and order

Routing packets satisfied the QoS requirement constraints

Major IssueMaintenance of State Information

Local StateGlobal StateAggregated Global State

HIGH SPEED NETWORK LAB. 199/28/2001

QoS Routing2

HIGH SPEED NETWORK LAB. 209/28/2001

QoS Routing3

HIGH SPEED NETWORK LAB. 219/28/2001

Objectives and Issues of Classification

ObjectivesProvide a mechanism to recognize the packets from a single packet stream effectively.

Major IssuesSearch Speed

Low Storage requirement

Fast Update

Scalability

- number field

- flow number

Source IP, PortDest IP, PortProtocol ID

Major Diff: 5 TUPLES X

104 bits

Direct Memory LookupBinary Search Tree

SPACE VS. SPEED

HIGH SPEED NETWORK LAB. 229/28/2001

Basic Algorithms of Classification

RFC, hierarchical cuttings, tuple-space search

Heuristic

Ternary CAM, bitmap-intersectionHardware only

Grid-of-tries, AQT, FISGeometry-based

Linear search, caching, hierarchical tries, set-pruning tries

Basic data structures

AlgorithmsCategory

HIGH SPEED NETWORK LAB. 239/28/2001

Objectives and Issues of Scheduling

ObjectiveProvide a mechanism to schedule the bandwidth and

guarantee each flow or class getting the allocated quality

IssuesIsolation of FlowsLow End-to-End DelaysUtilizationFairnessSimplicity of ImplementationScalability

HIGH SPEED NETWORK LAB. 249/28/2001

Basic Concept of Scheduling

Generalized Processor Sharing (GPS)

1) An ideal fair queuing based on the fluid model.2) it provides perfect fairness in bandwidth allocation3) for a traffic source constrained by a leaky bucket with burst size b and token rate r, it can guarantee a delay bound of b/r and the received service is no worse than RV

j j

i ×∑ =1

φφ

Weighted Fair Queuing (WFQ)

i

kik

ik

i

LFF

φ+= −1[ ]

i

kik

ik

i

LtVFF

φ+= − )(,max 1

HIGH SPEED NETWORK LAB. 259/28/2001

Variants of Scheduling

HIGH SPEED NETWORK LAB. 269/28/2001

Schedulers in Open Source

FIFOCSZSFQCBQ

Internet QoSDifferentiated Service

HIGH SPEED NETWORK LAB. 289/28/2001

Concept of DiffServ Network

1. If You want to get QoS, You must have be signed the contracts with SP2. Only support the aggregated traffic resource allocation 3. Only provide a better behavior and provision (no accurate bandwidth reservation )

Edge Router

Core Router

DiffServ Domain

Ingress Router Egress Router

Core Routers

Objective: Define a simple and coarse methods of providing differentiatedclasses of service for Internet traffic.

Police, Mark, Shape, Drop Packets

Forward Packet

HIGH SPEED NETWORK LAB. 299/28/2001

Basic Elements Tree of DiffServ

HIGH SPEED NETWORK LAB. 309/28/2001

Differentiated Services Field

Redefine the existing IP TOS field to DS field

Some level of backward compatibility to IP TOS

Precedence D T R 0 0IP TOS

DS DSCP 0 0

1 2 3 4 5 6 7 8

No use

264 = 64 behaviors

12 AF PHBs1 EF PHB1 Best Effort PHB8 Class Selector PHBs

12 AF PHBs1 EF PHB1 Best Effort PHB8 Class Selector PHBs

HIGH SPEED NETWORK LAB. 319/28/2001

Per-Hop Behavior Group

HIGH SPEED NETWORK LAB. 329/28/2001

Ingress of DiffServ Domain

Classifier

Marker Meter

RemarkerShaperDropper

Traffic Classification Traffic Conditioning

DS Domain

DSCPClassifier

Packet Scheduler

Traffic Forwarding

HIGH SPEED NETWORK LAB. 339/28/2001

DiffServ Resource Manager

Internet QoSLinux Traffic Control

HIGH SPEED NETWORK LAB. 359/28/2001

Functions invoked when enqueue and dequeue

dev_queue_xmit

qdisc_enqueue

qdisc_wakeup

qdisc_restart

net_bh

qdisc_run_queuesqdisc_dequeue

hard_start_xmit

Timer

HIGH SPEED NETWORK LAB. 369/28/2001

Basic Components of TC

Input Device

IP Forwarding

Upper Layers Process

Output Queuing

Output Device

Traffic Control

Output Device

Without QoS

Filter Class Queuing Discipline

Filter ClassPolicing Queuing Discipline

Queuing Discipline

HIGH SPEED NETWORK LAB. 379/28/2001

Generic Filter Structure

DescriptionFunction Name

Walk through all elements of a filter and invokes a callback function

walk

Return the related information of a filter or elementdump

Delete a filter elementdelete

sets a new filter or changes the configure of an exist filter

Is invoked when a filter element previously got is no longer used

Lookup the filter element by it’s handle.

Remove a filter

Initializes the filter

Classify packets and return the policing results and the selected class ID

change

get

init

put

destroy

classify Filter Filter

Element

Element

Element

Element

HIGH SPEED NETWORK LAB. 389/28/2001

rsvp_session

rsvp_classify of CLS_RSVP.h

rsvp_session•dstaddr•protocol id•tunnelid

rsvp_filter

RF RF

rsvp_session

RFh2

RF

RFsrcaddrtcf_resulttcf_police info.

RF

skb

h1=hash_dst()

h1

h2=hash_src()

X

return value

rsvp_filter•src•tcf_result

rsvp_filter tcp_police

HIGH SPEED NETWORK LAB. 399/28/2001

rsvp_session

rsvp_filter

Input Police Filter (police.c)

tcp_policepktlen<mtu

overlimits++toks = calculate current accumulated tokens in this step

toks>burst

toks-=pktlentoks=burst

N

Y

Y

N

DescriptionResult code

Without matching any filterTC_POLICE_UNSPEC

Conform the policyTC_POLICE_OK

Pkt was selected by filter, but it exceeds certain bound and should be reclassify

TC_POLICE_RECLASSIFY

Pkt was selected by filter, but violate the bound such that it should be discarded

TC_POLICE_SHOT

no match

HIGH SPEED NETWORK LAB. 409/28/2001

Class

dump_class

Delete a classdelete

DescriptionFunction Name

return a pointer to the antcf_chain

Return the related information of a filter or elementunbind/bind_tcf

Walk through all elements of a filter and invokes a callback function

Create a new classes or changes the properties of a class

look up a class by its class ID and return it’s internal

return the queuing discipline of a class

attaches a new queing discipline to a class

walk

put

leaf

change

get

graft

HIGH SPEED NETWORK LAB. 419/28/2001

Queuing Disciplines

HIGH SPEED NETWORK LAB. 429/28/2001

sch_dsmark

TC and IntServ and DiffServ

Filter ClassPolicing Queuing Discipline

IntServRouter

DS CoreRouter

DS IngressRouter

Class Queues

TC GenericModel

Marker

Flow Queues

Flow Classifier

Policing

Flow SchedulerD

rop

er

Sh

aper

GRED

DSCP Queues

DSCP Classifier

cls_rsvp

HIGH SPEED NETWORK LAB. 439/28/2001

New components of Linux DiffServ

sch_dsmarkcls_tcindexsch_gred

HIGH SPEED NETWORK LAB. 449/28/2001

sch_dsmark structure

HIGH SPEED NETWORK LAB. 459/28/2001

Generic RED

HIGH SPEED NETWORK LAB. 469/28/2001

Engress Router Structure

HIGH SPEED NETWORK LAB. 479/28/2001

Core Router Structure

HIGH SPEED NETWORK LAB. 489/28/2001

Example of EF

HIGH SPEED NETWORK LAB. 499/28/2001

Pitfalls and Misleading

1.Shaper and Scheduler2.WFQ and WRR3.Service and Forwarding Behavior

HIGH SPEED NETWORK LAB. 509/28/2001

Further Reading

Related RFCsOther text booksWeb Site

HIGH SPEED NETWORK LAB. 519/28/2001

Written exercises

1. Take a example that descript the bandwidth sharing under GPS

2. Take a example that descript one case that can support AF Behavior Group in DS core router