Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GossipSub: improve flood publish #854

Open
Menduist opened this issue Feb 7, 2023 · 5 comments
Open

GossipSub: improve flood publish #854

Menduist opened this issue Feb 7, 2023 · 5 comments
Labels
gossipsub performance performance and resource ussage

Comments

@Menduist
Copy link
Contributor

Menduist commented Feb 7, 2023

Flood publish:
✅ faster propagation of messages
✅ better sybil resistance (the first hop is the most fragile one)
😢 bandwidth usage (scales linearly with number of subbed connected peers)
😢 privacy (when you send a message out of your mesh, you reveal that you are the source)

The bandwidth usage will soon become a bottleneck in ethereum, and we need to find better solutions. Some leads:

  • Limit the number of peers we flood publish to (reuse gossipFactor?)
  • Rely on flooding IHAVE instead of the full message?
  • ?

Will also need adjustments at the specs level

@arnetheduck
Copy link
Contributor

  • stagger sending so that some peers receive the (full) message earlier

@Menduist
Copy link
Contributor Author

Sure, whatever we end up doing for #850 will also apply to flood publishing

@arnetheduck arnetheduck added the performance performance and resource ussage label Mar 8, 2023
@Nashatyrev
Copy link

If the parallel sending limiting (same as 'stagger sending') works well, then flood publish shouldn't be the issue: mesh peers would receive messages from publisher with approximately same timings as without floodPublish. A number of nodes (non-mesh peers of the publisher) would just potentially receive +1 duplicate

@Menduist
Copy link
Contributor Author

The performance part has been addressed in #911
The privacy part is a harder task to achieve

@diegomrsantos
Copy link
Collaborator

Flood publishing has been addressed as described in the comment above.

Other improvements related to bandwidth and latency were addressed in:

Can we consider this issue solved? @arnetheduck @kaiserd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gossipsub performance performance and resource ussage
Projects
Status: backlog
Development

No branches or pull requests

4 participants