136 Commits

Author SHA1 Message Date
Raúl Kripalani
49274b0e8a
migrate to consolidated types. (#185) 2019-05-26 17:19:03 +01:00
vyzo
96c5b40934 godoc cosmetics 2019-01-04 13:14:04 +02:00
vyzo
2478eb9a87 gossipsub: tag mesh peers to discourage pruning their connections 2018-10-26 15:49:34 +03:00
Steven Allen
bd1a4630b9 move to go-libp2p-pubsub
Updates for move from go-floodsub to go-libp2p-pubsub.

fixes https://github.com/libp2p/go-libp2p-pubsub/issues/4
2018-10-18 21:10:16 +01:00
Kevin Atkinson
0827f5e955 gx publish 0.9.31 2018-10-04 19:23:53 -04:00
Kevin Atkinson
1abb0209ce gx publish 0.9.30 2018-10-04 18:41:48 -04:00
James Ray
096722488e
pubish -> publish 2018-09-17 14:57:32 +10:00
gukq
91285f3022 Just repair spelling mistake
Signed-off-by: gukq <gukaiqiang@gmail.com>
2018-09-10 23:17:23 +08:00
vyzo
0cd357b295 control parameter for gossipsub initial heartbeat delay 2018-08-29 11:15:41 +03:00
vyzo
de4adefafb fix data race in ownership of RPC when piggybacking control messages. 2018-08-28 21:07:18 +03:00
vyzo
bb5dd40680 basic logging for gossipsub 2018-08-09 12:16:19 +03:00
vyzo
1dc8405449 more docs for gossipsub router, expire fanout peers when we haven't published in a while 2018-06-12 08:00:17 -07:00
vyzo
b490d117f2 make heartbeat interval a parameter, turn all gossipsub parameters into variables 2018-06-12 08:00:17 -07:00
vyzo
009efebdaf harden piggybackControl
don't create a control object if the graft/prune are stale and only assign
the relevant fields.
2018-06-12 08:00:17 -07:00
vyzo
af061f5040 refactor sendGraftPrune out of heartbeat 2018-06-12 08:00:17 -07:00
vyzo
ef730627ad remove unnecessary and potentially harmful check from heartbeat
- the check is unnecessary because peers emit PRUNE on Leave
- the check is harmful, because the ANNOUNCE message might have
  benn lost (or reordered after the GRAFT depending on the retry
  strategy), which would leave the mesh in an inconsistent state.
2018-06-12 08:00:17 -07:00
vyzo
4667b0ae94 fanout sources should emit gossip too 2018-06-12 08:00:17 -07:00
vyzo
1f5959bf54 fix slice bounds issues; getCount takes care of the slicing 2018-06-12 08:00:17 -07:00
vyzo
599ccffecd shift the message history window at the end of the heartbeat 2018-06-12 08:00:17 -07:00
vyzo
64cdbbabbc remove pending gossip and control messages on RemovePeer 2018-06-12 08:00:17 -07:00
vyzo
bd29e81e3a history and gossip length are named constants 2018-06-12 08:00:17 -07:00
vyzo
c5fe290389 reduce gossip amplification; don't send to mesh peers 2018-06-12 08:00:17 -07:00
vyzo
0e288dc741 delete mesh before sending prunes on leave 2018-06-12 08:00:17 -07:00
vyzo
64d35994d1 shuffle peers 2018-06-12 08:00:17 -07:00
vyzo
07875f149e implement flush 2018-06-12 08:00:17 -07:00
vyzo
74a10cfa70 piggybacking details 2018-06-12 08:00:17 -07:00
vyzo
7251c64e65 control message piggybacking logic 2018-06-12 08:00:17 -07:00
vyzo
78618fce23 maintain fanout peer lists on heartbeat 2018-06-12 08:00:17 -07:00
vyzo
bc25116516 clean peers that have left the topic on heartbeat 2018-06-12 08:00:17 -07:00
vyzo
73da341386 hearbeat preliminaries: overlay management 2018-06-12 08:00:17 -07:00
vyzo
34509d47b3 implement Join and Leave, refactor sendRPC 2018-06-12 08:00:17 -07:00
vyzo
e1fbe11c97 refactor Publish to use getPeers 2018-06-12 08:00:17 -07:00
vyzo
6a177a7396 handle gossipsub control messages 2018-06-12 08:00:17 -07:00
vyzo
375c4176b9 gossipsub publish 2018-06-12 08:00:17 -07:00
vyzo
b867200fee gossipsub: heartbeat timer 2018-06-12 08:00:17 -07:00
vyzo
448f380722 gossipsub: router outline 2018-06-12 08:00:17 -07:00