Scheduling Flashcards

1
Q

What is a work-conserving scheduler?

A

A work-conserving scheduler means that a router is never idle when there are packets to be serviced.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the work conservation law?

A

The work conservation law states that reducing the delay of one flow necessarily increases the delay of another.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the aim of non-work-conserving schedulers?

A

Non work-conserving schedulers can be idle even if there are packets waiting. This can reduce jitter, making downstream traffic more predictable. But such systems can be complex to build in practice, as for example each router must maintain a synchronized clock.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is max-min fair share?

A
  • Flows serviced in order of their requirement
  • No flow gets more than their fair share
  • Any flows whose demand cannot be satisfied get an equal share.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is simple priority queuing?

A

This involves having k queues, with increasing priority levels. Higher priority queues are serviced first. This is simple to implement, but is not max-min fair as low priority queues are liable to starve.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is generalised processor scheduling?

A

Generalised Processor Sharing is a work-conserving scheduler which provides max-min fair share, which serves an infinitesimal amount of data from each flow. It is useful as a reference point for other schedulers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the difference between relative and absolute fairnesss bounds?

A

Relative fairness bound attempts to evaluate the fairness of the scheduler with respect to other flows it is servicing, whilst the absolute fairness bound evaluates the fairness of the scheduler compared to GPS for the same flow.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is weighted round robin?

A

Weighted round robin is a simple attempt at emulating GPS. Queues are serviced round-robin, in proportion to a weight that is assigned to each flow/queue, i.e. flows with a greater weight have more service. In each round, each queue is visited once and the weight is normalised by the mean packet length. But unpredictable mean packet lengths may cause unfairness.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is deficit round robin?

A

Deficit round robin does not need to know the mean packet size; a deficit counter is maintained for each queue, initially set to zero. The scheduler attempts to serve one quantum of data to each queue each round. Packet at head is served if size <- dc + quantum.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is weighted fair queuing?

A

Weighted Fair Queuing attempts to emulate GPS directly by doing bit-by-bit round robin. The Finish Number is the time a packet would have completed service under a bit-by-bit GPS scheduler. Packets are tagged by their finish number and those with the smallest finish number are served first. Queue empty => finish number is number of bits in packet + round number. Queue non-empty => finish number is highest current finish number for queue + number of bits in packet. Can then drop packets in order of decreasing finish-number.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

If a queue if full, describe three strategies for packet dropping.

A
  • Drop-from tail is easy to implement, but packets in front may expire.
  • Drop-from head is good for real time as older packets get dropped first.
  • Random drop is fair if all sources are behaving and if not it penalises misbehaving sources more.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Why might dropping packets be problematic for UDP flows. How can this be addressed?

A

• Dropping packets works for TCP due to built-in mechanisms to manage flow control. But UDP has no such facility. Explicit congestion notification (ECN) may be required.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is Random Early Detection (RED)?

A

Random Early Detection (RED) attempts to spot congestion before it happens and pre-emptively drops packets randomly. Should take exponential average of queue length. Again, assumes that source is adaptive.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly