Requirements for Windows iSCSI Configuration

Windows iSCSI configuration requirements are split into two types. These requirements are needed on both staging and target servers. 

  1. iSCSI configuration required for operational stability.
  2. iSCSI configuration specific for performance improvement.
When target environments are discovered, Delphix will configure the Microsoft iSCSI Initiator Service for Automatic startup.

iSCSI Configuration Required for Operational Stability

We require the following Microsoft iSCSI Initiator configuration parameters for Target and Staging Hosts. For details about configuring registry settings, see How to Modify the Windows Registry on the Microsoft Support site.

A Windows Server reboot is required after changing iSCSI configuration parameters.

Registry KeyRegistry ValueTypeData

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E97B-E325-11CE-BFC1-08002BE10318}\<Instance Number>\<Parameters>

MaxRequestHoldTime

REG_DWORD

0x12c (300)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\iSCSI\DiscoveryMaxRequestHoldTimeREG_DWORD0x384 (900)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DiskTimeOutValueREG_DWORD0x384 (900)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<Interface GUID>TcpAckFrequencyREG_DWORD0x1 (1)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E97B-E325-11CE-BFC1-08002BE10318}\<Instance Number>\ParametersiSCSIDisableNagleREG_DWORD0x1 (1)

The Knowledge Base article Registry Settings for Optimal Database Performance and Stability (KBA1251) provides a utility which may assist you with setting these values. 

For systems running Windows 2003 see Microsoft Knowledgebase article 815230 for hotfix information regarding changing TcpAckFrequency.

iSCSI Configuration Specific for Performance Improvement

Below are recommendations for Windows iSCSI initiator configuration. Please note that the parameters below will affect ALL applications running on the Windows target host, so make sure that the following recommendations do not contradict best practices for other applications running on the host.

For targets running Windows Server, the iSCSI initiator driver timers are available at: HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E97B-E325-11CE-BFC1-08002BE10318}\<Instance Number>\<Parameters>. For details about configuring registry settings, see How to Modify the Windows Registry on the Microsoft Support site.

Registry ValueTypeDefaultRecommendedComments
MaxTransferLengthREG_DWORD

262144

131072This controls the maximum data size of an I/O request. A value of 128K is optimal for the Delphix Engine, because it reduces segmentation of the packets as they go through the stack.

MaxBurstLength

REG_DWORD

262144

131072This is the negotiated maximum burst length. 128K is the optimal size for the Delphix Engine.

MaxPendingRequests

REG_DWORD255512This setting controls the maximum number of outstanding requests that the initiator allows. The Delphix Engine will this many requests at most to the target before receiving response for any of the requests.
MaxRecvDataSegmentLengthREG_DWORD65536 131072This is the negotiated MaxRecvDataSegmentLength.

Related Links