ltm rule command TCP congestion
iRule(1) BIG-IP TMSH Manual iRule(1)
TCP::congestion
Sets the TCP congestion control algorithm.
SYNOPSIS
TCP::congestion (none |
reno |
newreno |
highspeed |
scalable |
vegas |
cdg |
chd |
illinois |
woodside |
cubic |
westwood |
bbr)?
DESCRIPTION
Changes the TCP congestion control algorithm and initializes any state variables unique to the new algorithm.
Syntax
TCP::congestion []
TCP::congestion
* Specifies that the system does not use a network-congestion-control
mechanism, even when congestion occurs.
TCP::congestion
* Specifies that the system uses an implementation of the TCP Fast
Recovery algorithm, which is based on the implementation in the BSD
Reno release.
TCP::congestion
* Specifies that the system uses a modification to the Reno algorithm
that responds to partial acknowledgements when SACKs are
unavailable.
TCP::congestion
* Specifies that the system uses a more aggressive, loss-based
algorithm.
TCP::congestion
* Specifies that the system uses a TCP algorithm modification that
adds a scalable, delay-based and loss-based component into the Reno
algorithm.
TCP::congestion
* Specifies that the system uses a TCP algorithm modification that
adds a delay-based and loss-based component into the Reno
algorithm.
TCP::congestion
* Specifies that the system uses a delay based TCP that senses onset
of congestion by variations in round trip time (RTT).
TCP::congestion
* Specifies that the system uses a TCP algorithm that aims to keep
network queuing delays below a particular threshold
(queue_threshold) and decides to reduce the congestion window
(cwnd) probabilistically based on its estimate of the network
queuing delay.
TCP::congestion
* Specifies that the system uses a TCP algorithm that is especially
targeted at high-speed, long-distance networks.
TCP::congestion
* Specifies that the system uses a TCP algorithm that is especially
targeted at high-speed, long-distance networks with enhanced
congestion recovery.
TCP::congestion
* Specifies that the system uses a TCP algorithm that is optimized
for high bandwidth, high delay networks.
TCP::congestion
* Specifies that the system uses a TCP algorithm based on a bandwidth
estimation metric.
TCP::congestion
* Specifies that the system uses an implementation of the BBR
congestion control algorithm, which uses connection's maximum
delivery rate (bottleneck bandwidth) and minimum round trip time
to avoid growing buffers and path delay.
RETURN VALUE
TCP::congestion returns the current congestion control algorithm.
VALID DURING
ANY_EVENT
EXAMPLES
when SERVER_CONNECTED {
log local0. "Client: [client_addr]:[client_port] - Server: [server_addr]:[server_port]."
# Set client-side congestion control to Woodside.
clientside {
log local0. "Client: congestion [TCP::congestion] to woodside"
TCP::congestion woodside
}
# Set server-side congestion control to High-Speed.
serverside {
log local0. "Server: congestion [TCP::congestion] to highspeed"
TCP::congestion highspeed
}
}
HINTS
SEE ALSO
CHANGE LOG
@BIGIP-11.6.0 --First introduced the command. @BIGIP-13.0.0 --Calling with no arguments gets the current
value. @BIGIP-14.1.0 --Added "bbr" option.
BIG-IP 2020-06-23 iRule(1)