Daniel Skowroński
18c9dc8a06
fix RTF_MULTICAST and g++ -w
9 years ago
Daniel Skowroński
546e8a3b44
initial netbsd support in makefile/flags
9 years ago
Adam Ierymenko
d736074301
Refactor rules table in-memory structure in new NetworkConfig to permit far more rules with better space efficiency.
10 years ago
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.
10 years ago
Adam Ierymenko
6f854c8391
NetworkConfig refactor part 1
10 years ago
Adam Ierymenko
56096be8b6
Tweak new RX queue algorithm to "expire" old entries to prevent always needing to traverse the whole queue array.
10 years ago
Adam Ierymenko
4a109658ab
More refactoring and prep for explicit interface bindings (for default route support).
10 years ago
Adam Ierymenko
1a5e7cb0cb
More tweaks to OS determination stuff.
10 years ago
Adam Ierymenko
8035afae87
Try to define ZT_NO_TYPE_PUNNING on iOS in case it wasn't.
10 years ago
Adam Ierymenko
d6a1868d0a
Refactor incoming packet (rxQueue/fragmentQueue) to eliminate variable length queues and merge queues. This is both faster and saves memory.
10 years ago
Adam Ierymenko
2aa7138373
Reduce direct ping delay back to 1m and make SelfAwareness aware of local received-on address to eliminate false symmetric classification.
10 years ago
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
...
Otherwise, local discovered routes are ignored.
Don't know what the best value would be. Taking 4 for now.
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.
...
(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.
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