3 ms·
What happens is you essentially get "infinite bufferbloat." When there's no packet loss, you end up absolutely filling the transmit buffers at the entry points
by apenwarr 16y ago
What happens is you essentially get "infinite bufferbloat." When there's no packet loss, you end up absolutely filling the transmit buffers at the entry points to the tunnels. The result, as other people have mentioned, is extremely poor interactive performance when you're simultaneously transferring large files.
TCP-over-TCP not "broken" in the sense that the sessions will randomly drop or your kernel will crash or anything. It's just that doing it correctly is much better.
Mind you, given the prevalence of bufferbloat (mostly caused by misdesigned routers/DSL/cablemodems) nowadays, interactive performance already largely sucks when you're transferring large files. So you might not even notice a difference.
Bufferbloat makes me sad :(
- wtallis 16y agoWouldn't TCP Vegas over TCP work relatively well, since Vegas detects congestion using latency instead of dropped packets?
- mike-cardwell 16y agoYeah. I understand why it is claimed to be bad. But in all my years of using it, I've never had a problem like that which you just described.