Commit graph

1295 commits

Author SHA1 Message Date
Arceliar
d0e6846173 work in progress to make searches use parallel threads per response, so one malicious node doesn't block progress from honest ones 2020-02-08 20:15:48 -06:00
Arceliar
d7d0c2629c don't deduplicate search responses, but limit the max number of nodes handled per response 2020-02-08 17:04:00 -06:00
Arceliar
cd9613fddc add some additional debug timing info and logging to dials, and fix an unnecessary delay in search startup 2020-02-07 22:34:54 -06:00
Arceliar
3faa0b2854 deduplicate the list of nodes to visit in a search (keeping newest rumors) 2020-02-06 20:47:53 -06:00
Arceliar
7c2cb9a02d more search fixes/updates 2020-02-06 20:21:17 -06:00
Arceliar
cd856426e5 search timing changes 2020-02-06 18:37:58 -06:00
Arceliar
70659bfb91 sort search response results before sending requests 2020-02-06 17:38:42 -06:00
Arceliar
7e64f54c1f log some info about searches and reduce search traffic (especially when things dead-end) 2020-02-01 13:58:08 -06:00
Neil Alexander
c48c4ddc80
Merge pull request #641 from Arceliar/misc
Misc tuning
2020-01-10 11:35:51 +00:00
Neil Alexander
2fc6f9a71d
Merge pull request #643 from adamruzicka/mtu
Unify MTU datatypes across the codebase
2020-01-07 22:39:38 +00:00
Neil Alexander
ef4d5553b6
Merge pull request #636 from cathugger/develop
util: fix possible OOB in IPv4 flowkey calc, use switch there
2020-01-07 22:38:31 +00:00
Arceliar
c3b1a6af65 some nodeinfo actor fixes and adjust search timeout 2020-01-06 18:37:43 -06:00
Neil Alexander
8c12fc4fdb
Merge branch 'develop' into misc 2020-01-05 23:04:51 +00:00
Neil Alexander
9304873047
Convert nodeinfo to actor 2020-01-05 22:15:52 +00:00
Adam Ruzicka
8358fe5c5c Unify MTU datatypes across the codebase
The codebase uses int and unit16 to represent MTU randomly. This change
unifies it to a MTU type from types package, which is currently uint16.
2020-01-05 18:01:22 +00:00
Arceliar
8513f8f4dc constant space searches that should play nicer if searching for an unreachable destination 2020-01-04 16:08:48 -06:00
Arceliar
201dbec63d always keep the 2 closest nodes in each direction around the dht ring, possibly helps things recover faster after joins/leaves 2019-12-25 19:01:20 -06:00
Arceliar
9fac5355eb make searches more parallel 2019-12-25 18:55:29 -06:00
cathugger
ff5de89762
util: fix possible OOB in IPv4 flowkey calc, use switch there
ihl may grow upto 15*4=60 so extract and check it before using it as offset in flowkey calculation.
also replace IFs with switches for protocol matching as it's less redundant and nicer to document.
2019-12-11 15:24:43 +02:00
Anatolii Kurotych
4159ccb893 Fix return value in Multicast.Stop() 2019-11-30 16:05:44 +02:00
Arceliar
729d2ca2ba
Update crypto.go 2019-11-29 17:14:27 -06:00
Dimitris Apostolou
73f50af3b7
Fix typos 2019-11-29 11:45:02 +02:00
Arceliar
c2a8b4bb57 get rid of an allocation in tunWriter's _write 2019-11-28 12:00:00 -06:00
Neil Alexander
ad8d30ce74
Revert "Force packets through the switch to be buffered (seems to help the reordering problem on Windows)"
This reverts commit 837e7da792.
2019-11-26 09:44:35 +00:00
Neil Alexander
328dd6c054
Merge branch 'develop' into goodbyewater 2019-11-26 09:20:15 +00:00
Arceliar
98339cdc3f possible fix if monotonic time resolution is related to packet reordering 2019-11-25 17:40:58 -06:00
Neil Alexander
837e7da792
Force packets through the switch to be buffered (seems to help the reordering problem on Windows) 2019-11-25 20:13:41 +00:00
Arceliar
3e07995518 it helps to actually set the flag... 2019-11-24 18:53:58 -06:00
Arceliar
27cc57dbbc attempt to prevent incorrect idle notification in switch, needs testing 2019-11-24 18:24:17 -06:00
Arceliar
2e95a3131c comment out pointless error that prints on some platforms and not others 2019-11-24 15:37:37 -06:00
Arceliar
2982b53555 make offset generic over TUN_OFFSET_BYTES so we can make this platform dependent 2019-11-24 15:09:28 -06:00
Arceliar
f6f9b3ef76 include offset in expected bytes written 2019-11-24 15:01:20 -06:00
Arceliar
6560aac1e9 fix error spam on shutdown 2019-11-24 13:42:56 -06:00
Neil Alexander
746fac6594
Fix go.mod/go.sum again and update DoAsSystem call 2019-11-23 13:56:48 +00:00
Neil Alexander
d0a307db97
Use Wireguard's DoAsSystem, fix build tags and go.mod/go.sum 2019-11-23 13:46:05 +00:00
Neil Alexander
0529910b01
Reuse GUID so Windows no longer keeps creating new networks each time Yggdrasil starts 2019-11-23 13:34:27 +00:00
Neil Alexander
baebaabc43
Fix typo 2019-11-22 20:16:24 +00:00
Neil Alexander
3a0870a448
Fix IfName 'auto' behaviour on Windows 2019-11-22 20:11:39 +00:00
Neil Alexander
f95ebeb821
Remove references to TAP 2019-11-22 20:08:19 +00:00
Neil Alexander
7d00206f4b
Update platform defaults, handling of 'auto' on Linux/Darwin 2019-11-22 20:07:08 +00:00
Neil Alexander
b27ada9191
Fix bad Name() calls 2019-11-22 18:39:27 +00:00
Neil Alexander
235b64345e
Configure addresses and MTUs, fix bugs 2019-11-22 18:34:43 +00:00
Neil Alexander
f5517acc81
Drop Water, use Wireguard tun library, drop TAP support 2019-11-22 16:43:50 +00:00
Arceliar
248a08b2f1 send a message to the sessions to update mtu instead of trying to update it directly 2019-11-21 19:23:44 -06:00
Neil Alexander
7c18c6806d
Further updates, notify sessions about updated MTU from API call 2019-11-21 09:54:36 +00:00
Neil Alexander
d1c445dc41
Thread safety for MTU API functions 2019-11-21 09:28:36 +00:00
Neil Alexander
e90be6f569
Add API functions for manipulating maximum session MTU, fix TUN/TAP to use that 2019-11-21 00:02:39 +00:00
Neil Alexander
d06c40ad19
Use existing constant 2019-11-20 22:40:48 +00:00
Neil Alexander
9fca3640f9
Fix couple of issues with MTU calculations 2019-11-20 22:11:52 +00:00
Arceliar
6b6a5a2906
Merge pull request #608 from neilalexander/mtu
Improve MTU handling
2019-11-19 19:37:25 -06:00