描述
optimizenet 命令用于配置网络调整参数。 optimizenet 命令用于设置或显示网络调整参数的当前或下一引导值。 该命令可以永久更改参数或者推迟到下一次重新引导再更改参数。 此命令是设置参数还是显示参数,要由所带标志来决定。 -set 标志执行两项操作。 它或者显示参数的值或者为参数设置一个新值。
如果指定了 -list
标志而未指定任何 Tunable,那么将仅显示此命令可修改的 Tunable。
标志
| 标志名称 |
描述 |
| -default 无法 |
将 Tunable 重置为其缺省值。 如果 Tunable 需要更改(当前未设置为其缺省值),而其类型为 Reboot,那么不会执行更改;而是会显示警告。 |
| -h Tunable |
显示有关 Tunable 参数(如果已指定)的帮助。 |
| -list [无法] |
使用以下格式列示一个或所有 Tunable 的特征,每个特征占用一行:
NAME CUR DEF BOOT MIN MAX UNIT TYPE
DEPENDENCIES
------------------------------------------------------------------
General Network Parameters
-----------------------------------------------------------------
sockthresh 85 85 85 0 100 %_of_thewall D
-----------------------------------------------------------------
fasttimo 200 200 200 50 200 millisecond D
-----------------------------------------------------------------
inet_stack_size 16 16 16 1 kbyte R
-----------------------------------------------------------------
其中
- CUR
- 当前值
- DEF
- 缺省值
- BOOT
- 重新引导值
- 最小
- 最小值
- 最大
- 最大值
- Unit
- 可调参数的计量单位
- 类型
- 参数类型:D (Dynamic)、S (Static)、R (Reboot)、B (Bosboot)、M (Mount)、I (Incremental) 和 C (Connect)
- 依赖性
- 从属可调参数的列表,每个参数占用一行
|
| -烫头发 |
与 -set 或 -default 一起使用时,此标志将使更改同时应用于当前值和重新引导值。 由于无法更改 Reboot 类型参数的当前值,因此不能对这些参数使用这些组合。 如果与 -set 配合使用而未指定新值,那么仅当参数的当前值和下一引导值相同时,才会显示值。 否则,将显示值 NONE。
|
| -重新启动 |
与 -set 或 -default 一起使用时,此标志将使更改应用于重新引导值。 如果与 -set 配合使用而未指定新值,那么将显示 tunable 的下一引导值而不是显示当前值。 |
| - 设置 Tunable [ =NewValue ] |
显示值或者将 Tunable 设置为 NewValue。 如果可调参数需要更改(指定的值与当前值不同),而其类型为
Reboot,那么不会执行更改,而是会显示警告。 在没有新值的情况下与 -reboot 一起使用时,将显示 Tunable 的 nextboot 值。 如果在没有新值的情况下与
-perm 一起使用,那么仅当 tunable 的当前和下一引导值相同时,才会显示值;否则将显示 NONE 作为值。
|
网络可调参数
| 参数 |
描述 |
| arptab_bsiz |
- 用途:
- 指定地址解析协议 (ARP) 表存储区大小。
- 价值观:
- 缺省值:7
- 范围:1 到 MAXSHORT
- 类型:Reboot
- 诊断
- netstat -protocol arp 将显示发送的 ARP 包数以及从 ARP 表中清除的 ARP 条目数。 如果要清除大量条目,那么必须增大 ARP 表大小。
|
| arptab_nb |
- 用途:
- 指定 ARP 表存储区数。
- 价值观:
- 缺省值:73
- 范围:1 到 MAXSHORT
- 类型:Reboot
- 诊断:
- netstat -protocol arp 将显示发送的 ARP 包数以及从 ARP 表中清除的 ARP 条目数。 如果要清除大量条目,那么必须增大 ARP 表大小。
对于具有大量客户机或服务器的系统,请增大此值。 缺省值提供 73 x 7 = 511 个 ARP 条目,但假定均匀散列分布。
|
| clean_partial_conns |
- 用途:
- 指定是否要避免受到 SYN(使序号同步)攻击。
- 价值观:
- 缺省值:0(关闭)
- 范围:0 或 1
- 类型:Dynamic
- 调整:
- 对于需要防范网络攻击的服务器,必须开启此选项。 如果启用了此选项,那么将随机除去部分连接,以便为新的非攻击连接留出空间。
|
| net_malloc_police |
- 用途:
- 指定 net_malloc 和 net_free 跟踪缓冲区的大小。
- 价值观:
- 缺省值:0
- 范围:0 到 MAXINT
- 类型:Dynamic
- 调整:
- 如果此变量的值非零,那么将在内核缓冲区中由系统跟踪挂钩 HKWD_NET_MALLOC 跟踪所有 net_malloc 和 net_free 缓冲区。 还会启用其他错误检查。 它包括检查释放可用缓冲区、调整和缓冲区覆盖。 请仅在调查某一网络问题时启用此参数,因为开启此参数时,性能会受到影响。 缺省值为 0(管制关闭)。 大于 1024 的 net_malloc_police
值将在内核缓冲区中分配所指示的项数以进行跟踪。
|
| rfc1323 |
- 用途:
- 按照 RFC 1323(TCP 的高性能扩展)的指定启用窗口缩放和时间戳记。 窗口缩放允许 TCP 窗口大小(tcp_recvspace
和 tcp_sendspace)超过 64 KB (65536),通常用于大型 MTU 网络。
- 价值观:
- 缺省值:0(关闭)
- 范围:0 或 1
- 类型:Connect
- 调整:
- 缺省值为 0 表示在系统折扣率上禁用 RFC 优化。 值 1 指定所有 TCP 连接都会尝试协商是否禁用 RFC 增强功能。 需要设置 tcp_sendspace
和 tcp_recvspace 到大于 64 KB 之前更改它。
|
| 路由器到期 |
- 用途:
- 指定通过克隆创建的未使用的路由,或者通过重定向创建和修改的路由是否到期。
- 价值观:
- 缺省值:1(开启)
- 范围:0 或 1
- 类型:Dynamic
- 调整:
- 值 1 将允许路由到期,这是缺省值。 此选项不允许负值。
|
| tcp_pmtu_discover |
- 用途:
- 启用或禁用 TCP 应用程序的路径 MTU 发现。
- 价值观:
- 缺省值:1
- 范围:0 或 1
- 类型:Dynamic
- 调整:
- 值 0 禁用 TCP 应用程序的路径 MTU 发现,而值 1 将其启用。
|
| tcp_recvspace |
- 用途:
- 指定用于接收数据的系统缺省套接字缓冲区大小。 这会影响 TCP 使用的窗口大小。
- 价值观:
- 缺省值:16384 字节
- 范围:4096 - 1048576
- 类型:Connect
- 诊断:
- 将套接字缓冲区大小设置为 16 KB (16,384) 可以提高标准以太网和令牌环网络的性能。 带宽较低的网络(例如串行线路因特网协议 (SLIP))或带宽较高的网络(例如串行光纤链路)必须具有不同的最佳缓冲区大小。 最佳缓冲区大小是介质带宽和包的平均往返时间的乘积。 对于高速网络(例如千兆以太网或 ATM 622),必须使用值
65536 作为最小大小以实现最佳性能。
对于大于 65536 的值,必须启用 rfc1323 (rfc1323=1) 以支持 TCP 窗口缩放。
|
| tcp_sendspace |
- 用途:
- 指定用于发送数据的系统缺省套接字缓冲区大小。
- 价值观:
- 缺省值:16384 字节
- 范围:4096 - 1048576
- 类型:Connect
- 调整:
- 这会影响 TCP 使用的窗口大小。 将套接字缓冲区大小设置为 16 KB (16,384) 可以提高标准以太网网络的性能。 带宽较低的网络(例如串行线路因特网协议 (SLIP))或带宽较高的网络(例如串行光纤链路)必须具有不同的最佳缓冲区大小。 最佳缓冲区大小是介质带宽与包的平均往返时间的乘积:(optimum_window=bandwidth * average_round_trip_time)。对于高速网络(例如千兆以太网或 ATM 622),必须使用值 65536 作为最小大小以实现最佳性能。 对于大于 65536 的值,必须启用 rfc1323 (rfc1323=1) 以支持 TCP 窗口缩放。
|
| udp_recvspace |
- 用途:
- 指定用于接收 UDP 数据的系统缺省套接字缓冲区大小。
- 价值观:
- 缺省值:42080 字节
- 范围:4096 - 1048576
- 类型:Connect
- 诊断:
- Udp 的 netstat -stats 报告中的非零 n: n 套接字缓冲区溢出
- 调整:
- 请增加大小,此大小最好为 4096 的倍数。
|
| udp_sendspace |
- 用途:
- 指定用于发送 UDP 数据的系统缺省套接字缓冲区大小。
- 价值观:
- 缺省值:9216 字节
- 范围:4096 - 1048576
- 类型:Connect
- 诊断:
- 请增加大小,此大小最好为 4096 的倍数。
|
示例
- 要显示 mbuf 池的最大大小,请输入:
optimizenet -set thewall
- 要更改您系统上的缺省套接字缓冲区大小,请输入:
optimizenet -reboot -set tcp_sendspace=32768
- 要将机器用作因特网协议网络上的因特网工作路由器,请输入:
optimizenet -set ipforwarding=1
- 要列出 arptab_bsiz 参数的当前值和重新引导值、范围、单位、类型和依赖关系,请输入:
optimizenet -list arptab_bsiz
- 要显示有关 arptab_bsiz 的帮助信息,请输入:
optimizenet -h arptab_bsiz