Wednesday, September 3, 2008

Interdomain Internet Routing

This lecture reading gives a description of how communication between different ASes work in the Internet. The lecture in the beginning shows real Internet routing infrastructure diagram compared to the general image that people have. Internet infrastructure involve a large number of commercial entities (ISPs) that provide Internet service and cooperation is required between these entities to provide global connectivity. ISPs are categorized as Tier1 (global scope), Tier2 (regional scope) and Tier3 (have small number of localized customers).

The routing architecture uses the concept of ASes instead of ISPs. ASes are managed by a single ISP though there can be multiple ASes in an ISP. Border Gateway Protocol (BGP) is the protocol that is used between ASes (by their border routers) to share reachability information for achieving global connectivity. Within an AS Interior Gateway Protocol (IGP) is used. IGP includes protocols like OSPF, IS-IS and RIP. BGP is designed to be scalable while IGP concentrates on optimizing path cost.

There are two kinds of AS-AS connection types: Transit (provider-customer, involves financial agreement) and peering (generally does not have a financial agreement). Rules for routing information:
  • Exporting routes:
    • Provider sends customer routes to every AS (customer, provider, peer).
    • ASes generally do not share provider routes.
    • Peer ASes share their transit customers routes and internal ISP routes with peers
  • Importing routes
    • Customer routes are preferred over peer route and peer routes are preferred over provider routes. LOCAL PREF attribute is used to implement this priority.
BGP was designed with three goals in mind: Scalability, Policy and Cooperation. BGP does not optimize over path cost. Rather, it has a set of attributes that are used to make the decision. These attributes are Next Hop, AS Path, Local Preference and Multiple-Exit Discriminator (MED). AS Path attribute includes AS identifiers of the ASes the route advertisement message has passed through. MED is used for comparing two or more routes from the same AS. MEDs are generally used to allow enforcement of cold-potato routing.

BGP has two flavors:
  1. eBGP - this runs between BGP routers in different ASes.
  2. iBGP - this is run between BGP routers within an AS. The topology used for iBGP is full-mesh but that can have scalability issues. Two methods used to solve this problem involve using route reflectors or setting up confederations of BGP routes.
There have been security issues related to BGP like DoS and issues due to misconfiguration. Some limitations of BGP include no authentication of route attributes and tampering of route information. Also, from the reading it wasn't clear what export and import policies are applied between two ASes that have the same provider.

It will be nice to have a small discussion about the security issues and how people have addressed them. Another thing which confused me in the beginning was the difference between iBGP and IGP. It was not very clear when is IGP used and when is iBGP used.

I really enjoyed reading it because before this I did not know about the internals of BGP and how routing between commercial entities took place. In fact I really liked the way the lecture explained how selection of routes is directly tied to the economic model. Hot-potato routing and route export and import policies were interesting to read. This reading is a must for the class.

No comments: