Commit Graph

65 Commits

Author SHA1 Message Date
vyzo 69868db8cf remove obsolete explicit IP whitelisting in favor of subnets 2021-02-12 21:47:58 +02:00
vyzo 84f577bdd1 add subnet whitelisting for IPColocation 2021-02-12 21:47:58 +02:00
Steven Allen 08c17398fb feat: update to go-libp2p-core 0.7.0
Updates to the new stream interfaces. See
https://github.com/libp2p/go-libp2p-core/releases/tag/v0.7.0.
2020-11-12 09:02:55 +02:00
vyzo d6c20b59fc remove multi-topic message support 2020-10-08 20:18:21 +03:00
vyzo c82d664e8f prettify things 2020-09-09 16:57:36 +03:00
vyzo 5d06aa2d4f add api for dynamically setting and resetting topic score parameters 2020-09-09 16:57:36 +03:00
vyzo 93f4f91dcf trace throttle peers to avoid breaking promises unfairly 2020-09-07 13:38:02 +03:00
vyzo 06a12f17b7 reduce log verbosity; debug mostly 2020-09-01 20:42:50 +03:00
vyzo b7c28b504d add behaviour penalty threshold 2020-08-20 18:03:32 +03:00
vyzo 5fd694af20 refactor ip colocation factor computation that is common for score and inspection 2020-07-30 14:27:04 +03:00
vyzo f160b11084 better handling of intermediate topic score snapshots 2020-07-30 14:27:04 +03:00
vyzo 0f6aeb23d7 disallow duplicate score inspectors 2020-07-30 14:27:04 +03:00
vyzo e6559f59c0 make peer score inspect function types aliases 2020-07-30 14:27:04 +03:00
vyzo cce1f8a107 extended peer score inspection 2020-07-30 14:27:04 +03:00
Diederik Loerakker 99507107b6
Merge pull request #359 from protolambda/optional-sig-origin-seq
Signing policy + optional Signature, From and Seqno
2020-07-23 08:47:47 +03:00
vyzo 1c85190323 make p4 quadratic 2020-05-08 21:20:04 +03:00
vyzo d3ae6ab3a7 extended internal tracing for multiple objects, not just score 2020-05-08 16:45:31 +03:00
vyzo 3cc169362f incorporate p7 into score 2020-05-06 19:41:53 +03:00
vyzo ce9a0b7edf use log.Warn instead of Warning 2020-05-05 21:10:14 +03:00
vyzo ed0d01f92b add defensive checks for potentially duplicate traces 2020-05-04 19:06:40 +03:00
vyzo 1901383099 implement extended validator support 2020-05-04 09:42:20 +03:00
vyzo f742e5439f fix bug in penalties from message rejection
the first source of the invalid message was _not_ penalized!
2020-04-27 18:35:25 +03:00
vyzo 1e920ed426 fix IPv4 -vs- IPv6 address handling in peer address tracking 2020-04-18 11:09:06 +03:00
vyzo 432caf4fdf more rigorously defeat unspecified address gremlins 2020-04-18 11:09:06 +03:00
vyzo 0a9a87cf04 fix issue with unspecific IPv6 addrs in conn IP tracking
Also, don't track loopback addrs.
2020-04-18 11:09:06 +03:00
vyzo e1d6b49b2d fix bug in peerScore.setIPs
It was removing all old addresses, not just the ones in the new addres slice
2020-04-18 11:09:06 +03:00
Raúl Kripalani fc38f556a3 comments and nits. 2020-04-18 11:09:06 +03:00
vyzo 8f3471cdfd correctly attribute invalid message deliveries due to self origin rejection 2020-04-18 11:09:06 +03:00
vyzo a1488680e7 rename delivery_ constants to satisfy the camelcase worshipers and nitpickers 2020-04-18 11:09:06 +03:00
vyzo 1c4f0920fe use named constants for tracing message rejection reasons 2020-04-18 11:09:06 +03:00
vyzo ea7305245d add IP whitelist for colocation factor penalty 2020-04-18 11:09:06 +03:00
vyzo 68b86a4b66 use manet.ToIP instead of hand-rolling multiaddr to IP conversion 2020-04-18 11:09:06 +03:00
vyzo 7a3848073e only retain negative scores 2020-04-18 11:09:06 +03:00
vyzo c65a520799 topic score cap 2020-04-18 11:09:06 +03:00
vyzo 1b387b0068 rename score debug option, address some comments around inspection
- Use nil for the never fire channel when there is no inspection
- Defer a score inspection for shutdown to get one final sample on shutdown
2020-04-18 11:09:06 +03:00
vyzo 375b66b0c1 move score parameter types to their own file 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 d5e432a62b move score starting nil check inside the score implementation 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 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