Setting the network buffer size for the NetBackup media server
A modern, well configured, operating system with properly written TCP drivers is unlikely to need TCP memory tuning by NetBackup. Accordingly, the best NetBackup configuration is to disable tuning by placing a zero (0) into the NET_BUFFER_SZ file on media servers and Linux/UNIX clients. Simply deleting the file is not equivalent because some NetBackup processes have default setsockopt API calls configured to overcome past external problems with various platforms and drivers. See the following paragraphs for more details and other considerations.
NET_BUFFER_SZ is a tunable media server parameter that can be used to adjust the size of the network buffer space. The operating system uses this buffer space for the connection between the bptm child process and the client process. This buffer space caches either received data from the network (a backup) or written data to the network (a restore). The parameter sets the value for NetBackup to use for the network buffer space, but the operating system may not allow the change.
The NetBackup media server can be configured to request that the operating system use a non-default size for the network buffer space. If the NET_BUFFER_SZ touch file exists, bptm requests that the operating system adjust the size. The operating system may or may not allow the change, depending on the operating system revision and the current TCP tuning.
The following examples are from bptm logs on various platforms. These examples show how bptm records the size that was used and any previous size requested by NetBackup.
For example:
Red Hat
setting receive network buffer to 1049600 bytes
Solaris 10
setting receive network buffer to 65536 bytes receive network buffer is 64240 bytes
Windows
setting receive network buffer to 1049600 bytes setting receive network buffer to 1049600 bytes
The default value for this parameter is derived from the NetBackup data buffer size using the following formula:
For backup jobs: (<data_buffer_size> * 4) + 1024
For restore jobs: (<data_buffer_size> * 2) + 1024
For tape:
If the default value for the NetBackup data buffer size is 65536 bytes, the formula results in the following: a default NetBackup network buffer size of 263168 bytes for backups and 132096 bytes for restores.
For disk:
If the default value for the NetBackup data buffer size is 262144 bytes, the formula results in the following: a default NetBackup network buffer size of 1049600 bytes for backups and 525312 bytes for restores.
To set the network buffer size
- Create the following files:
/usr/openv/netbackup/NET_BUFFER_SZ /usr/openv/netbackup/NET_BUFFER_SZ_REST
Windows
install_path\NetBackup\NET_BUFFER_SZ install_path\NetBackup\NET_BUFFER_SZ_REST
- Note the following about the buffer files:
These files contain a single integer that specifies the network buffer size in bytes. The value in each file must be within the value range that the operating system allows. Otherwise, the established connection may behave erratically. For example, to use a network buffer size of 64 kilobytes, the file would contain 65536. If the files contain the integer 0 (zero), the default operating system value for the network buffer size is used. More information about the buffer files is available:
https://www.veritas.com/content/support/en_US/article.100016112
If the
NET_BUFFER_SZfile exists and theNET_BUFFER_SZ_RESTfile does not exist,NET_BUFFER_SZspecifies the network buffer size for backup and restores.If the
NET_BUFFER_SZ_RESTfile exists, its contents specify the network buffer size for restores.If both files exist, the
NET_BUFFER_SZfile specifies the network buffer size for backups. TheNET_BUFFER_SZ_RESTfile specifies the network buffer size for restores.Because local backup or restore jobs on the media server do not send data over the network, this parameter has no effect on those operations. This parameter is used only by the NetBackup media server processes that read from or write to the network, specifically, the bptm or bpdm processes. No other NetBackup process uses this parameter.