There is a section in the Second Life™ forum about technology: Tools and Technology. Thursday afternoon (1/16) Linden lab posted article there titled: Raising the Roof: The HTTP Project. The post is about the changes coming to how the SL Viewer and SL servers communicate.
The abbreviated point in the post is: communication between our viewers and the servers is and is going to be better and does and will use less bandwidth. This means fewer problems logging into Second Life. Also, more reliable connections and fewer disconnects. The changes will mean fewer capabilities from routers and gateways will be used, allowing the less expensive routers to handle Second Life better. And in general things will download faster.
The post tells us beginning late 2012 the HTTP Project started. During 2013 the project was moving forward and improving viewer – server communications. They explain how some of the communications improvements are being gained.
The SL servers or any servers are there to serve. But, the services they provide must be requested. The SL Viewer makes those requests. When you start the viewer and login the viewer makes a request to gain access to the SL system. Login servers verify your logon information and grant or deny access. It is a ‘request – response’ system.
Each viewer request takes time. Think of your phone and calling someone. Time is spent in the dial process, connection process, and the delay until somebody answers. It is sort of the same thing with the servers. If you used Nextel, you know they had a button for push to talk. This allows their customers to talk to a local private network of people without having to dial. It is just push and talk. It save lots of time for those that need to make repeat communications with a select group of people.
The Lab is doing the sort of the same thing between viewers and servers. Rather than make an individual call for each download request the system will make a single call and while connected make multiple requests. That saves all the overhead of making and breaking connections to the servers.
They have a graph showing how the improvements reduce the amount of time needed for communications. They have colored areas marked A through F to give us an idea of where performance was, where is, and where it’s going.
They talk about some of the real-life physical limits on network communications. As they do it becomes clear a significant amount of their work is experimental. The real-time communications needed by Second Life is fairly unique. Plus, there are new technologies being developed by several companies to improve the capacity and speed of the Internet. Google is one of those companies.
One of the technologies is a protocol labeled: SPDY (pronounced “SPeeDY”). The link takes you to an executive overview written in less technical language. The short take is it’s a protocol for speeding up Internet data transfer and reducing communications lag. One of the ways it does that is to better compress the data placed on the Internet, but it is about more than just compression.
The research efforts in these areas are about how to get the Internet to work better. Think of this research as you being in a room full of people that all need to talk to you at the same time. Or maybe your customer service person. You have a ton of people trying to talk to you. So, what can you do?
As a customer service person you can hire more customer service people. You then need more phone lines. You also need to handle a lot of incoming calls. You’ll probably always have more calls than you have phone lines. Plus, it costs money to have phone lines and if they aren’t being used the companies losing money. So, a company can’t just have an infinite number of incoming phone lines they strive for a balance. It is sort of the same thing on the Internet.
Think of each packet of data traversing the Internet as a ball bearing rolling through a pipeline. The pipeline is full of ball bearings. Each ball bearing takes up some space. Each data packet traveling the Internet uses up some finite amount of capacity. They tend to get in each other’s way. Some times even clogging the pipeline (network congestion). The trick is to figure out how to get smaller ball bearings, more data packed into each ball bearing, and move them faster.
In real life we pretty will have physical pipelines figured out. But, we’ve been using pipelines, according to the History of Pipelines, since 1865, when the first wooden pipeline was built to break a Teamster’s monopoly and outrageous pricing. So, we have had about 150 years to figure out pipelines.
The first computer networks were started in 1950s. What we call the Internet that uses TCP/IP started in the 1980’s. So, that’s about 30+ years. We have five times more experience with pipelines. It isn’t surprising that people are still devising new ways to use the Internet protocol or move data via wire, fiber, or radio signal.
Linden Lab is experimenting and figuring out how to use these new technologies in new ways to support Second Life. Due to these advances in tech this coming year, 2014, I expect a steady improvement in how Second Life performs. If SL is ever to make it to mobile devices, Internet communications is one key area of development.