Commit Graph

57 Commits

Author SHA1 Message Date
Kevin F
d11d12b67f async bug fixes 2022-07-11 10:27:13 -05:00
Kevin F
64a88118bd added unix transport for testing 2022-06-26 14:43:16 -05:00
Kevin F
b25e376349 gossip bug and performance fixes 2022-06-26 00:34:49 -05:00
Kevin F
b9fa446cb0 Fix missing comma 2022-06-21 12:10:11 -05:00
Kevin F
6b6d357a13 Small gossip fixes 2022-06-14 11:01:07 -05:00
Kevin F
ac88e0a1da Stem out even if we only have 1 peer 2022-06-14 11:00:08 -05:00
Kevin F
911d8118bc Small gossip fixes 2022-06-05 15:11:53 -05:00
Kevin F
ac17b53663 Fix ping not properly responding 2022-06-05 14:46:13 -05:00
Kevin F
421c6da25a Load and save tor peers 2022-05-30 19:52:03 -05:00
Kevin F
158178d6fc Don't spam tracebacks when sockets timeout 2022-05-20 10:13:12 -05:00
Kevin F
85626d6642 Removed close gossip command 2022-05-18 23:56:25 -05:00
Kevin Froman
0b4e264877 Dont accept peers too large 2022-05-15 21:54:14 -04:00
Kevin F
2be0175326 started get new peers test 2022-05-13 00:17:06 -05:00
Kevin F
3a26d053fe Gossip client tests, fixed delayed threads 2022-05-09 12:38:03 -05:00
Kevin F
7b7d6a03d3 Ignore broken pipes when streaming blocks in the gossip client 2022-05-05 22:31:05 -05:00
Kevin F
50f0cfa6f4 Added basic streamblocks test, slight fixes for streamblocks 2022-05-05 00:07:58 -05:00
Kevin F
1b37264eb7 Work on gossip tests and cleaned up api server some 2022-05-01 00:45:26 -05:00
Kevin F
e6b61c5f59 Added put block test (1 block) 2022-04-24 15:19:39 -05:00
Kevin F
237cdde4e5 Added peer exchange test (passing) 2022-04-20 00:28:29 -05:00
Kevin F
a61cd273a8 Implemented basic server diffusal test 2022-04-05 01:17:40 -05:00
Kevin F
c7ba974264 Block diffusal mostly done 2022-04-04 00:48:30 -05:00
Kevin F
9d2c2641f4 Block diffusal mostly done 2022-04-03 01:16:58 -05:00
Kevin F
996bff267b Work on normal gossip diffusion 2022-03-30 01:13:42 -05:00
Kevin F
dae99dc2f7 Work on normal gossip diffusion 2022-03-28 00:13:36 -05:00
Kevin F
df02bdb826 Work on normal gossip diffusion 2022-03-26 18:26:55 -05:00
Kevin F
c215d4decd Work on normal gossip diffusion 2022-03-26 18:24:40 -05:00
Kevin F
b07c176f5c Refactored gossip peer set, gossip block queues, and dandelionphase to use singleton/module instances instead of being passed around 2022-03-21 01:03:53 -05:00
Kevin F
9c44069248 Misc bug fixes for gossip 2022-03-20 18:05:44 -05:00
Kevin F
fd9e6f5ede Dandelion phases now have IDs so it can be known more easily if an epoch elapsed 2022-03-20 13:00:04 -05:00
Kevin F
8b2b6a613e corrected remaining_time being used as atter when resting during end op remaining time in dandelion client loop 2022-03-20 12:56:36 -05:00
Kevin F
be1dde95a6 Corrected type hinting for block queues and peer sets 2022-03-20 12:54:57 -05:00
Kevin F
9ef6f46a5c Implemented do_stem_stream to stem blocks for dandelion++ 2022-03-20 12:53:40 -05:00
Kevin F
e985966e7c Turned dandelion stem into a module and corrected use of wait_for 2022-03-20 12:52:58 -05:00
Kevin F
a53c31fda7 peer.get_socket implementations now must take timeout arg used for initial connection 2022-03-20 12:51:25 -05:00
Kevin F
6c2b1e49a2 Implemented dandelion stemout stream building 2022-03-14 10:04:28 -05:00
Kevin F
9bf16c5758 Work on stemout 2022-03-13 00:35:22 -06:00
Kevin F
19159ffa06 Work on stemout 2022-03-12 19:28:18 -06:00
Kevin F
4c54677387 Use tuple of queues for block queues instead of list for clarity that queues cannot be added 2022-03-11 11:15:18 -06:00
Kevin F
fefec8bdc8 added block store function used when not in stem phase 2022-03-10 01:10:13 -06:00
Kevin F
9d17c7bd64 Implemented server dandelion++ stem portion 2022-03-04 18:05:12 -06:00
Kevin F
17b268d9e4 lots of work on gossip 2022-03-02 07:29:59 -06:00
Kevin F
4f3da58a60 Only 1 command per peer connection should be handled 2022-02-27 13:36:39 -06:00
Kevin F
1a7ce7d386 Try mulitiple times and log an error if we can't bootstrap to anyone 2022-02-27 13:36:02 -06:00
Kevin F
44f6b90777 When checking for peer online to add to peer pool, make sure it closes and avoid attempting if its already in the pool 2022-02-27 13:34:16 -06:00
Kevin F
5337b0aba4 bootstrap logic separated out of plugin and announcement logic mostly completed 2022-02-26 01:07:18 -06:00
Kevin F
34f9ffbf6b Made peers hashable and comparable for their use in the peer set 2022-02-26 01:06:17 -06:00
Kevin F
8d394c76a7 Peer announcing client side done 2022-02-25 01:02:04 -06:00
Kevin F
df3568fc15 Scaffolding before implementing peer exchange logic 2022-02-24 01:03:50 -06:00
Kevin F
850468dc39 Scaffolding before implementing peer exchange logic 2022-02-23 11:47:01 -06:00
Kevin F
d6b1c98cbd Ping loop while brainstorming. 2022-02-22 14:34:19 -06:00