Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Queue Scheduling Analysis The Computer Communication Lab (236340) - Winter 2004 Tanya Berezner Ana Gluzband Gitit Amihud.

Similar presentations


Presentation on theme: "1 Queue Scheduling Analysis The Computer Communication Lab (236340) - Winter 2004 Tanya Berezner Ana Gluzband Gitit Amihud."— Presentation transcript:

1 1 Queue Scheduling Analysis The Computer Communication Lab (236340) - Winter 2004 Tanya Berezner Ana Gluzband Gitit Amihud

2 2 Introduction General network node (gateway) receives packets. The packets are queued according to their ToS. The order of the transmission is determined by the specified scheduling algorithm. The project includes:  Simulation of a gateway that receives IP packets that distributed according to the user specifications.  Implementation of the following queuing scheduling algorithms: WFQ,DRR, and ODRR.  Analysis of the algorithm’s performance.

3 3 The algorithms: DRR – Deficit Round Robin In this algorithm there is round robin between the non-empty queues. Each queue gets a quantum (according to it’s Tos) to transmit it’s packets. If the queue didn’t use all it’s quantum, the deficit quantum is saved for the next iterations. WFQ – Weighted Fair Queuing In this algorithm each queue gets a part of the bandwidth, according to his Tos. We calculate the virtual finish time for transmission for each packet according to it’s ToS bandwidth, the number of active queues and the packet length. The next packet to dequeue will be the one with the smallest virtual finish time.

4 4 ODRR – Ordered Deficit Round Robin Each queue gets a number of units. The allocated units quantity is in accordance to the priority of the queue (high priority – more units – more bandwidth). The user sets an order between the queues (qOrderList). The qOrderList composed of the queues' number and their units quantum. the packets are drawn from the queues according to the qOrderList. The deficit quantum is accomulated for each queue as in DRR. If the next packet chosen for transmission according to the qOrderList doesn’t fit in the slot, the algorithm tries to find another packet in another queue head that fits the slot, and accomulated quantum for all skipped queues. There is a "saving" mechanism that puts a queue that has accumulated too much quantum in the PassLimitList. In the beginning of each slot, the queues in PassLimitList will transmit first. The algorithms: cont.

5 5

6 6 Partial Class diagram

7 7 Partial Class diagram – cont.

8 8

9 9 Classes Class Generate:  This class receives from the user the following parameter: Lamda – the mean value of the exponential distribution of arriving packets. Lengths of packets. Lengths distribution. ToS distribution. Input file name of the generated file.  The class generates a file containing IP packets in the following format: Lamda Number of different ToSes Serial numberlengthToSArrival time …  We also allow the user to supply an existing file of IP packets. The IP packets in this file should be in the above format.

10 10 template gateway  An abstract template class that represent the gateway.  This class holds our “database”: a template array of queues. Each ToS has it’s own queue.  This class implements the run() method. This method manages the time and the slots. It synchronizes the enqueue() and dequeue() methods.  This class declares 3 pure virtual functions that derived classes should implement according to the algorithm: virtual enqueue() = 0; virtual dequeue() = 0; virtual long nextPacketLen() = 0; Classes – cont.

11 11 class IPpack  This class represents a basic IP packet and contains the following fields: ToS Length Arrival time Serial number in the file.  The following 3 classes inherit from this class : Class DRRIpPack Class WFQIpPack Class ODRRIpPack  The derived classes add member data according to the specific algorithm: for example class WFQIpPack adds data member finishTime that represent the virtual finish time. Classes – cont.

12 12 Class DRRgateway  This class inherits public from class: gateway Class WFQgateway  This class inherits public from class: gateway Class ODRRgateway  This class inherits public from class: gateway All the three classes implement the 3 virtual methods (enqueue(), dequeue(), nextPacketLen()) that were declared in their base class according to their algorithms. Classes – cont.

13 13

14 14 GUI

15 15 GUI - cont

16 16 GUI - cont

17 17 GUI - cont

18 18 GUI - cont

19 19

20 20 The constant parameters: Length sizes = 5,10,15,20,25 Queue limit = 1000 bits ToS weights in percents = 50,30,20 Total bandwidth = 100 Slot size = 100 Proportion for DRR = 1 Deficit limit = 30 Unit =5 bits Number of generated packets = 10,000

21 21 We analyzed the following packets distributions: Packets length510152025 Length distribution 50301073 Packets length510152025 Length distribution 37103050 Packets length510152025 Length distribution 20 Packets length510152025 Length distribution 20 Packets length510152025 Length distribution 20 1. 2. 3. 4. 5. ToS123 distribution3433 ToS123 distribution3433 ToS123 distribution3433 ToS123 distribution503020 ToS123 distribution203050

22 22 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

23 23 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

24 24 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

25 25 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

26 26 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

27 27 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

28 28 Packets length510152025 Length distribution 20 1. ToS123 distribution3433

29 29 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

30 30 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

31 31 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

32 32 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

33 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

34 34 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

35 35 Packets length510152025 Length distribution 50301073 2. ToS123 distribution3433

36 36 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

37 37 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

38 38 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

39 39 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

40 40 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

41 41 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

42 42 Packets length510152025 Length distribution 37103050 3. ToS123 distribution3433

43 43 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

44 44 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

45 45 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

46 46 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

47 47 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

48 48 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

49 49 Packets length510152025 Length distribution 20 4. ToS123 distribution503020

50 50 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

51 51 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

52 52 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

53 53 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

54 54 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

55 55 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

56 56 Packets length510152025 Length distribution 20 5. ToS123 distribution203050

57 57

58 58 When there are more small packets: Delay is smaller in all algorithms. The throughput reaches it’s maximal values in higher load. There is less lost packets for all algorithms. When there are more large packets, we observe the opposite tendencies. The throughput of ODRR is better than the throughput of WFQ and DRR. Possible reason: slot filling mechanism. WFQ is more sensitive to changes in ToS distribution. A small change in ToS distribution leads to a bigger change in delay and number of lost packets in comparison with the other algorithms. Possible reason: The depart time of the packet in WFQ depends on the queue state on it’s arrival. For ODRR, the default order is better than interleaving for distribution with more big packets.


Download ppt "1 Queue Scheduling Analysis The Computer Communication Lab (236340) - Winter 2004 Tanya Berezner Ana Gluzband Gitit Amihud."

Similar presentations


Ads by Google