Commit graph

  • d9fd68f18c
    Fix build Neil Alexander 2020-07-06 14:21:28 +01:00
  • a4a346c498
    Merge branch 'develop' into future Neil Alexander 2020-07-06 14:16:38 +01:00
  • 48f008a8e2
    Implement Core.RemovePeer method (#699) (#709) George 2020-07-06 09:14:34 -04:00
  • f8fc5ced91 Set default conf file on FreeBSD to /usr/local/etc/yggdrasil.conf yujiri8 2020-07-03 02:30:45 +00:00
  • ae8099819e
    Remove double-block on router actor Neil Alexander 2020-07-02 14:01:51 +01:00
  • 326fdd4cf9
    Tweaks Neil Alexander 2020-07-02 13:39:38 +01:00
  • 7b0d315675
    Resolve if session doesn't exist when writing to PacketConn Neil Alexander 2020-07-02 13:32:22 +01:00
  • 0f19807e16
    Don't call createSession twice Neil Alexander 2020-07-02 13:28:33 +01:00
  • 4dfddd804f
    Read callback, other tweaks Neil Alexander 2020-07-01 20:17:38 +01:00
  • 41ce47d6d7
    Create a session on write if one does not exist Neil Alexander 2020-07-01 19:41:01 +01:00
  • aed13e6d50
    Initial work on net.PacketConn Neil Alexander 2020-07-01 19:18:50 +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 Arceliar 2020-06-06 12:30:54 -05:00
  • b6f21754ce Implement Core.RemovePeer method (#699) George 2020-06-02 09:42:12 -04:00
  • 5101205866
    Tidy up somewhat Neil Alexander 2020-05-31 22:35:57 +01:00
  • 872a6d18e8
    Handle addresses Neil Alexander 2020-05-31 20:14:23 +01:00
  • e59756224f
    multicast, use the prebuilt interface map when checking active listeners Arceliar 2020-05-31 11:39:32 -05:00
  • 6995b989e3
    Track addresses Neil Alexander 2020-05-31 18:30:03 +01:00
  • 153a7a5768
    Tweaks Neil Alexander 2020-05-31 18:09:13 +01:00
  • 53ab715fb4
    Store interface info Neil Alexander 2020-05-31 17:55:57 +01:00
  • de06b4656a
    Subscribe to link changes from netlink Neil Alexander 2020-05-31 17:48:54 +01:00
  • c48c0a8de0 multicast, use the prebuilt interface map when checking active listeners Arceliar 2020-05-31 11:39:32 -05:00
  • aec82d7a39
    Merge pull request #702 from Arceliar/switch Arceliar 2020-05-30 18:39:43 -05:00
  • a1856258a9
    Merge pull request #704 from Arceliar/queues Arceliar 2020-05-30 18:39:33 -05:00
  • 35e7542889
    Merge pull request #706 from Arceliar/buffers Arceliar 2020-05-30 18:39:24 -05:00
  • c83b070c69 remove old switch lookup functions Arceliar 2020-05-30 13:12:49 -05:00
  • 0f28862e99 remove unused sequence number from switch Arceliar 2020-05-30 10:48:59 -05:00
  • 5e170e22e1 more switch fixes Arceliar 2020-05-30 10:47:54 -05:00
  • 3dc2242712 fix handling of keepAliveTimer and blocked state in link.go Arceliar 2020-05-30 10:32:15 -05:00
  • 8775075c18 debugging Arceliar 2020-05-27 19:35:19 -05:00
  • 905c28f7b2 fix some issues with the rewritten switch lookup tables Arceliar 2020-05-27 19:31:17 -05:00
  • 1df305d31c simplify how blocking is detected and packets are dequeued Arceliar 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 Arceliar 2020-05-25 20:09:57 -05:00
  • 674d8b58b6 get things compiling again Arceliar 2020-05-25 19:27:17 -05:00
  • 152e9057a0 Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future Arceliar 2020-05-25 19:25:05 -05:00
  • ed3bf5ef07
    Merge pull request #705 from Arceliar/bugfix Arceliar 2020-05-25 19:24:34 -05:00
  • 85eec5ba8e tcp ygg-over-ygg debug logging Arceliar 2020-05-25 19:13:37 -05:00
  • 8345ae1fa3 don't allow ygg tcp connections to/from a local ygg address Arceliar 2020-05-25 19:08:04 -05:00
  • dbc3b9b4c4
    Merge pull request #701 from Arceliar/buffers Arceliar 2020-05-25 16:30:43 -05:00
  • 366a8ba3dd Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future Arceliar 2020-05-25 16:28:12 -05:00
  • 45810fa184
    Merge pull request #703 from Arceliar/dht Neil Alexander 2020-05-25 22:18:00 +01:00
  • 895bd681a1
    Merge pull request #700 from Arceliar/multicast Neil Alexander 2020-05-25 22:17:50 +01:00
  • 8cca565ac4
    Update go.mod/go.sum for yggdrasil-extras for iOS builds Neil Alexander 2020-05-25 22:08:53 +01:00
  • 1f65ffb310 work-in-progress heap-based queue structure Arceliar 2020-05-25 16:07:56 -05:00
  • 761ae531cb work-in-progress faster queue logic Arceliar 2020-05-25 15:19:32 -05:00
  • eefabb5f9f disregard nodes if they're unimportant, even if they're already in the DHT Arceliar 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 Arceliar 2020-05-25 12:23:38 -05:00
  • f9bc0b7aee use a more elaborate precomputed lookup table from the switch Arceliar 2020-05-25 11:49:25 -05:00
  • 38dcbb1e2f cleaner way to handle seq/idle checks for the peer Arceliar 2020-05-24 17:49:48 -05:00
  • 4382368b08 make sure the peer isn't idle before entering drop mode Arceliar 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 Arceliar 2020-05-24 17:24:50 -05:00
  • 7778a47a8f fix darwin compile problem Arceliar 2020-05-24 15:46:18 -05:00
  • 98816f34b2 don't spam calls to net.Interfaces and net.Interface.Addrs (hopefully) Arceliar 2020-05-24 15:24:39 -05:00
  • 1e471e3712 back to master's version of multicast, lets try rewriting it again Arceliar 2020-05-24 14:43:38 -05:00
  • c2d6e9e8f1 close listener when a multicast interface is removed Arceliar 2020-05-24 14:09:06 -05:00
  • 28d6e3e605
    Merge pull request #693 from Arceliar/buffers Arceliar 2020-05-24 09:41:20 -05:00
  • eefa49708e Merge branch 'future' of https://github.com/yggdrasil-network/yggdrasil-go into buffers Arceliar 2020-05-24 09:12:35 -05:00
  • 0a10a3d263
    Merge pull request #692 from Arceliar/updates Arceliar 2020-05-24 09:09:00 -05:00
  • 0188f14caa Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future Arceliar 2020-05-23 14:08:31 -05:00
  • 77ded84ea5 simplify routerInterface Arceliar 2020-05-23 12:21:23 -05:00
  • f2b9e95895 simplify routerInterface Arceliar 2020-05-23 12:21:01 -05:00
  • 07206b5d46 resolve merge conflicts Arceliar 2020-05-23 11:33:37 -05:00
  • 169b8747d4
    Merge pull request #696 from Arceliar/bugfix Arceliar 2020-05-23 11:24:03 -05:00
  • 7063ddcc73 slightly cleaner fix to conn String deadlock issue Arceliar 2020-05-23 11:16:03 -05:00
  • bc48e4bb80 fix deadlock in conn (unsafe use of phony.Block) Arceliar 2020-05-23 11:11:11 -05:00
  • 59896f17fd more cleanup Arceliar 2020-05-23 10:28:57 -05:00
  • ef1e506a0c work-in-progress on more cleanup Arceliar 2020-05-23 10:23:55 -05:00
  • 59c5644a52 some peer/link cleanup Arceliar 2020-05-23 10:08:23 -05:00
  • cf2edc99d1 correctly set peer.max Arceliar 2020-05-17 13:32:58 -05:00
  • d43b93f60a safer check for the queues if we're blocked on a send, should work even if we're blocked on a link packet send Arceliar 2020-05-17 13:23:15 -05:00
  • ff3c8cb687 less aggresive queue size reduction Arceliar 2020-05-17 12:58:57 -05:00
  • d96ae156a1 slight change to peer function names/args Arceliar 2020-05-17 12:27:43 -05:00
  • 7720e169f2 when we detect we're blocked, only drop packets often enough to make sure the existing queue's size is non-increasing, and always drop the worst packet from a random flow with odds based on the total size of packets queued for that flow Arceliar 2020-05-17 12:09:40 -05:00
  • 6e92af1cd2 re-enable a minimum queue size of ~1 big packet Arceliar 2020-05-17 08:49:40 -05:00
  • 0dcc555eab cleaner startup/shutdown of the link writer's worker Arceliar 2020-05-17 08:34:22 -05:00
  • 15ac2595aa use a dedicated per-stream writer goroutine, send messages to it over a 1-buffered channel, this eliminates most of the false positive blocking that causes drops Arceliar 2020-05-17 08:22:02 -05:00
  • 527d443916 move where the queue size check before dropping would occur Arceliar 2020-05-17 07:21:09 -05:00
  • 62b9fab5f8 more work-in-progress, debugging why things are dropping so often Arceliar 2020-05-16 18:56:04 -05:00
  • b17a035a05 workarounds to dropping being too aggressive Arceliar 2020-05-16 17:40:11 -05:00
  • b132560f65 it helps to actually run the notifyQueued stuff... Arceliar 2020-05-16 17:24:26 -05:00
  • 052de98f12 work-in-progress on buffering overhaul Arceliar 2020-05-16 17:07:47 -05:00
  • dc128121e5 update switch blockPeer/unblockPeer logic and dht reset when coords change Arceliar 2020-05-16 09:25:57 -05:00
  • 57cad7eabc Accept some linter suggestions Ryan Westlund 2020-05-14 19:49:59 -04:00
  • 4c00928400
    Response filtering improved Neil Alexander 2020-05-10 13:19:18 +01:00
  • 21fa0eb4ff
    Response filtering Neil Alexander 2020-05-10 13:17:23 +01:00
  • 2dbbfe7f10
    Fix panic in parseTXTFields Neil Alexander 2020-05-10 12:43:02 +01:00
  • e93612b522
    Fix goroutine leak Neil Alexander 2020-05-10 12:08:48 +01:00
  • cd93bf9e7b
    Use mDNS pinning Neil Alexander 2020-05-09 22:27:16 +01:00
  • bca716d0c5
    Remove some output logging Neil Alexander 2020-05-09 22:18:49 +01:00
  • 1d359d4fe8
    Use listener interface name Neil Alexander 2020-05-09 22:10:25 +01:00
  • 8c741e0e5a
    Lookup by domain Neil Alexander 2020-05-09 21:57:08 +01:00
  • 7453c1cc06
    Add peers from mDNS adverts, add separate config option Neil Alexander 2020-05-09 21:34:15 +01:00
  • cb101d9ba7 README: mention Nix package Lorenzo Manacorda 2020-05-09 18:38:38 +02:00
  • 8d00461cf8
    Initial pass at mDNS support (receiving does not work yet) Neil Alexander 2020-05-09 16:44:10 +01:00
  • dd548fc0fa
    Merge pull request #685 from yggdrasil-network/neilalexander/pinning Arceliar 2020-05-09 07:09:15 -05:00
  • f70b2ebcea
    Fix bad check Neil Alexander 2020-05-09 12:49:02 +01:00
  • 2a2ad76479
    Use maps instead of slices Neil Alexander 2020-05-09 12:38:20 +01:00
  • 433e392bdf Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into future Arceliar 2020-05-09 06:13:52 -05:00
  • a59fd2a489
    Merge branch 'develop' into neilalexander/pinning Neil Alexander 2020-05-09 12:12:24 +01:00
  • d0f2d889af
    Merge pull request #687 from yggdrasil-network/neilalexander/hjson Neil Alexander 2020-05-09 12:12:12 +01:00
  • 9dfe0f4b4b
    Fix hjson dependency? Neil Alexander 2020-05-09 12:08:29 +01:00