"BGP" also known as the Border Gateway Protocol is the hidden beast behind any service provider, providing highly available routes and remedying failed links to upstream providers on the fly. BGP is often overlooked and not understood, yet chugs away making sure that end users get the fastest route possible. My goal here is to try and explain the basics of this protocol and explain how SingleHop uses it to provide light speed (no pun intended) service to our customers!
BGP was created to replace EGP (Exterior Gateway Protocol) in the early 90's due to the explosive response that the internet recieved. EGP was not scalable enough to handle the growth, and with it's backbone-centered tree and the newly announced IPv4, it didnt have a chance. BGP is still the most used large network routing protocol used today.
BGP peers are established between an upstream provider and the customer network manually in order to establish the intial relationship. The customer then configures their router to send certain traffic (via ASN) through the newly configured peer in a multihomed network configuration. You can view any providers peering arrangements using a variety of tools. My personal favorite is Fixed Orbit. Check out SingleHop peering arrangements here:
Not a lot, right? But that's certainly not the case. Since SingleHop peers with these providers, we in turn have access to their peers once traffic is handed off to them. To see a good example, click the AboveNet peer in the above URL:
BGP works by registering a table of IP prefixes which signify network reliability among ASN's (Autonomous System Number). It then makes routing decisions based on path, network policies or other rule sets configured in the router itself.
Once BGP is up and running, the BGP peers converse update messages about destinations to which the "speaker" offers connectivity. This is how BGP "learns" routes and provides the fastest path (depending on the network topology) to the source IPs destination. In fact, to show you how rapid changes BGP propogates, i've provided a SingleHop BGP view from the beginning of my blog post, and the end (see figure 1 2 and 3).
In the above pictures, the red dot signifies the SingleHop Network and our 3 upstream providers (peers). As you can see, Cogent Communications (http://fixedorbit.com/AS/0/AS174.htm) has made a couple changes! They stopped advertising "AS2497" and AboveNet picked it up immediately -- all on the fly, and it most likely required no human intervention. Talk about team work!
SingleHop utilizes BGP to control our own destiny. It allows us to advertise our own address space, control how our multiple providers hear it, and influence how they route their traffic based on those advertisements. BGP also allows SingleHop multiple paths to the same provider in the event of an upstream outage -- and even redirecting traffic automatically to other provider links in the event of a carrier failure. SingleHop houses redundant network hardware, but think of BGP as redundant software, running on redundant hardware -- An extra layer! All of those attributes combined and the result will be a rock-solid, self healing network