AUTONOMOUS SYSTEMS AND INTERNET ROUTING
Now that we have seen how the IP Addresses are distributed in the internet and who all are responsible for that job, lets us now continue and understand how one network device in the internet finds another.
Routing is a process of finding the best path between two nodes in a network. There are various routing protocols to do this job. But these routing protocols are divided into 2 main categories -
- internal routing protocols e.g. OSPF, RIP, EIGRP etc.
- external routing protocol e.g. BGP (border gateway protocol)
But with what reference do we mean internal and external here? To understand this let us assume a scenario where for all the networks and subnetworks in the internet, we have a unique routing protocol. A network can be divided into subnetworks almost any number of times. Now, once a pool of IP Addresses is assigned to any company, they are free to partition and create subnetworks within that pool of their IP Addresses. So in order for all these networks to be found and identified in the internet they must participate in the routing process. So our routing protocol here must be able to locate and know about every subnetwork we created and give that information to every other network in the whole internet. Imagine how complex and huge the routing information would become. It gets even worse when a company decides to do a slight change in their subnetwork. Companies do need that flexibility to change their network design once in a while in order to fulfill their network requirements. Even such small changes in these subnetworks would be needed to reflect on the entire internet’s routing information. This could mean a lot of work for the routers. So what should we do? Autonomous Systems comes to rescue.
Autonomous System is a network or a group of networks under a single administrative domain. Autonomous Systems have a unique routing policy for their networks. Everything inside the Autonomous system is internal. Thus Autonomous system helps to draw a line between the external routing and the internal routing. Routing inside the autonomous systems would be done by the internal routing protocols and the external routing protocol would be responsible for routing between these autonomous systems. The external routers would only see these autonomous systems as group of a few large networks, but internally these networks might be subnetworked as many times and however as they may please without affecting the external routing information. So a large company network can create an autonomous system for itself and then may divide its networks as many times as possible and use any internal routing policy they wish. Autonomous systems help truly reduce the load of a huge routing information by reducing the number of entries of networks and giving part of the responsibility of routing internally to the company possessing that network.
An Autonomous System is identified by a unique 32-bit (previously 16-bit) number called the autonomous system number. The authority for all the ASNs is, without any surprise, with the IANA. The IANA allocates these ASNs in blocks to the RIRs. From the RIRs, it is directly assigned to the organization needing an ASN. Any company or organization needs to fulfill certain criteria and obey these policies to get an ASN from its appropriate RIR. The complete list of all allocated ASN can be found here.
Some very large organizations might want to implement BGP internally also. So they would need private ASNs for their private ASs. So for that reason there exists, like IP Addresses, a range of ASN for private use i.e. 64512-65534.