Home » History » Revision 18

« Previous | Revision 18/150 (diff) | Next »
Greg Burri, 11/26/2008 12:16 PM



A bit brainstormed for the moment ;)

  • Designed for LAN usage (full trusted peers).
  • Efficient (very low cpu usage).
  • Distributed download (multi peer downloading and no central server).
    • Quicker seed first. The speed of a peer is an average over a period of time say 5 min. A speed of a peer can be unknown. If a downloading is too slow (like three time slower than the best known peer) then it can switch from a quicker free seed.
    • Rarest parts first.
    • A part can be resumed from any peer.
    • Fixed part size (2^24 B = 16 MB) hashed with SHA-1. Used to control the integrity of parts and to identify a file. A file is identified by the concatenation of all the SHA1 of all its parts. If the SHA-1 of a part does not match with the given SHA-1 then it will be re-downloaded entirely.
    • Recursive folder downloading.
  • There is a general chat.
  • Multicast UDP for services discovering (maybe UPNP).
  • MDI GUI with GTK2HS.
    • A panel to view the current peers.
    • A window to view the current downloads (leechage) and one for the current uploads (seedage).
    • A window for the chat.
    • A window for searching.
    • Some windows for each file browsing.
    • A modal window for the settings.
      • The shared folders.
      • The incoming folders (take the first if enough available space disk otherwise the second and so one..).
      • Bandwidth limitation.
  • File list with name+size.
  • Non blocking search.
  • Using of systray (optional).
  • Free space management.
  • Graphic of the transfert rate over time.

Updated by Greg Burri over 15 years ago · 18 revisions