We frequently see comments like the following espousing the virtues of P2P as a model for robustness (from VoIPGuides):
Some people reportedly said, [XYZ service] won’t work if they got closed down without understanding how they exactly work? No one really knows whether they use a Hydrid [sic] P2P or pure P2P. … If they use pure P2P, they could have serious issues but will continue to run irrespective of the company, coz the peers are responsible for data transfer and there is no central server.
In this case, we even have language like pure P2P vs. hybrid P2P or whatever. Right off the bat, let me say that the above is essentially inane (that is to say that it is nonsensical, has no meaning, a pile of perfectly good words, with no meaning in particular, when taken together).
First, I need to say that our general use of the term P2P is not cut and dry. Not everybody means the same thing, and I’d venture a guess that most people have no idea what they mean. P2P is supposed to stand for peer-to-peer. That alone tells us nothing, since every node on the Internet is theoretically a “peer”. At its core, the term means nothing in particular, other than two nodes communicating in some way, which describes nearly every kind of Internet application. So P2P implies more than the term itself and in particular, it generally is supposed to suggest a model in contrast to the common client/server model, in which many “client” nodes interact with a single, or a small number of “server” nodes. Further, P2P tends to suggest a distributed database, and more specifically, a distributed hash table model.
P2P does NOT guarantee that “there is no central server” as suggested inthe comment above. For example, it is well documented that Skype quite clearly has a central server model for certain aspects of its protocol (see Blackhat 2006 document).
Anyway, the notion that P2P automatically implies fewer points of failure, or an inherently better fail-over behavior, has no basis in fact. There are many factors that determine the reliability and fault tolerance of a given system. P2P systems are not inherently more reliable and I think we have clear evidence of that in the recent Skype outage.