traffic control prof. nelson fonseca state university of campinas
TRANSCRIPT
Traffic Control
Prof. Nelson FonsecaState University of Campinas
Traffic
Traffic – bits carried;
Ultimate goal of a network – to transport bits.
Traffic Control
Support of the Quality of Service requirements of the applications;
Efficient use of network resources.
Quality of Services Perception of the quality of information
transport.
Aplicações
Aplicações
AplicaçõesAplicações
QoS
QoS
QoSQoS
REDE
Quality of Services QoS parameters: express numerically
specific aspects of the quality perceived Common parameters:
Mean delay; Loss rate;
REDE
Delay in Packet Switching Networks
Packets expreice delay in their end-to-end path
Four delay components
Node processing checksum table lookup ququeing
Wait for output link Depends on node
congestion
A
B
propagation
transmission
processingqueueing
Delay in Packet Switching Networks
Transmission delay: R=bandwidth (bps) L=packet size (bits) Time to put the bits
in the link = L/R
Propagation delay d = length of the link s = propagation speed
(~2x108 m/sec) Propagation delay=
A
B
propagation
transmission
processingqueueing
Queueing Delay
R=link bandwidth (bps) L=packet size (bits) a=arrival rate of
packets
traffic intensity = La/R
La/R ~ 0: low mean delay La/R -> 1: increasing delay La/R > 1: work arrived exceeds
processing capacity
Jitter
Delay variation Impact on playback of voice
applications Buffer at receiver to ammeliorate jitter
effect
An Example:ATM QoS Parameters
Maximum transfer delay Delay variation peak to peak; Cell Loss rate; Rate of block severiously lost; Rate of cells erroneously inserted.
QoS Parameters
Number of packets consecutively lost; Mena time between faults; Mean time to have access; Mean time to recover from faults.
Traffic Descriptors
Characterizes quantitatively the pattern of the flow of bits
Used to produce estimates of the resource demands of a flow
An Example:ATM Traffic Descriptors
Peak Cell Rate (PCR): Maximum rate of cell transmission;
Sustainable Cell Rate (SCR): upper bound for the transmission rate;
Burst Tolerance – (BT) Maximum Burst Size - maximum time
for transmission at peak rate
An Example:ATM Traffic Descriptors
SCR
BTPCR
Class of Service
Users´choices of agreemet on quality of transport made between service provider
Usually classes of services exists at the network/link layer to support users´expectation of QoS
An Example:ATM Class of Services
CBR; NRT – VBR; RT – VBR; ABR; UBR; GRF.
CBR Constant Bit Rate; Allocation of fixed amount of bandwidth
during the duration of the virtual circuit; Real-time applications are sensitive to
delay and minimum bandwidth; Voice, video, circuit emulation.
CBR
PCR
Cel
l Rat
e
Tempo
RT – VBR Real Time Variable Bit Rate; Time-varying requirements of
bandwidth; Applications which need delay bound Voice and video.
NRT – VBR Non-Real Time Variable Bit Rate; Data-loss sensitive applications; Time-varying bandwidth requirements.
VBR
PCR
Cel
l Rat
e
Tempo
SCR
BT
ABR
Avaliable Bit Rate; Bandwidth allocation depends on
network feedback; Not proper to delay sensitive
applications.
ABR
PCR
Cel
l Rat
e
Tempo
SCR
MCR
UBR
Unspecified Bit Rate; Serviço Best Effort; Ip over ATM; No QoS guarantees.
GRF Generalized Frame Rate; Enhanced Serviço Best Effort; Minimum bandwidth guarantees; Deals with frames intead of cells;
Class of Service
CBR RT-VBR
NRT-VBR
ABR UBR GRB
Cell Loss Ratio (CLR) Y Y Y Y
Cell Delay Variation (CDV) Y Y Y
Cell Transfer Delay (CTD)
Peak Cell Rate (PCR) Y Y Y Y Y Y
CDV Tolerance (CDVT)
Sustainable Cell Rate (SCR) Y Y
Burst Tolerance (BT) Y
Mininum Cell Rate (MCR) Y
Congestion
Network lack of capacity to provide the Quality of Service requirements of applications
QoSC
ell L
oss
Rat
e
Maximum Cell Delay Variation
interactivevideo
Voice
interactivedata
Image filetransfer
10e-4
10e-6
10e-8
10e-10
1 10 100 1000
Congestion Control Congestion control mechanisms work at
different time scales and can be either reactive or pro-active
Congestion Control Mechanisms
Admission control Policing Selective Discard Active queue management Scheduling
Controle de Admissão de Conexão (CAC)
Decision making process. Decides whether or not to accept a flow (connection) into a network domain;
Decisions need to consider the mantainance of QoS requirements of already admitted flows as well as the support of QoS requirements of requesting flows;
Admission Control
My requirements are....
My traffic parameters are...
Service provider
Admission Control
Traffic descriptors
Traffic representation
Estimation of total resource demand
Admission Control
Parametric (analytical models)
Two approaches
Measurement Based
Admission ControlParametric Approach
RutH
Ru
tHuB
tWutW)(
)()(lim )()(0
Htatt )(
log2
Admission ControlParametric Approach
Admission ControlParametric Approach
Admission ControlMeasurement Based
Traffic Envelopes MBAC: Arrival Envelope: describes the peak rate
over defined intervals. Service Envelope: describes the minimum
service received by a traffic class as a function of interval length.
sourcedestination
ingress router
egress router
Admission Control Measurement Based
Admission Control condition: R(t) = mean of the arrival envelope 2 = variance of the arrival envelope S(t) = mean of the service envelope 2 = variance of the service envelope P = peak rate of the new flow D = delay bound = violation probability
Admission Control Measurement Based
Stability condition:
Admission Control Measurement Based
Time-Window/Measured Sum MBAC: The decision algorithm admits a new flow with load f if:
+ f < C *
f: load of the new flow.
: measured load of existing traffic.C: channel capacity.: user-defined utilization target.
Admission Control Measurement Based
Time-Window/Measured Sum MBAC:
+ f < * C
+ f < * B *
B: maximum data rate used by the network.
: estimate of the channel efficiency.
Admissible Region
Admissible Region
Centralized Admission Control
Distributed Admission Control
Emissor
Path
Resv
Path
Resv
PathRoteador 1 Roteador N
Receptor Resv
Interdomain Admission Interdomain Admission ControlControl
Arquiteturas para Provisão de QoS na Internet
BB0
BB1
BB2
BB3
ISP1
ISP2
ISP3
Origem
Destino
BB4
Admission ControlWireless Network
Admission Control aware of:
Signal to interference and noise ratio
Handoff failure
Admission ControlWireless Network
Admission ControlWireless Network
Policing
Keeps track of the transmission of a flow (connection) during its whole duration so that the contract between user and provider can be enforced.
Leaky Bucket
Tokens are generated at a constant rate (leaky rate);
A packet needs to consume a token for entering into the network;
Leaky BucketLeaky Bucket
Chegada dePacotes
Gerador deFichas
taxa média de fichas/segundos
Capacidadedo Balde: fichas
taxamáxima
Rede
SmoothingSmoothing
Chegada dePacotes
Gerador deFichas
taxa média de fichas/segundos
Capacidadedo Balde: fichas
taxamáxima
Redefila de saída
Limitations of the Leaky Bucket Mechanism
Just two parameters to control; Leaky rate controls the mean arrival
rate; Bucket size controls the burst length
The GCRA Algorithm Generic Cell Rate Algorithm
Virtual Scheduling; LB with continuous state;
GCRA (I,L) I: increment; L: Tolerance; TAT: Theoretical arrival time; LCT: Last conforming time – arrival time of the last
conforming cell;
GCRA
TAT = ta(k)
Célula excessiva
TAT = TAT + Ibem-comportada
TAT < ta(k)?
TAT < ta(k) + L
Sim
Sim
Não
Não
GCRA
Y = 0
Célula excessiva
X + Y + ILCT = ta(k)
bem-comportada
Y < 0?
Y > L?
Sim
Sim
Não
Não
Y = X - (ta(k) - LCT)
Selective Discard
Discard packets in congestion situations
Buffer management+
Push out Policy
Selective DiscardBuffer Management
1 1 1 2 1 1 1 2
Compartilhamento total com push-out
1 1 1 1 1
Particionamento total
22
2 1 1 1 1 2 2
Compartilhamento parcial
Selective DiscardPush out Policy
1 2 1 2 1 2
Primeiro-a-chegar-primeiro-a-ser-descartado
1 2 1 2 1 2
Último-a-chegar-primeiro-a-ser-descartado
1 1 1
Randômica
2 2 2
Packet Discard in Cell-switched Networks
3 2 1 3 1
3 2 1
Packet Discard in Cell-switched Networks
5 4 3 2 1
Tail D rop
3 2 1
Early Packet D iscard
Early Packet D iscard with Hysteresis
Active Queue Management Conceived to detect incipient
congestion Discard packets so that TCP
connections reduce their transmission rate and consequently avoid congestion
Drop Tail does not avoid global synchronization and resource monopolization
Active Queue Management
Based on heuristics: RED, FRED, ARED, BLUE
Based on Control Theory: PI-AQM, H2-AQM
Based on Optimization Theory: REM
RED
Random Earlier Detection Standardized by IETF Two threshold: if queue length smaller than first
threshold no packet is discard
RED
If queue length is larger than first thresold and smaller than second threshold packet is discarded with linearly increasing probability
If queue length larger than second threshold all packets are discarded
REDP
roba
lida
de d
e M
arca
ção/
De
sca
rte
minth maxth
maxp
Tamanho Médio da Fila
Zonanormal deoperação
Zona deprevenção de
congestionamento
Zona de controle decongestionamento
RED
Difficulty to set the value of the thresholds
Performance degradation under a large number of flows (burst traffic)
Bias againts connections with small window
Does not promote proportional discard Does not deal with unresponsive flows
ARED
Adaptive Random Earlier Detection Tries more efficient tunning of
parameters Rate of increase of discard
probability is proportional to the variation of the queue length
ARED
Fred Flow Random Early Drop Tries to enforce fairness among flows Keeps variables per flow Each flow is guaranteed a minimum
number of packets in the buffer. This minimum number is adjusted according to the offered load
Each flow cannot exceed a maximum number of packets in queue
Fred Each flow cannot exceed a maximum
number of packets in queue Keeps track of how much each flow tries to
exceed the allowed maximum numbe and penalize those which try to exceed by reducing its maximum allowed number of packets
Prevents non-responsive flows to monopolize the queue
Not scalable
Blue Tries to avoid underutilization of the
queue under low load and excessive loss of packet under high loads
The discard probability changes its values as a function of the load.
The differential value for increasing/decreasing the discard probability as well as the minimum values for the interval between consecutive updates are tunable parameters
SBLue
Stochastic Blue Uses hash scheme to classify flows
and set probability of dicsrad according to blue
Penalizes non-responsive flows
FPQ Flow proportinal Queuing Aim at keeping the queue length proportional
to the number of flow Estimates the number of flows and set discard
probability according to this estimation A minimum number of eight packets is
guaranteed per connection and considers the bandwidth delay product in the computation of the discard probability
AQM based on Optimization Maximize the aggregate utility function
subject to link capacity restrinction Transmission rates are primal variables
and discard probabilities are the dual variables
The Adaptive virtual queue emulates a virtual queue to determine the discard probability, the capacity of the queue is a function of the offered load. The use of virtual queues tends to stabilize the real queue
AQM based on Optimization
REM – price is taken as the congestion level at the link
Exponential RED – discard probability inreases exponentially with the length of a vitual queue which is smaller than the true queue
AQM based on Control Theory Congestion seen as a control problem
AQM based on Control Theory AQM Controllers based on P (Proportional), I
(Integral ), PI (Proportional-Integral ), PD (Proportional-Derivative) ou PID (Proportional-Integral- Derivative) classical controllers.
I component reduces the error of systems state in relation to the equilibrium point
D component decreases response time P & I components work on past error values
and cannot predict future errors D component is able to predict future errors
AQM based on Control Theory RED is a P-type controller Stabilized RED (SRED) stabilizes the
queue independent of the number of active connections. It estimates the number of active connections
DRED uses the difference between the actual queue length and the target one to change the value of the discard probability
VRC Virtual Rate Control aims at a target
virtual rate, similar concept to AVQ but AVQ uses a virtual queue length. VRC aims at target input rate as well as queue length. It uses a PID controller to compensate the difference between the actual and the target input rate
AQM based on Control Theory Yellow controls the difference between
link capacity and network load Receding Horizon AQM policy tries to
compensate the delay element for feedback
SMVSAQM and VS-AQMutilize SMVS - Sliding ModeVariable Structure Control which has an adptive control structure in order to be insentive to congestion control parameters
RIO
Standardized for the DiffServ framework Uses two RED queues: one for In-Profile
traffic and the other for Out-profile traffic
Rio
Pro
balid
ade
de
Mar
caçã
o/D
esc
art
e
in_minth out_maxth
out_maxp
Tamanho Médio da Fila
in_maxp
out_minth in_maxth
Scheduling
Defines the transmission order of packets;
Provides performance guarantees, i.e., upper bound on QoS requirements such as delay, jitter and bandwidth.
Isolates traffic from different classes;
Scheduling Discipline First-come-First-Served Priority Virtual Clock Generalized Processor Sharing Weighted Fair Queuing Earliest-Due-Date ….
Scheduling Disciplines
Work conserving disciplines – server is never idle if there are packets in queue;
Non-work-conserving – server can be idle even if there are packets in queue since packets may not be elegible for transmission.
Conservation Law A work-conserving discipline can only reallocate
delays among the flows
i
iiq
connectionith theof timengmean waiti
i connection toduen utilizatiomean
i
i
q
Work Conserving Discipline First Come First Served Priority Virtual Clock Generalized Processor Sharing Weighted Fair Queuing Worst-case weighted fair Queueing Self-clocked Fair Queuing
Virtual Clock
Isloates flows as in TDM systems; Each connection has its own clock with
its own time unit The connection clock advances
according to its time unit Time unit reflects the negotiated
contracted with network provider.
Virtual Clock
1/2
1/5
1/5
Generalized Processor Sharing
Fair Queueing Bandwidth shared according to the
weights of the connections
N
jjii Cg
1
/
m
C
Generalized Processor Sharing
N connections sharing a link with capacity C; Each connection has its own weight i; S(i,, t) bits served from connection i during
the interval [, t];
)(
)(
),,(
),,(
j
i
tjS
tiS
Generalized Processor Sharing
In a backlogged system, each flow receives a minimum amount of bandwidth proportioned to its weight. Unused bandwidth is distributed among flows according to their weight:
j
Ci
).(
Generalized Processor Sharing
If connection (flow) i is policed by a leaky bucket with parameters [(i),(i)], then an upper bound to the end-to-end delay igual to (i)/(i) is guaranteed.
Generalized Processor Sharing
GPS is an idealized scheduling discipline. It considers that a bit is infinitely divisible.
Packets is the unit of transmission Several disciplines emulate GPS: Weighted Fair Queuing Worst-Case Fair Queuing Self-Clocked Fair Queuing Start-time fair queuing
Weighted Fair Queuing Packet version of GPS
Also called Packet-by-Packet Fair Queueing
Packets are served in order of finishing time of transmission were they served by a GPS discipline
How does WFQ emulates GPS?
Packets are served in increasing order of finishing time, called finish number;
Round number – number of rounds of service a bit-by-bit round-robin scheduler has completed at a given time;
The duration of a round is proportional to the number of active conections
Weighted Fair Queueing In a WFQ a packet can be at most Lmax/C
behind of an equivalent GPS server where Lmax is the size of the largest packet sent in the connection;
The end-to-end delay is bounded by:
m
jj
i
i CLLm
1max
max /)1(
Worst-Case Fair Queueing A packet in a WFQ system can be far ahead
of its equivalent GPS system A W2FQ server considers only those packet
which would have started transmission in a fair queuing system and select the one which would have finish first in a fair queuing system
The difference between W2FQ and FQ can be at most of one packet
Same delay bound of WFQ
Self-Clocked Fair Queuing
Utilizes a more efficient finish number computation.
Packets that arrive to an empty queue utilizes the finish number of the packet in services instead of the round number
Short term unfairness and large worst-case delay
Start-time Fair Queuing Avoids short term unfairness and large
worst-case delay Computes both finish and start number Connections are served in order of start
number The start number is set either to the
finish time of a packet or to the round number (in case of empty server)
Delay-Earliest-Due-Date
Each packet has a deadline to leave the server which is set according to the contract between user and provider
Packets are server in increasing order of their arrival time plus their deadline
Upper bound to delay
Non-Work-Conserving Discipline
Hierarchical Round Robin Jitter-Earliest-Due-Date Rate Controlled Scheduler
Hierarchical Round Robin Multilevel framing strategy The server cycles through different
levels and services packets If it cycles through a slot with no
packet, it will leave the server idle instead of serving a packet in another level
Jitter-Earliest-Due-Date
Eliminates jitter After being served a packet is stamped
with the difference between its deadline and the actual finish time
A regulator at the entrance of the next server holds the packet before is is made eligible
Rate Controlled Scheduler
By coupling a regulator and a scheduler flexibility in providing bandwidth, delay and jitter guarantees is achieved.
Explicit Congestion Notification
Dissociate congestion notification from packet loss
router should be identify flows that use ECN
The two end-points envolved should negotiate at connection setup the use of ECN
Router marks IP datagram
Recipeint receivec notification in IP header and echos it to the sender in the ack packet
ToS fields of IP header used
ECT
CE
0 0 No support to ECN
0 1 Indicates that sender supports ECN
1 0 Indicates that recipient supports ECN
1 1 Indicates congestion