Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Secondlife should go P2P

blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-13-2004 00:15
(note: couldn't search on P2P and not sure searching on "*P2P*" actually works .. so if I sound redundant here .. please accept my apologies)

I propose Secondlife(SL) should migrate its grid structure to one which is Peer to Peer (P2P). That is, one where players are not only clients but also host simulators on their respective computers.

There are two aspects to this proposal - whether if it is a good idea (for everyone, residents and Linden Labs), and if it is, whether it's possible. I believe a definite yes can be answered in both cases.

Why is it a good idea for residents and Linden Labs for SL to move to P2P?

Linden Labs have shown that their core value proposition is not the generation of content or a compelling experience for the individual game player, but rather by hosting a community and orchestrating an economy which makes the community compelling.

In other words, much like a real life government, Linden Labs have shown that they shine best not when they create things but rather create an infrastructure which encourages free individuals to create and contribute things. How they do this so well has been already been discussed[1], and I will not address it here.

Unfortunately, from either engine licensing reasons or other orthogonal issues, they currently run and completely control the grid. This is unfortunate and is creating artifical friction that slows SL population growth. If we continue the government anology, this is the same thing as if the US government sold all land and didn't simply give it away for free to settlers.

I believe to encourage the mass adoption and wholesale immigration into the virtual country of SL, Linden Labs(LL) should open up their network and let anyone host a simulator. By doing so, we will see an immediate and massive increase in the amount of land for the use of second life residents.

True, some peers will be unstable. However, arranging an architecture which allows people to recognize unstable peers apriori will allow for a convergence to stability such that simulators which wish to attract people will try hard to be up all the time.

Obviously, SL is a commercial enterprise and needs to make money. There are a large number of ways for LL to do this in a P2P world.

They include being the central bank, and do all or some of the following:
- Tax all player to player transactions (ala PayPal)
- Charge fees for storing funds
- Or, like a bank, earn interest off the collective funds stored in the system..
- Literally print money (and then sell it)


I think this is very doable technically. If we can extrapolate the grid concept such that anyone can add themselves as a peer, then the only issue that is left is the development of a strong and secure central banking system which allows for secure financial transactions between individuals.

Assuming that all financial transactions need to go through a central clearing house network as they do now (and *NOT* through the peers themselves) then I believe it would be possible to do these transactions in a secure manner.


To conclude, I think the proposal can also be looked at in a different light. If Linden Labs doesn't do it - someone else will. The crystal space engine is gaining strength in technical feasibility and there are a number of nascent metaverse projects using the engine to do what I suggest above. As the CS engine develops streaming and develops better graphics, the question will no longer be should Second Life go P2P, but which open source project will replace Second Life?


References
[1] Ondrejka, Cory R, "Living on the Edge: Digital Worlds Which Embrace the Real World" (June 5, 2004). http://ssrn.com/abstract=555661
Carnildo Greenacre
Flight Engineer
Join date: 15 Nov 2003
Posts: 1,044
08-13-2004 00:21
You might want to re-title this as "Player-hosted sims" or something similar. Recently there have been two threads where someone suggested that LL use peer-to-peer technology to accelerate the download of SL data; both times the original poster was shot down.
_____________________
perl -le '$_ = 1; (1 x $_) !~ /^(11+)\1+$/ && print while $_++;'
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-13-2004 02:08
I posted this in "New In Second Life"

Go here if you wish to reply -- /invalid_link.html
Aaron Levy
Medicated Lately?
Join date: 3 Jun 2004
Posts: 2,147
08-13-2004 04:24
Blaze, Philip Linden in the 1-year anniversay simulcast said that this is on the horizon. Do some research, bud. :)
Catherine Omega
Geometry Ninja
Join date: 10 Jan 2003
Posts: 2,053
08-13-2004 07:06
Keep in mind that while remote-hosted sims have always been something the Lindens were interested in implementing, SL will saturate a T1 if you let it. Running a sim on your DSL connection really isn't something that's terribly feasible.

If you wanted to run your own sim on your own hardware, you would either still need to use the SL asset server, or at least a 5 - 10Mbit upstream connection if you wanted to fill it up.
_____________________
Need scripting help? Visit the LSL Wiki!
Omega Point - Catherine Omega's Blog
Wraith Jensen
I can walk thru walls....
Join date: 8 Aug 2004
Posts: 130
08-13-2004 11:02
You nailed it right there, Catherine.

Bandwidth.

I would like to see player-hosted sim, as much as anybody, but it's just not feasible. The round trip from Client Player to LL to Server player would be just too long.

About the only thing we could do is store geometry and basically act as a remote data store for LL's own servers... but even that may not be practical due to bandwidth limitations. LL probably has a gigabit internal network, where we have little 128k or 256k upload pipes.

