d9432f2f1e
cleanup
2019-07-29 10:19:20 -07:00
0e597191b8
Updated licenses for 2019
2019-01-14 10:25:53 -08:00
553101e8b5
merge dev
2018-08-09 11:31:37 -07:00
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
28cb40529d
Rough draft of fq-codel implementation
2018-07-10 16:50:12 -07:00
6d8e1e8783
More cleanup of old stuff.
2018-01-26 21:34:56 -05:00
6fbd15f8b2
cleanup
2018-01-08 15:56:53 -08:00
65c07afe05
Copyright updates for 2018.
2018-01-08 14:33:28 -08:00
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
180049a277
Fix pointer bug.
2017-08-23 16:55:22 -07:00
6ee201865b
Clean up WHOIS code.
2017-08-23 16:42:17 -07:00
b1d94c9f93
Performance improvement to RX queue ring buffer.
2017-08-23 15:19:26 -07:00
e3cf756785
Make rxQueue lock-free using an atomic counter ring buffer.
2017-08-08 13:21:10 -07:00
b9e1d53d7a
Minor cleanup.
2017-07-17 14:21:09 -07:00
f18158a52d
.
2017-07-06 11:45:22 -07:00
1b68d6dbdc
License header update.
2017-04-27 20:47:25 -07:00
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
d9e4ba1280
Eliminate a little copypasta.
2017-02-04 00:04:44 -08:00
dcb1233b0d
Slight refactor to RENEDEZVOUS sending code for federation.
2017-02-03 23:54:02 -08:00
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
39333c9e8e
Modify unite() to deal with a second layer of upstreams.
2016-11-17 16:59:04 -08:00
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
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
284e5d83b5
Fix some broken TRACEs and a tiny reorder in a few ifs.
2016-03-28 12:15:24 -07:00
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
4e4fd51117
boring doc stuff
2016-01-12 14:04:55 -08:00
704205c5f7
Dead code removal.
2016-01-12 09:33:14 -08:00
436c1fac1d
Selectively move over changes from "edge" to "dev" excluding netcon.
2015-12-21 16:15:39 -08:00
9490b1f136
Try prioritizing cluster-send over direct send in cluster mode -- may improve cluster relaying reliability.
2015-11-06 13:38:56 -08:00
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
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
367ffde00c
Plumb through localInterfaceId to track local interfaces corresponding with remote addresses.
2015-09-23 13:49:56 -07:00
85b90f122a
Final std::map<> from Switch, and add some smallish default values for hash size.
2015-09-04 15:35:43 -07:00
3dba016a93
Almost done... very few std::map<>s remaining in any spot that matters.
2015-09-04 15:21:22 -07:00
db0369e9b8
Remove way-overkill multimap from Switch.
2015-09-04 14:56:39 -07:00
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
b31071463c
Try another NAT traversal improvement.
2015-07-28 11:28:47 -07:00
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
41fc08b330
etherTypeName() is only used in Switch and only with ZT_TRACE
2015-07-07 10:06:05 -07:00
07ea4fd4f9
Fix potential bug in controller config request.
2015-07-07 10:02:48 -07:00
778c7e6e70
More cleanup to direct path push, comment fixes, etc.
2015-07-07 10:00:34 -07:00
79e9a8bcc2
Almost everything for GitHub issue #180 except direct path map setup.
2015-07-06 15:28:48 -07:00
960ceb4791
Rest of GitHub issue #140 implementation.
2015-06-01 17:50:44 -07:00
196f27f1f0
Add delay to NAT-t escalation stuff to try to address GitHub issue #167
2015-05-22 13:11:55 -07:00
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
c894710ac1
Remove Logger.hpp references.
2015-04-08 16:00:48 -07:00
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
6eb9289367
Bunch more cleanup, improvements to NAT traversal logic, finished updating Switch.
2015-04-03 16:52:53 -07:00
ee0f56355b
Send path simplification.
2015-04-03 13:14:37 -07:00
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