Monday, May 4, 2015

Head in the clouds

       Businessfurry. Yes, it's a word.
       So let's break this Cloud stuff down to distracted non-geek levels.
       Think of an Ikea wardrobe. Now, think of a tub full of bathwater.
       The intertubes are not that big. So when you need to pass something down the tubes, it can't all go at once. It takes time. When it comes to something like water, one bit is very much like another, and it's all moving too quickly for you to notice specific water drops as they flow down the plughole. Doors are small too, and to get a giant wardrobe into your bedroom, it will have to be broken down into pieces and then assembled in situ. But while water is much of a muchness, to construct a wardrobe you need every single one of those panels, screws and packets. Otherwise - well, you know. Screaming, bloodshed, divorce.
        Not everybody knows this, but when you arrive on a sim, your Viewer says to the server where the sim is located: "I'll have one of EVERYTHING!" Not a picture of the stuff on the sim, an actual copy of it. Normal people can't access the items, but it's all in your Viewer's cache - this is how copybots work.
        Why does the Viewer do that? Because ours is not a 'Shoot 'em up, Hunt 'em down' kind of  a platform. The beauty of our virtual worlds lies in the fact that average joes can make, copy and edit things. It's that picaresque, open ended quality to SL and OpenSim that appeals to us and keeps us coming back, despite the instability. But obviously your Viewer hoovering up a copy of every single item - be it a prim, a texture, animation or whatever - makes for lag, and creates all that permissions paranoia.
       But going back to the wardrobe.
       There are many ways that computers can pass stuff between them, but there are really two ways that matter to this post.  One is called Transmission Control Protocol (TCP) and the other is User Datagram Protocol (UDP).
        Think of them as two brothers, the Brothers Protocol. Each on a mission to provide you with an Ikea wardrobe.
       TCP is the careful one, he gets all the bits, makes sure they all travel safely across town and into the bedroom where they will be assembled, checking them off against his little list. He only consigns the piece of furniture once it's complete, doorknobs and all.
       UDP is a great guy, but he's not the type to worry if some of the wardrobe packages fall off the back of his truck or get crushed in transit. "Hex tool? What hex tool?"
        So, my question to you - in SL and related worlds, which of these two protocols do you think is moving your virtual wardrobes? Yeah, you guessed it, good ole UDP. Which makes sense, because  UDP is great for things that don't have to travel far or by circuitous routes and when the Lindens set up SL they probably didn't envision a network of independent virtual worlds based on their system dotted all around the planet.  
          That, my friend, is why your hair is up your bum.
           Hypergridding. Or even visiting a place on your home grid. Imagine the scene. A group of people arrive on a sim, all asking for everything and then getting multiple updates every time something changes on the sim, a dance, a gesture, a moving prim. That's a strain on the system. UDP is throwing packages at everyone, and while most of them are okay, there's a lot that can and does go wrong.
          OK then, for all of us who haven't really been paying attention to what the geeks have been talking about for the past year(s), let's just come out and ask: How might all this strain on resources and lousy delivery go away?

         The Cloud.
        If the Safari visited a sim using cloud technology, each of the 15+ avies would travel there, but instead of everybody's Viewer asking for a copy (and updates) of every item in the place, a new, much lighter Viewer would just ask the server to send each one of us a video stream which would be unique to the point of view of our avatar's camera. You could touch things on the sim, and of course you can still play with Windlight and stuff. But now you're seeing a video of my dress, rather than storing all the separate textures of my dress in your Viewer's cache. And my dress actually travels to the sim, rather than me thinking it has, and cavorting around unaware that I'm half nekked.
         Got a mini-grid on a little server in your house? Now more people could come and play in your world. Do you think you're Michelangelo, do you live in fear of people botting your masterpieces? Do you have a poor connection that means some sims just never load? Then the cloud could be the answer to your prayers. When you visit a place via the cloud, the sim you're looking at is streaming video rather than 'physically' present inside your Viewer's cache. So if a few packets of information get lost, it's just a momentary hiccup in the flow of images, a bubble in your bathwater, not an aborted wardrobe that you're looking at.
          Wait a minute though, we don't use OpenSim just to look at people's dresses or lack of. We want to build, we need our shit in our cache so we can edit the hello out of it. Otherwise we'd just be off in Final Fantasy or whatever. We need to be able to mess with stuff. So does this mean we're going to need two Viewers? And this cloud software, and the lighter Viewer - this is not a new idea, there are loads of proprietary versions out there, plus opensource ones like GamingAnywhere - is this going to be one system that we all have to use, or will the viewer be able cope with different versions? So, for travelling across the many and varied grids of OpenSim, how's that going to work? How could a transition from the current system take place? Would there be a period in which you could visit grids using either the old way, or the cloud way? What's the cost? Is this a ploy to rob us of our independence, and get all our pixels back in the hands of a businessman or woman or furry?
          My head hurts.    

No comments:

Post a Comment