Inspiration
We aimed to solve the problem of unreliable file transfers over unstable networks common in remote or disaster-hit sites. Current methods fail or restart, wasting resources. We built a professional-grade, resilient system that guarantees data delivery and integrity regardless of connection quality.
What it Does
The system is a fast file mover with built-in fault tolerance. It ensures data integrity using SHA-256 integrity checks on every file and data chunk. It features priority channels (High, Medium, Low) to schedule critical files first and provides real-time status updates via WebSockets. If the network drops, the transfer automatically pauses and resumes from the exact point of failure.
How We Built It
We used Go (Golang) for high performance and concurrency. Files are broken into small chunks, and a Chunk Ledger tracks status for seamless resumption. Priority requests are managed by a Priority Queue on the server. Exponential Backoff was implemented for retrying failed chunks.
Challenges & Accomplishments
The main challenge was realistically simulating unstable network links for testing resilience. We are proud of successfully demonstrating the transfer of a large file that resumed perfectly after multiple simulated connection failures, with zero data corruption confirmed by the final hash check.
Log in or sign up for Devpost to join the conversation.