In short, if you want player-rum sims, there is a project on Sourceforge. Just gotta look for it.
_____________________
Tinker LaFollette
Dilettante
Join date: 6 Jan 2004
Posts: 86
08-13-2004 14:22
Rather than a true P2P system, how about something more like Akamai? Geographically distributed servers, at coho facilities in other cities where lots of SLers live. (Seattle? New Jersey? Britain? ... dare I hope, Texas?) Perhaps to host sims, perhaps to mirror the asset servers, or perhaps both.
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-13-2004 20:20
Aaron Levy, I'm sure LL has everything (including P2P) in mind. They probably want SL to make you toast in the morning.

However, to keep everyone's eye on the ball though, you need to constantly remind one another of what is important here.

P2P is the ball as far as I am concerned. Without it, we're just living in a closed-standard propietary world that will simply be replaced by something else at some point.

However, I did miss it in the 1 year simulcast. Thanks for mentioning that, I will check it out.

As to BandWidth, you can get 100 mbps down / 50 up in Japan right now. 10 mbps is 10$ / month in Sweden. BW will soon not be an issue.

Also, though, there needs to be a degraded experience. I wouldn't mind being able to go in world and get blocky graphics when I need to do quick runs from someone's computer that can't handle the full thing.
Carnildo Greenacre
Flight Engineer
Join date: 15 Nov 2003
Posts: 1,044
08-14-2004 14:15
Bandwidth is still an issue, and will be for the forseeable future.

Here in Spokane (population 200,000), the fastest cheap connection is 3Mbps/256kbps for $60/mo -- and Comcast will cut you off if you move too much data. A T1 runs around $500/mo.

Nationwide, the fastest consumer-level service I know of is 6Mbps/768kbps for $100/mo. Verizon is rolling out 10Mbps/??? fiber, but that won't be widely available for years.
_____________________
perl -le '$_ = 1; (1 x $_) !~ /^(11+)\1+$/ && print while $_++;'
Azelda Garcia
Azelda Garcia
Join date: 3 Nov 2003
Posts: 819
08-14-2004 14:27
Yes, well you can rent your own dedicated games server with a decent upstream bandwidth, but it'll cost you almost the same as your own island sim :-O

Azelda
_____________________
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-15-2004 06:11
Anyone can colo for 79$ and I get 1000G up/down / month. If I asked a friend, he'd probably let me colo with him for free.

It's 200$/month to run a sim and you have to buy the land seperately (~2000 USD is what zazi is going for?)

But anyways, Carnildo Greenacre, you can get cogent which is 100 mbps for like 20$ / month in certain apartments in various cities already. You can already get 100 up/50 down in japan pretty much everywhere.

This is not a few years off. This is like next year.
Catherine Omega
Geometry Ninja
Join date: 10 Jan 2003
Posts: 2,053
08-15-2004 10:42
Okay, so ignoring bandwidth usage for the moment... how do you implement DRM properly under this model? If I run a server, how does Linden Lab prevent me from ripping off everything anyone brings into it?
_____________________
Need scripting help? Visit the LSL Wiki!
Omega Point - Catherine Omega's Blog
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-15-2004 11:21
Well .. think of it this way - what keeps you from ripping off the SL client?

It's a 'script' that you run on your computer.

Basically, everything is compiled into byte code. You can reverse engineer it in the same way you could reverse engineer word for windows.

Other DR stuff, like textures and what not you already download to your own box anyways so no difference there.
Hiro Pendragon
bye bye f0rums!
Join date: 22 Jan 2004
Posts: 5,905
08-15-2004 13:08
If, as Cory's white papers suggest, the goal of Second Life is the eventually creation of the Metaverse, P2P is inevitable.

However, I think in the near future this is still an experiment, and we are a few years from P2P. I've done a LOT of thinking about this issue.

-Hiro Pendragon
Serving SL from Varney 200,200
Khamon Fate
fategardens.net
Join date: 21 Nov 2003
Posts: 4,177
08-15-2004 14:10
don't call it an experiment hiro. they'll really bite your head off for that one.
_____________________
Visit the Fate Gardens Website @ fategardens.net
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-15-2004 22:53
How about sharing some of that thinking?

Why is P2P a few years off? I don't think bandwidth is the
issue.

If we can't stop harping on the bandwidth issue (it isn't, do the research) then we can at least just open up the grid near term.

I can't imagine anyone is going to bite anyone's head off over that. I mean, yeah, it's an experiment .. but so what? What isn't? Hell, Microsoft is an experiment!

