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
|
4c455876f9
|
Revise peer path weighting to always prioritize cluster-optimal paths.
|
10 years ago |
Adam Ierymenko
|
0c951b6e56
|
More tweaks to new symmetric NAT buster, and stop using old iterative method since this supersedes it.
|
10 years ago |
Adam Ierymenko
|
4e4fd51117
|
boring doc stuff
|
10 years ago |
Adam Ierymenko
|
3883ac08c7
|
Docs and cleanup.
|
10 years ago |
Adam Ierymenko
|
740eb6ebc4
|
Simplify Peer locking to eliminate deadlock with new path recursion check code (and also probably improve performance).
|
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
|
2160164e8c
|
(1) Get rid of path sorting and just scan them, since sorting may have been a premature optimization that introduced a regression and path instability in a few edge cases, and (2) do not attempt to contact remote paths received via PUSH_DIRECT_PATH if we already have that path and it is already active (dumb, should have done this originally)
|
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 |
Adam Ierymenko
|
ceaef19fb7
|
Fix for GitHub issue #260 -- fix for (non-exploitable) crash in network preferred relay code
|
10 years ago |
Adam Ierymenko
|
2cc50bdb10
|
Try bringing back TTL escalation -- may help with Docker (IP-MASQ) type NAT
|
11 years ago |
Adam Ierymenko
|
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.
|
11 years ago |
Adam Ierymenko
|
5f39d5b7ea
|
Further pare down Cluster messaging and rename some stuff.
|
11 years ago |
Adam Ierymenko
|
4e9d430476
|
Make root and relay selection somewhat more robust.
|
11 years ago |
Adam Ierymenko
|
7fbe2f7adf
|
Tweak some more timings for better reliability.
|
11 years ago |
Adam Ierymenko
|
883c84bdb9
|
Tweak some timings, and remove some dead code.
|
11 years ago |
Adam Ierymenko
|
0fd15d9cf3
|
Fix inverted sense bug.
|
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
|
16bc3e0398
|
Factor out RemotePath subclass of Path -- no longer needed, just cruft.
|
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
|
cc4d0199e7
|
Fix vProto init.
|
11 years ago |
Adam Ierymenko
|
f9f60f89d9
|
Peer save/restore fix.
|
11 years ago |
Adam Ierymenko
|
5ce3aac929
|
Add rate limit on receive of DIRECT_PATH_PUSH to prevent DOS exploitation.
|
11 years ago |
Adam Ierymenko
|
2229e91b57
|
IPv6 support fixes.
|
11 years ago |
Adam Ierymenko
|
619e113748
|
Work in progress on Cluster for new root infrastructure, multi-homing.
|
11 years ago |
Adam Ierymenko
|
5d2f523e81
|
World stuff...
|
11 years ago |
Adam Ierymenko
|
76a95dc58f
|
The return of peer peristence.
|
11 years ago |
Adam Ierymenko
|
5076c49210
|
Peer serialization and related changes.
|
11 years ago |
Adam Ierymenko
|
64bf3ffe6c
|
Mutex cleanup.
|
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
|
367ffde00c
|
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
|
11 years ago |
Adam Ierymenko
|
7b8ce16057
|
Another std::map<> dies.
|
11 years ago |
Adam Ierymenko
|
0b354803f3
|
Clean up some YAGNI issues with implementation of GitHub issue #180, and make best path choice aware of path rank.
|
11 years ago |
Adam Ierymenko
|
778c7e6e70
|
More cleanup to direct path push, comment fixes, etc.
|
11 years ago |
Adam Ierymenko
|
255320e2a6
|
pushDirectPaths() implementation
|
11 years ago |
Adam Ierymenko
|
93bb934d4e
|
Some cleanup, docs, and Path -> Path > RemotePath refactor.
|
11 years ago |
Adam Ierymenko
|
5341e32729
|
Fix to GitHub issue #140 -- network preferred relays. Also go ahead and allow RENDEZVOUS from regular peers.
|
11 years ago |
Adam Ierymenko
|
5bc89034bc
|
Always ping / contact network preferred relays (if any).
|
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
|
1213073916
|
Apple auto-update stuff, now for Windows.
|
11 years ago |
Adam Ierymenko
|
9279bac385
|
Fix deadlock in SelfAwareness by deferring reconnects.
|
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
|
5e331d6733
|
Restrict unite() to desperation==0 since NAT-t only works right now with direct links.
|
11 years ago |
Adam Ierymenko
|
ccc73b920e
|
Node peer list function for CAPI, and some Peer cleanup.
|
11 years ago |
Adam Ierymenko
|
c894710ac1
|
Remove Logger.hpp references.
|
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 |