net: Documentation: RFC 2553bis is now RFC 3493
[linux-2.6.git] / Documentation / networking / ip-sysctl.txt
index fe95105..8154699 100644 (file)
@@ -11,7 +11,9 @@ ip_forward - BOOLEAN
        for routers)
 
 ip_default_ttl - INTEGER
-       default 64
+       Default value of TTL field (Time To Live) for outgoing (but not
+       forwarded) IP packets. Should be between 1 and 255 inclusive.
+       Default: 64 (as recommended by RFC1700)
 
 ip_no_pmtu_disc - BOOLEAN
        Disable Path MTU Discovery.
@@ -104,16 +106,6 @@ inet_peer_maxttl - INTEGER
        when the number of entries in the pool is very small).
        Measured in seconds.
 
-inet_peer_gc_mintime - INTEGER
-       Minimum interval between garbage collection passes.  This interval is
-       in effect under high memory pressure on the pool.
-       Measured in seconds.
-
-inet_peer_gc_maxtime - INTEGER
-       Minimum interval between garbage collection passes.  This interval is
-       in effect under low (or absent) memory pressure on the pool.
-       Measured in seconds.
-
 TCP variables:
 
 somaxconn - INTEGER
@@ -144,6 +136,7 @@ tcp_adv_win_scale - INTEGER
        Count buffering overhead as bytes/2^tcp_adv_win_scale
        (if tcp_adv_win_scale > 0) or bytes-bytes/2^(-tcp_adv_win_scale),
        if it is <= 0.
+       Possible values are [-31, 31], inclusive.
        Default: 2
 
 tcp_allowed_congestion_control - STRING
@@ -184,7 +177,7 @@ tcp_cookie_size - INTEGER
 tcp_dsack - BOOLEAN
        Allows TCP to send "duplicate" SACKs.
 
-tcp_ecn - BOOLEAN
+tcp_ecn - INTEGER
        Enable Explicit Congestion Notification (ECN) in TCP. ECN is only
        used when both ends of the TCP flow support it. It is useful to
        avoid losses due to congestion (when the bottleneck router supports
@@ -277,6 +270,17 @@ tcp_max_orphans - INTEGER
        more aggressively. Let me to remind again: each orphan eats
        up to ~64K of unswappable memory.
 
+tcp_max_ssthresh - INTEGER
+       Limited Slow-Start for TCP with large congestion windows (cwnd) defined in
+       RFC3742. Limited slow-start is a mechanism to limit growth of the cwnd
+       on the region where cwnd is larger than tcp_max_ssthresh. TCP increases cwnd
+       by at most tcp_max_ssthresh segments, and by at least tcp_max_ssthresh/2
+       segments per RTT when the cwnd is above tcp_max_ssthresh.
+       If TCP connection increased cwnd to thousands (or tens of thousands) segments,
+       and thousands of packets were being dropped during slow-start, you can set
+       tcp_max_ssthresh to improve performance for new TCP connection.
+       Default: 0 (off)
+
 tcp_max_syn_backlog - INTEGER
        Maximal number of remembered connection requests, which are
        still did not receive an acknowledgment from connecting client.
@@ -332,7 +336,7 @@ tcp_orphan_retries - INTEGER
        when RTO retransmissions remain unacknowledged.
        See tcp_retries2 for more details.
 
-       The default value is 7.
+       The default value is 8.
        If your machine is a loaded WEB server,
        you should think about lowering this value, such sockets
        may consume significant resources. Cf. tcp_max_orphans.
@@ -380,7 +384,7 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
        min: Minimal size of receive buffer used by TCP sockets.
        It is guaranteed to each TCP socket, even under moderate memory
        pressure.
-       Default: 8K
+       Default: 1 page
 
        default: initial size of receive buffer used by TCP sockets.
        This value overrides net.core.rmem_default used by other protocols.
@@ -469,7 +473,7 @@ tcp_window_scaling - BOOLEAN
 tcp_wmem - vector of 3 INTEGERs: min, default, max
        min: Amount of memory reserved for send buffers for TCP sockets.
        Each TCP socket has rights to use it due to fact of its birth.
-       Default: 4K
+       Default: 1 page
 
        default: initial size of send buffer used by TCP sockets.  This
        value overrides net.core.wmem_default used by other protocols.
@@ -539,13 +543,13 @@ udp_rmem_min - INTEGER
        Minimal size of receive buffer used by UDP sockets in moderation.
        Each UDP socket is able to use the size for receiving data, even if
        total pages of UDP sockets exceed udp_mem pressure. The unit is byte.
-       Default: 4096
+       Default: 1 page
 
 udp_wmem_min - INTEGER
        Minimal size of send buffer used by UDP sockets in moderation.
        Each UDP socket is able to use the size for sending data, even if
        total pages of UDP sockets exceed udp_mem pressure. The unit is byte.
-       Default: 4096
+       Default: 1 page
 
 CIPSOv4 Variables:
 
@@ -707,10 +711,28 @@ igmp_max_memberships - INTEGER
        Change the maximum number of multicast groups we can subscribe to.
        Default: 20
 
-conf/interface/*  changes special settings per interface (where "interface" is
-                 the name of your network interface)
-conf/all/*       is special, changes the settings for all interfaces
+       Theoretical maximum value is bounded by having to send a membership
+       report in a single datagram (i.e. the report can't span multiple
+       datagrams, or risk confusing the switch and leaving groups you don't
+       intend to).
 
+       The number of supported groups 'M' is bounded by the number of group
+       report entries you can fit into a single datagram of 65535 bytes.
+
+       M = 65536-sizeof (ip header)/(sizeof(Group record))
+
+       Group records are variable length, with a minimum of 12 bytes.
+       So net.ipv4.igmp_max_memberships should not be set higher than:
+
+       (65536-24) / 12 = 5459
+
+       The value 5459 assumes no IP header options, so in practice
+       this number may be lower.
+
+       conf/interface/*  changes special settings per interface (where
+       "interface" is the name of your network interface)
+
+       conf/all/*        is special, changes the settings for all interfaces
 
 log_martians - BOOLEAN
        Log packets with impossible addresses to kernel log.
@@ -970,7 +992,7 @@ bindv6only - BOOLEAN
                TRUE: disable IPv4-mapped address feature
                FALSE: enable IPv4-mapped address feature
 
-       Default: FALSE (as specified in RFC2553bis)
+       Default: FALSE (as specified in RFC3493)
 
 IPv6 Fragmentation:
 
@@ -1433,10 +1455,17 @@ sctp_mem - vector of 3 INTEGERs: min, pressure, max
        Default is calculated at boot time from amount of available memory.
 
 sctp_rmem - vector of 3 INTEGERs: min, default, max
-       See tcp_rmem for a description.
+       Only the first value ("min") is used, "default" and "max" are
+       ignored.
+
+       min: Minimal size of receive buffer used by SCTP socket.
+       It is guaranteed to each SCTP socket (but not association) even
+       under moderate memory pressure.
+
+       Default: 1 page
 
 sctp_wmem  - vector of 3 INTEGERs: min, default, max
-       See tcp_wmem for a description.
+       Currently this tunable has no effect.
 
 addr_scope_policy - INTEGER
        Control IPv4 address scoping - draft-stewart-tsvwg-sctp-ipv4-00