The world of Internet routing and interconnections is vastly different from what you probably learned and experienced in an enterprise network. If you, like me, have wondered how your data traverses global service provider networks to reach its destination, here is a birds’-eye view on the basics of Internet routing. In part 1, we will look at what is an Autonomous System and introduce BGP, the routing protocol used in the Internet.
The Internet is made up of a number of interconnected networks known as domains. Each of these domains includes a set of routers and IP prefixes (an IP prefix is a block of IP addresses) using an interior gateway protocol (IGP) such as OSPF, IS-IS, or EIGRP, for their internal routing. The routing protocols are used to maintain information about the current internal network topology and all the paths between the various nodes in the network through which data can be routed. Such a domain may also have to interconnect with other domains, and this is done with Border Gateway Protocol (BGP), an exterior gateway protocol that is the routing protocol of the Internet.
An Autonomous System (AS) refers to one such domain, managed under a single technical administration, with a well-defined policy that decides how it routes its packets with other Autonomous Systems (inter-AS routing) and within the domain (intra-AS routing). An AS is usually owned and administrated by a single entity that can be a service provider, an organization or even universities. Each AS has a global unique identification number known as an AS Number (ASN) associated with it. The ASN is used as an identifier for the AS by BGP during inter-AS routing. Here is a list of organizations that own AS numbers: http://www.cidr-report.org/as2.0/autnums.html
While interior gateway protocols such as OSPF, IS-IS or EIGRP are used for exchanging routing information within a domain (intra-AS), the Internet uses BGP, an exterior gateway protocol to exchange routing information between different Autonomous Systems. Each AS participating in inter-AS routing has one or more designated BGP routers, known as BGP speakers.
For a BGP session to begin, a BGP speaker in an AS is configured to establish a TCP connection with a BGP speaker in another AS. They then become neighbors and start exchanging routing information. Each router then updates its own routing table with the information it learned from its neighbor and continues to exchange updated routing information using messages.
With these exchanges, a BGP router gathers information about the networks it and its neighbors are connected to, and the paths to reach those networks. A BGP router then propagates this information to all its other neighbors, thus enabling routing across the entire Internet. A couple of good resources covering the basics of inter-AS and intra-AS routing can be found at these two links:
In part two, I will discuss service provider interconnection, including how and where it works.