Skip to main content

Am I Lagging?!?

For a fair portion of the gaming industry’s history, video games focused on the single player experience. Games focused on a prominent single player campaign and occasionally introduced some basic multiplayer features like co-op or some semblance of a versus mode where two players on the same machine could play one another. However, with the advent of the Internet wireless communications, the popularity, importance and consumption of multiplayer games have dramatically increased. Nowadays, video games are expected to offer a thorough, well thought out and properly implemented multiplayer option, which further expands gameplay and features. Furthermore, online networking services such as Xbox Live, Playstation Network Steam, and even Facebook have mixed aspects of social networking and online gaming which has made it more easily accessible to a larger user base.

An important aspect of multiplayer gaming that can be analyzed utilizing aspects of networks is how data and networking resources are distributed. In multiplayer games, each player’s information such as their position and status must be relayed to each other player. This data transfer has a native latency which measures how much time is required to get from one source to another to be processed. Naturally, the higher this latency, the harder online games are to play since the player is forced to use outdated data while processing since the new data is still in transmission. In the article by Jouni Smed, Timo Kaukoranta, and Harri Hakonen, the authors analyze different distribution strategies for networking that can result in the best operation. In a peer-to-peer setup, each node in the network is connected to each other node. While this method is easy to expand from a single player setup, it does not scale well into large environments due to a lack of hierarchical structure in the network. As seen in Figure 3 of the article, each client receives data from each other client. While this system is good for small groups, it becomes inefficient as the number of clients increases.

In a client/server system, one node has been designated as the central server node. The server communicates directly with each client and acts as the central transmission point that then sends data back to each client. This way, clients do not need to communicate directly with one another allowing for more efficient data transmission and retrieval. Lastly, there is the server-network where there are multiple interconnected servers which then separate into individual client/server subnetworks.

Using what we’ve learned on networks and graphs in the course, we can see how depending on how complex the graph is, certain architectures for communication are better than other. For example, if two clients are a large distance away, having the clients transfer directly through a peer-to-peer network would be inefficient. A server that acts as a conduit between the two will help diminish the average time to transfer data. Furthermore, when the graph becomes very complex, having a network of servers allows for a hierarchical system where the servers communicate with one another, decreasing the total number of transmissions occurring. This networking system can be further expanded beyond the realm of online gaming. Utilizing network and graph theory to construct more manageable transmission paths for data in any scenario. Whether its information about how many birds a person has in a slingshot, or information that must pass through a city, graph theory shows how transmission efficiency can be increased.




Leave a Reply

Blogging Calendar

September 2012
« Aug   Oct »