Enterprise Edition Home | Express Edition Home | Previous Page | Next Page   Effect of Configuration on CPU Utilization > Configuration Parameters and Environment Variables That Affect CPU Utilization >

NETTYPE

The NETTYPE configuration parameter configures poll threads for each connection type that your instance of the database server supports. If your database server instance supports connections over more than one interface or protocol, you must specify a separate NETTYPE configuration parameter for each connection type.

You typically include a separate NETTYPE parameter for each connection type that is associated with a dbservername. You list dbservernames in the DBSERVERNAME and DBSERVERALIASES configuration parameters. You associate connection types with dbservernames through entries in the sqlhosts file or registry. For information about connection types and the sqlhosts file or registry, see your IBM Informix: Administrator's Guide.

Specifying the Connection Protocol

The first NETTYPE entry for a given connection type applies to all dbservernames associated with that type. Subsequent NETTYPE entries for that connection type are ignored. NETTYPE entries are required for connection types that are used for outgoing communication only even if those connection types are not listed in the sqlhosts file or registry.

UNIX Only

The following protocols apply to UNIX platforms:

End of UNIX Only
Windows Only

The following protocols apply to Windows platforms:

End of Windows Only

Specifying Virtual-Processor Classes for Poll Threads

Each poll thread configured or added dynamically by a NETTYPE entry runs in a separate VP. A poll thread can run in one of two VP classes: NET and CPU. For best performance, it is recommended that you use a NETTYPE entry to assign only one poll thread to the CPU VP class and that you assign all additional poll threads to NET VPs. The maximum number of poll threads that you assign to any one connection type must not exceed NUMCPUVPS.

Specifying Number of Connections and Number of Poll Threads

The optimum number of connections per poll thread is approximately 300 for uniprocessor computers and 350 for multiprocessor computers. However, a poll thread can support 1024 or perhaps more connections.

Each NETTYPE entry configures the number of poll threads for a specific connection type, the number of connections per poll thread, and the virtual-processor class in which those poll threads run, using the following comma-separated fields. There can be no white space within or between these fields.

NETTYPE connection_type,poll_threads,c_per_t,vp_class 
connection_type
identifies the protocol-interface combination to which the poll threads are assigned. You typically set this field to match the connection_type field of a dbservername entry that is in the sqlhosts file or registry.
poll_threads
is the number of poll threads assigned to the connection type. Set this value to no more than NUMCPUVPS for any connection type.
c_per_t
is the number of connections per poll thread. Use the following formula to calculate this number:
c_per_t = connections / poll_threads
connections
is the maximum number of connections that you expect the indicated connection type to support. For shared-memory connections (ipcshm), double the number of connections for best performance.

This field is used only for shared memory connections on Windows. Other connection methods on Windows ignore this value.

vp_class
is the class of virtual processor that can run the poll threads. Specify CPU if you have a single poll thread that runs on a CPU VP. For best performance, specify NET if you require more than one poll thread. If you are running Windows, specify NET in all cases. The default value for this field depends on the following conditions:

If c_per_t exceeds 350 and the number of poll threads for the current connection type is less than NUMCPUVPS, you can improve performance by specifying the NET CPU class, adding poll threads (do not exceed NUMCPUVPS), and recalculating c_per_t. The default value for c_per_t is 50.

Important:
Each ipcshm connection requires a semaphore. Some operating systems require that you configure a maximum number of semaphores that can be requested by all software packages that run on the computer. For best performance, double the number of actual ipcshm connections when you allocate semaphores for shared-memory communications. See UNIX Semaphore Parameters.

If your computer is a uniprocessor and your database server instance is configured for only one connection type, you can omit the NETTYPE parameter. The database server uses the information provided in the sqlhosts file or registry to establish client/server connections.

If your computer is a uniprocessor and your database server instance is configured for more than one connection type, include a separate NETTYPE entry for each connection type. If the number of connections of any one type significantly exceeds 300, assign two or more poll threads, up to a maximum of NUMCPUVPS, and specify the NET VP class, as the following example shows:

NETTYPE ipcshm,1,200,CPU
NETTYPE tlitcp,2,200,NET # supports 400 connections

If your computer is a multiprocessor, your database server instance is configured for only one connection type, and the number of connections does not exceed 350, you can use NETTYPE to specify a single poll thread on either the CPU or the NET VP class. If the number of connections exceeds 350, set the VP class to NET, increase the number of poll threads, and recalculate c_per_t.

Note:
You should carefully distinguish between poll threads for network connections and poll threads for shared memory connections, which should run one per CPU virtual processor. TCP connections should only be in network virtual processors, and you should only have the minimum needed to maintain responsiveness. Shared memory connections should only be in CPU virtual processors and should run in every CPU virtual processor
Enterprise Edition Home | Express Edition Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]