Client-Side Adaptive Search Optimisation for Online Game Server Discovery

This paper describes a client-side, adaptive search technique to reduce both the time taken to discover playable online First Person Shooter (FPS) game servers and the number of network flows created during game server discovery. Online FPS games usually

  • PDF / 5,191,051 Bytes
  • 12 Pages / 430 x 660 pts Page_size
  • 103 Downloads / 225 Views

DOWNLOAD

REPORT


Abstract. This paper describes a client-side, adaptive search technique to reduce both the time taken to discover playable online First Person Shooter (FPS) game servers and the number of network flows created during game server discovery. Online FPS games usually use a client-server model, with thousands of game servers active at any time. Traditional FPS server discovery probes all available servers over multiple minutes in no particular order, creating thousands of short-lived UDP flows. Probing triggers rapid consumption of longer-lived per-flow state memory in NAT devices between a client and the internet. Using server discovery data from Valve’s Counterstrike:Source and idSoftware’s Wolfenstein Enemy Territory this paper demonstrates that pre-probing a subset of game servers can be used to re-order and optimise the overall probe sequence. Game servers are now probed in approximately ascending latency, expediting the location of playable servers. Discovery of playable servers may now take less than 20% of the time and network traffic of conventional game server discovery. The worst case converges to (without exceeding) the behaviour of conventional game server discovery. Keywords: Server discovery, search optimisation, latency estimation.

1

Introduction

Internet-based multiplayer First Person Shooter (FPS) games (such as Wolfenstein Enemy Territory [1], Half-Life 2 [2], Counterstrike:Source [3] and Enemy Territory Quake Wars [4]) have become quite common in the past 6+ years. FPS games typically operate in a client-server mode, with game servers being hosted by Internet service providers (ISPs), dedicated game hosting companies and individual enthusiasts. Although individual FPS game servers typically only host from 4 to around 30+ players, there are usually many thousands of individually operated game servers active on the Internet at any given time [5]. The challenge for game clients is to locate up-to-date information about the game servers available at any given time, such that the player can select a suitable server on which to play. Server discovery is usually triggered manually by the human player, to populate or refresh the list of available servers presented by their client’s on-screen A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 494–505, 2008. c IFIP International Federation for Information Processing 2008 

Client-Side Adaptive Search Optimisation for Online Game Server Discovery

495

‘server browser’. Once triggered, a game client first queries a master server preconfigured into the game client software. The master server returns a list of thousands of pairs numbers representing currently ‘active’ game servers. The client then steps through this list, probing each listed game server for information (such as the current map type, game type and number of players). The probe, a brief two-way UDP packet exchange, allows the client to estimate the current latency (round trip time, RTT) between itself and each game server who replies. All this information is presented to the player (usually as it