#p2p #dragonfly

vortex-protocol

A P2P file transfer protocol

6 releases

0.1.5 Dec 5, 2025
0.1.4 Oct 22, 2025
0.1.3 Sep 2, 2025
0.1.0 Apr 16, 2025

#2119 in Network programming

Download history 124/week @ 2025-10-13 380/week @ 2025-10-20 164/week @ 2025-10-27 123/week @ 2025-11-03 340/week @ 2025-11-10 264/week @ 2025-11-17 185/week @ 2025-11-24 329/week @ 2025-12-01 110/week @ 2025-12-08 192/week @ 2025-12-15 185/week @ 2025-12-22 65/week @ 2025-12-29 244/week @ 2026-01-05 70/week @ 2026-01-12 208/week @ 2026-01-19 150/week @ 2026-01-26

680 downloads per month
Used in 8 crates (3 directly)

Apache-2.0

185KB
4K SLoC

Vortex Protocol

LICENSE Discussions

Introduction

Vortex protocol is a high-performance peer-to-peer (P2P) file transfer protocol implementation in Rust, designed as part of the Dragonfly project. It utilizes the TLV (Tag-Length-Value) format for efficient and flexible data transmission, making it ideal for large-scale file distribution scenarios.

Features

  • Efficient TLV Protocol: Optimized for fast serialization and deserialization of data packets.
  • Large File Support: Handles piece sizes up to 1 GiB and value fields up to 4 GiB.
  • Memory Safety: Built in Rust with zero-cost abstractions and memory safety guarantees.
  • High Performance: Designed for high-throughput file transfer scenarios.
  • Extensible Design: Reserved tags for future protocol extensions like compression and encryption.

Documentation

For details, please see the specification.

Benchmarking

Vortex protocol includes comprehensive benchmarks for packet creation, serialization, and deserialization:

# Run all benchmarks
cargo bench

# Run specific benchmark group
cargo bench "Vortex Packet Creation"

Dependencies

~1.6–2.6MB
~47K SLoC