This chapter describes some of the Network Cache and Accelerator (NCA) tunable parameters.
Tunable Parameter |
For Information |
---|---|
Solaris kernel tunables | |
NFS tunable parameters | |
Internet Protocol Suite tunable parameters |
Setting these parameters is appropriate on a system that is a dedicated web server. These parameters allocate more memory for caching pages. You can set all of the tuning parameters described in this chapter in the /etc/system file.
For information on adding tunable parameters to the /etc/system file, see Tuning the Solaris Kernel.
Controls the hash table size in the NCA module for all TCP connections, adjusted to the nearest prime number.
383 hash table entries
0 to 201,326,557
No
When the NCA's TCP hash table is too small to keep track of the incoming TCP connections. This situation causes many TCP connections to be grouped together in the same hashtable entry. This situation is indicated when NCA is receiving many TCP connections, and system performance decreases.
Unstable
Defines the maximum number of pending TCP connections for NCA to listen on.
256 connections
0 to 4,294,967,295
No
When NCA closes a connection immediately after it is established because it already has too many established TCP connections. If NCA is receiving many TCP connections and can handle a larger load, but is refusing any more connections, increase this parameter. Doing so allows NCA to handle more simultaneous TCP connections.
Unstable
Defines the maximum number of incomplete (three-way handshake not yet finished) pending TCP connections for NCA to listen on.
1024 connections
0 to 4,294,967,295
No
When NCA refuses to accept any more TCP connections because it already has too many pending TCP connections. If NCA is receiving many TCP connections and can handle a larger load, but is refusing any more connections, increase this parameter. Doing so allows NCA to handle more simultaneous TCP connections.
Unstable
Specifies the maximum amount of physical memory (in pages) used by NCA for caching the pages. This value should not be more than 75 percent of total memory.
25 percent of physical memory
1 percent to maximum amount of physical memory
No
When using NCA on a system with more than 512 Mbytes of memory. If a system has a lot of physical memory that is not being used, increase this parameter. Then, NCA will efficiently use this memory to cache new objects. As a result, system performance will increase.
This parameter should be increased in conjunction with nca_vpmax, unless you have a system with more physical memory than virtual memory (a 32-bit kernel that has greater than 4 Gbytes memory). Use pagesize(1) to determine your system's page size.
Unstable
Specifies the maximum amount of virtual memory (in pages) used by NCA for caching pages. This value should not be more than 75 percent of the total memory.
25 percent of virtual memory
1 percent to maximum amount of virtual memory
No
When using NCA on a system with more than 512 Mbytes of memory. If a system has a lot of virtual memory that is not being used, increase this parameter. Then, NCA will efficiently use this memory to cache new objects. As a result, system performance will increase.
This parameter should be increased in conjunction with nca_ppmax. Set this parameter about the same value as nca_vpmax, unless you have a system with more physical memory than virtual memory.
Unstable
In addition to setting the NCA parameters, you can do some general system tuning to benefit NCA performance. If you are using gigabit Ethernet (ge driver), you should set the interface in interrupt mode for better results.
For example, a system with 4 Gbytes of memory that is booted under 64-bit kernel should have the following parameters set in the /etc/system file. Use pagesize to determine your system's page size.
set sq_max_size=0 set ge:ge_intr_mode=1 set nca:nca_conn_hash_size=82500 set nca:nca_conn_req_max_q=100000 set nca:nca_conn_req_max_q0=100000 set nca:nca_ppmax=393216 set nca:nca_vpmax=393216 |
Sets the depth of the syncq (number of messages) before a destination STREAMS queue generates a QFULL message.
10000 messages
0 (unlimited) to MAXINT
No
When NCA is running on a system with a lot of memory, increase this parameter to allow drivers to queue more packets of data. If a server is under heavy load, increase this parameter so that modules and drivers can process more data without dropping packets or getting backlogged.
Solaris 8 and later releases – Do not set this parameter to 0 on production systems. If you need to change this parameter, gradually increase this value, and monitor the system.
Solaris 7 and earlier releases – Do not set this parameter to 0 on production systems. If you need to change this parameter, gradually increase this value to a maximum of 100, and monitor the system.
Unstable
For information, see sq_max_size (Solaris 9 12/02 Release).
Enables the ge driver to send packets directly to the upper communication layers rather than queue the packets
0 (queue packets to upper layers)
0 (enable) or 1 (disable)
No
When NCA is enabled, set this parameter to 1 so that the packet is delivered to NCA in interrupt mode for faster processing.
Unstable