Where are the values for SIZE_DATA_BUFFERS, NUMBER_DATA_BUFFERS and NET_BUFFER_SZ located on Windows NetBackup Servers?

Article: 100008276
Last Published: 2020-06-13
Ratings: 0 1
Product(s): NetBackup & Alta Data Protection

Problem

Where are the values for SIZE_DATA_BUFFERS, NUMBER_DATA_BUFFERS and NET_BUFFER_SZ located on Windows NetBackup Servers?


Solution

The purpose of this document is to clear up any issues surrounding the location and use of the NetBackup tuning parameters on Window Platform servers running NetBackup versions 7.x thru 9.x.


Windows Media Server - USE FILES:


SIZE_DATA_BUFFERS - Located in <install_path>\NetBackup\db\config directory

- This is the size of the buffer that is used by bptm/bpdm processes (child/parent) to communicate with each other.
It is also the tape block size that bptm uses to write to tape.


NUMBER_DATA_BUFFERS - Located in the <install_path>\NetBackup\db\config directory

- This is a bptm setting to set the number of Data Buffers available to the bptm process for communication between the parent and the child bptm process. .


NET_BUFFER_SZ - Located in the <install_path>\NetBackup directory

- This  is a bptm setting only. The bptm child process uses this when communicating with bpbkar32 / tar32. The NET_BUFFER_SZ value is for Media Servers (a server with a storage device attached).


Windows Clients - USE REGISTRY:
 

The Windows client equivalent to NET_BUFFER_SZ is Buffer_Size.  

Located in the Windows Registry, this value sets the size of the communication buffer (in kb) for the client processes (bpbkar32 / tar32) when communicating to the bptm or bpdm process on the media server.


HKEY_LOCAL_MACHINE\SOFTWARE\VERITAS\NetBackup\CurrentVersion\Config\
REG_DWORD:Buffer_Size: <Decimal value in KB>


Veritas recommends that Buffer_Size and NET_BUFFER_SZ are to to a value of zero (0) to let the Operating System determine the best size.

If a fixed size is required, the Buffer_Size ( in KB ) value should match the Media Server NET_BUFFER_SZ byte value for optimal performance. 


After making changes, verify in the bptm log that the values have taken effect.

Example Values:

SIZE_DATA_BUFFERS = 262144
NUMBER_DATA_BUFFERS = 64

The media server BPTM Log will showsomething similar to the following:

Example output:

09:42:18.141 [920.728] <2> io_init: using 262144 data buffer size
09:42:18.141 [920.728] <2> io_init: CINDEX 0, sched Kbytes for monitoring =30000
09:42:18.141 [920.728] <2> io_init: using 64 databuffers

 

About SIZE_DATA_BUFFERS and SCSI/RAID Controllers

 

The SIZE_DATA_BUFFER value specified must not exceed the maximum tape I/O block size supported by the the tape device driver or the HBA driver for the Operating System.

Using a SCSI RAID controller to connect a tape device is supported by Veritas NetBackup but not recommended if also shared with Disk devices.

SCSI RAID card drivers are commonly limited to a block size of 64KB and driver tuning must be implemented to allow for larger SIZE_DATA_BUFFERS value.

Registry modification to the SCSI HBA driver are required to allow block sizes larger than 64kb.

Veritas recommends checking with your tape device Vendor for maximum block I/O size before contacting Veritas

 

Reference: MaximumSGList

 

The MaximumSGList parameter does not work with Storport driver architecture. Windows Server x64 platforms using the Storport drivers will not allow the block size to be changed using MaximumSGList  and defaults to 64k.

Using the legacy SCSIport driver allows the MaximumSGList parameter can be changed and allow block size above 64k. You can set any maximum block size between 64 Kbytes and 1 Mbyte.

The formula to calculate the value for MaximumSGList is:

MaximumSGList = ((Maximum Block Size)/4 Kbytes) +1

To calculate MaximumSGList for 256k blocks (262144 in SIZE_DATA_BUFFERS)  

256 Kbytes/4 Kbytes = 64. Add 1 for 65 (decimal) or 0x41 (hexadecimal).


Registry Location

HKLM\System\CurrentControlSet\Services\<ServiceName>\Parameters\Device\MaximumSGList,

- where <ServiceName> is the miniport driver name specified with the AddServices directive in the INF file.

Values: Between 16 and 255.
Meaning: Indicates the number of scatter/gather list elements supported by the adapter.

Below are two method to set the MaximumSGList value for the SCSI/HBA Card.
*** Please, check with the HBA Vendor for correct settings before applying ***


Option #1 - REG_DWORD

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<ServiceName>\Parameters\Device\ 

Select New DWORD Value
Type MaximumSGList in the Value Name
Double-click on the string and enter the Value Data: [33 to 255]


Option #2 - REG_SZ

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<ServiceName>Parameters\Device\

Select "New String Value" from the Edit menu
Type "DriverParameters" in the Value Name edit box and press Enter.
Double-click on the string and enter the Value Data: MAXIMUMSGLIST=[value*]

** Some vendors will have existing parameters set. Add the MaximumSGList as an extra agument.

Ex "CSMI=None MAXIMUMSGLIST=255;"

The maximum value allowed for MaximumSGLIst is 255 or 0xFF.

For the particular value of 0xFF, the internal value passed to Windows is increased to 0x101, allowing support for a full 1 Mbyte transfer.

The system must be rebooted for the new registry setting to be effective.

Was this content helpful?