[p2p-hackers] P2P or centralized
David Barrett
dbarrett at quinthar.com
Thu Aug 14 20:18:55 EDT 2008
Heh, now you've got me riled up. ;)
Salman Abdul Baset wrote:
>>
>> The point is those p2p layers are far easier to build atop a solid
>> centralized core than on top of more p2p.
>
> Sure. Cost is usually the differentiator but it is probably decreasing.
Er, not sure I follow, but yes. The cost of centralized components is
decreasing while their power is increasing.
>>> Also, I suspect that the
>>> administrative costs and pains for managing 15-20 servers may overshadow any
>>> per-month bandwidth costs for connectivity.
>> Are you suggesting that it's easier to manage a 10-million node DHT than
>> 15-20 centralized servers? I think not.
>>
>> If you have 15-20 servers, that means you have millions of active users
>> and you are a massive success -- the centralized costs and
>> administration headaches are utterly trivial by comparison.
>
> Real numbers will be helpful here. I will like to compare the
> administrative/bw costs of running Skype, GTalk, MSN, and Yahoo
> messengers. Anyone with insights?
I'm giving you real numbers. I'm in a position to know, as I was the
engineering manager or Red Swoosh, acquired by Akamai. Red Swoosh uses
central indexing servers for P2P content distribution, and has
successfully installed to hundreds of thousands of desktops. This is
not guesswork or simulation, this is the real world.
Prior to the acquisition, the servers were off the shelf dedicated
servers, and they could handle 100K connections/server without breaking
a sweat, and this was before any hard-core optimizations.
>> Also, I should clarify -- the 100K users / $100/mo box ratio I tossed
>> out is a rule of thumb because it's easy to remember and easy to
>> achieve. With some work you can find cheaper boxes ($50/mo) and get
>> them to support even more connections 250K seems pretty easy. Even
>> 1M/box seems achievable.
>
> As long as they only do presence. YouTube may not tell the same story.
Er, let me clarify once again -- I'm talking a rendezvous service that
maintains near-idle keepalive connections. YouTube is about as far from
that as I can imagine.
>> Never underestimate the power of appropriate centralization, or your
>> competitors will beat you to the punch years early.
>
> Sure.
>
> However, there was nothing that prevented MSN or Yahoo, purely centralized
> solutions, from offering a good IM/VoIP solution. Skype's success is not
> solely attributable to p2p. However, the economic cost of their entry into
> VoIP/IM space was lowered by using a p2p solution for NAT traversal.
Skype's success was in a distributed relay service -- brilliant. But
Skype did it atop an unnecessarily-distributed rendezvous service.
Luckily, they had one sitting around from Kazaa, so it was an easy
decision. If you have proven software on a hundred million desktops, I
agree -- use it, no matter how it's built. But if you don't, then do
what is easiest.
Regarding the big names, they stopped innovating their IM clieints in
'98. Microsoft and Yahoo didn't give a damn about VoIP because the
revenue it generates is insignificant to a company that size. It
certainly wasn't due to a lack of capability. Had they really become
interested (and I still don't think they are today), they could have
done the distributed relay part better than Skype.
But they're big companies focused on something else, with an established
userbase so huge it puts everything else to shame. They're risk
adverse, with crappy engineers, with comparatively little to gain, and
with a lot to lose. Same story with every big company.
>>> Nodes need to connect to a central server to get their identity signed by a
>>> central server. This must happen to prevent Sybil attacks. A bootstrap server
>>> can be co-located with this authentication server.
>> That's one thing that's bothered me with a lot of discussions of P2P.
>> At the end of the day, real-world p2p systems utterly depend on
>> reliable, realtime access to centralized components. Successful systems
>> recognize and exploit this.
>
> BitTorrent, eMule, Skype are examples of successful distributed systems.
> They may not be 'purely' distributed, but work reasonably well.
>
>> Usability, security, decentralization. Pick any two.
>
> For Skype, can we pick all three? :)
Skype isn't decentralized. They have central bootstrapping, central
authentication, central billing, etc. If Skype says you don't talk, you
don't talk. If Skype blows up, you don't talk. And as happened last
year, if their pointless rendezvous mesh gets destablized due to massive
reboots, you don't talk for a long time.
AIM, ICQ, or MSN are all far bigger than Skype; have they *ever* gone
down that long?
Anyway, just pushing back on the religion that P2P has developed. It's
fun. It's sexy. It's really hard. But it's often pointless.
-david
More information about the p2p-hackers
mailing list