расширенные общие приложения (CAKE) (Common Applications Kept Enhanced (CAKE))
FLOW ISOLATION PARAMETERS
With flow isolation enabled, CAKE places packets from different
flows into different queues, each of which carries its own AQM
state. Packets from each queue are then delivered fairly,
according to a DRR++ algorithm which minimizes latency for
"sparse" flows. CAKE uses a set-associative hashing algorithm to
minimize flow collisions.
These keywords specify whether fairness based on source address,
destination address, individual flows, or any combination of
those is desired.
flowblind
Disables flow isolation; all traffic passes through a single
queue for each tin.
srchost
Flows are defined only by source address. Could be useful
on the egress path of an ISP backhaul.
dsthost
Flows are defined only by destination address. Could be
useful on the ingress path of an ISP backhaul.
hosts
Flows are defined by source-destination host pairs. This is
host isolation, rather than flow isolation.
flows
Flows are defined by the entire 5-tuple of source address,
destination address, transport protocol, source port and
destination port. This is the type of flow isolation performed
by SFQ and fq_codel.
dual-srchost
Flows are defined by the 5-tuple, and fairness is applied
first over source addresses, then over individual flows. Good
for use on egress traffic from a LAN to the internet, where it'll
prevent any one LAN host from monopolising the uplink, regardless
of the number of flows they use.
dual-dsthost
Flows are defined by the 5-tuple, and fairness is applied
first over destination addresses, then over individual flows.
Good for use on ingress traffic to a LAN from the internet, where
it'll prevent any one LAN host from monopolising the downlink,
regardless of the number of flows they use.
triple-isolate
(default)
Flows are defined by the 5-tuple, and fairness is applied
over source *and* destination addresses intelligently (ie. not
merely by host-pairs), and also over individual flows. Use this
if you're not certain whether to use dual-srchost or dual-
dsthost; it'll do both jobs at once, preventing any one host on
*either* side of the link from monopolising it with a large
number of flows.
nat
Instructs Cake to perform a NAT lookup before applying flow-
isolation rules, to determine the true addresses and port numbers
of the packet, to improve fairness between hosts "inside" the
NAT. This has no practical effect in "flowblind" or "flows"
modes, or if NAT is performed on a different host.
nonat
(default)
Cake will not perform a NAT lookup. Flow isolation will be
performed using the addresses and port numbers directly visible
to the interface Cake is attached to.