Commit Graph

1368 Commits

Author SHA1 Message Date
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
ccae473783 Eliminate Windows warnings. 2015-11-12 16:51:33 -08:00
54f68280bd Minor Windows build fixes. Builds on VS2012 again. 2015-11-12 16:48:42 -08:00
8ac411a9e4 Stashing utun work for OSX -- abandoning for now since utun excludes mDNS among other issues. 2015-11-12 10:47:50 -08:00
0940d673db Always advertise to the cluster when we have a peer even if we have also initiated handoff. This might be the cause of the warmup problem -- will test later. At the very least it should not hurt anything due to pick-latest logic and the fact that cluster members with only suboptimal paths do not respond to WANT_PEER. 2015-11-11 14:36:22 -08:00
b94335f115 Increase WHOIS retry delay slightly to allow for global cluster latency (e.g. 300+ms from New York to Johhannesburg) 2015-11-11 11:07:08 -08:00
451b8aa7b2 Query both root and network controller for multicast last resort GATHER. 2015-11-10 17:37:38 -08:00
2854f14966 Some cluster parameter tweaks, and change the test code in tests/http to dramatically reduce the amount of data transfer to/from the test master. Also add results of first successful 50k test. 2015-11-10 11:59:03 -08:00
4328c6c3bc Fix delete oldest logic. 2015-11-10 09:46:14 -08:00
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
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
2cc50bdb10 Try bringing back TTL escalation -- may help with Docker (IP-MASQ) type NAT 2015-11-09 15:44:13 -08:00
94f4316a0e Fix for possible high CPU usage on multicast queries. 2015-11-09 14:54:05 -08:00
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
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
73e2c6e511 How did that ever work? 2015-11-09 12:24:49 -08:00
4ad2ff2f71 . 2015-11-09 11:08:52 -08:00
b57c855a8c PROXY_SEND fix. 2015-11-09 10:25:20 -08:00
ed954c5ca2 . 2015-11-09 10:09:16 -08:00
21341ab15c Ready to test. 2015-11-09 09:45:43 -08:00
f4d12603e0 Tweak how Switch passes off to Cluster on relay to fit new paradigm. 2015-11-09 09:19:03 -08:00
ff81415ffe Build fixes... 2015-11-09 09:14:26 -08:00
57b71bfff0 Cluster simplification and refactor work in progress... 2015-11-08 13:57:02 -08:00
6bc8c9d8ef Clustering cleanup, still a work in progress. 2015-11-06 16:12:41 -08:00
5f39d5b7ea Further pare down Cluster messaging and rename some stuff. 2015-11-06 14:37:17 -08:00
9490b1f136 Try prioritizing cluster-send over direct send in cluster mode -- may improve cluster relaying reliability. 2015-11-06 13:38:56 -08:00
8ea5f424fd Small amount of cleanup. 2015-11-06 11:15:06 -08:00
ba5008c370 Now make cluster announcements slightly more frequent. 2015-11-05 17:28:55 -08:00
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
3e22fee842 Integrate deferred background processing into main OneService implementation. 2015-11-05 12:41:14 -08:00
8ef4edebbf Deferred decode for HELLO to prevent HELLOcalypse under high load of new peers. 2015-11-05 12:22:58 -08:00
a42d714a87 . 2015-11-03 11:18:45 -08:00
c9e6e60c09 Handle ZeroTier-RFC4193 IPv6 address NDP queries inline by spoofing responses if the addressing scheme matches -- this allows multicast-free instant lookup of local IPv6 for better performance and reliability. 2015-11-03 10:46:41 -08:00
4e9d430476 Make root and relay selection somewhat more robust. 2015-11-02 16:03:28 -08:00
7fbe2f7adf Tweak some more timings for better reliability. 2015-11-02 15:38:53 -08:00
60ce886605 Tweak some timings for better reliability. 2015-11-02 15:15:20 -08:00
f1b6427e63 Decided to make this 1.1.0 (semantic versioning increment is warranted), and add a legacy hack for older clients working with clusters. 2015-11-02 09:32:56 -08:00
1b4cc4af5c Fix evil bug, and instrument/assert on some other stuff, and a bit of cleanup. 2015-10-30 15:54:40 -07:00
7382c328da Null pointer bug appears fixed... testing again at large scale. 2015-10-30 14:23:28 -07:00
641b0dec44 . 2015-10-30 14:12:20 -07:00
2fbb5d0bbf . 2015-10-30 14:11:45 -07:00
d8dbbf7484 Add some debug code in TRACE mode to catch a bug. 2015-10-30 14:11:10 -07:00
377ccff600 getPeer() had a small potential to be unsafe. 2015-10-30 13:39:28 -07:00
b6725c4415 Optimize AntiRecursion. 2015-10-30 11:48:33 -07:00
5bfa29dded Make antirec tail len slightly shorter, better performance and still plenty long enough. 2015-10-30 11:09:40 -07:00
d6c0d176ee Periodically re-announce peers that we have. 2015-10-29 10:10:09 -07:00
9f0f0197fe More dead code removal. 2015-10-29 09:44:25 -07:00
a994573a43 Eliminate some more dead code. We may do path trust, but not like that. 2015-10-29 09:42:15 -07:00
883c84bdb9 Tweak some timings, and remove some dead code. 2015-10-29 09:39:36 -07:00
68d6d3c4ff Fix bug in peer count. 2015-10-28 14:29:08 -07:00