Arceliar
|
e5b88c0da3
|
update switch
|
2019-08-25 23:07:56 -05:00 |
|
Arceliar
|
502f2937a9
|
a couple race fixes and use timer.AfterFunc instead of sleeping goroutines or ticker in a few places
|
2019-08-25 17:00:02 -05:00 |
|
Arceliar
|
a3d4d8125b
|
make the main library reconfiguration more actor-friendly
|
2019-08-25 12:10:59 -05:00 |
|
Arceliar
|
aa30c6cc98
|
upgrade phony dependency and switch to its new interface
|
2019-08-25 10:36:09 -05:00 |
|
Arceliar
|
209d2ffea5
|
correctly call peer.sendPacketsFrom in the switch
|
2019-08-24 16:04:05 -05:00 |
|
Arceliar
|
c573170886
|
remove switch doworker loop, start a dummy loop to respond to (unused) reconfiguration instead
|
2019-08-24 15:27:56 -05:00 |
|
Arceliar
|
998c76fd8c
|
more switch migration
|
2019-08-24 15:22:46 -05:00 |
|
Arceliar
|
555b4c18d4
|
a little switch cleanup
|
2019-08-24 15:05:18 -05:00 |
|
Arceliar
|
498bc395e2
|
start migrating switch to the actor model
|
2019-08-24 14:56:33 -05:00 |
|
Arceliar
|
034fece33f
|
more peer migration
|
2019-08-24 13:15:29 -05:00 |
|
Arceliar
|
775fb535dc
|
start converting the peer struct into an actor
|
2019-08-24 12:46:24 -05:00 |
|
Arceliar
|
533da351f9
|
fix actor EnqueueFrom stack overflow (use nil now to send from self) and replace session send/recv workers with actor functions
|
2019-08-23 22:23:01 -05:00 |
|
Arceliar
|
9d7e7288c6
|
start migrating the router to an actor
|
2019-08-23 18:47:15 -05:00 |
|
Arceliar
|
8af1a7086c
|
when a link becomes idle and packet are buffered that the link could send, send at least 65535 bytes worth instead of 1 packet, this reduces syscall overhead when small packets are sent through the network
|
2019-08-18 12:29:07 -05:00 |
|
Arceliar
|
62337bcd64
|
allow links to send multiple packets at once, currently we still only bother to send 1 at a time from the switch level
|
2019-08-18 12:17:54 -05:00 |
|
Neil Alexander
|
5b054766a2
|
Update comments in handleIn, add switch_getFlowLabelFromCoords helper (in case it is useful if we try to consider flowlabels in multi-link scenarios)
|
2019-08-15 10:54:04 +01:00 |
|
Arceliar
|
1a2b7a8b60
|
test a change to how switch hops are selected when multiple links are idle
|
2019-08-14 17:57:36 -05:00 |
|
Arceliar
|
c55d7b4705
|
have the switch queue drop packts to ourself when the total size of all packets is at least queueTotalMaxSize, instead of an arbitrary unconfigurable packet count
|
2019-08-04 16:16:49 -05:00 |
|
Arceliar
|
07f14f92ed
|
disable crypto and switch buffer changes from testing
|
2019-08-04 15:25:14 -05:00 |
|
Arceliar
|
f52955ee0f
|
WARNING: CRYPTO DISABLED while speeding up stream writeMsg
|
2019-08-04 14:18:59 -05:00 |
|
Arceliar
|
9c01947b1c
|
reduce allocations in switch
|
2019-05-16 18:10:47 -05:00 |
|
Neil Alexander
|
0b494a8255
|
Refactoring: move tuntap and icmpv6 into separate package
|
2019-03-28 00:30:25 +00:00 |
|
Arceliar
|
3c696c3e55
|
use idle time in switch decisions to force it to try all links
|
2019-03-09 19:27:52 -06:00 |
|
Arceliar
|
c7b4bfcef5
|
misc fixes
|
2019-03-09 18:08:26 -06:00 |
|
Arceliar
|
02b1892cc5
|
try to switch parents if a parent link is blocked
|
2019-03-07 21:36:12 -06:00 |
|
Arceliar
|
06df791efc
|
buffer packets moving from the switch to the router, allow them front drop if there's too many
|
2019-02-28 19:08:56 -06:00 |
|
Arceliar
|
654407dc6d
|
close long-dead connections in link.go instead of in switch.go, this is important in case a connection opens but never bothers to send even one switch message
|
2019-02-24 13:24:55 -06:00 |
|
Arceliar
|
042adb0516
|
make sure the only place traffic is ever dropped is in the switch. this currently disables the dedicated crypto workers
|
2019-02-23 00:07:00 -06:00 |
|
Arceliar
|
e31962de0f
|
Merge branch 'develop' into switch
|
2019-02-16 16:26:20 -06:00 |
|
Arceliar
|
6f0bbbfb98
|
Debug some issues with the state machine that tracks idle connections in link.go
|
2019-02-15 19:35:10 -06:00 |
|
Arceliar
|
3c9c8672c9
|
Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into switch
|
2019-02-15 16:28:48 -06:00 |
|
Arceliar
|
21cecf4630
|
consistently prioritize which peer to forward to instead of letting it be partly random
|
2019-02-09 17:44:25 -06:00 |
|
Arceliar
|
ad43558fbb
|
fix bug in switch time
|
2019-02-09 15:30:17 -06:00 |
|
Arceliar
|
74ac535d55
|
slightly faster switch logic, should be easier to have a useful tie-breaker for peers that are equally close to the destination via the tree metric
|
2019-02-08 19:46:11 -06:00 |
|
Arceliar
|
5ddf84f329
|
remove peers completely after a long switch timeout, this could use some improvement later
|
2019-02-03 15:22:14 -06:00 |
|
Neil Alexander
|
0838928668
|
Add support for flexible logging levels
|
2019-01-27 13:31:43 +00:00 |
|
Neil Alexander
|
3bf53796a7
|
Merge branch 'develop' into nodeconfig
|
2019-01-15 08:37:10 +00:00 |
|
Tristan B. Kildaire
|
08a71af2d8
|
Spelling fixes for switch.go
|
2019-01-09 11:49:12 +02:00 |
|
Neil Alexander
|
7fae1c993a
|
Handle errors from reconfigure tasks
|
2018-12-30 12:04:42 +00:00 |
|
Neil Alexander
|
2925920c70
|
Use mutex in switch/tcp init
|
2018-12-29 19:53:31 +00:00 |
|
Neil Alexander
|
fa7c4117b4
|
Use Core.config in init functions
|
2018-12-29 19:14:26 +00:00 |
|
Neil Alexander
|
219fb96553
|
Support notifying components for config reload, listen for SIGHUP
|
2018-12-29 18:51:51 +00:00 |
|
Arceliar
|
ea4ca02681
|
fix code after moving address/crypto/util
|
2018-12-14 20:49:18 -06:00 |
|
Arceliar
|
bd2d706745
|
fix bug from go vet while I'm at it
|
2018-12-07 20:36:30 -06:00 |
|
Arceliar
|
fe772dd38e
|
switch bugfixes
|
2018-12-05 18:22:39 -06:00 |
|
Arceliar
|
3d4b49b693
|
reset the switch speed info for a peer whenever it changes coords, instead of only if they're a parent and change coords. Also, make sure packets in the sim preserve order when sending, to avoid races when testing
|
2018-12-03 19:21:23 -06:00 |
|
Arceliar
|
684632eb3d
|
Merge pull request #215 from Arceliar/switch
Latency-based parent selection for the switch
|
2018-12-02 17:26:26 -06:00 |
|
Neil Alexander
|
b5f4637b5c
|
Enforce min 4MB switch queue total size
|
2018-12-02 23:20:11 +00:00 |
|
Neil Alexander
|
86da073226
|
Add SwitchOptions and MaxTotalQueueSize
|
2018-12-02 22:49:27 +00:00 |
|
Arceliar
|
dcfe55dae8
|
store 'faster' relationships between all pairs of peers, to make fallback easier when a parent goes offline
|
2018-12-02 16:36:25 -06:00 |
|