4
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2025-07-13 18:46:29 +00:00
Commit Graph

1521 Commits

Author SHA1 Message Date
80ba24d512 force things to buffer in the switch if the best link is currently busy. note that other links can end up sending if they become non-idle for other reasons. this is a temporary workaround to packet reordering, until we can figure out a better solution 2019-09-17 19:42:07 -05:00
0141180279 cleanup 2019-09-09 19:25:10 -05:00
10a828af2c when forwarding traffic, break distance ties by favoring the link that sent the most recent switch update the fastest 2019-09-09 19:20:46 -05:00
1b72a3f3d5 Merge pull request #537 from Arceliar/phony
update phony dependency
2019-09-06 22:47:59 -05:00
eec055313d update phony dependency 2019-09-06 22:20:36 -05:00
9da0c40239 Merge pull request #534 from Arceliar/bugfix
Fix race between router and dial code
2019-09-04 12:21:42 +01:00
2426a87ccc really finish initializing the session before returning it / giving up control of the router, in the Conn.search function used by Dial 2019-09-03 19:03:12 -05:00
174ebceaac Fix hjson-go import in go.mod/go.sum 2019-09-01 21:32:40 +01:00
f72546c85d Merge pull request #527 from Arceliar/bugfix
Bugfix
2019-09-01 14:15:00 -05:00
8c52ccadf9 make dial fail if a session to the same node already exists, fixes race between simultaneous connections to a node's 200 address and one of its 300 addresses, should also fix races between a search and an accepted listen 2019-09-01 14:07:00 -05:00
730fd08954 Merge pull request #526 from Arceliar/cleanup
Cleanup and possible bugfixes
2019-09-01 13:45:17 -05:00
8d2c31d39c add some artifical delay to windows netsh commands, since it seems like maybe they don't take effect immediately, and this was leading to races when setting MTU 2019-09-01 13:20:48 -05:00
c53831696b make tun stop check that iface is not nil, in case it wasn't set for some reason (windows bugs) 2019-09-01 13:06:25 -05:00
d08c2eb237 stop exporting ReadNoCopy and WriteNoCopy, since we use the actor functions / callbacks and everything else should use Read and Write instead... 2019-09-01 13:04:10 -05:00
1496b6af3b Merge pull request #525 from Arceliar/memory
Memory
2019-09-01 17:55:24 +01:00
e0ea845cdc Update build 2019-09-01 17:50:15 +01:00
3a493fe894 gc more often on mobile 2019-09-01 11:08:25 -05:00
cabdc27a54 change how nonce is tracked, so we allow packets if we've recently received a highest nonce ever, but don't bother tracking all received nonce values, this means duplicate packets are possible but only for a small window of time (and significantly reduces memory usage per session) 2019-08-31 17:39:05 -05:00
0806f3e6ea upgrade phony 2019-08-31 16:49:13 -05:00
a64f7320d8 update phony, add mobile versions of util bytes functions that don't try to store anything 2019-08-31 16:27:36 -05:00
5c0f79c4ed Merge pull request #519 from Arceliar/actors
Actors
2019-08-31 12:02:50 -05:00
08f69de1e2 another phony update 2019-08-31 00:04:35 -05:00
32633011ef upgrade phony dependency 2019-08-30 22:10:34 -05:00
9e4d4f33ba upgrade to latest phony 2019-08-29 23:30:39 -05:00
7649ea0f9f remove sessionInfo.doFunc, have the api just use phony.Block instead 2019-08-29 21:59:28 -05:00
1f658cce76 Add Core actor 2019-08-28 19:53:52 +01:00
aa0770546e Move responsibility for configuring max queue size into switch 2019-08-28 19:39:23 +01:00
fc9a1c6c31 Simplify reconfiguration 2019-08-28 19:31:04 +01:00
764f9c8e11 Remove legacy debug functions 2019-08-28 17:24:41 +01:00
881d0a1ada Fix DEBUG_getDHTSize 2019-08-28 12:46:49 +01:00
e553f3e013 Reconfigure functions now ran by actors 2019-08-28 12:46:12 +01:00
607c906820 Pointer receivers for phony.Block 2019-08-28 12:26:44 +01:00
5d7d84f827 Remove router.doAdmin and switchTable.doAdmin 2019-08-28 12:17:19 +01:00
a8b323acdd have an actor manage the crypto worker pool instead of each session trying to use it directly, this should result in a fairer round-robin behavior in cases where crypto congestion is the bottleneck 2019-08-27 20:01:37 -05:00
3845f81357 update to latest phony, adjust interface use accordingly 2019-08-27 19:43:54 -05:00
4d9c6342a7 more link updates 2019-08-26 18:37:38 -05:00
f432875d87 Merge branch 'actors-linky' into actors 2019-08-26 00:38:29 -05:00
c97dd4ad28 fix dial bug 2019-08-26 00:38:14 -05:00
ab59129557 have the writer clean things up. note that their still seem to be bugs in the main linkInterface actor's state machine--links sometimes just die, presumably because they're dropped from the switch and never replaced 2019-08-25 23:24:18 -05:00
e5b88c0da3 update switch 2019-08-25 23:07:56 -05:00
bd3eaefb72 more link migration 2019-08-25 22:55:17 -05:00
b5b179904b ugly work-in-progress to migrate link to the actor model 2019-08-25 22:19:20 -05:00
dffd70119d remove session shutdown goroutine, just send a message instead 2019-08-25 19:13:47 -05:00
b2a2e251ad more TunAdapter migration 2019-08-25 18:53:11 -05:00
aaf34c6304 start migrating the TunAdapter to the actor model 2019-08-25 18:08:43 -05:00
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
a3d4d8125b make the main library reconfiguration more actor-friendly 2019-08-25 12:10:59 -05:00
aa30c6cc98 upgrade phony dependency and switch to its new interface 2019-08-25 10:36:09 -05:00
cff1366146 update phony dependency 2019-08-24 22:28:20 -05:00
5312b21665 Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into actors 2019-08-24 18:30:15 -05:00