DEV Community

Daniel Liu
Daniel Liu

Posted on

Basic Multithreaded Ping in Rust

Recently, I finished writing a ping program with Rust. Basically, the program sends ICMP echo packets on one thread, and receives response packets on the other thread. Each packet keeps track of information such as process id, timestamp, etc. so we know whether our program sent the packet and we can calculate statistics like the round-trip time. The code is well-commented, and I hope that this can be a learning resource for others, since I learned a lot about both Rust and network programming when doing this project.

Link to the Github repo: here

Here is a picture of the result:
Ping result

Top comments (1)

Collapse
 
michalfita profile image
Michał Fita

This is interesting project, but clap is de facto a standard for CLI at the moment. Eventually, as you already crafted your help text, consider docopt.rs.