Adam Ierymenko
d530356055
RingBuffer<> is now templated with size, buffer is now static.
2019-03-22 14:39:52 -07:00
Adam Ierymenko
63ec19674c
.
2019-03-19 16:43:43 -07:00
Grant Limberg
d4c0349de9
Revert "#ifdef'd out multipath/QoS statistics buffers allocations for ZT_PROTOCOL_VERSION<10"
...
This reverts commit 270debb3fc
.
2019-03-11 09:44:40 -07:00
Joseph Henry
270debb3fc
#ifdef'd out multipath/QoS statistics buffers allocations for ZT_PROTOCOL_VERSION<10
2019-03-01 13:28:00 -08:00
Joseph Henry
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
Joseph Henry
bdcdccfcc3
Improved path selection, more efficient traffic allocation, lower QoS/ACK overhead
2018-06-22 16:30:20 -07:00
Joseph Henry
52264d5e28
Fixed aggregateLinkLatency(). Also changed unit for throughput from byte to bit
2018-06-14 16:48:35 -07:00
Joseph Henry
17fbb020e7
Added multipath field to zerotier-cli status output. Adjusted how path estimates are computed and cached
2018-06-14 16:34:45 -07:00
Joseph Henry
0faa655b83
Reduced how often relative path qualities and aggregate link allocations are computed
2018-06-12 16:30:46 -07:00
Joseph Henry
6fddf31db3
Improved rate limit logic for QoS/ACK packets. Also reduced how often processBackgroundPathMeasurements() is called
2018-06-12 15:24:12 -07:00
Joseph Henry
9681fedbb4
Spellcheck sweep across codebase
2018-06-07 17:25:27 -07:00
Joseph Henry
91a22a686a
Added auto-escalation to multipath if both peers support it. Improved QoS/ACK tracking. Related bug fixes
2018-06-01 18:03:59 -07:00
Joseph Henry
46a7a2be2e
Added VERB_ACK and VERB_QOS_MEASUREMENT, refined notion of path quality
2018-05-30 17:45:29 -07:00
Joseph Henry
91c8e82c42
Adjusted locking order of _paths_m for path pruning. Other minor multipath changes
2018-05-02 15:24:14 -07:00
Joseph Henry
1debe2292d
Cleanup. Misc type conversion and signedness fixes
2018-05-02 11:22:07 -07:00
Joseph Henry
6a2ba4baca
Introduced basic multipath support
2018-05-01 16:32:15 -07:00
Adam Ierymenko
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08:00
Adam Ierymenko
9c7ee5a21e
Tear out old "link quality" stuff since it is not currently used and will be done differently.
2018-01-08 13:06:24 -08:00
Adam Ierymenko
16613ab5fb
Clean up remote tracing code, add per-network remote trace settings, add remote trace level, and make local trace output readable again.
2017-12-04 14:40:10 -08:00
Adam Ierymenko
4166d8ca35
Fix a deadlock and some more work on RethinkDB (for central) integration.
2017-11-08 11:06:14 -08:00
Adam Ierymenko
fac7dc9c91
Stop duplciate IPv6 addresses due to privacy mode IPs.
2017-10-25 16:01:36 -07:00
Adam Ierymenko
508fa6a7fe
A few fixes for cluster mode.
2017-10-25 15:44:10 -07:00
Adam Ierymenko
71bdaa9508
Now with more worky.
2017-10-25 13:27:28 -07:00
Adam Ierymenko
459f1e7bfb
Refactor path stability stuff and add basic multipath support.
2017-10-25 12:42:14 -07:00
Adam Ierymenko
c7d370c17f
Delete something that turns out not to be useful. This will be handled differently.
2017-10-24 14:49:38 -07:00
Grant Limberg
b1d60df44c
timestamps changed from uint64_t to int64_t
...
There were cases in the code where time calculations and comparisons were overflowing and causing connection instability. This will keep time calculations within expected ranges.
2017-10-02 15:52:57 -07:00
Adam Ierymenko
52916eebcf
Keep attemting to upgrade direct path if path is not private to facilitate better use of LANs and backplane networks.
2017-09-14 20:56:50 -07:00
Adam Ierymenko
dd8b03a5c5
Threading issue fix?
2017-08-23 18:28:40 -07:00
Adam Ierymenko
64758c46b6
Implement peer serialization and deserialization.
2017-08-23 13:40:51 -07:00
Adam Ierymenko
b9e1d53d7a
Minor cleanup.
2017-07-17 14:21:09 -07:00
Adam Ierymenko
495c5ce81d
Bunch of remote tracing work.
2017-07-13 10:51:05 -07:00
Adam Ierymenko
dab0fb9e05
Remote trace: plumbing, replace old TRACE with calls to Trace object.
2017-07-07 16:58:05 -07:00
Adam Ierymenko
dff8c02cfe
Pull out and deprecate old cluster code. New cluster code will not be merged yet.
2017-07-06 12:33:00 -07:00
Adam Ierymenko
640ad577d1
.
2017-07-06 11:56:46 -07:00
Adam Ierymenko
f18158a52d
.
2017-07-06 11:45:22 -07:00
Adam Ierymenko
2f20258807
.
2017-07-06 10:25:36 -07:00
Adam Ierymenko
baa10c2995
.
2017-06-30 17:32:07 -07:00
Adam Ierymenko
02d18af57d
Remove Cluster.hpp
2017-06-23 16:10:26 -07:00
Adam Ierymenko
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
Adam Ierymenko
95e5345cc3
Cluster build fix.
2017-04-17 10:12:13 -07:00
Adam Ierymenko
2487a8bede
Fix for 100% cpu issue.
2017-04-17 09:14:21 -07:00
Adam Ierymenko
f1c0563c40
Fix for cluster handoff.
2017-04-14 18:02:04 -07:00
Adam Ierymenko
139c4b5633
Significant simplification to path logic.
2017-04-14 17:53:32 -07:00
Adam Ierymenko
91c9f4cb20
Fix TRACE and CLUSTER builds.
2017-03-27 17:33:25 -07:00
Adam Ierymenko
e4896b257f
Add thread PTR that gets passed through the entire ZT core call stack and then passed to handler functions resulting from a call.
2017-03-27 17:03:17 -07:00
Adam Ierymenko
a577b8d381
Update how controller handles circuit tests -- save results to filesystem.
2017-03-01 16:33:34 -08:00
Adam Ierymenko
1d39be61b2
ZeroTier now has link quality measurement. We are not using this yet but decided to put it in to prep for future QoS support and SD-WAN stuff.
2017-03-01 14:36:52 -08:00
Adam Ierymenko
2bf9145ae6
Outgoing side of packet counter for link quality reporting. Also some cleanup and a cluster mode build fix.
2017-03-01 10:22:57 -08:00
Adam Ierymenko
afba19e01c
When deciding whether to send PUSH_DIRECT_PATHS we should check global trust flag, not the one passed into receive().
2017-02-16 09:44:04 -08:00
Adam Ierymenko
e4b6611201
Only accept world updates from upstreams.
2017-02-13 09:46:34 -08:00