What it does The P2P File Sharing System allows users to share files directly between peers without relying on a central server. Each peer can send and receive files, manage connections, and verify the integrity of data using hashing techniques. The system also supports chunking large files for efficient transmission and ensures smooth downloads even if parts of the file come from different peers.
How we built it We built the system using Java and the TCP/IP networking stack. The core of the project involves managing peer connections, chunking files for transfer, and ensuring reliable file integrity using SHA-256 hash verification. We used multi-threading to handle multiple peer connections simultaneously, and Java's built-in networking libraries to manage TCP socket communication.
What we learned We learned a lot about networking concepts, especially around TCP/IP protocols and peer-to-peer architectures. This project also taught us the importance of handling concurrency in a multi-threaded environment
Log in or sign up for Devpost to join the conversation.