A 90% monopoly that runs the worlds operating system? Haven't seen that one done a lot of times..
Carnildo Greenacre
Flight Engineer
Join date: 15 Nov 2003
Posts: 1,044
08-16-2004 00:00
From: someone
Originally posted by blaze Spinnaker
Anyone can colo for 79$ and I get 1000G up/down / month. If I asked a friend, he'd probably let me colo with him for free.


Have you actually tried maxing that out? I've heard from a lot of people that if your hosting is charging less than about $0.50/GB, they'll be very unhappy with you if you actually use your bandwidth allotment.

From: someone
But anyways, Carnildo Greenacre, you can get cogent which is 100 mbps for like 20$ / month in certain apartments in various cities already. You can already get 100 up/50 down in japan pretty much everywhere.


Link, please? The first Google hit for "cogent" gives a page with the title "100 Mbps for $1,000 per Mo. with Cogent, the lowest priced ..."
_____________________
perl -le '$_ = 1; (1 x $_) !~ /^(11+)\1+$/ && print while $_++;'
Carnildo Greenacre
Flight Engineer
Join date: 15 Nov 2003
Posts: 1,044
08-16-2004 00:04
From: someone
Originally posted by blaze Spinnaker
Well .. think of it this way - what keeps you from ripping off the SL client?


Prims: Nothing
Textures: You can't be sure you're getting the full-detail version
Sounds: Nothing
Avatars: Unknown. I don't know how they get streamed.
Scripts: You can't. They never leave the server.
Animations: I think they're the same as scripts.
_____________________
perl -le '$_ = 1; (1 x $_) !~ /^(11+)\1+$/ && print while $_++;'
Adam Zaius
Deus
Join date: 9 Jan 2004
Posts: 1,483
08-16-2004 02:17
From: someone
Originally posted by blaze Spinnaker
If we can't stop harping on the bandwidth issue (it isn't, do the research)
[/B]

This is the biggest issue at the moment:

Each avatar consumes minimum of about 50kbps when idle, and around 300kbps when doing something (with spikes bringing into the mbps range if allowed to.)

