4
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2025-06-14 10:26:06 +00:00
Commit Graph

465 Commits

Author SHA1 Message Date
e6a47f705d when dropping a queue, select one at random based on queue size in bytes 2018-07-06 00:11:36 -05:00
1a65c065d0 prioritize sending from small queues that have been blocked for a long time 2018-07-05 23:56:37 -05:00
7da4967f5e Limit maximum queue size to 4 MB 2018-07-05 23:39:41 -05:00
a7c8be4d69 base backpressure decisions on queue size in bytes, instead of packet counts 2018-07-05 23:07:01 -05:00
d0e6a9ad41 Merge pull request #150 from neilalexander/version
Update changelog version for v0.2.3
2018-06-29 23:25:00 +01:00
af99cebf11 Update changelog version 2018-06-29 23:20:58 +01:00
1d05e511b3 Merge pull request #148 from Arceliar/changelog
Add changelog
2018-06-29 08:40:13 +01:00
1fced2bdf0 Update changelog 2018-06-29 08:35:39 +01:00
dd6ca6e4b6 Add changelog 2018-06-28 18:47:10 -05:00
1a0771b016 Merge pull request #146 from Arceliar/backpressure
Local backpressure improvements
2018-06-28 23:04:03 +01:00
b63b534fa7 drop packets that have been queued for longer than some timeout (currently 25ms) instead of using fixed length queues 2018-06-25 18:12:18 -05:00
01f0ec34f4 Merge pull request #147 from neilalexander/alien
Build RPMs in CircleCI using alien
2018-06-25 14:25:48 +01:00
3d0b39f05a Keep version number 2018-06-25 14:21:31 +01:00
a7d1f21271 Run alien as root so package permissions are right 2018-06-25 14:19:22 +01:00
11acb0129d Use alien to generate RPMs 2018-06-25 14:17:07 +01:00
7695a3fcbf try using a simpler FIFO order for each backpressure buffer, since there are other mechanisms to penalize the flooding node, leads to better TCP throughput without affecting traffic between other nodes (does affect traffic in the same session, but there's hypothetically workarounds to that) 2018-06-24 20:20:07 -05:00
4ad2446557 cleanup 2018-06-24 18:21:00 -05:00
03949dcf3f fix my terrible bug, I have no idea why the old one even worked 2018-06-24 18:05:00 -05:00
9c028e1d0d switch to a separate queue per stream of traffic, FIXME for some reason this makes distance calculations more expensive in handleIdle? 2018-06-24 17:39:43 -05:00
189628b381 cleanup 2018-06-23 23:55:27 -05:00
0ad801bcfe more work on backpressure, but still needs more testing 2018-06-23 23:33:03 -05:00
4b83efa218 more backpressure work, still needs testing 2018-06-23 21:51:32 -05:00
52a0027aea switch refactoring, setup for a better approximation of local backpressure 2018-06-23 20:59:26 -05:00
988f4ad265 add a dedicated switch worker and start using it for lookups 2018-06-23 19:08:32 -05:00
2ae213c255 I'll try sorting, that's a good trick 2018-06-23 01:10:18 -05:00
cceecf4b1a larger out queue size, make sure linkOut packets always get sent first 2018-06-22 23:46:42 -05:00
0021f3463f slightly better way for the tcp sender goroutine(s) to block waiting for work 2018-06-22 20:39:57 -05:00
fd074a4364 Merge pull request #143 from neilalexander/admin
Change box_pub_key to key in admin API
2018-06-22 16:35:48 -05:00
f68f779bee Change box_pub_key to key in admin API 2018-06-22 22:26:17 +01:00
79a35caf24 Merge pull request #142 from Arceliar/sessioncleanup
Sesson cleanup
2018-06-22 08:48:22 +01:00
5dfa01a0e8 periodically clean up timed-out sessions and old signatures, instead of trying to do it when creating new sessions or adding new signatures 2018-06-21 20:31:30 -05:00
8e7edf566c Merge pull request #140 from Arceliar/misc
Misc cleanup
2018-06-21 10:50:18 -05:00
254be42614 gofmt 2018-06-21 10:39:43 -05:00
19014a198e randomize the delay after tcp disconnects, to prevent synchronization issues 2018-06-21 10:38:31 -05:00
f599a1a2c1 start the pprof based on an env variable in debug builds, otherwise remove the flag/release.go stuff 2018-06-21 10:32:16 -05:00
7a19507665 Merge pull request #139 from neilalexander/yggdrasilconf
Add yggdrasilconf for testing with vyatta-yggdrasil
2018-06-21 16:07:25 +01:00
1a60e89ada Add yggdrasilconf for testing with vyatta-yggdrasil 2018-06-21 16:03:46 +01:00
12bcb6cc1f Merge pull request #138 from neilalexander/dedwarf
Update build script
2018-06-21 09:33:28 -05:00
c4d28c4f65 Update build
More portable way to strip the `.go` extension from files when packing with upx.
2018-06-21 09:29:05 -05:00
2c3074a979 Update build script to strip by default, allow debug -d and UPX -u flags 2018-06-21 09:53:35 +01:00
10a66a4edc Update semver to hopefully avoid squash merges 2018-06-17 18:17:21 +01:00
e8e7e6bcf5 Bring squash merge into develop 2018-06-17 18:11:18 +01:00
f0fd19b5e5 Merge pull request #136 from Arceliar/dcfix
Mitigate connection cycling issue
2018-06-16 16:12:29 -05:00
496dc94f02 possibly mitigate livelock bug where lossy links lead to constant connect/disconnect cycles due to disagreement about which of the two duplicate autoconnection attempts to use 2018-06-16 15:31:25 -05:00
0ca2cda49b Merge pull request #135 from neilalexander/utf16
Fix typo for big-endian BOM
2018-06-16 17:05:43 +01:00
9ac7d4e0df Fix typo for big-endian BOM 2018-06-16 17:01:47 +01:00
0ec5f1c02c Version 0.2.1 (#130)
* switch address range from fd00::/8 to the deprecated 0200::/7 range

* Fix launchd script path and amend debian control file

* fix address/prefix code, platform specific parts still need testing

* macos

* cleanup old ugly session MTU code that only mattered with lossy UDP fragments

* Fix debian control file

* Let's try this again

* tcp/socks cleanup

* comment

* avoid the proxy.SOCK5 connection attempt unless we're actually going to use the dialer

* Update generate.sh

* prevent parent nodes from forcing coord oscillation, have dht.handleRes clean up the old request info immediately

* address range changes

* Update README.md

Consistently remove leading zeros from addresses in the readme.

* Update yggdrasil.go

* Collect yggdrasilctl during CI build

* Fix CircleCI after fat-fingered copypasta

* Fix for Windows

* clean up main yggdrasil.go imports and run gofmt
2018-06-15 11:02:45 +01:00
21b15c97a9 Merge pull request #134 from Arceliar/develop
clean up main yggdrasil.go imports and run gofmt
2018-06-15 04:42:32 -05:00
e65a66b181 clean up main yggdrasil.go imports and run gofmt 2018-06-15 04:30:09 -05:00
5fc4dddf83 Merge pull request #129 from neilalexander/utf16
Convert config from UTF-16 if a BOM is found
2018-06-15 04:20:59 -05:00