barmar, on 2025-January-08, 17:01, said:
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.
Yes, but the point is that many if not most of the players diagnosed by BBO as "having connection problems" are ready to play and have a connection sufficient for other applications with much higher bandwidth requirements and timing issues.
barmar, on 2025-January-08, 17:01, said:
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.
It's been almost four decades since I implemented the full ISO/OSI suite but I do remember something about technical issues
BBO certainly had a working "heartbeat" mechanism back in the dialup days.
I seem to remember documenting a sequence which proved the heartbeat was malfunctioning in the early days of the current web client.
That may have been fixed since, although it was not even acknowledged then.
There are certainly still technical problems, even for those of us wired to a router on fibre.
Like this evening when at the end of a round in a clocked tournament I was replaying a board with double dummy to see how the robot had screwed up, I suddenly heard the noise of a new round. I refreshed the screen and found myself looking at the list of tournaments: I messaged the TD and was told "you are still playing", but still saw just the list of tournaments. I refreshed and it worked.