Linux kernel ,
nftables, and
Berkeley Packet Filter. The Linux kernel packet scheduler is an integral part of the
Linux kernel's network stack and manages the transmit and receive
ring buffers of all NICs. The packet scheduler is configured using the utility called
tc (short for
traffic control). As the default queuing discipline, the packet scheduler uses a FIFO implementation called
pfifo_fast, although
systemd since its version 217 changes the default queuing discipline to fq_codel. The
ifconfig and
ip utilities enable system administrators to configure the buffer sizes txqueuelen and rxqueuelen for each device separately in terms of number of Ethernet frames regardless of their size. The Linux kernel's network stack contains several other buffers, which are not managed by the network scheduler.
Berkeley Packet Filter filters can be attached to the packet scheduler's classifiers. The
eBPF functionality brought by version 4.1 of the Linux kernel in 2015 extends the classic BPF programmable classifiers to eBPF. These can be compiled using the
LLVM eBPF backend and loaded into a running kernel using the tc utility.
BSD and OpenBSD ALTQ is the implementation of a network scheduler for
BSDs. As of OpenBSD version 5.5 ALTQ was replaced by the HFSC scheduler.
Cell-Free Network Scheduling Schedulers in communication networks manage resource allocation, including packet prioritization, timing, and resource distribution. Advanced implementations increasingly leverage artificial intelligence to address the complexities of modern network configurations. For instance, a supervised neural network (NN)-based scheduler has been introduced in cell-free networks to efficiently handle interactions between multiple radio units (RUs) and user equipment (UEs). This approach reduces computational complexity while optimizing latency, throughput, and resource allocation, making it a promising solution for beyond-5G networks. == See also ==