This is the first in a multipart series we think might help Second Life users, indeed all metaverse citizens, better understand some of the inner workings and underpinnings of their viewers, the connection to the servers and the servers themselves.
When we were young, and many of us were, we wanted to know how things worked. How did that robot walk and turn and shoot, how did the radio pick up signals, why does a kid’s flashlight not work underwater. Later we wanted to know things like how a radio station got the music to my radio, how that little generator thing on a bicycle did its job, and the physics behind a vehicle turns.
So, let’s talk about packets. In networking parlance, a packet is a chunk of data, called the payload, with a little bit added to the beginning and end, the control information. The control information is a kind of label that includes routing information, serial number, size of the payload and a checksum to verify that the payload didn’t change. It kind of looks like this:
Every packet received is checked for completeness and accuracy. If it passes the checks, the receiver will sends an acknowledge (ACK) packet to the sender. If it fails checks then a negative acknowledge (NAK) packet is sent. The sender then either sends the next packet in the sequence or re-sends the failed packet.
Packet loss is pretty much self-explanatory; it’s when a packet of data has to be resent. There are a few reasons this happens, the packet is corrupted, the packet simply isn’t received or, particularly for Second Life, when packets are received out of order.
Packet loss in Second Life is measured as a percentage of failed over the total number of packets sent. You can check your packet loss in a couple ways:
- Cumulative Packet Loss: This is in your system information, which you can see by going to the Help menu and choosing About… at the bottom. The last entry
in your system information is packets lost. This is the overall packet loss for the entire length of your in-world session.
- Real-time Packet Loss: This is in your Statistics Bar, which you can see by pressing Ctrl-Shift-1. Most graphical viewers, including every version of Linden Lab’s viewer and Firestorm, have this same function. It shows real-time, or instantaneous packet loss.
Which statistic you’re using depends on what you want to know. If you want to see what kind of packet loss you get when you teleport, or when you perform some action, you will want to look at the Statistics Bar. But if you want to see how your connection has performed during your entire session, cumulative is the better choice.
High packet loss can indicate a problem with your network connection, which includes the entire link from the viewer program itself to the server with which it’s trying to communicate. Your packet might get started on your high-speed fiber network, but once it leaves your Internet Provider’s control its speed is determined by the rest of the path it has to take to get where it’s going.
There are some things you can do to help reduce packet loss:
- Lower your maximum bandwidth. This almost always has a positive impact on packet loss because of the algorithms that both the viewer and server use. This might cause textures to load a bit slower, but at least they’ll load. And once
loaded you won’t notice any difference.
- Close any programs that might be occupying your network or your CPU. The more things your system has to do, the less time it can spend doing each one. Second Life is very demanding, so it helps to give it as much network and CPU
time as you can.
- Restart the viewer. This can clear most every temporary glitch. And most problems you will face with connections are temporary.
- Restart your computer. Your network service might be lagging for some reason, so restarting it can help.
- Reboot your modem/router. In fact, the better step would be to remove power from it/them, including any accessible battery backup, for several minutes.
This allows your Internet provider to notice that you’re offline and reset their side of your connection. It also clears any networking hiccups that they may have experiences.
- If you’re wireless, wire up. If you can’t wire up, see step 1. I’ll talk more in
depth about wireless in an upcoming article.
In the next part of this series, we’ll talk about bandwidth, the best speeds to use and how changing it makes a difference.