Commit ef56e622 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by David S. Miller

[NET] ip-sysctl.txt: Alphabetize.

Rearrange TCP entries in alpha order.
Signed-off-by: default avatarStephen Hemminger <shemminger@osdl.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 35bfbc94
...@@ -101,6 +101,11 @@ inet_peer_gc_maxtime - INTEGER ...@@ -101,6 +101,11 @@ inet_peer_gc_maxtime - INTEGER
TCP variables: TCP variables:
somaxconn - INTEGER
Limit of socket listen() backlog, known in userspace as SOMAXCONN.
Defaults to 128. See also tcp_max_syn_backlog for additional tuning
for TCP sockets.
tcp_abc - INTEGER tcp_abc - INTEGER
Controls Appropriate Byte Count (ABC) defined in RFC3465. Controls Appropriate Byte Count (ABC) defined in RFC3465.
ABC is a way of increasing congestion window (cwnd) more slowly ABC is a way of increasing congestion window (cwnd) more slowly
...@@ -112,48 +117,51 @@ tcp_abc - INTEGER ...@@ -112,48 +117,51 @@ tcp_abc - INTEGER
of two segments to compensate for delayed acknowledgments. of two segments to compensate for delayed acknowledgments.
Default: 0 (off) Default: 0 (off)
tcp_syn_retries - INTEGER tcp_abort_on_overflow - BOOLEAN
Number of times initial SYNs for an active TCP connection attempt If listening service is too slow to accept new connections,
will be retransmitted. Should not be higher than 255. Default value reset them. Default state is FALSE. It means that if overflow
is 5, which corresponds to ~180seconds. occurred due to a burst, connection will recover. Enable this
option _only_ if you are really sure that listening daemon
cannot be tuned to accept connections faster. Enabling this
option can harm clients of your server.
tcp_synack_retries - INTEGER tcp_adv_win_scale - INTEGER
Number of times SYNACKs for a passive TCP connection attempt will Count buffering overhead as bytes/2^tcp_adv_win_scale
be retransmitted. Should not be higher than 255. Default value (if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale),
is 5, which corresponds to ~180seconds. if it is <= 0.
Default: 2
tcp_keepalive_time - INTEGER tcp_allowed_congestion_control - STRING
How often TCP sends out keepalive messages when keepalive is enabled. Show/set the congestion control choices available to non-privileged
Default: 2hours. processes. The list is a subset of those listed in
tcp_available_congestion_control.
Default is "reno" and the default setting (tcp_congestion_control).
tcp_keepalive_probes - INTEGER tcp_app_win - INTEGER
How many keepalive probes TCP sends out, until it decides that the Reserve max(window/2^tcp_app_win, mss) of window for application
connection is broken. Default value: 9. buffer. Value 0 is special, it means that nothing is reserved.
Default: 31
tcp_keepalive_intvl - INTEGER tcp_available_congestion_control - STRING
How frequently the probes are send out. Multiplied by Shows the available congestion control choices that are registered.
tcp_keepalive_probes it is time to kill not responding connection, More congestion control algorithms may be available as modules,
after probes started. Default value: 75sec i.e. connection but not loaded.
will be aborted after ~11 minutes of retries.
tcp_retries1 - INTEGER tcp_congestion_control - STRING
How many times to retry before deciding that something is wrong Set the congestion control algorithm to be used for new
and it is necessary to report this suspicion to network layer. connections. The algorithm "reno" is always available, but
Minimal RFC value is 3, it is default, which corresponds additional choices may be available based on kernel configuration.
to ~3sec-8min depending on RTO. Default is set as part of kernel configuration.
tcp_retries2 - INTEGER tcp_dsack - BOOLEAN
How may times to retry before killing alive TCP connection. Allows TCP to send "duplicate" SACKs.
RFC1122 says that the limit should be longer than 100 sec.
It is too small number. Default value 15 corresponds to ~13-30min
depending on RTO.
tcp_orphan_retries - INTEGER tcp_ecn - BOOLEAN
How may times to retry before killing TCP connection, closed Enable Explicit Congestion Notification in TCP.
by our side. Default value 7 corresponds to ~50sec-16min
depending on RTO. If you machine is loaded WEB server, tcp_fack - BOOLEAN
you should think about lowering this value, such sockets Enable FACK congestion avoidance and fast retransmission.
may consume significant resources. Cf. tcp_max_orphans. The value is not used, if tcp_sack is not enabled.
tcp_fin_timeout - INTEGER tcp_fin_timeout - INTEGER
Time to hold socket in state FIN-WAIT-2, if it was closed Time to hold socket in state FIN-WAIT-2, if it was closed
...@@ -166,24 +174,33 @@ tcp_fin_timeout - INTEGER ...@@ -166,24 +174,33 @@ tcp_fin_timeout - INTEGER
because they eat maximum 1.5K of memory, but they tend because they eat maximum 1.5K of memory, but they tend
to live longer. Cf. tcp_max_orphans. to live longer. Cf. tcp_max_orphans.
tcp_max_tw_buckets - INTEGER tcp_frto - BOOLEAN
Maximal number of timewait sockets held by system simultaneously. Enables F-RTO, an enhanced recovery algorithm for TCP retransmission
If this number is exceeded time-wait socket is immediately destroyed timeouts. It is particularly beneficial in wireless environments
and warning is printed. This limit exists only to prevent where packet loss is typically due to random radio interference
simple DoS attacks, you _must_ not lower the limit artificially, rather than intermediate router congestion.
but rather increase it (probably, after increasing installed memory),
if network conditions require more than default value.
tcp_tw_recycle - BOOLEAN tcp_keepalive_time - INTEGER
Enable fast recycling TIME-WAIT sockets. Default value is 0. How often TCP sends out keepalive messages when keepalive is enabled.
It should not be changed without advice/request of technical Default: 2hours.
experts.
tcp_tw_reuse - BOOLEAN tcp_keepalive_probes - INTEGER
Allow to reuse TIME-WAIT sockets for new connections when it is How many keepalive probes TCP sends out, until it decides that the
safe from protocol viewpoint. Default value is 0. connection is broken. Default value: 9.
It should not be changed without advice/request of technical
experts. tcp_keepalive_intvl - INTEGER
How frequently the probes are send out. Multiplied by
tcp_keepalive_probes it is time to kill not responding connection,
after probes started. Default value: 75sec i.e. connection
will be aborted after ~11 minutes of retries.
tcp_low_latency - BOOLEAN
If set, the TCP stack makes decisions that prefer lower
latency as opposed to higher throughput. By default, this
option is not set meaning that higher throughput is preferred.
An example of an application where this default should be
changed would be a Beowulf compute cluster.
Default: 0
tcp_max_orphans - INTEGER tcp_max_orphans - INTEGER
Maximal number of TCP sockets not attached to any user file handle, Maximal number of TCP sockets not attached to any user file handle,
...@@ -197,41 +214,6 @@ tcp_max_orphans - INTEGER ...@@ -197,41 +214,6 @@ tcp_max_orphans - INTEGER
more aggressively. Let me to remind again: each orphan eats more aggressively. Let me to remind again: each orphan eats
up to ~64K of unswappable memory. up to ~64K of unswappable memory.
tcp_abort_on_overflow - BOOLEAN
If listening service is too slow to accept new connections,
reset them. Default state is FALSE. It means that if overflow
occurred due to a burst, connection will recover. Enable this
option _only_ if you are really sure that listening daemon
cannot be tuned to accept connections faster. Enabling this
option can harm clients of your server.
tcp_syncookies - BOOLEAN
Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
Send out syncookies when the syn backlog queue of a socket
overflows. This is to prevent against the common 'syn flood attack'
Default: FALSE
Note, that syncookies is fallback facility.
It MUST NOT be used to help highly loaded servers to stand
against legal connection rate. If you see synflood warnings
in your logs, but investigation shows that they occur
because of overload with legal connections, you should tune
another parameters until this warning disappear.
See: tcp_max_syn_backlog, tcp_synack_retries, tcp_abort_on_overflow.
syncookies seriously violate TCP protocol, do not allow
to use TCP extensions, can result in serious degradation
of some services (f.e. SMTP relaying), visible not by you,
but your clients and relays, contacting you. While you see
synflood warnings in logs not being really flooded, your server
is seriously misconfigured.
tcp_stdurg - BOOLEAN
Use the Host requirements interpretation of the TCP urg pointer field.
Most hosts use the older BSD interpretation, so if you turn this on
Linux might not communicate correctly with them.
Default: FALSE
tcp_max_syn_backlog - INTEGER tcp_max_syn_backlog - INTEGER
Maximal number of remembered connection requests, which are Maximal number of remembered connection requests, which are
still did not receive an acknowledgment from connecting client. still did not receive an acknowledgment from connecting client.
...@@ -239,24 +221,34 @@ tcp_max_syn_backlog - INTEGER ...@@ -239,24 +221,34 @@ tcp_max_syn_backlog - INTEGER
and 128 for low memory machines. If server suffers of overload, and 128 for low memory machines. If server suffers of overload,
try to increase this number. try to increase this number.
tcp_window_scaling - BOOLEAN tcp_max_tw_buckets - INTEGER
Enable window scaling as defined in RFC1323. Maximal number of timewait sockets held by system simultaneously.
If this number is exceeded time-wait socket is immediately destroyed
and warning is printed. This limit exists only to prevent
simple DoS attacks, you _must_ not lower the limit artificially,
but rather increase it (probably, after increasing installed memory),
if network conditions require more than default value.
tcp_timestamps - BOOLEAN tcp_mem - vector of 3 INTEGERs: min, pressure, max
Enable timestamps as defined in RFC1323. min: below this number of pages TCP is not bothered about its
memory appetite.
tcp_sack - BOOLEAN pressure: when amount of memory allocated by TCP exceeds this number
Enable select acknowledgments (SACKS). of pages, TCP moderates its memory consumption and enters memory
pressure mode, which is exited when memory consumption falls
under "min".
tcp_fack - BOOLEAN max: number of pages allowed for queueing by all TCP sockets.
Enable FACK congestion avoidance and fast retransmission.
The value is not used, if tcp_sack is not enabled.
tcp_dsack - BOOLEAN Defaults are calculated at boot time from amount of available
Allows TCP to send "duplicate" SACKs. memory.
tcp_ecn - BOOLEAN tcp_orphan_retries - INTEGER
Enable Explicit Congestion Notification in TCP. How may times to retry before killing TCP connection, closed
by our side. Default value 7 corresponds to ~50sec-16min
depending on RTO. If you machine is loaded WEB server,
you should think about lowering this value, such sockets
may consume significant resources. Cf. tcp_max_orphans.
tcp_reordering - INTEGER tcp_reordering - INTEGER
Maximal reordering of packets in a TCP stream. Maximal reordering of packets in a TCP stream.
...@@ -267,20 +259,23 @@ tcp_retrans_collapse - BOOLEAN ...@@ -267,20 +259,23 @@ tcp_retrans_collapse - BOOLEAN
On retransmit try to send bigger packets to work around bugs in On retransmit try to send bigger packets to work around bugs in
certain TCP stacks. certain TCP stacks.
tcp_wmem - vector of 3 INTEGERs: min, default, max tcp_retries1 - INTEGER
min: Amount of memory reserved for send buffers for TCP socket. How many times to retry before deciding that something is wrong
Each TCP socket has rights to use it due to fact of its birth. and it is necessary to report this suspicion to network layer.
Default: 4K Minimal RFC value is 3, it is default, which corresponds
to ~3sec-8min depending on RTO.
default: Amount of memory allowed for send buffers for TCP socket tcp_retries2 - INTEGER
by default. This value overrides net.core.wmem_default used How may times to retry before killing alive TCP connection.
by other protocols, it is usually lower than net.core.wmem_default. RFC1122 says that the limit should be longer than 100 sec.
Default: 16K It is too small number. Default value 15 corresponds to ~13-30min
depending on RTO.
max: Maximal amount of memory allowed for automatically selected tcp_rfc1337 - BOOLEAN
send buffers for TCP socket. This value does not override If set, the TCP stack behaves conforming to RFC1337. If unset,
net.core.wmem_max, "static" selection via SO_SNDBUF does not use this. we are not conforming to RFC, but prevent TCP TIME_WAIT
Default: 128K assassination.
Default: 0
tcp_rmem - vector of 3 INTEGERs: min, default, max tcp_rmem - vector of 3 INTEGERs: min, default, max
min: Minimal size of receive buffer used by TCP sockets. min: Minimal size of receive buffer used by TCP sockets.
...@@ -299,44 +294,55 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max ...@@ -299,44 +294,55 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
net.core.rmem_max, "static" selection via SO_RCVBUF does not use this. net.core.rmem_max, "static" selection via SO_RCVBUF does not use this.
Default: 87380*2 bytes. Default: 87380*2 bytes.
tcp_mem - vector of 3 INTEGERs: min, pressure, max tcp_sack - BOOLEAN
min: below this number of pages TCP is not bothered about its Enable select acknowledgments (SACKS).
memory appetite.
pressure: when amount of memory allocated by TCP exceeds this number tcp_slow_start_after_idle - BOOLEAN
of pages, TCP moderates its memory consumption and enters memory If set, provide RFC2861 behavior and time out the congestion
pressure mode, which is exited when memory consumption falls window after an idle period. An idle period is defined at
under "min". the current RTO. If unset, the congestion window will not
be timed out after an idle period.
Default: 1
max: number of pages allowed for queueing by all TCP sockets. tcp_stdurg - BOOLEAN
Use the Host requirements interpretation of the TCP urg pointer field.
Most hosts use the older BSD interpretation, so if you turn this on
Linux might not communicate correctly with them.
Default: FALSE
Defaults are calculated at boot time from amount of available tcp_synack_retries - INTEGER
memory. Number of times SYNACKs for a passive TCP connection attempt will
be retransmitted. Should not be higher than 255. Default value
is 5, which corresponds to ~180seconds.
tcp_app_win - INTEGER tcp_syncookies - BOOLEAN
Reserve max(window/2^tcp_app_win, mss) of window for application Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
buffer. Value 0 is special, it means that nothing is reserved. Send out syncookies when the syn backlog queue of a socket
Default: 31 overflows. This is to prevent against the common 'syn flood attack'
Default: FALSE
tcp_adv_win_scale - INTEGER Note, that syncookies is fallback facility.
Count buffering overhead as bytes/2^tcp_adv_win_scale It MUST NOT be used to help highly loaded servers to stand
(if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale), against legal connection rate. If you see synflood warnings
if it is <= 0. in your logs, but investigation shows that they occur
Default: 2 because of overload with legal connections, you should tune
another parameters until this warning disappear.
See: tcp_max_syn_backlog, tcp_synack_retries, tcp_abort_on_overflow.
tcp_rfc1337 - BOOLEAN syncookies seriously violate TCP protocol, do not allow
If set, the TCP stack behaves conforming to RFC1337. If unset, to use TCP extensions, can result in serious degradation
we are not conforming to RFC, but prevent TCP TIME_WAIT of some services (f.e. SMTP relaying), visible not by you,
assassination. but your clients and relays, contacting you. While you see
Default: 0 synflood warnings in logs not being really flooded, your server
is seriously misconfigured.
tcp_low_latency - BOOLEAN tcp_syn_retries - INTEGER
If set, the TCP stack makes decisions that prefer lower Number of times initial SYNs for an active TCP connection attempt
latency as opposed to higher throughput. By default, this will be retransmitted. Should not be higher than 255. Default value
option is not set meaning that higher throughput is preferred. is 5, which corresponds to ~180seconds.
An example of an application where this default should be
changed would be a Beowulf compute cluster. tcp_timestamps - BOOLEAN
Default: 0 Enable timestamps as defined in RFC1323.
tcp_tso_win_divisor - INTEGER tcp_tso_win_divisor - INTEGER
This allows control over what percentage of the congestion window This allows control over what percentage of the congestion window
...@@ -345,33 +351,34 @@ tcp_tso_win_divisor - INTEGER ...@@ -345,33 +351,34 @@ tcp_tso_win_divisor - INTEGER
building larger TSO frames. building larger TSO frames.
Default: 3 Default: 3
tcp_frto - BOOLEAN tcp_tw_recycle - BOOLEAN
Enables F-RTO, an enhanced recovery algorithm for TCP retransmission Enable fast recycling TIME-WAIT sockets. Default value is 0.
timeouts. It is particularly beneficial in wireless environments It should not be changed without advice/request of technical
where packet loss is typically due to random radio interference experts.
rather than intermediate router congestion.
tcp_allowed_congestion_control - STRING tcp_tw_reuse - BOOLEAN
Show/set the congestion control choices available to non-privileged Allow to reuse TIME-WAIT sockets for new connections when it is
processes. The list is a subset of those listed in safe from protocol viewpoint. Default value is 0.
tcp_available_congestion_control. It should not be changed without advice/request of technical
Default is "reno" and the default setting (tcp_congestion_control). experts.
tcp_available_congestion_control - STRING tcp_window_scaling - BOOLEAN
Shows the available congestion control choices that are registered. Enable window scaling as defined in RFC1323.
More congestion control algorithms may be available as modules,
but not loaded.
tcp_congestion_control - STRING tcp_wmem - vector of 3 INTEGERs: min, default, max
Set the congestion control algorithm to be used for new min: Amount of memory reserved for send buffers for TCP socket.
connections. The algorithm "reno" is always available, but Each TCP socket has rights to use it due to fact of its birth.
additional choices may be available based on kernel configuration. Default: 4K
Default is set as part of kernel configuration.
somaxconn - INTEGER default: Amount of memory allowed for send buffers for TCP socket
Limit of socket listen() backlog, known in userspace as SOMAXCONN. by default. This value overrides net.core.wmem_default used
Defaults to 128. See also tcp_max_syn_backlog for additional tuning by other protocols, it is usually lower than net.core.wmem_default.
for TCP sockets. Default: 16K
max: Maximal amount of memory allowed for automatically selected
send buffers for TCP socket. This value does not override
net.core.wmem_max, "static" selection via SO_SNDBUF does not use this.
Default: 128K
tcp_workaround_signed_windows - BOOLEAN tcp_workaround_signed_windows - BOOLEAN
If set, assume no receipt of a window scaling option means the If set, assume no receipt of a window scaling option means the
...@@ -380,13 +387,6 @@ tcp_workaround_signed_windows - BOOLEAN ...@@ -380,13 +387,6 @@ tcp_workaround_signed_windows - BOOLEAN
not receive a window scaling option from them. not receive a window scaling option from them.
Default: 0 Default: 0
tcp_slow_start_after_idle - BOOLEAN
If set, provide RFC2861 behavior and time out the congestion
window after an idle period. An idle period is defined at
the current RTO. If unset, the congestion window will not
be timed out after an idle period.
Default: 1
CIPSOv4 Variables: CIPSOv4 Variables:
cipso_cache_enable - BOOLEAN cipso_cache_enable - BOOLEAN
...@@ -986,4 +986,3 @@ no_cong_thresh FIXME ...@@ -986,4 +986,3 @@ no_cong_thresh FIXME
slot_timeout FIXME slot_timeout FIXME
warn_noreply_time FIXME warn_noreply_time FIXME
$Id: ip-sysctl.txt,v 1.20 2001/12/13 09:00:18 davem Exp $
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment