This Is How Internet Works
If you are reading this article you have an Internet connection (or a very special power that should be sharing with the world). We know that the data is going to travel from our devices to the Internet and then come backs. But, what is the Internet? Popularly the Internet is a “network of networks”, all the devices that are participating in the Internet are connected to a company that serves that connection. We know them as Internet Service Provider (ISP).
The ISPs connect each other to keep the data traveling from one place to another. As you can imagine, there are a lot of ISP and some of them have better infrastructure than others. Depending of their characteristics, we have tiers that allow us to classify them in Tier 1, Tier 2, and Tier 3.
The Tier 1 ISP allows the communication between each other, they do not bring services to the end user (you and me), and their infrastructures is bigger than other tiers. Can represent big land extensions, for example, continents, and allows the data exchange through sea cables.
Tier 2 ISP are in charge of connect Tier 1 with Tier 3 through agreements. Their size is less than Tier 1 and they could be part of them. Tier 3 conforms Tier 1 and Tier 2 and bring the different services to the end user. Now that we know the different tiers, it surge a big question: how do they allow that communication between each other?
The Autonomous System (AS)
Until this moment we only know about the ISP definition, but there is another important concept that have not been touched: an Autonomous System (AS). Basically, an AS is a system that could change its behavior in response of an unexpected event. At network level, it is a collection of devices that their behavior are under common administrative control. It could be a company, an university, an ISP, a organization or a mix of them.
To allow data exchange, they work under the Border Gateway Protocol (BGP). This protocol is not an automatic one that calculates the best way for the data to get from one point to another, but it takes in count different aspects that could be political or economical.
Many AS have contracts that allow another AS to use their networks to transmit data without cost, this practice is called Peering. On the other hand, when an AS charges to transmit data through its networks is called Transit. These contracts obligate to an AS to choose a route that cannot be the optimal.
Let us think in a little example. AS C is located in Brazil and needs to exchange data with AS Z from Australia. AS C does not know which route have to use. It has two possible options: send the data via AS I that is far away from AS Z, the data has to travel to another AS T before arrives Z, and it is very expensive, or AS M, which is really close to AS Z and the best option to choose. Which option do you think AS C it is going to use to send data? AS M ? No, it decides to send it via AS I.
AS I was not the best option, but we did not know that the organization in charge of AS C has an economical agreement, which obligates all the data to travel via AS I. In case that AS I gets down, the data will travel via AS M (the AS C needs to send the data, if the other AS is available, why not send the data through AS M?)
In real life, AS are identified by numbers. Internet Assigned Numbers Authority (IANA) is the nonprofit organization in charge of assign those numbers to each different system. Each region in the world has a register (member of IANA) that has a pool of numbers available to be assigned according to their necessities.
Now you know how the data is transmitted from one side to another. As you could noticed, we have a big political problem: some AS could deny to transmit all the information from a specific AS, many places even countries could be banned from Internet applying this restriction.
But this is another topic that we will see in another article.