Adam Ierymenko
1982071d46
1.14.0 version bump for Linux and macOS, date update.
2024-03-19 14:38:48 -07:00
Brenton Bostick
f73e51e94c
Brenton/curly braces ( #1971 )
...
* fix formatting
* properly adjust various lines
breakup multiple statements onto multiple lines
* insert {} around if, for, etc.
2023-05-01 11:48:16 -07:00
Grant Limberg
595e033776
Outgoing Packet Metrics ( #1980 )
...
add tx/rx labels to packet counters and add metrics for outgoing packets
2023-04-28 14:24:19 -07:00
Joseph Henry
39f3f5b2d9
User-configurable physical MTU for individual links
...
This patch allows users to specify the physical layer MTU for individual links
when in multipath mode. For example:
{
"settings":
{
"defaultBondingPolicy": "custom-balance-xor",
"policies":
{
"custom-balance-xor":
{
"basePolicy": "balance-xor",
"failoverInterval": 5000,
"links": {
"weird_5g_link": { "mtu": 1300 },
"enp5s0": { "mtu": 1400 }
}
}
}
}
}
2023-01-12 07:12:19 +01:00
Adam Ierymenko
06730c7d1d
BSL date bump
2020-08-20 12:51:39 -07:00
Joseph Henry
a50e8e9878
Add Bonds, Slaves, and Flows
2020-05-12 01:35:48 -07:00
Joseph Henry
de9cfbe9b0
Merge dev into multipath
2020-05-12 00:08:52 -07:00
Adam Ierymenko
52a166a71f
Relicense: GPLv3 -> ZeroTier BSL 1.1
2019-08-23 09:23:39 -07:00
Joseph Henry
5453cab22b
Added flow-awareness check for policies, more work on ZT_MULTIPATH_ACTIVE_BACKUP
2019-08-20 18:50:38 -07:00
Joseph Henry
0634214f2c
Added notion of Flows
2019-08-19 21:52:33 -07:00
Adam Ierymenko
d9432f2f1e
cleanup
2019-07-29 10:19:20 -07:00
Joseph Henry
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
Adam Ierymenko
553101e8b5
merge dev
2018-08-09 11:31:37 -07:00
Adam Ierymenko
5b114791e5
Fix a bug that caused a crash on empty HTTP requests (localhost only) and add a lightweight lock to the RX queue to prevent possible threads stepping on each other in parallel receive paths.
2018-07-20 14:01:58 -07:00
Joseph Henry
28cb40529d
Rough draft of fq-codel implementation
2018-07-10 16:50:12 -07:00
Adam Ierymenko
6d8e1e8783
More cleanup of old stuff.
2018-01-26 21:34:56 -05:00
Adam Ierymenko
6fbd15f8b2
cleanup
2018-01-08 15:56:53 -08:00
Adam Ierymenko
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08: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
180049a277
Fix pointer bug.
2017-08-23 16:55:22 -07:00
Adam Ierymenko
6ee201865b
Clean up WHOIS code.
2017-08-23 16:42:17 -07:00
Adam Ierymenko
b1d94c9f93
Performance improvement to RX queue ring buffer.
2017-08-23 15:19:26 -07:00
Adam Ierymenko
e3cf756785
Make rxQueue lock-free using an atomic counter ring buffer.
2017-08-08 13:21:10 -07:00
Adam Ierymenko
b9e1d53d7a
Minor cleanup.
2017-07-17 14:21:09 -07:00
Adam Ierymenko
f18158a52d
.
2017-07-06 11:45:22 -07:00
Adam Ierymenko
1b68d6dbdc
License header update.
2017-04-27 20:47: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
d9e4ba1280
Eliminate a little copypasta.
2017-02-04 00:04:44 -08:00
Adam Ierymenko
dcb1233b0d
Slight refactor to RENEDEZVOUS sending code for federation.
2017-02-03 23:54:02 -08:00
Adam Ierymenko
5dbebc513a
Minor send path refactor to make packet I/O work on clusters if they are members of networks. Also fix a crash if compiled in cluster mode but no cluster is enabled.
2017-02-01 12:00:25 -08:00
Adam Ierymenko
39333c9e8e
Modify unite() to deal with a second layer of upstreams.
2016-11-17 16:59:04 -08:00
Adam Ierymenko
e1310a764a
More cleanup and removal of cruft due to obsolete network-specific relays (will be replaced with federation stuff).
2016-08-09 15:45:26 -07:00
Adam Ierymenko
56096be8b6
Tweak new RX queue algorithm to "expire" old entries to prevent always needing to traverse the whole queue array.
2016-04-06 16:28:40 -07:00
Adam Ierymenko
284e5d83b5
Fix some broken TRACEs and a tiny reorder in a few ifs.
2016-03-28 12:15:24 -07:00
Adam Ierymenko
d6a1868d0a
Refactor incoming packet (rxQueue/fragmentQueue) to eliminate variable length queues and merge queues. This is both faster and saves memory.
2016-03-18 14:16:07 -07:00
Adam Ierymenko
4e4fd51117
boring doc stuff
2016-01-12 14:04:55 -08:00
Adam Ierymenko
704205c5f7
Dead code removal.
2016-01-12 09:33:14 -08:00
Adam Ierymenko
436c1fac1d
Selectively move over changes from "edge" to "dev" excluding netcon.
2015-12-21 16:15:39 -08:00
Adam Ierymenko
9490b1f136
Try prioritizing cluster-send over direct send in cluster mode -- may improve cluster relaying reliability.
2015-11-06 13:38:56 -08:00
Adam Ierymenko
f692cec763
Change how cluster relays packets -- just PROXY_UNITE and then send packet via normal ZeroTier front plane -- more efficient and eliminates fragmentation issues.
2015-10-27 14:04:12 -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
367ffde00c
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
2015-09-23 13:49:56 -07:00
Adam Ierymenko
85b90f122a
Final std::map<> from Switch, and add some smallish default values for hash size.
2015-09-04 15:35:43 -07:00
Adam Ierymenko
3dba016a93
Almost done... very few std::map<>s remaining in any spot that matters.
2015-09-04 15:21:22 -07:00
Adam Ierymenko
db0369e9b8
Remove way-overkill multimap from Switch.
2015-09-04 14:56:39 -07:00
Adam Ierymenko
0ab3e49be9
Starting in on Switch... kill map in defrag queue, which will probably improve performance pretty decently under high load with lots of peers.
2015-09-04 14:44:22 -07:00
Adam Ierymenko
b31071463c
Try another NAT traversal improvement.
2015-07-28 11:28:47 -07:00
Adam Ierymenko
fe20f0d7cd
Put back legacy code to listen for LAN announcements to support same network location with pre-1.0.4 clients.
2015-07-13 08:33:02 -07:00
Adam Ierymenko
41fc08b330
etherTypeName() is only used in Switch and only with ZT_TRACE
2015-07-07 10:06:05 -07:00
Adam Ierymenko
07ea4fd4f9
Fix potential bug in controller config request.
2015-07-07 10:02:48 -07:00