Hoe stuur je 50 gigabyte naar een collega zonder clouds en snelheidslimieten

Een bekende situatie: je moet een collega een verse database-dump van twintig gigabyte of een archief met zware logs sturen. Telegram klaagt over de bestandslimiet. Google Drive en Yandex Disk vereisen dat je alles eerst naar je eigen opslag uploadt, waardoor je schijfquota wordt verbruikt, en dan moet de ontvanger wachten op de download. Het bekende LocalSend komt goed van pas op kantoor, maar faalt wanneer de andere persoon bij een andere ISP zit.
Onlangs stuitte ik op een interessant project genaamd DashBeam (het werd eerder ontwikkeld als AltSendme). Het programma lost exact dit probleem op: het stuurt bestanden en hele mappen rechtstreeks van de ene computer naar de andere via het internet, zonder iets op tussenliggende servers op te slaan.

Onder de motorkap
DashBeam is gebouwd op de Iroh-netwerkstack. Het is een open-source P2P-engine geschreven in Rust. In plaats van klassieke HTTP of grillige WebRTC gebruikt het het QUIC-protocol via UDP met TLS 1.3-encryptie.
De gegevensoverdracht is slim ontworpen:
- Bestanden en mappen worden opgesplitst in content-adresseerbare blokken (blobs). Elk blok wordt geverifieerd met een snelle BLAKE3-cryptografische hash. Als de verbinding wegvalt, downloadt DashBeam het bestand niet opnieuw vanaf het begin—het stuurt alleen de ontbrekende chunks.
- Er wordt een tekst-ticket gegenereerd voor het koppelen. De string bevat de identifier van de afzender (Ed25519-sleutel), adressen voor directe verbinding en de hash van het opgevraagde bestand.
- Apparaten proberen eerst via QUIC hole punching door de NAT te breken om verkeer direct te routeren. Als beide nodes achter strikte firewalls zitten, gaat het verkeer via een relay, maar versleuteld. De relay ziet alleen ruis en kan de payload niet lezen.
- Voor regelmatige uitwisseling tussen je eigen apparaten is er permanente koppeling. Koppel je werklaptop en telefoon één keer met een code, en dan worden bestanden met één klik verzonden zonder handmatig tickets te kopiëren.
In benchmarks toont de ontwikkelaar snelheden tot 125 MB/s (beperkt door een gigabit-netwerkverbinding), en de grootste geregistreerde overdracht was 452 GB.
+----------------+ +------------------+
| Sender (NodeA) | <====== QUIC / TLS 1.3 =====> | Receiver (NodeB) |
+----------------+ (Direct P2P Link) +------------------+
\ /
\-- [Fallback via encrypted Relay if NAT fails]-/
Hoe DashBeam verschilt van alternatieven
De P2P-overdrachtsmarkt kent geen gebrek aan oplossingen, maar elk heeft zijn eigen eigenaardigheden:
LocalSend werkt geweldig binnen één lokaal netwerk, maar kan niet door het internet breken zonder VPN-configuratie, en onderbroken overdrachten moeten vanaf het begin opnieuw worden gestart.
Magic Wormhole is geweldig in de terminal, maar het mist een goed officiële GUI en kan onderbroken bestandsoverdrachten niet hervatten.
Browser-gebaseerde utilities zoals PairDrop worden beperkt door WebRTC-beperkingen en het geheugen van de browsertab, waardoor gigabyte-grote mappen vaak de pagina laten crashen.
DashBeam combineert alle scenario's. De app is beschikbaar als desktopclient voor Windows, macOS en Linux, een standalone APK voor Android, een lichtgewicht terminal CLI, en zelfs een gestripte webversie voor gevallen waarin software installeren geen optie is.
Hoe het te gebruiken
De workflow is eenvoudig:
- Sleep een bestand of map naar het programmavenster.
- Ontvang het gegenereerde ticket en stuur het naar de ontvanger via elke willekeurige messenger.
- De ontvanger plakt het ticket in hun client, ziet een preview van de bestanden en bevestigt de download.
Als je regelmatig testbuilds of archieven deelt tussen je eigen machines, is het handiger om naar het instellingengedeelte te gaan, apparaten te koppelen met een permanente pair, en gegevens rechtstreeks te verzenden met één klik op de Verzenden-knop.
Wie zal dit project nuttig vinden? Ontwikkelaars en DevOps-engineers voor het snel overdragen van VM's, back-ups en dumps zonder bedrijfsschijven te verstoppen. Video-editors en ontwerpers die bronbestanden aan klanten moeten leveren zonder cloudopslag-groottebeperkingen.
De broncode wordt gedistribueerd onder de AGPL-3.0-licentie. Als je wilt, kun je je eigen relay-server en DNS-discovery op je VPS deployen—de documentatie en configuraties hiervoor staan in de projectrepository.
Gerelateerde projecten