Sign in to follow this  
hplus0603

New P2P technology

Recommended Posts

wodinoneeye    1689

The problem I saw on Second Life (and will be the same with Outback Online) is that large amounts of content has to be pumped to the users and lags too much. That contents volume is supposedly getting larger as fast as the avarage customers bandwidth is increasing (meaning it will continue to be laggy).

Another possibly more significant problem is that Second Life in my opinion is still little more than a pretty chat room. The players interactions with scenery objects is still primitive/limited. Creation of good interactive content is the realm of experienced scripters and will require significant sets of tools to allow even a fraction of players to create the needed assets. Likewise easy modification/reuse of 'expert' created assets requires idiot-proof 'easy to use' tools which are a tall order for even the best game companies.

Distributing the server will increase the available resources (for asset distribution) as well as CPU power for behavior of interactive objects (long term AI will dwarf other CPU uses..).
I dont doubt that security and reliability issues can be solved.

Share this post


Link to post
Share on other sites
Ozymandias43    158
I don't know if the scripters' skill requirements are a fundamental problem for Second Life, since it has a large economy based on the concept that it is difficult to create a good object, so you should purchase very good ones from other people. The dedicated creators learn to create; the hobbyists buy what they need from the dedicated; hence, the dedicated creators are encouraged to keep creating.

Share this post


Link to post
Share on other sites
hplus0603    11348
Quote:
I dont doubt that security and reliability issues can be solved.


I admire your optimism! Research so far hasn't actually gotten very far on trust in P2P situations without some separate central authority somewhere.

Quote:
it is difficult to create a good object


The reason economies let this work in places like Second Life and There, is that those economies enforce IP rights, through centralizing commerce. How would you protect against other people stealing your object in a P2P setting?

Share this post


Link to post
Share on other sites
Nathan Baum    1027
Quote:
Original post by wodinoneeye
The problem I saw on Second Life (and will be the same with Outback Online) is that large amounts of content has to be pumped to the users and lags too much.

It doesn't follow that the same problem exists with Outback Online. The fact that OO is designed to avoid these problems strongly implies they might not (at least, not to the same degree).

The first point is that the P2P nature of OO means that the most popular content will be mirrored on many clients, potentially including some nearby clients.

The second point is that if, as seems sensible, OO won't force all users into the same virtual world, users can pick worlds with a content-richness-level which suits them.
Quote:

Another possibly more significant problem is that Second Life in my opinion is still little more than a pretty chat room.

This sounds more like your problem than Outback Online's.
Quote:
Original post by hplus0603
Quote:
I dont doubt that security and reliability issues can be solved.

I admire your optimism! Research so far hasn't actually gotten very far on trust in P2P situations without some separate central authority somewhere.

By 'trust', do you mean ensuring that the content served up by a host hasn't been tampered with?

Surely this can be ensured by having the content creator sign their content. You could ask the creator's host for a secure hash of a particular item of content and then get that content via the P2P network, safe in the knowledge that if the hash matches, the content is valid. To reduce load on the creator's host even further, you could just ask for a public key and have the creator sign all their content with that.

This kind of authentication isn't generally possible in traditional P2P networks because the original sources of files on P2P networks generally don't want to be verified as the original source, for obvious reasons.
Quote:

Quote:
it is difficult to create a good object

The reason economies let this work in places like Second Life and There, is that those economies enforce IP rights, through centralizing commerce. How would you protect against other people stealing your object in a P2P setting?

I think you're making unwarranted assumptions.

People 'stealing' your object could only be a problem if the entirety of what made an object would be replicated throughout the network. That might happen for some objects, but if you want to keep control of your objects, you would only allow its visual appearance to be replicated, keeping the code behind it on your own host.

Granted this means the visual appearance can be copied by anyone who can see your object, but that's no different to Second Life.

Details are currently sketchy, of course, but I would guess that Outback Online replicates models and textures and some code. This is rather like how the web makes it possible for anyone who can access the site to copy the layout, images and javascript of GameDev.Net, but not the server-side ASP code. Having that replicated in other client nodes is little different from accessing the web via layers of proxy.

Share this post


