On Wed, Dec 22, 2010 at 11:07 AM, matthew hawthorne <mhawtho...@gmail.com> wrote: > hello, > > I'm starting a project at my day job to deploy a gossip protocol > implementation. part of my initial work is to evaluate existing > implementations. > > being loosely familiar with Cassandra, I read > http://wiki.apache.org/cassandra/ArchitectureGossip and have looked > over the related code a bit. > > is there interest in breaking out the gossip-related portions of > Cassandra into a library that could be reused by other projects? I > work on a team that is ready and willing to contribute heavily. we'd > just need some guidance as to how to structure the Cassandra > subcomponent(s) and properly integrate them with the builds, tests, > etc.
I think breaking gossip out could be very valuable. Gossip is a somewhat under-understood and under-tested part of Cassandra. Isolating it could help both of those situations. Ideally we'd not change the normal build procedure for cassandra, but add a new target for building a gossip library. > here are a few examples of functionality we're looking to add: > > 1) hierarchical state - our use case is cross data center gossip, > where we don't want every node in the 2 clusters communicating, but do > want a node from cluster1 to send a summary of the cluster's state to > cluster2, and vice versa. essentially I'm talking about rolling up > the state of multiple nodes into a single "virtual" node I'd be interested in seeing the analysis here. There are some challenging problems with having only one host do something in a gossip based system. > 2) mutual authentication - nodes verifying the identity of other nodes > before gossipping > > 3) encryption - encrypted traffic, especially for the cross data center case > > any opinions on this? thanks in advance for any feedback! -ryan