Description
While DKG Sync is there, it works pretty slow. It looks like some of the node owners started to experiment with it and try to make it faster, like increasing number of assets to sync by orders of magnitude, changing the algorithm etc...
And it looks like it's indeed makes the sync faster. But on the other side it's killing other nodes.
My node struggles to perform commands, blazegraph does not feel great as well. Node can't perform a simple GET command, fails every time.
One mitigation I see here - spam protection. We have spam protection for regular GET requests. I think we need to have something similar for BatchGet requests as well. It could be just limit size of a batch at the receiving side (respond NACK to requests with batch size > N), or something more involved like limit total number of assets in BatchGet within a specific timeframe.
We surely need some option, as right now node runners have an incentive to just disable processing of received BatchGet requests in order to preserve health of their node.