Link to post
Share on other sites
OrangyTang    1298
Quote:
Original post by Nathan Baum
People 'stealing' your object could only be a problem if the entirety of what made an object would be replicated throughout the network. That might happen for some objects, but if you want to keep control of your objects, you would only allow its visual appearance to be replicated, keeping the code behind it on your own host.

Granted this means the visual appearance can be copied by anyone who can see your object, but that's no different to Second Life.

Details are currently sketchy, of course, but I would guess that Outback Online replicates models and textures and some code. This is rather like how the web makes it possible for anyone who can access the site to copy the layout, images and javascript of GameDev.Net, but not the server-side ASP code. Having that replicated in other client nodes is little different from accessing the web via layers of proxy.

But if theres no central server, wouldn't that require that the creator remained logged in all the time, otherwise the item would stop working? That doesn't sound very practical.

Share this post


Link to post
Share on other sites
Nathan Baum    1027
Quote:
Original post by OrangyTang
Quote:
Original post by Nathan Baum
People 'stealing' your object could only be a problem if the entirety of what made an object would be replicated throughout the network. That might happen for some objects, but if you want to keep control of your objects, you would only allow its visual appearance to be replicated, keeping the code behind it on your own host.

Granted this means the visual appearance can be copied by anyone who can see your object, but that's no different to Second Life.

Details are currently sketchy, of course, but I would guess that Outback Online replicates models and textures and some code. This is rather like how the web makes it possible for anyone who can access the site to copy the layout, images and javascript of GameDev.Net, but not the server-side ASP code. Having that replicated in other client nodes is little different from accessing the web via layers of proxy.

But if theres no central server, wouldn't that require that the creator remained logged in all the time, otherwise the item would stop working? That doesn't sound very practical.

Well, there are two options: either you keep your code to yourself, or you don't. If you keep your code to yourself, then your host must be connected to the network for others to use it. That's unavoidable.

However, there isn't a simple black-and-white "keep your code" or "give your code to everyone" choice. The advantage of a P2P solution is that centralised servers are not required, but that doesn't mean that they are prohibited.

Rather than creating objects on your own host, which might go offline from time-to-time, you might create them on a third-party host. This wouldn't be a single centralised repository for all objects like with Second Life, but one of many repositories which provide hosting for those who can't host their own coded objects (some might be commercial, there would certainly be free ones). For the purposes of authentication, that repository would serve as the author of the content it serves.

Share this post


Link to post
Share on other sites
hplus0603    11348
Quote:
Granted this means the visual appearance can be copied by anyone who can see your object, but that's no different to Second Life.


Actually, it is different, because the same system that grants access to the content, can have an audit trail of the content, and a system of enforcement.

When I say trust in P2P is intractable without a centralized server, it doesn't so much have to do with trusting an origin (although that, too, needs a centralized server or root of authenticity to clear the certificates); it has to do with making decisions and transactions that you can trust in an economic sense.

If my avatar came into your world, and claimed to have 3,530,200 your-world-dollars, how do you know that that's a true claim?

Share this post


Link to post
Share on other sites
Nathan Baum    1027
Quote:
Original post by hplus0603
Quote:
Granted this means the visual appearance can be copied by anyone who can see your object, but that's no different to Second Life.

Actually, it is different, because the same system that grants access to the content, can have an audit trail of the content, and a system of enforcement.

How would the server enforce copying restrictions on the client? I can imagine one might use watermarks to detect copied content, but I'm not aware of effective watermarking schemes for meshes, plain text or source code. How would an audit trail help?

Also, Second Life doesn't (last time I checked) actually have automated mechanisms for detecting copied content. For example, images are not watermarked. This would be fairly trivial, and would allow the server to detect at least some copied content.

Of course, nothing in principle prevents SL users from watermarking their textures themselves, and setting up bots to wander around looking at textures to check for unauthorised copies. That's not really a system of enforcement, though, but rather a system of detection of infringement.

If I'm reading Linden Lab's opinions correctly, I think they'd be opposed to automated enforcement anyway. Rather than treating copybots as a security hole to be fixed, they instead explicitly note that not all forms of copying are not copyright infringement, and state that it is up to the content owner to respond to infringements.
Quote:

When I say trust in P2P is intractable without a centralized server, it doesn't so much have to do with trusting an origin (although that, too, needs a centralized server or root of authenticity to clear the certificates);

