finds.dev← search

// the find

upa/mscp

★ 260 · C · GPL-3.0 · updated Nov 2025

mscp: transfer files over multiple SSH (SFTP) connections

mscp is a drop-in scp replacement that opens multiple parallel SFTP connections to saturate network bandwidth when transferring large files or many files at once. It targets anyone who regularly moves large datasets over SSH and has hit the single-connection throughput ceiling. The remote side needs nothing beyond a standard openssh-server.

1. The core idea is sound and well-scoped: it parallelizes both multi-file transfers and single large-file chunking over multiple SSH sessions, which genuinely solves a real bottleneck. 2. Checkpoint/resume support for failed transfers is the kind of practical feature that matters when you're moving 50GB and the connection drops. 3. Packaging coverage is solid — Homebrew, MacPorts, Ubuntu PPA, and COPR for RHEL-based distros, plus CI on Ubuntu/macOS/FreeBSD. 4. The academic paper (PEARC '23) means the parallelism approach has been at least peer-reviewed, not just shipped.

1. The dependency on a patched libssh is a significant maintenance burden — there are already five separate patch files in the repo (0.9.6 through 0.11.2), and every libssh release potentially breaks the build until someone writes a new patch. 2. No remote-to-remote copy is a real gap if you're scripting data pipelines between servers without local staging. 3. 260 stars after what appears to be a couple of years of work suggests limited adoption, which means fewer eyes on the threading and memory safety code in a C codebase that deals with network I/O. 4. The test suite is Python-based e2e tests only — no unit tests for the C threading logic or the file chunking math, so correctness of the parallel transfer under edge cases (partial writes, interrupted connections) is hard to verify without just running it.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →