Skip to content
ENExplore Calculators

Packet Scheduling Calculator

Turn scheduler weights into a real bandwidth share and estimate serialisation and queueing delay per class.

About Packet Scheduling Calculator

A weighted scheduler hands out service in proportion to weight, so the bandwidth a class receives is its weight divided by the total. Serialisation is how long one packet takes to clock onto the wire, and the worst-case delay a packet sees is the whole queue ahead of it draining at the class rate. Weights are dimensionless in the CLI, so the only way to know whether a class will meet a 30 ms budget is to convert weight into Mbps and multiply by the configured queue depth.

Formula

Packet Scheduling

class share = weight ÷ sum of weights; queueing delay = queue depth × packet bits ÷ class bandwidth.

weight
Relative scheduler credit assigned to the class
queue depth
Packets the class can hold before tail drop

Worked example

With the default values below, Packet Scheduling Calculator returns Bandwidth for This Class of 300.00. Change any input above and every figure here is recalculated in your browser.

Inputs used

Link rateaccepts 1–400,000 Mbps
1,000 Mbps
Weight of this classaccepts 1–10,000 weight
30 weight
Sum of all other weightsaccepts 0–100,000 weight
70 weight
Average packet sizeaccepts 64–9,000 bytes
1,000 bytes
Queue depthaccepts 1–100,000 packets
64 packets

Results

Bandwidth for This Class
300.00 Mbps
Scheduler Share
30.00%
Serialisation Delay per Packet
8.000 µs
Delay at Full Queue
1.707 ms
Scheduler Round Time
26.667 µs

Step by step

  1. 1Values used
  2. 2Packet Scheduling
  3. 3Bandwidth for This Class= 300.00 Mbps
  4. 4Scheduler Share= 30.00
  5. 5Serialisation Delay per Packet= 8.000 µs
  6. 6Delay at Full Queue= 1.707 ms
  7. 7Scheduler Round Time= 26.667 µs

Assumptions and limits

  • The result is derived only from the 5 inputs listed above. Anything not among them is not part of the calculation.
  • In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
  • Figures are rounded for display to 3 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.

How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.

Frequently Asked Questions

How is Packet Scheduling calculated?

class share = weight ÷ sum of weights; queueing delay = queue depth × packet bits ÷ class bandwidth. A weighted scheduler hands out service in proportion to weight, so the bandwidth a class receives is its weight divided by the total. Serialisation is how long one packet takes to clock onto the wire, and the worst-case delay a packet sees is the whole queue ahead of it draining at the class rate.

Why does Packet Scheduling matter?

Weights are dimensionless in the CLI, so the only way to know whether a class will meet a 30 ms budget is to convert weight into Mbps and multiply by the configured queue depth.

What values do I need to enter?

This calculator takes 5 inputs: Link rate, Weight of this class, Sum of all other weights, Average packet size, Queue depth. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

Packet Scheduling Calculator | Calcrivo