tailscale / tailscale/tailscale
Tailscale struggles to connect under certain latency situations
- Dominant language
- Go
- Stars
- 36.5k
- Forks
- 3.2k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 123
Description
### What is the issue?
Multiple customers reported an issue connecting to Tailscale when on specific airlines wifi.
After some pcaps were taken, we discovered this is likely related to latency and idle timeouts.
Relevant portions of slack convo:
> the curl client hello is set at 0.2s, and gets a response at 1.93s.
the tailscale client hello is sent at 14.6s and then the client sends a FIN at 15.7s.
I think we must have a 1s idle timeout set on the control conn, so it’s closing it just before it gets a serverhello
> i’m guessing there’s a 1s timeout somewhere, because it’s extremely close to 1s. I don’t know of anywhere we set a timeout that short right now, i just scanned through OSS to find one and came up short. will be worth testing with artificial latency to see if it reproduces reliably, then if it does we can dig more
### Steps to reproduce
Get on an plane
Pay for wifi
Attempt to connect to Tailscale
---
Alternatively, and with less expense, you can simulate this with the network link coniditioner on OS X
### Are there any recent changes that introduced the issue?
_No response_
### OS
macOS
### OS version
_No response_
### Tailscale version
1.70.0
### Other software
_No response_
### Bug report
BUG-bba820e55add5f5185f27eed33817701bdbc90ea56463d0330d645972ab14d9c-20240830010631Z-dda1e8b4d5424b17
Contributor guide
Assessment
This issue has not been assessed yet.