Gossipsub: As a Replayable Log

I have some conceptual questions about Gossipsub:

  1. Can it sort messages? Or, is it designed to support custom brokers on top of the base protocol to do things like message sorting?
  2. Can it archive messages in the same manner that IPFS archives documents?

I’m asking this to determine whether Gossipsub can be used as a replayable log (like the Kafka Broker for instance).

Hypothetically, multiple producers would send messages in parrallel. Gossipsub would automagically sort (using a leader, or consensus, or shared time, …) them before publishing to subscribers. All sorted messages would be stored such that, assuming at least one full archive node, they can be replayed by a new subscriber wanting to synchronize its state.

I realize that what I’m describing looks a lot like a blockchain, but I don’t need such degree of trustlessness. I’m looking for the simplest and fastest way to distribute a transaction log, even if it required identity and trust from some of the peers.

There is currently no concept of sorting or archiving messages within the router implementation.
At the protocol level all this is possible without any modifications, but we are trying to keep the router complexity low.

– vyzo

Are there code examples of adding custom features to the router and interfacing with the underlying protocol?

Not really, you’d have to fork and hack the router.

– vyzo