d8143a5e18
Implement first pass on rapid dead path detection, and increment version to 1.1.3 (dev)
2016-01-05 16:41:54 -08:00
436c1fac1d
Selectively move over changes from "edge" to "dev" excluding netcon.
2015-12-21 16:15:39 -08:00
e6808c69f8
Increase maximum number of paths per IP scope to 4
...
Otherwise, local discovered routes are ignored.
Don't know what the best value would be. Taking 4 for now.
2015-11-30 19:48:38 +01: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
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
b6725c4415
Optimize AntiRecursion.
2015-10-30 11:48:33 -07:00
da93712846
Clean up PUSH_DIRECT_PATH limits a bit more and make them a bit smarter.
2015-10-28 09:11:30 -07:00
cdc99bfee1
Add a circuit breaker for VERB_PUSH_DIRECT_PATHS.
2015-10-27 18:18:26 -07:00
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
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
62db18b6dd
Lessen this limit just a bit to make cluster settle faster.
2015-10-27 11:01:58 -07:00
5ce3aac929
Add rate limit on receive of DIRECT_PATH_PUSH to prevent DOS exploitation.
2015-10-16 10:28:09 -07:00
2debde3451
GitHub issue #235 , and I also see no reason not to communicate with people from other Worlds.
2015-10-15 07:22:17 -07:00
619e113748
Work in progress on Cluster for new root infrastructure, multi-homing.
2015-10-14 14:12:12 -07:00
7d62dbe9f7
Tune NAT-t keepalives so that timing is better obeyed, clean up a build warning, and fix a potential source of network recursion (though harmless).
2015-10-07 11:57:59 -07:00
a3db7d0728
Refactor: move network COMs out of Network and into Peer in prep for tightening up multicast lookup and other things.
2015-10-01 11:11:52 -07:00
f69454ec98
(1) Make ZT_ naming convention consistent (get rid of ZT1_), (2) Make local interface a full sockaddr_storage instead of an int identifier, which turns out to be better for multi-homing and other uses.
2015-09-24 16:21:36 -07:00
5986d83738
Kill more kittens.
2015-07-28 12:04:14 -07:00
b69afa010e
Disable type punning on ARM by ifdef.
2015-07-28 11:50:01 -07:00
b31071463c
Try another NAT traversal improvement.
2015-07-28 11:28:47 -07:00
d647a587a1
(1) Fix updating of network revision counter on member change.
...
(2) Go back to timestamp as certificate revision number. This is simpler
and more robust than using the network revision number for this and
forcing network revision fast-forward, which could cause some peers
to fall off the horizon when you don't want them to.
2015-07-23 17:18:20 -07:00
79e9a8bcc2
Almost everything for GitHub issue #180 except direct path map setup.
2015-07-06 15:28:48 -07:00
255320e2a6
pushDirectPaths() implementation
2015-07-06 14:39:28 -07:00
7bae95836c
Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address.
2015-06-19 10:23:25 -07:00
a425bbc673
Renamed supernode to rootserver
2015-05-06 12:05:20 +02:00
cdec05af24
One second delay between NAT-t events.
2015-05-22 13:12:14 -07:00
d9006712f6
Completely factor out "desperation" from the core. I thought of a significantly simpler way to move all of this logic entirely into the containing service, liberating the core from any concern over the nature of its pipe to the outside world.
2015-05-21 15:58:26 -07:00
d0e0f5dd12
Basic OpenBSD compile fixes -- still need to update BSDEthernetTap, will do that later. Should be able to re-use FreeBSD port for OpenBSD, but we will see.
2015-05-15 08:48:53 -07:00
54954f5b88
First pass of Windows cleanup and build fixes...
2015-04-24 13:35:17 -07:00
98bcc3d4b5
Disable a few noisy TRACEs, and limit how often we confirm new paths to avoid flooding.
2015-04-15 13:15:09 -07:00
67f1f1892f
Bunch of tap stuff, IP address assignment hookups, etc.
2015-04-14 17:57:51 -07:00
e34bc961db
Add awareness of online status, and put old OS-dep utils in OSUtils.
2015-04-08 17:10:21 -07:00
49f031ccb4
Tons of refactoring, change to desperation algorithm to use max of core or link, porting over core loop code from old Node.cpp to new CAPI version, etc.
2015-04-07 19:31:11 -07:00
52c3b7c34e
Implemented empirical determination of external addressing, paritioned per scope.
2015-04-07 11:56:10 -07:00
6eb9289367
Bunch more cleanup, improvements to NAT traversal logic, finished updating Switch.
2015-04-03 16:52:53 -07:00
a69e1876f1
The concept of link desperation (escalating to less desirable transports) simplifies a ton of stuff. Loads of spaghetti logic can die since we no longer have to make these decisions down in the core.
2015-04-02 17:54:56 -07:00
8130848020
More refactoring... and update the API a bit... turns out my strategy for reducing indirect function calls also increased memcpy()s which are more expensive. This is simpler and faster.
2015-04-01 14:59:44 -07:00
36eab4f1a9
Whole heap more cleanup and refactoring...
2015-03-31 17:53:34 -07:00
93012b0ee5
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
2015-02-17 13:11:34 -08:00
b7148c107d
Rip out network environment fingerprint. This will be replaced by constant monitoring of actual external address surface.
2015-02-02 16:40:57 -08:00
b1bf3f68c3
Drop support for legacy P5 multicast, as there are fewer than 1% of these remaining on the network.
2015-02-02 16:34:01 -08:00
60fb28a90a
Cleanup, new C++ netconf code is almost ready to test!
2015-01-06 17:16:54 -08:00
4e95384ad6
Cleanup, add tristate to config code in Network, and happy new year!
2015-01-05 17:47:59 -08:00
0f505411cf
Enable legacy multicast in Constants.
2014-11-25 14:12:33 -08:00
1bd5a1ebcd
Make selftest build and run on FreeBSD 10 with gmake
2014-11-04 11:20:38 -08:00
0e84eb3852
Back off default multicast limit just a little.
2014-10-29 18:25:24 -07:00
4dec598fb8
Make multicast gather slightly more aggressive, and add total to list command in testnet.
2014-10-28 15:33:10 -07:00
03dc823ad7
(1) Back off a little on default max multicast limit since 128 is pretty bandwidth heavy, (2) add a little to default multicast rate limit since new MC algo is fairerererer, (3) decided not to involve netconf masters in multicast so take that out of list of who gets LIKEs.
2014-10-10 12:55:06 -07:00
62da7e67b6
Add some rate limiting to implicit gathers, and always send multicasts to at least one supernode so they can broadcast to old peers (temporary).
2014-10-03 22:30:10 -07:00