Network scheduler

from Wikipedia, the free encyclopedia

A network scheduler (see FIG. English scheduling or timing control ) or packet scheduler is a arbitration logic , the order of data packets in a buffer such as a queue (engl. Queue [ kju ]) controls. Various network schedulers are available for the various operating systems or kernels , for which more or fewer implementations of existing network scheduling algorithms are then available.

Implementations

A network scheduler is currently available for the Linux kernel ; it is an integral part of the Linux network stack, works on layer 2 of the OSI model , i.e. with Ethernet frames, and manages the input and output buffers of all network cards . With ifconfigor you ipcan set the buffer size txqueuelen( German : send queue length) / rxqueuelenin number of Ethernet frames (regardless of their size) for each device. The network scheduler does not manage the ring buffer or any other buffers.

Another network scheduler is in the planning phase and is part of Netfilter .

functionality

The respectively loaded network scheduler algorithm and the set parameters determine how the network scheduler manages the queue buffer.

illustration

FIFO data structure

Network scheduler algorithms

In the course of time, a number of network scheduler algorithms ( queuing discipline [ kjuing disiplin ] or queuing algorithm ) have been developed. One can roughly differentiate between leaky bucket algorithms and token bucket algorithms , based on the setting options between class-based and classless algorithms. Furthermore, one can count different algorithms of the same kind. B. CHOKe, ARED, GRED and WRED are all RED variants.

Several network scheduler algorithms are implemented as Linux kernel modules and are freely available:

Tags

Although the task of the network scheduler in itself is very easy to understand, a great many buzzwords have been invented on the subject over time .

  • Active Queue Management (AQM) , German about active queue management ,
  • Network Traffic Control : an umbrella term, as it were, because network traffic is actually supposed to be controlled
  • Traffic shaping : a form of AQM, the available bandwidth is artificially divided and limited
  • Link sharing : if two or more parties share a line, it is advisable to set up the network scheduler accordingly on the shared router
  • Traffic Prioritizing : a form of AQM, the queue is managed by prioritizing selected data packets
  • TCP Turbo : a catchphrase that is intended to emphasize that a corresponding AQM prevents the TCP download rate from slowing down
  • Bandwidth Management : Administration of the available bandwidth

See also

credentials

  1. Linux Kernel Source Code: Network Scheduler . December 26, 2012. Retrieved December 26, 2012.