Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
  Previous   Contents   Next 
   
 
Chapter 3

NFS Tunable Parameters

This section describes the NFS tunable parameters.

Where to Find Tunable Parameter Information

Tunable Parameter

For Information

Solaris Kernel Tunables

Chapter 2, Solaris Kernel Tunables

TCP/IP Tunable Parameters

Chapter 4, TCP/IP Tunable Parameters

Network Cache and Accelerator (NCA) Tunable Parameters

Chapter 5, Network Cache and Accelerator (NCA) Tunable Parameters

Tuning the NFS Environment

You can define these parameters in the /etc/system file, which is read during the boot process. Each parameter can be identified by the name of the kernel module that it is in and a parameter name that identifies it. For more information, see "Tuning a Solaris System".


Note - The names of the symbols, the modules that they reside in, and the default values can change between releases. Check the documentation for the version of the active SunOS release before making changes or applying values from previous releases.


NFS Module Parameters

This section describes parameters relating to the NFS kernel module.

nfs:nfs3_pathconf_disable_cache

Description

Controls the caching of pathconf(2) information for NFS Version 3 mounted file systems.

Data Type

Integer (32-bit)

Default

0 (caching enabled)

Range

0 (caching enabled), 1 (caching disabled)

Units

Boolean values

Dynamic?

Yes

Validation

None

When to Change

The pathconf information is cached on a per file basis. However, if the server can change the information for a specific file dynamically, then use this parameter to disable caching because there is no mechanism for the client to validate its cache entry.

Stability Level

Evolving

nfs:nfs_allow_preepoch_time

Description

Controls whether files with incorrect or negative time stamps should be made visible on the client.

Historically, neither the NFS client nor the NFS server would do any range checking on the file times being returned by using these attributes. The over-the-wire time stamp values are unsigned and 32-bits long, so all values have been legal.

However, on a system running a 32-bit Solaris release, the time stamp values are signed and 32-bits long. Thus, it would be possible to have a time stamp representation that appeared to be prior to January 1, 1970, or pre-epoch.

The problem on a system running a 64-bit Solaris release is slightly different. The time stamp values on the 64-bit Solaris release are signed and 64-bits long. It is impossible to determine whether a time field represents a full 32-bit time or a negative time, that is, one prior to January 1, 1970.

It is impossible to determine whether to sign extend a time value when converting from 32 bits to 64 bits. The time value should be sign extended if the time value is truly a negative number, but should not be sign extended if it does truly represent a full 32-bit time value. This problem is resolved by simply disallowing full 32-bit time values.

Data Type

Integer (32-bit)

Default

0 (32-bit time stamps disabled)

Range

0 (32-bit time stamps disabled), 1 (32-bit time stamps enabled)

Units

Boolean values

Dynamic?

Yes

Validation

None

When to Change

Even during normal operation, it is possible for the time stamp values on some files to be set very far in the future or very far in the past. If access to these files is desired using NFS mounted file systems, then set this parameter to 1 to allow the time stamp values to be passed through unchecked.

Stability Level

Evolving

nfs:nfs_cots_timeo

Description

Controls the default RPC timeout for NFS version 2 mounted file systems using connection oriented transports such as TCP for the transport protocol.

Data Type

Signed integer (32-bit)

Default

600 (60 seconds)

Range

0 to 231 - 1

Units

10th of seconds

Dynamic?

Yes, but the RPC timeout for a file system is set when the file system is mounted. To affect a particular file system, unmount and mount the file system after changing this parameter.

Validation

None

When to Change

TCP does a good job ensuring requests and responses are delivered appropriately. However, if the round-trip times are very large in a particularly slow network, the NFS version 2 client might time out prematurely.

Increase this parameter to prevent the client from timing out incorrectly. The range of values is very large, so increasing this value to be too large might result in real situations where a retransmission was required to not be detected for long periods of time.

Stability Level

Evolving

nfs:nfs3_cots_timeo

Description

Controls the default RPC timeout for NFS version 3 mounted file systems using connection oriented transports such as TCP for the transport protocol.

Data Type

Signed integer (32-bit)

Default

600 (60 seconds)

Range

0 to 231 - 1

Units

10th of seconds

Dynamic?

Yes, but the RPC timeout for a file system is set when the file system is mounted. To affect a particular file system, unmount and mount the file system after changing this parameter.

Validation

None

When to Change

TCP does a good job ensuring requests and responses are delivered appropriately. However, if the round-trip times are very large in a particularly slow network, the NFS version 3 client might time out prematurely. Increase this parameter to prevent the client from timing out incorrectly. The range of values is very large, so increasing this value to be too large might result in real situations where a retransmission was required to not be detected for long periods of time.

Stability Level

Evolving

 
 
 
  Previous   Contents   Next