I have a personal server I connect to through Tailscale whenever I’m not home, however I’ve found that whenever I’m connecting remotely connection speed drops drastically from 100MB/s to <3MB/s.
I expect there to be some speed loss when connecting over the internet compared to locally, but 3MB/s doesn’t make any sense especially considering that according to a python script I found that uses speedtest.net to test internet speed through a terminal, it reported 109Mbit/s download and and 76Mbit/s upload (~13MB/s; 9MB/s), which aren’t amazing but leagues beyond 2MB/s. Moreover I also did a quick test with a friend of mine briefly using port-forwarding and they reported the same speeds, which tells me it isn’t Tailscale slowing me down.
Is this just what happens when you connect over the internet? What trickery is afoot to allow me to download things from the interwebz using that sweet full 109Mbit/s bandwidth?
EDIT: tailscale status says the connection is direct


Could be QOS or packet shaping going on at your ISP, or just throttling or congestion. Speed tests only really test for typical traffic patterns, so will give you a warped view: it certainly disagrees with your observed measurements. There are lots of factors that can affect how quickly traffic passes between two hosts on the internet, but domestic broadband is generally the worst of all worlds - you usually share bandwidth with other subscribers, and although the throughput can be quite good, the latency and error rate can be quite bad, and you can get fragmentation as frame sizes can differ between network segments, causing buffering especially when congestion is occurring. Your ISP might also have deprioritised your type of traffic, or they might be dropping packets, which causes retries, and thus slows your connection down.