vyzo
|
90e6984148
|
track heartbeat ticks, only clear backoff every 15.
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
f70dcbe77c
|
check exact expiration date of backoff when pruning because of backoff
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
6bcaacd74b
|
add backoff when pruning because of negative score
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
15d204cc14
|
refresh backoff when pruning during the backoff period
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
d0979258f7
|
shuffle IWANT list
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
588f7b85c0
|
add option to periodically inspect peer scores for debugging purposes
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
244a39f419
|
validate the threshold values
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
d5e432a62b
|
move score starting nil check inside the score implementation
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
ff89a0e619
|
short-circuit score computation in peer selection filters
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
98671566a2
|
distinguish throttled validation because of a full worker queue.
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
06d72b93da
|
fix bug in WithEventTracer
wrong nil check.
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
39e65e8729
|
peer score parameter validation
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
4175342bc8
|
implement periodic maintenance
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
f550385493
|
implement getIPs and refreshIPs
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
38fbc7fa47
|
implement message delivery struct details
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
7d862e2ee6
|
double check delivery to aboid duplicate counts
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
48b7d01113
|
finetune sticky mesh failure penalty parameter
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
f40b06e515
|
sticky mesh failure penalty parameter
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
b7a49b2708
|
clean up the logic of mesh delivery window
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
5fa0f9ed6a
|
more logical code ordering
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
ca6778bc83
|
simplify duplicate mesh delivery tracking
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
9c0b96f4e7
|
comment cosmetics
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
e17e266aa9
|
track message delivery time within the validation pipeline
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
3610b05538
|
peer tracking
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
283593fbc0
|
mesh tracking
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
535c04481e
|
minimize hash table accesses
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
16eeacd798
|
message delivery tracking
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
dd3ce7760c
|
respect the time in mesh cap
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
8c0deb877d
|
respec decay to zero parameter in counter decay
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
b1aff8d752
|
add nil check in Score function
necessary for when the score is not specified in gossipsub router.
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
398fb82e5f
|
fix peer IP tracking structure
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
20e3cf02b1
|
peer score refresh: counter decay and mesh activation
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
38883df429
|
peer score calculation
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
8d82c2bdec
|
explicit Start for peer scoring to inject the router
so that we can unit test without a router.
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
a02c4136b1
|
peer score parameters
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
31a279b9f0
|
limit message retransmissions through IWANT requests
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
5b55f0f78d
|
track peer (re)transmissions in message cache
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
f9d29c47b6
|
adaptive gossip dissemination
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
8fb6924f7c
|
select good peers for PX, tune the px related limits
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
2ddc4b999f
|
allow gossipsub to graylist peers based on score
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
87bbe69a8b
|
router.Publish doesn't need the source, it takes the whole message now
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
75fd8826af
|
backoff when we prune too, refuse to reGRAFT backed off peers
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
56dbe5dc8a
|
increase D_score to 4
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
69e4102a6d
|
correctly implement flood publishing
Only applies to messages that have been published by our own peer!
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
4f6ca1b1b7
|
implement flood publishing option
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
dc6af4bbe6
|
keep D peer when pruning for oversubscription
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
712bab2c64
|
remove peers with negative score from fanout
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
80f3b8c45b
|
hook score into heartbeat maintenance
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
487bbaf09f
|
heartbeat doPX is a more complex decision
|
2020-04-18 11:09:06 +03:00 |
vyzo
|
f9ce661bda
|
filter peers with negative score in initial mesh on join
|
2020-04-18 11:09:06 +03:00 |