|
| 以 PDF 格式下載這本書 (706 KB)
Chapter 5 Network Cache and Accelerator (NCA) Tunable Parameters
This chapter describes some of the Network Cache and Accelerator
(NCA) tunable parameters.
Where to Find Tunable Parameter Information
Overview of Tuning NCA 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.
nca:nca_conn_hash_size
- Description
-
Controls the hash table
size in the NCA module for all TCP connections, adjusted to nearest prime
number.
- Default
-
383 hash table entries
- Range
-
0 to 201,326,557
- Dynamic?
-
No
- When to Change
-
When the NCA's TCP
hash table is too small to keep track of the incoming TCP connections, which
causes many TCP connections to be grouped together in the same hashtable entry.
This situation is indicated when NCA is receiving a lot of TCP connections
and system performance decreases.
- Commitment Level
-
Unstable
nca:nca_conn_req_max_q
- Description
-
The maximum number of
pending TCP connections for NCA to listen on.
- Default
-
256 connections
- Range
-
0 to 4,294,967,295
- Dynamic?
-
No
- When to Change
-
When NCA closes a
connection immediately after it is established because it already has too
many established TCP connections. If NCA is receiving a lot of TCP connections
and can handle a larger load, but is refusing any more connections, increase
this parameter to allow NCA to handle more simultaneous TCP connections.
- Commitment Level
-
Unstable
nca:nca_conn_req_max_q0
- Description
-
The maximum number of
incomplete (three-way handshake not yet finished) pending TCP connections
for NCA to listen on.
- Default
-
1024 connections
- Range
-
0 to 4,294,967,295
- Dynamic?
-
No
- When to Change
-
When NCA refuses
to accept any more TCP connections because it already has too many pending
TCP connections. If NCA is receiving a lot of TCP connections and can handle
a larger load, but is refusing any more connections, increase this parameter
to allow NCA to handle more simultaneous TCP connections.
- Commitment Level
-
Unstable
nca:nca_ppmax
- Description
-
Maximum amount of physical
memory (in pages) used by NCA for caching the pages. Should not be
more than 75% of total memory.
- Default
-
25% of physical memory
- Range
-
1% to maximum amount of physical
memory
- Dynamic?
-
No
- When to Change
-
When using NCA on
a system with a lot of memory (greater than 512 Mbytes). If a system has a
lot of physical memory that is not being used, increase this parameter so
NCA will efficiently use this memory to cache new objects, and therefore,
increase system performance.
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 get your system's page size.
- Commitment Level
-
Unstable
nca:nca_vpmax
- Description
-
Maximum amount of virtual
memory (in pages) used by NCA for caching pages. Should not be more
than 75% of the total memory.
- Default
-
25% of virtual memory
- Range
-
1% to maximum amount of virtual
memory
- Dynamic?
-
No
- When to Change
-
When using NCA on
a system with a lot of memory (greater than 512 Mbytes). If a system has a
lot of virtual memory that is not being used, increase this parameter so NCA
will efficiently use this memory to cache new objects, and therefore, increase
system's performance.
This parameter should be increased in conjunction with nca_ppmax. Set this parameter approximately same as nca_vpmax
unless you have a system with more physical memory than virtual memory.
- Commitment Level
-
Unstable
General System Tuning for the NCA
In addition to setting the NCA parameters, you can do some general system
tuning to benefit NCA performance. If you are using Sun GigabitEthernet (ge driver), you should set the interface in interrupt mode for better
results.
For example, a system with 4 Gbytes of memory and 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
|
sq_max_size
- Description
-
The depth of the syncq
(number of messages) before a destination streams queue generates a QFULL message.
- Default
-
2 messages
- Range
-
1 to 0 (unlimited)
- Dynamic?
-
No
- When to Change
-
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 modules and drivers may process more data without dropping
packets or getting backlogged.
- Commitment Level
-
Unstable
ge:ge_intr_mode
- Description
-
Enables the ge driver to send packets directly to the upper communication layers
rather than queueing the packets.
- Default
-
0 (queue packets to upper
layers)
- Range
-
0 (enable) to 1 (disable)
- Dynamic?
-
No
- When to Change
-
When NCA is enabled,
set this parameter to 1 so that the packet is delivered to NCA in interrupt
mode for faster processing
- Commitment Level
-
Unstable
|