summaryrefslogtreecommitdiff
path: root/node/Switch.hpp
AgeCommit message (Collapse)Author
2017-08-23Performance improvement to RX queue ring buffer.Adam Ierymenko
2017-08-08Make rxQueue lock-free using an atomic counter ring buffer.Adam Ierymenko
2017-07-17Minor cleanup.Adam Ierymenko
2017-07-06.Adam Ierymenko
2017-04-27License header update.Adam Ierymenko
2017-03-27Add thread PTR that gets passed through the entire ZT core call stack and ↵Adam Ierymenko
then passed to handler functions resulting from a call.
2017-02-04Eliminate a little copypasta.Adam Ierymenko
2017-02-03Slight refactor to RENEDEZVOUS sending code for federation.Adam Ierymenko
2017-02-01Minor send path refactor to make packet I/O work on clusters if they are ↵Adam Ierymenko
members of networks. Also fix a crash if compiled in cluster mode but no cluster is enabled.
2016-11-17Modify unite() to deal with a second layer of upstreams.Adam Ierymenko
2016-08-09More cleanup and removal of cruft due to obsolete network-specific relays ↵Adam Ierymenko
(will be replaced with federation stuff).
2016-04-06Tweak new RX queue algorithm to "expire" old entries to prevent always ↵Adam Ierymenko
needing to traverse the whole queue array.
2016-03-28Fix some broken TRACEs and a tiny reorder in a few ifs.Adam Ierymenko
2016-03-18Refactor incoming packet (rxQueue/fragmentQueue) to eliminate variable ↵Adam Ierymenko
length queues and merge queues. This is both faster and saves memory.
2016-01-12boring doc stuffAdam Ierymenko
2016-01-12Dead code removal.Adam Ierymenko
2015-12-21Selectively move over changes from "edge" to "dev" excluding netcon.Adam Ierymenko
2015-11-06Try prioritizing cluster-send over direct send in cluster mode -- may ↵Adam Ierymenko
improve cluster relaying reliability.
2015-10-27Change how cluster relays packets -- just PROXY_UNITE and then send packet ↵Adam Ierymenko
via normal ZeroTier front plane -- more efficient and eliminates fragmentation issues.
2015-09-24(1) Make ZT_ naming convention consistent (get rid of ZT1_), (2) Make local ↵Adam Ierymenko
interface a full sockaddr_storage instead of an int identifier, which turns out to be better for multi-homing and other uses.
2015-09-23Plumb through localInterfaceId to track local interfaces corresponding with ↵Adam Ierymenko
remote addresses.
2015-09-04Final std::map<> from Switch, and add some smallish default values for hash ↵Adam Ierymenko
size.
2015-09-04Almost done... very few std::map<>s remaining in any spot that matters.Adam Ierymenko
2015-09-04Remove way-overkill multimap from Switch.Adam Ierymenko
2015-09-04Starting in on Switch... kill map in defrag queue, which will probably ↵Adam Ierymenko
improve performance pretty decently under high load with lots of peers.
2015-07-28Try another NAT traversal improvement.Adam Ierymenko
2015-07-13Put back legacy code to listen for LAN announcements to support same network ↵Adam Ierymenko
location with pre-1.0.4 clients.
2015-07-07etherTypeName() is only used in Switch and only with ZT_TRACEAdam Ierymenko
2015-07-07Fix potential bug in controller config request.Adam Ierymenko
2015-07-07More cleanup to direct path push, comment fixes, etc.Adam Ierymenko
2015-07-06Almost everything for GitHub issue #180 except direct path map setup.Adam Ierymenko
2015-06-01Rest of GitHub issue #140 implementation.Adam Ierymenko
2015-05-22Add delay to NAT-t escalation stuff to try to address GitHub issue #167Adam Ierymenko
2015-05-21Completely factor out "desperation" from the core. I thought of a ↵Adam Ierymenko
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-04-08Remove Logger.hpp references.Adam Ierymenko
2015-04-07Tons of refactoring, change to desperation algorithm to use max of core or ↵Adam Ierymenko
link, porting over core loop code from old Node.cpp to new CAPI version, etc.
2015-04-03Bunch more cleanup, improvements to NAT traversal logic, finished updating ↵Adam Ierymenko
Switch.
2015-04-03Send path simplification.Adam Ierymenko
2015-04-02The concept of link desperation (escalating to less desirable transports) ↵Adam Ierymenko
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-02-17Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]Adam Ierymenko
2015-01-05Cleanup, add tristate to config code in Network, and happy new year!Adam Ierymenko
2014-10-03Turns out that needed to be a list after all. Also clean up ↵Adam Ierymenko
Multicaster::gather().
2014-10-01Yay... now everything compiles! Getting close to testing on this. Still have ↵Adam Ierymenko
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-09-30Everything in for new multicast except IncomingPacket parsing...Adam Ierymenko
2014-09-24Some more multicast algo work...Adam Ierymenko
2014-09-24Rename PacketDecoder to much more descriptive IncomingPacketAdam Ierymenko
2014-09-18Work on defining new direct broadcast multicast algorithm.Adam Ierymenko
2014-04-10More toward GitHub issue #56Adam Ierymenko
2014-03-31Oops... turns out we need to differentiate incoming from outgoing TCP and ↵Adam Ierymenko
indeed learn incoming TCP paths. Otherwise the recipient of a TCP connection does not know to reply via TCP! Heh.
2014-03-19IPC changes and SocketManager changes all build!Adam Ierymenko