[p2p-hackers] Re: Identify "defective" nodes

Kevin Walsh kwalsh at cs.cornell.edu
Tue Feb 28 15:56:07 UTC 2006


> > OK, then it explains why I "missed the train", as Greg said.

The train would be happy to come back...

> > No specs, no inter-operable implementations accross Gnutella servents.

We currently have an implementation built as an add-on to the 
LimeWire client. It is in Java, of course, and the source has been 
available for about a year now (see 
http://www.cs.cornell.edu/People/egs/credence/). Our implementation 
rides on top of LimeWire, basically, and doesn't depend on any 
limewire specific features, and (so far) I have not needed to make 
any changes to the line protocol in any way.

> > Although I can reverse-engineer Java, there's no way I'm going to
> > do it on code that could evolve at any time in the future, since no
> > specs are published.

If you are interested in a second implementation, that would be 
great! Reverse engineering isn't necessary -- I'd be happy to work 
with you directly to make it happen. As for details about the 
protocol, a good place to start is our published papers on Credence 
(also linked off the site above), which lay out the rational and design.

I'd also be happy to draft a spec of the currently implemented 
protocol, if that would be helpful. If anyone wants to suggest a 
"model" gnutella spec, I will make an effort to follow its style and 
conventions.  At the same time, if there are going to be multiple 
implementations, it may make sense to have a wider discussion about 
the spec and interoperability as
that happens. For instance, some things would definitely be more 
efficient if Credence were integrated a bit tighter with the 
underlying gnutella protocol.

Anyone interested in following up can contact me directly any time.

-Kevin




More information about the P2p-hackers mailing list