No it doesn't. A centralised server is useful if you need to know if you can trust a host with sensitive data, but it isn't at all needed if you need to know if data you've received from a third party really originates from the host it purports to: you just need to connect to the host and ask for a key to check the data against.
Quote:

it has to do with making decisions and transactions that you can trust in an economic sense.

If my avatar came into your world, and claimed to have 3,530,200 your-world-dollars, how do you know that that's a true claim?

Well, if it was my world, I'd know, because I'd have recorded how many my-world-dollars your avatar has in my database. That's assuming my world even has an economy.

I think what you're really getting at here is that if you want a unified currency across all worlds, you need a centralised bank. As before, P2P solutions don't require centralised services, but they don't prohibit them either. Of course, you don't have to have one centralised bank: there may be many.

Indeed, if my world does have a well-thought-out in-game economy, I probably don't want other worlds to be able to mess that up by printing silly money. For a strictly RP world, I'd want to run my own bank.

Share this post


Link to post
Share on other sites
wodinoneeye    1689
Quote:
Original post by Ozymandias43
I don't know if the scripters' skill requirements are a fundamental problem for Second Life, since it has a large economy based on the concept that it is difficult to create a good object, so you should purchase very good ones from other people. The dedicated creators learn to create; the hobbyists buy what they need from the dedicated; hence, the dedicated creators are encouraged to keep creating.



Most objects are static. Even the ones that are interactive are quite simple (and the majority seem to be gambling machines).

Once you have seen something there is little more to do with it.

Im talking about far more complex/intricate objects -- the equivalent of NPCs/pets which have behaviors, etc...



Share this post


Link to post
Share on other sites
wodinoneeye    1689
Quote:
Original post by hplus0603
Quote:
I dont doubt that security and reliability issues can be solved.


I admire your optimism! Research so far hasn't actually gotten very far on trust in P2P situations without some separate central authority somewhere.

Quote:
it is difficult to create a good object


The reason economies let this work in places like Second Life and There, is that those economies enforce IP rights, through centralizing commerce. How would you protect against other people stealing your object in a P2P setting?



As far as P2P, who says there cant be a central authority ?? Most of the schemes Ive heard discussed use the distributed nodes as slaves to be reassigned as needed and a reliable central cluster to control the slaves.

They recently made the Client Open Source and if the objects behaviors (scripts) are sent to the Clients for execution it isnt too hard to intercept and clone them right now.

Possibly the mercenary aspect of Second Life may need reassessment. I found the endless advertizements a distraction (and unfortunately THEY were the interesting parts of many scenes).



------

A scheme that used 'Peers' as distributed functional blocks that are (re)assigned frequently (executable replacement) and are anonymous/obscured as to the parts of the 'world' they act upon, it would remove the advantage of tampering with the data being processed. A large amount of the distributed functionality would likely be generic asset download and other than the object issue would make for a pointless cheat opportunity. Automatic auditing of peers would identify 'problem' nodes (such a system would be needed for reliability assurance anyway.)

Of course anything with money involved would have to be centralized in the companies computers as you could never trust any peer validation of transactions.






[Edited by - wodinoneeye on March 1, 2007 1:55:53 AM]

Share this post


Link to post
Share on other sites
wodinoneeye    1689
Quote:
Original post by Nathan Baum
Quote:
Original post by wodinoneeye
The problem I saw on Second Life (and will be the same with Outback Online) is that large amounts of content has to be pumped to the users and lags too much.

It doesn't follow that the same problem exists with Outback Online. The fact that OO is designed to avoid these problems strongly implies they might not (at least, not to the same degree).




My very next line explained this -- as the world's details/effects allowed keep increasing, the data required to be sent the players also ibcreases. Its the volume that constantly that has to be sucked through the connection (and redundant sources wont effect that).

To enhance how you aready see whats on SL (having to wait much too long for resources to load) you would have to preload alot more data so that its viwewable more instantly. THAT feature would require a major jump in bandwidth ability (multiplying the effect of having higher quality content...)

Share this post


Link to post
Share on other sites
Maega    707
I don't see this working that well due to the cheating problem mentioned above.

You all remember Diablo 1? :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this