On 12/10/2007, Jani Nurminen <[EMAIL PROTECTED]> wrote: > Hello all, > > For the purpose of this question, let's define a "channel": a channel allows > one-to-many communication to an arbitrary set of nodes within the network. > There can be many channels, and the channels can overlap, i.e. some node can > belong to one or more channels. There can also be nodes which are not part of > any such channel. > > Channel membership is not static - joins and leaves can happen at any time.
What you are describing sounds very much like topic-based publish/subscribe. A channel would be represented by an event topic. Subscribers can subscriber to any number of topics. Publishers publish events under a topic. Notice that p/s is more like many-to-many comms in the sense that topics are not publisher-specific, i.e. any publisher can publish on any existing topic. > As a special case of a channel, there is the case which contains only two > nodes; in this case communication is effectively one-to-one. One-to-one comms over p/s is sort of a hack. Basically you create a new event topic for sending events from the publisher to the single subscriber. > The question is, how would one realize such "channel"-concept in a DHT-based > p2p-network? I think multicast (in DHT context) is a suitable keyword, but is > there some existing system which is closest to the one described here, where > I could begin to learn more? There are a number of p/s implementations that are built on top of DHTs. In such systems the DHT is used as a decentralised event service for routing events from publishers to subscribers. The actual clients (i.e. publishers and subscribers) in the system are actually not nodes in the DHT. Instead they connect to the event service by connecting to a DHT node. But nothing prevents the DHT nodes from behaving like clients that connect to themselves. So I'm not 100% sure this is what you are looking for. Have a look at Scribe, which is part of the Pastry project. And Hermes, which is a p/s system built on top of a DHT (unfortunately there are no public implementations of it). Other p/s systems, of which some are based on DHTs, are Rebeca, Siena, JEDI. I'd say Scribe is your best bet in getting of the ground as fast as possible. > Slinky -- ! Lauri _______________________________________________ p2p-hackers mailing list [email protected] http://lists.zooko.com/mailman/listinfo/p2p-hackers
