Adam Ierymenko
|
aa39b0dc24
|
Show paths as active or preferred in listpeers.
|
2015-12-17 11:03:39 -08:00 |
|
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)
|
2015-12-17 10:53:07 -08:00 |
|
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.
|
2015-11-09 14:25:28 -08:00 |
|
Adam Ierymenko
|
9f0f0197fe
|
More dead code removal.
|
2015-10-29 09:44:25 -07:00 |
|
Adam Ierymenko
|
a994573a43
|
Eliminate some more dead code. We may do path trust, but not like that.
|
2015-10-29 09:42:15 -07:00 |
|
Adam Ierymenko
|
51fcc75354
|
Some cleanup, and use getPeerNoCache() exclusively in Cluster.
|
2015-10-27 17:36:47 -07:00 |
|
Adam Ierymenko
|
16bc3e0398
|
Factor out RemotePath subclass of Path -- no longer needed, just cruft.
|
2015-10-27 15:00:16 -07:00 |
|
Adam Ierymenko
|
0b2e5ed499
|
Fix some broken logic in Path::reliable()
|
2015-10-19 15:11:43 -07:00 |
|
Adam Ierymenko
|
5076c49210
|
Peer serialization and related changes.
|
2015-10-01 15:40:54 -07:00 |
|
Adam Ierymenko
|
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 |
|
Adam Ierymenko
|
11ff96ba1d
|
Consider IPv6 paths reliable (no constant keepalives needed)
|
2015-09-30 15:20:08 -07:00 |
|
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.
|
2015-09-24 16:21:36 -07:00 |
|
Adam Ierymenko
|
0e5aac6a11
|
Prefer IPv6 paths if available.
|
2015-09-23 16:16:36 -07:00 |
|
Adam Ierymenko
|
0b354803f3
|
Clean up some YAGNI issues with implementation of GitHub issue #180, and make best path choice aware of path rank.
|
2015-07-13 10:03:04 -07:00 |
|
Adam Ierymenko
|
c863ff3f02
|
A bunch of comments and cleanup, including some to yesterday's direct path pushing changes. Move path viability check to one place, and stop trying to use link-local addresses since they are not reliable.
|
2015-07-07 08:54:48 -07:00 |
|
Adam Ierymenko
|
235f4762b7
|
Plumbing for local interface addresses -- GitHub issue #180
|
2015-07-06 15:51:04 -07:00 |
|
Adam Ierymenko
|
93bb934d4e
|
Some cleanup, docs, and Path -> Path > RemotePath refactor.
|
2015-07-06 14:08:13 -07:00 |
|
Adam Ierymenko
|
feddd946f9
|
For curiosity add Salsa20/8 to benchmarks.
|
2015-07-06 13:51:25 -07:00 |
|
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.
|
2015-05-21 15:58:26 -07:00 |
|
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.
|
2015-04-07 19:31:11 -07:00 |
|
Adam Ierymenko
|
52c3b7c34e
|
Implemented empirical determination of external addressing, paritioned per scope.
|
2015-04-07 11:56:10 -07:00 |
|
Adam Ierymenko
|
6eb9289367
|
Bunch more cleanup, improvements to NAT traversal logic, finished updating Switch.
|
2015-04-03 16:52:53 -07:00 |
|
Adam Ierymenko
|
ee0f56355b
|
Send path simplification.
|
2015-04-03 13:14:37 -07:00 |
|
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.
|
2015-04-02 17:54:56 -07:00 |
|
Adam Ierymenko
|
93012b0ee5
|
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
|
2015-02-17 13:11:34 -08:00 |
|
Adam Ierymenko
|
4e95384ad6
|
Cleanup, add tristate to config code in Network, and happy new year!
|
2015-01-05 17:47:59 -08:00 |
|
Adam Ierymenko
|
0e47f13f14
|
Simplify locking semantics some more to address a deadlock.
|
2014-10-21 10:42:04 -07:00 |
|
Adam Ierymenko
|
4e9280fc7a
|
Rip out dead "firewall opener" code, replace in pipeline with anti-symmetric-NAT tactics.
|
2014-09-05 16:23:24 -07:00 |
|
Adam Ierymenko
|
158002d2d1
|
Tweak some timings and stuff.
|
2014-04-03 16:19:41 -07:00 |
|
Adam Ierymenko
|
6ab95e0391
|
Get : out of Path.toString() since this will conflict with : in IPv6 IPs.
|
2014-04-01 08:52:52 -07:00 |
|
Adam Ierymenko
|
f13493edb2
|
Oops... turns out we need to differentiate incoming from outgoing TCP and indeed learn incoming TCP paths. Otherwise the recipient of a TCP connection does not know to reply via TCP! Heh.
|
2014-03-31 22:23:55 -07:00 |
|
Adam Ierymenko
|
8e587ae481
|
Clean dead paths from peers.
|
2014-03-31 11:41:14 -07:00 |
|
Adam Ierymenko
|
acb056e3b1
|
Small readability fix.
|
2014-03-28 21:04:15 -07:00 |
|
Adam Ierymenko
|
e6b23059ac
|
Change the way TCP failover is invoked.
|
2014-03-26 16:44:58 -07:00 |
|
Adam Ierymenko
|
33ad3deaee
|
Builds with new Path code.
|
2014-03-21 13:46:55 -07:00 |
|
Adam Ierymenko
|
ba3f04deed
|
Work in progress: refactoring paths, adding TCP fallback.
|
2014-03-20 20:07:35 -07:00 |
|
Adam Ierymenko
|
45e823d27c
|
Reworking of paths in Peer work-in-progress, and TCP connect support in SocketManager. Also add FD_SETSIZE checking for the default select implementation of sockets.
|
2014-03-20 18:49:33 -07:00 |
|