2.5 Configuring PlateSpin Server Behavior through Configuration Parameters

Some aspects of your PlateSpin Server’s behavior are controlled by configuration parameters that you set on a configuration Web page residing your PlateSpin Server host (https://Your_PlateSpin_Server/platespinconfiguration/).

Under normal circumstances you should not need to modify these settings unless you are advised to do so by PlateSpin Support. This section provides a number of common use cases along with information on the required procedure.

Use the following procedure for changing and applying any configuration parameters:

  1. From any Web browser, open the https://Your_PlateSpin_Server/platespinconfiguration/tool.

  2. Locate the required server parameter and change its value.

  3. Save your settings and exit the page.

No reboot or restart of services is required after the change is made in the configuration tool.

The following topics provide information on specific situations, in which you might need to change product behavior using an XML configuration value.

2.5.1 Changing the Adapter Type Used during the Target Take Control Process of Workload Migration to a Target VM on a Hyper-V Host

By default, PlateSpin Migrate selects the adapter type based on the Workload OS and Target Virtual Machine type. To edit the adapter type used during the Target Take Control process of workload migration to a Hyper-V target, do the following:

  1. From any Web browser, open https://Your_PlateSpin_Server/platespinconfiguration/.

  2. Locate the PreferedHyperVTakeControlNetworkAdapter parameter and edit its value as synthetic or legacy depending on your requirement.

  3. Save your settings and exit the page.

2.5.2 Increasing the Size Limit on Post-Migration Actions Uploaded to the PlateSpin Server

By default, PlateSpin Migrate sets a 64 MB upload limit for each individual post-migration action, including its dependencies. See Managing Custom Actions.

You can increase this limit by modifying the configuration setting on the PlateSpin Server’Web configuration tool.

IMPORTANT:Decreasing the default size limit might have a negative impact on the stability of your PlateSpin Server.

  1. From any Web browser, open https://Your_PlateSpin_Server/platespinconfiguration/.

  2. Locate and edit the setting that defines the value of the httpRuntime element’s maxRequestLength attribute:

    maxRequestLength=8192

  3. Replace the existing value with the required new value in kilobytes. For example, to increase the size to 16 MB, replace 8192 with 16384:

    maxRequestLength=16384

  4. Save your settings and exit the page.

2.5.3 Optimizing Data Transfer over WAN Connections

You can optimize data transfer performance and fine tune it for WAN connections. You do this by modifying configuration parameters that the system reads from settings you make in a configuration tool residing on your PlateSpin Server host. For the generic procedure, see Configuring PlateSpin Server Behavior through Configuration Parameters.

Tuning Parameters

Use the file transfer configuration parameters settings to optimize data transfers across a WAN. These settings are global and affect all replications using the file-based and VSS replications.

NOTE:If these values are modified, replication times on high-speed networks, such as Gigabit Ethernet, might be negatively impacted. Before modifying any of these parameters, consider consulting PlateSpin Support first.

Table 2-7 lists the configuration parameters on the PlateSpin Configuration page (https://Your_PlateSpin_Server/platespinconfiguration/) that control file transfer speeds with the defaults and maximum values. You can modify these values through trial-and-error testing in order to optimize operation in a high-latency WAN environment.

Table 2-7 Default and Optimized File Transfer Configuration Parameters

Parameter

Default Value

Maximum Value

AlwaysUseNonVSSFileTransferForWindows2003

False

 

FileTransferCompressionThreadsCount

Controls the number of threads used for packet-level data compression. This setting is ignored if compression is disabled. Because the compression is CPU-bound, this setting might have a performance impact.

2

N/A

FileTransferBufferThresholdPercentage

Determines the minimum amount of data that must be buffered before creating and sending new network packets.

10

 

FileTransferKeepAliveTimeOutMilliSec

Specifies ow long to wait to start sending keep alive messages if TCP times out.

120000

 

FileTransferLongerThan24HoursSupport

True

 

FileTransferLowMemoryThresholdInBytes

Determines when the server considers itself to be in a low memory state, which causes augmentation of some networking behavior.

536870912

 

FileTransferMaxBufferSizeForLowMemoryInBytes

Specifies the internal buffer size used in a low memory state.

5242880

 

FileTransferMaxBufferSizeInBytes

Specifies internal buffer size for holding packet data.

31457280

 

FileTransferMaxPacketSizeInBytes

Determines the largest packets that will be sent.

1048576

 

FileTransferMinCompressionLimit

Specifies the packet-level compression threshold in bytes.

0 (disabled)

max 65536 (64 KB)

FileTransferPort

3725

 

FileTransferSendReceiveBufferSize

Defines the maximum size (in bytes) of the send and receive buffers for TCP connections in the replication network. The buffer size affects the TCP Receive Window (RWIN) size, which sets the number of bytes that can be sent without TCP acknowledgement. This setting is relevant for both file-based and block-based transfers. Tuning the buffer size based on your network bandwidth and latency improves throughput and reduces CPU processing.

When the value is set to zero (off), the default TCP window size is used (8 KB). For custom sizes, specify the size in bytes.

Use the following formula to determine the proper value:

((LINK_SPEED in Mbps / 8) * DELAY in sec)) * 1000 * 1024

For example, for a 100 Mbps link with 10 ms latency, the proper buffer size would be:

(100/8)* 0.01 * 1000 * 1024 = 128000 bytes

For tuning information, see Tuning FileTransferSendReceiveBufferSize.

0 (8192 bytes)

max 5242880 (5 MB)

FileTransferSendReceiveBufferSizeLinux

Specifies the TCP/IP Receive Window (RWIN) Size setting for file transfer connections for Linux. It controls the number of bytes sent without TCP acknowledgement, in bytes.

When the value is set to zero (off), the TCP/IP window size value for Linux is automatically calculated from the FileTransferSendReceiveBufferSize setting. If both parameters are set to zero (off), the default value is 248 KB. For custom sizes, specify the size in bytes.

NOTE:In previous release versions, you were required to set this parameter to 1/2 the desired value, but this is no longer required.

0 (253952 bytes)

 

FileTransferShutDownTimeOutInMinutes

1090

 

FileTransferTCPTimeOutMilliSec

Sets both the TCP Send and TCP Receive Timeout values.

30000

 

PostFileTransferActionsRequiredTimeInMinutes

60

 

Tuning FileTransferSendReceiveBufferSize

The FileTransferSendReceiveBufferSize parameter defines the maximum size (in bytes) of the send and receive buffers for TCP connections in the replication network. The buffer size affects the TCP Receive Window (RWIN) size, which sets the number of bytes that can be sent without TCP acknowledgement. This setting is relevant for both file-based and block-based transfers. Tuning the buffer size based on your network bandwidth and latency improves throughput and reduces CPU processing.

You can tune the FileTransferSendReceiveBufferSize parameter to optimize transfer of blocks or files from the source servers to the target servers in your replication environment. Set the parameter on the PlateSpin Configuration page (https://Your_PlateSpin_Server/platespinconfiguration/).

To calculate the optimum buffer size:

  1. Determine the latency (delay) between the source server and target server.

    The goal is to discover what the latency is for a packet size that approaches the MTU as closely as possible.

    1. Log in to the source server as an Administrator user.

    2. Enter the following at a command prompt:

      # ping <target-server-ip-address> -f -l <MTU_minus_28> -n 10

      Typically, the -l option for ping adds 28 bytes in headers of the specified payload for the target-server-ip-address. Thus, a size in bytes of MTU minus 28 is a good initial value to try.

    3. Iteratively modify the payload and re-enter the command in Step 1.b until you get the following message:

      The packet needs to be fragmented.

    4. Note the latency in seconds.

      For example, if the latency is 35 ms (milliseconds), then note 0.035 as the latency. 

  2. Calculate a byte value for your initial buffer size:

    Buffer Size = (Bandwidth in Mbps / 8) * Latency in seconds * 1000 * 1024

    Use binary values for the network bandwidth. That is, 10 Gbps = 10240 Mbps and 1 Gbps = 1024 Mbps.

    For example, the calculation for a 10 Gbps network with a latency of 35 ms is:

    Buffer Size = (10240 / 8) * 0.035 * 1000 * 1024 = 45875200 bytes
  3. (Optional) Calculate an optimal buffer size by rounding up to a multiple of the Maximum Segment Size (MSS).

    1. Determine the MSS:

      MSS = MTU Size in bytes - (IP Header Size + TCP Header Size) 

      The IP header size is 20 bytes. The TCP header size is 20 bytes plus the bytes for options like timestamp.

      For example, if your MTU size is 1470, then your MSS is typically 1430.

      MSS = 1470 bytes - (20 bytes + 20 bytes) = 1430 bytes
    2. Calculate the optimal buffer size:

      Optimal Buffer Size = (roundup( Buffer Size / MSS )) * MSS

      To continue the example:

      Optimal Buffer Size = (roundup(45875200 / 1430)) * 1430
                          = 32081 * 1430 
                          = 45875830

      You round up instead of down, because rounding down gives a multiple of the MSS that is smaller than the Buffer Size of 45875200:

      Non-optimal Buffer Size = 32080 * 1430 = 45874400

2.5.4 Other Use Cases for Making Modifications in the Web Config Tool (Advanced)

Below is a list of configuration values that might address various environmental or functional issues. Do not use them unless you are advised to do so by PlateSpin Support.

Table 2-8 List of Common Use Cases for changing settings in the Web configuration tool

Issue or Use Case

Value Shown in the Config Tool

Remarks

Discovery/Inventory issues

<add key="UseServiceForCommonInventory" value="true" />
<add key="UseServiceForMigrateInventory" value="false" />
<add key="EarliestWindowsVersionForCommonInventory" value="5.2" />

 

Target boot issues related to drivers

 <add key="TargetMachineRegistryCleanupLevel" value="None" />

 

Controller installation issues on sources (mainly due to environmental restrains)

<add key="InstallControllerUsingService" value="true" />
<add key="RunControllerUnderSameCredsAsRemoteAccess" value="false" />

 

Issues related to database size growth

<add key="PowerConvertDBSizeLimitInBytes" value="4294967296" />
<add key="PlateSpinDBCleanupThresholdPercent" value="80" />
<add key="OFXDBCleanupThresholdInBytes" value="4294967296" />