The FileZilla uses a PuTTY/psftp source code for an SFTP implementation. Actually the FileZilla runs a hidden PSFTP sub-process.
But it uses its own build of PSFTP (FzSFtp.exe
) that employs few optimizations (and other modifications), including:
- SFTP transfer queue is 4 MB (comparing to 1 MB in PSFTP)
- Allocates memory in much larger chunks (32 KB comparing to 515 B)
- Uses large network buffers (4 MB for SO_RCVBUF and 256 KBdynamic size for SO_SNDBUF [using SIO_IDEAL_SEND_BACKLOG_QUERY]). PSFTP keeps the system defaults.
FileZilla also uses a different compiler (mingw) than PuTTY (VS), what may contribute.
WinSCP is also based on PSFTP code (though it uses PSFTP code internally, not in an external sub-process) and uses a similar set of optimizations.