From ebaea0cae2670fa0ede8ed0c6a8023ba8c5012ab Mon Sep 17 00:00:00 2001 From: Thomas Kuschel Date: Tue, 13 May 2025 13:46:00 +0800 Subject: [PATCH] UPD documentation, English networking support --- ...ux_configuration_14_networking_support.tex | 281 +++++++++++++++++- 1 file changed, 274 insertions(+), 7 deletions(-) diff --git a/documentation/linux_configuration_14_networking_support.tex b/documentation/linux_configuration_14_networking_support.tex index 32d5ed4..127e141 100644 --- a/documentation/linux_configuration_14_networking_support.tex +++ b/documentation/linux_configuration_14_networking_support.tex @@ -2401,6 +2401,8 @@ CONFIG\_NETFILTER\_XT\_MATCH\_ESP [=m] \textbf{[M]}\\* Mit dieser Abgleichserweiterung können Sie einen Bereich von SPIs im ESP-Header von IPSec-Paketen abgleichen. Um sie als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This match extension allows you to match a range of SPIs inside ESP header of IPsec packets.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``hashlimit'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_HASHLIMIT [=m] \textbf{[M]}\\* @@ -2410,23 +2412,35 @@ Limit-Buckets, die auf Ihrer Auswahl von Quell-/"-Ziel"-adressen und/oder Ports Sie ermöglicht es Ihnen, Richtlinien wie \glqq 10kpps für eine bestimmte Zieladresse\grqq{} oder \glqq 500pps von einer bestimmten Quelladresse\grqq{} mit einer einzigen Regel auszudrücken. +\english{This option adds a `hashlimit' match.\\ +As opposed to `limit', this match dynamically creates a hash table of limit buckets, based on your selection of +source/destination addresses and/or ports.\\ +It enables you to express policies like `10kpps for any given destination address' or `500pps from any given source address' +with a single rule.} \subsubparagraph{``helper'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_HASHLIMIT [=m] \textbf{[M]}\\* Helper Matching ermöglicht es Ihnen, Pakete in dynamischen Verbindungen, die von einem conntrack-Helper verfolgt werden, anzupassen, z.\,B. nf\_conntrack\_ftp\\ -Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie Y. +Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie Y. +\english{Helper matching allows you to match packets in dynamic connections tracked by a conntrack-helper,\\ +ie. nf\_conntrack\_ftp\\ +To compile it as a module, choose M here. If unsure, say Y.} \subsubparagraph{``hl'' hoplimit/TTL match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_HL [=m] \textbf{[M]}\\* Mit dem HL-Matching können Sie Pakete basierend auf dem Hoplimit im IPv6-Header oder dem Time-to-Live-Feld im IPv4-Header des Pakets abgleichen. +\english{HL matching allows you to match packets based on the hoplimit in the IPv6 header, +or the time-to-live field in the IPv4 header of the packet.} \subsubparagraph{``ipcomp'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_IPCOMP [=m] \textbf{[M]}\\* Mit dieser Match-Erweiterung können Sie einen Bereich von CPIs (16 Bits) im IPComp"=Header von IPSec"=Paketen abgleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This match extension allows you to match a range of CPIs(16 bits) inside IPComp header of IPSec packets.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``iprange'' address range match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_IPRANGE [=m] \textbf{[M]}\\* @@ -2434,23 +2448,32 @@ Diese Option fügt eine \glqq iprange\grqq{}-Übereinstimmung hinzu, die es Ihne eine Übereinstimmung auf der Grundlage eines IP-Adressbereichs zu erzielen. (Normalerweise passt iptables nur auf einzelne Adressen mit einer optionalen Maske.) Wenn Sie unsicher sind, sagen Sie M. +\english{This option adds a ``iprange'' match, which allows you to match based on an IP address range. +(Normal iptables only matches on single addresses with an optional mask.)\\ +If unsure, say M.} \subsubparagraph{``ipvs'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_IPVS [=m] \textbf{[M]}\\* Mit dieser Option können Sie die IPVS-Eigenschaften eines Pakets abgleichen. Wenn Sie unsicher sind, sagen Sie N. +\english{This option allows you to match against IPVS properties of a packet.\\ +If unsure, say N.} \subsubparagraph{``l2tp'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_L2TP [=m] \textbf{[M]}\\* Diese Option fügt eine \glqq L2TP\grqq{}-Übereinstimmung hinzu, die es Ihnen ermöglicht, die Header"=Felder des L2TP"=Protokolls abzugleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds an ``L2TP'' match, which allows you to match against L2TP protocol header fields.\\ + To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``length'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_LENGTH [=m] \textbf{[M]}\\* Mit dieser Option können Sie die Länge eines Pakets mit einem bestimmten Wert oder einer Reihe von Werten vergleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option allows you to match the length of a packet against a specific value or range of values.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``limit'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_LIMIT [=m] \textbf{[M]}\\* @@ -2458,27 +2481,40 @@ Mit dem Limit-Matching können Sie die Rate kontrollieren, mit der eine Regel ab werden kann: Dies ist vor allem in Kombination mit dem LOG-Target (\glqq LOG-Target-Unterstützung\grqq{}, unten) und zur Vermeidung einiger Denial-of-Service-Angriffe nützlich. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{limit matching allows you to control the rate at which a rule can be matched: +mainly useful in combination with the LOG target (``LOG target support'', below) +and to avoid some Denial of Service attacks.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``mac'' address match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_MAC [=m] \textbf{[M]}\\* Mit dem MAC-Abgleich können Sie Pakete auf der Grundlage der Ethernet-Quelladresse des Pakets abgleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{MAC matching allows you to match packets based on the source Ethernet address of the packet.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``mark'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_MARK [=m] \textbf{[M]}\\* Dies ist eine rückwärtskompatible Option zur Bequemlichkeit des Benutzers (z.\,B. bei der Ausführung von oldconfig). Sie wählt CONFIG\_NETFILTER\_XT\_MARK (kombiniertes Mark/MARK-Modul). +\english{This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). +It selects CONFIG\_NETFILTER\_XT\_MARK (combined mark/MARK module).} \subsubparagraph{``multiport'' Multiple port match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_MULTIPORT [=m] \textbf{[M]}\\* Mit dem Multiport-Matching können Sie TCP- oder UDP-Pakete auf der Grundlage einer Reihe von Quell- oder Zielports abgleichen: Normalerweise kann eine Regel nur einen einzigen Bereich von Ports abgleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{Multiport matching allows you to match TCP or UDP packets based on a series of source or destination ports: +normally a rule can only match a single range of ports.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``nfacct'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_NFACCT [=m] \textbf{[M]}\\* Mit dieser Option können Sie die erweiterte Buchhaltung über nfnetlink\_acct verwenden. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option allows you to use the extended accounting through nfnetlink\_acct.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``osf'' Passive OS fingerprint match}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_OSF [=m] \textbf{[M]}\\* @@ -2487,12 +2523,19 @@ des entfernten Betriebssystems durch die Analyse eingehender TCP SYN-Pakete erm und die Ladesoftware können von der Website \url{http://www.ioremap.net/projects/osf} heruntergeladen werden. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option selects the Passive OS Fingerprinting match module that allows to passively match +the remote operating system by analyzing incoming TCP SYN packets.\\ +Rules and loading software can be downloaded from \url{http://www.ioremap.net/projects/osf}\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``owner'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_OWNER [=m] \textbf{[M]}\\* Mit dem Socket-Eigentümer-Abgleich können Sie lokal erzeugte Pakete danach abgleichen, wer den Socket erstellt hat: der Benutzer oder die Gruppe. Es ist auch möglich, zu prüfen, ob ein Socket tatsächlich existiert. +\english{Socket owner matching allows you to match locally-generated packets based on who created the socket: +the user or group. +It is also possible to check whether a socket actually exists.} \subsubparagraph{IPSEC ``policy'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_POLICY [=m] \textbf{[M]}\\* @@ -2500,12 +2543,17 @@ Der Richtlinienabgleich ermöglicht es Ihnen, Pakete auf der Grundlage der IPsec abzugleichen, die bei der Entkapselung verwendet wurde bzw. bei der Einkapselung verwendet werden wird. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{Policy matching allows you to match packets based on the IPsec policy that was used during decapsulation/will +be used during encapsulation.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``physdev'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_PHYSDEV [=m] \textbf{[M]}\\* Der Physdev-Paketabgleich gleicht die physischen Bridge-Ports ab, an denen das IP-Paket angekommen ist oder die es verlassen wird. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{Physdev packet matching matches against the physical bridge ports the IP packet arrived on or will leave by.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``pkttype'' packet type match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_PKTTYPE [=m] \textbf{[M]}\\* @@ -2514,6 +2562,10 @@ z.\,B. BROADCAST, MULTICAST, \dots\\ Typische Verwendung:\\[.5em] \texttt{iptables -A INPUT -m pkttype --pkt-type broadcast -j LOG}\\[.5em] Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{Packet type matching allows you to match a packet by its ``class'', eg. BROADCAST, MULTICAST, \dots\\ +Typical usage:\\ +\texttt{iptables -A INPUT -m pkttype --pkt-type broadcast -j LOG}\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``quota'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_QUOTA [=m] \textbf{[M]}\\* @@ -2521,12 +2573,17 @@ Diese Option fügt eine \glqq quota\grqq{}-Übereinstimmung hinzu, die eine Übe einem Byte-Zähler ermöglicht. Wenn Sie es als Modul kompilieren wollen, sagen Sie hier M und lesen Sie\\ $<$file:Documentation/kbuild/modules.rst$>$. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `quota' match, which allows to match on a byte counter.\\ +If you want to compile it as a module, say M here and read $<$file:Documentation/kbuild/modules.rst$>$. +If unsure, say `N'.} \subsubparagraph{``rateest'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_RATEEST [=m] \textbf{[M]}\\* Diese Option fügt eine \glqq Rateest\grqq{}-Übereinstimmung hinzu, die eine Übereinstimmung mit der durch das RATEEST-Ziel geschätzten Rate ermöglicht. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `rateest' match, which allows to match on the rate estimated by the RATEEST target.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``realm'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_REALM [=m] \textbf{[M]}\\* @@ -2535,6 +2592,10 @@ Realm-Schlüssel aus dem Routing-Subsystem innerhalb von iptables zu verwenden. Übereinstimmung ähnelt ziemlich genau der Option CONFIG\_NET\_CLS\_ROUTE4 in tc world. Wenn Du es als Modul kompilieren willst, sage hier M und lies $<$file:Documentation/kbuild/modules.rst$>$. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `realm' match, which allows you to use the realm key from the routing subsystem inside iptables.\\ +This match pretty much resembles the CONFIG\_NET\_CLS\_ROUTE4 option in tc world.\\ +If you want to compile it as a module, say M here and read $<$file:Documentation/kbuild/modules.rst$>$. +If unsure, say `N'.} \subsubparagraph{``recent'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_RECENT [=m] \textbf{[M]}\\* @@ -2542,6 +2603,10 @@ Dieser Abgleich wird verwendet, um eine oder mehrere Listen mit kürzlich verwen zu erstellen und dann einen Abgleich mit dieser Liste bzw. diesen Listen durchzuführen. Kurze Optionen sind verfügbar, indem man \texttt{iptables -m recent -h} verwendet. Offizielle Website: \url{http://snowman.net/projects/ipt_recent/} +\english{This match is used for creating one or many lists of recently used addresses and then matching against +that/those list(s).\\ +Short options are available by using `iptables -m recent -h'\\ +Official Website: $<$http://snowman.net/projects/ipt\_recent/$>$} \subsubparagraph{``sctp'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_SCTP [=m] \textbf{[M]}\\* @@ -2550,6 +2615,10 @@ um auf SCTP"=Quell\mbox{-/}Zielports und SCTP"=Chunk"=Typen abzustimmen. Wenn Sie es als Modul kompilieren wollen, sagen Sie hier M und lesen Sie $<$file:Documentation/kbuild/modules.rst$>$. Wenn Sie unsicher sind, sagen Sie N. +\english{With this option enabled, you will be able to use the `sctp' match in order to match on +SCTP source/destination ports and SCTP chunk types.\\ +If you want to compile it as a module, say M here and read $<$file:Documentation/kbuild/modules.rst$>$. +If unsure, say `N'.} \subsubparagraph{``socket'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_SOCKET [=m] \textbf{[M]}\\* @@ -2558,6 +2627,10 @@ um Pakete zu finden, für die ein TCP- oder UDP-Socket-Lookup einen gültigen So Sie kann in Kombination mit dem MARK-Ziel und dem Policy-Routing verwendet werden, um voll funktionsfähige, nicht ortsgebundene Sockets zu implementieren. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `socket' match, which can be used to match packets for which a TCP or UDP socket lookup +finds a valid socket. It can be used in combination with the MARK target and policy routing to implement +full featured non-locally bound sockets.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``state'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_STATE [=m] \textbf{[M]}\\* @@ -2565,18 +2638,27 @@ Mit dem Verbindungsstatusabgleich können Sie Pakete auf der Grundlage ihrer Bez zu einer verfolgten Verbindung (d.\,h. früheren Paketen) abgleichen. Dies ist ein leistungsfähiges Werkzeug zur Klassifizierung von Paketen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{Connection state matching allows you to match packets based on their relationship to a tracked connection +(ie. previous packets). +This is a powerful tool for packet classification.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``statistic'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_STATISTIC [=m] \textbf{[M]}\\* Diese Option fügt einen \glqq statistischen\grqq{} Abgleich hinzu, der es ermöglicht, Pakete periodisch oder zufällig mit einem bestimmten Prozentsatz abzugleichen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `statistic' match, which allows you to match on packets periodically or randomly +with a given percentage.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``string'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_STRING [=m] \textbf{[M]}\\* Diese Option fügt eine \glqq String\grqq{}-Übereinstimmung hinzu, die es Ihnen ermöglicht, nach Muster"-über"-ein"-stim"-mungen in Paketen zu suchen. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `string' match, which allows you to look for pattern matchings in packets.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``tcpmss'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_TCPMSS [=m] \textbf{[M]}\\* @@ -2584,6 +2666,9 @@ Diese Option fügt eine \glqq tcpmss\grqq{}-Übereinstimmung hinzu, die es Ihnen den MSS-Wert von TCP SYN-Paketen zu untersuchen, der die maximale Paketgröße für diese Verbindung kontrolliert. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a `tcpmss' match, which allows you to examine the MSS value of TCP SYN packets, +which control the maximum packet size for that connection.\\ +To compile it as a module, choose M here. If unsure, say N.} \subsubparagraph{``time'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_TIME [=m] \textbf{[M]}\\* @@ -2593,6 +2678,10 @@ eine Übereinstimmung auf der Grundlage der Ankunftszeit des Pakets (für lokal erzeugte Pakete) zu erzielen. Wenn Sie hier Y für Ja sagen, versuchen Sie \texttt{iptables -m time --help} um weitere Informationen zu erhalten. Wenn Sie es als Modul kompilieren wollen, sagen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds a ``time'' match, which allows you to match based on the packet arrival time +(at the machine which netfilter is running on) or departure time/date (for locally generated packets).\\ +If you say Y here, try \texttt{`iptables -m time --help'} for more information.\\ +If you want to compile it as a module, say M here. If unsure, say N.} \subsubparagraph{``u32'' match support}$~$\\ CONFIG\_NETFILTER\_XT\_MATCH\_U32 [=m] \textbf{[M]}\\* @@ -2602,6 +2691,11 @@ ob die Ergebnisse in einem der angegebenen Bereiche liegen. Die Angabe, was extrahiert werden soll, ist allgemein genug, um Header mit im Paket gespeicherten Längen, wie z.\,B. IP- oder TCP-Header-Längen, zu überspringen. Details und Beispiele sind im Quelltext des Kernelmoduls zu finden. +\english{u32 allows you to extract quantities of up to 4~bytes from a packet, AND them with specified masks, +shift them by specified amounts and test whether the results are in any of a set of specified ranges. +The specification of what to extract is general enough to skip over headers with lengths stored in the packet, +as in IP or TCP header lengths.\\ +Details and examples are in the kernel module source.} \paragraph{IP set support} \texorpdfstring{$\rightarrow$}{->}$~$\\ CONFIG\_IP\_SET [=m] \textbf{[M]}\\* @@ -2609,6 +2703,10 @@ Diese Option erweitert den Kernel um die Unterstützung von IP-Sets. Um die Sets und zu verwenden, benötigen Sie das Userspace-Dienstprogramm ipset(8). Sie können die Sets in netfilter über die \glqq set\grqq{}-Übereinstimmung und das \glqq SET\grqq{}-Ziel verwenden. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds IP set support to the kernel. +In order to define and use the sets, you need the userspace utility ipset(8). +You can use the sets in netfilter via the ``set'' match and ``SET'' target.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{Maximum number of IP sets}$~$\\ CONFIG\_IP\_SET\_MAX [=256] \textbf{[256]}\\ @@ -2618,48 +2716,69 @@ Der Wert kann durch den Modulparameter \glqq max\_sets\grqq{} des Moduls \glqq i Symbol: IP\_SET\_MAX [=256]\\ Type : Ganzzahl (integer)\\ Bereich: [2 65534] +\english{You can define here default value of the maximum number of IP sets for the kernel.\\ +The value can be overridden by the `max\_sets' module parameter of the `ip\_set' module.} \subparagraph{bitmap:ip set support}$~$\\ CONFIG\_IP\_SET\_BITMAP\_IP [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs bitmap:ip set hinzu, mit dem man IPv4-Adressen (oder Netzwerkadressen) aus einem Bereich speichern kann.\\ Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the bitmap:ip set type support, by which one can store IPv4 addresses (or network addresses) +from a range.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{bitmap:ip,mac set support}$~$\\ CONFIG\_IP\_SET\_BITMAP\_IPMAC [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs bitmap:ip,mac set hinzu, mit dem man Paare von IPv4-Adressen und (Quell-)MAC-Adressen aus einem Bereich speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the bitmap:ip,mac set type support, by which one can store IPv4 address and +(source) MAC address pairs from a range.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{bitmap:port set support}$~$\\ CONFIG\_IP\_SET\_BITMAP\_PORT [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs bitmap:port set hinzu, mit dem man TCP/UDP"=Portnummern aus einem Bereich speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the bitmap:port set type support, by which one can store TCP/UDP port numbers from a range.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IP [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:ip set hinzu, mit dem man beliebige IPv4- oder IPv6-Adressen (oder Netzwerkadressen) in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip set type support, by which one can store arbitrary IPv4 or IPv6 addresses +(or network addresses) in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip,mark set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IPMARK [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:ip,mark set hinzu, mit dem man IPv4/IPv6-Adress- und Markenpaare speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip,mark set type support, by which one can store IPv4/IPv6 address and mark pairs.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip,port set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IPPORT [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:ip,port set hinzu, mit dem man IPv4/IPv6-Adressen und Protokoll/Port-Paare speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip,port set type support, by which one can store IPv4/IPv6 address +and protocol/port pairs.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip,port,ip set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IPPORTIP [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:ip,port,ip set hinzu, mit dem man IPv4/IPv6-Adress-, Protokoll/Port- und IPv4/IPv6-Adress-Tripel in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip,port,ip set type support, by which one can store IPv4/IPv6 address, +protocol/port, and IPv4/IPv6 address triples in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip,port,net set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IPPORTNET [=m] \textbf{[M]}\\ @@ -2667,37 +2786,53 @@ Diese Option fügt die Unterstützung des Typs hash:ip,port,net hinzu, mit dem m IPv4/IPv6"=Adress-, Protokoll/Port- und IPv4/IPv6"=Netzwerkadressen/Präfix"=Tripel in einem Set speichern kann.\\ Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip,port,net set type support, by which one can store IPv4/IPv6 address, +protocol/port, and IPv4/IPv6 network address/prefix triples in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:ip,mac set support}$~$\\ CONFIG\_IP\_SET\_HASH\_IPMAC [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:ip,mac set hinzu, mit dem man Paare von IPv4/IPv6-Adressen und MAC (Ethernet-Adresse) in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:ip,mac set type support, by which one can store IPv4/IPv6 address and MAC +(ethernet address) pairs in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:mac set support}$~$\\ CONFIG\_IP\_SET\_HASH\_MAC [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:mac set hinzu, mit dem man MAC"=Elemente (Ethernet"=Adressen) in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:mac set type support, by which one can store MAC (ethernet address) elements in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:net,port,net set support}$~$\\ CONFIG\_IP\_SET\_HASH\_NETPORTNET [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:net,port,net set hinzu, mit dem man zwei IPv4/IPv6-Subnetze und ein Protokoll/Port in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. - +\english{This option adds the hash:net,port,net set type support, by which one can store two IPv4/IPv6 subnets, +and a protocol/port in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:net set support}$~$\\ CONFIG\_IP\_SET\_HASH\_NET [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:net set hinzu, mit dem man IPv4/IPv6"=Netzwerkadressen/Präfixe in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:net set type support, by which one can store IPv4/IPv6 network +address/prefix elements in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:net,net set support}$~$\\ CONFIG\_IP\_SET\_HASH\_NETNET [=m] \textbf{[M]}\\ Diese Option fügt die Unterstützung des Typs hash:net,net set hinzu, mit dem man IPv4/IPv6"=Netzwerkadressen/Präfixpaare in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:net,net set type support, by which one can store IPv4/IPv6 network +address/prefix pairs in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:net,port set support}$~$\\ CONFIG\_IP\_SET\_HASH\_NETPORT [=m] \textbf{[M]}\\ @@ -2705,6 +2840,9 @@ Diese Option fügt die Unterstützung des Typs hash:net,port set hinzu, mit dem man IPv4/IPv6"=Netzwerkadressen/Präfix und Protokoll/Port"=Paare als Elemente in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:net,port set type support, by which one can store IPv4/IPv6 network address/prefix +and protocol/port pairs as elements in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{hash:net,iface set support}$~$\\ CONFIG\_IP\_SET\_HASH\_NETIFACE [=m] \textbf{[M]}\\ @@ -2712,13 +2850,19 @@ Diese Option fügt die Unterstützung des Typs hash:net,port set hinzu, mit dem IPv4/IPv6"=Netzwerkadressen/Präfix und Schnittstellennamenpaare als Elemente in einem Set speichern kann. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the hash:net,iface set type support, by which one can store IPv4/IPv6 network address/prefix +and interface name pairs as elements in a set.\\ +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{list:set set support}$~$\\ CONFIG\_IP\_SET\_LIST\_SET [=m] \textbf{[M]}\\ Mit dieser Option wird die Unterstützung des Typs list:set hinzugefügt. In dieser Art von Set kann man den Namen anderer Sets speichern und es bildet eine geordnete Vereinigung der Mitglieds"=Sets. -Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{This option adds the list:set set type support. +In this kind of set one can store the name of other sets and it forms an ordered union of the member sets.\\ +To compile it as a module, choose M here. If unsure, say N.} \paragraph{IP virtual server support \texorpdfstring{$\rightarrow$}{->}}$~$\\ CONFIG\_IP\_VS [=m] \textbf{[M]}\\ @@ -2734,17 +2878,33 @@ Weitere Informationen und das Verwaltungsprogramm finden Sie unter der folgenden \url{http://www.linuxvirtualserver.org/}.\\ Wenn Sie es im Kernel kompilieren wollen, geben Sie Y an. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{IP Virtual Server support will let you build a high-performance virtual server based on cluster of two +or more real servers. +This option must be enabled for at least one of the clustered computers that will take care of intercepting incoming +connections to a single IP address and scheduling them to real servers.\\ +Three request dispatching techniques are implemented, they are virtual server via NAT, virtual server via tunneling +and virtual server via direct routing. +The several scheduling algorithms can be used to choose which server the connection is directed to, thus load balancing +can be achieved among the servers. +For more information and its administration program, please visit the following URL: +$<$http://www.linuxvirtualserver.org/$>$.\\ +If you want to compile it in kernel, say Y. +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{IPv6 support for IPVS}$~$\\ CONFIG\_IP\_VS\_IPV6 [=y] \textbf{[Y]}\\ Hinzufügen von IPv6-Unterstützung zu IPVS. Sagen Sie Y, wenn Sie unsicher sind. +\english{Add IPv6 support to IPVS.\\ +Say Y if unsure.} \subparagraph{IP virtual server debugging}$~$\\ CONFIG\_IP\_VS\_DEBUG [=n] \textbf{[N]}\\ Geben Sie hier Y ein, wenn Sie zusätzliche Meldungen erhalten möchten, die bei der Fehlersuche im Code des virtuellen IP"=Servers nützlich sind. Sie können die Debug"=Ebene in /proc/sys/net/ipv4/vs/debug\_level ändern. +\english{Say Y here if you want to get additional messages useful in debugging the IP virtual server code. +You can change the debug level in /proc/sys/net/ipv4/vs/debug\_level} \subparagraph{IPVS connection table size (the Nth power of 2)}$~$\\ CONFIG\_IP\_VS\_TAB\_BITS [=15] \textbf{[15]}\\ @@ -2754,14 +2914,14 @@ Durch die Verwendung einer großen IPVS"=Verbindungs"=Hashtabelle werden Konflik Hunderttausenden von Verbindungen in der Hashtabelle erheblich reduziert.\\ Beachten Sie, dass die Tabellengröße eine Potenz von 2 sein muss. Die Tabellengröße ist der Wert von 2~hoch der von Ihnen eingegebenen Zahl. Die zu wählende Zahl liegt zwischen 8 und 27 -für 64BIT (sonst 20), die Standardzahl ist 12, was eine Tabellengröße von 4096 bedeutet. +für \qty{64}{\bit} (sonst 20), die Standardzahl ist 12, was eine Tabellengröße von \num{4096} bedeutet. Geben Sie die Zahl nicht zu klein ein, sonst verlieren Sie Leistung. Sie können die Tabellengröße selbst anpassen, je nach Ihrer virtuellen Serveranwendung. Es ist gut, die Tabellengröße nicht viel kleiner als die Anzahl der Verbindungen pro Sekunde, multipliziert mit der durchschnittlichen Dauer der Verbindung in der Tabelle, festzulegen. Zum Beispiel, Ihr virtueller Server bekommt 200~Verbindungen pro Sekunde, die Verbindung dauert im Durchschnitt 200~Sekunden in der Verbindungstabelle, die Tabellengröße sollte nicht viel -kleiner als 200x200 sein, es ist gut, die Tabellengröße 32768 (2**15) zu setzen. +kleiner als 200x200 sein, es ist gut, die Tabellengröße auf \num{32768} (2**15) zu setzen. Ein weiterer Hinweis: Jede Verbindung belegt effektiv 128~Bytes und jeder Hash-Eintrag 8~Bytes, so dass Sie abschätzen können, wie viel Speicher für Ihre Box benötigt wird.\\ Sie können diese Zahl überschreiben, indem Sie den Modulparameter @@ -2770,6 +2930,22 @@ Kernel"=Befehlszeile anhängen, wenn IP VS integriert kompiliert wurde. Symbol: IP\_VS\_TAB\_BITS [=15]\\ Typ: Ganzzahl (integer)\\ Bereich (range): [8 27] +\english{The IPVS connection hash table uses the chaining scheme to handle hash collisions. +Using a big IPVS connection hash table will greatly reduce conflicts when there are hundreds of thousands of connections +in the hash table.\\ +Note the table size must be power of 2. +The table size will be the value of 2 to the your input number power. +The number to choose is from 8 to 27 for 64BIT(20 otherwise), the default number is 12, which means the table size is 4096. +Don't input the number too small, otherwise you will lose performance on it. +You can adapt the table size yourself, according to your virtual server application. +It is good to set the table size not far less than the number of connections per second multiplying average lasting time +of connection in the table. +For example, your virtual server gets 200~connections per second, the connection lasts for 200~seconds in average +in the connection table, the table size should be not far less than 200x200, it is good to set the table size 32768 (2**15).\\ +Another note that each connection occupies 128~bytes effectively and each hash entry uses 8 bytes, so you can estimate +how much memory is needed for your box.\\ +You can overwrite this number setting conn\_tab\_bits module parameter or by appending ip\_vs.conn\_tab\_bits=? to +the kernel command line if IP VS was compiled built-in.} \subparagraph*{*** IPVS transport protocol load balancing support ***}$~$\\ \textit{(Unterstützung des IPVS-Transportprotokolls für den Lastausgleich)} @@ -2778,26 +2954,33 @@ Bereich (range): [8 27] CONFIG\_IP\_VS\_PROTO\_TCP [=y] \textbf{[Y]}\\ Diese Option aktiviert die Unterstützung des TCP-Transportprotokolls für den Lastausgleich. Sagen Sie Y, wenn Sie unsicher sind. +\english{This option enables support for load balancing TCP transport protocol. Say Y if unsure.} \subparagraph{UDP load balancing support}$~$\\ CONFIG\_IP\_VS\_PROTO\_UDP [=y] \textbf{[Y]}\\ Diese Option aktiviert die Unterstützung des UDP-Transportprotokolls für den Lastausgleich. Sagen Sie Y, wenn Sie unsicher sind. +\english{This option enables support for load balancing UDP transport protocol. Say Y if unsure.} \subparagraph{ESP load balancing support}$~$\\ CONFIG\_IP\_VS\_PROTO\_ESP [=y] \textbf{[Y]}\\ Diese Option aktiviert die Unterstützung des Transportprotokolls ESP (Encapsulation Security Payload) für den Lastausgleich. Sagen Sie Y, wenn Sie unsicher sind. +\english{This option enables support for load balancing ESP (Encapsulation Security Payload) transport protocol. +Say Y if unsure.} \subparagraph{AH load balancing support}$~$\\ CONFIG\_IP\_VS\_PROTO\_AH [=y] \textbf{[Y]}\\ Diese Option aktiviert die Unterstützung für den Lastausgleich des AH (Authentication Header)"=Transportprotokolls. Sagen Sie Y, wenn Sie unsicher sind. +\english{This option enables support for load balancing AH (Authentication Header) transport protocol. +Say Y if unsure.} \subparagraph{SCTP load balancing support}$~$\\ CONFIG\_IP\_VS\_PROTO\_SCTP [=y] \textbf{[Y]}\\ Diese Option aktiviert die Unterstützung des SCTP-Transportprotokolls für den Lastausgleich. Sagen Sie Y, wenn Sie unsicher sind. +\english{This option enables support for load balancing SCTP transport protocol. Say Y if unsure.} \subparagraph*{*** IPVS scheduler ***}$~$\\ \textit{(IPVS-Scheduler/Zeitplaner)} @@ -2808,6 +2991,9 @@ Der Round-Robin-Scheduling-Algorithmus leitet die Netzverbindungen einfach nach Rotationsprinzip an verschiedene reale Server weiter. Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The robin-robin scheduling algorithm simply directs network connections to different real servers +in a round-robin manner.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{weighted round-robin scheduling}$~$\\ CONFIG\_IP\_VS\_WRR [=m] \textbf{[M]}\\ @@ -2818,6 +3004,11 @@ Gewichtung, und Server mit höherer Gewichtung erhalten mehr Verbindungen als so geringerer Gewichtung und Server mit gleicher Gewichtung erhalten gleiche Verbindungen. Wenn Sie es im Kernel kompilieren wollen, sagen Sie Y. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The weighted robin-robin scheduling algorithm directs network connections to different real servers +based on server weights in a round-robin manner. +Servers with higher weights receive new connections first than those with less weights, and servers with +higher weights get more connections than those with less weights and servers with equal weights get equal connections.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{least-connection scheduling}$~$\\ CONFIG\_IP\_VS\_LC [=m] \textbf{[M]}\\ @@ -2825,6 +3016,10 @@ Der Least-Connection-Scheduling-Algorithmus leitet Netzwerkverbindungen an den S mit der geringsten Anzahl aktiver Verbindungen weiter. Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The least-connection scheduling algorithm directs network connections to the server with the least number +of active connections.\\ +If you want to compile it in kernel, say Y. +To compile it as a module, choose M here. If unsure, say N.} \subparagraph{weighted least-connection scheduling}$~$\\ CONFIG\_IP\_VS\_WLC [=m] \textbf{[M]}\\ @@ -2832,6 +3027,9 @@ Der gewichtete Least-Connection-Scheduling-Algorithmus leitet die Netzwerkverbin dem Server mit den wenigsten aktiven Verbindungen, normalisiert durch das Servergewicht. Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The weighted least-connection scheduling algorithm directs network connections to the server +with the least active connections normalized by the server weight.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{weighted failover scheduling}$~$\\ CONFIG\_IP\_VS\_FO [=m] \textbf{[M]}\\ @@ -2839,6 +3037,9 @@ Der gewichtete Failover-Planungsalgorithmus leitet die Netzwerkverbindungen an d mit der höchsten Gewichtung, der gerade verfügbar ist. Wenn Sie ihn im Kernel kompilieren wollen, geben Sie Y an. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The weighted failover scheduling algorithm directs network connections to the server with the +highest weight that is currently available.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{weighted overflow scheduling}$~$\\ CONFIG\_IP\_VS\_OVF [=m] \textbf{[M]}\\ @@ -2847,6 +3048,9 @@ mit dem höchsten Gewicht, der gerade verfügbar ist, und geht zum nächsten üb aktiven Verbindungen das Gewicht des Knotens überschreiten. Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The weighted overflow scheduling algorithm directs network connections to the server with the highest weight +that is currently available and overflows to the next when active connections exceed the node's weight.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{locality-based least-connection scheduling}$~$\\ CONFIG\_IP\_VS\_LBLC [=m] \textbf{[M]}\\ @@ -2859,6 +3063,12 @@ sein Gewicht) und es einen Server mit halber Auslastung gibt, wird dieser IP"=Adresse der gewichtete Server mit der geringsten Verbindung zugewiesen. Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The locality-based least-connection scheduling algorithm is for destination IP load balancing. +It is usually used in cache cluster. +This algorithm usually directs packet destined for an IP address to its server if the server is alive and under load. +If the server is overloaded (its active connection numbers is larger than its weight) and there is a server in its +half load, then allocate the weighted least-connection server to this IP address.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{locality-based least-connection with replication scheduling}$~$\\ CONFIG\_IP\_VS\_LBLCR [=m] \textbf{[M]}\\ @@ -2874,6 +3084,16 @@ geändert wurde, wird der am stärksten belastete Knoten aus dem Serversatz entf ein hohes Maß an Replikation zu vermeiden. Wenn Sie es im Kernel kompilieren wollen, geben Sie Y an. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The locality-based least-connection with replication scheduling algorithm is also for destination IP load balancing. +It is usually used in cache cluster. +It differs from the LBLC scheduling as follows: +the load balancer maintains mappings from a target to a set of server nodes that can serve the target. +Requests for a target are assigned to the least-connection node in the target's server set. +If all the node in the server set are over loaded, it picks up a least-connection node in the cluster and adds it +in the sever set for the target. +If the server set has not been modified for the specified time, the most loaded node is removed from the server set, +in order to avoid high degree of replication.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{destination hashing scheduling}$~$\\ CONFIG\_IP\_VS\_DH [=m] \textbf{[M]}\\ @@ -2881,6 +3101,9 @@ Der Ziel-Hash-Scheduling-Algorithmus weist den Servern Netzwerkverbindungen zu, eine statisch zugewiesene Hash-Tabelle nach ihren Ziel-IP-Adressen durchsucht. Wenn Sie ihn im Kernel kompilieren wollen, geben Sie Y an. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The destination hashing scheduling algorithm assigns network connections to the servers through looking up +a statically assigned hash table by their destination IP addresses.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{source hashing scheduling}$~$\\ CONFIG\_IP\_VS\_SH [=m] \textbf{[M]}\\ @@ -2888,6 +3111,9 @@ Der Source-Hashing-Scheduling-Algorithmus weist den Servern Netzwerkverbindungen er eine statisch zugewiesene Hash-Tabelle nach ihren Quell-IP-Adressen durchsucht. Wenn Sie ihn im Kernel kompilieren wollen, geben Sie Y an. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The source hashing scheduling algorithm assigns network connections to the servers through looking up +a statically assigned hash table by their source IP addresses.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{maglev hashing scheduling}$~$\\ CONFIG\_IP\_VS\_MH [=m] \textbf{[M]}\\ @@ -2902,6 +3128,15 @@ Nachschlagetabelle. Wenn sich die Menge der Ziele ändert, wird eine Verbindung an dasselbe Ziel wie zuvor gesendet.\\ Wenn Sie es im Kernel kompilieren wollen, sagen Sie Y. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The maglev consistent hashing scheduling algorithm provides the Google's Maglev hashing algorithm as +a IPVS scheduler. +It assigns network connections to the servers through looking up a statically assigned special hash table called +the lookup table. +Maglev hashing is to assign a preference list of all the lookup table positions to each destination.\\ +Through this operation, The maglev hashing gives an almost equal share of the lookup table to each of the +destinations and provides minimal disruption by using the lookup table. +When the set of destinations changes, a connection will likely be sent to the same destination as it was before.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{shortest expected delay scheduling}$~$\\ CONFIG\_IP\_VS\_SED [=m] \textbf{[M]}\\ @@ -2912,6 +3147,11 @@ die Anzahl der Verbindungen auf dem i-ten Server und $U_i$ die feste Dienstrate i-ten Servers ist.\\ Wenn Sie es im Kernel kompilieren wollen, sagen Sie Y. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The shortest expected delay scheduling algorithm assigns network connections to the server with the shortest +expected delay. +The expected delay that the job will experience is (Ci + 1) / Ui if sent to the ith server, in which Ci is the number +of connections on the ith server and Ui is the fixed service rate (weight) of the ith server.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{never queue scheduling}$~$\\ CONFIG\_IP\_VS\_NQ [=m] \textbf{[M]}\\ @@ -2922,6 +3162,11 @@ Server verfügbar ist, wird der Auftrag an den Server geschickt, bei dem die erw am geringsten ist (Scheduling"=Algorithmus mit der kürzesten erwarteten Verzögerung).\\ Wenn Sie ihn im Kernel kompilieren wollen, geben Sie Y an. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The never queue scheduling algorithm adopts a two-speed model. +When there is an idle server available, the job will be sent to the idle server, instead of waiting for a fast one. +When there is no idle server available, the job will be sent to the server that minimize its expected delay +(The Shortest Expected Delay scheduling algorithm).\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{weighted random twos choice least-connection scheduling}$~$\\ CONFIG\_IP\_VS\_TWOS [=m] \textbf{[M]}\\ @@ -2930,6 +3175,9 @@ reale Server aus und leitet die Netzverbindungen zu dem Server mit den wenigsten normiert durch das Servergewicht.\\ Wenn Sie ihn im Kernel kompilieren wollen, sagen Sie Y. Um ihn als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{The weighted random twos choice least-connection scheduling algorithm picks two random real servers +and directs network connections to the server with the least active connections normalized by the server weight.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph*{*** IPVS SH scheduler ***}$~$\\ \textit{(IPVS-SH-Scheduler/Zeitplaner)} @@ -2940,10 +3188,15 @@ Der Quell-Hashing-Scheduler ordnet Quell-IPs den in einer Hash-Tabelle gespeiche Diese Tabelle wird für jedes Ziel so lange abgearbeitet, bis alle Plätze in der Tabelle gefüllt sind. Wenn Gewichte verwendet werden, damit die Ziele mehr Verbindungen erhalten können, wird die Tabelle proportional zu den angegebenen Gewichten gekachelt. Die Tabelle muss groß genug sein, um alle Ziele, -multipliziert mit ihren jeweiligen Gewichten, effektiv aufzunehmen. +multipliziert mit ihren jeweiligen Gewichten, effektiv aufzunehmen.\\ Symbol: IP\_VS\_SH\_TAB\_BITS [=8]\\ Typ: Ganzzahl (integer)\\ Bereich: [4 20] +\english{The source hashing scheduler maps source IPs to destinations stored in a hash table. +This table is tiled by each destination until all slots in the table are filled. +When using weights to allow destinations to receive more connections, the table is tiled +an amount proportional to the weights specified. +The table needs to be large enough to effectively fit all the destinations multiplied by their respective weights.} \subparagraph*{*** IPVS MH scheduler ***}$~$\\ \textit{(IPVS-MH-Scheduler/Zeitplaner)} @@ -2953,13 +3206,19 @@ CONFIG\_IP\_VS\_MH\_TAB\_INDEX [=12] \textbf{[12]}\\ Der Maglev-Hashing-Scheduler ordnet Quell-IPs Zielen zu, die in einer Hash-Tabelle gespeichert sind. Diese Tabelle wird durch eine Präferenzliste der Positionen jedem Ziel zugewiesen, bis alle Slots in der Tabelle gefüllt sind. Der Index bestimmt die Primzahl für die Größe der Tabelle: 251, 509, 1021, -2039, 4093, 8191, 16381, 32749, 65521 oder 131071. Bei der Verwendung von Gewichtungen, die es den +\num{2039}, \num{4093}, \num{8191}, \num{16381}, \num{32749}, \num{65521} oder \num{131071}. Bei der Verwendung von Gewichtungen, die es den Zielen ermöglichen, mehr Verbindungen zu erhalten, wird der Tabelle ein Betrag proportional zu den angegebenen Gewichtungen zugewiesen. Die Tabelle muss groß genug sein, um alle Ziele, multipliziert mit ihren jeweiligen Gewichtungen, effektiv aufzunehmen.\\ Symbol: IP\_VS\_MH\_TAB\_INDEX [=12]\\ Typ : Ganzzahl (integer)\\ Bereich : [8 17] +\english{The maglev hashing scheduler maps source IPs to destinations stored in a hash table. +This table is assigned by a preference list of the positions to each destination until all slots in the table are filled. +The index determines the prime for size of the table as 251, 509, 1021, 2039, 4093, 8191, 16381, 32749, 65521 or 131071. +When using weights to allow destinations to receive more connections, the table is assigned an amount +proportional to the weights specified. +The table needs to be large enough to effectively fit all the destinations multiplied by their respective weights.} \subparagraph*{*** IPVS application helper ***}$~$\\ \textit{(IPVS-Anwendungshilfe)} @@ -2973,15 +3232,23 @@ ein FTP-Protokollhelfer erforderlich ist, um die Verbindung zu verfolgen und sie virtuellen Dienstes zurückzuverwandeln.\\ Wenn Sie es im Kernel kompilieren wollen, sagen Sie Y. Um es als Modul zu kompilieren, wählen Sie hier M. Wenn Sie unsicher sind, sagen Sie N. +\english{FTP is a protocol that transfers IP address and/or port number in the payload. +In the virtual server via Network Address Translation, the IP address and port number of real servers cannot be sent +to clients in ftp connections directly, so FTP protocol helper is required for tracking the connection and mangling +it back to that of virtual service.\\ +If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N.} \subparagraph{Netfilter connection tracking}$~$\\ CONFIG\_IP\_VS\_NFCT [=y] \textbf{[Y]}\\ Durch die Unterstützung der Netfilter-Verbindungsverfolgung kann der IPVS-Verbindungsstatus zu Filterzwecken in das Netfilter-Framework exportiert werden. +\english{The Netfilter connection tracking support allows the IPVS connection state to be exported to the +Netfilter framework for filtering purposes.} \subparagraph{SIP persistence engine}$~$\\ CONFIG\_IP\_VS\_PE\_SIP [=m] \textbf{[M]}\\ Persistenz auf Basis der SIP Call-ID zulassen +\english{Allow persistence based on the SIP Call-ID} \paragraph{IP: Netfilter Configuration \texorpdfstring{$\rightarrow$}{->}}$~$\\ \textit{IP: Netzfilter-Konfiguration}