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

Peer banning #9

Open
cloudhead opened this issue Jan 23, 2021 · 2 comments
Open

Peer banning #9

cloudhead opened this issue Jan 23, 2021 · 2 comments
Labels
help wanted Extra attention is needed

Comments

@cloudhead
Copy link
Owner

Peers that misbehave or shouldn't be connected to / retry-ed for a while should be banned. We're mainly interested in saving time and bandwidth by doing this.

The banned peers should be stored in the client::peer::Cache with the ban duration and start time.

It probably makes sense to create a BanManager for this alongside the other sub-protocols in p2p/src/protocol/.

@cloudhead cloudhead added the help wanted Extra attention is needed label Jan 23, 2021
@ghost
Copy link

ghost commented May 17, 2022

👀

@ghost
Copy link

ghost commented May 19, 2022

Bitcoind's describes its approach to banning pretty well. They opt to de-prioritize misbehaving peers instead of banning, which is left up to the users. They avoid banning due to risk of splitting the network on a protocol upgrade.

"Attempting to automatically disconnect or ban any class of peer carries the risk of splitting the network. For example, if we banned/disconnected for a transaction that fails a policy check and a future version changes the policy check so the transaction is accepted, then that transaction could cause the network to split between old nodes and new nodes."

How would you like to proceed?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant