Dedicated Servers vs Peer-to-Peer Connections
I'm going to talk about dedicated servers, and peer-to-peer connections. What exactly they do, what they are good at, and draw backs for each. I accept this is not the most exciting topic, but I am going to keep it brief and basic. The best combination for both the understanding of this and removing boredom.
Key phrases to know before we start:
- Peer - Is another system (Any Xbox, Any PlayStation, or even a PC) connected to the same network as you, this is over the internet (when talking about gaming). Think a chain where each link is connected by string, the string being the internet.
- Client - The system which is at the end of the chain. Your phone, PC or console is a client when connecting online.
- Host - The system which distributes the data out to the clients.
- Ping - The time it takes for any messages sent by a client to reach the host and make it back to the client.
Dedicated Server? Peer-to-Peer? What are they?
In a broad sense dedicated servers only have one task, often to simply host a game, all players wanting to play connect to the dedicated server.
Peer-to-Peer (P2P) is actually a misconception. In a P2P network the data sent round the network gets sent from one peer to the following peer. P2P networks are not commonly used in gaming anymore, and they do not have need for a server.
This is what a P2P network looks like.
The true term for what people mean when they say peer-to-peer, is a Listen Server. This is when a host gets randomly selected, often the selection pool is from the players with the best connections. All the other players then connect to this host, if the host leaves the game either crashes, or migrates to a different host. Listen server configurations do require a server, which is what is different from a P2P.
Now time for more detail.
As said before these host the game. Home internet does not have high enough upload speeds to cope with more than a few players, so a dedicated server's internet connection has a very high upload speed to cope with many more players, in the case of some MMOs this will often be 100s of players.
This also means that a developer will need to have a server bank. This is just many dedicated servers in a large room. There are commonly multiple server banks around the world, and often multiple in countries. As you can guess this all makes the cost of dedicated servers high. You also need to maintain and run the servers for a long time.
The biggest advantage of dedicated servers is stability, these create a very stable connection for players, who are then equally matched due to ping often being very low.
Arma 3 is best run off a dedicated servers as it is a very complicated game, and very taxing on the system. There can also be high player counts in Arma 3. MMOs most fundamental system are their dedicated servers. MMOs need to handle hundreds, sometimes thousands, of concurrent users smoothly for players to have a good experience.
This is a large server bank.
Due to what we already know about home internet connections, these are often unstable or 'laggy'. Lag is when the ping is very low, however lag doesn't affect the host. As they are hosting they only need to connect to themselves, which gives them the host advantage, as they get the best connection.
This configuration is the cheapest, and the most stable when there is a high amount of concurrent users. It is less stable for each match, but can support higher user counts on the game as a whole. If Call of Duty: Black Ops 2 had 10 dedicated servers you would only be able to play on 10 different servers. This is where listen servers help, there is a theoretical limit of matches which is equal to the current number of online players, that could be 50 or 1 million matches.
The server comes in for matchmaking, the game lobby, and to recording player stats.
Call of Duty: Black Ops 2, Halo 4 and PayDay 2 are just a few games which use listen servers. This is to keep server costs down to a minimum, as well as allowing many simultaneous matches on many maps.
The person in red is the host, everyone else are the gamers connected to the host.
I hope that gaves you a basic understanding of the different server types, the advantages and disadvantages of each, as well as how each server type gets used and for what purpose.