Commit Graph

71 Commits

Author SHA1 Message Date
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
93012b0ee5 Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware] 2015-02-17 13:11:34 -08:00
4e95384ad6 Cleanup, add tristate to config code in Network, and happy new year! 2015-01-05 17:47:59 -08:00
e7c81ef34e Turns out that needed to be a list after all. Also clean up Multicaster::gather(). 2014-10-03 22:03:19 -07:00
ae082c3cb8 Yay... now everything compiles! Getting close to testing on this. Still have not added backward compatibility support for relaying of multicasts to 0.9.X clients yet but that will be easy. Will test with heterogenous 1.0.0 clients only first. 2014-10-01 12:41:48 -07:00
8607aa7c3c Everything in for new multicast except IncomingPacket parsing... 2014-09-30 08:38:03 -07:00
431476e2e4 Some more multicast algo work... 2014-09-24 13:45:58 -07:00
557801a09e Rename PacketDecoder to much more descriptive IncomingPacket 2014-09-24 09:04:09 -07:00
d9abd4d9be Work on defining new direct broadcast multicast algorithm. 2014-09-18 18:28:14 -07:00
aee742e767 More toward GitHub issue #56 2014-04-10 16:30:15 -07:00