Apresentação feita em 2005 no Annual Simulation Symposium.
1.
Modeling and Simulation of a LFVC
Scheduler
Prof. Antonio M. Alberti
INATEL: Instituto Nacional de Telecomunicações
National Institute of Telecommunications
Santa Rita do Sapucai
Brazil
2.
Modeling and Simulation of LFVC Scheduler
Presentation Outline
Introduction
Leap Forward Virtual Clock
Developed Model
Interaction Between LFVC and ATM Network Models
Model Validation
Performance Evaluation
Final Remarks
3.
Modeling and Simulation of LFVC Scheduler
Introduction
One of the most important issues in integrated services
networks is the choice of the service discipline to be used
at each packet queuing point in order to select the
appropriate packet service order.
Why?
1. Service disciplines affect network performance not
only in terms of delay and loss, but also in terms of
throughput and fairness.
2. Service disciplines become a key to offer QoS
isolation among connections/flows in the network.
4.
Modeling and Simulation of LFVC Scheduler
Introduction
Amongst current service disciplines, the ones that
approximate Generalized Processor Sharing (GPS) have
had a lot of success satisfying such requirements.
In 1993, Parekh and Gallanger demonstrated that
employing GPS servers in network switches, end-to-end
QoS guarantees can be provided for a connection.
However, GPS is an idealized discipline that does not can
be implemented in real world.
5.
Modeling and Simulation of LFVC Scheduler
Introduction
So Parekh and Gallanger proposed a packet-based
approximation to the GPS, which was called Packet-by-
Packet Generalized Processor Sharing (PGPS).
In 1996, Bennett and Zhang developed a new algorithm to
approximate the GPS called Worst-case Fair Weighted Fair
Queuing (WF2Q).
Bennett and Zhang have demonstrated that WF2Q can
work almost identical as GPS.
6.
Modeling and Simulation of LFVC Scheduler
Introduction
Several other service disciplines have been developed
since then.
However, according to Suri et. al., just two disciplines can
work almost identical as GPS: WF2Q and Leap Forward
Virtual Clock (LFVC).
In addition, there are two important differences among
these algorithms:
1. LFVC is simpler to implement than WF2Q.
2. LFVC has a smaller computational overhead .
7.
Modeling and Simulation of LFVC Scheduler
Introduction
These factors motivated us to implement LFVC algorithm in
the context of an ATM network model previously developed
to trustworthily evaluate QoS in ATM networks through
simulation.
The LFVC algorithm is fundamental in this network model,
since very simple scheduling algorithms aren’t capable to
capture service differences among connections.
Our LFVC scheduler model interacts with the other models
from this model set.
8.
Modeling and Simulation of LFVC Scheduler
Leap Forward Virtual Clock
LFVC is a work-conserving fair-share scheduler.
It will be never turned off if there are cells waiting for service.
An ATM cell flow f which temporarily has used more
bandwidth than allocated through a weight φf can be
disciplined by placing the exceeding cells in a low priority
queue L.
However, well-behaved cell flows are stored in a high
priority queue H.
9.
Modeling and Simulation of LFVC Scheduler
Leap Forward Virtual Clock
Virtual clock service disciplines work allocating tags for
each cell waiting for service.
These tags represent the system clock value, when a cell
will be served.
Therefore, ATM cells are served in an increasing order of
their tags.
Just cells in the H queue are served.
Cells in the L queue must be transferred to the H queue, in
order to be served.
10.
Modeling and Simulation of LFVC Scheduler
Leap Forward Virtual Clock
So, how long can the cells can be maintained in the L
queue without the risk of an excessive delay?
The maximum delay that cell c can suffer is:
T (c ) − t s ≥ ∆ f
T (c ) is the value of tag for cell c;
t s is the current virtual clock value;
∆ f is the time required for cell c be served with the rate
allocated to flow f.
11.
Modeling and Simulation of LFVC Scheduler
Leap Forward Virtual Clock
It still remained another problem: what happens if all flows
have been transferred for queue L and queue H becomes
empty?
The solution for this problem was to advance the server
clock as far forward as possible, without violating the delay
invariant of any flows in L.
After the leap forward step, at least one active flow in L
becomes eligible for transferring to H.
12.
Modeling and Simulation of LFVC Scheduler
Developed Model
To implement the H and L queues, a priority queue data
structure was used.
Besides priority queues H and L, the original algorithm
uses a FIFO queue for each flow f. This queue is called Qf.
In fact, it is the queue Qf that stores the cells, while the H
and L priority queues just handle the service order and
which flow is oversubscribed or not.
In our implementation, this per-flow queue already exists in
another model of the ATM models set: Per-VC Queuing
model.
13.
Modeling and Simulation of LFVC Scheduler
Developed Model
The developed model has two main algorithms:
ReceiveCell: To receive a new cell in the LFVC scheduler.
It has one subroutine:
• ProcessHead: to process the head of the Qf queue.
TransmitCell: To transmit a cell to outside the scheduler.
This algorithm has two subroutines:
• TransferCells: to transfer cells from the L queue to the H queue.
• ServiceCell: to serve a cell whose token waits in the H queue.
14.
Modeling and Simulation of LFVC Scheduler
Developed Model
ReceiveCell
ReceiveCell
(t m)
Looks for the occupation of
the queue Q f .
Q f = 1? Yes Call ProcessHead Q f
No
End
15.
t m - Arrival time of a cell from flow f.
t f - Current tag of a flow f.
Modeling and Simulation of LFVC Scheduler
Developed Model t fprev - Previous tag of a flow f.
φ f - Flow f weight.
ProcessHead Subroutine Q f - FIFO queue for flow f.
ProcessHead Q .
f ∆ f - Time period required for the
(t m)
transmission of a flow f cell in
the rate allocated for this flow.
t fprev = t f t s - Current scheduler timer.
Looks for the pointer of the τ - Transmission frames period.
cell in the head of the ρ - Rounding parameter.
queue Q f .
1 SC - Scheduler capacity in cells/second.
τ=
SC tl - Service time.
prev
Recover t f and φ f .
Schedule cell in the H
t f ≤ ts + ∆ f + τ + ρ ? Yes priority queue with the tag
field set up to t f .
1
∆f =
φ f .SC No
Schedule cell in the L
priority queue with the tag A
t f = max (t s , t fprev ) + ∆ f field set up to t f − ∆ f .
16.
Modeling and Simulation of LFVC Scheduler
Developed Model
Scheduler is
ProcessHead Subroutine A “turned on”?
No
Schedule cell transmission
of the H queue to the time
t m - Arrival time of a cell from flow f.
instant equal to the Turn on scheduler.
t f - Current tag of a flow f. beginning of the next
frame period.
t fprev - Previous tag of a flow f. Yes
φ f - Flow f weight.
Q f - FIFO queue for flow f.
∆ f - Time period required for the There are cells in
Turn off scheduler. No
transmission of a flow f cell in the H or L queues?
the rate allocated for this flow.
t s - Current scheduler timer.
Yes
τ - Transmission frames period.
ρ - Rounding parameter. Schedule cell transmission
SC - Scheduler capacity in cells/second. of the H queue to the time
instant t m + τ .
tl - Service time.
Return
17.
Modeling and Simulation of LFVC Scheduler
Developed Model
TransmitCell
TransmitCell ( tl )
Call TransferCells
H queue is
No Call ServiceCell
empty?
Yes
Turn off the scheduler.
End
18.
Modeling and Simulation of LFVC Scheduler
Developed Model
TransferCells Subroutine
TransferCells
While there are cells in L If
empty
Return No
queue.
If
H queue is k min ≤ t s + τ + ρ
Yes t s = max (t s , (k min − ρ ))
empty?
No
Yes
Transfer cell to H queue.
Loop end
19.
Modeling and Simulation of LFVC Scheduler
Developed Model
ServiceCell Subroutine
ServiceCell Schedule an event to carry
the served cell to the next
model at the instant t end .
Remove cell from head of
H queue.
ts = ts +τ
Schedule an event to the
Per-VC Queuing informing
that the cell must be
removed from the Schedule processing of
queue Q f . the Q f queue head to the
instant tl .
Calculate end of service
time t end = tl + τ .
Return
20.
Modeling and Simulation of LFVC Scheduler
Interaction Between LFVC and ATM Network Models
LFVC model was implemented as a Scheduler (S) model
in the ATM Network Model.
LFVC is used to define the service order of the cells stored
in Queuing Structure (QS) models, such as Per-VC
Queuing.
The weight (φf) of each flow f is calculated by a Connection
Admission Control (CAC) model when a new connection is
being established.
21.
Modeling and Simulation of LFVC Scheduler
Interaction Between LFVC and ATM Network Models
Legend:
General Application Traffic
Managers
Delete
Connection
Connection DC Layers
Requesting
Ending and
Conclude and Deleting Activate
NC
DC Traffic Switch
and NC Source
Cell Flow
Traffic Traffic
Receiver Source CAC Switch Fabric
Packet Flow
To an To an BM TP
Queuing
ATM ATM QS
Structure
client network SD
Broadband Terminal Equipment
model model
S S Scheduler
QS
ATM Adaptation Layer
S Connection
CAC Admission
BTE ATM Layer Switch ATM Layer Control
To other Buffer
ATM BM
Input Physical Output Physical Input Physical Output Physical Management
network
Layer Layer Layer Layer
model Selective
SD
Discard
QS QS QS QS
Traffic
TP
S S S S Policing
CAC CAC CAC CAC
BM BM BM BM
SD SD SD SD
TP TP TP TP
To another ATM network model
22.
Modeling and Simulation of LFVC Scheduler
Model Validation
Model validation was done through service order analysis.
There are 10 applications (1-10) transmitting exactly 1 cell
at time 0.
For these applications, we configured a weight 0.05.
One more application (11) transmits 10 cells starting at
time 0, with a cell interval equals to 1 second.
This application has a weight 0.5.
23.
Modeling and Simulation of LFVC Scheduler
Model Validation
Evolution of the
LFVC variables
when cells are
processed by
ProcessHead
subroutine at
the time instant
tm.
24.
Modeling and Simulation of LFVC Scheduler
Model Validation
Occupation of the
FIFO queue for
flow f (Qf) in the
Per-VC Queuing
model.
LFVC model
produced the
same service
order shown by
Suri et. al.
25.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Network Topology
26.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
ATM Client Technologies Models Set Up
App_0 up to App_2:
They established connections to the App_5 using nrt-VBR service
category.
They transmitted a MPEG-4 Simple Program Transport Stream
previously adapted to be carried over ATM networks.
The ATM traffic contract elements are configured according with:
27.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
ATM Technology Models Set Up
BTE_0, Switch_0 and BTE_1:
They used the following models:
• Per-VC Queuing Structures
• LFVC Schedulers
• Effective Bandwidth Allocation Algorithms
• Dynamic Partitioning Algorithms
• CLR Selective Discard Algorithms
28.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Simulations Set Up
Three applications scenarios have been considered in
simulations:
I. Just App_0 transmits.
II. Applications App_0 and App_1 transmit.
III. App_0, App_1 and App_2 transmit.
For each scenario we run 8 simulations. In each of them,
BTE_0, BTE_1 and Switch_0 QSs capacity were set to
16000, 8000, 4000, 2000, 1000, 500, 100 and 50 cells,
respectively.
29.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Numerical Results
Weight φi allocated by
CAC algorithm for
connections 0, 1 and 2
considering queuing
structure capacities
ranging from 16000
cells (left) to
50 cells (right).
30.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Numerical Results
Mean per-VC
queuing occupation
in the output queuing
structure of BTE_0.
31.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Numerical Results
Mean cell delay
in the output queuing
structure of BTE_0.
32.
Modeling and Simulation of LFVC Scheduler
Performance Evaluation
Numerical Results
Mean cell loss
ratio in the
output physical
layer of BTE_0.
33.
Modeling and Simulation of LFVC Scheduler
Final Remarks
The LFVC model interacts with other models of the ATM
model set, improving its quality.
Numerical results validated our model, since it produced
the same service order than the original algorithm.
Results briefly demonstrated how our model can be used
to analyze QoS in ATM networks.
Results showed that LFVC scheduler is capable of
isolating traffic effects among ATM connections.
Future works include a performance comparison between
LFVC scheduler and WF2Q scheduler.
Be the first to comment