Comment envoyer 50 gigaoctets à un collègue sans cloud ni limites de vitesse

Une situation familière : vous devez envoyer à un collègue un dump de base de données frais de vingt gigaoctets ou une archive avec des logs volumineux. Telegram se plaint de la limite de taille de fichier. Google Drive et Yandex Disk vous obligent à tout télécharger d'abord dans votre propre stockage, consommant votre quota disque, puis forcent le destinataire à attendre le téléchargement. Le fidèle LocalSend est pratique au bureau, mais échoue quand l'autre personne est chez un FAI différent.
Je suis récemment tombé sur un projet intéressant appelé DashBeam (anciennement développé sous le nom AltSendme). Le programme résout exactement ce problème : il transmet des fichiers et des dossiers entiers directement d'un ordinateur à un autre sur internet, sans rien stocker sur des serveurs intermédiaires.

Sous le capot
DashBeam est construit sur la pile réseau Iroh. C'est un moteur P2P open-source écrit en Rust. Au lieu du HTTP classique ou du WebRTC capricieux, il utilise le protocole QUIC sur UDP avec chiffrement TLS 1.3.
Le transfert de données est astucieusement conçu :
- Les fichiers et dossiers sont divisés en blocs adressés par contenu (blobs). Chaque bloc est vérifié avec un hash cryptographique BLAKE3 rapide. Si la connexion tombe, DashBeam ne re-télécharge pas le fichier depuis le début — il envoie uniquement les chunks manquants.
- Un ticket textuel est généré pour l'appairage. La chaîne contient l'identifiant de l'expéditeur (clé Ed25519), les adresses pour la connexion directe, et le hash du fichier demandé.
- Les appareils essaient d'abord de percer le NAT via le hole punching QUIC pour router le trafic directement. Si les deux nœuds sont derrière des pare-feux stricts, le trafic passe par un relais, mais chiffré. Le relais ne voit que du bruit et ne peut pas lire la charge utile.
- Pour les échanges réguliers entre vos propres appareils, il y a l'appairage permanent. Liez votre ordinateur de travail et votre téléphone avec un code une fois, et ensuite les fichiers sont envoyés en un clic sans copier manuellement les tickets.
Dans les benchmarks, le développeur montre des vitesses jusqu'à 125 Mo/s (limitées par une liaison réseau gigabit), et le plus gros transfert enregistré était de 452 Go.
+----------------+ +------------------+
| Sender (NodeA) | <====== QUIC / TLS 1.3 =====> | Receiver (NodeB) |
+----------------+ (Direct P2P Link) +------------------+
\ /
\-- [Fallback via encrypted Relay if NAT fails]-/
En quoi DashBeam se distingue des alternatives
Le marché du transfert P2P n'est pas à court de solutions, mais chacune a ses propres particularités :
LocalSend fonctionne très bien au sein d'un même réseau local, mais ne peut pas percer internet sans configuration VPN, et les transferts interrompus doivent être redémarrés depuis le début.
Magic Wormhole est merveilleux dans le terminal, cependant il manque d'une GUI officielle correcte et ne peut pas reprendre les transferts de fichiers interrompus.
Les utilitaires basés sur le navigateur comme PairDrop sont limités par les contraintes WebRTC et la mémoire de l'onglet du navigateur, c'est pourquoi les dossiers de plusieurs gigaoctets font souvent planter la page.
DashBeam combine tous les scénarios. L'application est disponible comme client de bureau pour Windows, macOS et Linux, un APK autonome pour Android, un CLI terminal léger, et même une version web épurée pour les cas où l'installation de logiciels n'est pas une option.
Comment l'utiliser
Le processus est simple :
- Glissez-déposez un fichier ou un répertoire dans la fenêtre du programme.
- Récupérez le ticket généré et envoyez-le au destinataire via n'importe quelle messagerie.
- Le destinataire colle le ticket dans son client, voit un aperçu des fichiers, et confirme le téléchargement.
Si vous partagez régulièrement des builds de test ou des archives entre vos propres machines, il est plus pratique d'aller dans la section paramètres, lier les appareils avec un appairage permanent, et envoyer les données directement d'un seul clic sur le bouton Envoyer.
Qui trouvera ce projet utile ? Les développeurs et DevOps pour transférer rapidement des VMs, des backups et des dumps sans encombrer les disques corporatifs. Les monteurs vidéo et designers qui doivent livrer des fichiers sources aux clients sans restrictions de taille de stockage cloud.
Le code source est distribué sous licence AGPL-3.0. Si vous le souhaitez, vous pouvez déployer votre propre serveur relais et découverte DNS sur votre VPS — la documentation et les configurations pour cela sont directement dans le dépôt du projet.
Projets similaires