PlateSpin Migrate data transfer troubleshooting
April 28, 2011 1 Comment
One of the most common problems on using PlateSpin Migrate is the data transfer process. After the target VM has been created and booted with Windows PE, a process is started on the target to receive files from the source server. The process which does the transfer is ofxcontroller.exe . The data is send from source to target over port 3725 TCP. There can be a number of reasons why the data transfers does not get further than 1% and stalls / hangs . If the process is at 2% most of the times the data tranfers will succeed to 100%. After a succesful data tranfer, the job almost always complete with success.
Reason for stalling:
- firewall is enabled on source server
-firewall is blocking traffic between source and target
-issues with OFX controller on server
-OFX controller is using wrong network interface on source
If the data transfer cannot be started, errors will appear in the job log
no response on port from host <ip-address>
no response from receiver on port 3725
the file transfer is stalled
unable to connect to port 3725 on ip address <ip address of source>
Most common reason for these issues are firewall related. Make sure there is no firewall between the source and target blocking traffic on port 3725. Make sure the firewall on the source server is not blocking port 3725. If so, add a rule to allow traffic or disable the firewall if possible.
Perform a ‘netstat -ano’ command on both the source and target server to verify a process is listening on port 3725. The target Windows PE does not have netstat command available. Perform a ‘net use ‘ command to map a drive on a server which has it available and perform netstat from the mapped drive. Search in the ‘netstat -ano’ output for a line like this
TCP 0.0.0.0:3725 0.0.0.0:0 LISTENING 260
I had an issue on virtualizing a Windows 2003 server acting as a proxy. It had an internal IP address on the internal network interface and several external ip-addresses on the external interface. Each time I tried to perform a P2V job, the job stalled at the data transfer stage. In the job log it listed the controller on the target was not able to connect to the ip address on the external network interface. I wanted to have the controller connect to the internal interface. Even after adjusting the properties of the source server and deleting all external ip’s in the properties, the log file kept reporting the external ip address.
PlateSpin support explained that the controller will try to connect to all IP addresses which are available at the source. I do not think this is the case!
We had a server with two nics. One nice was configuered with an IP-address, the other not and was disabled. When we did the P2V the job stalled at 1 %, saying port 3725 was blocked. What we did was changed the IP-configuration to the second nic, disabled the first nic and created a new job. Thereafter the job performed well !
A reboot of the source server might help as well.
To troubleshoot connections, a telnet to the source server on port 3725 can be performed. To do this, for VMware targets, start VMware vSpere client, connect to the console of the target VM. In the Windows PE console, connect to the source server by net use y: <a href="//\\\\<source ip>\c$ . Locate telnet.exe and perform a command: telnet <source ip address> 3725
As soon as the job is at stage 6.8: Copying Volume Data from Source to Target started (1% progression). the telnet command should result in a connection and you probably will see strange characters. That is good. If the response is something like ’not connected’ port 3725 is not reachable and a firewall is likely blocking traffic.
Novell has a knowledgebase article available describing the issue. The solution involves installing a Microsoft hotfix. The article can be found here.
My experience is that in most cases the problem is related to firewalls or source servers with multiple nics.
If some other process is using port 3725, it can be changed by the following commands:
1) Open “C:\Program Files\PlateSpin Migrate Server\Web” directory.
2) Open the productinternal.config file in a text editor.
3) Locate the following line under <optimizedFileTransferSettings> and <legacyFileTransferSettings>:
4) Change the 3725 value under both <optimizedFileTransferSettings> and <legacyFileTransferSettings> to the desired port number and save the changes.