Implementation of Deficit Round Robin Scheduling...
Transcript of Implementation of Deficit Round Robin Scheduling...
Implementation of Deficit Round Robin Scheduling Algorithm
Amir Hosain Jodar
Communication Networks Laboratoryhttp://www.ensc.sfu.ca/research/cnl
School of Engineering ScienceSimon Fraser University
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 2
Road map
IntroductionQuality of Service SchedulingImplementation of Deficit Round Robin Simulation scenarios and resultsConclusions
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 3
Introduction
Internet originally designed to offer one level of service: “best effort”.Original users of Internet were U.S. government researchers and contractors. Transfer of ownership from ARPA to Defense Communication Agency in 1975. New transmission protocol called TCP/IP on January 1, 1983.First graphical Web browser released in 1993.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 4
Quality of Service
Ability to provide guaranteed services to different applications.
“All animals are equal, but some animals are more equal than others” Animal Farm, George Orwell
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 5
QoS parameters
Throughput: number of bits transmitted over a link in certain amount of time.Delay: time it takes packets to navigate from their source to their destination. Delay jitter: delay variation encountered by packets during transmission over a network. Packet loss: probability of packets being lost ina network.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 6
Providing QoS
End to end mechanismsimplemented at the two end sides of a connection: Connection Admission Control
Edge mechanismsimplemented at the user-network interface: shaping and policing
Core mechanisms implemented in network nodes: buffering, queue management, and scheduling
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 7
Core mechanisms
Implemented in network nodes (routers, switches). Classified into three categories:
buffering queue managementscheduling.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 8
Buffer architecture
Shared buffer:incoming traffic is stored in the same physical memory.
Per-flow: traffic belonging to distinct flows is placed into different buffers.
Current high-speed networks use per-flow buffers.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 9
Queue management
Ensure that the queue does not overflow.Devise criteria for dropping low priority packets before dropping high priority packets.
DropTail Random Early Detection (RED) Weighted RED (WRED) RED with IN and OUT bits (RIO).
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 10
Scheduling
Implemented in network switching nodes.Determines:
which packets get transmitted.when packets get transmitted.which packets get dropped in case of congestion.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 11
Scheduler elements
Classifier: assigns packets to different queues.Scheduler: selects packets to be transmitted from queues.
MUX Multiplexed Output
Flow 1
Flow 2
Flow N
Scheduler elements
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 12
Shreedhar and Varghese (1995)derived from Round Robin scheduling algorithm.classifies packets into different queues.associates a fixed quantum to each queue.a deficit counter is used to keep track of the credit available to each queue.
Deficit Round Robin (DRR)
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 13
Deficit Round Robin (cont.)
The variable Quantum is the number of bytes that each queue can transmit in each turn.The Deficit Counter is used to keep track of the credit (deficit) available to each queue.Each queue is allowed to send a given amount of bytes (Quantum) in each round of the robin. If the packet size at the front of the queue is larger than the amount of the Quantum, then the queue will not be serviced.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 14
Deficit Round Robin (cont.)
The value of the Quantum is added to the Deficit Counter associated with that queue and will be used in the next service round. To avoid examining empty queues, the algorithm keeps an auxiliary list called the Active List, which is a list of indices of queues that contain at least one packet. Whenever a packet arrives in an empty queue, the index of that queue is added to the Active List.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 15
OPNET simulation tool
Provides a comprehensive development environment for modeling of communication networks.Supports tools for all phases of study, including model design, data collection, simulation, and data analysis.Three layers of the hierarchical structure for each OPNET model: network, node, and process layer.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 16
Project editor
Used to create and edit the overall topology of the communication network model
Project editor in OPNET
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 17
Used to specify the structure of device models. Provides operations to support creation and editing of node models.Nodes consist of different types of objects called modules.
Node editor
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 18
Node editor (cont.)
Node editor in OPNET
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 19
Process editor
Node editor in OPNET
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 20
Modeling approach
Interconnection of editors in OPNET
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 21
DRR implementation
Hierarchical structure of IP router node model
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 22
DRR process model
State transition of output interface process model
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 23
DRR process model
State transition of Deficit Round Robin process model
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 24
Simulation scenario
Simulation scenario for the Deficit Round Robin algorithm
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 25
Scenario 1
Configuration:Client 1: 5 packets/secClient 2: 5 packets/secpacket size: 1,024 bytes for Client 1 packet size: 512 bytes for Client 2
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 26
Scenario 1: results
Arriving packets to queues Q0 and Q1 vs. time
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 27
Scenario 1: results
Outgoing packets from queues Q0 and Q1 vs. time
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 28
Scenario 2
Configuration:Client 1: 5 packets/secClient 2: 5 packets/secpacket size: 512 bytes for Client 1 packet size: 512 bytes for Client 2
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 29
Scenario 2: results
Arriving packets to queues Q0 and Q1 vs. time
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 30
Scenario 2: results
Outgoing packets from queues Q0 and Q1 vs. time
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 31
Conclusions
The concept of Quality of Service (QoS) was used along with various methods for providing QoS. We described in details the implementation of the Deficit Round Robin scheduling mechanism using the OPNET simulation tool.The fairness of the Deficit Round Robin model was verified in various network simulation scenarios.Future work: implementation of Deficit Round Robin++ and comparing it to the performance of other scheduling algorithms.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 32
References:
N. Alborz and Lj. Trajkovic, “Implementation of VirtualClock scheduling algorithm in OPNET,” OPNETWORK ‘01, Washington, DC, Aug. 2001. N. Alborz, “Implementation and PERFORMANCE SIMULATION of VirtualClock scheduling algorithm in IP Networks ,” M.A.Sc. Thesis, School of Engineering Science, Simon Fraser University, Apr. 2002. R.Guering and V. Peris, “Quality-of-Service in packet networks: basic mechanisms and directions,” Computer Networks, vol. 31, no. 3, pp. 169-189, Feb. 1999. V. Jacobson, “Congestion avoidance and control,” in Proc. ACM SIGCOMM ‘98, Vancouver, BC, Aug. 1998, pp. 314-329. S. Keshav, An Engineering Approach to Computer Networking.Reading, MA: Addison Wesley, 1998, pp. 463-466.
December 9, 2002 Implementation of Deficit Round Robin scheduling algorithm 33
References:
M. Shreedhar and G. Varghese, “Efficient fair queuing using Deficit Round Robin,” IEEE/ACM Transitions on Networking, vol. 4, no. 3,pp. 375-385, June 1996.A. S. Tanenbaum, Computer Networks, Third edition. Upper Saddle River, NJ: Prentice-Hall, 1996, pp. 374-396.J. Walrand and P. Varaiya, High-performance Communication Networks, Second edition. San Francisco, CA: Morgan Kaufman, 2000, pp. 26-32 and pp. 261-293.X. Xiao and L.M. Ni, “Internet QoS: a big picture,” IEEE Network, vol. 13, no. 2, pp. 8-18, Mar. 1999.QoSforum.com, IP QoS FAQ: http://www.qosforum.com/docs/faq(accessed Oct. 2002).Cisco Systems, Inc. documentation on QoS: http://www.cisco.com/warp/public/732/Tech/qos (accessed Nov. 2002).OPNET Technologies, Inc., Washington DC, OPNET documentation V.7.0.L.