Each server must maintain a connection to both the data, and user servers. The idle chatter between these itself, probably ranks in the mbps range (thankfully since LL colo's in the one facility, so this is mostly LAN traffic.). A lot of this idle chatter relates simply to the way LL has built their network, it's extremely centralised.

So, lets say your sim is capped to 5 users, your looking at (assume half are active)

(300kbps * 2.5) + (50kbps * 2.5), upstream alone. We wont cover the idle chatter, since exact figures are unknown. At the very least, we have exceeded the 768kbps upstream that's the highest availible for consumers in the US. This will mean you wont really be able to play becuase your upstream will be hosed. Plus since your connection is hosed, and SL primarily uses UDP packets, your going to experience _massive_ packet loss, also let's not forget that most people wont infact have 768kbps upstreams.

Now, dedicated CoLo facilities may be an option; however there's another bandwidth/connection related problem. Ping. SL handles a lot of important communication with the data/user server as a proxy. This means your server must be able to communicate with those two servers in a decent time. CoLo facilities with decent bandwidth in a nearby location may infact have a great shot at being able to run a sim, however it's not guarunteed, and you will eat through your data allowance faster than you can say 'excess bandwidth charges'. (Most dedicated plans will put you at around 100GB/month. Unfortunately with SL, this is definetely childs play if you get more than a handfull of visitors).

So at the moment, LL will need to decentralise the network some more before player run sims' are a possibility, and work on lightening the bandwidth load (or focus all downloads from the asset server, or similar service). This is of course, forgetting the biggest issue: Licensing, but that's another story.

-Adam
_____________________
Co-Founder / Lead Developer
GigasSecondServer
Hiro Pendragon
bye bye f0rums!
Join date: 22 Jan 2004
Posts: 5,905
08-16-2004 02:26
From: someone
Why is P2P a few years off?


About $200 pure profit / month per sim.

I haven't heard Linden Lab talk about any way to replace one of their main sources of income, namely land dues, but certainly when they do it will remove the biggest roadblock of P2P Metaverse.

Khamon, I stand by what I say about an experiment, but let me clarify - I meant it as far as the Metaverse goes, not as a profitable MMO goes. Linden Lab seems to have a proven business model, and is rapidly expanding. Certainly that aspect is not experimental.

However, when you talk about the Metaverse - the Metaverse is inherently a distributed system. Linden Lab has been continuing to improve their system model, with the wisdom that it listens to its players making it evolve and hone itself rapidly.

My ultimate thoughts on the issue of the evolution from Second Life to Metaverse:

1. Second Life, to become the Metaverse, needs to be as accessable and widely used as the current Internet.
2. To do so, it must be (a) distributed (b) extremely robust (c) extremely searchable
3. All three cases are matters of organization.
4. Organization of the Metaverse is a great deal of a heuristic experiment. It takes using it to learn how to improve it.
5. Linden Lab has already shown that they value this approach through customer service, feedback, town hall meetings, and a wonderfully receptive staff. They are on the right track.

And that's just the overview. :)

-Hiro Pendragon
Serving SL from Varney 200,200
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
08-16-2004 04:33
I think a percentage of 100's of millions of transactions will be a lot more profitable than hosting for a few thousand sims.

Not to mention less over head. As an operations manager in a previous lifetime I am well aware of the cost of managing 1000s of servers.
Eggy Lippmann
Wiktator
Join date: 1 May 2003
Posts: 7,939
08-16-2004 05:24
From: someone
Originally posted by Carnildo Greenacre
Prims: Nothing
Textures: You can't be sure you're getting the full-detail version
Sounds: Nothing
Avatars: Unknown. I don't know how they get streamed.
Scripts: You can't. They never leave the server.
Animations: I think they're the same as scripts.

Are textures ever saved in the cache before being fully downloaded? I dont think so. Anyway, you can find out when a texture has finished downloading with the texture console... not that its not fairly obvious visually.
Avatars, AFAIK, are a default mesh (the "Ruth" avatar) to which transformations are applied based on a set of 50 or so integers corresponding to the slider values. Your clothing, skin, tattoos etc, is baked onto a single texture that is then applied to the resulting mesh.
Animations are indeed streamed to the client. How would they ever work if they werent?
And scripts can be intercepted when someone saves them, by sniffing packets being sent to LL's servers, but you would have to 0wn a router or something :)
Carnildo Greenacre
Flight Engineer
Join date: 15 Nov 2003
Posts: 1,044
08-16-2004 23:46
From: someone
Originally posted by Eggy Lippmann
Avatars, AFAIK, are a default mesh (the "Ruth" avatar) to which transformations are applied based on a set of 50 or so integers corresponding to the slider values. Your clothing, skin, tattoos etc, is baked onto a single texture that is then applied to the resulting mesh.

So avatars can be stolen, but it's impractical to steal clothing or tattoos.

From: someone
Animations are indeed streamed to the client. How would they ever work if they werent?

But are they streamed in the form of "this is an animation: play it", or in the form of "the left leg is here, the right arm is here, the middle finger is here..."? It's practical to intercept the first form, but not the second.



And I still want to know about that "100 Mbps for $20/mo" deal.
_____________________
perl -le '$_ = 1; (1 x $_) !~ /^(11+)\1+$/ && print while $_++;'
Azelda Garcia
Azelda Garcia
Join date: 3 Nov 2003
Posts: 819
08-17-2004 00:45
> But are they streamed in the form of "this is an animation: play it", or in the form of "the left leg is here, the right arm is here, the middle finger is here..."? It's practical to intercept the first form, but not the second.

It's probably sent in compressed bvh form. Bvh is just a text file with a list of the skeleton names and offsets, followed by a list of key frame rotations.

Arguably for avatar animations, they can probably remove the skeleton names and offsets since theyre defined by your avatar configuration, so its just a list of rotations:

CODE

struct ROT
{
single x;
single y;
single z;
single s;
};

struct keyframe
{
single fTimeOffset; // time since start of animation
ROT rotarm;
ROT rotlowerarm;
ROT rothand;
...
};

short iNumFrames; // 65536 frames probably enough, and saves two bytes on a long
keyframe Keyframes[ MAX_KEYFRAMES ];


Azelda
_____________________
Hiro Pendragon
bye bye f0rums!
Join date: 22 Jan 2004
Posts: 5,905
08-17-2004 03:09
From: someone
I think a percentage of 100's of millions of transactions will be a lot more profitable than hosting for a few thousand sims.

Not to mention less over head. As an operations manager in a previous lifetime I am well aware of the cost of managing 1000s of servers.

Problems with sales tax:
1. no one likes a sales tax
2. people will find super duper easy ways to get around this, like creating artificial credit cards that will store values, knows your total balance so you don't overspend, and updates once a week or month, circumventing the fees
3. If SL goes distributed, legally Linden Lab can lose ownership of all content that it doesn't directly own. For instance, Kazaa does not own the software or shared files of end-users, nor does it have any legal claim over the transactions between people.

I am confident Linden Lab could find alternate means of income with a P2P system, but it won't be through sales tax. More likely it will be with a smart search engine, advertising, upgrading the system, developing content, managing communities, or advertising.

-Hiro Pendragon
Serving SL from Varney 200,200
1 2