Part IV: How information travels on the internet
My last post explored how all the devices connected to the internet are able to “speak” to one another by understanding a common set of protocols called TCP/IP.
Think of TCP/IP as the universal language of the internet. They tell computers how to break data files into bits and place them into packets for transmission across the world. And when the packets arrive at their destination, the receiving device also knows how to reassemble the data.
In this post, we’re taking a look at how these clever little packets get from one device to another.
Packet switching and interconnectivity
What really makes the internet functional – and beautiful – is 'packet switching'.
Packet switching allows the packets of data to split up and travel independently over several different routes to their destination. It also means that several types of data (video packets, email packets – even voice call packets) can travel on the same route at the same time.
If a route is down or heavily congested, packets can be easily redirected to a more appropriate one. Much the same as your GPS can navigate you on alternate routes.
Before we can discuss how these routes are determined, here’s a quick look at the process that the packets follow from one device to another.
Protocol stacks
You wouldn’t get dressed, put your shoes on and brush your hair before getting into the shower, would you? In the same way, computers rely on protocols to make sure they follow these steps in the right order.
A group of protocols working together is called a protocol stack. Protocol stacks are made up of various layers, which each contain instructions to let both sides understand what it should do with the packets.
TCP/IP, which I spoke about in my previous post, is an example of a protocol stack.
The TCP/IP protocol stack
The TCP/IP protocol stack is made up of four layers. These layers are responsible for disassembling data into packets, addressing, routing and delivering them, and finally ensuring correct reassembly.
When you want to send data across the net, the data will go through each of these layers in a specific order: Application → Transport → Internet → Network. This same order is reversed when data is received.
- Application: The application layer is where communications protocols and interface methods work, standardising functions like email (SMTP) and file transfers (FTP) for example.
- Transport: The transport layer is where your TCP steps in, asking other devices on the network if they’re willing to accept the information from the local device.
- Internet: The internet layer is where internet protocol uses your IP address to establish which device it is communicating with.
- Network: The network interface routes data between devices on your network and manages the exchange of data between your network and the outside world.
How packet routes are determined
Multiple factors determine the packets’ routes, such as time (the fastest route available) and the relationships between internet service providers (ISPs).
Your internet service provider maintains relationships with many other ISPs to ensure there are as many options for routing your data as possible. When your message leaves your computer, it travels to your ISP, and they send the packets over the fastest available routes.
Quality of service (QoS) and prioritising
Essentially, QoS is your network’s ability to achieve maximum bandwidth by prioritising certain types of data ahead of others. QoS applies to certain network traffic, such as streaming media, online gaming, voice over internet protocol (VoIP) and virtual conferencing.
How it works
Imagine that you’re watching Netflix on a Saturday evening, you have a VoIP line, and a call comes through.
Packet switching allows both the video and voice packets to be routed over your internet line.
Prioritisation, determined by your ISP, involves inspecting packet headers to identify the data traffic and determining the order that the packets then need to be received in.
This means that when your friend calls, your VoIP phone will still ring. In fact, you’ll be able to take the phone call while Netflix runs simultaneously, without anything being interrupted.
Who is responsible for your internet experience?
It’s up to your ISP to determine the best combination QoS elements, to achieve maximum bandwidth. Your ISP will focus on and constantly refine, their QoS and prioritisation policies – as this makes the difference between an okay internet experience and a brilliant one.