Starting in 1996, Alexa Internet has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to the Wayback Machine after an embargo period.
It is still very focused on training and meeting scenarios, but since this seems very simple to understand if we talk bout the benefits of 3D our first RL usecase will be training focused as well. You will read some more news on the Rl-usecases in ~2 weeks. Later on this year we will focus on other, non training based usecases.
Back to the ebook, i did enjoy the overview. And yes, opensim did receive a pretty nice summary. Talking about meetings and trainings, opensim is a very usable platform. The main point we need improvement are:
embeded application view (application sharing)
voice (3D spatial sound from each participant).
improved NINJA-physics (per joint definition of possible axis) would help
Embedded applications
Being in a 3D environment, it does not make any sense to use it just as a chat tool and open your document to share (or the data do look at, like measurements or a presentation) in a separate window. While collaborating on document (”move my mouse” techniques) may be just step 2, viewer must be included, soon. Best way would be to implement a handful of widely used clients. From what the industry demand is, usage of RDP(remote desktop protocol) is essential. it offers remote access even to the desktop (windows xp, vista, 7) and collaboration natively. The next important would be the usage of NX, which is well supported on *nix platforms, as well as on windows. its available open source and with commercial support. its capable of handling slow links and carries stuff like the graphical linux desktop . While it does not sound like it makes sense, ssh would be my choice #3. it has proven to be the secure transport for other things, and maybe is a tool that even helps to spread opensim by making opensim serversupport on linux easier.
A good place to learn from is project wonderland, based on darkstar server. As an basic intro, the video is great. As well, all people into opensim development and projects should spend 1h on their homepage. Just to add some visions. Check also CTN article: Follow the rabbit: how to test drive Wonderland.
voice
While there are some commercial add-ons and realxtend-groupd is working on the next voice generation based on XMPP / telepathy, we still have no solution, yet.
Be aware, that we need voice that is not only spatial, but enterprise-ready. it must be able to pass firewalls like skype does. Any technique that needs dedicated ports for incoming connections does not make sense.
The Lack of voice is for RL usecases maybe as essential like the lack of groups for inworld activities.
NINJA
NINJA ? uh ? Ninja Physics have been introduced recently. They are not even covered in the ebook. If you are not aware, maybe watch the videos here or here. Think about simulations in technical or biological areas. The only thing, that is missing right now is to define “this is a bowl joint, the possible movement are x/y/z degrees - and you did create a shoulder. That way medical classroom or remote diagnostic meetings would come pretty close. NINJA will be an enabler for some RL usecases.
I will not dive into graphics, since i think the work of e.g. realextend is outlined in the ebook, at other blog sections and coming to us (via modrex), soon.
where ec2-12-345-67-89.compute-1.amazonaws.com is the name of your amazon instance you got by the launcher.
The initial password isthe one of the “avatar” you used for creating the regions.
You can use regular vnc on port 5801, as well.The cool part of the webvnc is the integrated filetransfer, so a terrainfile or oar-file transfer is quite simple.
Step 5 - some content please
So, we stand on this empty region
Now just upload a .oar using the web-vnc tools.
and load-oar…. and - amazing fast - content is in place
And with the upcomming viewer extension to handle oar… that will be even easier..
All done
I hope you did like the small intro. Try it yourself. Upload a oar-file, rename the region - just play with it.
And pause and resume as you want.
On demand.
èRemember: make sure your instance is stopped (pause), if you do not want to have the (payed) service up and running.
Since then, I did keep that in mind and watched for the ongoing work on this project, did think about usescases and had some dialogues with the inventor Balaji Sowmyanarayanan.
Some background:sim on demand actually offers exactly this, sims to host regions just when you need them. It is based on amazons EC2 (the biggest xen virtualization in the world I know of) , a web cloud “CPU-power on demand” technology. The sizing of the machines is quite nice (http://aws.amazon.com/ec2/#instance) and the internet uplink even better. Labsy uses that technology and puts customizing on top, so you can use these linux based virtual machines to actually run opensim. Storage of the customized images is done into amazons S3 web cloud storage cluster.That means, that you can have 20 performant regions up in ~5 minutes if you are prepared by having a (free) amazon EC2 account.
You are charged via amazon on the basis of CPU-usagetime, RAM, ip-traffic and storage consumption.
Sim on demand now offers stand alone simulators as well as such connected to osgrid (yes, grid mode regions server). As far as I understand, rex/modrex is in preparation.
I wanted to write about simondemand for a while, but I did read about the valentines offer when I revisited the new version yesterday.This offer is (while I don´t wanna do marketing..) everything from interesting, a nice idea to give SL-based a nice try for opensim up to very funny.
If you want to review booked services , that is possible on amazon.
How to ?
I will post a comic strip as an easy howto shortly, but should that not keep interested people away from signing up to EC2 and just play yourself.
Wishes
Some possible improvement I would find helpful for the future:
-Optional giving X/Y and region names on startup (while this is possible via login to unix now)
-A web frontend load/save oar service per region
-Decommission of unused instances via launcher
-Make wiki easier to locate information by menu
Summary
So, this is for sure one of the great ideas to bring two young technologies together and maybe even web 3D 2.0 . There are already other “on demand” providers like gogrid.com and services are not limited to the linux platform, so we can expect prices to drop a little bit while wishes for other platforms are maybe fulfilled.Labsi however is a early bird and has some experience and expertise that will give him a pool position in this race.
Early this week three vandals entered UCI Opensim grid (ucigrid04.nacs.uci.edu:9003) and completely trashed the place. What they did not consider was that they left the server logs full of virtual fingerprints.
“The place was completely unprotected, on purpose, as an on-going experiment about these trust issues”, said Crista Lopes (aka Diva Canto), Professor at UCI, ”Those 3 people happened to take the bait”.
The servers were restored from backups and are now accessible again. All precautions are taken to prevent future vandalism.
This is the first reported case of vandalism in the short history of opensim hypergrid. Opensim hypergrid forms the early version of the future 3D web. This vandalism ends the era of leaving one’s sims unlocked.
Charles Krinke from Opensim project instructs on protecting regions:
In OpenSim.ini set permissionmodules = “DefaultPermissionsModule”
In OpenSim.ini set serverside_object_permissions = true
In OpenSim.ini set allow_grid_gods = false
Go in-world and individually set parcel permissions as desired with the estate menu and the terrain menu.
In metaverse, there are a lot of beliefs about the intellectual property of a content creator (IP). Most users of the commercial systems do not read the terms of service (ToS) of their provider and are in the misleading opinion that their creations are owned by them. Because of that, we must first cover the content security at a general level. We get deeper in the solutions later, I promise.
Many countries have copyright laws. There is no general international law in Metaverse. Many western countries allow copies on copyright protected materials for private use (limited count, no trade). Often this is limited to materials that have no copyright protection (keep that in mind and re-think if I say cheers). Usually the items that can be copyrighted are limited to things that need high skill, talent or plenty of work – similar to patents.
After all, we talk about regular copyright laws and contracts based on terms of services. If it comes to a serious problem, you need to go to a real life court. If someone intends to avoid that, never mind about asset rights.
Having said all this, we have the copyright system by law – and maybe even more detailed extensions by contract. Even as we have laws against murder, we still have bulletproof vests and bodyguards. What is missing in the 3D web?
Bodyguards are people we trust and whom we may pay for trustworthy service
Bulletproof vests are tools to passively enforce the rules.
So we need domains of trusts, something quite usual in the daily life. You may give your house key to your neighbor, but not to a stranger. You trust godaddy.com (did you know?) if you go to a SSL encrypted website (https) with a certificate issued by godaddy. Ok, if godaddy has fulfilled some rules and is trustworthy. Is your brother trustworthy?If a webpage is encrypted at the web server and decrypted at your computer, how the heck do I know whether the certificate issuer is trustworthy. Whether the browser is, the operating system is and there is no keylogger?
Would you do your home banking in a internet café in Nairobi? Why not? But you would rezz your content on foreign land? why?
We need three simple things:
A network of trust - gets very important in exchange of a virtual currency etc.
A trust worth stack – from client over region to storage
A standard for rights and claims (see later)
If had both, the next step would be to implement a rights management system. You probably know that from music file trading systems. The basic idea is to give the data(item) owner the control – not the server operator.
That way an item knows about its rights – and even if you would copy the whole inventory database, you would not be able to access items that you do not have rights for.
Claims are more advanced. Why only limit the user (identity) access to item? Why not also limit system access to user’s items? If I enter an adult only portal – why the heck should someone know about my street address? just let him read my birthday from my identity and make sure it is approvable.
A big problem with rights management was that there was no open system that was powered by well capitalized company AND was able to use open standards like SAML and openID.
Microsoft now came up with an open source SDK for .Net – maybe a thing to look into?
They use it e.g. for collaborative engineering at Daimler automotive. A Typical Usecase is that you have to give your design details to a third party - and in always changing file formats. A compliance nightmare. J
And even if not that – the technology/technique outlined not the product is the key.
There IS hope for almost secure content - though there will never be 100% security. But at least you can make content theft more complicated and you can make clear that you do not like copying. (think about the first part..).
Hopefully on discussions about hypergrid functionality, content rights and identity management will be considerer by all parties (Opensim team, realXtend team, Linden Labs, openID-providers, third party trust centers) in an early stage.
Cheers,
Ralf
PS: I am happy to provide further information for developers, just email me.
I already wrote about Sizing and other perspectives in Part 1, but the networking was the part that did need the most investigation before coming to the conclusions.
Network uplink
The network connection quality is one of the main factors for the user experience. The user experience is likely to be bad, and the reason is probably the lack of knowledge of how the internet interconnections are organized (I talk about AS, BGP and other, VLAN´s, VPNs). I want to give some figures on data collected, and some rules of thumb:
Over 50ms lag is not good enough, over 80ms is really bad. Latency really matters.
(number of avatars * number of avatars)*30kbit is about the slowest acceptable uplink speed (slow rezzing after tp, slow display of changes in region)
In total, Opensim does not cause much traffic. A usual hosting offers more traffic than memory, in terms of what Opensim needs. Very important is the latency to the main peers.
Main peers are typically the Grid server (at Electrip Sheep Company for OSGrid), maybe the plaza´s (at cari.net), your own regions, neighbors and the potential users. For german region operator the connection to t-com (wich has the biggest customer base via t-online) is very important. For everyone, a performant uplink to Level3 covers grid and plazas. So a fast Level3 and T-com uplink at your host location will almost guarantee a good user experience for german and most US-based users).
This example is from one of my production servers, it´s hosted at serverloft. It holds 9 Simulators with 30 regions. The Sharkland regions are well known, at least in the german community and cover 2 sandboxes, of witch one updates to new SVN builds 2 times a day, so there is quite some traffic. I did data collection up to 2 weeks, but this one is a very goog example, because I was on travel and there is not to much influence by updates and managent of the server. There is , however, http traffic (getting new SVN version) and ftp-traffic (pushing this versions to a hidden archive after compile and testrun) you will see in the detail charts. My regions are LSL-Email enabled, that is why you see the email traffic.
Traffic that is not needed for this purposes is blocked by a firewall, so it does not influence the statistics. Click pictures to see them better!
Very interesting to me is, that we have siginificant amount of traffic with 9 and more hops (~50%). Latency will get a more and more important topic in 3D web and maybe lead to a redesign, but IPv6 slowly taking over now will have impact on this as well (ahem, do we have IPv6 support in server/viewer?).
Main content transport is by TCP (handshake), but much of the traffic is fast (blind unsecured) UDP traffic.
This is not to bad from a speed perspective, if there are re-sync mechanism for the recovery after failing to receive some packets. That is in the center of interest in a heterogonous network. We have seen this with the teleport problems in OSGrid as it is a very heterogenous network. These problems do not occur in a homogenous network like second life or some commercial closed Opensim networks. Diva did some nice work on that and for my impression, the REST-style interregion comms is a good decision.
OSGrid is maybe the best place for RL-companys to test their new ideas. If you expect prompt customer service and ideal user experience for gaming, its maybe not. If you are into the 3D-market (for content, hosting or other service), it seems to be a very good choice.
For private user and organizations, considering an opensim -expirienced region-hoster is the way to a good user experience. For development, learning and testing, home hosted regions are still a good choice.
As I outline in the last post, OSGrid is an open grid – servers and user are located on different connections to the internet. While this is very common to the internet, it is quite uncommon to the 3D gaming/virtual world communites.
OSGrid is comparable to the real life usage of the internet. There are users with different locations and connection types (http://osgrid.org/forums/viewtopic.php?f=3&t=694). The servers are spread over the world, some clustered (like my rental regions and the rental regions next door are at the same provider) – some even hosted from homes (comparable to a company VPN). What are the differences?
Influences on operating a 3D Internet service based on Opensim
Skills of service operators
I guess, you know good and bad webhosts. Servers with high and low speed, websites that are up almost all the time – and a website, which is down every 10th visit. Maybe even a forum that loses all the content after a crash. We will see all this in the near 3D future, since many people with low to none server operations skills and knowledge try to make revenue.
Selecting suitable hardware for a region server
After tests with ~ 15 hosting providers, where I chose different setups, I can say: Memory matters. CPU affects scripts and avatar count. Network affects stability, teleport/border crossing, avatar count and loading times of objects/textures – maybe the highest impact on user experience.
Memory has influence on possible script and item loading and to avatar count. I do not want to point on speed after beginning to swap. Do not think of opensim as a apache. “Memory burst” will not work on VPS systems – only guaranteed memory can be counted. In general, direct access memory (like in Hyper-V, Xen) is faster than VPS. A interesting discussion in view of memory is the “memory leak”, witch I judge to be not bigger than in outlook. There are dead process witch can count up, but I have seen systems with hundreds of “zombies” running for months in former times. The memory leak (if there is a significant one) can be easily handled by a daily restart, it is a good idea to have for doing a backup (closes files and finishes transactions) anyway. There IS a rising memory usage – but opensim does cache objects in the region – so to be sure whether it is a leak, a developer has to be involved in monitoring.
One point I did find but could not drill down: memory usage is changing as avatars come in and out. However if there are less than 200MB of free RAM, systems tend to get instable – block teleports and all sorts of weird things. (tracked with system monitor on Windows and monit on linux).
Operating System & CLR-Framework
I want go into depth here, because this tends to get into a religious kind of discussion. I have no personal preference, besides I prefer an easy to use, comfortable and affordable desktop/laptop.
Finally the systems based in Windows Server 2008, Vista, Server 2003 and XP with the .Net framework 3.5 did make the most points. I did NOT yet test Windows 7, still need to play with my download. J On the Linux side, OpenSuSe 11.1 with no modification did run perfectly stable (32bit and 64bit) and was performing well. Windows vs Linux must be a decision based on the operators administrative knowledge. There are people running linux system with no firewall and maleware protection and discuss content theft in forums. If a company would do, they would have trouble based on a compliance audit (BSI Grundschutz, ISO 27000x – I don´t even think about PCI if it comes to payment systems) and maybe even legal problems (3rd party rights).
Database
For the everlasting discussion on sqlite vs. Mysql I just want to give a short statement. I did read all(!) database related articles from last 2 months in OSGrid forums and run some benchmarks with both databases. Mysql is faster. Mysql needs own resources (memory) to be fast. Mysql has more well known tools. SQLite needs no setup. SQLite is self contained and robust. If you are a starter to opensim or regions should be as portable/easy to handle as possible, sqlite is your friend. If you run multiple regions on a well equipped server and have maybe some Mysql background, use Mysql. I did not test MSSQL, but would think of results comparable to Mysql, at least.
The second part to this article covers the networking perspective - wich is a much bigger issue.
Cheers,
Ralf
—
Data collection did include public information requests, testing cloned regions for user experience while monitored, monitoring of CPU/RAM/uptimes, Monitoring of network traffic, comparison of stability/performance based on 32 vs 64bit, different operating systems and different hosting providers.
after all this talk about possible real life and opensim, how should this work out ?
I did discuss some cases with different people last weeks, and finally the decision was to put something on a developer wiki at realXtend.
realXtend is very interested to work closely with opensim (interoperable, compatible) but while opensim is very much open in the way things are developed, realXtend acts more “company-like”.
That is in general nothing bad or good.In Opensim-dev´s you will find many freelancer, they are creative and can bring in whatever they like – if the coredevs give a go. And if the community likes it, it will stay. That is pretty much a thinktank method.But does not necessarily lead anywhere specific.
So a company-like approach with defined goals to reach and using project management methods is more likely to reach a given target, in this case by very flexible short-cycled agile methods.
So, for now I usecases that will fit into their target will be created under the realXtend developers wiki and I let you know here.
And, yes: that is opensim related, because it’s a best of breed story to use booth methods and both teams. And if anyone of the opensim developers has some input or wants to volunteer on a Usecase, just let me know.
If you have been to architecture or presales consulting you maybe know the “amazing! – which are the arguments not to introduce that?” situation.It comes up if a technology is presented to a responsible person, that will definitively give your career a kick – direction unknown.
Due to a IBM announcement I had this appearance again last week.I forwarded the following notice to some RL customers using Notes/Domino.
And yes – there is interest on this “amazing new technology” at the Lotus user community. And there are pretty much Lotus Notes/Domino/Sametime installations out there.
I love the sticky notes in the way they used it in the video – any developers volunteering? The server monitoring should be covered in a later posting, because this is really an interesting usecase – but not the minimal points showing in the video.
Just to mention this – if we talk about costs introducing a software, the CIO/CFO will usually have no headache with license costs. These are near to peanuts. The “pain” is about compatibility, compliance, users learning curve, implementation and roll out. And possibly needed more powerful hardware not following the hardware investment cycle.
So putting this to a real production environment still means that we need:
a light viewer, for usual business workstations (no need to build or script with it). Run on a given level of graphics, like today.
We need central configuration (i.e. via registry, so that enterprise management tools like Zenworks and Active Directory are able to manage the application)
Yesterday I thought about the global market situation. IBM and Apple, while selling established software in a broad market like Microsoft, didn´t seem to struggle.
Today I did take a Wall Street Journal (Jan. 23rd) while waiting for the plane, and – how interesting (page 5):
Microsoft: 5000 jobs down, 11% decline in net income in second fiscal quarter: Really nice software, but no innovation – or if (e.g. roundtable, surface) it´s handled as a number 739 in the priority list vs. selling established products
Apple: 5,8% raise in revenue and 1,5% in profit: Very innovative by design and function
IBM: strong financial results: Did give up traditional markets (PCs, laptops etc) and turned to software and services
At that point I want to thank Jani, it was just the right time. The flying saucer Opensim is approaching the 1st live business world. Innovation and services have a chance, even in the current market situation.
I will speak about this to a IBM-partner about his perspective as a developer and partner in the next weeks, as soon as we find time. I would love to also talk to an IBM business dev manager, but could not identify one…
Charles Krinke wrote at Opensim weekly news that OpenSim’s fresh 0.6.2 release contains implementation to almost all of the LSL functions. He says in the blog post: “We started with Tedd [Hansen]’s vision a bit over a year ago and 300 functions are implemented, that is a great job to all who contributed.”
Now available from CTN store.
There are only 27 functions without any implementation. Some of the existing LSL implementations are only stubs, or partially working. Some work even in a different way than in SL.
In addition to Second Life’s LSL functions, Opensim has own set of scripting functions for builders. Also C# can be used for scripting, which gives a lot of power for the Opensim scripters.
In the near future as the modrex work nears completion, Opensim is going to get yet one more scripting language available as realXtend’s Python implementation is integrated.
With all of the options available, content developers can feel quite confident that they are able to make great functionality for Opensim based worlds.
Full compatibility with scripts from Second Life is still far away and may be never 100% achieved. However, it should be soon possible to write scripts that run on both on Opensim and SL.
To get to know more about LSL, check the LSL wiki.