I've never understood why consoles continue to use P2P for multiplayer games (okay I lie, there is obviously a economical advantage), especially when customers are paying for a online gaming service. Just from a technical standpoint it is full of problems:
- You are using a consumer connection for one of the most challenging types of communication. It is very latency sensitive, does not play nice at all with dropped packets and makes heavy use of your upstream connection which is typically weak on consumer connections.
- Consoles are typically about extracting the greatest amount of performance you can from the hardware yet you are also trying to host a multiplayer game. I've run a few gaming servers for some PC games (Arma 2, Source, Minecraft, etc.) and they can be very, very taxing and can require some serious hardware when you start looking at large number of players.
- Not everyone who owns a console is some technical expert. While there are technologies designed to alleviate the problem, e.g UPnP, it places a requirement on the consumer that is not really required.
- Host has an advantage. Almost zero latency and can abuse the fact they are hosting the game by using things like a lag switch.
It sucks big time, and as a result, Skype can now be wiretapped which isn't nearly as easy on a P2P network, since everyones a node, and supernodes were chosen based on availability.
Not the Microsoft Skype wiretap memee again. Read the PRISM slides, Skype was tapped before Microsoft bought the company, let alone rearchitected the system
And being paid to be able to eavesdrop. Didn't the government have a huge bounty back in the day for anyone providing a way to decrypt and eavesdrop on skype?
- You are using a consumer connection for one of the most challenging types of communication. It is very latency sensitive, does not play nice at all with dropped packets and makes heavy use of your upstream connection which is typically weak on consumer connections.
- Consoles are typically about extracting the greatest amount of performance you can from the hardware yet you are also trying to host a multiplayer game. I've run a few gaming servers for some PC games (Arma 2, Source, Minecraft, etc.) and they can be very, very taxing and can require some serious hardware when you start looking at large number of players.
- Not everyone who owns a console is some technical expert. While there are technologies designed to alleviate the problem, e.g UPnP, it places a requirement on the consumer that is not really required.
- Host has an advantage. Almost zero latency and can abuse the fact they are hosting the game by using things like a lag switch.