Skip to content

A functional torrent system which includes a peer-to-peer file sharing protocol to reduce the bandwidth required to transfer files compared to that of in a traditional client-server architecture.

anujbansal16/Mini-Torrent-File-Sharing-System

Repository files navigation

Mini-Torrent-File-Sharing-System

A functional torrent system which includes a peer-to-peer file sharing protocol to reduce the bandwidth required to transfer files compared to that of in a traditional client-server architecture.

Notes:

  • Type exit to disconnect a client.
  • Do not close the client window directly.
  • Provide absolute paths wherever the path is required.(in share functionality only give mtorrent file name which gets created in present working directory)
  • Assuming seeders always have complete file
  • Algorithm divides total number of chunks amongs the number of seeders(ie if 2 seeders are there then each contribute half number of chunks)

Examples:

  • ./client 127.0.0.1:8082 127.0.0.1:8081 127.0.0.1:8081 mylogs.txt
  • ./tracker 127.0.0.1:8081 127.0.0.1:8081 seedList.txt mylogs.txt
  • share /home/anuj/Desktop/Git-Stuff/MiniTorrent/dummy.pdf dummy6.mtorrent
  • share /home/anuj/Desktop/Semester1/2018201096-osAss2/phli.mp3 phli.mtorrent
  • get /home/anuj/Desktop/Git-Stuff/MiniTorrent/phli.mtorrent /home/anuj/Desktop
  • get /home/anuj/Desktop/Git-Stuff/MiniTorrent/dummy6.mtorrent /home/anuj/Desktop

About

A functional torrent system which includes a peer-to-peer file sharing protocol to reduce the bandwidth required to transfer files compared to that of in a traditional client-server architecture.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published