Of course that's speed of light over fiber... It sure ain't that over copper.
Plus as Famine noted. These cables do not go as the crow flies. Heck, I live 30 miles from France. I drive 10 mins up the road to Dover and I can see mainland Europe on a good day.
But when I wanna race with the Europeans my connection goes via my ISP's main data centre in Suffolk. A good 200 mile round trip detour in the opposite direction.
What's perhaps worse is that you think its at least going in the sort of useful Scandinavian direction of
@RacingGrandpa only to turn around, come back past me to cross the channel and then make it's way up through Belgium, Holland and Denmark.
And again, we're going North-East initially before were even thinking about heading South-West to Cornwall to those Trans-Atlantic cables.
Nightmare!
Then you could live right next to the person you're racing, but if the server is 7,000 km away you'll both be jumping around anyway. I had that pleasure a few times after PD merged the servers again. The South American server was still up and hosting races now and then, so me and my fellow Canadians suddenly all had max 3 yellow bars and were jumping around the track. A little 14,000 km detour to race with thy neighbor.
I wonder how it actually works behind the curtains. Each client sends their data to the server which is not much more than a router, duplicating the data to all other clients. Does it gather the info and send a full data package for all cars to each client, 60 times per second (which means if one client misses the 17 ms window their data is left out until the next update), or simply receive and send each client's data individually so you receive 60 x nr of cars packets per second.
Of course your console also needs to collect all the info and somehow synchronize it again to present to you at 17ms intervals, 60 times per second. Some people might only be one frame behind, others multiple frames behind which can vary depending on jitter. Asynchronous programming quickly turns into a big headache!
I imagine each car's predicted path is updated as soon as any information comes in. The engine likely works at a much higher update speed, like 240 times per second to check for and process collisions between your car and the predicted paths of other cars. Then takes a snapshot 60 times per second of your car and all the predicted paths to render on screen.
One thing is clear, each client is in charge of what ultimately happens to their car. Which is why collisions often look so odd and how you can have the bug where one person, who can't see anyone else on the track, becomes an unmovable obstacle bumping all other cars out of the way without any effect on their path. They are still transmitting data but not receiving or processing anything from the other drivers on the track. I had one of those again on the Nord last week.
When you lose connection you often suddenly see everyone grind into a wall and coming to a stop. The forward prediction tries to keep it going for a little bit and it takes about 5 seconds for your client to realize you are not receiving data anymore. While sometimes you suddenly get disconnected without any warning or signs something is going wrong. However as long as you receive data the server seems to be ok with you continuing. Some laggy cars can jump over the track, disappear and re-appear again for a whole race without getting kicked. Their upload connection is apparently completely unstable, but they get to keep going anyway. How does it work!
A clear sign the races are not very interesting this week, rambling on about how it all works
