I would like to thank Maccabi for helping in the right direction. I've been wanting to post this for a really long time but didn't quite know where to start on my research. So a big thank you Mac
Now on to the juicy stuff you really want to know
What is a Listen Server?
Basically its a Dedicated Server that runs off the client's hardware instead of a fully supported server. This system is far cheaper requires little software to support. Its important to note that a Listen Server communicates the knowledge found on the game's disc as its only form of understanding as opposed to a Dedicated Server having an entire HDD loaded with information. Unlike a peer-to-peer (P2P) system, a host is still in charge of handling all the information. P2P set-ups are more like a spider-web of information where each client sends info to every other client.
Pros of Listen Servers
As mentioned above there is very little software needed for this type of server. Only the limited data used on a game's disc is used and aside from specific requests from the game's server (ie. Activision or Treyarch for stats and match making) there's really no other contact with anyone else. This means all bandwidth comes from the players as well as all other performance related functions
Cons of Listen Servers
The list is long so I'll try to be brief but concise. Listen Servers fully rely on the host for being able to perform all the necessary functions to host a match. Residential bandwidth often doesn't have the capacity to handle such needs. The upload limitations for your typical household are far less than what's required. However, if a lobby is made up then the person with the best upload will be picked regardless of their qualifications. This leads to lag, and any Google search will show that Listen Servers are notorious for lag no matter the game and that games internet requirements
Another downside is that the host ends the game anytime they leave a match. Because the host is only catalyst between players, if the host leaves there no way for players to communicate with each other. Also, theoretically, if all is working as efficiently as possible the host will have a massive advantage over all other players. However, if the game is not performing efficiently, the host will receive the worst amount of lag as their bandwidth cannot facilitate the demands Listen Servers require
Hosting via Listen Servers
Herein lies 99% of all the lag issues. Because the host is trying to facilitate all the packets of information we have problems between what match making is forcing the host to do and what the host can actually accomplish. Anything over 16.87 milliseconds (60hz) starts to become noticeable to average human. Its at that point that we can sense a disturbance in the force and lag becomes perceived. The host basically has to transfer information to 11 people in less than 17ms in order for people to play fluently without even noticing that lag exists. It's at around 50ms that lag starts making a negative impact on a game. Once you start hitting ping above 100ms that's where anger will begin to set in.
Match making however does not always allow this to happen. Depending on who you can get pair up with, the minimum latency between one person could be anywhere from 5ms (if that player lives with the same state as you) to 150ms (cross country or international). Now take the above paragraph and try to wrap your head around that. If the average person is experiencing negatives results from lag at 50ms and the host is unable to talk with just one person within 150ms you can easily see how the game can turn South in a hurry
Lag Compensation and Listen Servers
Here's where a lot of myths are going to be nixed. The host often doesn't have enough time to communicate with everyone effectively as you so clearly saw above. Any latency over the 17ms can easily become unnoticeable with the help of lag comp. By quickly processing the difference and correcting the discrepancies between the time an act was performed and the time act was communicated to all players, lag comp helps soften the blow 150ms can make
However, like everything in life, there's a equally opposite disadvantage of lag compensation. If the lag is over the plausible limits of lag comp either lag comp will stop making accurate compensations or lag comp will fail to work altogether. What happens so often in matches is that the lag compensation between players 1-10 will be nearly perfect but player 11 will have such a high latency that it drags the whole lobby down with them
Lag Switching and Listen Servers
Because the host is prime source of information they can easily manipulate this to their advantage. If the lobby has a decent connection that doesn't push the match into high pings forcing the game to pick a new host, the host can momentarily cease all transferring of information and move about freely while everyone else is stuck in limbo grasping for a lifeline to the host. Note that Lag Switching is only possible on Listen Servers and cannot be done via P2P or Dedicate Servers
Because Listen Servers are relying on a host who most likely has your normal, average bandwidth there lies massive potential for an unstable connection. Most people don't dedicated a sufficient amount of bandwidth to play Call of Duty or any other online game. Its a no-hold-bar for bandwidth in the average home.
So before a lobby starts a player might have more than enough upload and download to be a host and so a lobby will center around this person and his connection. The players will be picked accordingly and everything will seem fine. However, once the match starts there's an endless number of events that could happen and this host might lose available bandwidth and no longer has the capacity to effectively host a match. Since the mitigation for preventing catastrophic lag is set to take place at such a high ping, the game will continue to play out even though the 50ms threshold noticeable lag has been breached
How Listen Servers Can Work
This form of hosting matches is not 100% broken. As long as the host is able to make rounds to every player in a reasonable amount of time this can work quite well. Matching players based on the following factors can lead to premium playability:
|Reliability/Stability||Grade given to a player's connection based on the history of their connection. Positive grades are given for consistency|
|Physical Location||Player's physical geographical location to the host|
|Maximum Ping||The amount of time it takes for a player to communicate with all other players in a lobby (in milliseconds)|
|Maximum Bandwidth||The maximum capacity in for both upload and download (in kb/s)|
If all 12 players in a lobby can fit this criteria then we will certainly see a improvement in the quality of matches. Listen Servers can work, I'm sure all of us have had a match that played just fine and it was probably one of our most memorable matches. The first step towards progress is fixing match making and tightening the requirements for who gets to play with who
Listen Servers also force the issue of how "involved" the game can be before it is self defeating. The more intense a game is with heavy gun fire and lots of action taking place over a shorter period of time the worse lag will be because lag comp is constantly having to work to compensate all players to more pieces of action.
Imagine you're a photographer and you're taking pictures of two events. A graduation speech and a rave. Considering you understand lag comp and how it works, how much harder would lag comp have to work if it were helping you capture all the moments of a rave vs a grad speech?