update gossipsub
Open
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 492
- Forks
- 130
- PR merge metrics
- No merged PRs in 30d
Description
- general
- (compare with other versions, e.g. rust)
- allow multiple protocol versions in config, remember peer protocol version
/floodsub/1.0.0(spec)- broadcast message to all floodsub peers
/meshsub/1.0.0(spec)- publish to fanout when not subscribed
/meshsub/1.1.0(spec)- (check
PRUNEbackoff works as expected) - explicit peers - always connect and broadcast without
GRAFT - flood publishing - broadcast authored message to all connected peers
- peer scoring
- adaptive gossip dissemination - gossip to percentage of peers instead of count
- opportunistic
GRAFTto improve mesh median score - maintain specified number of outbound connections to avoid eclipse attack
- (check
/meshsub/1.2.0(spec)IDONTWANTto prevent duplicate broadcast- broadcast
IDONTWANTto mesh peers after receiving full message - don't broadcast these message to that peer after receiving
IDONTWANT
- broadcast
IDONTWANTto cancelIWANT- send
IDONTWANTto cancel pendingIWANTafter receiving full message - don't reply to
IWANTfor these messages for that peer after receivingIDONTWANT
- send
- config max
IDONTWANTmessages
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the existing gossipsub implementation with the linked Rust implementation and the gossipsub v1.0, v1.1, and v1.2 specifications. Work through the checklist for protocol negotiation, message propagation, peer scoring, mesh behavior, and IDONTWANT handling; done means the requested protocol versions and behaviors are implemented and verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- distributed-systems, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100