4
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2025-07-05 10:34:08 +00:00
Commit Graph

1318 Commits

Author SHA1 Message Date
0ac203b007 adjust how sessions learn source routes, try to recover faster if coords change (but assume the old path still works until we get a ping through that gives us a new path) 2020-11-08 05:39:30 -06:00
e19e938f64 safer pathfinding behavior 2020-11-07 15:19:09 -06:00
994c26e5f7 simplify pathfinder 2020-11-07 12:08:01 -06:00
b5cd40b801 WIP very simple insecure proof-of-concept for pathfinding and source routing 2020-11-07 10:50:55 -06:00
e2521de94d add path information to (protocol) traffic packets as they flow through the network, and a field for a reply path 2020-11-07 09:44:34 -06:00
36e4ce4b0b WIP rough implementation of the source routed part of hybrid routing, does not work if coord length is too long (>127 hops) 2020-11-07 07:10:13 -06:00
92dbb48eda add (but don't use) offset field for (protocol) traffic packets 2020-11-07 06:18:09 -06:00
1d1c6efa1f attempt to keep TCP listener alive if there's a temporary error (e.g. too many open files), just pause and retry later 2020-10-18 11:01:18 -05:00
b6c894bc01 Merge branch 'future' of https://github.com/yggdrasil-network/yggdrasil-go into develop-future 2020-10-11 07:35:28 -05:00
afebc1f93d Merge pull request #712 from Arceliar/bugfix
[future] possibly fix missing switch peer issue
2020-10-11 07:34:19 -05:00
fdb296047b Merge branch 'future' into develop-future 2020-09-27 20:28:26 +01:00
d6d2d9c19a Accept some golint suggestions (#690)
* Fixed some linter issues

* Simplified isBetter method

* Accept some linter suggestions

* Fix typo

Co-authored-by: klesomik <klesomiks@gmail.com>
Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2020-09-27 14:42:46 +01:00
48bf0ce210 Revert "Fix build"
This reverts commit e09ca6a089.
2020-09-27 13:28:13 +01:00
e09ca6a089 Fix build 2020-09-27 13:26:37 +01:00
fcb6f5ca36 Set default conf file on FreeBSD to /usr/local/etc/yggdrasil.conf (#717) 2020-09-27 13:22:49 +01:00
33e3679458 multicast, use the prebuilt interface map when checking active listeners (#707) 2020-09-27 13:16:51 +01:00
d9fd68f18c Fix build 2020-07-06 14:21:28 +01:00
a4a346c498 Merge branch 'develop' into future 2020-07-06 14:16:38 +01:00
48f008a8e2 Implement Core.RemovePeer method (#699) (#709)
Co-authored-by: George <zhoreeq@users.noreply.github.com>
2020-07-06 14:14:34 +01:00
3fded209df try to fix some possible races with how peers are added/removed and how they're blocked in the switch when they enter a bad state 2020-06-06 12:30:54 -05:00
aec82d7a39 Merge pull request #702 from Arceliar/switch
Precompute more for the switch lookup table
2020-05-30 18:39:43 -05:00
a1856258a9 Merge pull request #704 from Arceliar/queues
Faster queue logic
2020-05-30 18:39:33 -05:00
35e7542889 Merge pull request #706 from Arceliar/buffers
More buffer fine-tuning
2020-05-30 18:39:24 -05:00
c83b070c69 remove old switch lookup functions 2020-05-30 13:12:49 -05:00
0f28862e99 remove unused sequence number from switch 2020-05-30 10:48:59 -05:00
5e170e22e1 more switch fixes 2020-05-30 10:47:54 -05:00
3dc2242712 fix handling of keepAliveTimer and blocked state in link.go 2020-05-30 10:32:15 -05:00
8775075c18 debugging 2020-05-27 19:35:19 -05:00
905c28f7b2 fix some issues with the rewritten switch lookup tables 2020-05-27 19:31:17 -05:00
1df305d31c simplify how blocking is detected and packets are dequeued 2020-05-27 18:53:14 -05:00
09f9f4e8e4 use heap.Fix instead of heap.Remove + heap.Push when updating queues, this is theoretically faster 2020-05-25 20:09:57 -05:00
674d8b58b6 get things compiling again 2020-05-25 19:27:17 -05:00
152e9057a0 Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future 2020-05-25 19:25:05 -05:00
85eec5ba8e tcp ygg-over-ygg debug logging 2020-05-25 19:13:37 -05:00
8345ae1fa3 don't allow ygg tcp connections to/from a local ygg address 2020-05-25 19:08:04 -05:00
dbc3b9b4c4 Merge pull request #701 from Arceliar/buffers
More buffer fine-tuning
2020-05-25 16:30:43 -05:00
366a8ba3dd Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future 2020-05-25 16:28:12 -05:00
45810fa184 Merge pull request #703 from Arceliar/dht
Store less in the DHT
2020-05-25 22:18:00 +01:00
1f65ffb310 work-in-progress heap-based queue structure 2020-05-25 16:07:56 -05:00
761ae531cb work-in-progress faster queue logic 2020-05-25 15:19:32 -05:00
eefabb5f9f disregard nodes if they're unimportant, even if they're already in the DHT 2020-05-25 12:44:06 -05:00
40bfd207f5 don't store every node we hear from in the DHT, only ones we already know about or that are important 2020-05-25 12:23:38 -05:00
f9bc0b7aee use a more elaborate precomputed lookup table from the switch 2020-05-25 11:49:25 -05:00
38dcbb1e2f cleaner way to handle seq/idle checks for the peer 2020-05-24 17:49:48 -05:00
4382368b08 make sure the peer isn't idle before entering drop mode 2020-05-24 17:43:35 -05:00
9574308545 have the peer delay setting a max buffer size, in case things have unblocked in the mean time 2020-05-24 17:35:49 -05:00
7778a47a8f fix darwin compile problem 2020-05-24 15:46:18 -05:00
98816f34b2 don't spam calls to net.Interfaces and net.Interface.Addrs (hopefully) 2020-05-24 15:24:39 -05:00
1e471e3712 back to master's version of multicast, lets try rewriting it again 2020-05-24 14:43:38 -05:00
c2d6e9e8f1 close listener when a multicast interface is removed 2020-05-24 14:09:06 -05:00