I'm looking for a high level, decentralized, robust, scalable lookup/message passing package I can use with .NET 2.0. I believe Chord is the correct base algorithm for this use. Explicit, proven time guarantees are a must (e.g. lookups resolve in at most log(n)
messages or steps). Chord routing looks sufficient.
Suppose I want to provide a swarm management API to developers making application-layer software for a system of N nodes. Maybe something like the following...
struct addr;
enum permissions_T;
/* find the successor corresponding to this content */
string lookup(string contentIdentifier);
/* might take a while */
int getAllKnownNodes(string nodeID);
/* block this fool */
void setPermissions(addr thisFool, permissions_T newPerms);
/* seeya */
void cloak(void);
I'm not interested in designing and implementing a new distributed protocol (seems like too much work, excellent DHTs exist). I'd like to add a simple, light-weight CDN layer above Chord to provide the distributed functionality end users will need.
Bonus points if your answer is a project that deals with privacy or permissions issues intelligently.