Adam Ierymenko
|
2f18a92e20
|
Cleanup in numerous places, reduce network chattiness around MULTICAST_LIKE, and fix a "how was that working" latent bug causing some control traffic to take the scenic route.
|
2016-04-19 12:09:35 -07:00 |
|
Adam Ierymenko
|
d8b89b0c86
|
Fix Cluster to send from a designated endpoint address instead of wildcard.
|
2016-04-05 10:47:13 -07:00 |
|
Adam Ierymenko
|
4e4fd51117
|
boring doc stuff
|
2016-01-12 14:04:55 -08:00 |
|
Adam Ierymenko
|
0d9f33dc4f
|
Fix: (1) Windows stack overflow due to buffer too large in peer deserialize, (2) clean up some other stuff seen during debugging and reduce the sizes of some buffers due to Windows small stack size, (3) remove a redundant try/catch.
|
2015-11-13 12:14:28 -08:00 |
|
Adam Ierymenko
|
451b8aa7b2
|
Query both root and network controller for multicast last resort GATHER.
|
2015-11-10 17:37:38 -08:00 |
|
Adam Ierymenko
|
4328c6c3bc
|
Fix delete oldest logic.
|
2015-11-10 09:46:14 -08:00 |
|
Adam Ierymenko
|
b171c9a0db
|
Replace slow std::list<> with an O(log(N)) data structure for the cluster relaying send queue.
|
2015-11-10 09:05:01 -08:00 |
|
Adam Ierymenko
|
32ec378e3b
|
Announce that we have peers on the cluster when we first see them to improve startup times, and add a result crunching script to tests/http.
|
2015-11-09 18:01:23 -08:00 |
|
Adam Ierymenko
|
35c4e28f31
|
Mark geo-redirected paths as suboptimal and do not report that we have a peer if all we have is one of these. Also a few other small fixes.
|
2015-11-09 14:25:28 -08:00 |
|
Adam Ierymenko
|
47424df417
|
Fix (1) a deadlock bug and (2) a bug that prevented distributed rendezvous messages from being sent.
|
2015-11-09 13:39:06 -08:00 |
|
Adam Ierymenko
|
73e2c6e511
|
How did that ever work?
|
2015-11-09 12:24:49 -08:00 |
|
Adam Ierymenko
|
4ad2ff2f71
|
.
|
2015-11-09 11:08:52 -08:00 |
|
Adam Ierymenko
|
b57c855a8c
|
PROXY_SEND fix.
|
2015-11-09 10:25:20 -08:00 |
|
Adam Ierymenko
|
ed954c5ca2
|
.
|
2015-11-09 10:09:16 -08:00 |
|
Adam Ierymenko
|
21341ab15c
|
Ready to test.
|
2015-11-09 09:45:43 -08:00 |
|
Adam Ierymenko
|
ff81415ffe
|
Build fixes...
|
2015-11-09 09:14:26 -08:00 |
|
Adam Ierymenko
|
57b71bfff0
|
Cluster simplification and refactor work in progress...
|
2015-11-08 13:57:02 -08:00 |
|
Adam Ierymenko
|
6bc8c9d8ef
|
Clustering cleanup, still a work in progress.
|
2015-11-06 16:12:41 -08:00 |
|
Adam Ierymenko
|
5f39d5b7ea
|
Further pare down Cluster messaging and rename some stuff.
|
2015-11-06 14:37:17 -08:00 |
|
Adam Ierymenko
|
8ea5f424fd
|
Small amount of cleanup.
|
2015-11-06 11:15:06 -08:00 |
|
Adam Ierymenko
|
3fa1b5a89d
|
Make cluster HAVE_PEER a little lighter by removing full identity. Technically this is not necessary and they will propagate over time in any case. Might restore it in some form in the future.
|
2015-11-05 17:22:22 -08:00 |
|
Adam Ierymenko
|
60ce886605
|
Tweak some timings for better reliability.
|
2015-11-02 15:15:20 -08:00 |
|
Adam Ierymenko
|
1b4cc4af5c
|
Fix evil bug, and instrument/assert on some other stuff, and a bit of cleanup.
|
2015-10-30 15:54:40 -07:00 |
|
Adam Ierymenko
|
d6c0d176ee
|
Periodically re-announce peers that we have.
|
2015-10-29 10:10:09 -07:00 |
|
Adam Ierymenko
|
68d6d3c4ff
|
Fix bug in peer count.
|
2015-10-28 14:29:08 -07:00 |
|
Adam Ierymenko
|
51fcc75354
|
Some cleanup, and use getPeerNoCache() exclusively in Cluster.
|
2015-10-27 17:36:47 -07:00 |
|
Adam Ierymenko
|
4221552c0b
|
Use getPeerNoCache() in Cluster to avoid keeping all peers cached everywhere.
|
2015-10-27 16:52:44 -07:00 |
|
Adam Ierymenko
|
cc1b275ad9
|
Replicate peer endpoints and forget paths if we have them -- this allows two clusters to talk to each other, whereas forgetting all paths does not.
|
2015-10-27 16:47:13 -07:00 |
|
Adam Ierymenko
|
cc6080fe38
|
(1) No need to confirm if we are a root (small optimization), (2) Refactor peer affinity tracking.
|
2015-10-27 15:57:26 -07:00 |
|
Adam Ierymenko
|
16bc3e0398
|
Factor out RemotePath subclass of Path -- no longer needed, just cruft.
|
2015-10-27 15:00:16 -07:00 |
|
Adam Ierymenko
|
40976c02a4
|
Forget paths to peers if we are handing them off.
|
2015-10-27 14:37:38 -07:00 |
|
Adam Ierymenko
|
f692cec763
|
Change how cluster relays packets -- just PROXY_UNITE and then send packet via normal ZeroTier front plane -- more efficient and eliminates fragmentation issues.
|
2015-10-27 14:04:12 -07:00 |
|
Adam Ierymenko
|
a1a0ee4edb
|
Fix infinite loop in Cluster, clean up some stuff elsewhere, and back out rate limiting in PUSH_DIRECT_PATHS for now (but we will do something else to mitigate amplification attacks)
|
2015-10-27 12:01:00 -07:00 |
|
Adam Ierymenko
|
8a7a0b6b88
|
Cleanup, including simplification of root server picking algorithm since we no longer need all that craziness.
|
2015-10-27 10:37:39 -07:00 |
|
Adam Ierymenko
|
69857b4ba8
|
Refactor cluster redirects to move code to push peers out of the actual Cluster function that checks for redirect, and clean up Peer::received() to be a bit more logical.
|
2015-10-27 09:36:48 -07:00 |
|
Adam Ierymenko
|
98d856daa2
|
Only send redirects to the sending InetAddress and only in response to a set of certain frame types to avoid potential race conditions.
|
2015-10-26 17:58:51 -07:00 |
|
Adam Ierymenko
|
8bfb02ba3c
|
Only send redirects for the same address class, and elminiate some TRACE noise.
|
2015-10-26 16:55:55 -07:00 |
|
Adam Ierymenko
|
debed1ac2d
|
Expose cluster status in /status JSON response.
|
2015-10-26 13:06:10 -07:00 |
|
Adam Ierymenko
|
865acfa40f
|
Cluster status plumbing.
|
2015-10-26 12:41:08 -07:00 |
|
Adam Ierymenko
|
35676217e8
|
Refactor multicast group announcement to work directly or indirectly.
|
2015-10-23 14:50:07 -07:00 |
|
Adam Ierymenko
|
29b966894c
|
(1) Fix bug in geo-ip service that prevented cache lookup, (2) fix problem in SelfAwareness (will need to test ALL versions in the wild with this), and (3) add more TRACE instrumentation to Cluster.
|
2015-10-23 13:03:34 -07:00 |
|
Adam Ierymenko
|
964b30902a
|
Cluster fix: was accumulating remote endpoints endlessly.
|
2015-10-23 11:51:18 -07:00 |
|
Adam Ierymenko
|
7711eba297
|
More cluster wiring...
|
2015-10-22 16:02:01 -07:00 |
|
Adam Ierymenko
|
978b056a01
|
Wire in redirectPeer(), now about ready to test clustering!
|
2015-10-20 17:36:10 -07:00 |
|
Adam Ierymenko
|
6a7b47e5e1
|
Forgot a return true.
|
2015-10-20 17:27:57 -07:00 |
|
Adam Ierymenko
|
d6dee7bb5c
|
Clustered handling of relaying.
|
2015-10-20 17:22:53 -07:00 |
|
Adam Ierymenko
|
35a12b94ea
|
Outfit Cluster with TRACE for debugging.
|
2015-10-20 16:48:49 -07:00 |
|
Adam Ierymenko
|
59e1444b27
|
Finish wiring up Cluster, fix some issues with other recent changes.
|
2015-10-20 16:31:41 -07:00 |
|
Adam Ierymenko
|
eb79d4a2f3
|
Wire up peer announcement in cluster.
|
2015-10-20 16:24:21 -07:00 |
|
Adam Ierymenko
|
57e29857cf
|
Cluster work -- integrating with the rest of the code.
|
2015-10-20 15:27:53 -07:00 |
|