pescetom, on 2025-January-04, 14:10, said:
Both assertions are true, but together they constitute a notable non sequitur.
There is no evident reason why BBO should be sensitive to latency or packet loss, given that it exchanges small packets of data with seconds (not milliseconds) of tolerance for any error and should be able to rely on standard or proprietary recovery methods. Yet it is, more so than streaming apps which exchange thousands of times more data over the same connection and are inherently vulnerable to these problems.
The difference between BBO and a streaming app is how your connection impacts other users.
If you have a poor connection with a streaming app, it just displays "Buffering..." or some graphic and keeps trying. You can decide when to give up.
But if you're having a poor connection in a bridge game, all the other players are waiting for you and getting frustrated. In a tournament, there's a time limit for the round. So when a user is having connection problems, we want to detect this in a reasonable time.
There's also a technical issue. The TCP protocol used to connect to the servers doesn't provide any direct way to tell when network connectivity has failed; there's nothing like a "dial tone". So the client and server each send "heartbeat" messages to each other periodically. If they don't receive these messages in a reasonable period, the assumption is that the connection has failed and they shut it down.