OGS connection issues for BT users (Was: Is OGS running slow? ... no, it isn't)

I know what you mean about ISP support. I was on the phone for over an hour, mostly on-hold.

2 Likes

I’m also on BT broadband.

When I observe the websockets, it looks like it’s only the ai.online-go.com websocket that gets reconnections, while the online-go.com websocket is also stuck in the same way, but does not get reconnected. So I think at least that is an OGS bug, and gets in the way of the client at least partially getting along. From the console:

GobanSocket.ts:258 GobanSocket closed with code 1006: Abnormal Closure
GobanSocket.ts:334 GobanSocket reconnecting in 50ms
GobanSocket.ts:215 GobanSocket connected to wss://ai.online-go.com
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000
GobanSocket.ts:258 GobanSocket closed with code 1006: Abnormal Closure
GobanSocket.ts:334 GobanSocket reconnecting in 50ms
GobanSocket.ts:215 GobanSocket connected to wss://ai.online-go.com
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000
GobanSocket.ts:258 GobanSocket closed with code 1006: Abnormal Closure
GobanSocket.ts:334 GobanSocket reconnecting in 50ms
GobanSocket.ts:215 GobanSocket connected to wss://ai.online-go.com
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000
sockets.ts:173 Network ping timeout, increased delay to: 14000
NetworkStatus.tsx:57 Network status timeout:  14000

While in the network tab there is a series of connections to ai.online-go.com with a series of messages ending in a single unresponded net/ping. But if I look up the online-go.com websocket, it ends in a very long series of unresponded pings:

payload size time
[“net/ping”,{“client”:1746564642554,“drift”:-2,“latency”:102}] 62 21:50:42.554
[“net/ping”,{“client”:1746564657399,“drift”:-2,“latency”:102}] 62 21:50:57.399
[“net/ping”,{“client”:1746564672554,“drift”:-2,“latency”:102}] 62 21:51:12.554
[“net/ping”,{“client”:1746564687554,“drift”:-2,“latency”:102}] 62 21:51:27.554
[“net/ping”,{“client”:1746564702562,“drift”:-2,“latency”:102}] 62 21:51:42.562
[“net/ping”,{“client”:1746564717399,“drift”:-2,“latency”:102}] 62 21:51:57.399
[“net/ping”,{“client”:1746564732554,“drift”:-2,“latency”:102}] 62 21:52:12.554
[“net/ping”,{“client”:1746564747554,“drift”:-2,“latency”:102}] 62 21:52:27.554
[“net/ping”,{“client”:1746564762554,“drift”:-2,“latency”:102}] 62 21:52:42.554
[“net/ping”,{“client”:1746564777399,“drift”:-2,“latency”:102}] 62 21:52:57.399
[“net/ping”,{“client”:1746564792399,“drift”:-2,“latency”:102}] 62 21:53:12.399
[“net/ping”,{“client”:1746564807554,“drift”:-2,“latency”:102}] 62 21:53:27.554
[“net/ping”,{“client”:1746564822554,“drift”:-2,“latency”:102}] 62 21:53:42.554
[“net/ping”,{“client”:1746564837554,“drift”:-2,“latency”:102}] 62 21:53:57.554
[“net/ping”,{“client”:1746564852554,“drift”:-2,“latency”:102}] 62 21:54:12.554
[“net/ping”,{“client”:1746564867554,“drift”:-2,“latency”:102}] 62 21:54:27.554

I think fixing the main websocket to also reconnect on timeout would be useful, although we should also of course figure out what’s up with the connections getting stuck in the first place.

2 Likes

IDK how relevant, but my BT router had a firmware update on the 20th of April:

02:02:02, 20 Apr.
Booting firmware v0.45.00.08028-BT (Fri Aug 2 11:22:53 2024)

Could that be when the trouble started?

2 Likes

just checked my homehub and yes its firmware was updated 20 Apr 2025
v0.45.00.08028-BT

1 Like

FWIW the code is client-side (of course!) so anyone who knows what we need to do and can help get it done is very welcome to get hands-on!

I’m happy to assist in whatever way I can (even just finding the relevant place in the codebase), but I’m not a networky sockety kind of person, so I don’t really know how to tackle it myself.

I don’t believe this is anything to do with your home network, given the work-arounds described above.

Given the low probability of BT and/or Cloudflare fixing what I believe is the root cause, two things OGS might do are:

  1. Not advertise IP6 addresses (in the UK)
  2. Handle disconnections better

(1) may not be possible, or even generally desirable, whereas (2) would benefit everyone.

1 Like

Strange, same code, but the services are in different physical locations. That makes me suspect cloudflare a bit… but it’s strange it’s only affecting BT customers in the UK as far as we know.

Apparently I can’t turn that off without an enterprise account, and we’re not that rich.

I’m going to explore bypassing cloudflare for websockets today. We used to do that in the past, but things have changed a lot since then, might not be trivial.

I’ll look into this today too, we should absolutely be terminating the connection ourselves if we’re not getting pings back - which we’re not (anymore?) apparently. However “fixing” that probably won’t have a meaningful impact for y’all since it’s something that just seems to happen every 20 seconds, so it’s probably going to manifest to be something like you can load and maybe make a move real quick then 20ish seconds later the connection will be lost, X seconds later we’ll detect it and reconnect and restart the whole timer, so reloading a bit more than once a minute with only a small window of being able to make moves. Sounds pretty awful. A bypass will probably be a better solution, we’ll see how that goes.

1 Like

It isn’t @anoek

Occasionally sounds like a different problem, the BT folks are having the problem all the time. Possibly related, but if it’s just intermittent it sounds like something else. We’ll see though, if I can get the bypass working it might resolve the issue for them too.

I have been having the same problems. It says “Waiting for Opponent”, then timesout and says that I have not made a move. I never got the board on which to make a move - very frustrating!!!
Please will someone take a look at this problem. Thanks.

Which broadband ISP are you on ?

A workaround for my phone and iPad is to install the Kiwi Browser that has a lightweight VPN feature built in.

Got a call from BT. I have raised a complaint but industry wide they are not duty bound to guarantee latency. I’m not expecting BT to come up with anything. I’ve have yet to speak to anyone who I feel has actually understood the details of the problem etc. For example they didn’t ask me to spell out cloudfare.com etc.

Alrighty, I’ve added a settings option to control what network is used for the websocket connection

Google uses the GCP inter-data center network which in general involves less hops than the public internet and they claim is generally faster, where as the Public Internet option will use non-google non-cloudflare links all the way to the data center. This only applies for the game websockets, not the AI websockets, if the later is a problem after we get a workaround in place for the games, we’ll work on a solution for that as well.

I’d expect both options to produce good results for our BT players, but please let me know how the workaround works in practice.

11 Likes

WOW - thank you so much.

I have set my phone to use Google - worked a treat. I made sure any VPN was off so I did not get a false positive.

On my Chromebook I had to have the VPN on to start with to get to the settings menu. But once switched over I could turn the VPN off and watch a game.

In my experience if you can watch a game you ie you can hear the regular tick tock of black and white stones being played then everything else works as well.

Let me know if you would like me to do any other tests.
I will try the iPad later.

6 Likes

It is OK now when using O2 network but not with BT broadband.

1 Like

Is this after altering the “WebSocket network to use”?

Confirmed. Removed my hosts file entries so I’m now back on IP6. Chose Google network and wsp.online-go.net is now happily pinging and ponging without stopping. ai.online-go.net is still dropping like a whore’s drawers, though I don’t know if I care about that.

Nice work, and thank you!

3 Likes

I am on BR Internet with Ping=15ms, Download=309 Mb/s, Upload 47Mb/s and am using Firefox as the Browser. I still have the same problems.

Did you try to toggle the setting?

1 Like