apresentação feita em 2005 no annual simulation symposium
DESCRIPTION
TRANSCRIPT
Modeling and Simulation of a LFVC
Scheduler
Prof. Antonio M. AlbertiINATEL: Instituto Nacional de Telecomunicações
National Institute of Telecommunications
Santa Rita do Sapucai
Brazil
Presentation Outline
� Introduction
� Leap Forward Virtual Clock
� Developed Model
� Interaction Between LFVC and ATM Network Models
� Model Validation
� Performance Evaluation
� Final Remarks
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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:
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
1. LFVC is simpler to implement than WF2Q.
2. LFVC has a smaller computational overhead .
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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:
� is the value of tag for cell c;
� is the current virtual clock value;
� is the time required for cell c be served with the rate
allocated to flow f.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
( ) fstcT ∆≥−
( )cT
st
f∆
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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. Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Developed Model
� ReceiveCell
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
ReceiveCell
( )
?1=fQ Yes
No
End
Call ProcessHead fQ
Looks for the occupation of
the queue .fQ
mt
Developed Model
� ProcessHead Subroutine
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler - Current tag of a flow f.
- Flow f weight.
- FIFO queue for flow f.
- Previous tag of a flow f.
- Current scheduler timer.
fφ
ft
fQ
prev
ft
- Time period required for the
transmission of a flow f cell in
the rate allocated for this flow.
f∆
st
- Transmission frames period.τ
- Rounding parameter.ρ
- Scheduler capacity in cells/second.SC
- Arrival time of a cell from flow f.mt
- Service time.lt
Looks for the pointer of the
cell in the head of the
queue .
Recover and .prev
ft
fQ
fφ
SCf
f.
1
φ=∆
( ) f
prev
fsf ttt ∆+= ,max
f
prev
f tt =
SC
1=τ
?ρτ ++∆+≤ fsf tt Yes
No
ProcessHead .
( )fQ
mt
Schedule cell in the H
priority queue with the tag
field set up to .ft
Schedule cell in the L
priority queue with the tag
field set up to .fft ∆−A
Developed Model
� ProcessHead Subroutine
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Return
There are cells in
the H or L queues?
Yes
Schedule cell transmission
of the H queue to the time
instant . τ+mt
Turn off scheduler. No
Turn on scheduler.
Scheduler is
“turned on”?
NoSchedule cell transmission
of the H queue to the time
instant equal to the
beginning of the next
frame period. Yes
A
- Current tag of a flow f.
- Flow f weight.
- FIFO queue for flow f.
- Previous tag of a flow f.
- Current scheduler timer.
fφ
ft
fQ
prev
ft
- Time period required for the
transmission of a flow f cell in
the rate allocated for this flow.
f∆
st
- Transmission frames period.τ
- Rounding parameter.ρ
- Scheduler capacity in cells/second.SC
- Arrival time of a cell from flow f.mt
- Service time.lt
Developed Model
� TransmitCell
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
TransmitCell ( )lt
End
Call TransferCells
H queue is
empty?No Call ServiceCell
Yes
Turn off the scheduler.
Developed Model
� TransferCells Subroutine
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
While there are cells in L
queue.
Transfer cell to H queue.
( )( )ρ−= min,max ktt ss
IfYes
ρτ ++≤ stkmin
Yes
Return
Loop end
If
empty
TransferCells
No
H queue is
empty?
No
Developed Model
� ServiceCell Subroutine
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Return
Remove cell from head of
H queue.
τ+= ss tt
Schedule processing of
the queue head to the
instant .fQ
lt
ServiceCell
Schedule an event to the
Per-VC Queuing informing
that the cell must be
removed from the
queue .fQ
Schedule an event to carry
the served cell to the next
model at the instant .
Calculate end of service
time .τ+= lend tt
endt
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Interaction Between LFVC and ATM Network Models
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Broadband Terminal Equipment
ATM Adaptation Layer
QS
S
BTE ATM Layer
Input Physical
Layer
Output Physical
Layer
QS
S
CACCAC
BMBM
SDSD
TPTP
General Application
Connection
Requesting
and Deleting
Traffic
Source
Connection
Ending
Traffic
Receiver
Activate
Traffic
Source
Delete
DC
and
NCConclude
DC
and NC
To an
ATM
network
model
To an
ATM
client
model
Switch
QS
S
Switch ATM Layer
Input Physical
Layer
Output Physical
Layer
QS
S
Switch Fabric
BM
SD
QS
CAC
S
S
CACCAC
BMBM
SDSD
TPTP
TP
To other
ATM
network
model
To another ATM network model
Legend:
Packet Flow
Cell Flow
Layers
Traffic
Managers
Traffic
PolicingTP
Selective
DiscardSD
Buffer
ManagementBM
Connection
Admission
ControlCAC
SchedulerS
Queuing
StructureQS
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Model Validation
� Evolution of the
LFVC variables
when cells are
processed by
ProcessHead
subroutine at
the time instant
tm.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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. Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Performance Evaluation
�Network Topology
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:
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Performance Evaluation
� Numerical Results
� Weight φiallocated by
CAC algorithm for
connections 0, 1 and 2
considering queuing
structure capacities
ranging from 16000
cells (left) to
50 cells (right).
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Performance Evaluation
� Numerical Results
� Mean per-VC
queuing occupation
in the output queuing
structure of BTE_0.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Performance Evaluation
� Numerical Results
� Mean cell delay
in the output queuing
structure of BTE_0.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Performance Evaluation
� Numerical Results
� Mean cell loss
ratio in the
output physical
layer of BTE_0.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
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.
Mo
del
ing
an
d S
imu
lati
on
of
LF
VC
Sch
edu
ler
Thank You!