Changeset View
Changeset View
Standalone View
Standalone View
share/man/man4/tcp.4
Show All 28 Lines | |||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||
.\" SUCH DAMAGE. | .\" SUCH DAMAGE. | ||||
.\" | .\" | ||||
.\" From: @(#)tcp.4 8.1 (Berkeley) 6/5/93 | .\" From: @(#)tcp.4 8.1 (Berkeley) 6/5/93 | ||||
.\" $FreeBSD$ | .\" $FreeBSD$ | ||||
.\" | .\" | ||||
.Dd February 13, 2021 | .Dd April 8, 2021 | ||||
.Dt TCP 4 | .Dt TCP 4 | ||||
.Os | .Os | ||||
.Sh NAME | .Sh NAME | ||||
.Nm tcp | .Nm tcp | ||||
.Nd Internet Transmission Control Protocol | .Nd Internet Transmission Control Protocol | ||||
.Sh SYNOPSIS | .Sh SYNOPSIS | ||||
.In sys/types.h | .In sys/types.h | ||||
.In sys/socket.h | .In sys/socket.h | ||||
▲ Show 20 Lines • Show All 577 Lines • ▼ Show 20 Lines | |||||
.Tn TCP | .Tn TCP | ||||
.Dv FIN_WAIT_2 | .Dv FIN_WAIT_2 | ||||
connections. | connections. | ||||
Defaults to 60 seconds. | Defaults to 60 seconds. | ||||
.It Va ecn.enable | .It Va ecn.enable | ||||
Enable support for TCP Explicit Congestion Notification (ECN). | Enable support for TCP Explicit Congestion Notification (ECN). | ||||
ECN allows a TCP sender to reduce the transmission rate in order to | ECN allows a TCP sender to reduce the transmission rate in order to | ||||
avoid packet drops. | avoid packet drops. | ||||
Settings: | |||||
.Bl -tag -compact | .Bl -tag -compact | ||||
.It 0 | .It 0 | ||||
Disable ECN. | Disable ECN. | ||||
.It 1 | .It 1 | ||||
Allow incoming connections to request ECN. | Allow incoming connections to request ECN. | ||||
Outgoing connections will request ECN. | Outgoing connections will request ECN. | ||||
.It 2 | .It 2 | ||||
Allow incoming connections to request ECN. | Allow incoming connections to request ECN. | ||||
Outgoing connections will not request ECN. | Outgoing connections will not request ECN. | ||||
(default) | |||||
.El | .El | ||||
.It Va ecn.maxretries | .It Va ecn.maxretries | ||||
Number of retries (SYN or SYN/ACK retransmits) before disabling ECN on a | Number of retries (SYN or SYN/ACK retransmits) before disabling ECN on a | ||||
specific connection. | specific connection. | ||||
This is needed to help with connection establishment | This is needed to help with connection establishment | ||||
when a broken firewall is in the network path. | when a broken firewall is in the network path. | ||||
.It Va pmtud_blackhole_detection | .It Va pmtud_blackhole_detection | ||||
Enable automatic path MTU blackhole detection. | Enable automatic path MTU blackhole detection. | ||||
Show All 20 Lines | |||||
Enable path MTU blackhole detection only for IPv4. | Enable path MTU blackhole detection only for IPv4. | ||||
.It 3 | .It 3 | ||||
Enable path MTU blackhole detection only for IPv6. | Enable path MTU blackhole detection only for IPv6. | ||||
.El | .El | ||||
.It Va pmtud_blackhole_mss | .It Va pmtud_blackhole_mss | ||||
MSS to try for IPv4 if PMTU blackhole detection is turned on. | MSS to try for IPv4 if PMTU blackhole detection is turned on. | ||||
.It Va v6pmtud_blackhole_mss | .It Va v6pmtud_blackhole_mss | ||||
MSS to try for IPv6 if PMTU blackhole detection is turned on. | MSS to try for IPv6 if PMTU blackhole detection is turned on. | ||||
.It Va hostcache.enable | |||||
The TCP host cache is used to cache connection details and metrics to | |||||
improve future performance of connections between the same hosts. | |||||
At the completion of a TCP connection, a host will cache information | |||||
for the connection for some defined period of time. | |||||
.Bl -tag -compact | |||||
.It 0 | |||||
Disable the host cache. | |||||
.It 1 | |||||
Enable the host cache. (default) | |||||
.It Va hostcache.purgenow | |||||
Immediately purge all entries once set to any value. | |||||
Setting this to 2 will also reseed the hash salt. | |||||
.It Va hostcache.purge | |||||
Expire all entires on next pruning of host cache entries. | |||||
Any non-zero setting will be reset to zero, once the pruge | |||||
is running. | |||||
.Bl -tag -compact | |||||
.It 0 | |||||
Do not purge all entries when pruning the host cache. (default) | |||||
.It 1 | |||||
Purge all entries when doing the next pruning. | |||||
.It 2 | |||||
Purge all entries, and also reseed the hash salt. | |||||
.It Va hostcache.prune | |||||
Time in seconds between pruning expired host cache entries. | |||||
Defaults to 300 (5 minutes). | |||||
.It Va hostcache.expire | |||||
Time in seconds, how long a entry should be kept in the | |||||
host cache since last accessed. | |||||
Defaults to 3600 (1 hour). | |||||
.It Va hostcache.count | |||||
The current number of entries in the host cache. | |||||
.It Va hostcache.bucketlimit | |||||
The maximum number of entries for the same hash. | |||||
Defaults to 30. | |||||
.It Va hostcache.hashsize | |||||
Size of TCP hostcache hashtable. | |||||
This number has to be a power of two, or will be rejected. | |||||
Defaults to 512. | |||||
.It Va hostcache.cachelimit | |||||
Overall entry limit for hostcache. | |||||
Defaults to hashsize * bucketlimit. | |||||
.It Va hostcache.histo | |||||
Provide a Histogram of the hostcache hash utilization. | |||||
.It Va hostcache.list | |||||
Provide a complete list of all current entries in the host | |||||
cache. | |||||
.It Va functions_available | .It Va functions_available | ||||
List of available TCP function blocks (TCP stacks). | List of available TCP function blocks (TCP stacks). | ||||
.It Va functions_default | .It Va functions_default | ||||
The default TCP function block (TCP stack). | The default TCP function block (TCP stack). | ||||
.It Va functions_inherit_listen_socket_stack | .It Va functions_inherit_listen_socket_stack | ||||
Determines whether to inherit listen socket's tcp stack or use the current | Determines whether to inherit listen socket's tcp stack or use the current | ||||
system default tcp stack, as defined by | system default tcp stack, as defined by | ||||
.Va functions_default . | .Va functions_default . | ||||
▲ Show 20 Lines • Show All 115 Lines • Show Last 20 Lines |