I think TCP window scaling is supposed to deal with that.
But I have also heard that computers used on ISS supposedly all do remote destktop to computers on the ground when they need any outside communication. But I don’t recall the source, so I am not sure if this is accurate.
Speaking of 1+ sec latency, some point in the past year I discovered that BIND 9 would completely fail to perform recursive lookups once latency exceeded 1 second. That came as a surprise to me as prior to that my experience had been that it was a robust DNS implementation.
@kasperd @jamesthomson TCP spoofed ACKs and a more robust transmission over the slow medium is a good trick for such things. But applications timeouts may also need tweaks. DNS is a good one, but a suitable DNS cache which has long timeouts can help. Similar to satellite comms issues. I assume they have some clever stuff!
Remote Desktop must be frustrating.
I don’t recall if it attempted falling back to TCP. There was no blocking on the network where the DNS recursor was hosted. But many authoritative DNS servers lack TCP support. In any case it also failed resolution with authoritative servers that did support TCP.
What I do recall observing was that the BIND 9 recursor would try all of the different authoritative DNS servers one after each other. It would simply ignore every DNS response if it had taken more than one second to arrive. Even after having received and ignored perfectly valid DNS responses it would keep sending more DNS requests over UDP to other authoritative servers for the domain.