Data Karkhana is a project focused on building a Hybrid System for file sharing based on both the Client-Server model and the P2P model. We have five components in the system: a tracker, 2 peers, a sender (Alice), and a receiver (Bob). Alice also acts as a peer after sending files to the system. Bob can receive the file but doesn't act as a peer in the system.
To install and run this project, you would need to follow one of the following steps:
The package is hosted in Pipy here, you can directly download it using the command below:
pip install datakarkhana
Then you can directly run datakarkhana from your terminal.
To install and run this project you would need to follow one of the following steps:
- Clone the repo:
git clone https://github.com/timsinashok/data_karkhana.git
- Navigate into the project directory: cd data_karkhana, and run the main.py script.
If using Pipy use the following:
datakarkhana {tracker ip} {tracker port}
If you are cloning this repository, use the following
python3 main.py {tracker ip} {tracker port}
, and continue with the instructions in the terminal.
The video explanation was recorded during the early development of the package so the way programs are run is a little bit different. Now that we have a pipy package made for this project, you can directly follow the instructions given in the USAGE Section .
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.