LakshK98 / hybrid-p2p-file-sharing

File sharing by combining server-client and p2p paradigms

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

hybrid-p2p-file-sharing

Hybrid p2p sharing utilizes the client network to share updates and improve transmission efficiency, by allowing peers to act as transmitting servers. For detailed description and comparison results refer to the Report.pdf.

Steps to run p2p-share

  • clone repo into server and client machine
  • add files you want to share in the folder
  • cd into p2p-share
  • set HOST variable in constants.py to the ip address of the server machine in both server and client machine
  • on server machine run python3 server.py <number_of_clients>
  • on <number_of_clients> client machines run python3 client.py
  • the shared file is saved inside client_data folder

Steps to run sequential-share for comparison

  • add files you want to share in the folder
  • cd into sequential-share
  • set HOST variable in constants.py to the ip address of the server machine in both server and client machine
  • on server machine run python3 server.py <number_of_clients>
  • on <number_of_clients> client machines run python3 client.py
  • the shared file is saved inside client_data folder

About

File sharing by combining server-client and p2p paradigms


Languages

Language:Python 100.0%