p2psim: Roll Your Own P2P Protocol
Anonymous Coward writes "p2psim is a free, multi-threaded, discrete event simulator developed at MIT to evaluate and investigate p2p protocols. You can quite easily add your own p2p protocol and compare it with others to make sure it runs well before you write the real thing. p2psim runs in Linux and FreeBSD."
...at least, in terms of duplicated code clumps as reported by CPD.
Here's the report... not bad at all.
The Army reading list
They need to implement older protocols like Gnutella's and Fasttracks.
It would be interesting to see if there simulator comes close to real world performance of these networks after that !
Yay, we have networks simulating networks. Kazaa Reloaded !
Help pay for my wedding! Go to my kickass website
How about, instead of having a few dozen networks, we just come up with one? It works fine for things like the phone system and email (even though there're seperate companies, they're one network), so why not just have one protocol with everything built in?
I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
Does anyone know what a good sort of p2p "kit" is, say if you want to include p2p networking (like, the ability to create and work with a self-managing p2p network) in an application but don't want to write your own p2p protocol/network code?
I know there must be a couple. What are some good ones?
I heard Sun has one? What's it called? "JXTA"? Has anyone worked with that, is it any good? Can it work with nodes that are behind NAT?
Irritable, left-wing and possibly humorous bumper stickers and t-shirts
Can someone have some AI build a better P2P? Once you think about it, wouldn't that be the easiest way to come up with the next bestest efficient P2P protocol?
Since when do you have to be an expert user to get it working? Just follow the instructions. To wit; go through key generation, which you are automatically prompted to do, and then go through a manual key exchange. The problem is that the GUI client is windows-only, a problem which would have been nonexistent if frankel had whipped up a GTK application instead of a Win32-specific one. However I am grateful to him for what he HAS made, as I use it daily.
With those things said, WASTE is not a complete solution. It needs the option for a centralized keyserver, and for the revocation of keys. It also needs some type of per-user access control. Without these items it is only suitable as a tool for very small groups of like-minded people. If you would like to use it for widespread p2p (it could easily do all the things that HOTLINE does now) then you will have to rectify these features, and implement some kind of managed trusts.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
P2P as a network protocol is evolving into something that actually works, as opposed to the state that it was at previously. It used to be that you connected to a single fault point, selected a single file from another user, and began downloading. Oh, do that while praying that neither of you got be cut off.
.torrent is adding accountability to the mix, which adds great legal uses, along with better HTML integration.
Then download resuming was added. Gnutella removed the central point of failure. Downloading from multiple sources was added. Kazaa added the concept of the supernode. eDonkey allows you to upload files that you haven't finished downloading yet. Soon we will probably see beginning-of-download randomization, so that complete files can be downloaded on a network even if nobody has finished getting it yet.
What more will we see in a protocol? Who knows. Encryption? Better IM capabilities? Webcams? Plug-ins? Preview from remote computer? While we still haven't figured out what the parameters of the network should be we shouldn't agree on the holy standard of the one true network.
"If we knew what we were doing it wouldn't be research"
The ______ Agenda