指定非直接连接的主机的 TCP 延迟确认 (acknowledgment, ACK) 计时器的超时值。
请参阅 RFC 1122 中的第 4.2.3.2 节。
100 毫秒
1 毫秒到 1 分钟
是
请勿将此值增大到多于 500 毫秒。
在以下情况下应增大此值:
网络链接速度较慢(小于 57.6 Kbps),并且最大段大小 (maximum segment size, MSS) 大于 512 字节
接收多个 TCP 段的间隔很短
不稳定
指定直接连接的主机的 TCP 延迟确认 (acknowledgment, ACK) 计时器的超时值。
请参阅 RFC 1122 中的第 4.2.3.2 节。
50 毫秒
1 毫秒到 1 分钟
是
请勿将此值增大到多于 500 毫秒。
在以下情况下应增大此值:
网络链接速度较慢(小于 57.6 Kbps),并且最大段大小 (maximum segment size, MSS) 大于 512 字节
接收多个 TCP 段的间隔很短
不稳定
指定在生成确认 (acknowledgment, ACK) 之前从非直接连接的远程目标接收的最大TCP 段数。TCP 段以单个连接的最大段大小 (maximum segment size, MSS) 为单位。如果设置为 0 或 1,则不延迟 ACK(假设所有段的长度均为 1 MSS)。将动态计算每个连接的实际数量。此值为缺省的最大值。
2
0 到 16
是
请勿更改此值。在某些情况下,如由于 ACK 延迟致使网络通信流量突然变高时,请减小此值。但不要将此值减小到 2 以下。
不稳定
指定在生成确认 (acknowledgment, ACK) 之前从直接连接的目标接收的最大 TCP 段数。TCP 段以单个连接的最大段大小 (maximum segment size, MSS) 为单位。如果设置为 0 或 1,则表示 ACK 不会发生延迟(假设所有段的长度均为 1 MSS)。将动态计算每个连接的实际数量。此值为缺省的最大值。
8
0 到 16
是
请勿更改此值。在某些情况下,如由于 ACK 延迟致使网络通信流量突然变高时,请减小此值。但不要将此值减小到 2 以下。
不稳定
当启用此参数(为缺省设置)时,TCP 始终发送带有窗口缩放比例选项的 SYN 段,即使窗口缩放比例选项值为 0 时也是如此。请注意,如果 TCP 收到带有窗口缩放比例选项的 SYN 段,则即使禁用了此参数,TCP 也会使用带有窗口缩放比例选项的 SYN 段进行响应。此外,应根据接收窗口大小设置此选项值。
请参阅 RFC 1323 以了解窗口缩放比例选项。
1(启用)
0(禁用)或 1(启用)
是
如果与不支持窗口缩放比例选项的旧版 TCP 协议栈之间存在互操作性问题,则禁用此参数。
不稳定
有关信息,请参见tcp_wscale_always(Solaris 9 发行版)。
如果设置为 1,则 TCP 将始终发送带有时间标记选项的 SYN 段。请注意,如果 TCP 收到带有时间标记选项的 SYN 段,则即使此参数设置为 0,TCP 也会使用带有时间标记的 SYN 段进行响应。
0(禁用)
0(禁用)或 1(启用)
是
如果难以准确测量往返时间 (round-trip time, RTT) 并且可能出现 TCP 序列号回绕问题,则启用此参数。
请参阅 RFC 1323 以了解有关要启用此选项的更多理由。
不稳定
定义缺省的发送窗口大小(以字节为单位)。有关针对每个路由设置不同值的介绍,请参阅每路由度量标准。另请参见tcp_max_buf。
49,152
4096 到 1,073,741,824
是
应用程序可以使用 setsockopt(3XNET) SO_SNDBUF 来更改单个连接的发送缓冲区。
不稳定
定义缺省的接收窗口大小(以字节为单位)。有关针对每个路由设置不同值的介绍,请参阅每路由度量标准。另请参见tcp_max_buf和 tcp_recv_hiwat_minmss。
49,152
2048 到 1,073,741,824
是
应用程序可以使用 setsockopt(3XNET) SO_RCVBUF 来更改单个连接的接收缓冲区。
不稳定
定义最大缓冲区大小(以字节为单位)。此参数控制由使用 setsockopt(3XNET) 的应用程序设置的发送缓冲区和接收缓冲区的大小。
1,048,576
8192 到 1,073,741,824
是
如果要在高速网络环境中建立 TCP 连接,则增大此值以便适应较高的网络链接速度。
不稳定
定义 TCP 拥塞窗口 (congestion window, cwnd) 的最大值(以字节为单位)。
有关 TCP 拥塞窗口的更多信息,请参阅 RFC 1122 和 RFC 2581。
1,048,576
128 到 1,073,741,824
是
即使应用程序使用 setsockopt(3XNET) 将窗口大小更改为大于 tcp_cwnd_max 的值,所用的实际窗口仍然不会超过 tcp_cwnd_max。因此,tcp_max_buf 应该大于 tcp_cwnd_max。
不稳定
定义 TCP 连接的最大初始拥塞窗口 (congestion window, cwnd) 大小,以最大段大小 (maximum segment size, MSS) 为单位。
有关如何计算初始拥塞窗口大小,请参阅 RFC 2414。
4
1 到 4
是
请勿更改此值。
如果初始 cwnd 大小在特定情况下导致网络拥塞,则减小此值。
不稳定
TCP 连接在空闲(未接收段)一个重新传输超时 (retransmission timeout, RTO) 时间段之后的拥塞窗口大小,以最大段大小 (maximum segment size, MSS) 为单位。
有关如何计算初始拥塞窗口大小,请参阅 RFC 2414。
4
1 到 16,384
是
有关更多信息,请参见tcp_slow_start_initial。
不稳定
如果设置为 2,则 TCP 将始终发送带有允许选择性确认 (selective acknowledgment, SACK) 的选项的 SYN 段。如果 TCP 收到带有允许 SACK 的选项的 SYN 段,并且此参数设置为 1,则 TCP 会使用允许 SACK 的选项进行响应。如果此参数设置为 0,则无论传入段是否包含允许 SACK 的选项,TCP 都不会发送允许 SACK 的选项。
有关 SACK 选项的信息,请参阅 RFC 2018。
2(主动启用)
0(禁用)、1(被动启用)或 2(主动启用)
是
SACK 处理可以提高 TCP 重新传输性能,因此应该将其主动启用。有时,主动启用 SACK 选项会使另一端出现混乱。如果出现混乱,则将此值设置为 1,以便只在传入连接允许 SACK 处理时启用 SACK 处理。
不稳定
如果设置为 0,则出于安全原因 TCP 不会对传入连接的 IP 源路由选项进行反向。如果设置为 1,则 TCP 会正常进行源路由反向。
0(禁用)
0(禁用)或 1(启用)
是
如果进行诊断时需要 IP 源路由,则将其启用。
不稳定
指定 TCP 连接保持 TIME-WAIT 状态的时间(以毫秒为单位)。
有关更多信息,请参阅 RFC 1122 中的第 4.2.2.13 节。
60,000(60 秒)
1 秒到 10 分钟
是
请不要将此值设置为低于 60 秒的值。
有关更改此参数的信息,请参阅 RFC 1122 中的第 4.2.2.13 节。
不稳定
控制显式拥塞通知 (Explicit Congestion Notification, ECN) 支持。
如果此参数设置为 0,则 TCP 不会与支持 ECN 机制的对等方进行协商。
如果启动连接时此参数设置为 1,则 TCP 不会告知对等方其支持 ECN 机制。
但是,如果对等方在 SYN 段中指示其支持 ECN 机制,则当接受新的传入连接请求时,TCP 会告知此对等方其支持 ECN 机制。
如果此参数设置为 2,则除了在接受连接时与对等方协商 ECN 机制之外,TCP 还在建立主动传出连接时在传出 SYN 段中指示其支持 ECN 机制。
1(被动启用)
0(禁用)、1(被动启用)或 2(主动启用)
是
ECN 可以帮助 TCP 更好地处理拥塞控制。但是,此机制会使现有的 TCP 实现、防火墙、NAT 以及其他网络设备出现混乱。这些设备不符合 IETF 标准。
由于存在这些设备,因此将此参数的缺省值设置为 1。在极少数情况下,被动启用仍会导致问题。仅当完全必要时将此参数设置为 0。
不稳定
指定缺省的 TCP 侦听器等待 accept(3SOCKET) 接受的最大暂挂 TCP 连接数。另请参见tcp_conn_req_max_q0。
128
1 到 4,294,967,296
是
对于可能接收多个连接请求的应用程序(如 Web 服务器),可以增大缺省值以便适应较高的传入速率。
请不要将此参数增大到非常大的值。暂挂 TCP 连接可能会占用过多内存。此外,如果由于暂挂 TCP 连接数过多而导致应用程序不能迅速处理如此多的连接请求,则可能会拒绝新的传入请求。
请注意,增大 tcp_conn_req_max_q 并不意味着应用程序可以具有如此多的暂挂 TCP 连接。应用程序可以使用 listen(3SOCKET) 来更改每个套接字的最大暂挂 TCP 连接数。此参数是应用程序可以使用 listen() 设置的最大值。因此,即使根据 listen() 中使用的值将此参数设置为非常大的值,套接字的实际最大数量也可能比 tcp_conn_req_max_q 小得多。
不稳定
有关信息,请参见xxx:ip_forwarding(Solaris 9 发行版)。
指定缺省的 TCP 侦听器未完成的(尚未完成三次握手)最大暂挂 TCP 连接数。
有关 TCP 三次握手的更多信息,请参阅 RFC 793。另请参见tcp_conn_req_max_q。
1024
0 到 4,294,967,296
是
对于可能收到过多连接请求的应用程序(如 Web 服务器),可以增大缺省值以便适应较高的传入速率。
下面介绍了 tcp_conn_req_max_q0 与每个套接字的最大暂挂连接数之间的关系。
收到连接请求时,TCP 首先检查侦听器等待被接受的暂挂 TCP 连接(已执行三次握手)数目是否超过最大值 (N)。如果连接数过多,则会拒绝请求。如果连接数为允许数目,则 TCP 会检查未完成的暂挂 TCP 连接数是否超过 N 与 tcp_conn_req_max_q0 的总和。如果没有超过,则接受请求。否则,会删除最早未完成的暂挂 TCP 请求。
不稳定
有关信息,请参见xxx:ip_forwarding(Solaris 9 发行版)。
指定缺省的侦听器等待被接受的最大暂挂 TCP 连接请求数的最小值。这是应用程序可以使用的最大 listen(3SOCKET) 值的下限值。
1
1 到 1024
是
对于使用 listen(3SOCKET) 设置的最大暂挂 TCP 连接数过低的应用程序,此参数可提供一种解决方案。请增大此值以便适应较高的传入连接请求速率。
不稳定
如果此参数设置为 1,则 RST 段的最大发送速率受 ndd 参数 tcp_rst_sent_rate 控制。如果此参数设置为 0,则不对 RST 段的发送速率进行任何控制。
1(启用)
0(禁用)或 1(启用)
是
此可调参数通过限制 RST 段的发出速率来防止 TCP 受到拒绝服务攻击。仅当要求严格遵守 RFC 793 时,才应该禁用此速率控制。
不稳定
40
0 到 4,294,967,296
是
在 TCP 环境中,可能存在合法的理由使生成的 RST 数多于缺省值允许的数量。在这种情况下,请增大此参数的缺省值。
不稳定
指定由 TCP 生成的一条 M_MULTIDATA 消息可以携带的有效负荷缓冲区数。另请参见ip_multidata_outbound。
16
1 到 16
是
减小此参数时,可以通过限制由 TCP 生成的每条 M_MULTIDATA 消息携带的有效负荷缓冲区数而有助于调试设备驱动程序开发。
不稳定
ipcl_conn_hash_size 参数只能在 /etc/system 文件中设置。修改此文件之后,请重新引导系统。
以下项设置 ipcl_conn_hash_size 参数:
set ip:ipcl_conn_hash_sizes=value |
无符号整数
0
0 到 82,500
否。只能在引导系统时更改此参数。
如果系统始终具有数万个 TCP 连接,则可以相应地增大此值。增加散列表大小意味着占用更多内存,从而减少了用户应用程序的可用内存。
不稳定
建议不要更改以下参数。
指定缺省的 TCP 连接重新传输总超时值。对于给定的 TCP 连接,如果 TCP 包已经重新传输了 tcp_ip_abort_interval 时间,但在这段时间内未收到来自另一个端点的任何确认,则 TCP 将关闭此连接。
有关 TCP 重新传输超时 (retransmission timeout, RTO) 计算,请参阅 RFC 1122 中的第 4.2.3 节。另请参见tcp_rexmit_interval_max。
8 分钟
500 毫秒到 1193 小时
是
请勿更改此值。有关例外,请参见tcp_rexmit_interval_max。
不稳定
指定缺省的 TCP 连接初始重新传输超时 (retransmission timeout, RTO) 值。有关针对每个路由设置不同值的介绍,请参阅每路由度量标准。
3 秒
1 毫秒到 20 秒
是
请勿更改此值。减小此值可能会导致不必要的重新传输。
不稳定
定义缺省的最大重新传输超时 (retransmission timeout, RTO) 值。对于所有 TCP 连接,计算后得出的 RTO 不能超过此值。另请参见tcp_ip_abort_interval。
60 秒
1 毫秒到 2 小时
是
在一般的网络环境中,请勿更改此值。
在某些特殊情况下,如果连接的往返时间 (round-trip time, RTT) 大约为 10 秒,则可以增大此值。如果更改此值,则还应该更改 tcp_ip_abort_interval 参数。将tcp_ip_abort_interval 的值更改为至少是 tcp_rexmit_interval_max 值的四倍。
不稳定
指定缺省的最小重新传输超时 (retransmission timeout, RTO) 值。所有 TCP 连接的已计算的 RTO 不能低于此值。另请参见tcp_rexmit_interval_max。
400 毫秒
1 毫秒到 20 秒
是
在一般的网络环境中,请勿更改此值。
TCP 的 RTO 计算应该可以应对大多数 RTT 浮动。在某些非常特殊的情况下,如果连接的往返时间 (round-trip time, RTT) 大约为 10 秒,则增大此值。如果更改此值,则应该更改 tcp_rexmit_interval_max 参数。应将 tcp_rexmit_interval_max 的值更改为至少是 tcp_rexmit_interval_min 值的八倍。
不稳定
0 毫秒
0 到 2 小时
是
请勿更改此值。
当 RTO 计算无法获得连接的最佳值时,可以更改此值以免不必要的重新传输。
不稳定
1(启用)
0(禁用)或 1(启用)
是
请勿更改此值。通常,当在高速网络中使用 TCP 时,必须防止序列号回绕。因此,需要 timestamp 选项。
不稳定