| Crates.io | adrnaln |
| lib.rs | adrnaln |
| version | 0.1.2 |
| created_at | 2024-05-08 08:21:49.723607+00 |
| updated_at | 2024-05-09 06:33:35.402157+00 |
| description | Adrnaln is a library for UDP packet transfers with high level constructs for managing sequences of data |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1233490 |
| size | 752,668 |
Problem statement: It is desired to send any type of file across UDP with low latency or metadata overhead.
This is a simple library that provides high level constructs to manage a sequence of packets streaming over UDP.
This library uses bincode to assist in the serial/deseralisation of Packet structs.
These structs contain chunks from input file and also have global metadata about the sequence construction.
cargo test to run a synthetic test.
Run the example cargo run --example local_file_transfer -- --filepath <FILEPATH> ( This will currently spit the file into the cwd )
To analyze performance use flamegraph ( cargo install flamegraph )
sudo cargo flamegraph --dev --example local_file_transfer -- --filepath <FILEPATH>
docker run -d -p6831:6831/udp -p6832:6832/udp -p16686:16686 -p14268:14268 jaegertracing/all-in-one:latest
Create a trace:
RUST_LOG=trace RUSTFLAGS="--cfg tokio_unstable" cargo run --example local_file_transfer -- --filepath=examples/resources/fox.png