Darren Waters

Speed Diary: Day Four

  • Darren Waters
  • 20 Feb 09, 08:53 GMT

Halo 3When you are playing an online First Person Shooter, such as Call of Duty 4 or Halo 3, stop amidst the chaos for a moment and think about all the different things going on inside that space.

Every bullet being fired has a specific trajectory that could affect a number of different players. And there could be hundreds, perhaps thousands of bullets, flying through the air at any moment.

Grenades, rocket lauchers, laser rifles, the smack on the back of a head with a rifle butt - all of this information has to pass back and forth between some, if not all, of the online players.

You would be forgiven for thinking that many megabytes of data are being swapped from player to player each second during the game. But in fact it is much, much less than that.

What is more important in FPS online games is latency, which is the delay betwen sending data and receiving data between the client and the server. The longer the round trip takes, the more problems you are going to have and you'll probably encounter lag.

Lag is the curse of all online gamers as you experience a delay between your actions and the responses of others, and vice versa. What it means is that you can be shooting someone with 100% accuracy but by the time your bullet reaches them their character is long since gone. Or you can be shot even before you ever knew a bullet had been fired.

When playing online video games one computer typically is the server, hosting the game and responsible for sending clients only necessary information and maintaining the game continuity.

In Massively Multiplayer Online games the server is typically owned and maintained by the creator of the game to provide security, reliability and persistance in the gaming world.

But in FPS titles, often one of the gamers is the server, while the other players are the clients. On services like Xbox Live, the game detects the player with the best connection and selects him or her as the host, or server. In some titles you can elect to be host and be the server of the game.

The nature of the client/server model means that the weakest link in the web of connections can have a detrimental effect on everyone playing.

So how much data is flying back and forth?

An upload speed of a few hundred kilobits per second is enough to host a game of around six players. The faster your upload speed as host, and those of your fellow gamers, the better your experience playing online games will be.

But it is not quite that cut and dried. Earlier I mentioned latency, and it is that delay between sending data and receiving data that can make all the difference when playing online.

Latency, or ping, is determined by more than just upload and download speeds.

The distance data has to travel is one factor, and the speed of light is the ultimate barrier, while delays as data moves through routers on the internet is another.

For an online FPS a latency of less than 100 milliseconds is an absolute must. According to Bungie, the developers of Halo 3, the average latency between host and client playing their game is around 80-100ms, which is around three frames of action in the actual online world.

But even with less than 100ms latency there are still issues, because that three frame delay can mean the difference between life and death for some gamers as the bullets fly.

I mention all of this because I'm currently testing a 50Mbps broadband connection, with 1.5Mbps upstream. On the face of it, those kinds of speed mean I should have no problems playing and hosting online games, like Halo 3.

And when I was playing a game on my Xbox 360 while my wife surfed the net on her laptop, the experience remained smooth and lag free.

Virgin Broadband is advertising the fact that the speed of the connection gives consumers enough bandwidth to share among family members doing many different tasks.

But it is not quite that simple, however.

I ran into some lag problems when hosting a game of Call of Duty 4. But my wife wasn't also surfing the net, she was watching video on her laptop being streamed from a Slingbox plugged into our wireless network.

The Slingbox was not using any of the broadband connection merely the bandwidth of the router. And because my Xbox 360 was also hardwired into the router, and a 802.11n router with plenty of bandwidth, I had assumed there would be no problem.

Yet there was a problem and it was possibly related to the Slingbox and the router. I asked my followers on Twitter and there were a number of different explanations - all of them feasible.

With my router streaming video wirelessly at more than 2,000kbps, while also handling traffic from my Xbox 360 the problem could have been on the hardware side dealing with the different traffic from the two sources.

Or it could have been an issue with latency somewhere out there on the internet beyond my control.

Luckily the problem didn't persist, not least because my wife stopped using the Slingbox.

My point is - when 16 players are exchanging thousands of bullets, every second counts and even a small climb in latency can have an impact.

Remember that the next time you curse your high-speed internet connection.


  • Comment number 1.

    Interesting blog.

    On a slightly different note why on earth is the guy who stabbed a lad at a Manchester house party described on this website as the 'X-box Killer' ?!?!?

    So they argued about an xbox game and one of them got stabbed, if they argued about cheese would the BBC describe him as the 'Cheedar Killer' or if they fell out over which tripe saturday night BBC show to watch would he be labelled as 'the Strictly Killer'? No.

    Lets blame games for violence again shall we, then we dont have to address the true cause of his violence do we.


  • Comment number 2.

    This comment was removed because the moderators found it broke the house rules. Explain.

  • Comment number 3.

    You have followers on twitter? Bizarre.

  • Comment number 4.

    Hey! What happened to the 'Get a Life' post? I thought it was very funny.

  • Comment number 5.

    @leejordan Me too! But I don't control moderation.

  • Comment number 6.

    Hi, Darren,

    Ths is Rob, i believe we met in the Geldart the other night. We talked about the Super Furry Animals.

    if you fancy gettig in touch, you should be able to get my email from ths post.



  • Comment number 7.

    This does highlight an example of where embedded devices (the router) may well start to bottleneck the connection, not due to lack of throughput (it can handle 1 PC maxing out the connection), but their inability to deal with multiple connections, and share the bandwidth accordingly, both internally and externally.

    While living in a student house this was always at a premium, trying to juggle the demands of the gamers (low b/w, ultra-low lag, Ethernet),
    the chef for the evening streaming music to the kitchen while having a video call with his g/f (med b/w, low lag, wireless),
    the media streamer under the TV pulling HD content from the NAS (high b/w, med lag, Ethernet),
    and then the ever present BitTorrent client, clamouring for every available connection and spare bit of bandwidth to download and seed the latest Linux updates (HIGH b/w, high lag, ethernet)

    Having tried the router bundled with the connection, and found it lacking, (even before the BT client was running!) I came to the conclusion that separating the router into its component parts allowed the connection to remain responsive to all needs.
    Yes, there's a bit of effort involved in the initial set up, and it does mean the procurement of 3 devices instead of one (1000Mbps switch, 'g' wireless point, old PC as server/firewall), but it didn't matter what the users threw at it, it worked for everyone, whatever they wanted it for.


The BBC is not responsible for the content of external internet sites