UPD Quick Fair Queueing scheduler

This commit is contained in:
2024-01-14 00:19:47 +01:00
parent 98823b935b
commit 4f6e5f8ca8
3 changed files with 119 additions and 2 deletions

View File

@@ -48,7 +48,7 @@ b2sums=('SKIP'
'SKIP' 'SKIP'
'SKIP' 'SKIP'
'SKIP' 'SKIP'
'72b204712173dd109f60c6c81a10dc24c64eba7c2be8182a520b52f31ba2ecc4082fc711656a7e4893aac26120f9271c1fda3e37ad94236db95b14a6fdb56a82') 'f67cb3d077708b6eeac2e33a8e5bf21988b3fdd024ccaf9258597ce9c2764998cf886b7354115524f9fce3b4aa7ea3bb69e6b2dde63bec1d5e76ba3deaad4636')
export KBUILD_BUILD_HOST=archlinux export KBUILD_BUILD_HOST=archlinux
export KBUILD_BUILD_USER=$pkgbase export KBUILD_BUILD_USER=$pkgbase

View File

@@ -1,6 +1,6 @@
% %
% Thomas Kuschel 2023 % Thomas Kuschel 2023
\newcommand{\version}{V6.6} \newcommand{\version}{V6.7}
\documentclass[10pt,a4paper]{article} \documentclass[10pt,a4paper]{article}
%\documentclass[12pt,a4paper]{report} %\documentclass[12pt,a4paper]{report}
\usepackage[a4paper,margin=25mm]{geometry} \usepackage[a4paper,margin=25mm]{geometry}
@@ -7622,5 +7622,122 @@ Geben Sie hier Y an, wenn Sie einen n-Band-Warteschlangen-Paketplaner verwenden
mit mehreren Hardware-Sendewarteschlangen zu unterstützen. mit mehreren Hardware-Sendewarteschlangen zu unterstützen.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_multiq} heißen. Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_multiq} heißen.
\paragraph{Random Early Detection (RED)}$~$\\
CONFIG\_NET\_SCH\_RED [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Random Early Detection (RED)-Paketplanungsalgorithmus verwenden
möchten.
Siehe oben in $<$file:net/sched/sch\_red.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_red} heißen.
\paragraph{Stochastic Fair Blue (SFB)}$~$\\
CONFIG\_NET\_SCH\_SFB [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Stochastic Fair Blue (SFB) Paketplanungsalgorithmus verwenden
möchten.
Siehe den Anfang von $<$file:net/sched/sch\_sfb.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_sfb} heißen.
\paragraph{Stochastic Fairness Queueing (SFQ)}$~$\\
CONFIG\_NET\_SCH\_SFQ [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Stochastic Fairness Queueing (SFB) Paketplanungsalgorithmus
verwenden möchten.
Siehe den Anfang von $<$file:net/sched/sch\_sfq.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_sfq} heißen.
\paragraph{True Link Equalizer (TEQL)}$~$\\
CONFIG\_NET\_SCH\_TEQL [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Paketplanungsalgorithmus True Link Equalizer (TLE) verwenden
möchten. Diese Warteschlangendisziplin ermöglicht die Kombination mehrerer physischer Geräte
zu einem virtuellen Gerät.
Siehe den Anfang von $<$file:net/sched/sch\_teql.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_teql} heißen.
\paragraph{Token Bucket Filter (TBF)}$~$\\
CONFIG\_NET\_SCH\_TBF [=m] \textbf{[M]}\\*
Sagen Sie hier Y, wenn Sie den Token Bucket Filter (TBF) Paketplanungsalgorithmus verwenden wollen.
Siehe den Anfang von $<$file:net/sched/sch\_tbf.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{sch\_tbf} heißen.
\paragraph{Credit Based Shaper (CBS)}$~$\\
CONFIG\_NET\_SCH\_CBS [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Credit Based Shaper (CBS)-Paketplanungsalgorithmus
verwenden möchten.
Siehe den Anfang von $<$file:net/sched/sch\_cbs.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_cbs} heißen.
\paragraph{Earliest TxTime First (ETF)}$~$\\
CONFIG\_NET\_SCH\_ETF [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Paketplanungsalgorithmus Earliest TxTime First (ETF)
verwenden möchten.
Siehe den Anfang von $<$file:net/sched/sch\_etf.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_etf} heißen.
\paragraph{Time Aware Priority (taprio) Scheduler}$~$\\
CONFIG\_NET\_SCH\_TAPRIO [=m] \textbf{[M]}\\*
Geben Sie hier Y ein, wenn Sie den Algorithmus für die zeitabhängige
Prioritätsplanung (taprio) verwenden möchten.
Siehe den Anfang von $<$file:net/sched/sch\_taprio.c$>$ für weitere Details.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_taprio} genannt.
\paragraph{Generic Random Early Detection (GRED)}$~$\\
CONFIG\_NET\_SCH\_GRED [=m] \textbf{[M]}\\*
Sagen Sie hier Y, wenn Sie den GRED-Algorithmus (Generic Random Early
Detection) zur Paketplanung für einige Ihrer Netzwerkgeräte verwenden
wollen (siehe oben in $<$file:net/sched/sch\_red.c$>$ für Details
und Referenzen über den Algorithmus).
Um diesen Code als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_gred} heißen.
\paragraph{Network emulator (NETEM)}$~$\\
CONFIG\_NET\_SCH\_NETEM [=m] \textbf{[M]}\\*
Sagen Sie Y, wenn Sie Netzwerkverzögerungen, -verluste und die
Umordnung von Paketen emulieren wollen. Dies ist oft nützlich,
um Netzwerke beim Testen von Anwendungen oder Protokollen zu simulieren.
Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M:
Das Modul heißt dann \texttt{sch\_netem}.\\
Wenn Sie unsicher sind, sagen Sie N.
\paragraph{Deficit Round Robin scheduler (DRR)}$~$\\
CONFIG\_NET\_SCH\_DRR [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den Paketplanungsalgorithmus Deficit
Round Robin (DRR) verwenden wollen.
Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_drr} genannt.\\
Wenn Sie unsicher sind, geben Sie N an.
\paragraph{Multi-queue priority scheduler (MQPRIO)}$~$\\
CONFIG\_NET\_SCH\_MQPRIO [=m] \textbf{[M]}\\*
Sagen Sie hier Y, wenn Sie den Multi-queue Priority Scheduler verwenden wollen. Dieser Scheduler ermöglicht die Auslagerung von QOS auf NICs, die die Auslagerung von QOS-Schedulern unterstützen.
Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_mqprio} genannt.
Wenn Sie unsicher sind, sagen Sie N.
\paragraph{SKB priority queue scheduler (SKBPRIO)}$~$\\
CONFIG\_NET\_SCH\_SKBPRIO [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den SKB-Prioritätswarteschlangenplaner verwenden
wollen. Dadurch werden Pakete gemäß skb\texorpdfstring{$\rightarrow$}{->}priority eingeplant, was für
Anforderungspakete in DoS-Abwehrsystemen wie Gatekeeper nützlich ist.
Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_skbprio} heißen.
Wenn Sie unsicher sind, sagen Sie N.
\paragraph{CHOose and Keep responsive flow scheduler (CHOKE)}$~$\\
CONFIG\_NET\_SCH\_CHOKE [=m] \textbf{[M]}\\*
Geben Sie hier Y an, wenn Sie den CHOKe-Paketplaner verwenden wollen
(CHOose und Keep für responsive Flows, CHOose und Kill für unresponsive Flows).
Dies ist eine Variante von RED, die versucht, Datenflüsse zu bestrafen, die
die Warteschlange monopolisieren.
Um diesen Code als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_choke} heißen.
\paragraph{Quick Fair Queueing scheduler (QFQ)}$~$\\
CONFIG\_NET\_SCH\_QFQ [=m] \textbf{[M]}\\*
Sagen Sie hier Y, wenn Sie den Paketplanungsalgorithmus Quick Fair Queueing
Scheduler (QFQ) verwenden möchten.
Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M:
Das Modul wird \texttt{sch\_qfq} genannt.
Wenn Sie unsicher sind, sagen Sie N.
\end{document} \end{document}