Jump to first page DiffServ Overview University of British Columbia Cpsc 527 Advanced Computer...
-
date post
22-Dec-2015 -
Category
Documents
-
view
217 -
download
1
Transcript of Jump to first page DiffServ Overview University of British Columbia Cpsc 527 Advanced Computer...
Jump to first page
University of British Columbia
Cpsc 527Advanced Computer Communications
Lecture 7b DiffServ OverviewDiffServ Overview
Instructor: Dr. Son T. VuongEmail: [email protected]
The World Connected
Spring 2010 – Dr. Son Vuong Cpsc 527 2
Outline
Overview of QoS and DiffServ Our research on DiffServ
A Class of Protocols Dynamic (Fair) Distribution DiffServ
Conclusions
Spring 2010 – Dr. Son Vuong Cpsc 527 3
What is the Service on Internet
A "Service" defines some significant characteristics of packet transmission in one direction across a set of one or more paths within a network.
These characteristics may be specified in quantitative or statistical terms of: throughput, delay, jitter, loss.
Spring 2010 – Dr. Son Vuong Cpsc 527 4
Current Problems with the Internet
Best-effort service has strained its current infrastructure capabilities.
A challenge is to design routers that can provide service differentiation for various types of traffic.
Two solutions proposed in IETF: Integrated service (IntServ): individual flows with
specific QoS requirements, e.g. RSVP flows Differentiated services (DiffServ): aggregate of
flows and per-hop behavior.
Spring 2010 – Dr. Son Vuong Cpsc 527 5
What is QoS and why we need it?
QoS has many different measures: Delay, delay variance (jitter), rate Fairness, flow isolation Reliability, e.g. drop rate
QoS is needed in packet networks to support multimedia applications: IP Telephony, mobile web-access, Video teleconferencing, net-PC applications, Grid services, etc.
Spring 2010 – Dr. Son Vuong Cpsc 527 6
Application QoS requirements
Different applications=different QoS requirements.
Delay-sensitive real-time applications: Voice, Interactive Video.
Delay-tolerant real-time applications: Streaming Video.
Elastic applications that tolerate a wide range of delay variations: FTP, Telnet and e-mail.
Spring 2010 – Dr. Son Vuong Cpsc 527 7
How to Provide QoS in a Best-Effort Internet?
More bandwidth does not solve the problem it only moves it to the core of the network: IP router technology has a limit to its computational
capabilities. Also, fairness is not solved when bandwidth is
increased. Solution: packet scheduling and resource reservation.
Spring 2010 – Dr. Son Vuong Cpsc 527 8
Improving QOS in IP Networks IETF groups are working on proposals to provide better QOS control in IP
networks, i.e., going beyond best effort to provide some assurance for QOS Work in Progress includes RSVP, Differentiated Services, and Integrated
Services Simple model
for sharing and congestion studies:
Spring 2010 – Dr. Son Vuong Cpsc 527 9
Principles for QOS Guarantees Consider a phone application at 1Mbps and an FTP application sharing a 1.5 Mbps
link. bursts of FTP can congest the router and cause audio packets to be dropped. want to give priority to audio over FTP
PRINCIPLE 1: Marking of packets is needed for router to distinguish between different classes; and new router policy to treat packets accordingly
Spring 2010 – Dr. Son Vuong Cpsc 527 10
Principles for QOS Guarantees (more) Applications misbehave (audio sends packets at a rate higher than 1Mbps
assumed above); PRINCIPLE 2: provide protection (isolation) for one class from other classes Require Policing Mechanisms to ensure sources adhere to bandwidth
requirements; Marking and Policing need to be done at the edges:
Spring 2010 – Dr. Son Vuong Cpsc 527 11
Principles for QOS Guarantees (more) Alternative to Marking and Policing: allocate a set portion of bandwidth
to each application flow; can lead to inefficient use of bandwidth if one of the flows does not use its allocation
PRINCIPLE 3: While providing isolation, it is desirable to use resources as efficiently as possible
Spring 2010 – Dr. Son Vuong Cpsc 527 12
Principles for QOS Guarantees (more) Cannot support traffic beyond link capacity PRINCIPLE 4: Need a Call Admission Process; application flow declares
its needs, network may block call if it cannot satisfy the needs
Spring 2010 – Dr. Son Vuong Cpsc 527 14
Scheduling And Policing Mechanisms
Scheduling: choosing the next packet for transmission on a link can be done following a number of policies;
FIFO: in order of arrival to the queue; packets that arrive to a full buffer are either discarded, or a discard policy is used to determine which packet to discard among the arrival and those already queued
Spring 2010 – Dr. Son Vuong Cpsc 527 15
Scheduling Policies Priority 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 queue
Preemptive and non-preemptive versions
Spring 2010 – Dr. Son Vuong Cpsc 527 16
Scheduling Policies (more) Round Robin: scan class queues serving one from each class that
has a non-empty queue
Spring 2010 – Dr. Son Vuong Cpsc 527 17
Scheduling Policies (more) Weighted Fair Queuing: is a generalized
Round Robin in which an attempt is made to provide a class with a differentiated amount of service over a given period of time
Spring 2010 – Dr. Son Vuong Cpsc 527 18
Policing Mechanisms Three criteria:
(Long term) Average Rate (100 packets per sec or 6000 packets per min??), crucial aspect is the interval length
Peak Rate: e.g., 6000 p p minute Avg and 1500 p p sec Peak (Max.) Burst Size: Max. number of packets sent
consecutively, ie over a short period of time
Spring 2010 – Dr. Son Vuong Cpsc 527 19
Policing Mechanisms
Token Bucket: limit input to specified Burst Size and Average Rate.
bucket can hold b tokens tokens generated at rate r token/sec unless bucket
full over interval of length t: number of packets
admitted less than or equal to (r t + b).
Spring 2010 – Dr. Son Vuong Cpsc 527 20
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
Spring 2010 – Dr. Son Vuong Cpsc 527 21
What Is Scheduling and Why Do We Need It?
In real networks, a large number of flows may require different guarantees from the network.
Scheduling determines the next eligible packet, among all the arriving packets, to be sent out in order to satisfy the required guarantees.
Attributes of a good scheduler: Rate and delay guarantees. Fairness. Utilization. Simplicity.
Spring 2010 – Dr. Son Vuong Cpsc 527 22
Scheduling (revisited) Scheduling: per-flow or aggregated flows. Per-flow (IntServ):
Provides exact delay and fairness guarantees. Requires maintaining state information for all
active sessions on a link. Aggregation (DiffServ):
Delay and fairness are not as easy to guarantee. No (or minimal amount of) states need to be
maintained.
Spring 2010 – Dr. Son Vuong Cpsc 527 23
Types of Schedulers
Rate-controlled: Delay / jitter Earliest Due Date (D-EDD and J-EDD).
Non-rate-controlled: Generalized Processor Sharing (GPS) and Weighted Fair Queueing (WFQ).
Spring 2010 – Dr. Son Vuong Cpsc 527 24
How GPS Works
Every session has its own queue and share. Weighted Round Robin (WRR) service order with an
infinitesimal amount serviced from each session. Empty queues are skipped when their turn arrives.
Spring 2010 – Dr. Son Vuong Cpsc 527 25
End-to-End Network DelayEnd-to-End Network Delay
Delay=Host Delay+Access Delay+Network Delay Even if the network provided the required QoS
without the host applications or access networks providing their guarantees then the end-to-end guarantees will not be met.
HostApplication
AccessNetwork Core Network
Spring 2010 – Dr. Son Vuong Cpsc 527 26
WFQ vs. GPS Departures
Arrivals
1
.2 .
.3
. . .
N-1
. . .N
GPSscheduler
WFQscheduler
Spring 2010 – Dr. Son Vuong Cpsc 527 27
Scheduling Policies (more) Weighted Fair Queuing: is a generalized
Round Robin in which an attempt is made to provide a class with a differentiated amount of service over a given period of time
Spring 2010 – Dr. Son Vuong Cpsc 527 28
Proactive Packet Discard
Congestion management by proactive packet discard Before buffer full Used on single FIFO queue or multiple
queues for elastic traffic E.g. Random Early Detection (RED)
Spring 2010 – Dr. Son Vuong Cpsc 527 29
Random Early Detection (RED)Motivation
Surges fill buffers and cause discards On TCP this is a signal to enter slow start phase,
reducing load Lost packets need to be resent
Adds to load and delay Global synchronization
Traffic burst fills queues so packets lost Many TCP connections enter slow start Traffic drops so network under utilized Connections leave slow start at same time
causing burst Bigger buffers do not help Try to anticipate onset of congestion and tell one
connection to slow down
Spring 2010 – Dr. Son Vuong Cpsc 527 30
RED Design Goals
Congestion avoidance Global synchronization avoidance
Current systems inform connections to back off implicitly by dropping packets
Avoidance of bias to bursty traffic Discard arriving packets will do this
Bound on average queue length Hence control on average delay
Spring 2010 – Dr. Son Vuong Cpsc 527 31
RED Algorithm – Overview
Calculate average queue size avgif avg < THmin
queue packetelse if THmin avg Thmax
calculate probability Pa
with probability Pa
discard packetelse with probability 1-Pa
queue packetelse if avg THmax
discard packet
Spring 2010 – Dr. Son Vuong Cpsc 527 34
Architecture of DiffServ
DiffServ Domain A Set of per-hop (forwarding) behaviors (PHB). Packet classification functions. Traffic conditioning functions including:
metering marking shaping policing
Spring 2010 – Dr. Son Vuong Cpsc 527 35
DS Nodes
DS boundary Nodes Classify the ingress packets. Perform traffic conditioning according to a
traffic conditioning agreement (TCA) DS Interior Nodes
Perform limited traffic conditioning functions such as DS codepoint re-marking.
Spring 2010 – Dr. Son Vuong Cpsc 527 36
DS Definition
000000 : Best - effort behavior Pool Codepoint space Policy 1 xxxxx0 Standards Action 2 xxxx11 EXP/LU 3 xxxx01 EXP/LU (*)
(*) May be used for future Standards Action allocations as necessary
Spring 2010 – Dr. Son Vuong Cpsc 527 38
Per-Hop Behaviors (PHB)
PHB is a description of forwarding behavior of a DS node for a particular DS behavior aggregate.
Via PHBs, a node allocates its resources (buffer , bandwidth , delay, loss) to behavior aggregates.
PHBs are implemented via buffer management and packet scheduling mechanisms.
A PHB is selected at a node by a mapping of the DS codepoint in a received packet.
Spring 2010 – Dr. Son Vuong Cpsc 527 39
Traffic Conditioning Specification
The TCS specifies detailed service parameters for each service level :
Service performance parameters such as expected throughput, drop probability, latency.
Traffic profiles which must be adhered to for the requested service to be provided, such as token bucket parameters.
Disposition of traffic submitted in excess of the specified profile.
Marking services provided. Shaping services provided.
Spring 2010 – Dr. Son Vuong Cpsc 527 40
Packet Classifier and Traffic Conditioner
Classifier : select packets in a traffic stream based on packet header.
Meter: measures the temporal properties of the stream of packets selected by a traffic profile.
Marker: sets the DS field of a packet to a particular codepoint, add marked packet to a DS behavior aggregate.
Shaper: shapes the traffic stream to bring it into compliance with a traffic profile.
Dropper: discards some or all packets in a traffic stream to bring it into compliance with a traffic profile.
Spring 2010 – Dr. Son Vuong Cpsc 527 41
Service Level Specification (SLS)
In addition to TCS, the SLS specifies more general service :
Availability/Reliability Encryption services. Routing constraints. Authentication mechanisms. Mechanisms for service monitoring and auditing. Responsibilities such as location of the equipment
and functionality, action if the contract is broken, support capabilities.
Pricing and billing mechanisms.
Spring 2010 – Dr. Son Vuong Cpsc 527 42
Profile in Router
Profile ----> behavior of the router There may be many profiles in the router at any
time. Profile contains :
Name Attribute (in/out) Policy Scope Other information (Address , port, permission,
month mask, time of day, direction …)
Spring 2010 – Dr. Son Vuong Cpsc 527 43
Example of Profile
Name Entry2
PolicyScope DataTraffic
TimeOfDayRange 090000 to 170000
IncomingTOS 111
SourceAddressRange 139.24.2.12
to 139.24.2.255
Direction Outgoing
MaxeRate 5000
OutgoingTOS 101
Spring 2010 – Dr. Son Vuong Cpsc 527 44
Examples of Services
Better than Best-Effort (BBE) Service : This is a qualitative service which promises
to carry specific web server traffic at a higher priority than best-effort traffic.
Premium Service : Customer purchases a peak rate Packets below that rate carried with no delay Packets above that rate dropped
Spring 2010 – Dr. Son Vuong Cpsc 527 45
Our research on DiffServ
We focus on differentiated service since this aggregate service scales better than the per-flow integrated service.
We focus on developing a class of protocols including the Meter, Marker, Shaper at the Boundary nodes and the per-hop behavior of all interior nodes in a DS Domain.
For performance evaluation, the network simulator NS2 was used.
Spring 2010 – Dr. Son Vuong Cpsc 527 46
DiffServ and BestEffort Queues
DiffServ queue
Best-effort queue
Spring 2010 – Dr. Son Vuong Cpsc 527 48
The Dynamic Distribution DiffServ
The scheme unites DiffServ flows with Dynamic Distribution to the aggregate before sending them to the network.
Dynamic Distribution prevents any aggregate from taking all the bandwidth in a period of time, thus allows every aggregate a chance of passing through the router at all times.
Dynamic Distribution also guarantees Multimedia applications an upper bound on packet delay inside the DiffServ domain without the per-flow requirement.
Spring 2010 – Dr. Son Vuong Cpsc 527 49
Multiple Queues in DiffServ Router
Figure 1. Multiple-Queues in a Router of the DiffServ Domain
DiffServ queues
Backlogged packets
Spring 2010 – Dr. Son Vuong Cpsc 527 50
The Scheme of Dynamic Distribution Differentiated Service
This scheme simplifies processing at routers in DiffServ domain (cf. the IntServ scheme) while maintaining QoS guarantee for every flow.
At Boundary Nodes, packets are classified by their flows, which may number in thousands at one node or tens of thousand in the whole domain
At Inside Nodes, packets classified by their aggregates, numbered in hundreds at a node.
Spring 2010 – Dr. Son Vuong Cpsc 527 51
The Scheme at Boundary Node
Classifier: selects packets in a traffic stream based on DiffServ byte in header.
Meter: The leaky-bucket meter scheme for every flow with its subscribed bandwidth.
Dropper: drops all out-profile packets. Shaper: Fair-Queue scheme for every DiffServ
flow depending on the subscribing bandwidth. Marker: an aggregate marking scheme PHB: exact Fair-Queue forwarding scheme.
Spring 2010 – Dr. Son Vuong Cpsc 527 52
The Scheme for Interior Nodes
Classifier: selects packets in a traffic stream based on DiffServ byte and places them in appropriate queues.
Shaper: time divided into equal slots, each further divided mini-slots. Each aggregate receives a number of mini slots based on calculation at the beginning of the slot.
PHB: Frame-based forwarding scheme with Dynamic Distribution of resources.
Spring 2010 – Dr. Son Vuong Cpsc 527 53
The proposed Dynamic Distribution DiffServ scheme is flexible, simple and efficient
Guarantees delay bound without the per-flow complexity, suitable for multimedia traffic.
Future work: Various types of multimedia application traffic such
as video teleconferencing Various performance measures, including delay,
throughput and jitter Multicasting and security DS services
Summary