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 年之前 |
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 年之前 |
Adam Ierymenko
|
ceaef19fb7
Fix for GitHub issue #260 -- fix for (non-exploitable) crash in network preferred relay code
|
10 年之前 |
Adam Ierymenko
|
2cc50bdb10
Try bringing back TTL escalation -- may help with Docker (IP-MASQ) type NAT
|
10 年之前 |
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.
|
10 年之前 |
Adam Ierymenko
|
5f39d5b7ea
Further pare down Cluster messaging and rename some stuff.
|
10 年之前 |
Adam Ierymenko
|
4e9d430476
Make root and relay selection somewhat more robust.
|
10 年之前 |
Adam Ierymenko
|
7fbe2f7adf
Tweak some more timings for better reliability.
|
10 年之前 |
Adam Ierymenko
|
883c84bdb9
Tweak some timings, and remove some dead code.
|
10 年之前 |
Adam Ierymenko
|
0fd15d9cf3
Fix inverted sense bug.
|
10 年之前 |
Adam Ierymenko
|
cdc99bfee1
Add a circuit breaker for VERB_PUSH_DIRECT_PATHS.
|
10 年之前 |
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.
|
10 年之前 |
Adam Ierymenko
|
16bc3e0398
Factor out RemotePath subclass of Path -- no longer needed, just cruft.
|
10 年之前 |
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)
|
10 年之前 |
Adam Ierymenko
|
cc4d0199e7
Fix vProto init.
|
10 年之前 |
Adam Ierymenko
|
f9f60f89d9
Peer save/restore fix.
|
10 年之前 |
Adam Ierymenko
|
5ce3aac929
Add rate limit on receive of DIRECT_PATH_PUSH to prevent DOS exploitation.
|
10 年之前 |
Adam Ierymenko
|
2229e91b57
IPv6 support fixes.
|
10 年之前 |
Adam Ierymenko
|
619e113748
Work in progress on Cluster for new root infrastructure, multi-homing.
|
10 年之前 |
Adam Ierymenko
|
5d2f523e81
World stuff...
|
10 年之前 |
Adam Ierymenko
|
76a95dc58f
The return of peer peristence.
|
10 年之前 |
Adam Ierymenko
|
5076c49210
Peer serialization and related changes.
|
10 年之前 |
Adam Ierymenko
|
64bf3ffe6c
Mutex cleanup.
|
10 年之前 |
Adam Ierymenko
|
a3db7d0728
Refactor: move network COMs out of Network and into Peer in prep for tightening up multicast lookup and other things.
|
10 年之前 |
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.
|
10 年之前 |
Adam Ierymenko
|
367ffde00c
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
|
10 年之前 |
Adam Ierymenko
|
7b8ce16057
Another std::map<> dies.
|
10 年之前 |
Adam Ierymenko
|
0b354803f3
Clean up some YAGNI issues with implementation of GitHub issue #180, and make best path choice aware of path rank.
|
10 年之前 |
Adam Ierymenko
|
778c7e6e70
More cleanup to direct path push, comment fixes, etc.
|
10 年之前 |
Adam Ierymenko
|
255320e2a6
pushDirectPaths() implementation
|
10 年之前 |