nim-libp2p
nim-libp2p copied to clipboard
libp2p implementation in Nim
we use semaphores to limit simultaneous transmissions. can speedup message reception for large messages
The `unstable` branch wasn't removed from some workflows and `interop` wasn't running on `master`.
Spec: https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.2.md#cancelling-iwant Supporting evidence of the benefit: https://ethresear.ch/t/number-duplicate-messages-in-ethereums-gossipsub-network/19921#arrival-time-of-duplicates-9 Depends on https://github.com/vacp2p/nim-libp2p/issues/1136
Implement this part of the GossipSub spec: https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.1.md#score-thresholds > GraylistThreshold: when a peer's score drops below this threshold, the peer is graylisted and its RPCs are ignored. This threshold must...
closes #1134
### This PR is not intended to be merged This new branch, `enhance-logs-for-nwaku` was created and will be used by nwaku to use as a test `nim-libp2p` version in simulations...
Related to https://github.com/vacp2p/nim-libp2p/pull/1027
See https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.1.md#spam-protection-measures. Related to https://github.com/vacp2p/nim-libp2p/pull/943
AsyncSpawn, in this specific case is clearly overkill. AsyncSpawn is not recommanded as it is uncontrollable, and, here, it could easily be replaced by another method which is safer such...
1) We use semaphores to limit simultaneous transmissions to two 2) During message transmission, we check received idontwants to cancel unnecessary transmissions 3) we relay to outbound peers first to...