134 Commits (69a438d64d527d37c588939ef3014949ec579b76)

Author SHA1 Message Date
Adam Ierymenko 63ec7e58d4 Make activity no longer a function of ping frequency, since this causes compatibility bugs when the latter was modified due to timer interactions with other versions. 10 years ago
Adam Ierymenko 4e4fd51117 boring doc stuff 10 years ago
Adam Ierymenko 05b2c0743f Tighten up dead path detection. Should now auto-detect dead paths in less than 10 seconds at a very small cost in ECHO requests (or HELLOs for older peers). GitHib issue #272 10 years ago
Adam Ierymenko d8143a5e18 Implement first pass on rapid dead path detection, and increment version to 1.1.3 (dev) 10 years ago
Adam Ierymenko 436c1fac1d Selectively move over changes from "edge" to "dev" excluding netcon. 10 years ago
Adam Ierymenko 82aa3f59d6 Fix bug in ECHO handling (OK was invalid!), and use ECHO on newer peers for path confirmation. Also get rid of path confirmation circuit breaker since this causes issues with some peers and should be done more intelligently anyway. 10 years ago
Janjaap Bos e6808c69f8 Increase maximum number of paths per IP scope to 4 10 years ago
Adam Ierymenko b94335f115 Increase WHOIS retry delay slightly to allow for global cluster latency (e.g. 300+ms from New York to Johhannesburg) 10 years ago
Adam Ierymenko 7fbe2f7adf Tweak some more timings for better reliability. 11 years ago
Adam Ierymenko 60ce886605 Tweak some timings for better reliability. 11 years ago
Adam Ierymenko b6725c4415 Optimize AntiRecursion. 11 years ago
Adam Ierymenko da93712846 Clean up PUSH_DIRECT_PATH limits a bit more and make them a bit smarter. 11 years ago
Adam Ierymenko cdc99bfee1 Add a circuit breaker for VERB_PUSH_DIRECT_PATHS. 11 years ago
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. 11 years ago
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) 11 years ago
Adam Ierymenko 62db18b6dd Lessen this limit just a bit to make cluster settle faster. 11 years ago
Adam Ierymenko 5ce3aac929 Add rate limit on receive of DIRECT_PATH_PUSH to prevent DOS exploitation. 11 years ago
Adam Ierymenko 2debde3451 GitHub issue #235, and I also see no reason not to communicate with people from other Worlds. 11 years ago
Adam Ierymenko 619e113748 Work in progress on Cluster for new root infrastructure, multi-homing. 11 years ago
Adam Ierymenko 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). 11 years ago
Adam Ierymenko a3db7d0728 Refactor: move network COMs out of Network and into Peer in prep for tightening up multicast lookup and other things. 11 years ago
Adam Ierymenko 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. 11 years ago
Adam Ierymenko a8d7a31327 Integrate arp into NetconEthernetTap. 11 years ago
Adam Ierymenko 5986d83738 Kill more kittens. 11 years ago
Adam Ierymenko b69afa010e Disable type punning on ARM by ifdef. 11 years ago
Adam Ierymenko b31071463c Try another NAT traversal improvement. 11 years ago
Adam Ierymenko d647a587a1 (1) Fix updating of network revision counter on member change. 11 years ago
Adam Ierymenko 79e9a8bcc2 Almost everything for GitHub issue #180 except direct path map setup. 11 years ago
Adam Ierymenko 255320e2a6 pushDirectPaths() implementation 11 years ago
Adam Ierymenko 7bae95836c Root server terminology cleanup, and tighten up a security check by checking full identity of peers instead of just address. 11 years ago
Adam Ierymenko cdec05af24 One second delay between NAT-t events. 11 years ago
Adam Ierymenko 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. 11 years ago
Adam Ierymenko 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. 11 years ago
Kees Bos a425bbc673 Renamed supernode to rootserver 11 years ago
Adam Ierymenko 54954f5b88 First pass of Windows cleanup and build fixes... 11 years ago
Adam Ierymenko 98bcc3d4b5 Disable a few noisy TRACEs, and limit how often we confirm new paths to avoid flooding. 11 years ago
Adam Ierymenko 67f1f1892f Bunch of tap stuff, IP address assignment hookups, etc. 11 years ago
Adam Ierymenko e34bc961db Add awareness of online status, and put old OS-dep utils in OSUtils. 11 years ago
Adam Ierymenko 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. 11 years ago
Adam Ierymenko 52c3b7c34e Implemented empirical determination of external addressing, paritioned per scope. 11 years ago
Adam Ierymenko 6eb9289367 Bunch more cleanup, improvements to NAT traversal logic, finished updating Switch. 11 years ago
Adam Ierymenko 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. 11 years ago
Adam Ierymenko 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. 11 years ago
Adam Ierymenko 36eab4f1a9 Whole heap more cleanup and refactoring... 11 years ago
Adam Ierymenko 93012b0ee5 Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware] 11 years ago
Adam Ierymenko b7148c107d Rip out network environment fingerprint. This will be replaced by constant monitoring of actual external address surface. 11 years ago
Adam Ierymenko b1bf3f68c3 Drop support for legacy P5 multicast, as there are fewer than 1% of these remaining on the network. 11 years ago
Adam Ierymenko 60fb28a90a Cleanup, new C++ netconf code is almost ready to test! 11 years ago
Adam Ierymenko 4e95384ad6 Cleanup, add tristate to config code in Network, and happy new year! 11 years ago
Adam Ierymenko 0f505411cf Enable legacy multicast in Constants. 11 years ago