Maximizing SFTP Performance
SFTP has poor performance characteristics due to limitations in the design of the protocol. The steps below will help you get the most out of SFTP.
Maximize the Buffer Size (Data Chunk Size) in Your SFTP Client
Most SFTP clients send data in chunks of 32 kilobytes. That is a very low size for today's internet.
Increase this size by 4-32x in your client. The process requires some trial and error to optimize in SFTP. Other protocols handle this automatically.
If you are using the command line sftp tool, set the buffer size using the -B option: sftp -B 128000 [email protected]
For any other client, look for settings related to buffer size or data chunk size and raise them.
Use Many Parallel Connections
Set the number of simultaneous connections to 10-25 or the maximum supported by your SFTP app.
In FileZilla, open Edit > Settings > Transfers and increase the Maximum simultaneous transfers setting to 10.
In Cyberduck, open Edit > Preferences > Transfers and set Transfer Files to "Open multiple connections". Then open Window > Transfers and increase the counter in the lower right to the maximum.
Increasing the number of simultaneous connections helps when uploading multiple files at the same time but has no effect when uploading a single file.
Minimize Network Latency
Network latency is the round-trip delay between sending data across a network and receiving a reply that the data was received. Higher latency, also known as "lag", can be caused by:
physical limitations of your network connection.
how much data is currently saturating your network connection.
the network distance between you and your destination.
network tools and software that regulate or restrict bandwidth usage.
Network latency has a large impact on SFTP performance. Use the best physical network available to you, and achieve the shortest network distance possible. A wired ethernet connection outperforms Wi-Fi.
Last updated