参数ignore_user_abort

ignore_user_abort  时间:2021-04-05  阅读:()
文件号码E53993-022014年12月OracleSolaris11.
2可调参数参考手册版权所有2000,2014,Oracle和/或其附属公司.
保留所有权利.
本软件和相关文档是根据许可证协议提供的,该许可证协议中规定了关于使用和公开本软件和相关文档的各种限制,并受知识产权法的保护.
除非在许可证协议中明确许可或适用法律明确授权,否则不得以任何形式、任何方式使用、拷贝、复制、翻译、广播、修改、授权、传播、分发、展示、执行、发布或显示本软件和相关文档的任何部分.
除非法律要求实现互操作,否则严禁对本软件进行逆向工程设计、反汇编或反编译.
此文档所含信息可能随时被修改,恕不另行通知,我们不保证该信息没有错误.
如果贵方发现任何问题,请书面通知我们.
如果将本软件或相关文档交付给美国政府,或者交付给以美国政府名义获得许可证的任何机构,必须符合以下规定:U.
S.
GOVERNMENTENDUSERS:Oracleprograms,includinganyoperatingsystem,integratedsoftware,anyprogramsinstalledonthehardware,and/ordocumentation,deliveredtoU.
S.
Governmentendusersare"commercialcomputersoftware"pursuanttotheapplicableFederalAcquisitionRegulationandagency-specificsupplementalregulations.
Assuch,use,duplication,disclosure,modification,andadaptationoftheprograms,includinganyoperatingsystem,integratedsoftware,anyprogramsinstalledonthehardware,and/ordocumentation,shallbesubjecttolicensetermsandlicenserestrictionsapplicabletotheprograms.
NootherrightsaregrantedtotheU.
S.
Government.
本软件或硬件是为了在各种信息管理应用领域内的一般使用而开发的.
它不应被应用于任何存在危险或潜在危险的应用领域,也不是为此而开发的,其中包括可能会产生人身伤害的应用领域.
如果在危险应用领域内使用本软件或硬件,贵方应负责采取所有适当的防范措施,包括备份、冗余和其它确保安全使用本软件或硬件的措施.
对于因在危险应用领域内使用本软件或硬件所造成的一切损失或损害,OracleCorporation及其附属公司概不负责.
Oracle和Java是Oracle和/或其附属公司的注册商标.
其他名称可能是各自所有者的商标.
Intel和IntelXeon是IntelCorporation的商标或注册商标.
所有SPARC商标均是SPARCInternational,Inc的商标或注册商标,并应按照许可证的规定使用.
AMD、Opteron、AMD徽标以及AMDOpteron徽标是AdvancedMicroDevices的商标或注册商标.
UNIX是TheOpenGroup的注册商标.
本软件或硬件以及文档可能提供了访问第三方内容、产品和服务的方式或有关这些内容、产品和服务的信息.
对于第三方内容、产品和服务,OracleCorporation及其附属公司明确表示不承担任何种类的担保,亦不对其承担任何责任.
对于因访问或使用第三方内容、产品或服务所造成的任何损失、成本或损害,OracleCorporation及其附属公司概不负责.
3目录使用本文档111OracleSolaris系统调优概述13OracleSolaris11.
2系统调优的新增功能13调优OracleSolaris系统13可调参数说明的调优格式14调优OracleSolaris内核15/etc/system文件和/etc/system.
d目录15kmdb命令17mdb命令17特殊的OracleSolaristune结构和var结构18查看OracleSolaris系统配置信息18sysdef命令18kstat实用程序192OracleSolaris内核可调参数21常规内核及内存参数22physmem22default_stksize22lwp_default_stksize23logevent_max_q_sz24segkpsize25noexec_user_stack25fsflush和相关参数26fsflush26tune_t_fsflushr27autoup27dopageflush28doiflush29进程大小调整参数30目录4OracleSolaris11.
2可调参数参考手册2014年12月maxusers30reserved_procs31pidmax31max_nprocs32maxuprc33ngroups_max33分页相关参数34lotsfree35desfree36minfree37throttlefree37pageout_reserve38pages_pp_maximum39tune_t_minarmem40fastscan40slowscan41min_percent_cpu42handspreadpages42pages_before_pager43maxpgio43与交换相关的参数44swapfs_reserve44swapfs_minfree45内核内存分配器45kmem_flags46kmem_stackinfo47常规驱动程序参数47moddebug47ddi_msix_alloc_limit49网络驱动程序参数49内核中的IP协议参数49igb参数51ixgbe参数52常规I/O参数56maxphys56rlim_fd_max56rlim_fd_cur57常规文件系统参数58目录5ncsize58dnlc_dir_enable59dnlc_dir_min_size59dnlc_dir_max_size60dnlc_dircache_percent60TMPFS参数61tmpfs:tmpfs_maxkmem61tmpfs:tmpfs_minfree62伪终端62pt_cnt63pt_pctofmem64pt_max_pty64STREAMS参数65nstrpush65strmsgsz65strctlsz66SystemV消息队列66SystemV信号量67SystemV共享内存67segspt_minfree67pr_segp_disable68调度69disp_rechoose_interval69计时器70hires_tick70timer_max70SPARC:特定于平台的参数71tsb_alloc_hiwater_factor71default_tsb_size72enable_tsb_rss_sizing72tsb_rss_factor73地址组参数73lpg_alloc_prefer74lgrp_mem_pset_aware743OracleSolarisZFS可调参数77ZFS调优注意事项77ZFSARC参数78目录6OracleSolaris11.
2可调参数参考手册2014年12月zfs_arc_min78zfs_arc_max78ZFS文件级预取79zfs_prefetch_disable79ZFS设备I/O队列深度80zfs_vdev_max_pending80使用闪存存储时调优ZFS81将闪存设备添加为ZFS日志设备或高速缓存设备81确保闪存设备和NVRAM存储设备具有正确的高速缓存刷新行为82为数据库产品进行ZFS调优84为Oracle数据库进行ZFS调优85ZFS与MySQL结合使用的注意事项884NFS可调参数91调优NFS环境91NFS模块参数91nfs:nfs3_pathconf_disable_cache92nfs:nfs_allow_preepoch_time92nfs:nfs_cots_timeo93nfs:nfs3_cots_timeo93nfs:nfs4_cots_timeo94nfs:nfs_do_symlink_cache95nfs:nfs3_do_symlink_cache95nfs:nfs_dynamic96nfs:nfs3_dynamic96nfs:nfs_lookup_neg_cache97nfs:nfs3_lookup_neg_cache98nfs:nfs4_lookup_neg_cache98nfs:nfs_max_threads99nfs:nfs3_max_threads100nfs:nfs4_max_threads100nfs:nfs_nra101nfs:nfs3_nra102nfs:nrnode102nfs:nfs_shrinkreaddir103nfs:nfs3_shrinkreaddir104nfs:nfs_write_error_interval105nfs:nfs_write_error_to_cons_only105目录7nfs:nfs_disable_rddir_cache106nfs:nfs3_bsize106nfs:nfs4_bsize107nfs:nfs_async_clusters108nfs:nfs3_async_clusters108nfs:nfs4_async_clusters109nfs:nfs_async_timeout110nfs:nacache111nfs:nfs3_jukebox_delay111nfs:nfs3_max_transfer_size112nfs:nfs4_max_transfer_size113nfs:nfs3_max_transfer_size_clts114nfs:nfs3_max_transfer_size_cots114NFS相关SMF配置参数115server_authz_cache_refresh115netgroup_refresh115rpcmod模块参数115rpcmod:clnt_max_conns116rpcmod:clnt_idle_timeout116rpcmod:svc_idle_timeout117rpcmod:svc_default_stksize117rpcmod:maxdupreqs118rpcmod:cotsmaxdupreqs1185Internet协议套件可调参数121调优IP套件参数的概述121IP套件参数验证122Internet请求注解(RFC)122IP可调参数122_icmp_err_interval和_icmp_err_burst122_respond_to_echo_broadcast和_respond_to_echo_multicast(ipv4或ipv6)123send_redirects(ipv4或ipv6)123forwarding(ipv4或ipv6)123ttl124hoplimit(ipv6)124_addrs_per_if124hostmodel(ipv4或ipv6)125目录8OracleSolaris11.
2可调参数参考手册2014年12月与重复地址检测相关的IP可调参数126需要额外注意的IP可调参数131TCP可调参数132_deferred_ack_interval132_local_dack_interval132_deferred_acks_max133_local_dacks_max133_wscale_always133_tstamp_always134send_buf134recv_buf135max_buf135_cwnd_max136_slow_start_initial136_local_slow_start_initial136_slow_start_after_idle137sack137_rev_src_routes138_time_wait_interval138ecn138_conn_req_max_q139_conn_req_max_q0140_conn_req_min140_rst_sent_rate_enabled141_rst_sent_rate141需要额外注意的TCP参数142UDP可调参数146send_buf146recv_buf146max_buf147smallest_anon_port147largest_anon_port148IPQoS可调参数148_policy_mask148SCTP可调参数149_max_init_retr149_pa_max_retr149_pp_max_retr150目录9_cwnd_max150_ipv4_ttl150_heartbeat_interval151_new_secret_interval151_initial_mtu152_deferred_ack_interval152_ignore_path_mtu152_initial_ssthresh153send_buf153_xmit_lowat153recv_buf154max_buf154_rto_min155_rto_max155_rto_initial155_cookie_life156_max_in_streams156_initial_out_streams156_shutack_wait_bound157_maxburst157_addip_enabled157_prsctp_enabled158smallest_anon_port158largest_anon_port158每路由度量1596系统工具参数161系统缺省参数161autofs161cron162devfsadm162dhcpagent162fs162ftp162inetinit162init163ipsec163目录10OracleSolaris11.
2可调参数参考手册2014年12月kbd163keyserv164login164mpathd164nfs164nfslogd165nss165passwd165su165syslog165tar165telnetd166utmpd166A系统检查脚本167确认系统上的刷新行为167索引169使用本文档11使用本文档概述-提供了关于OracleSolarisOS内核和网络可调参数的参考信息.
本手册没有提供关于桌面系统或Java环境的可调参数信息.
目标读者-可能需要在某些情况下更改内核可调参数的系统管理员.
必备知识-OracleSolaris或UNIX系统管理经验和常规文件系统管理经验.
产品文档库有关本产品的最新信息和已知问题均包含在文档库中,网址为:http://www.
oracle.
com/pls/topic/lookupctx=solaris11.
获得Oracle支持Oracle客户可通过MyOracleSupport获得电子支持.
有关信息,请访问http://www.
oracle.
com/pls/topic/lookupctx=acc&id=info;如果您听力受损,请访问http://www.
oracle.
com/pls/topic/lookupctx=acc&id=trs.
反馈可以在http://www.
oracle.
com/goto/docfeedback上提供有关此文档的反馈.
12OracleSolaris11.
2可调参数参考手册2014年12月第1章OracleSolaris系统调优概述131第1章OracleSolaris系统调优概述本节提供了有关本手册中调优信息的格式的概述信息.
本节还介绍了调优OracleSolaris系统的不同方式.
"OracleSolaris11.
2系统调优的新增功能"[13]"调优OracleSolaris系统"[13]"可调参数说明的调优格式"[14]"调优OracleSolaris内核"[15]"特殊的OracleSolaristune结构和var结构"[18]"查看OracleSolaris系统配置信息"[18]"kstat实用程序"[19]OracleSolaris11.
2系统调优的新增功能本节介绍了OracleSolaris11.
2发行版中新增或已更改的参数.
"NFS相关SMF配置参数"[115]中提供了SMFNFS服务器可调参数信息.
"使用闪存存储时调优ZFS"[81]中提供了闪存存储的OracleSolarisZFS可调参数信息.
调优OracleSolaris系统作为操作系统,OracleSolaris可轻松调整系统负载,从而最大程度地减少所需的调优.
但是,在某些情况下,调优可能是必需的.
本书提供了有关可用于OracleSolaris的正式受支持的调优选项的详细信息.
OracleSolaris内核包括一个始终加载的核心部分,以及一系列在被引用时才加载的可加载模块.
本指南中列出的许多内核参数都是核心参数.
但是,一些参数属于可加载模块.
请注意,为了提高性能,调优系统参数通常是效果最差的方法.
改进和调优应用程序是更好也更有效的方法.
此外,增加物理内存和平衡磁盘I/O模式也可以提高性能.
只有在少数罕见情况下,更改系统参数会带来实质性的性能优势.
可调参数说明的调优格式14OracleSolaris11.
2可调参数参考手册2014年12月请记住,一个系统的/etc/system设置可能全部或部分不适用于另一个系统的环境.
请根据变量值将应用到的环境仔细考虑该文件中的值.
在尝试对本书列出的系统变量应用更改之前,请确保您已了解系统的行为.
要调优OracleSolaris系统,请创建一个空文件.
在文件名中包含公司特定名称的并使用冒号分隔文件名的组成部分,例如,MyCompany:kernel:configurations.
作为第一步,仅添加内部或第三方应用程序必需的可调参数.
在建立基线测试后,评估系统性能来确定是否需要其他可调设置.
注意-对于不同的OracleSolaris发行版,本书中介绍的可调参数会有所不同,并且确实存在不同.
在发布这些可调参数后,可调参数及其说明也可能会变更,恕不另行通知.
可调参数说明的调优格式本节介绍OracleSolaris参数调优的格式.
Parameter在/etc/system文件中键入的或者在/etc/default/facility文件中找到的确切名称.
有些参数使用命名约定module:parameter来指示参数属于某个可加载模块.
例如,tmpfs_maxkmem表示tmpfs:tmpfs_maxkmem是tmpfs的一个参数.
说明简要描述参数的用途或所控制的内容.
数据类型表示带符号或无符号的短整数或长整数.
长整数的宽度是整数的两倍(位).
例如,无符号整数为32位,无符号长整数为64位.
单位(可选)描述单位类型.
缺省值指示系统在缺省情况下使用的值.
范围指定系统验证或数据类型边界所允许的可能范围.
MAXINT-有符号整数的最大值(2,147,483,647)的速记说明MAXUINT-无符号整数的最大值(4,294,967,295)的速记说明动态指示是使用mdb或kmdb调试器在正在运行的系统上配置参数(Yes),还是在引导时的初始化过程中配置参数(No).
验证检查系统是否按/etc/system文件中的指定应用变量值或者应用变量缺省值,以及何时应用验证.
隐式(可选)提供参数上可能存在的未阐明约束,尤其是相对于其他参数.
调优OracleSolaris内核第1章OracleSolaris系统调优概述15何时更改解释为什么某些用户可能要更改此值.
包括错误消息或返回代码.
区域配置确定是可以在专用IP区域中设置此参数,还是必须在全局区域中进行设置.
任何参数都不可以在共享IP区域中设置.
交付级别确定界面的稳定性.
本手册中的许多参数仍处于不断发展中,因此将其归类为不稳定的.
有关更多信息,请参见attributes(5).
调优OracleSolaris内核下面的表格描述了可用来应用可调参数的不同方式.
以下列方式应用可调参数详细信息在/etc/system.
d目录中的配置文件中设置参数.
"/etc/system文件和/etc/system.
d目录"[15]使用内核调试器(kmdb).
"kmdb命令"[17]使用模块调试器(mdb).
"mdb命令"[17]使用ipadm命令设置TCP/IP参数.
第5章Internet协议套件可调参数修改/etc/default文件.
第6章系统工具参数/etc/system文件和/etc/system.
d目录/etc/system文件中提供了用于调整内核参数值的静态机制.
在引导时读取此文件中指定的值,然后进行应用.
在重新引导系统之前,对文件所做的任何更改都不会应用到操作系统.
在计算配置参数之前,会进行一遍检查来设置所有值.
注-要对参数进行调优,请在/etc/system.
d目录中的配置文件中设置参数值.
请勿直接修改/etc/system文件.
例1-1针对特定系统设置ZFS参数以下条目将ZFSARC最大值(zfs_arc_max)设置为30GB.
setzfs:zfs_arc_max=0x780000000假设您公司的名称为Widget,Inc.
.
您将此条目存储在/etc/system.
d目录中的widget:zfs中或具有类似名称的文件中.
引导系统时,/etc/system.
d中的所有参数配调优OracleSolaris内核16OracleSolaris11.
2可调参数参考手册2014年12月置均将添加到/etc/system文件中.
之后,根据/etc/system中的内容对系统进行配置.
从不正确值进行恢复可以使用以下方法之一从不正确的值恢复:在/etc/system.
d/file中重置参数从/etc/system.
d目录中的配置文件中删除有问题的参数设置.
引导时,将使用之前的配置更新/etc/system文件,这些配置之后会重新应用到系统.
使用克隆的引导环境在更改系统参数之前,请先克隆引导环境.
#beadmcreateBE-clonename在应用了对/etc/system进行的更改之后,如果当前的BE变得不可使用,请重新引导系统.
通过x86GRUB菜单或SPARC引导菜单,选择该BE克隆.
在引导完成后,可以选择该激活BE克隆,使其成为要在后续系统引导中使用的缺省BE.
使用文件副本在使用/etc/system.
d目录中的配置文件中的新参数更新/etc/system文件之前,先为该文件制作一个副本,这样可以方便地从不正确的值恢复.
例如:#cp/etc/system/etc/system.
good如果/etc/system.
d中的配置文件中指定的值导致系统无法引导,则可以通过以下命令进行恢复:okboot-a此命令会导致系统在引导过程中询问使用的各个文件的名称.
按回车键来接受缺省值,直到要求输入/etc/system文件的名称.
当显示Nameofsystemfile[/etc/system]:提示时,键入正确的/etc/system文件的名称或/dev/null:Nameofsystemfile[/etc/system]:/etc/system.
good如果指定了/dev/null,则该路径会导致系统尝试从/dev/null读取它的配置信息.
由于此文件是空的,因此系统将使用缺省值.
引导系统后,可更正/etc/system文件.
有关系统恢复的更多信息,请参见《在OracleSolaris11.
2中排除系统管理问题》.
调优OracleSolaris内核第1章OracleSolaris系统调优概述17kmdb命令kmdb是使用与mdb相同的常规语法的交互式内核调试器.
交互式内核调试器的一个优点是您可以设置断点.
当到达断点时,您可以检查数据或单步通过内核代码的执行.
可根据需要加载及卸载kmdb.
与使用kadb的情况相同,执行交互式内核调试时无需重新引导系统.
有关更多信息,请参见kmdb(1).
mdb命令模块化调试器mdb是各个Solaris调试器中比较独特的,因为它可以轻松扩展.
有一个编程API可用,可用来编辑模块以便在调试器的上下文中执行所需任务.
mdb还包括一系列所需的可用性功能,包括命令行编辑、命令历史记录、内置输出分页程序、语法检查和命令流水线作业.
mdb是适用于内核的推荐用事后分析调试器.
有关更多信息,请参见mdb(1).
例1-2使用mdb显示信息显示系统的内存使用情况的高级别视图.
例如:#mdb-kLoadingmodules:[unixgenunixspecfsdtracemaccpu.
genericcpu_ms.
AuthenticAMD.
15uppcpcplusmpscsi_vhcizfsmptsdiphooknetiarpusbasockfsksslqlcfctlstmfstmf_sbdmdlofsrandomidmfcpcryptocpcsmbsrvnfsfcipspppufslogindmuxptmnsmbscumpt_saspmcsemlxs]>::memstatPageSummaryPagesMB%TotKernel16087662816%ZFSFileData303401118530%Anon25335982%Execandlibs145950%Pagecache5083191%Free(cachelist)6616251%Free(freelist)510870199550%Total10136403959Physical10136393959>$q有关使用该模块化调试器的更多信息,请参见《OracleSolarisModularDebuggerGuide》.
特殊的OracleSolaristune结构和var结构18OracleSolaris11.
2可调参数参考手册2014年12月在使用kmdb或mdb调试器时,模块名称前缀不是必需的.
加载模块之后,其符号连同核心内核符号及之前加载的任何其他模块符号会构成一个通用名称空间.
特殊的OracleSolaristune结构和var结构OracleSolaris可调参数表现为各种形式.
/usr/include/sys/tuneable.
h文件中定义的tune结构是tune_t_fsflushr、tune_t_minarmem和tune_t_flkrec的运行时表示形式.
在初始化内核后,可在tune结构的相应字段中找到对这些变量的所有引用.
在引导时为此结构设置参数的正确方法是初始化与所需字段名称对应的特殊参数.
然后,系统初始化进程会将这些值加载到tune结构中.
用于放置各种可调参数的另一种结构是名为v的var结构.
可以在/usr/include/sys/var.
h文件中找到var结构的定义.
autoup和bufhwm等变量的运行时表示形式也存储在该文件中.
请不要在正在运行的系统上更改tune或v结构.
在正在运行的系统上更改这些结构的任何字段都可能会导致系统故障.
查看OracleSolaris系统配置信息有多个工具可用于检查系统配置信息.
某些工具要求具有超级用户特权.
其他工具可由非特权用户运行.
通过在正在运行的系统上使用mdb或通过在kmdb下引导,可以使用内核调试器检查每个结构和数据项.
有关更多信息,请参见mdb(1)或kadb(1M).
sysdef命令sysdef命令提供了内存和进程资源限制值,以及tune和v结构的各个部分.
例如,具有500GB内存的SPARCT3-4系统上的sysdef"可调参数"部分如下所示:2206203904maximummemoryallowedinbuffercache(bufhwm)65546maximumnumberofprocesses(v.
v_proc)99maximumglobalpriorityinsysclass(MAXCLSYSPRI)65541maximumprocessesperuserid(v.
v_maxup)30autoupdatetimelimitinseconds(NAUTOUP)25pagestealinglowwatermark(GPGSLO)1fsflushrunrate(FSFLUSHR)25minimumresidentmemoryforavoidingdeadlock(MINARMEM)25minimumswapablememoryforavoidingdeadlock(MINASMEM)kstat实用程序第1章OracleSolaris系统调优概述19有关更多信息,请参见sysdef(1M).
kstat实用程序kstat是由各种内核子系统和驱动程序维护的数据结构.
它们提供了用于将数据从内核导出到用户程序的机制,而不要求程序读取内核内存或具有超级用户特权.
有关更多信息,请参见kstat(1M)或kstat(3KSTAT).
20OracleSolaris11.
2可调参数参考手册2014年12月第2章OracleSolaris内核可调参数212第2章OracleSolaris内核可调参数本章介绍了大多数OracleSolaris内核可调参数.
"常规内核及内存参数"[22]"fsflush和相关参数"[26]"进程大小调整参数"[30]"分页相关参数"[34]"与交换相关的参数"[44]"内核内存分配器"[45]"常规驱动程序参数"[47]"网络驱动程序参数"[49]"常规I/O参数"[56]"常规文件系统参数"[58]"TMPFS参数"[61]"伪终端"[62]"STREAMS参数"[65]"SystemV消息队列"[66]"SystemV信号量"[67]"SystemV共享内存"[67]"调度"[69]"计时器"[70]"特定于平台的参数"[71]"地址组参数"[73]有关其他类型的可调参数,请参考以下内容:OracleSolarisZFS可调参数-第3章OracleSolarisZFS可调参数NFS可调参数-第4章NFS可调参数Internet协议套件可调参数-第5章Internet协议套件可调参数系统工具可调参数-第6章系统工具参数常规内核及内存参数22OracleSolaris11.
2可调参数参考手册2014年12月常规内核及内存参数本节介绍了与物理内存和栈配置相关的常规内核参数.
有关ZFS相关内存参数,请参阅第3章OracleSolarisZFS可调参数.
physmem说明在考虑OracleSolarisOS和固件后,修改系统的物理内存页数配置.
数据类型无符号长整数缺省值系统上可用物理内存的可用页数,不包括用于存储核心内核和数据的内存范围1-系统上的物理内存量单位页动态否验证无何时更改要测试以较少的物理内存运行系统的效果时.
因为此参数不考虑核心内核和数据使用的内存以及启动进程中早期分配的各种其他数据结构使用的内存,因此physmem的值应该小于表示较少内存量的实际页数.
交付级别不稳定default_stksize说明指定所有线程的缺省栈大小.
任何线程创建时具有的栈大小都不能小于default_stksize.
如果设置了default_stksize,它会覆盖lwp_default_stksize.
另请参见"lwp_default_stksize"[23].
数据类型整型缺省值在具有sun4u处理器的SPARC系统上为3xPAGESIZE在具有sun4v处理器的SPARC系统上为4xPAGESIZE在x64系统上为5xPAGESIZE范围最小值为缺省值:常规内核及内存参数第2章OracleSolaris内核可调参数23在具有sun4u处理器的SPARC系统上为3xPAGESIZE在具有sun4v处理器的SPARC系统上为4xPAGESIZE在x64系统上为5xPAGESIZE最大值为缺省值的32倍.
单位getpagesize参数返回的值的倍数字节.
有关更多信息,请参见getpagesize(3C).
动态是.
影响在变量更改后创建的线程.
验证必须大于或等于8192且小于或等于262,144(256x1024).
还必须是系统页大小的倍数.
如果不满足这些条件,将显示以下消息:Illegalstacksize,UsingNN的值是default_stksize的缺省值.
何时更改当系统因为用完栈空间而崩溃时.
此问题的最佳解决方法是确定系统为何用完空间,然后进行纠正.
增大缺省栈大小意味着几乎每个内核线程都将具有更大的栈,从而导致内核内存消耗增加却没有合理原因.
一般情况下,该空间将处于未使用状态.
消耗增加意味着争用同一内存池的其他资源的可用空间将减少,从而可能降低系统执行工作的能力.
其中一个负面影响是内核可以创建的线程数将减少.
此解决方法只能作为在纠正根本原因之前采取的临时解决方法.
交付级别不稳定lwp_default_stksize说明指定在创建内核线程时,当调用例程没有提供要使用的明确大小时,要使用的栈大小的缺省值.
您指定的任何栈大小都按一页redzone增长.
数据类型整型缺省值缺省的SPARC栈大小为3页(3x8,192=24,576)+8KBredzone缺省的x64栈大小为5页(5x4,096=20,480)+4KBredzone范围最小值为缺省值:在SPARC系统上为3xPAGESIZE在x64系统上为5xPAGESIZE常规内核及内存参数24OracleSolaris11.
2可调参数参考手册2014年12月最大值为缺省值的32倍.
单位getpagesize参数返回的值的倍数字节.
有关更多信息,请参见getpagesize(3C).
动态是.
影响在变量更改后创建的线程.
验证必须大于或等于8192且小于或等于262,144(256x1024).
还必须是系统页大小的倍数.
如果不满足这些条件,将显示以下消息:Illegalstacksize,UsingNN的值是lwp_default_stksize的缺省值.
何时更改当系统因为用完栈空间而崩溃时.
此问题的最佳解决方法是确定系统为何用完空间,然后进行纠正.
增大缺省栈大小意味着几乎每个内核线程都将具有更大的栈,从而导致内核内存消耗增加却没有合理原因.
一般情况下,该空间将处于未使用状态.
消耗增加意味着争用同一内存池的其他资源的可用空间将减少,从而可能降低系统执行工作的能力.
其中一个负面影响是内核可以创建的线程数将减少.
此解决方法只能作为在纠正根本原因之前采取的临时解决方法.
交付级别不稳定logevent_max_q_sz说明允许排队并等待传送到syseventd守护进程的最大系统事件数.
一旦系统事件队列的大小达到此限制,队列中将不允许任何额外的系统事件.
数据类型整型缺省值5000范围0-MAXINT单位系统事件动态是验证每次ddi_log_sysevent和sysevent_post_event生成系统事件时,系统事件框架都会检查该值.
有关更多信息,请参见ddi_log_sysevent(9F)和sysevent_post_event(3SYSEVENT).
常规内核及内存参数第2章OracleSolaris内核可调参数25何时更改当错误日志消息指出无法记录、生成或发布系统事件时.
交付级别不稳定segkpsize说明指定可用的内核可分页内存量.
此内存主要用于内核线程栈.
增大该值将允许为相同数量的线程或更多线程使用更大的栈.
缺省的系统线程栈大小在"lwp_default_stksize"[23]中有描述.
SPARC:此参数可通过编辑/etc/system文件修改.
x64:此参数仅可按如下方式修改:在内核调试器下引导在系统启动进程的开头设置断点设置所需的值数据类型无符号长整数缺省值nCPUs/128或物理内存量/256GB中的较小者x2GB范围512MB-64GB(SPARC)200MB至8GB(x64)单位页动态否验证值将与最小大小和最大大小进行比较.
如果小于最小值或大于最大值,会将该值重置为2GB.
将显示一条消息来指示该结果.
在SPARC系统上,segkpsize值不能超过物理内存大小的两倍.
在x64系统上,该值不能超过物理内存的大小.
何时更改需要更改此参数以在系统上支持大量进程时.
缺省大小允许为65,535个内核线程创建32-KB的栈.
在64位内核中,无论进程是32位进程还是64位进程,内核栈的大小都相同.
交付级别不稳定noexec_user_stack说明将栈标记为不可执行的,这有助于更好地阻止缓冲区溢出攻击.
fsflush和相关参数26OracleSolaris11.
2可调参数参考手册2014年12月运行有64位内核的OracleSolaris系统在缺省情况下使所有64位应用程序的栈成为不可执行的.
要使32位应用程序成为不可执行的,需要设置此参数.
数据类型带符号整数缺省值0(禁用)范围0(禁用)或1(启用)单位切换(开/关)动态是.
不影响当前正在运行的进程,仅影响在设置该值后创建的进程.
验证无何时更改应始终启用,除非应用程序故意将可执行代码放在栈上,且没有使用mprotect使栈成为可执行的.
有关更多信息,请参见mprotect(2).
交付级别不稳定fsflush和相关参数本节介绍了fsflush和相关的可调参数.
fsflush系统守护进程fsflush会定期运行来执行三个主要任务:1.
每次调用时,fsflush都会将存在时间超过指定期限的脏文件系统页刷新到磁盘.
2.
每次调用时,fsflush都会检查内存的一部分,并促使已修改的页写入它们的后备存储.
如果页已修改并且不符合以下某个条件,则会被写入:页是内核页页是空闲的页被锁定页与某个交换设备相关联页当前参与了某个I/O操作实际结果是将刷新文件中通过mmap以写权限映射的页以及已实际更改的页.
fsflush和相关参数第2章OracleSolaris内核可调参数27页将刷新到后备存储中,但是保持附加到使用它们的进程.
这样,如果页自刷新以来未进行修改,可以通过避免在声明页之前延迟将页写入后备存储,因而当系统在内存不足情况下运行时,这将可以简化页回收.
3.
fsflush将文件系统元数据写入到磁盘.
写入是在每个第n次调用时执行的,其中n是根据各种配置变量计算得出的.
有关详细信息,请参见"tune_t_fsflushr"[27]和"autoup"[27].
以下功能是可配置的:调用频率(tune_t_fsflushr)是否执行内存扫描(dopageflush)是否进行文件系统数据刷新(doiflush)进行文件系统数据刷新的频率(autoup)对于大多数系统,内存扫描和文件系统元数据同步是fsflush的主要活动.
根据系统使用情况,内存扫描可能只使用很少CPU时间,也可能会占用太多的CPU时间.
tune_t_fsflushr说明指定fsflush调用之间的秒数数据类型带符号整数缺省值1范围1-MAXINT单位秒动态否验证如果该值小于或等于零,则该值将重置为1并显示一条警告消息.
此检查仅在引导时执行.
何时更改请参见autoup参数.
交付级别不稳定autoup说明与tune_t_flushr配合使用时,autoup控制每次调用中查找脏页时要检查的内存量以及文件系统同步操作的频率.
fsflush和相关参数28OracleSolaris11.
2可调参数参考手册2014年12月autoup的值还用于控制是否从空闲表写出缓冲区.
如果缓冲区标有B_DELWRI标志(它标识已更改的文件内容页),只要该缓冲区位于列表中的时间已超过autoup秒,就将写出该缓冲区.
增大autoup的值会将缓冲区在内存中保留更长时间.
数据类型带符号整数缺省值30范围1-MAXINT单位秒动态否验证如果autoup小于或等于零,则会将其重置为30并显示一条警告消息.
此检查仅在引导时执行.
隐式autoup应该是tune_t_fsflushr的整数倍.
autoup应该至少是tune_t_fsflushr的值的6倍.
如果不是这样,每次调用fsflush时都会扫描大量内存.
要使得在dopageflush为非零值时对内存进行检查,总系统页数乘以tune_t_fsflushr应该大于或等于autoup.
何时更改下面是更改autoup和/或tune_t_fsflushr的几种可能情况:系统具有大量内存-在这种情况下,增大autoup可以减少每次调用fsflush时扫描的内存量.
系统具有最低内存需求-同时增大autoup和tune_t_fsflushr可以减少执行的扫描次数.
要保持autoup/tune_t_fsflushr的当前比率,也应增大autoup.
具有大量瞬态文件的系统(例如,邮件服务器或软件生成计算机)-如果创建了大量文件,然后将其删除,fsflush可能会将这些文件的数据页写入磁盘,但这是不必要的.
交付级别不稳定dopageflush说明控制在fsflush调用期间是否检查内存以查找已修改的页.
每次调用fsflush时,都将确定系统中的物理内存页数.
该数值可能已经因为某个动态重新配置操作而改变.
每次调用在扫描时将使用以下算法:总页数xtune_t_fsflushr/autoup页数fsflush和相关参数第2章OracleSolaris内核可调参数29数据类型带符号整数缺省值1(启用)范围0(禁用)或1(启用)单位切换(开/关)动态是验证无何时更改如果系统页扫描程序极少运行(由vmstat输出的sr列中的0值予以指示).
交付级别不稳定doiflush说明控制在fsflush调用期间是否要执行文件系统元数据同步.
此同步是在fsflush的每第N次调用时执行的,其中N=(autoup/tune_t_fsflushr).
因为此算法是整数除法,代码会进行检查以查看其迭代计数器的值是否大于或等于N,所以如果tune_t_fflushr大于autoup,则每次调用sfush时都将执行同步.
请注意,只会在调用fsflush时对N计算一次.
随后对tune_t_fsflushr或autoup的更改对同步操作的频率没有影响.
数据类型带符号整数缺省值1(启用)范围0(禁用)或1(启用)单位切换(开/关)动态是验证无何时更改一段期间内频繁修改文件且刷新导致的负载干扰了系统行为时.
如果系统重新引导能够更好地保留在某个TMPFS文件系统(例如/tmp)中,则那些文件的存在及其状态一致性也不再会造成问题.
通过使用mount-noatime选项,可以减少系统上的inode通信.
此选项使得在访问文件时不进行inode更新.
进程大小调整参数30OracleSolaris11.
2可调参数参考手册2014年12月对于参与实时处理的系统,您可能希望禁用此选项并使用显式应用程序文件同步来获得一致性.
交付级别不稳定进程大小调整参数有多个参数(或变量)用于控制系统上的可用进程数以及单个用户可以创建的进程数.
基础参数是maxusers.
该参数派生了指定给max_nprocs和maxuprc的值.
maxusers说明最初,maxusers定义了系统可以支持的登录用户数.
当生成内核时,会基于该设置确定各个表的大小.
当前OracleSolaris发行版基于系统上的内存量执行大多数大小调整工作.
因此,maxusers过去的许多用途已经发生变化.
依旧由maxusers派生的一些子系统包括:系统上的最大进程数系统中的配额结构数目录名称查找高速缓存(directorynamelook-upcache,DNLC)的大小数据类型带符号整数缺省值以MB为单位的内存量与2048中的较小者,上述较小值与nCPUsx8中的较大者范围下限为1,上限为2048或nCPUsx8中的较大者(如果未在/etc/system文件中设置,上限基于物理内存大小)下限为1,上限为4096或nCPUsx8中的较大者(如果在/etc/system文件中做了设置)单位用户动态否.
计算具有依赖性的参数后,不会再次引用maxusers.
验证如果值大于允许的最大值,会将该值重置为最大值.
将显示一条消息来指示该结果.
何时更改系统派生的缺省用户进程数过低时.
系统控制台上显示以下消息时表明发生了这种情况:进程大小调整参数第2章OracleSolaris内核可调参数31outofprocesses您还可能在缺省进程数过高时更改此参数,如以下情况中所示:当减小maxusers的缺省值时,如果数据库服务器具有大量内存且正在运行的进程相对较少,则可以节省系统内存.
如果文件服务器具有大量内存和较少的正在运行的进程,您可以减小该值.
不过,您应该显式设置DNLC的大小.
请参阅"ncsize"[58].
交付级别不稳定reserved_procs说明指定在进程表中要为UID为root(0)的进程保留的系统进程槽数.
例如,fsflush的UID为root(0).
数据类型带符号整数缺省值5范围5-MAXINT单位进程动态否.
在初次参数计算后将不再使用.
验证将与任何/etc/system设置进行匹配.
交付级别不稳定何时更改考虑增大到10+系统上的正常UID0(root)进程数时.
当系统没有其他办法创建用户级进程而需要获取rootshell时,该设置可以提供一定的缓冲.
pidmax说明指定最大可能进程ID的值.
pidmax设置maxpid变量的值.
设置maxpid后,将会忽略pidmax.
maxpid在内核中的其他位置用来确定最大进程ID并用于验证检查.
通过在/etc/system文件中添加条目来设置maxpid的任何尝试都没有效果.
进程大小调整参数32OracleSolaris11.
2可调参数参考手册2014年12月数据类型带符号整数缺省值30,000范围5至999,999单位进程动态否.
仅在引导时用来设置pidmax的值.
验证是.
该值将与reserved_procs的值和999,999进行比较.
如果该值小于reserved_procs或大于999,999,则该值将被设置为999,999.
隐式max_nprocs范围检查将确保max_nprocs始终小于或等于该值.
何时更改需要更改此参数以便在系统上支持30,000个以上的进程时.
另请参见"max_nprocs"[32].
交付级别不稳定max_nprocs说明指定可以在系统上创建的最大进程数.
包括系统进程和用户进程.
在计算maxuprc时将使用/etc/system中指定的任何值.
在确定多个其他系统数据结构的大小时也将使用该值.
需要用到此参数的其他数据结构如下所述:确定目录名称查找高速缓存的大小(如果未指定ncsize)验证所配置的系统V信号使用的内存量没有超出系统限制为x86平台配置硬件地址转换资源数据类型带符号整数缺省值10+(16xmaxusers)如果在/etc/system文件中设置了maxusers30,000或10+(128xCPU数目)中的较大者,如果未在/etc/system文件中设置maxusers范围26-maxpid的值动态否验证是.
如果值超过maxpid,该值将设置为maxpid.
进程大小调整参数第2章OracleSolaris内核可调参数33何时更改更改此参数是在系统上支持30,000个以上的进程所需的步骤之一.
交付级别不稳定maxuprc说明指定任何一个用户可以在系统上创建的最大进程数.
数据类型带符号整数缺省值max_nprocs-reserved_procs范围1-(max_nprocs-reserved_procs)单位进程动态否验证是.
该值将与max_nprocs-reserved_procs进行比较并设置为这两个值中的较小值.
何时更改当您希望为用户可以创建的进程数指定的硬限制小于系统可以创建的缺省进程数时.
任何超出该限制的尝试将在控制台上或在消息文件中生成以下警告消息:outofper-userprocessesforuidN交付级别不稳定ngroups_max说明指定每进程的最大补充组数.
数据类型带符号整数缺省值16范围0-1024单位组动态否分页相关参数34OracleSolaris11.
2可调参数参考手册2014年12月验证是.
如果ngroups_max设置为无效值,则该值将自动重置为最接近的合法值.
例如,如果该值设置为小于零的值,它将重置为0.
如果该值设置为大于1024的值,它将重置为1024.
何时更改如果您在使用NFSAUTH_SYS验证并想要增大ngroups_max缺省值,请注意以下事项:1.
如果ngroups_max设置为16,或者提供的客户机的AUTH_SYS凭证小于或等于15个组,则将使用客户机的组信息.
2.
如果ngroups_max设置为大于16并且名称服务器中客户机的AUTH_SYS凭证正好包含16个组,则允许最大值,NFS服务器将访问名称服务器并将客户机的UID与用户名相匹配.
然后,名称服务器计算用户所属的组列表.
交付级别不稳定分页相关参数SolarisOS使用需求换页式虚拟内存系统.
系统运行时,会根据需要将页引入内存中.
当内存占用达到特定阈值之上并且对内存的需求仍在继续,将开始换页.
换页要经过由特定参数控制的多个级别.
常规换页算法如下所述:检测到内存不足.
页扫描程序线程运行并开始遍历内存.
使用包含两个步骤的算法:1.
将页标记为未使用的.
2.
如果在经过一个时间间隔后仍处于未使用状态,该页将被视为要回收的主体.
如果页已经修改,则会向页面调出线程发出请求以针对该页面调度I/O.
同时,页扫描程序继续查看内存.
页面调出将促使该页被写入其后备存储并置于空闲表中.
页扫描程序扫描内存时,不会对页的来源进行区分.
页可能来自数据文件,也可能是来自可执行文件的文本、数据或栈的页.
随着系统上的内存压力增加,算法在考虑备选回收页方面以及在运行换页算法的频率方面将变得更为主动.
(有关更多信息,请参见"fastscan"[40]和"slowscan"[41].
)因为可用内存处于范围lotsfree和minfree之间,所以系统将线性增加每次调用页面调出线程时扫描的内存量,从由slowscan指定的值增加到由fastscan指定的值.
系统使用desfree参数控制关于资源使用和行为的决策数.
系统最初限制自身使用不超过一个CPU的4%来进行pageout操作.
随着内存压力增加,支持pageout操作时消耗的CPU时间量将线性增加,直到最大值,即一个CPU的80%.
算法将检查一定量的内存(介于slowscan和fastscan之间),然后在发生下列情况之一时停止:已经找到了足够的页来解决内存不足问题.
分页相关参数第2章OracleSolaris内核可调参数35已经查看了计划的页数.
已经消耗了过多时间.
当页面调出线程完成其扫描时,如果仍存在内存不足问题,则会调度在将来执行1/4秒的另一次扫描.
换页子系统的配置机制已更改.
不是依赖于fastscan、slowscan和handspreadpages的一组预定义值,系统将在引导时为这些参数确定适当的设置.
在/etc/system文件中设置这些参数中的任何一个都会导致系统不能使用最佳值.
注意-请从/etc/system文件中删除VM系统的所有调优设置.
请以缺省设置运行并确定是否需要调整这些参数中的任何参数.
不要设置cachefree或priority_paging.
支持对CPU和内存的动态重新配置(DynamicReconfiguration,DR).
涉及内存添加或删除的DR操作中的系统会重新计算相关参数的值,除非已在/etc/system中显式设置了这些参数.
如果已显式设置,将使用/etc/system中指定的值,除非违反了对变量值的约束.
如果那样,将重置该值.
lotsfree说明充当启动系统换页操作的初始触发器.
当超过此阈值时,页扫描程序将被激活以开始查找要回收的内存页.
数据类型无符号长整数缺省值物理内存的1/64和512KB中的较大者范围最小值是512KB和物理内存的1/64中的较大者,表示为页数(使用getpagesize返回的页大小).
有关更多信息,请参见getpagesize(3C).
最大值是物理内存页数.
最大值应该不超过物理内存的30%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页动态是,但如果发生基于内存的DR操作,则动态更改将丢失.
验证如果lotsfree大于物理内存量,则其值将被重置为缺省值.
隐式lotsfree大于desfree,后者又大于minfree,应始终保持这种关系.
何时更改如果页需求突然急剧增加,内存算法可能无法跟上需求.
一个解决方法是提早开始回收内存.
此解决方法可以为换页系统提供一些额外余量.
分页相关参数36OracleSolaris11.
2可调参数参考手册2014年12月一个经验法则是将此参数设置为系统在数秒内需要分配的数量的2倍.
此参数受工作负荷影响.
DBMS服务器在缺省设置下可能工作良好.
不过,对于执行繁重的文件系统I/O的系统,您可能需要调整此参数.
对于具有相对静态的工作负荷和大量内存的系统,请降低此值.
最小可接受值为512KB,表示为页数(使用getpagesize返回的页大小).
交付级别不稳定desfree说明指定在系统上始终空闲的合适内存量.
数据类型无符号整数缺省值lotsfree/2范围最小值是256KB和物理内存的1/128中的较大者,表示为页数(使用getpagesize返回的页大小).
最大值是物理内存页数.
最大值应该不超过物理内存的15%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果desfree大于lotsfree,则desfree将设置为lotsfree/2.
不会显示任何消息.
隐式lotsfree大于desfree,后者又大于minfree,应始终保持这种关系.
副作用增大此参数的值可能会带来多种负面影响.
当新值接近或超过系统上的可用内存量时,会发生以下情况:将不处理异步I/O请求,除非可用内存超过desfree.
增大desfree的值可能会导致本应可以成功的请求被拒绝.
NFS异步写入被作为同步写入执行.
交换程序将提前激活,交换程序的行为将倾向于更主动的操作.
系统可能无法将尽可能多的可执行页预装入系统.
此负面影响可能会导致应用程序的运行速度比它们应有的速度要慢.
分页相关参数第2章OracleSolaris内核可调参数37何时更改对于具有相对静态的工作负荷和大量内存的系统,请降低此值.
最小可接受值为256KB,表示为页数(使用getpagesize返回的页大小).
交付级别不稳定minfree说明指定最小可接受内存级别.
当内存低于此数值时,系统将优先安排成功完成页面调出操作或者将进程完全交换出内存所需的分配.
分配将拒绝或者阻塞其他分配请求.
数据类型无符号整数缺省值desfree/2范围最小值是128KB和物理内存的1/256中的较大者,表示为页数(使用getpagesize返回的页大小).
最大值是物理内存页数.
最大值应该不超过物理内存的7.
5%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果minfree大于desfree,则minfree将设置为desfree/2.
不会显示任何消息.
隐式lotsfree大于desfree,后者又大于minfree,应始终保持这种关系.
何时更改缺省值通常就足够了.
对于具有相对静态的工作负荷和大量内存的系统,请降低此值.
最小可接受值为128KB,表示为页数(使用getpagesize返回的页大小).
交付级别不稳定throttlefree说明指定内存级别,在该级别,阻塞的内存分配请求将被置于休眠状态,即使内存足以满足该请求.
分页相关参数38OracleSolaris11.
2可调参数参考手册2014年12月数据类型无符号整数缺省值minfree范围最小值是128KB和物理内存的1/256中的较大者,表示为页数(使用getpagesize返回的页大小).
最大值是物理内存页数.
最大值应该不超过物理内存的4%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果throttlefree大于desfree,则throttlefree将设置为minfree.
不会显示任何消息.
隐式lotsfree大于desfree,后者大于minfree,应始终保持这种关系.
何时更改缺省值通常就足够了.
对于具有相对静态的工作负荷和大量内存的系统,请降低此值.
最小可接受值为128KB,表示为页数(使用getpagesize返回的页大小).
有关更多信息,请参见getpagesize(3C).
交付级别不稳定pageout_reserve说明指定保留供页面调出或调度程序线程专用的页数.
当可用内存小于该值时,对于除页面调出或调度程序之外的进程,将拒绝非阻塞分配.
页面调出线程需要有一个小内存池供其使用,以便它可以分配执行I/O来将页写入其后备存储时所需的数据结构.
数据类型无符号整数缺省值throttlefree/2范围最小值是64KB和物理内存的1/512中的较大者,表示为页数(使用getpagesize(3C)返回的页大小).
最大值是物理内存页数.
最大值应该不超过物理内存的2%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页分页相关参数第2章OracleSolaris内核可调参数39动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果pageout_reserve大于throttlefree/2,则pageout_reserve将设置为throttlefree/2.
不会显示任何消息.
隐式lotsfree大于desfree,后者又大于minfree,应始终保持这种关系.
何时更改缺省值通常就足够了.
对于具有相对静态的工作负荷和大量内存的系统,请降低此值.
最小可接受值为64KB,表示为页数(使用getpagesize返回的页大小).
交付级别不稳定pages_pp_maximum说明定义必须处于未锁定状态的页数.
如果将锁定页的某个请求会迫使可用内存低于该值,将会拒绝该请求.
数据类型无符号长整数缺省值(tune_t_minarmem+100和[引导时可用内存的4%+4MB])中的较大者范围系统强制实施的最小值是tune_t_minarmem+100.
系统不会强制实施最大值.
单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果/etc/system文件中指定的值或计算得出的缺省值小于tune_t_minarmem+100,则该值将重置为tune_t_minarmem+100.
如果增大/etc/system文件中的该值,则不会显示任何消息.
仅在引导时,以及在涉及添加或删除内存的动态重新配置操作期间,才会进行验证.
何时更改当可用内存量看起来足够用,但内存锁定请求却失败或者向共享内存段附加SHARE_MMU标志失败时.
分页相关参数40OracleSolaris11.
2可调参数参考手册2014年12月太大的值会导致内存锁定请求(mlock、mlockall和memcntl)无谓地失败.
有关更多信息,请参见mlock(3C)、mlockall(3C)和memcntl(2).
交付级别不稳定tune_t_minarmem说明定义为避免死锁而需要维持的最小可用驻留(不可交换)内存.
用来保留部分内存供OS的核心使用.
在OS确定最大可用内存量时,以此方式限制的页将不可见.
数据类型带符号整数缺省值25范围1-物理内存单位页动态否验证无.
较大的值会导致物理内存浪费.
何时更改缺省值通常就足够了.
如果系统发生锁定并且调试信息指示没有内存可用,请考虑增大缺省值.
交付级别不稳定fastscan说明定义内存压力最高时系统每秒查看的最大页数.
数据类型带符号整数缺省值请以下列方式之一设置fastscan缺省值:使用/etc/system文件中设置的fastscan值.
使用/etc/system文件中设置的maxfastscan值.
如果/etc/system文件中既没有设置fastscan也没有设置maxfastscan,fastscan将在系统引导时设置为64MB.
然后,分页相关参数第2章OracleSolaris内核可调参数41在系统引导几分钟后,fastscan值将设置为扫描程序使用一个CPU的10%在一秒内可以扫描的页数.
在以上所有三种情况中,如果派生的值大于系统中内存的一半,fastscan值将被限定为系统中内存值的一半.
范围64MB-系统物理内存的一半单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证最大值是64MB和物理内存的1/2中的较小者.
何时更改当内存不足期间首选更主动的内存扫描时,特别是当系统受制于密集内存需求时,或者当执行繁重文件I/O时.
交付级别不稳定slowscan说明定义尝试回收内存时系统每秒查看的最小页数.
数据类型带符号整数缺省值物理内存的1/20(以页数表示)和100中的较小者.
范围1-fastscan/2单位页动态是,除非发生添加或删除内存的动态重新配置操作.
在那种情况下,该值将重置为/etc/system文件中提供的值或者将根据新的物理内存值计算得出.
验证如果slowscan大于fastscan/2,则slowscan将重置为fastscan/2.
不会显示任何消息.
何时更改当内存不足期间首选更主动的内存扫描时,特别是当系统受制于密集内存需求时.
交付级别不稳定分页相关参数42OracleSolaris11.
2可调参数参考手册2014年12月min_percent_cpu说明定义pageout可以使用的最小CPU百分比.
在确定页扫描程序可以使用的最大时间量时,可以使用此参数作为起点数据类型带符号整数缺省值4范围1-80单位百分比动态是验证无何时更改在具有多个CPU和大量内存的系统上,如果系统受制于密集内存需求,增大该值可以允许页面调度程序花费更多时间来尝试查找内存.
交付级别不稳定handspreadpages说明OracleSolarisOS使用双指针时钟算法来查找当内存较低时要回收的页.
时钟的第一个指针遍历内存,将页标记为未使用的.
第二个指针在第一个指针之后一段距离遍历内存,查看页是否仍标记为未使用的.
如果页仍标记为未使用的,该页将被回收.
第一个指针和第二个指针之间的距离为handspreadpages.
数据类型无符号长整数缺省值fastscan范围1-系统中的最大物理内存页数单位页动态是.
此参数要求内核reset_hands参数也设置为非零值.
在handspreadpages的新值被认可后,reset_hands将设置为零.
验证该值将设置为物理内存量和handspreadpages值中的较小者.
分页相关参数第2章OracleSolaris内核可调参数43何时更改当您要增大页在被回收之前可能驻留的时间量时.
增大该值会增大两个指针之间的间隔,因此,会增大回收页之前的时间量.
交付级别不稳定pages_before_pager说明定义在I/O完成后立即释放页(而不是存储页以便可以重用)的部分系统阈值.
阈值为lotsfree+pages_before_pager.
NFS环境还使用此阈值在内存压力增加时减少其异步活动.
数据类型带符号整数缺省值200范围1-物理内存量单位页动态否验证无何时更改如果绝大多数I/O是针对实际上只读取或写入了一次便未再引用的页执行的,则您可以更改此参数.
将此变量设置为较大的内存量可以保持向空闲表添加页.
此外,当系统受制于突发的严重内存压力时,您也可以更改此参数.
在这种情况下,较大的值有助于保持较大的缓冲来应对压力.
交付级别不稳定maxpgio说明定义换页系统可以排队的最大页I/O请求数.
此数值除以4可以得到分页系统使用的最大实际数值.
此参数用于限制请求数以及控制进程交换.
数据类型带符号整数缺省值400范围1到一个可变的最大值,该最大值取决于系统体系结构,但是主要取决于I/O子系统,例如控制器数、磁盘数和磁盘交换区大小与交换相关的参数44OracleSolaris11.
2可调参数参考手册2014年12月单位I/0动态否验证无隐式来自页面调度程序的最大I/O请求数受请求缓冲区列表大小的限制,该大小当前为256.
何时更改需要增大此参数以便更快地换出内存时.
如果配置了多个交换设备或者如果交换设备为分散读写设备,较大的值可能有助于更快地缓解内存压力.
请注意,现有I/O子系统应该能够处理额外I/O负载.
此外,如果交换分区和应用程序文件位于同一磁盘上,增大交换区I/O可能会降低应用程序I/O性能.
交付级别不稳定与交换相关的参数OracleSolarisOS中的交换操作是由swapfs伪文件系统完成的.
交换设备上的空间与物理内存的组合被视为空间池,可用于为系统提供支持以便为匿名内存维护后备存储.
系统首先尝试从磁盘设备分配空间,然后使用物理内存作为后备存储.
当swapfs被迫将系统内存用于后备存储时,将强制实施限制以便确保系统不会因为swapfs的过度使用而发生死锁.
swapfs_reserve说明定义要保留供系统(UID=0)进程使用的内存量.
数据类型无符号长整数缺省值4MB和物理内存的1/16中的较小者范围最小值是4MB和物理内存的1/16中的较小者,表示为页数(使用getpagesize返回的页大小).
最大值是物理内存页数.
最大值应该不超过物理内存的10%.
系统不会强制实施此范围,但"验证"部分所述内容除外.
单位页动态否验证无内核内存分配器第2章OracleSolaris内核可调参数45何时更改一般情况下不需要更改.
仅当软件提供商建议更改时,或者当系统进程因无法获取交换空间而终止时才应更改.
一个更好的解决方法是向系统添加物理内存或者其他交换设备.
交付级别不稳定swapfs_minfree说明定义应保留为空闲状态以供系统的其余部分使用的必需物理内存量.
当尝试保留内存以用作某个进程的交换空间时,如果系统感到可用内存将变得低于该值,则会拒绝这些尝试.
以此方式保留的页仅能用于由内核或用户级进程执行的锁定分配.
数据类型无符号长整数缺省值2MB和物理内存的12.
5%中的较大者范围1-物理内存量单位页动态否验证无何时更改当进程因为无法获取交换空间而失败,但系统仍有可用内存时,考虑减小此参数值.
例如,可更改此值以使用不超过6.
25%的系统内存,但是当低于系统内存的5%时不要减小该值.
在SPARC系统上,该值应该至少为tsb_alloc_hiwater_factor值的2倍.
有关更多信息,请参见"tsb_alloc_hiwater_factor"[71].
交付级别不稳定内核内存分配器OracleSolaris内核内存分配器在内核中分布内存块以供客户机使用.
分配器创建大小不同的的许多高速缓存供其客户机使用.
客户机还可以请求分配器创建高速缓存以供其自己使用(例如,分配特定大小的结构).
可以使用kstat-ckmem_cache命令查看分配器管理的每个高速缓存的相关统计信息.
有时,系统可能因为内存损坏而崩溃.
内核内存分配器支持一个调试接口(一组标志),该接口对缓冲区执行各种完整性检查.
内核内存分配器还收集关于分配器的信内核内存分配器46OracleSolaris11.
2可调参数参考手册2014年12月息.
通过完整性检查,可以在错误实际发生之前检测到这些错误.
收集的信息在支持人员尝试查明崩溃原因时为他们提供一些额外数据.
使用这些标志会导致在系统操作过程中产生额外的系统开销和内存使用情况.
仅当怀疑发生了内存损坏问题时才应使用这些标志.
kmem_flags说明OracleSolaris内核内存分配器具有各种调试和测试选项.
下面介绍了五个受支持的标志设置.
标志设置说明AUDIT0x1分配器维护着一个日志,其中包含其最近的活动历史记录.
所记录的项数取决于是否还设置了CONTENTS.
日志的大小是固定的.
当空间耗尽时,将回收早期的记录.
TEST0x2分配器将某个模式写入已释放的内存,并在下次分配缓冲区时检查该模式是否保持未变.
如果缓冲区的某些部分已更改,则先前分配并释放了该缓冲区的客户机可能已使用了内存.
如果检测到覆盖,系统将会崩溃.
REDZONE0x4分配器在所请求的缓冲区末尾提供额外的内存并在该内存中插入一个特殊模式.
当缓冲区被释放时,会检查该模式以查看写入数据时是否超出了缓冲区末尾.
如果检测到覆盖,内核将会崩溃.
CONTENTS0x8当缓冲区被释放时,分配器记录最多256字节的缓冲区内容.
该标志要求同时设置AUDIT.
这些标志的数值可按逻辑方式加在一起并通过/etc/system文件进行设置.
LITE0x100分配和释放缓冲区时执行最小完整性检查.
启用了此标志时,分配器会检查是否尚未写入到红色区域中、已释放的缓冲区是否未被再次释放以及正在释放的缓冲区是否为已分配的大小.
不要将此标志与任何其他标志组合使用.
数据类型带符号整数缺省值0(禁用)范围0(禁用)或1-15或256(0x100)动态是.
运行时所做的更改仅影响新的内核内存高速缓存.
在系统初始化后,极少会创建新的高速缓存.
验证无常规驱动程序参数第2章OracleSolaris内核可调参数47何时更改怀疑发生内存损坏时.
交付级别不稳定kmem_stackinfo说明如果创建内核线程时在/etc/system中启用了kmem_stackinfo变量,将会以特定模式填充内核线程栈,而不是用零填充.
在内核线程执行过程中,此内核线程栈模式将被逐步覆盖.
从栈顶部开始直到找不到该模式为止,一个简单计数会提供一个高水位值,该值是内核线程使用的最大内核栈空间.
该机制允许以下功能:计算实际为系统中的当前内核线程使用的内核线程栈所占的百分比(高水位)当某个内核线程结束时,对于最后那些在终止前已使用了其大部分内核线程栈的内核线程,系统会将其记录到一个小的循环内存缓冲区中数据类型无符号整数缺省值0(禁用)范围0(禁用)或1(启用)动态是验证无何时更改当您希望监视内核线程栈使用情况时.
请记住,当启用了kmem_stackinfo时,创建和删除kthreads时的性能会降低.
有关更多信息,请参见《OracleSolaris模块调试器指南》.
区域配置此参数必须在全局区域中设置.
交付级别不稳定常规驱动程序参数moddebug说明当启用了此参数时,会显示关于模块装入过程中各个步骤的消息.
常规驱动程序参数48OracleSolaris11.
2可调参数参考手册2014年12月数据类型带符号整数缺省值0(消息关闭)范围下面是最有用的值:0x80000000-输出[un]loading.
.
.
消息.
对于装入的每个模块,将在控制台上和/var/adm/messages文件中显示如下所示的消息:Apr2017:18:04neogenunix:[ID943528kern.
notice]load'sched/TS_DPTBL'id15loaded@0x7be1b2f8/0x19c8380size176/2096Apr2017:18:04neogenunix:[ID131579kern.
notice]installingTS_DPTBL,moduleid15.
0x40000000-输出详细的错误消息.
对于装入的每个模块,将在控制台上和/var/adm/messages文件中显示如下所示的消息:Apr2018:30:00neounix:Errno=2Apr2018:30:00neounix:kobj_open:vn_openof/platform/sun4v/kernel/exec/sparcv9/intpexecfailsApr2018:30:00neounix:Errno=2Apr2018:30:00neounix:kobj_open:'/kernel/exec/sparcv9/intpexec'Apr2018:30:00neounix:vp=60015777600Apr2018:30:00neounix:kobj_close:0x60015777600Apr2018:30:00neounix:kobj_open:vn_openof/platform/SUNW,Sun-Fire-T200/kernel/exec/sparcv9/intpexecfails,Apr2018:30:00neounix:Errno=2Apr2018:30:00neounix:kobj_open:vn_openof/platform/sun4v/kernel/exec/sparcv9/intpexecfails0x20000000-输出更详细的消息.
设置为此值时,在系统引导过程中,输出的信息不会比使用0x40000000标志时输出的信息多.
不过,设置为此值时,在卸载模块时会输出与模块的释放相关的信息.
这些值可以相加在一起来设置最终值.
动态是验证无何时更改当模块未按预期的那样装入时,或者系统在装入模块过程中看似挂起时.
请注意,当设置为0x40000000时,系统引导速度会相应地降低,取决于写入到控制台的消息数.
交付级别不稳定网络驱动程序参数第2章OracleSolaris内核可调参数49ddi_msix_alloc_limit说明仅限x86:此参数控制设备实例可以分配的扩展消息信号中断(ExtendedMessageSignaledInterrupts,MSI-X)数.
由于某个现有的系统限制,缺省值为2.
通过增大此参数的值,可以增加设备实例可以分配的MSI-X中断数.
可以在附加设备驱动程序之前通过编辑/etc/system文件或使用mdb命令来设置此参数.
数据类型带符号整数缺省值基于SPARC的系统:8基于x86的系统:2.
如果系统支持x2APIC,则apix模块可以将缺省值增加到8.
范围2-8动态是验证无何时更改要增加设备实例可以分配的MSI-X中断数时.
不过,如果您增加了设备实例可以分配的MSI-X中断数,不一定会有足够的中断来满足所有分配请求.
如果发生这种情况,某些设备可能会停止工作或者系统可能无法引导.
在这种情况下,可以减小值或者删除此参数.
交付级别不稳定网络驱动程序参数内核中的IP协议参数以下IP参数只能在/etc/system文件中设置.
修改该文件后,请重新引导系统.
例如,以下条目设置ipcl_conn_hash_size参数:setip:ipcl_conn_hash_size=valueipcl_conn_hash_size说明控制IP使用的连接散列表的大小.
缺省值0表示系统根据可用内存在引导时自动将该参数调整为合适的值.
网络驱动程序参数50OracleSolaris11.
2可调参数参考手册2014年12月数据类型无符号整数缺省值0范围0至82,500动态否.
只能在引导时更改该参数.
何时更改如果系统始终有成千上万个TCP连接,可以相应地增大该值.
增大散列表大小意味着更多的内存将被固定占用,因此会减少可供用户应用程序使用的内存.
交付级别不稳定ip_squeue_worker_wait说明控制在唤醒工作线程来处理已入队到squeue的TCP/IP数据包时的最大延迟.
squeue是TCP/IP内核代码用于处理TCP/IP数据包的序列化队列.
缺省值10毫秒范围0至50毫秒动态是何时更改如果对响应及时性要求较高,并且网络通信流量较小,请考虑调优此参数.
例如,当计算机主要为交互式网络通信流量提供服务时.
缺省值通常在网络文件服务器、Web服务器或具有充足网络通信流量的任何服务器上效果最佳.
区域配置只能在全局区域中设置该参数.
交付级别不稳定ip_squeue_fanout说明确定将TCP/IP连接与squeue相关联的模式.
值为0时会将新的TCP/IP连接与创建该连接的CPU相关联.
值为1时会将连接与属于不同CPU的多个squeue相关联.
缺省值1范围0或·1网络驱动程序参数第2章OracleSolaris内核可调参数51动态是何时更改在某些情况下,请考虑将该参数设置为1以将负载分布在所有CPU上.
例如,当CPU数超过NIC数并且单个CPU无法处理单个NIC的网络负载时,请将该参数更改为1.
区域配置只能在全局区域中设置该参数.
交付级别不稳定igb参数mr_enable说明此参数启用或禁用igb网络驱动程序使用的多个接收和传送队列.
可以在附加igb驱动程序之前通过编辑/etc/driver/drv/igb.
conf文件来设置此参数.
数据类型布尔值缺省值1(禁用多个队列)范围0(启用多个队列)或1(禁用多个队列)动态否验证无何时更改要启用或禁用igb网络驱动程序使用的多个接收和传送队列时.
交付级别不稳定intr_force说明此参数用于强制实施igb使用的中断类型,例如MSI、MSI-X或传统.
可以在附加igb驱动程序之前通过编辑/etc/driver/drv/igb.
conf文件来设置此参数.
数据类型无符号整数缺省值0(不强制实施中断类型)网络驱动程序参数52OracleSolaris11.
2可调参数参考手册2014年12月范围0(不强制实施中断类型)1(强制实施MSI-X中断类型)2(强制实施MSI中断类型)3(强制实施传统中断类型)动态否验证无何时更改要强制实施igb网络驱动程序使用的中断类型时.
交付级别不稳定ixgbe参数tx_queue_number说明此参数控制ixgbe网络驱动程序使用的传送队列数.
可以通过增大此参数的值来增加传送队列数.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值8范围1-32动态否验证无何时更改要更改ixgbe网络驱动程序使用的传送队列数时.
交付级别不稳定rx_queue_number说明此参数控制ixgbe网络驱动程序使用的接收队列数.
可以通过增大此参数的值来增加接收队列数.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
网络驱动程序参数第2章OracleSolaris内核可调参数53数据类型无符号整数缺省值8范围1-64动态否验证无何时更改要更改ixgbe网络驱动程序使用的接收队列数时.
交付级别不稳定intr_throttling说明此参数控制ixgbe网络驱动程序的中断抑制率.
可以通过减小此参数的值来增大中断率.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值200范围0至65535动态否验证无何时更改要更改ixgbe网络驱动程序使用的中断上限速率.
交付级别不稳定rx_limit_per_intr说明此参数控制ixgbe网络驱动程序使用的每中断最大接收队列缓冲区描述符数.
可以通过增大此参数的值来增加接收队列缓冲区描述符数.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数网络驱动程序参数54OracleSolaris11.
2可调参数参考手册2014年12月缺省值256范围16-4096动态否验证无何时更改要更改ixgbe网络驱动程序针对每个中断处理的接收队列缓冲区描述符数时.
交付级别不稳定tx_ring_size说明此参数控制ixgbe网络驱动程序使用的传送队列大小.
可以通过增大此参数的值来增加传送队列大小.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值1024范围64-4096动态否验证无何时更改要更改ixgbe网络驱动程序使用的传送队列大小时.
交付级别不稳定rx_ring_size说明此参数控制ixgbe网络驱动程序使用的接收队列大小.
可以通过增大此参数的值来增加接收队列大小.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值1024范围64-4096网络驱动程序参数第2章OracleSolaris内核可调参数55动态否验证无何时更改要更改ixgbe网络驱动程序使用的接收队列大小时.
交付级别不稳定tx_copy_threshold说明此参数控制ixgbe网络驱动程序使用的传送缓冲区复制阈值.
可以通过增大此参数的值来增大传送缓冲区复制阈值.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值512范围0-9126动态否验证无何时更改要更改ixgbe网络驱动程序使用的传送缓冲区复制阈值时.
交付级别不稳定rx_copy_threshold说明此参数控制ixgbe网络驱动程序使用的接收缓冲区复制阈值.
可以通过增大此参数的值来增大接收缓冲区复制阈值.
可以在附加ixgbe驱动程序之前通过编辑/etc/driver/drv/ixgbe.
conf文件来设置此参数.
数据类型无符号整数缺省值128范围0-9126动态否常规I/O参数56OracleSolaris11.
2可调参数参考手册2014年12月验证无何时更改要更改ixgbe网络驱动程序使用的接收缓冲区复制阈值时.
交付级别不稳定常规I/O参数maxphys说明定义物理I/O请求的最大大小.
如果驱动程序遇到大于此大小的请求,驱动程序会将该请求分成多个大小为maxphys的块.
文件系统可以并且确实施加了其自己的限制.
数据类型带符号整数缺省值131,072(sun4u或sun4v)或57,344(x86).
如果驱动器支持宽传送,则sd驱动程序使用值1,048,576.
缺省情况下,ssd驱动程序使用1,048,576.
范围计算机特定的页大小-MAXINT单位字节动态是,但是当挂载文件系统时,许多文件系统会将此值装入每挂载点数据结构.
将设备附加到驱动程序特定的数据结构时,许多驱动程序会装入该值.
验证无何时更改当以大块形式在原始设备之间执行I/O时.
请注意,执行OLTP操作的DBMS会发出大量小的I/O.
在这种情况下,更改maxphys不会带来任何性能改善.
交付级别不稳定rlim_fd_max说明指定对单个进程可以打开的文件描述符数目的"硬"限制.
覆盖此限制需要具有超级用户特权.
常规I/O参数第2章OracleSolaris内核可调参数57数据类型带符号整数缺省值65,536范围1-MAXINT单位文件描述符动态否验证无何时更改进程的最大已打开文件数不够用时.
因为系统体系中还存在其他限制,所以较大的文件描述符数目也不一定能发挥它应有的作用.
例如:使用标准I/O的32位程序被限定为最多使用256个文件描述符.
使用标准I/O的64位程序最多可以使用20亿个描述符.
具体来说,标准I/O是指libc(3LIB)中的stdio(3C)函数.
缺省情况下,select被限制为每个fd_set可有1024个描述符.
有关更多信息,请参见select(3C).
32位应用程序代码可以使用较大的fd_set大小(小于或等于65,536)进行重新编译.
64位应用程序使用的fd_set大小为65,536,该大小不能更改.
在系统范围内更改此值的一种替代方法是使用plimit(1)命令.
如果父进程通过plimit更改了其限制,所有子进程都会继承增大的限制.
对于inetd等守护进程,此替代方法非常有用.
交付级别不稳定rlim_fd_cur说明定义对单个进程可以打开的文件描述符数目的"软"限制.
进程可以通过使用setrlimit()调用或者通过在它运行的任何shell中发出limit命令,将其文件描述符限制调整为任何值,但不能超过由rlim_fd_max定义的"硬"限制.
将该限制调整为小于或等于硬限制的任何值时,不需要超级用户特权.
数据类型带符号整数缺省值256范围1-MAXINT常规文件系统参数58OracleSolaris11.
2可调参数参考手册2014年12月单位文件描述符动态否验证与rlim_fd_max进行比较.
如果rlim_fd_cur大于rlim_fd_max,则rlim_fd_cur将重置为rlim_fd_max.
何时更改进程的缺省已打开文件数不够用时.
增大此值仅意味着程序可能不需要使用setrlimit来增大其可用的最大文件描述符数.
交付级别不稳定常规文件系统参数ncsize说明定义目录名称查找高速缓存(directorynamelook-upcache,DNLC)中的条目数.
UFS、NFS和ZFS在缓存已解析的路径名的元素时会使用此参数.
DNLC还缓存负查找信息,这意味着它会在高速缓存中缓存未找到的名称.
数据类型带符号整数缺省值(4x(v.
v_proc+maxusers)+320)+(4x(v.
v_proc+maxusers)+320)/100范围0-MAXINT单位DNLC条目动态否验证无.
较大的值会导致卸载文件系统时花费的时间增加,因为在卸载过程中高速缓存必须清除该文件系统的条目.
何时更改可以使用kstat-ndnlcstats命令来确定何时因为DNLC太小而从中删除了条目.
pick_heuristic和pick_last参数的总和表示本应有效但因为高速缓存太小而被回收的条目数.
ncsize的值过大对系统会有直接影响,因为系统将基于ncsize的值为DNLC分配一组数据结构.
缺省情况下,系统为ncsize分配常规文件系统参数第2章OracleSolaris内核可调参数5964字节的结构.
再进一步,该值对UFS和NFS也具有影响,除非显式设置了ufs_ninode和nfs:nrnode.
交付级别不稳定dnlc_dir_enable说明启用大型目录高速缓存注-此参数对NFS或ZFS文件系统没有影响.
数据类型无符号整数缺省值1(启用)范围0(禁用)或1(启用)动态是,但不要动态更改此可调参数.
如果最初禁用了此参数,您可以启用此参数.
或者,如果最初启用了此参数,您可以将其禁用.
但是,启用、禁用,以及之后再启用此参数可能会导致过时的目录高速缓存.
验证否何时更改目录高速缓存没有已知问题.
不过,如果出现问题,请将dnlc_dir_enable设置为0,以禁用高速缓存.
交付级别不稳定dnlc_dir_min_size说明指定为一个目录缓存的最小条目数.
注-此参数对NFS或ZFS文件系统没有影响.
数据类型无符号整数缺省值40范围0-MAXUINT(无最大值)常规文件系统参数60OracleSolaris11.
2可调参数参考手册2014年12月单位条目动态是,可以随时更改此参数.
验证无何时更改如果缓存小目录时出现性能问题,请增大dnlc_dir_min_size.
请注意,对于目录的缓存,各个文件系统可能具有各自的范围限制.
交付级别不稳定dnlc_dir_max_size说明指定为一个目录缓存的最大条目数.
注-此参数对NFS或ZFS文件系统没有影响.
数据类型无符号整数缺省值MAXUINT(无最大值)范围0-MAXUINT动态是,可以随时更改此参数.
验证无何时更改如果使用大型目录出现性能问题,请减小dnlc_dir_max_size.
交付级别不稳定dnlc_dircache_percent说明计算DNLC目录高速缓存可以使用的最大物理内存百分比.
数据类型整型缺省值100范围0-100单位百分比TMPFS参数第2章OracleSolaris内核可调参数61动态否验证引导时,将检查值的范围并执行缺省值.
何时更改系统遇到内存不足和高内核内存消耗时,可考虑减小该值.
如果使用缺省值出现性能问题,可考虑增大该值.
注-UFS和ZFS文件系统以及NFS客户机使用DNLC.
当存在内存不足和高内核内存消耗时,或者当ARC或其他内核高速缓存需要内存时,可以考虑设置该可调参数,以获得更好的性能.
交付级别不稳定TMPFS参数tmpfs:tmpfs_maxkmem说明定义TMPFS可以用于其数据结构(tmpnodes和目录条目)的最大内核内存量.
数据类型无符号长整数缺省值一页和物理内存的4%中的较大者.
范围一页中的字节数(对于sun4u或sun4v系统为8192,对于所有其他系统为4096)至首次使用TMPFS时的可用内核内存的25%.
单位字节动态是验证无何时更改如果以下消息显示在了控制台上或者写入到了消息文件中,请增大此参数:tmp_memalloc:tmpfsovermemorylimitTMPFS用于其数据结构的当前内存量存放在tmp_kmemspace字段中.
可以通过内核调试器检查此字段.
交付级别不稳定伪终端62OracleSolaris11.
2可调参数参考手册2014年12月tmpfs:tmpfs_minfree说明定义TMPFS为系统其余部分保留的最小交换空间量.
数据类型带符号长整数缺省值256范围0-最大交换空间大小单位页动态是验证无何时更改要在大量使用TMPFS的系统上维护合理的交换空间量,您可以增大此数值.
如果控制台或消息文件中显示了以下消息,则表明已经达到了限制:fs-name:Filesystemfull,swapspacelimitexceeded交付级别不稳定伪终端伪终端pty在OracleSolaris软件中用于两个目的:通过使用telnet、rlogin或rsh命令来支持远程登录提供X窗口系统用以创建命令解释程序窗口的接口缺省伪终端数足够供桌面工作站使用.
所以,调优将着重于供远程登录使用的pty数.
缺省pty数现在基于系统上的内存量.
仅当要限制或增大可以登录到系统中的用户数时才应更改此缺省值.
在配置过程中要使用三个相关变量:pt_cnt-缺省的最大pty数目.
pt_pctofmem-可专用于pty支持结构的内核内存所占百分比.
值为零意味着没有远程用户可以登录到系统中.
pt_max_pty-硬性的pty数目最大值.
伪终端第2章OracleSolaris内核可调参数63pt_cnt的缺省值为零,这指示系统基于pct_pctofmem中指定的内存量限制登录数,除非设置了pt_max_pty.
如果pt_cnt不为零,分配的pty数目可以一直达到此限制.
当超出该阈值时,系统将查看pt_max_pty.
如果pt_max_pty为非零值,则会将其与pt_cnt进行比较.
如果pt_cnt小于pt_max_pty,将允许pty分配.
如果pt_max_pty为零,pt_cnt将与基于pt_pctofmem支持的pty数目进行比较.
如果pt_cnt小于该值,将允许pty分配.
请注意,仅当pt_cnt和ptms_ptymax都具有缺省值零时,基于pt_pctofmem的限制才开始起作用.
要对pty施加与从pt_pctofmem派生的最大值不同的硬限制,请将/etc/system中的pt_cnt和ptms_ptymax设置为所需的pty数目.
在这种情况下,ptms_pctofmem的设置没有影响.
要将一个不同百分比的系统内存专用于pty支持并允许操作系统管理显式限制,请执行以下操作:不要在/etc/system中设置pt_cnt或ptms_ptymax.
在/etc/system中将pt_pctofmem设置为所需的百分比.
例如,要设置为10%,请设置pt_pctofmem=10.
请注意,在内存用于支持pty时,才会实际分配内存.
内存一旦分配,它将保持为已分配状态.
pt_cnt说明可用/dev/pts条目数是动态的,最大值是由系统中的可用物理内存量所确定的限制.
pt_cnt是用于确定系统可以容纳的最小登录数的三个变量之一.
系统可以支持的缺省最大/dev/pts设备数是在引导时确定的,确定方法是计算在一定百分比的系统内存内可以容纳的pty结构数(请参见pt_pctofmem).
如果pt_cnt为零,系统可以一直分配到该最大值.
如果pt_cnt为非零值,系统可以一直分配到pt_cnt和缺省最大值中的较大值.
数据类型无符号整数缺省值0范围0-maxpid单位登录/窗口动态否验证无伪终端64OracleSolaris11.
2可调参数参考手册2014年12月何时更改当需要显式控制可以远程登录到系统中的用户数时.
交付级别不稳定pt_pctofmem说明指定数据结构可以用来支持/dev/pts条目的最大物理内存百分比.
系统为每个/dev/pts条目使用176个字节.
数据类型无符号整数缺省值5范围0-100单位百分比动态否验证无何时更改当需要限制或增大可以登录到系统中的用户数时.
值为零意味着没有远程用户可以登录到系统中.
交付级别不稳定pt_max_pty说明定义系统提供的最大ptys数数据类型无符号整数缺省值0(使用系统定义的最大值)范围0-MAXUINT单位登录/窗口动态是验证无STREAMS参数第2章OracleSolaris内核可调参数65隐式应该大于或等于pt_cnt.
只有分配的ptys数超过pt_cnt的值后,才会对值进行检查.
何时更改即使系统基于其当前配置值可以处理更多登录,但仍要对支持的登录数设置绝对上限时.
交付级别不稳定STREAMS参数nstrpush说明指定可以插入(推送到)STREAM中的模块数.
数据类型带符号整数缺省值9范围9-16单位模块动态是验证无何时更改当软件供应商要求您进行修改时.
当STREAM超出其允许的推送计数时不会显示任何消息.
将会向尝试该推送的程序返回EINVAL的值.
交付级别不稳定strmsgsz说明指定单个系统调用可以向STREAM传递的要放置到消息的数据部分中的最大字节数.
超过此大小的write将被拆分为多条消息.
有关更多信息,请参见write(2).
数据类型带符号整数SystemV消息队列66OracleSolaris11.
2可调参数参考手册2014年12月缺省值65,536范围0-262,144单位字节动态是验证无何时更改当putmsg调用返回ERANGE时.
有关更多信息,请参见putmsg(2).
交付级别不稳定strctlsz说明指定单个系统调用可以向STREAM传递的要放置到消息的控制部分中的最大字节数数据类型带符号整数缺省值1024范围0-MAXINT单位字节动态是验证无何时更改当软件供应商要求您进行修改时.
如果putmsg(2)调用试图超出此限制,则它们会返回ERANGE.
交付级别不稳定SystemV消息队列SystemV消息队列提供了一个消息传递接口,使用该接口,可以通过在内核中创建的队列来交换消息.
OracleSolaris环境中提供了用来将消息入队和出队的接口.
消息可SystemV信号量第2章OracleSolaris内核可调参数67以具有与之关联的类型.
入队操作会将消息置于队列的末尾.
出队操作将从队列中删除特定类型的第一条消息,如果未指定类型则删除第一条消息.
有关调优这些系统资源的详细信息,请参见《在OracleSolaris11.
2中进行资源管理》中的第6章"关于资源控制".
SystemV信号量SystemV信号在OracleSolarisOS中提供计数信号.
信号是一个计数器,用于为多个进程提供对共享数据对象的访问.
除了针对信号的标准设置和释放操作,SystemV信号可以具有将根据需要增大和减小的值(例如,要表示可用资源数).
SystemV信号还允许同时对一组信号执行操作,以及在进程意外终止时使系统撤消该进程的最后一个操作.
SystemV共享内存SystemV共享内存允许进程创建段.
协作进程可以附加到内存段(根据对段的访问权限)并访问段中包含的数据.
此功能是作为可装入模块实现的.
/etc/system文件中的条目必须包含shmsys:前缀.
DBMS供应商使用称为锁定共享内存(intimatesharedmemory,ISM)的一种特殊共享内存来使性能最优.
当共享内存段转变为ISM段时,将锁定该段的内存.
使用此功能,可以沿更快的I/O路径前进并改善内存使用情况.
然后,附加到ISM模式下的段的所有进程将共享描述该段的大量内核资源.
segspt_minfree说明确定不能分配为ISM共享内存的系统内存页数.
数据类型无符号长整数缺省值创建第一个ISM段时的可用系统内存的5%范围0-50%的物理内存单位页动态是验证无.
如果值太小,当内存被ISM段占用时,会导致系统挂起或性能严重下降.
SystemV共享内存68OracleSolaris11.
2可调参数参考手册2014年12月何时更改在具有使用ISM的大量物理内存的数据库服务器上,可以减小此参数的值.
如果未使用ISM段,此参数不起作用.
在具有大量内存的计算机上,最大值为128MB(0x4000)就基本足够了.
交付级别不稳定pr_segp_disable说明在尝试弃用可能属于ISM的页面时,禁用页面锁定高速缓存刷新.
如果暂挂页面弃用队列中存在锁定或繁忙(大量I/O)页面,页面弃用线程会刷新segp_cache以鼓励弃用可能属于ISM的暂挂页面.
定期或重复刷新segp_cache可能成为高内存计算机的瓶颈.
缺省行为是每30秒刷新一次页面高速缓存;如果观察到锁定的页面在队列中,则超时会以2为倍数呈指数递减,直到达到1小时.
启用pr_segp_disable不会使系统无法弃用内存页面,例如由于系统诊断措施而发生故障的内存页面.
数据类型布尔值缺省值1(禁用)范围0(启用)和1(禁用)动态否验证否何时更改如果暂挂页面弃用队列中存在锁定或繁忙(大量I/O)页面,页面弃用线程会刷新segp_cache以鼓励弃用可能属于ISM的暂挂页面.
定期或重复刷新segp_cache可能成为高内存计算机的瓶颈.
如果有对延迟敏感的数据库或者大型共享内存应用程序,请考虑禁用此参数以完全跳过segp高速缓存刷新.
无法弃用的锁定内核页面的症状如下:短暂的数据库延迟或者暂时的数据库不响应事件,以及在页面成功弃用时的短暂定期提升SYSCPU事件.
但是,重复弃用失败的锁定页面或繁忙页面可能会继续以较低的速率触发页面弃用线程.
例如,无法弃用的锁定内存页面可能会以小间隔重试,以1小时为间隔不断重复.
在系统重新引导之后,安排的页面可能会弃用,也可能会以缺省速率30秒再次尝试.
在监视segspt_shmfault、segspt_softunlock、segspt_shmpagelock、segspt_shmfree、s调度第2章OracleSolaris内核可调参数69和segspt_dismfault结构时,可能会看到短暂的意外或提升的smtx锁定争用.
交付级别不稳定调度disp_rechoose_interval说明与先前的rechoose_interval参数类似,此参数指定在断定某个进程已与运行它的最后一个CPU失去所有关联之前需要经过的时间量.
不同的是,能够以更细的时间增量来设置此参数.
应使用此参数代替过时的rechoose_interval参数,但是如果在/etc/system文件中设置了rechoose_interval参数,仍可以接受该参数.
此时间间隔到期后,所有CPU都可以用来调度线程.
此参数不会应用于实时类中的线程,但是将应用于所有其他调度类中的线程.
如果要更改此参数的值,请使用mdb通过下列步骤进行:1.
将纳秒转换为无刻度时间.
例如,要将一个基于5000000纳秒的值转换为无刻度时间,请使用以下语法:#mdb-kw.
.
.
>0t5000000::time-u0xb6a4442.
将disp_rechoose_interval设置为无刻度时间值.
例如,提供上一步中返回的值.
>disp_rechoose_interval/Z0xb6a444disp_rechoose_interval:0x447d998=0xb6a4443.
确认disp_rechoose_interval已设置为正确的值.
例如:>disp_rechoose_interval::print0xb6a444数据类型带符号整数缺省值3范围0-MAXINT计时器70OracleSolaris11.
2可调参数参考手册2014年12月动态是验证无何时更改当高速缓存很大时,或者如果系统正在运行某个非常重要的进程或者一组进程,而这些进程看起来存在大量高速缓存未命中问题且该问题不是由数据访问模式导致的.
在更改此参数之前,请考虑使用处理器集功能或处理器绑定.
有关更多信息,请参见psrset(1M)或pbind(1M).
交付级别不稳定计时器hires_tick说明当设置了此参数时,将导致OracleSolarisOS使用系统时钟速率1000,而不是缺省值100.
数据类型带符号整数缺省值0范围0(禁用)或1(启用)动态否.
导致在引导时设置新的系统计时变量.
引导后不再引用.
验证无何时更改当您希望超时的精度小于10毫秒且大于或等于1毫秒时.
交付级别不稳定timer_max说明指定可用的POSIX计时器数.
数据类型带符号整数缺省值1000特定于平台的参数第2章OracleSolaris内核可调参数71范围0-MAXINT动态否.
增大该值会导致系统崩溃.
验证无何时更改当系统提供的缺省计时器数不够用时.
执行timer_create系统调用时,应用程序收到EAGAIN错误.
交付级别不稳定SPARC:特定于平台的参数以下参数适用于sun4v和SPARCM系列sun4u平台.
tsb_alloc_hiwater_factor说明初始化tsb_alloc_hiwater,对可以为转换存储缓冲区(translationstoragebuffer,TSB)分配的物理内存量设置上限,如下所述:tsb_alloc_hiwater=物理内存(字节)/tsb_alloc_hiwater_factor当分配给TSB的内存等于tsb_alloc_hiwater的值时,TSB内存分配算法在页面取消映射时会尝试回收TSB内存.
使用此因子增大tsb_alloc_hiwater的值时,请务必小心.
为防止系统挂起,得出的高水位值必须大大低于swapfs_minfree和segspt_minfree的值.
数据类型整型缺省值32范围1-MAXINIT请注意,该因子为1会使所有物理内存都可以分配给TSB,这可能会导致系统挂起.
该因子太高将导致没有内存可以分配给TSB,从而降低系统性能.
动态是验证无何时更改如果系统的许多进程都附加到非常大的共享内存段,请更改此参数的值.
大多数情况下,不需要对此变量进行调优.
特定于平台的参数72OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定default_tsb_size说明选择分配给所有进程的初始转换存储缓冲区(translationstoragebuffer,TSB)的大小.
数据类型整型缺省值缺省为0(8KB),对应于512个条目范围可能的值是:值说明08KB116KB332KB4128KB5256KB6512KB71MB动态是验证无何时更改一般情况下,不需要更改此值.
但是,如果系统上的大部分进程具有的工作集都大于平均值,或者如果禁用了驻留集大小(residentsetsize,RSS)调整,更改此值可能会有一定好处.
交付级别不稳定enable_tsb_rss_sizing说明启用基于驻留集大小(residentsetsize,RSS)的TSB大小调整试探.
数据类型布尔值缺省值1(可以调整TSB大小)范围0(TSB保持为tsb_default_size)或1(可以调整TSB大小)地址组参数第2章OracleSolaris内核可调参数73如果设置为0,则会忽略tsb_rss_factor.
动态是验证是何时更改可以设置为0以阻止TSB增长.
大多数情况下,此参数应保留缺省设置.
交付级别不稳定tsb_rss_factor说明控制RSS大小调整试探的RSS与TSB范围的比率.
此系数除以512可以得到必须驻留在内存中的TSB范围所占百分比,只有满足此百分比后,才认为TSB的大小可以调整.
数据类型整型缺省值384,得到值75%.
因此,当TSB处于3/4充满状态时,将增大其大小.
请注意,某些虚拟地址通常映射到TSB中的同一个槽.
因此,在TSB处于100%充满状态时,会发生冲突.
范围0至512动态是验证无何时更改如果系统由于TSB未命中(例如,由于TSB中的虚拟地址冲突)而出现大量陷阱,您可以考虑减小此值,直至为0.
例如,将tsb_rss_factor更改为256(即50%)而不是384(即75%),在某些情况下,可以帮助消除虚拟地址冲突,但是将会使用更多内核内存,特别是在负载非常重的系统上.
可以使用trapstat-T命令监视TSB活动.
交付级别不稳定地址组参数本节介绍了通用内存可调参数,这些参数适用于使用非统一内存体系结构(Non-UniformMemoryArchitecture,NUMA)的任何SPARC或x86系统.
地址组参数74OracleSolaris11.
2可调参数参考手册2014年12月lpg_alloc_prefer说明当所请求的页大小无法立即在本地内存组中获得,但是可以从远程内存组得到满足时,控制对大内存页的分配试探.
缺省情况下,如果本地空闲内存是碎片式的,但远程空闲内存不是,则OracleSolarisOS将分配远程的大页面.
将此参数设置为1,指示应该做一些额外的工作来尝试在本地分配较大内存页,例如,也许可以将较小的页进行移动,从而在本地内存组中将空出的空间接合成较大的页面.
数据类型布尔值缺省值0(如果本地空闲内存是碎片式的而远程空闲内存不是,则首选远程分配)范围0(如果本地空闲内存是碎片式的而远程空闲内存不是,则首选远程分配)1(尽可能选用本地分配,即使本地空闲内存是碎片式的而远程空闲内存不是)动态否验证无何时更改如果系统上长时间运行的程序要分配由某个程序访问的内存,或者已知由一组程序访问的内存将要在同一地址组(lgroup)中运行,则可以将此参数设置为1.
在这些情况下,可以随着程序的长时间运行分摊页面接合操作的额外成本.
如果多个程序要跨不同的地址组共享内存,或者如果页面只会被使用较短时间,则可以将此参数保留为缺省值(0).
在这些情况下,快速分配所请求的大小要比在特定位置分配更为重要.
可以使用trapstat-T命令观察TLB未命中活动.
交付级别未确定lgrp_mem_pset_aware说明如果进程在某个用户处理器集内运行,此变量将确定为该进程随机放置的内存是从系统中的所有lgroup中选择,还是仅从该处理器集内的处理器所包含的那些lgroup中选择.
有关创建处理器集的更多信息,请参见psrset(1M).
地址组参数第2章OracleSolaris内核可调参数75数据类型布尔值缺省值0,OracleSolarisOS从系统中的所有lgroup选择内存范围0,OracleSolarisOS从系统中的所有lgroup选择内存(缺省)1,尝试仅从处理器集内的处理器所包含的那些lgroup选择内存.
如果第一次尝试失败,则可以在任何lgroup中分配内存.
动态否验证无何时更改当处理器集用于将应用程序相互隔离时,将此值设置为值一(1)可能会带来更稳定的性能.
交付级别未确定76OracleSolaris11.
2可调参数参考手册2014年12月第3章OracleSolarisZFS可调参数773第3章OracleSolarisZFS可调参数本章介绍了可能需要考虑的ZFS可调参数,是否设置具体取决于您的系统和应用程序要求.
此外,还提供了将ZFS与数据库产品结合使用时的可调参数建议.
"ZFS调优注意事项"[77]"ZFSARC参数"[78]"ZFS文件级预取"[79]"ZFS设备I/O队列深度"[80]"使用闪存存储时调优ZFS"[81]"为数据库产品进行ZFS调优"[84]有关其他类型的可调参数,请参考以下内容:OracleSolaris内核可调参数-第2章OracleSolaris内核可调参数NFS可调参数-第4章NFS可调参数Internet协议套件可调参数-第5章Internet协议套件可调参数系统工具可调参数-第6章系统工具参数ZFS调优注意事项进行ZFS调优之前,请注意以下事项:缺省值通常是最佳值.
如果存在更好的值,则应将其设置为缺省值.
其他值可能有助于完成某一给定的工作负荷,但很可能会导致其他方面的性能下降.
有时会造成严重损坏.
应用ZFS调优之前,应遵循ZFS最佳做法.
这些做法是一组已证明可在各种环境下使用并预计在可预见的将来能继续使用的建议.
因此,在调优之前,请确保您已经阅读并了解最佳做法.
有关更多信息,请参见《在OracleSolaris11.
2中管理ZFS文件系统》中的第11章"建议的OracleSolarisZFS做法".
除非另行说明,否则可调参数为全局参数,将在整个系统范围内影响ZFS行为.
注-请先查看MOS文档166382.
1"MemoryManagementBetweenZFSandApplicationsinOracleSolaris11.
2",再对此发行版中的ZFSARC参数进行调优.
ZFSARC参数78OracleSolaris11.
2可调参数参考手册2014年12月ZFSARC参数本节介绍了与ZFSARC行为相关的参数.
zfs_arc_min说明确定ZFS自适应替换高速缓存(AdaptiveReplacementCache,ARC)的最小大小.
另请参见"zfs_arc_max"[78].
数据类型无符号整数(64位)缺省值64MB范围64MB-zfs_arc_max单位字节动态否验证是,将对范围进行验证.
何时更改如果系统的工作负荷对内存的需求起伏波动,ZFSARC会在弱需求期间缓存数据,然后在强需求期间收缩.
不过,ZFS在低于zfs_arc_min的值时不会收缩.
一般情况下,不需要更改缺省值.
交付级别不稳定zfs_arc_max说明确定ZFS自适应替换高速缓存(AdaptiveReplacementCache,ARC)的最大大小.
另请参见"zfs_arc_min"[78].
数据类型无符号整数(64位)缺省值在内存少于4GB的系统上为内存的75%在内存大于4GB的系统上为physmem减去1GB范围64MB至physmem单位字节动态否ZFS文件级预取第3章OracleSolarisZFS可调参数79验证是,将对范围进行验证.
何时更改如果将来的内存需求非常大并且有明确范围,可以考虑减小此参数的值来限制ARC的上限,从而使它不会因内存需求而发生争用.
例如,如果知道将来的工作负荷需要20%的内存,则可以相应设置ARC上限,使它消耗的内存不会超过剩余的80%内存.
交付级别不稳定ZFS文件级预取zfs_prefetch_disable说明此参数确定称为zfetch的文件级预取机制.
该机制分析文件读取模式和预测某些读取操作,从而减少应用程序等待时间.
当前行为具有两大缺点:由小型读取操作构成的顺序读取模式经常命中高速缓存.
在这种情况下,当前行为会占用大量CPU时间来尝试查找下一个要发出的I/O,而性能更多地是由CPU可用性控制.
已经发现在某些负载下,zfetch代码会限制可伸缩性.
可以使用lockstat-I命令或er_kernel完成CPU分析,如下所述:http://www.
oracle.
com/technetwork/java/index.
html可以通过设置/etc/system文件中的zfs_prefetch_disable来禁用预取.
当zfs_vdev_cache_size处于禁用状态时,设备级预取被禁用.
这表示如果zfs_vdev_cache_size处于禁用状态,将不再需要调优vdevcacheshift.
数据类型布尔值缺省值0(启用)范围0(启用)或1(禁用)动态是验证否何时更改如果er_kernel的结果显示zfetch_*函数占用大量时间,或者使用lockstat执行的锁定分析显示zfetch锁定存在争用,则应考虑禁用文件级预取.
ZFS设备I/O队列深度80OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定ZFS设备I/O队列深度zfs_vdev_max_pending说明此参数控制每个设备待处理的最大并发I/O数.
数据类型整型缺省值10范围0-MAXINT动态是验证否何时更改在存储阵列(LUN由大量磁盘驱动器组成)中,ZFS队列可能成为读取IOPS的限制因素.
该行为是采取向ZFS存储池提供与磁盘轴数量相同的LUN这一最佳做法的根本原因之一.
也就是说,如果以宽度为10个磁盘的阵列级别RAID组创建LUN,则使用5到10个LUN构建存储池可以使ZFS充分管理I/O队列而无需设置此特定可调参数.
但是,如果未使用任何单独的意图日志,并且存储池由JBOD磁盘组成,则使用较小的zfs_vdev_max_pending值(如10)可在同步写入争用磁盘资源时改善同步写入延迟.
使用单独的意图日志设备可以缓解为同步密集写入型负载调优此参数的需求,因为这些同步写入操作不会与深度较大的非同步写入操作队列争用磁盘资源.
在卷仅由少数几个轴组成的情况下,调优此参数对基于NVRAM的存储阵列没有效果.
但是,当ZFS中存在由大量(超过10个)轴组成的卷时,此参数会限制该卷所获取的读取吞吐量.
原因是当每个LUN中的排队I/O数最大达到10或35时,会导致每个存储轴上的I/O数小于1,这不足以让单个磁盘传送其IOPS.
此问题可能在iostatactv队列输出接近zfs_vdev_max_pending值时出现.
设备驱动程序也可能会限制每个LUN中未处理的I/O数.
如果在可以处理大量并发IOPS的存储阵列上使用LUN,则设备驱动程序约束可能会限制并发性.
请参考您系统中使用的驱动程序的配置.
例如,QLogicISP2200、ISP2300和SP212系列FClHBA(qlc)驱动程序的限制在/kernel/drv/qlc.
conf中描述为执行限制参数.
使用闪存存储时调优ZFS第3章OracleSolarisZFS可调参数81交付级别不稳定使用闪存存储时调优ZFS以下信息适用于闪存SSD、F20PCIe加速卡、F40PCIe加速卡、F5100闪存存储阵列和F80PCIe加速卡.
将ZFS用于闪存存储时请查看以下一般注释:针对ZIL(ZFSintentlog,ZFS意图日志),请考虑使用由具有持久性内存的控制器管理的LUN或低延迟磁盘(如果可用).
相比于使用闪存进行低延迟提交,此选项可能具有更显著的成本效益.
日志设备的大小必须仅够保留10秒的最大写入吞吐量.
示例包括基于存储阵列的LUN,或连接到HBA(具有电池保护的写入高速缓存)的磁盘.
如果没有这样的设备可供使用,请分割单独的闪存设备池以用作ZFS存储池中的日志设备.
F40、F20和F80闪存加速卡包含4个独立的闪存模块,并将其导出至OS.
F5100最多包含80个独立的闪存模块.
每个闪存模块在操作系统中均显示为单个设备.
OS将SSD视为单个设备.
可将闪存设备用作ZFS日志设备以降低提交延迟,尤其是用于NFS服务器时.
例如,用作ZFS日志设备的闪存设备的单个闪存模块可将单个轻量线程操作的延迟降低10倍.
可将更多的闪存设备条带化到一起,以针对大量同步操作实现更高的吞吐量.
应对日志设备进行镜像以实现可靠性.
为实现最大程度的保护,应在单独的闪存设备上创建镜像.
对于F20、F40和F80PCIe加速卡,通过确保镜像位于不同的物理PCIe卡上来实现最大程度的保护.
对于F5100存储阵列,通过将镜像放置在单独的F5100设备上来获得最大程度的保护.
未用作日志设备的闪存设备可用作二级高速缓存设备.
这样既可用于从主磁盘存储对IOPS进行负载转移,也可以改善常用数据的读取延迟.
将闪存设备添加为ZFS日志设备或高速缓存设备将闪存设备添加为ZFS日志设备或高速缓存设备时请查看以下建议.
可使用zpooladd命令将ZFS日志设备或高速缓存设备添加到现有的ZFS存储池.
使用zpooladd命令时请务必小心谨慎.
如果将日志设备错误地添加为常规池设备,将会要求您销毁池然后从头开始恢复.
可能会从池中删除各个日志设备本身.
在活动存储上尝试执行此操作之前,请熟悉zpooladd命令.
可以使用zpooladd-n选项预览配置,而不创建此配置.
例如,以下错误的zpooladd预览语法会尝试将某个设备添加为日志设备:#zpooladd-ntankc4t1d0vdevverificationfailed:use-ftooverridethefollowingerrors:使用闪存存储时调优ZFS82OracleSolaris11.
2可调参数参考手册2014年12月mismatchedreplicationlevel:poolusesmirrorandnewvdevisdiskUnabletobuildpoolfromspecifieddevices:invalidvdevconfiguration以下是用于将某个日志设备添加到现有池的正确zpooladd预览语法:#zpooladd-ntanklogc4t1d0wouldupdate'tank'tothefollowingconfiguration:tankmirrorc4t0d0c5t0d0logsc4t1d0如果指定了多个设备,它们将条带化到一起.
有关更多信息,请参见下面的示例或zpool(1M).
闪存设备c4t1d0可添加为ZFS日志设备:#zpooladdpoollogc4t1d0如果有2个闪存设备,您可以添加镜像的日志设备:#zpooladdpoollogmirrorc4t1d0c4t2d0可用的闪存设备可添加为用于进行读取的高速缓存设备.
#zpooladdpoolcachec4t3d0您不能镜像高速缓存设备,它们将条带化到一起.
#zpooladdpoolcachec4t3d0c4t4d0确保闪存设备和NVRAM存储设备具有正确的高速缓存刷新行为ZFS设计为与管理磁盘级高速缓存的存储设备一起使用.
通常,ZFS会通过请求高速缓存刷新来要求存储设备确保已将数据安全地放置到稳定的存储器上.
对于JBOD存储而言,这种方式符合预期且不会出现任何问题.
对于许多基于NVRAM的存储阵列而言,如果此类阵列接受高速缓存刷新请求并实际做出相应的操作而不是忽略该请求,则可能会出现性能问题.
一些存储阵列会应要求刷新其大型高速缓存,而不考虑NVRAM保护使这些高速缓存与稳定存储器一样稳定的事实.
当uberblock更新后,ZFS会以较低的频率发出刷新(如每5秒).
由于刷新频率很低,所以此处不需要考虑进行调优.
ZFS还会在每次应用程序请求同步写入(O_DSYNC、fsync、NFS提交等)时发出刷新.
应用程序将等待此类刷新完成,因而会使用闪存存储时调优ZFS第3章OracleSolarisZFS可调参数83影响性能.
实际上,影响就是这么大.
从性能的角度来看,这抵消了采用基于NVRAM的存储的优点.
最近有证据表明,当闪存设备用作日志设备时,高速缓存刷新调优有助于提高闪存设备性能.
当向ZFS公开的所有LUN均来自受NVRAM保护的存储阵列,并且有措施确保将来不会添加任何不受保护的LUN时,可以通过设置zfs_nocacheflush将ZFS调优为不发出刷新请求.
如果向ZFS公开的一些LUN不受NVRAM保护,则此调优操作可能会导致数据丢失、应用程序级别的损坏,甚至池损坏.
在某些受NVRAM保护的存储阵列中,高速缓存刷新命令是一个空操作,因此这种情况下的调优操作不会对性能产生任何影响.
最近的OS更改是:刷新请求语义能够指示存储设备忽略请求(如果它们具有适当的保护).
此更改要求修复磁盘驱动程序,以使NVRAM设备支持更新的语义.
如果NVRAM设备不识别此改进,请使用以下说明来告知SolarisOS不要向阵列发送任何同步高速缓存命令.
如果要使用这些说明,请确保所有目标LUN确实受NVRAM保护.
有时,闪存设备和NVRAM设备未正确地向OS通告它们为非易失性设备,且无需刷新高速缓存.
高速缓存刷新操作会消耗很多资源.
在某些情况下,不必要的刷新会极大地影响性能.
在应用下面的调优项之前,请查看以下zfs_nocacheflush语法限制:下面的调优语法可以包含在sd.
conf中,但每个供应商/产品只能有一个sd-config-list条目.
如果需要多个设备条目,可以使用以下语法在同一行上指定多对供应商ID和sd调优字符串:#"012345670123456789012345","tuning",sd-config-list="|-VID1-||-----PID1-param1:val1,param2:val2","|-VIDN-||-----PIDN-param1:val1,param3:val3";确保供应商ID(VID)字符串填充为8个字符,产品ID(PID)字符串填充为16个字符,如上例所示.
注意-设备将忽略所有高速缓存同步命令.
使用时需自担风险.
1.
使用format实用程序对存储阵列中的LUN运行inquiry子命令.
例如:#format.
.
.
Specifydisk(enteritsnumber):xformat>inquiryVendor:ATAProduct:MarvellRevision:XXXX为数据库产品进行ZFS调优84OracleSolaris11.
2可调参数参考手册2014年12月format>2.
基于您的体系结构选择以下操作之一:对于所有设备,将文件/kernel/drv/sd.
conf复制到/etc/driver/drv/sd.
conf文件.
对于F40闪存设备,将以下项添加到/kernel/drv/sd.
conf中.
在下面的项中,确保ATA填充为8个字符,3E128-TS2-550B01包含16个字符.
字符串总长度为24个字符.
sd-config-list="ATA3E128-TS2-550B01","disksort:false,cache-nonvolatile:true,physical-block-size:4096";对于F80闪存设备,将以下项添加到/kernel/drv/sd.
conf中.
确保ATA填充为8个字符,3E128-TS2-550B01包含16个字符.
字符串总长度为24个字符.
sd-config-list="ATA2E256-TU2-510B00","disksort:false,cache-nonvolatile:true,physical-block-size:4096";对于F20和F5100闪存设备,基于您的体系结构选择以下操作之一.
在下面的项中,ATA填充为8个字符,MARVELLSD88SA02包含16个字符.
字符串总长度为24个字符.
将以下项添加到/etc/driver/drv/sd.
conf中sd-config-list="ATAMARVELLSD88SA02","throttle-max:32,disksort:false,cache-nonvolatile:true";3.
如上所示,在sd-config-list条目中,小心地添加空格,使供应商ID(VID)长度为8个字符(此处为ATA),并使产品ID(PID)长度为16个字符(此处为MARVELL).
4.
重新引导系统.
可将zfs_nocacheflush调整回其缺省值(0),而不会对性能造成不利影响.
5.
确认刷新行为正确.
使用附录A,系统检查脚本中提供的脚本进行验证.
为数据库产品进行ZFS调优在将ZFS与数据库产品结合使用之前,请注意以下事项.
如果数据库针对I/O使用固定磁盘块或记录大小,请相应地设置ZFSrecordsize属性以与该大小相匹配.
您可以根据每个文件系统完成上述操作,即使多个文件系统可能共享一个池.
通过ZFS的写复制设计,下调recordsize是一种提高OLTP性能的方法,但要进行批处理报告查询.
ZFS会对存储在磁盘上的每个块计算校验和.
这将减少数据库层额外计算数据校验和的需求.
如果使用ZFS计算校验和而不是在数据库层中计算校验和,则可在数据返回到应用程序前捕获并修复所有差异.
为数据库产品进行ZFS调优第3章OracleSolarisZFS可调参数85UFS直接I/O可用于克服UFS的一些设计缺陷,并消除数据的双缓冲.
在ZFS中不存在任何UFS设计缺陷,ZFS使用primarycache和secondarycache属性管理ARC中的缓冲数据.
请注意,使用secondarycache(L2ARC)属性改善随机读取时需要启用primarycache属性.
将池空间的使用率保持在90%以下,以便维护池性能.
为Oracle数据库进行ZFS调优建议单一实例模式下的所有Oracle数据库版本都使用ZFS.
当ZFS作为NFS共享文件系统提供时,可以与OracleRAC数据库结合使用.
要为Oracle数据库进行ZFS调优,请查看以下建议:验证是否运行的是最新的OracleSolaris发行版从最新的OracleSolaris10或OracleSolaris11发行版开始,将Solaris109/10发行版作为最低起点.
为ZFS存储池创建LUN(如果需要)使用存储阵列工具创建要向ZFS存储池提供的LUN.
或者,考虑对镜像ZFS存储池使用整个磁盘.
有关更多信息,请参见《在OracleSolaris11.
2中管理ZFS文件系统》中的第3章"管理OracleSolarisZFS存储池".
为表、索引、撤消和临时数据的数据文件创建存储池考虑创建一个镜像存储池以提供更高级别的数据冗余.
例如:#zpoolstatusdbpoolpool:dbpoolstate:ONLINEscan:nonerequestedconfig:NAMESTATEREADWRITECKSUMdbpoolONLINE000mirror-0ONLINE000c0t5000C500335F95E3d0ONLINE000c0t5000C500335F907Fd0ONLINE000mirror-1ONLINE000c0t5000C500335BD117d0ONLINE000c0t5000C500335DC60Fd0ONLINE000errors:Noknowndataerrors对于恢复日志活动较多的数据库(如提交次数较多的典型的OLTP数据库),请对单独日志设备使用单独LUN.
为归档日志创建存储池为数据库产品进行ZFS调优86OracleSolaris11.
2可调参数参考手册2014年12月如果可用,系统的内部磁盘即可处理此类负载.
archivelog文件系统也可以是dbpool中的文件系统.
#zpoolcreatearchivepoolc0t5000C500335E106Bd0使用以下原则创建ZFS文件系统和设置特定的文件系统属性使用以下记录大小为重做、归档、撤消和临时数据库组件创建单独的文件系统:OracleSolaris11和更早的发行版-128KOracleSolaris11.
1和更晚的发行版-1M一般规则是将包含Oracle数据文件的文件系统设置为recordsize=db_block_size.
对于表数据和索引组件,创建一个记录大小为8KB的文件系统.
同时,考虑使用primarycache属性向数据库文件系统提供元数据高速缓存提示.
有关ZFS文件系统属性的更多信息,请参见《在OracleSolaris11.
2中管理ZFS文件系统》中的"介绍ZFS属性".
为表数据文件和索引数据文件创建文件系统,其中recordsize为8KB.
使用primarycache的缺省值.
#zfscreate-orecordsize=8k-omountpoint=/my_db_path/indexdbpool/index#zfssetlogbias=throughputdbpool/index#zfsgetprimarycache,recordsize,logbiasdbpool/indexNAMEPROPERTYVALUESOURCEdbpool/indexprimarycachealldefaultdbpool/indexrecordsize8Klocaldbpool/indexlogbiasthroughputlocal为临时表空间和撤消表空间创建文件系统对于OracleSolaris11及更早的发行版,请使用缺省的recordsize和primarycache值.
#zfscreate-omountpoint=/my_db_path/tempdbpool/temp#zfssetlogbias=throughputdbpool/temp#zfscreate-omountpoint=/my_db_path/undodbpool/undo#zfssetlogbias=throughputdbpool/undo对于OracleSolaris11.
1及更晚的发行版,请使用以下recordsize值和缺省的primarycache值.
#zfscreate-orecordsize=1m-omountpoint=/my_db_path/tempdbpool/temp#zfssetlogbias=throughputdbpool/temp#zfscreate-orecordsize=1m-omountpoint=/my_db_path/undodbpool/undo#zfssetlogbias=throughputdbpool/undo使用单独的日志设备为恢复日志创建一个存储池.
对于恢复日志活动较多的数据库(如提交次数较多的典型的OLTP数据库),请使用单独的日志设备LUN.
将磁盘分区为两个分片,小分片s0,大小范围介于64到150MB之间,用于单独的日志设备.
分片s1包含剩余的磁盘空间,用于恢复日志.
为数据库产品进行ZFS调优第3章OracleSolarisZFS可调参数87#zpoolcreateredopoolc0t50015179594B6F11d0s1logc0t50015179594B6F11d0s0#zpoolstatusredopoolpool:redopoolstate:ONLINEscan:nonerequestedconfig:NAMESTATEREADWRITECKSUMredopoolONLINE000c0t50015179594B6F11d0s1ONLINE000logsc0t50015179594B6F11d0s0ONLINE000errors:Noknowndataerrors为恢复池中的恢复日志创建文件系统.
对于OracleSolaris11及更早的发行版,请使用recordsize和primarycache的缺省文件系统值.
#zfscreate-omountpoint=/my_db_path/redoredopool/redo#zfssetlogbias=latencyredopool/redo对于Solaris11.
1及更早的发行版,请使用以下recordsize和缺省primarycache值.
#zfscreate-orecordsize=1m-omountpoint=/my_db_path/redoredopool/redo#zfssetlogbias=latencyredopool/redo为归档池中的归档日志文件创建文件系统.
对于OracleSolaris11和更早的发行版,使用recordsize的缺省值设置压缩,并将primarycache设置为metadata#zfscreate-ocompression=on-oprimarycache=metadata-omountpoint=/my_db_admin_path/archivearchivepool/archive#zfsgetprimarycache,recordsize,compressratio,compression,available,used,quotaarchivepool/archiveNAMEPROPERTYVALUESOURCEarchivepool/archiveprimarycachemetadatalocalarchivepool/archiverecordsize128Kdefaultarchivepool/archivecompressratio1.
32x-archivepool/archivecompressiononlocalarchivepool/archiveavailable40.
0G-archivepool/archiveused10.
0G-archivepool/archivequota50Glocal对于Solaris11.
1及更晚的发行版-启用压缩,将primarycache设置为元数据并使用以下recordsize值:为数据库产品进行ZFS调优88OracleSolaris11.
2可调参数参考手册2014年12月#zfscreate-ocompression=on–orecordsize=1M\-omountpoint=/my_db_admin_path/archivearchivepool/archive#zfsgetprimarycache,recordsize,compressratio,compression,\available,used,quotaarchivepool/archiveNAMEPROPERTYVALUESOURCEarchivepool/archiveprimarycachealllocalarchivepool/archiverecordsize1Mlocalarchivepool/archivecompressratio1.
32x-archivepool/archivecompressiononlocalarchivepool/archiveavailable40.
0G-archivepool/archiveused10.
0G-archivepool/archivequota50Glocal请考虑设置配额,使数据库文件系统具有足够的磁盘空间来运行,并生成数据库文件系统的快照.
此外,在伪文件系统上设置一个保留,以便保留10-20%的池空间来保持池性能.
#zfssetreservation=20gbdbpool/freespace有关存储阵列和内存资源调优的其他信息,请参阅白皮书http://www.
oracle.
com/technetwork/server-storage/solaris/config-solaris-zfs-wp-167894.
pdf.
其他Oracle数据库配置建议以下白皮书中的"ConfiguringYourOracleDatabaseonZFSFileSystems":http://www.
oracle.
com/technetwork/server-storage/solaris/config-solaris-zfs-wp-167894.
pdf《DynamicSGATuningofOracleDatabaseonOracleSolariswithDISM》白皮书:http://www.
oracle.
com/technetwork/articles/systems-hardware-architecture/using-dynamic-intimate-memory-sparc-168402.
pdfOracle11g安装指南系列《OracleDatabaseQuickInstallationGuide11gRelease2(11.
2)forOracleSolarisonSPARC(64-Bit)》http://docs.
oracle.
com/cd/E11882_01/install.
112/e24349/toc.
htm《OracleDatabaseQuickInstallationGuide11gRelease2(11.
2)forOracleSolarisonx86-64(64-Bit)》http://docs.
oracle.
com/cd/E11882_01/install.
112/e24351/toc.
htmZFS与MySQL结合使用的注意事项在将ZFS与MySQL结合使用之前,请注意以下事项.
ZFS记录大小使ZFSrecordsize属性与存储引擎块大小匹配,以获得更好的OLTP性能.
为数据库产品进行ZFS调优第3章OracleSolarisZFS可调参数89InnoDB通过已知应用程序内存资源占用(例如,用于数据库应用程序),可以限定ARC的大小,这样,应用程序将不需要从ZFS高速缓存回收其所需的内存.
为日志创建单独的池.
为my.
cnf文件中的数据和日志设置不同的路径.
创建数据文件之前,将InnoDB数据文件的ZFSrecordsize属性设置为16K,并使用InnoDB日志的缺省recordsize值.
90OracleSolaris11.
2可调参数参考手册2014年12月第4章NFS可调参数914第4章NFS可调参数本节介绍了NFS可调参数.
"调优NFS环境"[91]"NFS模块参数"[91]"NFS相关SMF配置参数"[115]"rpcmod模块参数"[115]有关其他类型的可调参数,请参考以下内容:OracleSolaris内核可调参数-第2章OracleSolaris内核可调参数OracleSolarisZFS可调参数-第3章OracleSolarisZFS可调参数Internet协议套件可调参数-第5章Internet协议套件可调参数系统工具可调参数-第6章系统工具参数调优NFS环境您可以在/etc/system文件中定义NFS参数,在引导过程中将读取该文件.
每个参数都包括与其关联的内核模块的名称.
有关更多信息,请参见"调优OracleSolaris系统"[13].
注意-在不同的发行版中,参数名称、参数所在的模块以及缺省值可能会有所变化.
在进行更改或应用早期发行版中的值之前,请先检查适用于活动SunOS发行版的版本的文档.
NFS模块参数本节介绍了与NFS内核模块相关的参数.
NFS模块参数92OracleSolaris11.
2可调参数参考手册2014年12月nfs:nfs3_pathconf_disable_cache说明控制针对已挂载NFS版本3文件系统的pathconf信息的高速缓存.
数据类型整数(32位)缺省值0(启用高速缓存)范围0(启用高速缓存)或1(禁用高速缓存)单位布尔值动态是验证无何时更改pathconf信息是基于每个文件缓存的.
不过,如果服务器可以动态更改针对特定文件的信息,请使用该参数禁用高速缓存.
客户机没有用于验证其高速缓存条目的机制.
交付级别不稳定nfs:nfs_allow_preepoch_time说明控制是否应在客户机上显示带有不正确的或负值时间戳的文件.
在过去,NFS客户机和NFS服务器都不会对返回的文件时间执行任何范围检查.
线上时间戳值是无符号的,且长度为32位.
因此,所有值都合法.
64位Solaris内核上的时间戳值是有符号的,且长度为64位.
无法确定时间字段是表示完全32位时间还是负时间(即1970年1月1日前的时间).
无法确定从32位转换至64位时,是否对时间值进行符号扩展.
如果时间值确实为负数,则应进行符号扩展.
不过,如果时间值确实表示完全32位时间值,则不应进行符号扩展.
只需禁用完全32位时间值,即可解决该问题.
数据类型整数(32位)缺省值0(禁用32位时间戳)范围0(禁用32位时间戳)或1(启用32位时间戳)单位布尔值NFS模块参数第4章NFS可调参数93动态是验证无何时更改即使在常规操作期间,也可能会将某些文件的时间戳值设置为在将来或过去很远的时间.
如果首选使用已挂载NFS文件系统访问这些文件,请将该参数设置为1以允许直接传递时间戳值(不检查值).
交付级别不稳定nfs:nfs_cots_timeo说明控制使用面向连接的传输协议(如TCP)的已挂载NFS版本2文件系统的缺省RPC超时.
数据类型带符号整数(32位)缺省值600(60秒)范围0至231-1单位十分之一秒动态是,但是文件系统的RPC超时是在挂载文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改TCP在确保适当地传送请求和响应方面做得很好.
不过,如果在速度特别慢的网络中往返时间很长,NFS版本2客户机可能会提前超时.
增大该参数可以防止客户机不恰当地超时.
值的范围很大,因此过度增大该值可能会导致长时间检测不到重新传输的情况.
交付级别不稳定nfs:nfs3_cots_timeo说明控制使用面向连接的传输协议(如TCP)的已挂载NFS版本3文件系统的缺省RPC超时.
数据类型带符号整数(32位)NFS模块参数94OracleSolaris11.
2可调参数参考手册2014年12月缺省值600(60秒)范围0至231-1单位十分之一秒动态是,但是文件系统的RPC超时是在挂载文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改TCP在确保适当地传送请求和响应方面做得很好.
不过,如果在速度特别慢的网络中往返时间很长,NFS版本3客户机可能会提前超时.
增大该参数可以防止客户机不恰当地超时.
值的范围很大,因此过度增大该值可能会导致长时间检测不到重新传输的情况.
交付级别不稳定nfs:nfs4_cots_timeo说明控制使用面向连接的传输协议(如TCP)的已挂载NFS版本4文件系统的缺省RPC超时.
NFS版本4协议规范不允许通过同一TCP连接重新传输.
因此,该参数主要控制客户机响应特定事件的速度,这些事件包括检测强制卸载操作或检测服务器故障转移到新服务器的速度.
数据类型带符号整数(32位)缺省值600(60秒)范围0至231-1单位十分之一秒动态是,但该参数是在挂载文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改TCP在确保适当地传送请求和响应方面做得很好.
不过,如果在速度特别慢的网络中往返时间很长,NFS版本4客户机可能会提前超时.
NFS模块参数第4章NFS可调参数95增大该参数可以防止客户机不恰当地超时.
值的范围很大,因此过度增大该值可能会导致长时间检测不到重新传输的情况.
交付级别不稳定nfs:nfs_do_symlink_cache说明控制是否为已挂载NFS版本2文件系统缓存符号链接文件的内容.
数据类型整数(32位)缺省值1(启用高速缓存)范围0(禁用高速缓存)或1(启用高速缓存)单位布尔值动态是验证无何时更改如果服务器更改了符号链接文件的内容,而没有更新文件上的修改时间戳,或如果时间戳的粒度过大,那么可能在很长的期间内对符号链接文件内容的更改在客户机上不可见.
在这种情况下,请使用该参数禁用对符号链接内容的高速缓存.
执行此操作会使更改立即对客户机上运行的应用程序可见.
交付级别不稳定nfs:nfs3_do_symlink_cache说明控制是否为已挂载NFS版本3文件系统缓存符号链接文件的内容.
数据类型整数(32位)缺省值1(启用高速缓存)范围0(禁用高速缓存)或1(启用高速缓存)单位布尔值NFS模块参数96OracleSolaris11.
2可调参数参考手册2014年12月动态是验证无何时更改如果服务器更改了符号链接文件的内容,而没有更新文件上的修改时间戳,或如果时间戳的粒度过大,那么可能在很长的期间内对符号链接文件内容的更改在客户机上不可见.
在这种情况下,请使用该参数禁用对符号链接内容的高速缓存.
执行此操作会使更改立即对客户机上运行的应用程序可见.
交付级别不稳定nfs:nfs_dynamic说明控制是否为使用无连接传输协议(如UDP)的已挂载NFS版本2文件系统启用称作动态重新传输的功能.
该功能通过监视服务器响应时间,然后调整RPC超时以及读取和写入传输大小,从而尝试减少重新传输.
数据类型整数(32位)缺省值1(启用)范围0(禁用)或1(启用)动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改不要修改该参数.
交付级别不稳定nfs:nfs3_dynamic说明控制是否为使用无连接传输协议(如UDP)的已挂载NFS版本3文件系统启用称作动态重新传输的功能.
该功能通过监视服务器响应时间,然后调整RPC超时以及读取和写入传输大小,从而尝试减少重新传输.
数据类型整数(32位)缺省值0(禁用)NFS模块参数第4章NFS可调参数97范围0(禁用)或1(启用)单位布尔值动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改不要修改该参数.
交付级别不稳定nfs:nfs_lookup_neg_cache说明控制是否针对已挂载的NFS版本2文件系统使用负名称高速缓存.
负名称高速缓存记录以前查询过但未找到的文件名称.
使用该高速缓存可避免在整个网络中查询已知不存在的文件名称.
数据类型整数(32位)缺省值1(启用)范围0(禁用)或1(启用)单位布尔值动态是验证无何时更改为了正确执行高速缓存,在使用负向条目前必须对其进行严格验证.
对于只读的已挂载文件系统,该一致性机制稍有放宽.
假定服务器上的文件系统未更改或更改速度缓慢,并且允许此类更改缓慢地传播至客户机.
在这种情况下,一致性机制转变成常规属性高速缓存机制.
如果文件系统以只读方式挂载到客户机上,但是预期文件系统将在服务器上发生更改,并且客户机需要立即看到这些更改,请使用该参数禁用负高速缓存.
如果禁用了nfs:nfs_disable_rddir_cache参数,则可能也应当禁用该参数.
有关更多信息,请参见"nfs:nfs_disable_rddir_cache"[106].
交付级别不稳定NFS模块参数98OracleSolaris11.
2可调参数参考手册2014年12月nfs:nfs3_lookup_neg_cache说明控制是否针对已挂载的NFS版本3只读文件系统使用负名称高速缓存.
该负名称高速缓存记录已查询过但未找到的文件名称.
使用该高速缓存可避免在整个网络中查询已知不存在的文件名称.
数据类型整数(32位)缺省值1(启用)范围0(禁用)或1(启用)单位布尔值动态是验证无何时更改为了正确执行高速缓存,在使用负向条目前必须对其进行严格验证.
对于只读的已挂载文件系统,该一致性机制稍有放宽.
假定服务器上的文件系统未更改或更改速度缓慢,并且允许此类更改缓慢地传播至客户机.
在这种情况下,一致性机制转变成常规属性高速缓存机制.
负高速缓存条目仅用于只读的已挂载文件系统.
如果假定服务器上的文件系统未更改或更改速度缓慢,则可允许此类更改缓慢地传播至客户机.
在这种情况下,一致性机制转变成常规属性高速缓存机制.
如果文件系统以只读方式挂载到客户机上,但是预期文件系统将在服务器上发生更改,并且客户机需要立即看到这些更改,请使用该参数禁用负高速缓存.
如果禁用了nfs:nfs_disable_rddir_cache参数,则可能也应当禁用该参数.
有关更多信息,请参见"nfs:nfs_disable_rddir_cache"[106].
交付级别不稳定nfs:nfs4_lookup_neg_cache说明控制是否针对已挂载的NFS版本4文件系统使用负名称高速缓存.
该负名称高速缓存记录已查询过但未找到的文件名称.
使用该高速缓存可避免在整个网络中查询已知不存在的文件名称.
数据类型整数(32位)NFS模块参数第4章NFS可调参数99缺省值1(启用)范围0(禁用)或1(启用)单位布尔值动态是验证无何时更改为了正确执行高速缓存,在使用负向条目前必须对其进行严格验证.
对于只读的已挂载文件系统,该一致性机制稍有放宽.
假定服务器上的文件系统未更改或更改速度缓慢,并且允许此类更改缓慢地传播至客户机.
在这种情况下,一致性机制转变成常规属性高速缓存机制.
如果文件系统以只读方式挂载到客户机上,但是预期文件系统将在服务器上发生更改,并且客户机需要立即看到这些更改,请使用该参数禁用负高速缓存.
如果禁用了nfs:nfs_disable_rddir_cache参数,则可能也应当禁用该参数.
有关更多信息,请参见"nfs:nfs_disable_rddir_cache"[106].
交付级别不稳定nfs:nfs_max_threads说明控制为NFS版本2客户机执行异步I/O的内核线程的数量.
由于NFS基于RPC,并且RPC本身是同步的,因此,执行来自调用线程的异步NFS操作时需要单独的执行上下文.
可以异步执行的操作包括:用于预读的读取、用于readdir预读的readdir、用于putpage和pageio操作的写入,以及客户机停止使用某个文件时执行的提交和非活动清除操作.
数据类型无符号短整型缺省值8范围0至215-1单位线程动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无NFS模块参数100OracleSolaris11.
2可调参数参考手册2014年12月何时更改要增大或减小任一时刻未处理的并发I/O操作数量时.
例如,对于带宽很低的网络,可能需要减小该值,以免NFS客户机使网络过载.
而对于带宽很高的网络,客户机和服务器具有足够的资源,可能需要增大该值.
这样可以更加高效地利用可用网络带宽以及客户机和服务器资源.
交付级别不稳定nfs:nfs3_max_threads说明控制为NFS版本3客户机执行异步I/O的内核线程的数量.
由于NFS基于RPC,并且RPC本身是同步的,因此,执行来自调用线程的异步NFS操作时需要单独的执行上下文.
可以异步执行的操作包括:用于预读的读取、用于readdir预读的readdir、用于putpage和pageio请求的写入以及提交.
数据类型无符号短整型缺省值8范围0至215-1单位线程动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改要增大或减小任一时刻未处理的并发I/O操作数量时.
例如,对于带宽很低的网络,可能需要减小该值,以免NFS客户机使网络过载.
而对于带宽很高的网络,客户机和服务器具有足够的资源,可能需要增大该值.
这样可以更加高效地利用可用网络带宽以及客户机和服务器资源.
交付级别不稳定nfs:nfs4_max_threads说明控制为NFS版本4客户机执行异步I/O的内核线程的数量.
由于NFS基于RPC,并且RPC本身是同步的,因此,执行来自调用线程的异步NFS操作时需要单独的执行上下文.
NFS模块参数第4章NFS可调参数101可以异步执行的操作包括:用于预读的读取、延迟写、目录预读以及客户机停止使用某个文件时执行的清理操作.
数据类型无符号短整型缺省值8范围0至215-1单位线程动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无何时更改要增大或减小任一时刻未处理的并发I/O操作数量时.
例如,对于带宽很低的网络,可能需要减小该值,以免NFS客户机使网络过载.
而对于带宽很高的网络,客户机和服务器具有足够的资源,可能需要增大该值.
这样可以更加高效地利用可用网络带宽以及客户机和服务器资源.
交付级别不稳定nfs:nfs_nra说明控制在发现对文件进行顺序存取时,由NFS版本2客户机排队的预读操作的数量.
此类预读操作会增加并发性和读取吞吐量.
每个预读请求通常针对文件数据的一个逻辑块.
数据类型整数(32位)缺省值4范围0至231-1单位逻辑块.
动态是验证无何时更改要增大或减小任一时刻针对特定文件的未处理预读请求数量时.
例如,对于带宽很低的网络或内存较低的客户机,可能需要减小该值,以免NFS客户机使网络或系统内存过载.
而对于带宽很高的NFS模块参数102OracleSolaris11.
2可调参数参考手册2014年12月网络,客户机和服务器具有足够的资源,可能需要增大该值.
这样可以更加高效地利用可用网络带宽以及客户机和服务器资源.
交付级别不稳定nfs:nfs3_nra说明控制在发现对文件进行顺序存取时,由NFS版本3客户机排队的预读操作的数量.
此类预读操作会增加并发性和读取吞吐量.
每个预读请求通常针对文件数据的一个逻辑块.
数据类型整数(32位)缺省值4范围0至231-1单位逻辑块.
(请参见"nfs:nfs3_bsize"[106].
)动态是验证无何时更改要增大或减小任一时刻针对特定文件的未处理预读请求数量时.
例如,对于带宽很低的网络或内存较低的客户机,可能需要减小该值,以免NFS客户机使网络或系统内存过载.
而对于带宽很高的网络,客户机和服务器具有足够的资源,可能需要增大该值.
这样可以更加高效地利用可用网络带宽以及客户机和服务器资源.
交付级别不稳定nfs:nrnode说明控制NFS客户机上rnode高速缓存的大小.
rnode是描述NFS客户机上文件的中心数据结构,NFS版本2、3、4客户机都使用该结构.
rnode包含标识服务器上的文件的文件句柄.
rnode还包含指向各个高速缓存的指针,NFS客户机使用这些高速缓存来避免对服务器的网络调用.
每个rnode与vnode一对一关联.
vnode用来高速缓存文件数据.
NFS客户机尽量使维护的rnode数量最少,以努力避免销毁高速缓存的数据和元数据.
重用或释放rnode时,必须销毁高速缓存的数据和元数据.
NFS模块参数第4章NFS可调参数103数据类型整数(32位)缺省值该参数的缺省设置为0,这表示应将nrnode的值设置为ncsize参数的值.
实际上,任何非正的nrnode值都会导致将nrnode的值设置为ncsize的值.
范围1至231-1单位rnode动态否.
只能通过在/etc/system文件中添加或更改参数,然后重新引导系统来更改该值.
验证系统强制设置一个最大值,使得rnode高速缓存只能消耗25%的可用内存.
何时更改因为rnode是动态创建和销毁的,所以系统倾向于设置一个大小为nrnode的高速缓存,并在系统内存压力增大或同时访问的文件数量增加时自动调整高速缓存大小.
不过,在特定情况下,如果可以提前预测要访问的文件组合,则您可以自己设置nrnode的值.
例如,如果NFS客户机将访问少量非常大的文件,可以将nrnode的值设置为较小的数值,以便由系统内存高速缓存文件数据,而不使用rnode.
如果客户机将访问大量小文件,则可以增大nrnode的值来优化对文件元数据的存储,从而减少对元数据的网络调用次数.
将nrnode的值设置为1可以有效地禁用rnode高速缓存,但不推荐这样做.
该值指示客户机仅高速缓存1个rnode,这表示将频繁重新使用它.
交付级别不稳定nfs:nfs_shrinkreaddir说明某些早期的NFS服务器可能无法正确处理目录信息超过1024字节的NFS版本2READDIR请求.
此问题是由服务器实现中的一个错误导致的.
不过,该参数在NFS版本2客户机中包含了一个解决方法.
启用该参数后,客户机将不生成目录信息超过1024字节的READDIR请求.
如果禁用该参数,则会将线上大小设置为使用getdents系统调用传递的大小和使用NFS_MAXDATA传递的大小(即8192字节)中的较小值.
有关更多信息,请参见getdents(2).
数据类型整数(32位)NFS模块参数104OracleSolaris11.
2可调参数参考手册2014年12月缺省值0(禁用)范围0(禁用)或1(启用)单位布尔值动态是验证无何时更改如果使用的是早期的NFS版本2服务器,并且该服务器尝试读取目录时发生互操作性问题,请检查该参数的值.
启用该参数可能导致读取目录的应用程序的性能稍微降低.
交付级别不稳定nfs:nfs3_shrinkreaddir说明某些早期的NFS服务器可能无法正确处理目录信息超过1024字节的NFS版本3READDIR请求.
此问题是由服务器实现中的一个错误导致的.
不过,该参数在NFS版本3客户机中包含了一个解决方法.
启用该参数后,客户机将不生成目录信息超过1024字节的READDIR请求.
如果禁用该参数,则会将线上大小设置为使用getdents系统调用传递的大小或使用MAXBSIZE传递的大小(即8192字节)中的较小值.
有关更多信息,请参见getdents(2).
数据类型整数(32位)缺省值0(禁用)范围0(禁用)或1(启用)单位布尔值动态是验证无何时更改如果使用的是早期的NFS版本3服务器,并且该服务器尝试读取目录时发生互操作性问题,请检查该参数的值.
启用该参数可能导致读取目录的应用程序的性能稍微降低.
交付级别不稳定NFS模块参数第4章NFS可调参数105nfs:nfs_write_error_interval说明控制记录NFS客户机收到的ENOSPC和EDQUOT写入错误的持续时间.
该参数影响NFS版本2、3、4客户机.
数据类型长整数(64位)缺省值5秒范围0至263-1单位秒动态是验证无何时更改可增大或减小该参数以应对由客户机记录的消息量.
通常,当服务器上的整个文件系统都处于活跃状态时,您可能希望增大该参数值以减少输出的空间不足消息的数量.
交付级别不稳定nfs:nfs_write_error_to_cons_only说明控制是将NFS写入错误同时记录到系统控制台和syslog中,还是只记录到系统控制台中.
该参数影响NFS版本2、3、4客户机的消息.
数据类型整数(32位)缺省值0(系统控制台和syslog)范围0(系统控制台和syslog)或1(系统控制台)单位布尔值动态是验证无何时更改要避免包含syslogd守护进程记录的消息的文件系统被填满,请检查该参数的值.
启用该参数后,将仅在系统控制台上输出消息,而不会将消息复制到syslog消息文件中.
NFS模块参数106OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定nfs:nfs_disable_rddir_cache说明控制是否使用高速缓存来保留对READDIR和READDIRPLUS请求的响应.
该高速缓存可避免对服务器进行线上调用来检索目录信息.
数据类型整数(32位)缺省值0(启用高速缓存)范围0(启用高速缓存)或1(禁用高速缓存)单位布尔值动态是验证无何时更改如果在目录中创建或删除文件或目录时服务器不更新该目录的修改时间,因而导致互操作性问题,请检查该参数的值.
症状表现为,新名称在添加到目录中后没有显示在目录列表中,或者旧名称在从目录中删除后仍不消失.
该参数控制针对已挂载的NFS版本2、3、4文件系统的高速缓存.
该参数应用于所有已挂载NFS文件系统,无法逐个对文件系统禁用或启用高速缓存.
如果禁用该参数,还应禁用以下参数以防止DNLC负高速缓存中出现错误的条目.
"nfs:nfs_lookup_neg_cache"[97]"nfs:nfs3_lookup_neg_cache"[98]"nfs:nfs4_lookup_neg_cache"[98]交付级别不稳定nfs:nfs3_bsize说明控制NFS版本3客户机使用的逻辑块大小.
该块大小表示客户机需要执行I/O时尝试从服务器读取或写入到服务器的数据量.
数据类型无符号整数(32位)缺省值32,768(32KB)NFS模块参数第4章NFS可调参数107范围0至231-1单位字节动态是,但文件系统的块大小是在挂载该文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
将该参数设置得过低或过高可能会导致系统异常.
不要将该参数设置为低于特定平台的PAGESIZE的值.
也不要将该参数值设置得过高,因为那样可能会导致系统在等待内存分配时挂起.
何时更改尝试更改最大数据传输大小时,请检查该参数的值.
更改该参数时请结合nfs:nfs3_max_transfer_size参数.
如果希望使用更大的传输大小,请增大这两个参数.
如果希望使用更小的传输大小,则只需减小该参数即可.
交付级别不稳定nfs:nfs4_bsize说明控制NFS版本4客户机使用的逻辑块大小.
该块大小表示客户机需要执行I/O时尝试从服务器读取或写入到服务器的数据量.
数据类型无符号整数(32位)缺省值32,768(32KB)范围0至231-1单位字节动态是,但文件系统的块大小是在挂载该文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
将该参数设置得过低或过高可能会导致系统异常.
不要将该参数设置为低于特定平台的PAGESIZE的值.
也不要将该参数值设置得过高,因为那样可能会导致系统在等待内存分配时挂起.
何时更改尝试更改最大数据传输大小时,请检查该参数的值.
在更改该参数时请结合nfs:nfs4_max_transfer_size参数.
如果希望使用更大的传输大小,请增大这两个参数.
如果希望使用更小的传输大小,则只需减小该参数即可.
NFS模块参数108OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定nfs:nfs_async_clusters说明控制NFS版本2客户机生成的异步请求的组合.
四种异步请求类型分别为read-ahead、putpage、pageio和readdir-ahead.
客户机试图循环使用这四种不同的请求类型,力图做到公平,不偏向某一种请求类型而牺牲另一种请求类型.
不过,某些NFS版本2服务器中的功能(如写入收集)依赖于现有NFS版本2客户机的特定行为.
具体而言,该功能依赖于客户机能够几乎在同一时间发出多个WRITE请求.
如果客户机每次从队列中取出一个请求,就会妨碍这一用于增强客户机性能的服务器功能.
因此,请使用该参数控制在切换类型之前发出的每种请求类型的请求数量.
数据类型无符号整数(32位)缺省值1范围0至231-1单位异步请求动态是,但文件系统的群集设置是在挂载该文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将该参数的值设置为0将导致某个特定请求类型的所有已排队请求在切换到下一类型前才得到处理.
这可以有效地禁用算法的公平部分.
何时更改要增大在切换到下一类型前生成的每种类型的异步请求数量时.
执行此操作可能对依赖于来自客户机的请求群的服务器功能有帮助.
交付级别不稳定nfs:nfs3_async_clusters说明控制NFS版本3客户机生成的异步请求的组合.
五种异步请求类型分别为read-ahead、putpage、pageio、readdir-ahead和commit.
客户机试图循环使用这四种不同的请求类型,力图做到公平,不偏向某一种请求类型而牺牲另一种请求类型.
NFS模块参数第4章NFS可调参数109不过,某些NFS版本3服务器中的功能(如写入收集)依赖于现有NFS版本3客户机的特定行为.
具体而言,该功能依赖于客户机能够几乎在同一时间发出多个WRITE请求.
如果客户机每次从队列中取出一个请求,就会妨碍这一用于增强客户机性能的服务器功能.
因此,请使用该参数控制在切换类型之前发出的每种请求类型的请求数量.
数据类型无符号整数(32位)缺省值1范围0至231-1单位异步请求动态是,但文件系统的群集设置是在挂载该文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将该参数的值设置为0将导致某个特定请求类型的所有已排队请求在切换到下一类型前才得到处理.
该值可以有效地禁用算法的公平部分.
何时更改要增大在切换到下一类型前生成的每种类型的异步请求数量时.
执行此操作可能对依赖于来自客户机的操作群的服务器功能有帮助.
交付级别不稳定nfs:nfs4_async_clusters说明控制NFS版本4客户机生成的异步请求的组合.
六种异步请求类型分别为read-ahead、putpage、pageio、readdir-ahead、commit和inactive.
客户机试图循环使用这四种不同的请求类型,力图做到公平,不偏向某一种请求类型而牺牲另一种请求类型.
不过,某些NFS版本4服务器中的功能(如写入收集)依赖于现有NFS版本4客户机的特定行为.
具体而言,该功能依赖于客户机能够几乎在同一时间发出多个WRITE请求.
如果客户机每次从队列中取出一个请求,就会妨碍这一用于增强客户机性能的服务器功能.
因此,请使用该参数控制在切换类型之前发出的每种请求类型的请求数量.
数据类型无符号整数(32位)NFS模块参数110OracleSolaris11.
2可调参数参考手册2014年12月缺省值1范围0至231-1单位异步请求动态是,但文件系统的群集设置是在挂载该文件系统时设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将该参数的值设置为0将导致某个特定请求类型的所有已排队请求在切换到下一类型前才得到处理.
这可以有效地禁用算法的公平部分.
何时更改要增大在切换到下一类型前生成的每种类型的异步请求数量时.
执行此操作可能对依赖于来自客户机的请求群的服务器功能有帮助.
交付级别不稳定nfs:nfs_async_timeout说明控制执行异步I/O请求的线程因无事可做而退出前的休眠持续时间.
当没有其他请求需要执行时,每个线程将进入休眠状态.
如果在计时器到期前没有新请求进入,线程将从休眠状态唤醒并退出.
如果确实有请求到达,线程将被唤醒以执行请求,直至执行完所有请求为止.
然后,线程进入休眠状态等待下个请求到达,或等待计时器到期.
数据类型整数(32位)缺省值6000(1分钟表示成60秒*100Hz)范围0至231-1单位Hz.
(通常,时钟的运行频率为100Hz.
)动态是验证无.
不过,将该参数设置为非正值将导致这些线程在队列中没有请求需处理时立即退出.
何时更改如果已明确了解系统中应用程序的行为,并可以预测异步I/O请求的速率,则有可能采用以下两种方式之一调整该参数以稍微优化性能:NFS模块参数第4章NFS可调参数111通过让线程更快到期,可以更快地释放内核资源通过让线程更慢到期,可以避免产生线程创建和销毁开销交付级别不稳定nfs:nacache说明调整访问NFS客户机上的文件访问高速缓存的散列队列数量.
文件访问高速缓存存储用户对他们尝试访问的文件的文件访问权限.
该高速缓存自身是动态分配的.
不过,用来将高速缓存编入索引的散列队列是静态分配的.
该算法假定每个活动文件有一个访问高速缓存条目,并且每个散列桶有四个这样的访问高速缓存条目.
因此,缺省情况下,会将该参数的值设置为nrnode参数的值.
数据类型整数(32位)缺省值该参数的缺省设置为0.
该值表示应将nacache参数的值设置为nrnode·参数的值.
范围1至231-1单位访问高速缓存条目动态否.
只能通过在/etc/system文件中添加或更改参数,然后重新引导系统来更改该值.
验证无.
不过,将该参数设置为负值将有可能导致系统尝试分配非常大的一组散列队列.
尝试执行此操作时,系统可能会挂起.
何时更改如果会违反基本假设(即每个文件有一个访问高速缓存条目),请检查该参数的值.
对于处于分时共享模式的系统(其中多个用户几乎同时访问同一个文件),可能会发生此违规.
在这种情况下,增大访问高速缓存的预期大小可能有所帮助,从而让对高速缓存的散列访问保持高效.
交付级别不稳定nfs:nfs3_jukebox_delay说明控制NFS版本3客户机在从以前的NFS3ERR_JUKEBOX请求收到错误后等待传送新请求的持续时间.
由于某种原因导致文件暂时不可用NFS模块参数112OracleSolaris11.
2可调参数参考手册2014年12月时,服务器通常会返回NFS3ERR_JUKEBOX错误.
该错误通常与分层存储和CD或磁带自动换带机有关.
数据类型长整数(64位)缺省值1000(10秒表示为10sec*100Hz)范围0-263-1(在64位平台上)单位Hz.
(通常,时钟的运行频率为100Hz.
)动态是验证无何时更改检查该参数的值,可以调整该值使其符合服务器展现出的行为.
如果在使该文件可用时延迟较长,可以增大该值,以减少重复重新传输导致的网络开销.
减小该值可降低在发现文件变得重新可用时的延迟.
交付级别不稳定nfs:nfs3_max_transfer_size说明控制NFS版本3READ、WRITE、READDIR或READDIRPLUS请求的数据部分的最大大小.
该参数控制服务器返回的请求和客户机生成的请求的最大大小.
数据类型整数(32位)缺省值1,048,576(1MB)范围0至231-1单位字节动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将服务器上的最大传输大小设置为0可能导致客户机出现故障,或决定不尝试与服务器对话.
通过UDP传输使用NFS时,对最大传输大小也有限制.
UDP对每个数据报有64KB的硬限制.
64KB除了包括请求的数据部分外,还必须包括RPC标头和其他NFS信息.
将限制设置得过高可NFS模块参数第4章NFS可调参数113能会导致UDP出错,还会导致在客户机和服务器之间发生通信故障.
何时更改要调整通过网络传输的数据大小时.
通常情况下,还应更新nfs:nfs3_bsize参数才能反映该参数中的更改.
例如,试图将传输大小增至32KB以上时,请更新nfs:nfs3_bsize以反映增大后的值.
否则,将不会观察到线上请求大小的更改.
有关更多信息,请参见"nfs:nfs3_bsize"[106].
如果要使用小于缺省传输大小的传输大小,请针对每个文件系统使用mount命令的-wsize或-rsize选项.
交付级别不稳定nfs:nfs4_max_transfer_size说明控制NFS版本4READ、WRITE、READDIR或READDIRPLUS请求的数据部分的最大大小.
该参数控制服务器返回的请求和客户机生成的请求的最大大小.
数据类型整数(32位)缺省值32,768(32KB)范围0至231-1单位字节动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将服务器上的最大传输大小设置为0可能导致客户机出现故障,或决定不尝试与服务器对话.
通过UDP传输使用NFS时,对最大传输大小也有限制.
有关针对UDP的最大值的更多信息,请参见"nfs:nfs3_max_transfer_size"[112].
何时更改要调整通过网络传输的数据大小时.
通常情况下,还应更新nfs:nfs4_bsize参数才能反映该参数中的更改.
例如,试图将传输大小增至32KB以上时,请更新nfs:nfs4_bsize以反映增大后的值.
否则,将不会观察到线上请求大小的更改.
有关更多信息,请参见"nfs:nfs4_bsize"[107].
如果要使用小于缺省传输大小的传输大小,请针对每个文件系统使用mount命令的-wsize或-rsize选项.
NFS模块参数114OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定nfs:nfs3_max_transfer_size_clts说明控制基于UDP的NFS版本3READ、WRITE、READDIR或READDIRPLUS请求的数据部分的最大大小.
该参数控制服务器返回的请求和客户机生成的请求的最大大小.
数据类型整数(32位)缺省值32,768(32KB)范围0至231-1单位字节动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
验证无.
不过,将服务器上的最大传输大小设置为0可能导致客户机出现故障,或决定不尝试与服务器对话.
何时更改不要修改该参数.
交付级别不稳定nfs:nfs3_max_transfer_size_cots说明控制基于TCP的NFS版本3READ、WRITE、READDIR或READDIRPLUS请求的数据部分的最大大小.
该参数控制服务器返回的请求和客户机生成的请求的最大大小.
数据类型整数(32位)缺省值1,048,576字节范围0至231-1单位字节动态是,但该参数是在挂载时针对每个文件系统设置的.
要影响某个特定的文件系统,请在更改该参数后先卸载然后再挂载该文件系统.
NFS相关SMF配置参数第4章NFS可调参数115验证无.
不过,将服务器上的最大传输大小设置为0可能导致客户机出现故障,或决定不尝试与服务器对话.
何时更改请勿更改该值,除非希望使用大于1MB的传输大小.
交付级别不稳定NFS相关SMF配置参数在OracleSolaris11.
2中,network/nfs/server服务包括nfs-props属性组,它提供可配置的参数来控制NFS验证高速缓存的刷新以及控制mountdnetgroup高速缓存.
"server_authz_cache_refresh"[115]"netgroup_refresh"[115]可以使用sharectl命令获取和设置这些属性.
#sharectlget-pserver_authz_cache_refreshnfsserver_authz_cache_refresh=600$sharectlset-pserver_authz_cache_refresh=1nfs也可以使用SMF命令获取和设置这些属性,但需要刷新network/nfs/server服务.
#svccfg-snfs/server:defaultsetpropnfs-props/server_authz_cache_refresh=1#svcprop-pnfs-props/server_authz_cache_refreshsvc:/network/nfs/server:default1#svcadmrestartnfs/server:defaultserver_authz_cache_refresh此参数控制NFS验证高速缓存的刷新.
整数属性的缺省值为600,最小值为0,最大值为INT32_MAX.
零(0)值表示无期限.
netgroup_refresh此参数控制mountdnetgroup高速缓存.
整数属性的缺省值为600,最小值为0,最大值为INT32_MAX.
零(0)值表示无期限.
rpcmod模块参数本节描述了rpcmod模块的NFS参数.
rpcmod模块参数116OracleSolaris11.
2可调参数参考手册2014年12月rpcmod:clnt_max_conns说明控制NFS客户机与每个NFS服务器通信时所用的TCP连接的数量.
该内核PRC的构造使得它可以通过单个连接多路复用RPC.
不过,如果愿意,可以使用多个连接.
数据类型整数(32位)缺省值1范围1至231-1单位连接动态是验证无何时更改通常情况下,一个连接足以达到全部网络带宽.
不过,如果TCP无法在一个流中使用网络提供的带宽,那么采用多个连接可能会增大客户机和服务器之间的吞吐量.
增大连接数会产生一定的副作用.
增大连接数还会增加跟踪每个连接所需的内核资源使用.
交付级别不稳定rpcmod:clnt_idle_timeout说明控制在关闭客户机和服务器之间的连接前,允许该连接在客户机上处于空闲状态的持续时间.
数据类型长整数(64位)缺省值300,000毫秒(5分钟)范围0至263-1单位毫秒动态是验证无何时更改使用该参数可以更改在关闭空闲连接前允许其在客户机上存在的时间.
您可能希望以较快的速率关闭连接以避免消耗系统资源.
rpcmod模块参数第4章NFS可调参数117交付级别不稳定rpcmod:svc_idle_timeout说明控制在关闭客户机和服务器之间的连接前,允许该连接在服务器上处于空闲状态的持续时间.
数据类型长整数(64位)缺省值360,000毫秒(6分钟)范围0至263-1单位毫秒动态是验证无何时更改可使用该参数更改在关闭空闲连接前允许其在服务器上存在的时间.
您可能希望以较快的速率关闭连接以避免消耗系统资源.
交付级别不稳定rpcmod:svc_default_stksize说明设置内核RPC服务线程的内核栈大小.
数据类型整数(32位)缺省值缺省值为0.
此值表示将栈大小设置为系统缺省值.
范围0至231-1单位字节动态是,针对所分配的所有新线程.
栈大小是在创建线程时设置的.
因此,对该参数的更改不会影响现有线程,但将应用于所分配的所有新线程.
验证无何时更改调用深度过大可能会导致栈溢出和红色区域故障.
对传输的调用深度较深,加上对本地文件系统的调用深度很深,可能导致NFS服务线程溢出其栈.
rpcmod模块参数118OracleSolaris11.
2可调参数参考手册2014年12月请将该参数设置为平台上的硬件pagesize的倍数.
交付级别不稳定rpcmod:maxdupreqs说明控制检测无连接传输上的RPC级重新传输的重复请求高速缓存的大小.
该高速缓存是按客户机网络地址和RPC过程编号、程序编号、版本号以及事务ID索引的.
该高速缓存可避免处理可能不为幂等的重新传输的请求.
数据类型整数(32位)缺省值8192范围1至231-1单位请求动态该高速缓存的大小是动态确定的,但是对该高速缓存提供快速访问的散列队列的大小是静态确定的.
将高速缓存大小设置得过大可能会导致在其中搜索条目时所需搜索时间过长.
请勿将该参数的值设置为0.
该值可防止NFS服务器处理非幂等的请求.
验证无何时更改如果NFS客户机遇到误报错误,请检查该参数的值.
例如,如果尝试创建某个目录时失败,但实际上创建了该目录,这可能是由于服务器没有检测到重新传输的MKDIR请求.
高速缓存的大小应当与服务器上的负载匹配.
高速缓存记录非幂等请求,因此只需跟踪所有请求中的一部分.
高速缓存确实需要将信息保留足够长时间,才能检测到客户机执行的重新传输.
通常,无连接传输的客户机超时相对较短,从1秒左右到20秒左右.
交付级别不稳定rpcmod:cotsmaxdupreqs说明控制检测面向连接的传输上RPC级重新传输的重复请求高速缓存的大小.
该高速缓存是按客户机网络地址和RPC过程编号、程序rpcmod模块参数第4章NFS可调参数119编号、版本号以及事务ID索引的.
该高速缓存可避免处理可能不为幂等的重新传输的请求.
数据类型整数(32位)缺省值8192范围1至231-1单位请求动态是验证该高速缓存的大小是动态确定的,但是对该高速缓存提供快速访问的散列队列的大小是静态确定的.
将高速缓存大小设置得过大可能会导致在其中搜索条目时所需搜索时间过长.
请勿将该参数的值设置为0.
该参数可防止NFS服务器处理非幂等请求.
何时更改如果NFS客户机遇到误报错误,请检查该参数的值.
例如,如果尝试创建某个目录失败,但实际上创建了该目录,这可能是由于服务器没有检测到重新传输的MKDIR请求.
高速缓存的大小应当与服务器上的负载匹配.
高速缓存记录非幂等请求,因此只需跟踪所有请求中的一部分.
高速缓存确实需要将信息保留足够长时间,以便检测到客户机执行的重新传输.
通常,面向连接的传输的客户机超时时间很长,约1分钟左右.
因此,需要将条目在高速缓存中保留很长时间.
交付级别不稳定120OracleSolaris11.
2可调参数参考手册2014年12月第5章Internet协议套件可调参数1215第5章Internet协议套件可调参数本章介绍了Internet协议套件的各种属性.
"IP可调参数"[122]"TCP可调参数"[132]"UDP可调参数"[146]"IPQoS可调参数"[148]"SCTP可调参数"[149]"每路由度量"[159]有关其他类型的可调参数,请参考以下内容:OracleSolaris内核可调参数-第2章OracleSolaris内核可调参数OracleSolarisZFS可调参数-第3章OracleSolarisZFS可调参数NFS可调参数-第4章NFS可调参数系统工具可调参数-第6章系统工具参数调优IP套件参数的概述可以使用以下ipadm命令语法设置本章中介绍的所有调优参数:#ipadmset-prop-pparameterip|ipv4|ipv6|tcp|udp|sctp例如:#ipadmset-prop-pextra_priv_ports=1047tcp#ipadmshow-prop-pextra_priv_portstcpPROTOPROPERTYPERMCURRENTPERSISTENTDEFAULTPOSSIBLEtcpextra_priv_portsrw104710472049,40451-65535有关更多信息,请参见ipadm(1M).
IP可调参数122OracleSolaris11.
2可调参数参考手册2014年12月IP套件参数验证将检查本节中介绍的所有参数以验证其是否落在参数范围内.
参数的范围随每个参数的说明提供.
Internet请求注解(RFC)RFC文档中介绍了Internet协议和标准规范.
可以从以下站点查看RFC:https://www.
ietf.
org/rfc.
html在此站点中,可以通过在"IETFRepositoryRetrieval"(IETF系统信息库检索)搜索字段中输入RFC编号或Internet草案文件名来浏览RFC主题.
IP可调参数_icmp_err_interval和_icmp_err_burst说明控制生成ICMP错误消息的IP速率.
在任意_icmp_err_interval内,IP最多仅可生成_icmp_err_burst条IP错误消息.
_icmp_err_interval参数可保护IP免受拒绝服务攻击.
将该参数设置为0可禁用速率限制.
该操作不会禁止生成错误消息.
缺省值_icmp_err_interval,100毫秒_icmp_err_burst,10条错误消息范围_icmp_err_interval,0–99,999毫秒_icmp_err_burst,1–99,999条错误消息动态是何时更改出于诊断目的需加快错误消息生成速度时.
交付级别不稳定IP可调参数第5章Internet协议套件可调参数123_respond_to_echo_broadcast和_respond_to_echo_multicast(ipv4或ipv6)说明控制IP是否响应广播ICMPv4回显请求或IPv6多播ICMPv6回显请求.
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改由于安全原因不想执行该行为时可以禁用它.
交付级别不稳定send_redirects(ipv4或ipv6)说明控制IPv4或IPv6是否发送ICMPv4或ICMPv6重定向消息.
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改由于安全原因不想执行该行为时可以禁用它.
交付级别不稳定forwarding(ipv4或ipv6)说明控制IPv4或IPv6是否转发带有源IPv4路由选项或IPv6路由标头的数据包.
缺省值关闭范围关闭或打开IP可调参数124OracleSolaris11.
2可调参数参考手册2014年12月动态是何时更改使该参数保持为禁用状态可以防止拒绝服务攻击.
交付级别不稳定ttl说明为IP关联上的传出IPv4数据包控制IPv4标头中的生存时间(TTL)值.
缺省值255范围1至255动态是何时更改一般情况下,不需要更改此值.
交付级别不稳定hoplimit(ipv6)说明为IP关联上的传出IPv6数据包设置IPv6标头中的跃点限制值.
缺省值255范围1至255动态是何时更改一般情况下,不需要更改此值.
交付级别不稳定_addrs_per_if说明定义与实际接口相关联的逻辑IP接口的最大数目.
缺省值256IP可调参数第5章Internet协议套件可调参数125范围1至8,192动态是何时更改不要更改该值.
如果需要更多逻辑接口,可以考虑增大该值.
但是,请注意此更改可能会对IP性能产生负面影响.
交付级别不稳定hostmodel(ipv4或ipv6)说明控制多宿主系统上IPv4或IPv6数据包的发送和接收行为.
该属性可以具有以下值:weak、strong和src-priority.
缺省值为weak.
缺省值weak范围weak、strong或src-priorityweak传出数据包-传出数据包的源地址不需要与传出接口上配置的地址匹配.
传入数据包-传入数据包的目标地址不需要与传入接口上配置的地址匹配.
strong传出数据包-传出数据包的源地址必须与传出接口上配置的地址匹配.
传入数据包-传入数据包的目标地址必须与传入接口上配置的地址匹配.
src-priority传出数据包-如果此包中有针对IP目标的多个路由,系统将优先使用包中的IP源地址与传出接口上配置的地址相匹配的路由.
如果没有此类路由,系统将退而选择最佳路由,就像在弱ES情况下一样.
传入数据包-必须在主机的任一接口上配置传入数据包的目标地址.
动态是何时更改如果计算机具有跨严格网络域(例如,防火墙或VPN节点)的接口,请将该参数设置为strong.
交付级别不稳定IP可调参数126OracleSolaris11.
2可调参数参考手册2014年12月与重复地址检测相关的IP可调参数可以配置以下参数以在网络中执行重复地址检测(DuplicateAddressDetection,DAD).
_arp_defend_interval/_ndp_defend_interval说明系统广播IPv4ARP和IPv6NDP地址声明以分别检测网络中的两种重复地址的间隔.
缺省值300,000毫秒范围0-360,000动态是何时更改永不交付级别不稳定_arp_defend_period/_ndp_defend_period说明在任何一个物理网络接口上生成未请求的地址防御ARP或NDP消息的时间段.
这些参数与"_arp_defend_rate/_ndp_defend_rate"一起使用.
这些参数不适用于正常的ARP或NDP解析,也不适用于由于检测到冲突而进行的地址防御.
这些参数仅对自动冲突检测通信实现.
缺省值3,600秒范围0-3,600动态是何时更改永不交付级别不稳定_arp_defend_rate/_ndp_defend_rate说明在任何一个物理网络接口上可以在一小时内生成的未请求的地址防御ARP或NDP消息的数量.
可以通过配置"_arp_defend_period/_ndp_defend_period"修订该时间段.
IP可调参数第5章Internet协议套件可调参数127这些参数不适用于正常的ARP或NDP解析,也不适用于由于检测到冲突而进行的地址防御.
这些参数仅对自动冲突检测通信实现.
缺省值100条消息/小时范围0-20,000动态是何时更改永不交付级别不稳定_arp_fastprobe_count说明在传输-暂停序列中,被传输以便在暂停前检测重复地址的探测器数量.
时间长度在"_arp_fastprobe_interval"中定义.
该参数用于提高重复地址的探测速度.
缺省值3个数据包范围0-20动态是何时更改永不交付级别不稳定_arp_fastprobe_interval说明功能类似于"_arp_probe_interval",发送一定数量的探测器以检测重复地址之间的时间.
为了加快激活IP接口的过程,如果底层驱动程序可以正确地报告链路接通或链路关闭事件,则系统将使用此参数作为探测器发送间隔.
此参数与"_arp_fastprobe_count"一起使用.
缺省值150毫秒范围10-20,000动态是IP可调参数128OracleSolaris11.
2可调参数参考手册2014年12月何时更改永不交付级别不稳定_arp_probe_count说明在传输-暂停序列中,被传输以便在暂停前检测重复地址的探测器数量.
该暂停时间长度由"_arp_probe_interval"确定.
在暂停时间到期后,将恢复探测.
缺省值3个数据包范围0-20动态是何时更改永不交付级别不稳定_arp_probe_interval说明发送一定数量的探测器以检测重复地址之间的时间.
在每个间隔之后发送的探测器数量在"_arp_probe_count"中定义.
缺省值1,500毫秒范围10-20,000动态是何时更改永不交付级别不稳定arp_publish_count/ndp_unsolicit_count说明为了更新对等网络的地址高速缓存,每个未经请求的地址声明中分别对应于IPv4ARP和IPv6NDP传输的数据包的数量.
这些声明在本地IP地址成功激活后发送,并以"arp_publish_interval/ndp_unsolicit_interval"参数控制的间隔传输.
IP可调参数第5章Internet协议套件可调参数129缺省值3个数据包范围1-20动态是何时更改永不交付级别不稳定arp_publish_interval/ndp_unsolicit_interval说明在本地IP地址成功激活后,系统发出分别针对IPv4ARP和IPv6NDP的未经请求的地址声明的时间.
发送声明以更新对等网络的地址高速缓存.
每个声明中数据包的数量由"arp_publish_count/ndp_unsolicit_count"参数控制.
缺省值2,000毫秒范围1,000-20,000动态是何时更改永不交付级别不稳定_defend_interval说明当检测到某个系统的本地地址与另一个系统的IP地址冲突时,该系统防御其本地地址的时间长度.
在此期间的地址防御尝试次数在"_max_defend"中定义.
缺省值30秒范围0-999,999动态是何时更改永不交付级别不稳定IP可调参数130OracleSolaris11.
2可调参数参考手册2014年12月_dup_recovery说明在系统标记由于与远程系统中的相同地址冲突而标记某个非临时地址关闭之后的探测器传输之间的时间.
本地系统定期发出探测器以测试冲突是否仍然存在.
如果探测器未收到响应,则认为冲突已清除,并重新将地址标记为接通.
缺省值300,000毫秒范围0-360,000动态是何时更改永不交付级别不稳定_max_defend说明当某个IP地址与另一个系统的IP地址冲突时该IP地址的防御次数.
地址防御发生在"_defend_interval"中指定的时间内.
缺省值3次计数范围0-1,000动态是何时更改永不交付级别不稳定_max_temp_defend说明当某个临时本地地址或DHCP控制的地址与另一个系统的IP地址冲突时,系统防御该地址的次数.
在传递了_max_temp_defend的值之后,系统将放弃该地址.
缺省值1次计数范围0-1,000动态是何时更改永不IP可调参数第5章Internet协议套件可调参数131交付级别不稳定需要额外注意的IP可调参数建议不要更改以下参数.
_pathmtu_interval说明指定IP刷新路径最大传输单元(PMTU)发现信息和尝试重新发现PMTU的时间间隔(毫秒).
请参阅关于PMTU发现的RFC1191.
缺省值1,200毫秒(20分钟)范围2-999,999,999动态是何时更改不要更改该值.
交付级别不稳定_icmp_return_data_bytes(ipv4或ipv6)说明当IPv4或IPv6发送ICMPv4或ICMPv6错误消息时,它包括导致该错误消息的数据包的IP标头.
该参数用于控制在ICMPv4或ICMPv6错误消息中除IPv4或IPv6标头以外要包括的额外数据包字节数.
缺省值对于IPv4,为64对于IPv6,为1,280范围对于IPv4,为8-65,536对于IPv6,为8-1,280动态是何时更改不要更改该值.
在ICMP错误消息中包括更多信息可能有助于对网络问题进行诊断.
如果需要此功能,请增大该值.
交付级别不稳定TCP可调参数132OracleSolaris11.
2可调参数参考手册2014年12月TCP可调参数_deferred_ack_interval说明为非直接相连的主机指定TCP延迟确认(ACK)计时器的超时值.
请参阅RFC1122中的4.
2.
3.
2节.
缺省值100毫秒范围1毫秒至60,000毫秒动态是何时更改请勿将该值增大到超过500毫秒.
在下列情况下需增大该值:存在大于512字节最大段大小(maximumsegmentsize,MSS)的慢速网络链路(小于57.
6Kbps)接收多个TCP段的时间间隔很短时交付级别不稳定_local_dack_interval说明为直接相连的主机指定TCP延迟确认(ACK)计时器的超时值.
请参阅RFC1122中的4.
2.
3.
2节.
缺省值50毫秒范围10毫秒至500毫秒动态是何时更改请勿将该值增大到超过500毫秒.
在下列情况下需增大该值:存在大于512字节最大段大小(maximumsegmentsize,MSS)的慢速网络链路(小于57.
6Kbps)接收多个TCP段的时间间隔很短时交付级别不稳定TCP可调参数第5章Internet协议套件可调参数133_deferred_acks_max说明指定在生成确认(ACK)前从远程目标(非直接相连的)接收的TCP段的最大数目.
TCP段数是以各个连接的最大段大小(maximumsegmentsize,MSS)为单位测量的.
如果设置为0或1,则表示ACK没有延迟(假设所有段的长度均为1MSS).
实际数值是针对每个连接动态计算的.
该值是缺省的最大值.
缺省值2范围0至16动态是何时更改不要更改该值.
在某些情况下,由于ACK延迟的影响造成网络通信流量突发时,请减小该值.
请勿使该值小于2.
交付级别不稳定_local_dacks_max说明指定在生成确认(ACK)前从直接相连的目标接收的TCP段的最大数目.
TCP段数是以各个连接的最大段大小(maximumsegmentsize,MSS)为单位测量的.
如果设置为0或1,则意味着没有ACK延迟(假设所有段的长度均为1MSS).
实际数值是针对每个连接动态计算的.
该值是缺省的最大值.
缺省值8范围0至16动态是何时更改不要更改该值.
在某些情况下,由于ACK延迟的影响造成网络通信流量突发时,请减小该值.
请勿使该值小于2.
交付级别不稳定_wscale_always说明当启用了该参数时(缺省设置),TCP始终发送带有窗口缩放选项的SYN段,即使窗口缩放选项值为0.
请注意,如果TCP接收到TCP可调参数134OracleSolaris11.
2可调参数参考手册2014年12月带有窗口缩放选项的SYN段,即使已禁用该参数,TCP也会以带有窗口缩放选项的SYN段进行响应.
此外,将根据接收窗口大小设置选项值.
有关窗口缩放选项,请参阅RFC1323.
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改如果由于不支持窗口缩放选项的旧TCP栈导致互操作性问题,请禁用该参数.
交付级别不稳定_tstamp_always说明如果设置为1,则TCP始终发送带有时间戳选项的SYN段.
如果设置为2,则完全禁用时间戳,不管TCP连接是主动打开的还是被动打开的.
请注意,如果TCP接收到带有时间戳选项的SYN段,则TCP将以带有时间戳选项的SYN段进行响应,即使该参数设置为0.
缺省值0(禁用)范围0(禁用)、1(启用)或2(不管TCP连接是如何打开的都禁用)动态是何时更改如果无法准确测量往返时间(RTT)和TCP序列号回绕,请启用该参数.
有关启用该选项的更多原因,请参阅RFC1323.
交付级别不稳定send_buf说明定义缺省发送窗口大小(字节).
有关基于各个路由设置其他值的描述,请参阅"每路由度量"[159].
另请参见"max_buf"[135].
缺省值49,152TCP可调参数第5章Internet协议套件可调参数135范围4,096至"max_buf"[135]的当前值动态是何时更改应用程序可使用setsockopt(3XNET)SO_SNDBUF来更改各个连接的发送缓冲区.
交付级别不稳定recv_buf说明定义缺省接收窗口大小(字节).
有关基于各个路由设置其他值的描述,请参阅"每路由度量"[159].
另请参见"max_buf"[135]和"_recv_hiwat_minmss"[146].
缺省值128,000范围2,048至"max_buf"[135]的当前值动态是何时更改应用程序可使用setsockopt(3XNET)SO_RCVBUF来更改各个连接的接收缓冲区.
交付级别不稳定max_buf说明定义发送和接收缓冲区的最大大小(字节).
该参数控制使用setsockopt(3XNET)的应用程序可以设置的发送缓冲区和接收缓冲区最大值.
缺省值1,048,576范围128,000至1,073,741,824动态是何时更改如果在高速网络环境中进行TCP连接,请将该值增大到与网络链路速度相匹配.
交付级别不稳定TCP可调参数136OracleSolaris11.
2可调参数参考手册2014年12月_cwnd_max说明定义TCP拥塞窗口(cwnd)的最大值(字节).
有关TCP拥塞窗口的更多信息,请参阅RFC1122和RFC2581.
缺省值1,048,576范围128至1,073,741,824动态是何时更改即使应用程序使用setsockopt(3XNET)将窗口大小更改为大于_cwnd_max的值,实际使用的窗口也不会超过_cwnd_max.
因此,_max_buf应大于_cwnd_max.
交付级别不稳定_slow_start_initial说明定义值为TCP连接最大段大小(maximumsegmentsize,MSS)的最大初始拥塞窗口(cwnd)大小.
有关计算初始拥塞窗口大小的方法,请参阅RFC2414.
缺省值10范围1至10动态是何时更改不要更改该值.
如果在特殊情况下,初始cwnd大小导致网络拥塞,请减小该值.
交付级别不稳定_local_slow_start_initial说明定义直接连接的主机间TCP连接最大段大小(maximumsegmentsize,MSS)的初始拥塞窗口(cwnd)大小.
缺省值10范围1至16,384TCP可调参数第5章Internet协议套件可调参数137动态是何时更改如果更大的初始窗口会改善应用程序性能,请考虑增大该参数值.
交付级别不稳定_slow_start_after_idle说明在TCP连接空闲(未接收到段)超过一个重新传输超时(retransmissiontimeout,RTO)时段后,该连接的拥塞窗口大小(以最大段大小(maximumsegmentsize,MSS)为单位).
有关计算初始拥塞窗口大小的方法,请参阅RFC2414.
缺省值4范围1至16,384动态是何时更改有关更多信息,请参见"_slow_start_initial"[136].
交付级别不稳定sack说明如果设置为2,TCP将始终发送带有选择性确认(SACK)允许选项的SYN段.
如果TCP接收到带有SACK允许选项的SYN,并且该参数设置为1,则TCP将以SACK允许选项进行响应.
如果该参数设置为0,TCP将不发送SACK允许选项,无论传入段是否包含SACK允许选项.
有关SACK选项的信息,请参阅RFC2018.
缺省值主动范围永不、被动或主动动态是何时更改SACK处理可改进TCP重新传输性能,因此应主动启用.
有时侯,另一端可能会对主动启用的SACK选项有困惑.
如果出现这种困惑,请将该值设置为1,以便仅在传入连接允许SACK处理时才启用SACK处理.
TCP可调参数138OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定_rev_src_routes说明如果设置为0,由于安全原因,TCP不会反转传入连接的IP源路由选项.
如果设置为1,TCP将执行常规反向源路由.
缺省值0(禁用)范围0(禁用)或1(启用)动态是何时更改如果出于诊断目的需使用IP源路由,请启用IP源路由.
交付级别不稳定_time_wait_interval说明指定TCP连接处于TIME-WAIT状态的时间(毫秒).
有关更多信息,请参阅RFC1122,4.
2.
2.
13节.
缺省值60,000(60秒)范围1秒至600,000毫秒动态是何时更改请勿将该值设置为低于60秒.
有关更改该参数的信息,请参阅RFC1122,4.
2.
2.
13节.
交付级别不稳定ecn说明控制显式拥塞通知(ExplicitCongestionNotification,ECN)支持.
如果该参数设置为0,TCP将不会与支持ECN机制的对等点协商.
如果在初始化连接时该参数设置为1,TCP将不会告知对等点它支持ECN机制.
TCP可调参数第5章Internet协议套件可调参数139但是,如果对等点在SYN段中指出它支持ECN机制,则在接受新的传入连接请求时,TCP将告知对等点它支持ECN机制.
如果该参数设置为2,除了在接受连接时以ECN机制与对等点协商之外,TCP还会在传出SYN段中指出它在进行主动传出连接时支持ECN机制.
有关ECN的信息,请参阅RFC3168.
缺省值被动范围永不、被动或主动动态是何时更改ECN可帮助TCP更好地处理拥塞控制.
但是,现有的TCP实现、防火墙、NAT和其他网络设备可能会不理解该机制.
这些设备不符合IETF标准.
由于这些设备的原因,该参数的缺省值设置为1.
在极少数情况下,被动启用仍然会导致出现问题.
仅在绝对必要时才将该参数设置为0.
交付级别不稳定_conn_req_max_q说明为TCP侦听器指定等待accept(3SOCKET)接受的待处理TCP连接的最大缺省数目.
另请参见"_conn_req_max_q0"[140].
缺省值128范围1至4,294,967,295动态是何时更改对于可能会收到多个连接请求的应用程序(例如,Web服务器),可以增大缺省值以便与传入速率相匹配.
不要将该参数增大为极大的值.
待处理的TCP连接会消耗过多的内存.
此外,如果由于待处理的TCP连接数过多导致应用程序无法足够快地处理大量连接请求,新的传入请求将会被拒绝.
请注意,增大_conn_req_max_q并不意味着应用程序可以处理大量的待处理TCP连接.
应用程序可使用listen(3SOCKET)更改每个套接字的待处理TCP连接的最大数目.
该参数是应用程序可以使用listen()设置的最大值.
因此,即使该参数设置为一个很大的TCP可调参数140OracleSolaris11.
2可调参数参考手册2014年12月值,套接字的实际最大值可能远小于_conn_req_max_q,具体取决于listen()中使用的值.
交付级别不稳定_conn_req_max_q0说明为TCP侦听器指定未完成的(未完成三次握手)待处理TCP连接的最大数目.
有关TCP三次握手的更多信息,请参阅RFC793.
另请参见"_conn_req_max_q"[139].
缺省值1,024范围0至4,294,967,295动态是何时更改对于可能会收到过多连接请求的应用程序(例如,Web服务器),可以增大缺省值以便与传入速率相匹配.
下面解释了_conn_req_max_q0和每个套接字待处理连接的最大数目之间的关系.
接收到连接请求时,TCP会首先检查等待被接受的待处理TCP连接数(三次握手已完成)是否超出了侦听器可接受的最大值(N).
如果连接过多,则会拒绝请求.
如果连接数在允许范围内,TCP将检查未完成的待处理TCP连接数是否超出了N和_conn_req_max_q0的总和.
如果未超出,则会接受请求.
否则,将放弃最早的未完成的待处理TCP请求.
交付级别不稳定_conn_req_min说明为侦听器指定等待被接受的待处理TCP连接请求最大数的缺省最小值.
它是应用程序可以使用的listen(3SOCKET)最大值下限.
缺省值1范围1至1,024动态是TCP可调参数第5章Internet协议套件可调参数141何时更改对于使用listen(3SOCKET)将待处理TCP连接最大数目设置为很低值的应用程序,可以使用该参数.
可以增大该值以匹配传入连接请求速率.
交付级别不稳定_rst_sent_rate_enabled说明如果该参数设置为1,则由ipmadm参数_rst_sent_rate控制发送RST段的最大速率.
如果该参数设置为0,则发送RST段时不实施速率控制.
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改该可调参数可通过限制发送RST段的速率来避免在TCP上发生拒绝服务攻击.
请仅在需要严格遵守RFC793时禁用该速率控制.
交付级别不稳定_rst_sent_rate说明设置TCP每秒可发送的RST段的最大数目.
缺省值40范围0至4,294,967,295动态是何时更改在TCP环境中,可能有合理的原因要生成比缺省值允许的数目更多的RST.
在这种情况下,请增大该参数的缺省值.
交付级别不稳定smallest_anon_port说明该参数控制TCP可选择用作临时端口的最小端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时TCP可调参数142OracleSolaris11.
2可调参数参考手册2014年12月端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值32,768范围1,024至65,535动态是何时更改需要更大的临时端口范围时.
交付级别不稳定largest_anon_port说明该参数控制TCP可选择用作临时端口的最大端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值65,535范围32,768至65,535动态是何时更改需要更大的临时端口范围时.
交付级别不稳定需要额外注意的TCP参数建议不要更改以下参数.
_keepalive_interval说明ipadm参数用于设置TCP连接在整个系统范围内空闲后首次发出探测的时间间隔.
TCP可调参数第5章Internet协议套件可调参数143Solaris支持TCPkeep-alive机制,如RFC1122所述.
该机制是通过在TCP套接字上设置SO_KEEPALIVE套接字选项启用的.
如果为套接字启用了SO_KEEPALIVE,则在TCP连接空闲两小时(tcp_keepalive_interval参数的缺省值)之后发送第一个keep-alive探测.
如果八分钟之后对等点未响应探测,则会中止TCP连接.
有关更多信息,请参阅"_rexmit_interval_initial"[144].
您还可以在各个应用程序上使用TCP_KEEPALIVE_THRESHOLD套接字选项覆盖缺省时间间隔,以便每个应用程序在各个套接字上使用自己的时间间隔.
该选项值是一个无符号整数(毫秒).
另请参见tcp(7P).
缺省值2小时范围10秒至10天单位无符号整数(毫秒)动态是何时更改不要更改该值.
减小该值可能会导致不必要的网络通信流量,并且可能会因暂时的网络问题增加连接提前终止的可能性.
交付级别不稳定_ip_abort_interval说明为TCP连接指定缺省的重新传输超时总值.
对于给定的TCP连接,如果TCP重新传输时间已达_ip_abort_interval,并且在此期间未接收到来自其他端点的任何确认,TCP将关闭该连接.
有关TCP重新传输超时(retransmissiontimeout,RTO)的计算,请参阅RFC1122,4.
2.
3节.
另请参见"_rexmit_interval_max"[144].
缺省值5分钟范围500毫秒至1193小时动态是何时更改不要更改该值.
有关例外,请参见"_rexmit_interval_max"[144].
交付级别不稳定TCP可调参数144OracleSolaris11.
2可调参数参考手册2014年12月_rexmit_interval_initial说明为TCP连接指定缺省的初始重新传输超时(retransmissiontimeout,RTO)值.
有关基于各个路由设置其他值的描述,请参阅"每路由度量"[159].
缺省值1,000毫秒范围1毫秒至20,000毫秒动态是何时更改不要更改该值.
减小该值会导致不必要的重新传输.
交付级别不稳定_rexmit_interval_max说明定义缺省的最大重新传输超时(retransmissiontimeout,RTO)值.
为所有TCP连接计算的RTO都不能超过该值.
另请参见"_ip_abort_interval"[143].
缺省值6,000毫秒范围1毫秒至7,200,000毫秒动态是何时更改在普通网络环境中,不要更改该值.
在某些特殊环境中,如果连接的往返时间(RTT)大约为10秒,则可以增大该值.
若更改该值,还应当更改_ip_abort_interval参数.
更改_ip_abort_interval的值,使其至少为_rexmit_interval_max值的四倍.
交付级别不稳定_rexmit_interval_min说明指定缺省的最小重新传输超时(retransmissiontimeout,RTO)值.
为所有TCP连接计算的·RTO不能低于该值.
另请参见"_rexmit_interval_max"[144].
缺省值200毫秒TCP可调参数第5章Internet协议套件可调参数145范围1毫秒至7,200,000毫秒动态是何时更改在普通网络环境中,不要更改该值.
TCP的RTO计算应当与大多数RTT波动相符合.
在某些极特殊的环境中,如果连接的往返时间(RTT)大约为10秒,则增大该值.
若更改该值,还应当更改_rexmit_interval_max参数.
更改_rexmit_interval_max的值,使其至少为_rexmit_interval_min值的八倍.
交付级别不稳定_rexmit_interval_extra说明指定增加到计算的重新传输超时(retransmissiontimeout,RTO)值的常数.
缺省值0毫秒范围0至7,200,000毫秒动态是何时更改不要更改该值.
当RTO计算无法为连接获取适当的值时,可更改该值以避免不必要的重新传输.
交付级别不稳定_tstamp_if_wscale说明如果该参数设置为1,并且为连接启用了窗口缩放选项,则TCP还会为该连接启用timestamp选项.
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改不要更改该值.
通常,当在高速网络中使用TCP时,避免序列号回绕是很必要的.
因此,您需要timestamp选项.
UDP可调参数146OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定_recv_hiwat_minmss说明控制缺省的最小接收窗口大小.
最小值为_recv_hiwat_minmss乘以连接的最大段大小(maximumsegmentsize,MSS).
缺省值8范围1至65,536动态是何时更改不要更改该值.
如果必须更改该值,请确保该值不小于4.
交付级别不稳定UDP可调参数send_buf说明为UDP套接字定义缺省的发送缓冲区大小.
有关更多信息,请参见"max_buf"[147].
缺省值57,344字节范围1,024至"max_buf"[147]的当前值动态是何时更改请注意,应用程序可使用setsockopt(3XNET)SO_SNDBUF为各个套接字更改该大小.
通常情况下,不需要更改缺省值.
交付级别不稳定recv_buf说明为UDP套接字定义缺省的接收缓冲区大小.
有关更多信息,请参见"max_buf"[147].
UDP可调参数第5章Internet协议套件可调参数147缺省值57,344字节范围128至"max_buf"[147]的当前值动态是何时更改请注意,应用程序可使用setsockopt(3XNET)SO_RCVBUF为各个套接字更改该大小.
通常情况下,不需要更改缺省值.
交付级别不稳定max_buf说明为UDP套接字定义发送和接收缓冲区的最大大小.
该参数控制使用getsockopt(3SOCKET)的应用程序可以设置的发送和接收缓冲区最大大小.
缺省值2,097,152范围65,536至1,073,741,824动态是何时更改如果是在高速网络环境中进行关联,请增大该参数的值以匹配网络链路速度.
交付级别不稳定smallest_anon_port说明该参数控制UDP可选择用作临时端口的最小端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值32,768范围1,024至65,535动态是何时更改需要更大的临时端口范围时.
IPQoS可调参数148OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定largest_anon_port说明该参数控制UDP可选择用作临时端口的最大端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值65,535范围32,768至65,535动态是何时更改需要更大的临时端口范围时.
交付级别不稳定IPQoS可调参数_policy_mask说明在以下任何标注位置启用或禁用IPQoS处理:转发出站、转发入站、本地出站和本地入站.
该参数是位掩码,如下所示:未使用未使用未使用未使用转发出站转发入站本地出站本地入站XXXX0000任何位置中存在1将在该特定标注位置中屏蔽或禁用IPQoS处理.
例如,值0x01将为所有的本地入站数据包禁用IPQoS处理.
缺省值缺省值为0,表示在所有标注位置均启用IQoS处理.
范围0(0x00)-15(0x0F).
值15表示在所有标注位置均禁用IPQoS处理.
SCTP可调参数第5章Internet协议套件可调参数149动态是何时更改要在任何标注位置启用或禁用IPQoS处理时.
交付级别不稳定SCTP可调参数_max_init_retr说明控制在重新发送INIT块时SCTP端点应尝试的最大次数.
SCTP端点可使用SCTP启动结构覆盖该值.
缺省值8范围0至128动态是何时更改INIT重新传输数目取决于"_pa_max_retr"[149].
理想情况下,_max_init_retr应小于或等于_pa_max_retr.
交付级别不稳定_pa_max_retr说明为SCTP关联控制重新传输最大数目(包括所有路径).
当超出该数目时,SCTP关联将终止.
缺省值10范围1至128动态是何时更改所有路径中的重新传输最大数目取决于路径数和每个路径的重新传输最大数目.
理想情况下,应将sctp_pa_max_retr设置为所有可用路径中"_pp_max_retr"[150]的总数.
例如,如果有3条路径通向目标,每条路径的重新传输最大数目为5,那么应将_pa_max_retr设置为小于或等于15.
(请参见RFC2960,8.
2节中的注释)交付级别不稳定SCTP可调参数150OracleSolaris11.
2可调参数参考手册2014年12月_pp_max_retr说明控制指定路径中的重新传输最大数目.
如果超出了某条路径的该数目,则认为无法到达该路径(目标).
缺省值5范围1至128动态是何时更改不要将该值更改为小于5.
交付级别不稳定_cwnd_max说明为SCTP关联控制拥塞窗口的最大值.
缺省值1,048,576范围128至1,073,741,824动态是何时更改即使应用程序使用setsockopt(3XNET)将窗口大小更改为大于_cwnd_max的值,实际使用的窗口也不会超过_cwnd_max.
因此,"max_buf"[154]应大于_cwnd_max.
交付级别不稳定_ipv4_ttl说明为SCTP关联上的传出IPv4数据包控制IP版本4标头中的生存时间(TTL)值.
缺省值64范围1至255动态是SCTP可调参数第5章Internet协议套件可调参数151何时更改一般情况下,不需要更改此值.
交付级别不稳定_ipv6_hoplimit说明为SCTP关联上的传出IPv6数据包设置IPv6标头中的跃点限制值.
缺省值60范围0至255动态是何时更改一般情况下,不需要更改此值.
交付级别不稳定_heartbeat_interval说明计算在HEARTBEAT块与允许发送心跳信号的空闲目标之间的时间间隔.
SCTP端点定期发送HEARTBEAT块来监视其对等点的空闲目标传输地址的可到达性.
缺省值30秒范围0至86,400秒动态是何时更改请参阅RFC2960,8.
3节.
交付级别不稳定_new_secret_interval说明确定何时需要生成新密钥.
生成的密钥用于计算cookie的MAC.
缺省值2分钟SCTP可调参数152OracleSolaris11.
2可调参数参考手册2014年12月范围0至1,440分钟动态是何时更改请参阅RFC2960,5.
1.
3节.
交付级别不稳定_initial_mtu说明确定SCTP数据包的初始最大发送大小(包括IP标头长度).
缺省值1500字节范围68至65,535动态是何时更改如果底层链路支持大于1500字节的帧大小,请增大该参数.
交付级别不稳定_deferred_ack_interval说明设置SCTP延迟确认(ACK)计时器的超时值(毫秒).
缺省值100毫秒范围1至60,000毫秒动态是何时更改请参阅RFC2960,6.
2节.
交付级别不稳定_ignore_path_mtu说明启用或禁用路径MTU发现.
缺省值0(禁用)SCTP可调参数第5章Internet协议套件可调参数153范围0(禁用)或1(启用)动态是何时更改如果要忽略路径中的MTU更改,请启用该参数.
但是,如果路径MTU减小,该操作可能导致IP分段.
交付级别不稳定_initial_ssthresh说明为对等点的目标地址设置初始慢速启动阈值.
缺省值1,048,576范围1,024至4,294,967,295动态是何时更改请参阅RFC2960,7.
2.
1节.
交付级别不稳定send_buf说明定义缺省的发送缓冲区大小(字节).
另请参见"max_buf"[154].
缺省值102,400范围8,192至"max_buf"[154]的当前值动态是何时更改应用程序可使用setsockopt(3XNET)SO_SNDBUF来更改各个连接的发送缓冲区.
交付级别不稳定_xmit_lowat说明控制发送窗口大小的下限.
SCTP可调参数154OracleSolaris11.
2可调参数参考手册2014年12月缺省值8,192范围8,192至1,073,741,824动态是何时更改一般情况下,不需要更改此值.
该参数用于设置要将套接字标记为"可写"发送缓冲区中所需的最小大小.
如有必要,请根据"send_buf"[153]更改该参数.
交付级别不稳定recv_buf说明定义缺省的接收缓冲区大小(字节).
另请参见"max_buf"[154].
缺省值102,400范围8,192至"max_buf"[154]的当前值动态是何时更改应用程序可使用setsockopt(3XNET)SO_RCVBUF来更改各个连接的接收缓冲区.
交付级别不稳定max_buf说明控制发送和接收缓冲区大小的最大值(字节).
该参数控制使用getsockopt(3SOCKET)的应用程序可以设置的发送和接收缓冲区最大大小.
缺省值1,048,576范围102,400至1,073,741,824动态是何时更改如果是在高速网络环境中进行关联,请增大该参数的值以匹配网络链路速度.
交付级别不稳定SCTP可调参数第5章Internet协议套件可调参数155_rto_min说明针对对等点的所有目标地址设置重新传输超时(retransmissiontimeout,RTO)下界(毫秒).
缺省值1,000范围500至60,000动态是何时更改请参阅RFC2960,6.
3.
1节.
交付级别不稳定_rto_max说明针对对等点的所有目标地址控制重新传输超时(retransmissiontimeout,RTO)上界(毫秒).
缺省值60,000范围1,000至60,000,000动态是何时更改请参阅RFC2960,6.
3.
1节.
交付级别不稳定_rto_initial说明针对对等点的所有目标地址控制初始重新传输超时(retransmissiontimeout,RTO)(毫秒).
缺省值3,000范围1,000至60,000,000动态是何时更改请参阅RFC2960,6.
3.
1节.
SCTP可调参数156OracleSolaris11.
2可调参数参考手册2014年12月交付级别不稳定_cookie_life说明设置cookie的寿命(毫秒).
缺省值60,000范围10至60,000,000动态是何时更改一般情况下,不需要更改此值.
可根据"_rto_max"[155]更改该参数.
交付级别不稳定_max_in_streams说明控制SCTP关联允许的传入流的最大数目.
缺省值32范围1至65,535动态是何时更改请参阅RFC2960,5.
1.
1节.
交付级别不稳定_initial_out_streams说明控制SCTP关联允许的传出流的最大数目.
缺省值32范围1至65,535动态是何时更改请参阅RFC2960,5.
1.
1节.
SCTP可调参数第5章Internet协议套件可调参数157交付级别不稳定_shutack_wait_bound说明控制发送SHUTDOWN块之后等待SHUTDOWNACK的最长时间(毫秒).
缺省值60,000范围0至300,000动态是何时更改一般情况下,不需要更改此值.
可根据"_rto_max"[155]更改该参数.
交付级别不稳定_maxburst说明设置可在一次突发中发送的段数目的限制.
缺省值4范围2至8动态是何时更改无需更改该参数.
您可能会出于测试目的更改该参数.
交付级别不稳定_addip_enabled说明启用或禁用SCTP动态地址重新配置.
缺省值0(禁用)范围0(禁用)或1(启用)动态是SCTP可调参数158OracleSolaris11.
2可调参数参考手册2014年12月何时更改如果需要动态地址重新配置,可以启用该参数.
由于安全原因,只应出于测试目的启用该参数.
交付级别不稳定_prsctp_enabled说明为SCTP启用或禁用部分可靠性扩展(RFC3758).
缺省值1(启用)范围0(禁用)或1(启用)动态是何时更改如果您的SCTP环境不支持部分可靠性,请禁用该参数.
交付级别不稳定smallest_anon_port说明该参数控制SCTP可选择用作临时端口的最小端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值32,768范围1,024至65,535动态是何时更改需要更大的临时端口范围时.
交付级别不稳定largest_anon_port说明该参数控制SCTP可选择用作临时端口的最大端口号.
当应用程序以指定的协议创建连接且未指定端口号时,应用程序可以使用临时每路由度量第5章Internet协议套件可调参数159端口.
临时端口不会与特定的应用程序相关联.
当连接关闭后,其他应用程序可以重新使用该端口号.
单元端口号缺省值65,535范围32,768至65,535动态是何时更改需要更大的临时端口范围时.
交付级别不稳定每路由度量可使用许多每路由度量将一些属性与IPv4和IPv6路由表条目关联起来.
例如,一个系统有两个不同的网络接口:一个快速以太网接口和一个千兆以太网接口.
系统的缺省recv_maxbuf为128,000字节.
该缺省值对于快速以太网接口来说已足够,但对于千兆以太网接口来说不足.
您可以将一个不同的缺省TCP接收窗口大小与千兆以太网接口路由条目关联起来,而无需增大系统的缺省recv_maxbuf.
通过执行该关联,经过该路由的所有TCP连接都将具有增大的接收窗口大小.
例如,路由表(netstat-rn)中有以下条目,假设为IPv4:RoutingTable:IPv4DestinationGatewayFlagsRefUseInterface192.
123.
123.
0192.
123.
123.
4U14net0192.
123.
124.
0192.
123.
124.
4U14net1default192.
123.
123.
1UG18在该示例中,执行以下命令:#routechange-net192.
123.
124.
0-recvpipex然后,通向192.
123.
124.
0网络(位于net1链路上)的所有连接都将使用接收缓冲区大小x,而非缺省的接收窗口大小128,000.
如果目标位于a.
b.
c.
d网络中,并且不存在用于该网络的特定路由条目,可以添加该网络的前缀路由并更改度量.
例如:#routeadd-neta.
b.
c.
d192.
123.
123.
1-netmaskw.
x.
y.
z每路由度量160OracleSolaris11.
2可调参数参考手册2014年12月#routechange-neta.
b.
c.
d-recvpipey请注意,前缀路由的网关是缺省的路由器.
然后,通向该网络的所有连接均使用接收缓冲区大小y.
如果有多个接口,请使用-ifp参数指定要使用的接口.
这样您就可以控制将哪些接口用于特定目标.
要验证该度量,请使用route(1M)get命令.
第6章系统工具参数1616第6章系统工具参数本章介绍了各种系统工具的大多数参数缺省值.
有关其他类型的可调参数,请参考以下内容:OracleSolaris内核可调参数-第2章OracleSolaris内核可调参数OracleSolarisZFS可调参数-第3章OracleSolarisZFS可调参数NFS可调参数-第4章NFS可调参数Internet协议套件可调参数-第5章Internet协议套件可调参数系统缺省参数各种系统工具的运行是由一组在启动时由各个工具读取的值控制的.
用于每个工具的值可能存储在/etc/default目录中针对该工具的一个文件中,或者位于服务管理工具(servicemanagementfacility,SMF)配置系统信息库中的一个服务实例的属性中.
有关SMF服务和属性的更多信息,请参见《在OracleSolaris11.
2中管理系统服务》.
有关设置电源管理属性的信息,请参见《在OracleSolaris11.
2中管理系统信息、进程和性能》.
autofs可以使用sharectl命令显示或配置SMFautofs属性.
例如:#sharectlgetautofstimeout=600automount_verbose=falseautomountd_verbose=falsenobrowse=falsetrace=0environment=#sharectlset-ptimeout=200autofs有关详细信息,请参见sharectl(1M).
系统缺省参数162OracleSolaris11.
2可调参数参考手册2014年12月cron该工具可用于禁用或启用cron日志记录.
devfsadm该文件当前未使用.
dhcpagentDHCP的客户机使用情况是由dhcpagent守护进程提供的.
当ipadm用于创建DHCP地址对象时,或者当ipadm标识被配置为从DHCP接收其网络配置的一个接口时,dhcpagent将启动以管理该接口上的地址.
有关更多信息,请参见dhcpagent(1M)的FILES部分中的/etc/default/dhcpagent信息.
fs文件系统管理命令有通用部分和特定于文件系统的部分.
如果没有显式地通过-F选项指定文件系统类型,将应用缺省值.
该值是在该文件中指定的.
有关更多信息,请参见default_fs(4)的"描述"部分.
ftp该工具可用于将ls命令行为设置为RFC959NLST命令.
缺省ls行为与在以前的Solaris发行版中相同.
有关详细信息,请参见ftp(4).
inetinit可以使用该工具配置TCP序列号,以及启用或禁用对6to4中继路由器的支持.
系统缺省参数第6章系统工具参数163init系统初始化属性现在是以下SMF服务的一部分:svc:/system/environment:init您可以使用类似以下内容的语法显示和配置系统初始化属性,例如TZ和LANG.
#svccfg-ssvc:/system/environment:initsvc:/system/environment:init>setpropUsage:setproppg/name=[type:]valuesetproppg/name=[type:]([value.
.
.
])Setthepg/namepropertyofthecurrentlyselectedentity.
Valuesmaybeenclosedindouble-quotes.
Valuelistsmayspanmultiplelines.
svc:/system/environment:init>listpropumaskapplicationumask/umaskastring022umask/value_authorizationastringsolaris.
smf.
value.
environmentenvironmentapplicationenvironment/LANGastringenvironment/LC_ALLastring.
.
.
有关更多信息,请参见init(1M)的FILES部分.
ipsec可以使用该工具配置诸如IKE守护进程调试信息和ikeadm特权级别之类的参数.
kbd键盘配置属性现在是以下SMF服务的一部分:svc:/system/keymap:default您可以使用类似以下内容的语法显示和配置键盘属性.
#svccfg-ssvc:/system/keymap:defaultsvc:/system/keymap:default>setpropUsage:setproppg/name=[type:]valuesetproppg/name=[type:]([value.
.
.
])Setthepg/namepropertyofthecurrentlyselectedentity.
Valuesmaybe系统缺省参数164OracleSolaris11.
2可调参数参考手册2014年12月enclosedindouble-quotes.
Valuelistsmayspanmultiplelines.
svc:/system/keymap:default>listpropgeneralframeworkgeneral/completeastringgeneral/enabledbooleanfalsekeymapsystemkeymap/console_beeper_freqinteger900keymap/kbd_beeper_freqinteger2000keymap/keyboard_abortastringenablekeymap/keyclickbooleanfalse.
.
.
有关更多信息,请参见kbd(1).
keyserv有关详细信息,请参见keyserv(1M)的FILES部分中的/etc/default/keyserv信息.
login有关详细信息,请参见login(1)的FILES部分中的/etc/default/login信息.
mpathd可使用该工具设置in.
mpathd配置参数.
有关详细信息,请参见in.
mpathd(1M).
nfs您可以使用sharectl命令显示或配置SMFNFS属性.
例如:#sharectlgetnfsservers=1024lockd_listen_backlog=32lockd_servers=1024lockd_retransmit_timeout=5grace_period=90系统缺省参数第6章系统工具参数165server_versmin=2server_versmax=4client_versmin=2client_versmax=4server_delegation=onnfsmapid_domain=#sharectlset-pgrace_period=60nfs有关详细信息,请参见nfs(4).
nfslogd有关详细信息,请参见nfslogd(1M)的"描述"部分.
nss可使用该工具配置initgroups(3C)查找参数.
有关详细信息,请参见nss(4).
passwd有关详细信息,请参见passwd(1)的FILES部分中的/etc/default/passwd信息.
su有关详细信息,请参见su(1M)的FILES部分中的/etc/default/su信息.
syslog有关详细信息,请参见syslogd(1M)的FILES部分中的/etc/default/syslogd信息.
tar有关-f函数修饰符的说明,请参见tar(1).
系统缺省参数166OracleSolaris11.
2可调参数参考手册2014年12月如果没有提供TAPE环境变量且其中一个参数值为数字,并且未指定-f选项,则会在/etc/default/tar文件中查找与archiveN字符串匹配的数字.
archiveN字符串用作输出设备(使用文件中指定的块和大小设置).
例如:%tar-c2/tmp/*该命令将输出写入到在/etc/default/tar文件中指定为archive2的设备.
telnetd该文件标识基于telnet连接显示的缺省BANNER.
utmpdutmpd守护进程监视/var/adm/utmpx(在早期Solaris版本中为/var/adm/utmp)以确保通过pututxline(3C)由非root进程插入的utmp条目在进程终止时会被清除.
/etc/default/utmpd中的两个条目受支持:SCAN_PERIOD-在为查看被监视进程是否仍然处于活动状态而对/proc进行的各检查之间,utmpd休眠的秒数.
默认值为300.
MAX_FDS-utmpd尝试监视的最大进程数.
缺省值为4096,永不需要更改.
附录A.
系统检查脚本167A附录A系统检查脚本确认系统上的刷新行为此脚本可简化在ZFS和闪存存储调优后系统上的刷新行为正确性的确认过程.
有关更多详细信息,请参阅"确保闪存设备和NVRAM存储设备具有正确的高速缓存刷新行为"[82].
在完成指示的步骤后,可运行以下脚本.
#!
/bin/ksh##cd/dev/rdsk#fordin*d0;do#/export/home/admin1/bin/sdflush.
sh$d#done##if[[$#-ne1]];thenecho"Usage:$0cxtx.
.
.
"exit1;fisd=`iostat-x$12>&1|grepsd|nawk'{print$1}'|seds/sd//`printf"Valuefor%s:"$1echo'*sd_state::softstate0t'$sd'|::printstructsd_lunun_phy_blocksize'\|mdb-k#echo'*sd_state::softstate0t'$sd'|::printstructsd_lunun_f_suppress_cache_flush'\#echo'*sd_state::softstate0t'$sd'|::printstructsd_lunun_phy_blocksize'\168OracleSolaris11.
2可调参数参考手册2014年12月169索引数字和符号_addip_enabled,157_addrs_per_if,124_arp_defend_interval,126_arp_defend_period,126_arp_defend_rate,126_arp_fastprobe_count,127_arp_fastprobe_interval,127_arp_probe_count,128_arp_probe_interval,128_arp_publish_count,128_arp_publish_interval,129_conn_req_max_q,139_conn_req_max_q0,140_conn_req_min,140_cookie_life,156_cwnd_max,136,150_defend_interval,129_deferred_ack_interval,132,152_deferred_acks_max,133_dup_recovery,130_heartbeat_interval,151_icmp_err_burst,122_icmp_err_interval,122_icmp_return_data_bytes,131_ignore_path_mtu,152_initial_mtu,152_initial_out_streams,156_initial_ssthresh,153_ip_abort_interval,143_ipv4_ttl,150_ipv6_hoplimit,151_keepalive_interval,143_local_dack_interval,132_local_dacks_max,133_local_slow_start_initial,136_max_defend,130_max_in_streams,156_max_init_retr,149_max_temp_defend,130_ndp_defend_interval,126_ndp_defend_period,126_ndp_defend_rate,126_ndp_unsolicit_count,128_ndp_unsolicit_interval,129_new_secret_interval,151_pathmtu_interval,131_policy_mask,148_pp_max_retr,150_prsctp_enabled,158_recv_hiwat_minmss,146_respond_to_echo_broadcast,123_respond_to_echo_multicast,123_rev_src_routes,138_rexmit_interval_extra,145_rexmit_interval_initial,144_rexmit_interval_max,144_rexmit_interval_min,144_rst_sent_rate,141_rst_sent_rate_enabled,141_rto_max,155,155_rto_min,155_shutack_wait_bound,157_slow_start_after_idle,137_slow_start_initial,136_time_wait_interval,138_tstamp_always,134_tstamp_if_wscale,145索引170OracleSolaris11.
2可调参数参考手册2014年12月_wscale_always,133_xmit_lowat,153Aautofs,161autoup,28Ccron,162Dddi_msix_alloc_limitparameter,49default_stksize,22default_tsb_size,72desfree,36dhcpagent,162disp_rechoose_interval,69dnlc_dir_enable,59dnlc_dir_max_size,60dnlc_dir_min_size,59dnlc_dircache_percent,60doiflush,29dopageflush,28Eecn,139enable_tsb_rss_sizing,72Ffastscan,40forwarding,123fs,162fsflush,26ftp,162Hhandspreadpages,42hires_tick,70hoplimit(ipv6),124hostmodel,125Iinetinit,162init,163intr_force,51intr_throttling,53ip_squeue_fanout,50ip_squeue_worker_wait,50ipcl_conn_hash_size,49ipsec,163Kkbd,163keyserv,164kmem_flags,46kmem_stackinfo,47Llargest_anon_port,142,148,159lgrp_mem_pset_aware,74logevent_max_q_sz,24login,164lotsfree,35lpg_alloc_prefer,74lwp_default_stksize,23Mmax_buf(SCTP),154max_buf(TCP),135max_buf(UDP),147max_nprocs,32maxpgio,43maxphys,56maxpid,31maxuprc,33索引171maxusers,30min_percent_cpu,42minfree,37moddebug,47mpathd,164mr_enable,51Nncsize,58nfs_max_threads,99nfs:nacache,111nfs:nfs_allow_preepoch_time,92nfs:nfs_async_clusters,108,109nfs:nfs_async_timeout,110nfs:nfs_cots_timeo,93nfs:nfs_disable_rddir_cache,106nfs:nfs_do_symlink_cache,95nfs:nfs_dynamic,96nfs:nfs_lookup_neg_cache,97nfs:nfs_nra,101nfs:nfs_shrinkreaddir,103nfs:nfs_write_error_interval,105nfs:nfs_write_error_to_cons_only,105nfs:nfs3_bsize,106nfs:nfs3_cots_timeo,93nfs:nfs3_do_symlink_cache,95nfs:nfs3_dynamic,96nfs:nfs3_jukebox_delay,111nfs:nfs3_lookup_neg_cache,98nfs:nfs3_max_threads,100nfs:nfs3_max_transfer_size,112nfs:nfs3_max_transfer_size_clts,114nfs:nfs3_max_transfer_size_cots,114nfs:nfs3_nra,102nfs:nfs3_pathconf_disable_cache,92nfs:nfs3_shrinkreaddir,104nfs:nfs4_async_clusters,109nfs:nfs4_bsize,107nfs:nfs4_cots_timeo,94nfs:nfs4_lookup_neg_cache,98nfs:nfs4_max_threads,101nfs:nfs4_max_transfer_size,113nfs:nrnode,102nfslogd,165ngroups_max,33noexec_user_stack,26nss,165nstrpush,65OOracle数据库调优ZFS文件系统,85Ppageout_reserve,38pages_before_pager,43pages_pp_maximum,39passwd,165physmem,22pidmax,31pr_segp_disable,68primarycacheZFS文件系统属性,85pt_cnt,63pt_max_pty,64pt_pctofmem,64RrecordsizeZFS文件系统属性,84recv_buf(SCTP),154recv_buf(TCP),135recv_buf(UDP),146reserved_procs,31rlim_fd_cur,57rlim_fd_max,56rpcmod:clnt_idle_timeout,116rpcmod:clnt_max_conns,116rpcmod:cotsmaxdupreqs,118rpcmod:maxdupreqs,118rpcmod:svc_default_stksize,117rpcmod:svc_idle_timeout,117索引172OracleSolaris11.
2可调参数参考手册2014年12月rx_copy_threshold,55rx_limit_per_intr,53rx_queue_number,52rx_ring_size,54Ssack,137sctp_maxburst,157secondarycacheZFS文件系统属性,85segspt_minfree,67send_buf(SCTP),153send_buf(TCP),134send_buf(UDP),146send_redirects,123slowscan,41smallest_anon_port,142,147,158strmsgsz,65,66su,165swapfs_minfree,45swapfs_reserve,44syslog,165Ttar,165throttlefree,37timer_max,70tmpfs_maxkmem,61tmpfs_minfree,62tsb_alloc_hiwater,71tsb_rss_factor,73ttl(ipv4),124tune_t_fsflushr,27tune_t_minarmem,40tx_copy_threshold,55tx_queue_number,52tx_ring_size,54Uutmpd,166ZZFS文件系统调优Oracle数据库,85ZFS文件系统属性primarycache,85recordsize,84secondarycache,85zfs_arc_max,78zfs_arc_min,78zfs_prefetch_disable,79

艾云年付125元圣何塞GTT,洛杉矶vps年付85元

艾云怎么样?艾云是一家去年年底成立的国人主机商家,商家主要销售基于KVM虚拟架构的VPS服务,机房目前有美国洛杉矶、圣何塞和英国伦敦,目前商家推出了一些年付特价套餐,性价比非常高,洛杉矶套餐低至85元每年,给500M带宽,可解奈飞,另外圣何塞也有特价机器;1核/1G/20G SSD/3T/2.5Gbps,有需要的朋友以入手。点击进入:艾云官方网站艾云vps促销套餐:KVM虚拟架构,自带20G的防御...

RAKsmart新年钜惠:E3服务器秒杀$30/月起,新上韩国服务器,香港/日本/美国站群服务器,VPS月付$1.99起,GPU服务器,高防服务器_vps香港

RAKsmart发布了新年钜惠活动,即日起到2月28日,商家每天推出限量服务器秒杀,美国服务器每月30美元起,新上了韩国服务器、GPU服务器、香港/日本/美国常规+站群服务器、1-10Gbps不限流量大带宽服务器等大量库存;VPS主机全场提供7折优惠码,同时针对部分特惠套餐无码直购每月仅1.99美元,支持使用PayPal或者支付宝等方式付款,有中英文网页及客服支持。爆款秒杀10台/天可选精品网/大...

无忧云( 9.9元/首月),河南洛阳BGP 2核 2G,大连BGP线路 20G高防 ,

无忧云怎么样?无忧云服务器好不好?无忧云值不值得购买?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,自营有国内雅安高防、洛阳BGP企业线路、香港CN2线路、国外服务器产品等,非常适合需要稳定的线路的用户,如游戏、企业建站业务需求和各种负载较高的项目,同时还有自营的高性能、高配置的BGP线路高防物理...

ignore_user_abort为你推荐
vc组合维生素C和维生素E混合胶囊有用吗,还是分开的好?西部妈妈网加入新疆妈妈网如何通过验证?7788k.comwww.8855k.com是个什么网站陈嘉垣马德钟狼吻案事件是怎么回事haole10.comwww.qq10eu.in是QQ网站吗www.kknnn.com求有颜色的网站!要免费的bbs2.99nets.com让(bbs www)*****.cn进入同一个站javlibrary.comImage Library Sell Photos Digital Photos Photo Sharing Photo Restoration Digital Photos Photo Albumswww.147.qqq.comWWW147EEE.COM这个网站现在改哪个网址了www.k8k8.com谁能给我几个街污网站我去自己学
腾讯云盘 新加坡主机 virpus 12306抢票助手 建站代码 网站被封 java空间 本网站在美国维护 美国十次啦服务器 我爱水煮鱼 nerds umax120 Updog 七夕快乐英语 双线asp空间 国内域名 supercache 阿里云个人邮箱 tracker服务器 美国主机 更多