Commit Graph

3966 Commits

Author SHA1 Message Date
Adam Ierymenko
b9c1407013 Adjust PUSH_DIRECT_PATH circuit breaker, and comment out traces to reduce noise. 2017-05-08 09:36:37 -07:00
Adam Ierymenko
d905607353 Small optimizations. 2017-05-08 08:35:55 -07:00
Adam Ierymenko
e5e90b1f71 Wire MTU through to service. 2017-05-04 20:10:49 -07:00
Adam Ierymenko
d5ed025871 Support MTU reconfigure for Windows. 2017-05-04 19:50:02 -07:00
Adam Ierymenko
b55422a528 MTU integration in taps. 2017-05-04 19:31:50 -07:00
Adam Ierymenko
909a14fb48 MTU support in controller. 2017-05-04 17:22:24 -07:00
Adam Ierymenko
107e3e4106 First pass of configurable MTU and max MTU increase. 2017-05-04 17:12:02 -07:00
Adam Ierymenko
6ef247fb93 More ARM stuff. 2017-05-04 16:00:53 -07:00
Adam Ierymenko
b8e46b835b Merge branch 'dev' of http://10.6.6.2/zerotier/ZeroTierOne into dev 2017-05-04 15:54:15 -07:00
Adam Ierymenko
0900fee5d9 Linux build stuff for ARM. 2017-05-04 15:54:08 -07:00
Joseph Henry
1f26cb98de updated OneService convenience functions for SDK 2017-05-04 15:26:44 -07:00
Joseph Henry
ceeb8ee0bc added isEqualPrefix to InetAddress 2017-05-04 15:25:48 -07:00
Adam Ierymenko
54c47a1e03 Add some historic code just for the heck of it. 2017-05-04 10:42:22 -07:00
Adam Ierymenko
6bb855873d GitHub issue #494 -- shut down and restart UI on Mac pkg install/upgrade. 2017-05-03 15:03:26 -07:00
Adam Ierymenko
39db45e144 Fix crash on exit (sometimes) in controller. 2017-05-03 09:48:08 -07:00
Adam Ierymenko
41c187ba12 Another very small crypto optimization. 2017-05-03 07:43:23 -07:00
Adam Ierymenko
d7c99728bc Echo back ping payload. 2017-05-02 17:28:18 -07:00
Adam Ierymenko
8e19188f49 Do the sometimes rather big "pong" in a background worker thread. 2017-05-02 16:58:51 -07:00
Adam Ierymenko
625e3e8e25 Tiny optimization to prealloc string space. 2017-05-02 13:53:47 -07:00
Adam Ierymenko
fde99e2fcf Fix for post size limit in Http library. 2017-05-02 12:08:53 -07:00
Adam Ierymenko
132643cd4a Fix small issue preventing pongs if there are never seen members. 2017-05-02 10:34:33 -07:00
Adam Ierymenko
faf7b81c01 Send last requets time in status, and do not set physicalAddr unless we know one. 2017-05-01 15:48:52 -07:00
Adam Ierymenko
bcc6799902 Send member uptime in pong posts. 2017-05-01 15:23:21 -07:00
Adam Ierymenko
718e1d6c08 Finish removing constantly changing stuff from controller. 2017-05-01 13:21:26 -07:00
Adam Ierymenko
a9ce773584 Remove lastModified field in config which literally nothing uses anywhere, and prevent some unnecessary writes. 2017-04-28 19:58:21 -07:00
Adam Ierymenko
d69bc4fb5e Main license file. 2017-04-27 20:54:42 -07:00
Adam Ierymenko
1b68d6dbdc License header update. 2017-04-27 20:47:25 -07:00
Adam Ierymenko
62578a2162 Reduce memory use and a bit of cleanup. 2017-04-27 19:36:03 -07:00
Adam Ierymenko
9e80db0fd1 Cleanup, fix a valgrind error, stack use reduction. 2017-04-27 00:59:36 -07:00
Adam Ierymenko
e8ab6adf89 Deadlock fix. 2017-04-26 12:17:43 -07:00
Adam Ierymenko
7c184cf991 Another performance improvement to controller. 2017-04-26 10:35:59 -07:00
Adam Ierymenko
72def658d0 Add a dummy Ethernet tap and a build option to enable it. 2017-04-26 08:42:49 -07:00
Adam Ierymenko
e7cd888c7d dev is now 1.2.5 2017-04-26 06:50:12 -07:00
Adam Ierymenko
1205578935 Big cleanup of controller code, should help performance. 2017-04-26 06:48:08 -07:00
Adam Ierymenko
4e77365e8d Remove a little cruft. 2017-04-25 16:17:54 -07:00
Adam Ierymenko
4f2a779769 JSONDB performance improvements, threading fix. 2017-04-24 20:51:02 -07:00
Adam Ierymenko
cafbe44dde Controller optimizations -- make locking more fine-grained, use true hardware concurrency, etc. 2017-04-24 19:16:36 -07:00
Adam Ierymenko
6234bfd8bf 4-core Debian build. 2017-04-24 18:40:34 -07:00
Adam Ierymenko
77796caba6 Static ARM32 build fixes. 2017-04-24 18:12:58 -07:00
Adam Ierymenko
97f1d7ae2e . 2017-04-24 16:56:18 -07:00
Adam Ierymenko
487e89d4d0 Add i486 and i586 to Linux makefile for detection of ia32. 2017-04-24 15:19:03 -07:00
Adam Ierymenko
fe5257df81 VERSION 1.2.4: Bug fixes and performance improvements
* Managed routes are now only bifurcated for the default route. This is a change in behavior, though few people will probably notice. Bifurcating all managed routes was causing more trouble than it was worth for most users.
 * Up to 2X crypto speedup on x86-64 (except Windows, which will take some porting) and 32-bit ARM platforms due to integration of fast assembly language implementations of Salsa20/12 from the [supercop](http://bench.cr.yp.to/supercop.html) code base. These were written by Daniel J. Bernstein and are in the public domain. My Macbook Pro (Core i5 2.8ghz) now does almost 1.5GiB/sec Salsa20/12 per core and a Raspberry Pi got a 2X boost. 64-bit ARM support and Windows support will take some work but should not be too hard.
 * Refactored code that manages credentials to greatly reduce memory use in most cases. This may also result in a small performance improvement.
 * Reworked and simplified path selection and priority logic to fix path instability and dead path persistence edge cases. There have been some sporadic reports of persistent path instabilities and dead paths hanging around that take minutes to resolve. These have proven difficult to reproduce in house, but hopefully this will fix them. In any case it seems to speed up path establishment in our tests and it makes the code simpler and more readable.
 * Eliminated some unused cruft from the code around path management and in the peer class.
 * Fixed an issue causing build problems on some MIPS architecture systems.
 * Fixed Windows forgetting routes on sleep/wake or in some other circumstances. (GitHub issue #465)
2017-04-24 11:41:23 -07:00
Adam Ierymenko
9161424c97 Version bumps. 2017-04-24 11:41:01 -07:00
Adam Ierymenko
cdda0dd043 Windows version bump. 2017-04-24 11:37:54 -07:00
Adam Ierymenko
f4feccc626 Do not serve controller requests until init is done. 2017-04-24 09:09:04 -07:00
Adam Ierymenko
44cb2f4efd ++version 2017-04-21 15:32:00 -07:00
Adam Ierymenko
cacb8fae0d GitHub issue #463 -- fix MacOS uninstall script. 2017-04-21 13:55:44 -07:00
Adam Ierymenko
fa99a5cf12 docs 2017-04-21 13:27:34 -07:00
Adam Ierymenko
e700165eba GitHub issue #465 - Windows route amnesia 2017-04-21 13:26:02 -07:00
Adam Ierymenko
8542ee59db Windows crash fix. 2017-04-21 12:42:51 -07:00