Starts with SSH
It logs in with your normal SSH access and starts its own receiver on the far host. No daemon to install, no new accounts.
Farwing moves large files over long, lossy network paths at the full speed of the link. Distance and packet loss stop TCP. They do not stop Farwing.
farwing cp big.iso user@sydney:/data/Free for any use up to 1 Gbit/s. Farwing Server goes to 10 Gbit/s and beyond.
On a long path, a few lost packets are normal. They come from radio links, busy exchange points and old hardware, not from too much traffic. Standard TCP backs off every time, and on a 140 ms path it takes a very long time to speed up again.
Farwing does not slow down for loss. It watches one thing: whether a queue is building in the network. If the delay grows, it eases off. If not, it keeps the link full and sends the missing blocks again, lowest first.
Two 16-core cloud hosts, Oregon to Sydney, 139 ms round trip. Loss added at the receiver. 20-second runs, median of three, measured 2 Oct 2026. Useful data delivered per second, in Mbit/s.
A real 1 GiB copy, Oregon to Sydney, timed from the start of the command to a checked file on disk, against scp on the same path. Each run got 5 minutes.
Repeat copies: SSH session reused, path speed remembered. A first copy to a new host took 4.5–4.8 s with no loss.
Pick a file, a link and two places on the map. The estimate comes from our own measured runs: Farwing against the standard TCP that most copy tools use, or against scp.
It logs in with your normal SSH access and starts its own receiver on the far host. No daemon to install, no new accounts.
Every session gets fresh keys. Every packet is encrypted and checked with AES-256-GCM. The secret travels inside the SSH session.
It slows down only when the delay grows, which means a router queue is filling. It keeps that queue to a few milliseconds.
UDP blocked? It moves to eight parallel TCP streams. TCP blocked too? It goes through SSH. Same command, same encryption.
If a copy breaks, run the same command again. Farwing skips the blocks already on disk, on every route, both directions.
The whole file is checked with BLAKE3 while it is written, in any order. The check ends milliseconds after the last block. Until then the file keeps a temporary name.
One copy runs as four coupled lanes, each on its own CPU core. Together they pass per-flow speed limits. 11.5 Gbit/s used about 2 of 16.
Each copy records what the path carried. The next copy to that host starts near full speed, not from zero. On a 1 GiB copy that saves over a second.
With the default 4 lanes, one long TCP flow kept about half its speed while Farwing ran.
With --lanes 1, Farwing ran next to a 4.8 Gbit/s TCP flow and did not slow it at all.
scp-style copies from the terminal, at full speed on any link.
Opens when you click a Farwing link and runs the copy at full speed. Shows every file as verified.
A web portal on your own server for sending, receiving and automating transfers.
Install Farwing on both hosts. You need an SSH login to the far host. For full speed, let the far host accept UDP on port 47700. If it does not, Farwing finds another route.
curl -fsSL https://farwing.io/install.sh | sh
farwing cp big.iso user@host:/data/
farwing bench user@host --size 5G
Start free from the terminal, or run Farwing Server for your whole team. The 30-day trial has every feature.