Project

General

Profile

Home » History » Revision 18

Revision 17 (Greg Burri, 11/26/2008 11:19 AM) → Revision 18/150 (Greg Burri, 11/26/2008 12:16 PM)

h1. Home 

 * [[Study of bittorent protocol]] 
 * [[Study of UPNP]] 
 * [[Protocol]] 

 h2. Description 

 A bit brainstormed for the moment ;) 

 * Designed for LAN usage (full trusted peers). peers) 
 * Efficient (very low cpu usage). usage) 
 * Distributed download (multi peer downloading and no central server). 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. downloading 
 * There is a general chat. chat 
 * Multicast UDP for services discovering (maybe UPNP). UPNP) 
 * MDI GUI with GTK2HS. GTK2HS 
 ** A panel to view the current peers. peers 
 ** A window to view the current downloads (leechage) and one for the current uploads (seedage). (seedage) 
 ** A window for the chat. chat 
 ** A window for searching. searching 
 ** Some windows for each file browsing. browsing 
 ** A modal window for the settings. settings 
 *** The shared folders. folders 
 *** The incoming folders (take the first if enough available space disk otherwise the second and so one..). folder 
 *** Bandwidth limitation. limitation 
 * File list with name+size. name+size 
 * Non blocking search. search 
 * Using of systray (optional). (optional) 
 * Free space management. management 
 * Graphic of the transfert rate over time. time