So, I'm trying to send a file from a Beckhoff PLC to a Robot. I setup a FTP server on the Robot successfully. When sending a smaller file (<200-300Kb) to the robot using function blocks from Beckhoff it is not a problem and the capture on Wireshark looks normal. But, when I try to send larger files (>400 Kb) I get some weird behavior in the Wireshark capture. First of all, when sending the larger file, I get [TCP Window Full] and [TCP ZeroWindow] messages. After some more seconds the messages [TCP ZeroWindowProbe] and [TCP ZeroWindowProbeAck] are also showing up. This continues until almost at the end, after some time the PLC sends [FIN,ACK] to the robot. Then it connects again with [SYN] and i get [SYN,ACK] back from the robot. But, instead of waiting for the Robot to send a Transfer complete message it doesn't wait and tries to connect again. Some seconds after this connection is tried by the PLC, the FTP function block from Beckhoff gets an error and it closes the connection again ([FIN,ACK] to robot is sent). Then a couple seconds later the robot sends a transfer complete command and a [FIN,ACK] to the PLC and i can see the file is transmitted to the robot. But, now my function block on the PLC is at 99% progress and in error and i cannot continue in this process. After the [FIN,ACK] From the robot to the PLC, there is an [RST,ACK] from the PLC to the Robot. Can anyone tell me if i have interpreted the Wireshark capture correctly. And how to fix these issues?