Simulating TCP-IP with Rust and Drones
This project was developed as a team project for the Advanced Programming course at the University of Trento during the 2024/2025 academic year.
In simple terms, the project is a simulation of how the internet works, but instead of routers, we have drones that can crash or lose packets, just like real drones! Clients can communicate with servers to write and save files, communicate with other clients by creating chats and sending messages.
Some curiosities about the project
This project was developed as part of a unique W3C-like Working Group experience. Students were divided into teams, each electing a Working Group Leader (WGL) to represent them in weekly collaborative meetings, where shared decisions and protocol changes were discussed. One student was elected as the Working Group Coordinator (WGC), responsible for facilitating meetings and drafting the official protocol specification (DCP).
In addition, each team participating in the course programmed their own drone with optional custom features. Towards the end of the course, there was a "fair" where each team had to both buy 10 drones from others and sell their own to as many teams as possible, showcasing well-tested code or distributing custom food/gadgets (that always works!). The top 3 selling teams received bonus points for the final exam.
For more details, check out the GitHub repo.