Title: Implementation and simulation of Scheduling Algorithms in OPNET
1Implementation and simulation of Scheduling
Algorithms in OPNET
- Project by Itamar Cohen
-
- Supervisor Nir Arad
2AGENDA
- Introduction
- Applications
- Algorithms RR, WRR, WFQ
- Summary
3MOTIVATION
- Scheduling algorithms are used in
- Computer networks, operating systems, real
time applications.
4MOTIVATION (cont.)
- Uses for nowadays networks
- Suppliers of services are committed to guarantee
a fixed service level, which can be checked under
a few pre-defined parameters. - This is called SLA (Service Level Agreement).
- But the client would like to get much more
- A possibility to choose his favorite
- application, which will get a higher
percentage of his bandwidth. - This is called QoS (Quality of Service).
5SCHEDULING ALGORITHMS
- Plenty of algorithms try to solve in different
ways the problem of one server, which has to
choose in real time the next client to be served,
among a few clients. - Each algorithm is good for some case, but bad for
other cases. No algorithm is good for all the
possible scenarios. - The OPNET modeler gives us an excellent ability
to test each algorithm under plenty of different
scenarios.
6THE PROJECTS AIMS
- This project implements OPNET standard packages
for the following scheduling algorithms RR, WRR
and WFQ. - Each algorithm was simulated under a few
- interesting scenarios.
- The generic attitude of the implementation
enables the user to simulate each algorithm
under plenty of other scenarios.
7Round Robin (RR)
- The simplest algorithm.
- The most important parameters which were checked
are - ETE Delay
- Backlog.
8RR basic 2
9RR - Interesting scenarios
- A source with smaller packets size
- A source whose packets are smaller then those
of the rest of the sources will get a worse
service The reason is that the RR is a
packetized model, which doesnt consider
different packets sizes. -
10RR different packets sizes
11RR different packets sizes (cont.)
- The bad service causes increasing ETE Delay and
backlog. - Only after a long run the server takes advantage
of the smaller packets, and stops this increase.
12RR - different packets sizes ETE Delay
13RR - different packets sizes - backlog
14RR another problematic scenario
- Misses his turn
- When one source is unlucky enough to send its
packets just after its turn in the current round
passed, it will have to wait for a whole round
till it will be served. - When there are plenty of active sources, this
wait time is not negligible at all. - The ETE Delay of the unlucky source is a few
times bigger then that of the other sources. - The backlogs, however, are almost identical.
15RR Misses his turn
16Misses his turn ETE Delay
17Misses his turn - backlogs
18Weighted Round Robin (WRR)
- A more sophisticated algorithm, which solves the
problem of one source faster. - The user can promote different weights for
different sources.
19WRR
20WRR different packets sizes
- If the user knows in advance the packets average
size of each source, he can promote it to improve
performances. - The normalized weight is, therefore
- (int)(promoted weight / avg. packet size)
- Let us examine the effect on the scenario of one
source with smaller packets size, demonstrated
in the RR context.
21WRR - different packets sizes (cont)
22WRR - different packets sizes (cont)
23WRR Pros.
- WRR solves the problem of one source, which sends
smaller packets. - WRR guarantees a higher bandwidth for the
favorite sources, still without starving the
other sources.
24WRR Cons.
- The problem of misses his turn remains
unsolved. - And what will we do if the average packet size is
not known in advance (or has a large STDEV)?
25WFQ Weighted Fair Queuing
- We would have preferred to handle a bit-by-bit
(rather then packetized) weighted RR fashion. - This is called Generalized Processor Sharing.
- Unfortunately, this is impractical.
- But we can approximate it.
26From GPS to PGPS (WFQ)
27Weighted Fair Queuing Overview
- WFQ schedules the packets according to their
finish time had they been handled by a GPS
algorithm. - Parekh and Gallager had proved that WFQs
performances are lower then that of GPS by only a
small constant P G .
28WFQ in different scenarios
- WFQ succeeds to give the same good results as WRR
gave in the different packets sizes scenario,
without requiring the user to promote the
packets average sizes in advance. - WFQ succeeds to solve the problem of Misses his
turn, in which both RR and WRR failed.
29WFQ not Misses his turn anymore !
30WFQ Cons.
- The sophisticated scheduling requires higher
computational complexity. - Jon C.R. Bennett and Hui Zhang showed that under
one specific scenario WFQs service is far AHEAD
of GPS. This will result in unstable and less
efficient network control algorithm B Z . - To solve these problems, newer algorithm, such as
W2FQ, were implemented
31SUMMARY
- As the demands from computer networks become more
and more specific and complicated, more
sophisticated algorithms are invented - Sophisticated algorithms are likely to give
better performances, but they also require a
higher computational complexity. - There are plenty of newer interesting algorithms.
32REFERENCES
- P G Abhay K. Parekh and Robert G. Gallager. A
Generalized Processor Sharing Approach to - Flow Control in Integrated Services Networks The
Single-Node Case - IEEWACM Transactions on nejworjong, vol. 1, NO.
3, June 1993. - Chuck Semeria. Supporting Differentiated Service
Classes Queue Scheduling Disciplines. - http//www.juniper.net/techcenter/techpapers/20002
0.html - Sridhar Iyer. Lectures slides for Autumn
Semester, KR School of Information Technology, - IIT Bombay. Queuing and Scheduling
http//quark.it.iitb.ac.in/it605/lectures/sched - Krishna Paul. Lectures slides for Autumn
Semester, KR School of Information - Technology, IIT Bombay. Scheduling
- http//quark.it.iitb.ac.in/it605/krishna/SCHEDULI
NG.ppt - Kevin Fall. Lectures slides for spring 1999, UC
Berkley, EECS 122 - COMMUNICATION NETWORKS, - Supplementary notes on WFQ
- http//www.cs.berkeley.edu/kfall/EE122/wfq-notes/
wfq-notes.pdf - B Z Jon C.R. Bennett, Hui Zhang. WF2Q
Worst-case Fair Weighted Fair Queuing,