This project implements a replicated file server using multithreaded socket programming. A master server receives a file upload from one client and replicates it to all other connected clients.
- Implement a parallel programming problem using multithreaded socket programming.
- Handle graceful disconnection
- Manage partial failures
- Ensure thread safety when multiple clients update shared server data
- Implement proper connection teardown
- Detect when all clients have finished
- Shut down the master server cleanly
Client 1 uploads file
↓
Master Server
↓
Replicates file to all other clients
↓
Client 2, Client 3, Client N
- Socket programming
- Multithreading
- Distributed file replication
- Server-client architecture
- Thread synchronization
- Failure handling
- Connection teardown
- Parallel programming
- Python
- Socket Programming
- Multithreading
- File I/O
- Test scripts
python server.pypython client.pypython test.pyUpdate command names according to your actual file names.
Arfa Riaz BS Computer Science COMSATS University Islamabad, Lahore Campus