add ideas

[Imported from Trac: page GSoCIdeas2010, version 37]
zooko 2009-03-17 04:19:29 +00:00
parent ac61eef431
commit 1c2bd0c821

@ -3,10 +3,11 @@
## Improvements to Tahoe
* Dealing with NAT, ideally making it as easy to ignore as possible (taking advantage of upnp-igd and Zeroconf NAT-PMP).
* Opportunistic grid membership:
* grid membership and server selection:
* Dynamically migrate shares to maintain file health.
* Use Zeroconf or similar so nodes can find each other on a local network to enable quick local share migration.
* Deal with unreliable nodes and connections in general, getting away from allmydata's assumption that the grid is a big collection of reliable machines in a colo under a single administrative jurisdiction
* Deal with unreliable nodes and connections in general, getting away from allmydata's assumption that the grid is a big collection of reliable machines in a colo under a single administrative jurisdiction
* Abstract out the server selection part of Tahoe so that the projects in this "grid membership and server selection" can be mostly independent of the rest of Tahoe. See also [this note about standardization of LAFS](http://testgrid.allmydata.org:3567/uri/URI:DIR2-RO:j74uhg25nwdpjpacl6rkat2yhm:kav7ijeft5h7r7rxdp5bgtlt3viv32yabqajkrdykozia5544jqa/wiki.html#2009-02-06).
* 'tahoe sync'. The proposed #601 bidirectional sync option would be great for using tahoe as we would with dropbox (<http://www.getdropbox.com/>). Like the latter, the user could have a daemon which keeps things in sync in pollings within a one or two seconds schedule (maybe using inotify for uploads). In practical terms an user could have many machines pointing to the same tahoe:dir, each machine mapping this resource to a local directory, and all these machines could then have their local copies in sync, via tahoe:dir. I think this is good when someone has many machines and alternates use between them, like a notebook, a home desktop and an office desktop, for instance.
* Optimize upload/download transfer speed.
* Implement storage server protocol over HTTP.