BGP Fundamentals

It is likely that you have been using BGP for years. In some cases you might be using it from your phone or computer and probably never even realize that you do. BGP is essential for the internet to work correctly, but that does not mean that would look obvious that you were even using it.

So what is BGP and why does it matter to you? This is what you need to know.

Introduction and Background

BGP Fundamentals

What Is BGP?

BGP, or “border gateway protocol” is a gateway protocol that allows for the exchange of information across the internet. In fact, it is the biggest protocol in the world since it is responsible for carrying internet traffic.

It is considered a path vector protocol, which means it follows a virtual path to get to the server that it was sent out to find. BGP decides which routing paths a request should make as well as network policies. It also can be configured by a network administrator that is setting up routing decisions within his or her router.

How It’s Used

BGP is typically used as an external routing protocol. It works between large networks that have more than one access point to the internet. BGP is not limited to one network or company, however.

It is instead used by companies that will allow information to be exchanged in a peer relationship. The partnerships that are formed across these networks are what increase the speed of the internet.

Configurable

BGP is also a configurable routing protocol, which means that it can be adjusted or fined tuned to meet the needs of the administrator better. On an internal level, a BGP has a large amount of criteria that it uses to work would what route will be the fastest.

The criteria can be adjusted, however, which can help figure out which routes are accepted and which routes should be avoided. Network engineers would benefit greatly from being able to discern the attributes of BGP and route selection. Once you have a handle on the inner workings of the BGP, the internet can be controlled on your network.

Slow To Converge

BGP is also considered a slow to converge protocol. The reason for this is that the internet is changing constantly. With new content going up, websites coming down, and users sending requests at a fast rate, if the BGP adjusted to every single change as it happened, the amount of routing updates that would be processed would be overwhelming and completely slow down the entire system.

The internal nature of the BGP ha to be seamless or it will not be effective. Part of what makes the BGP so quick is that it also has a type of redundancy going on internally, so there should be multiple points for the same information, allowing it to connect to the desired request more quickly.

Data Structure

Let’s take a look at the data structure of BGP. It uses three table data structures, which are neighbour table, BGP table, and IP routing table. The neighbour table’s job is to hang onto the information about BGP peers.

With BGP, the peers have to be identified, but it does not need to be directly connected. A routing table works to forward traffic down toward the destination that your signal is headed.

Peers

  • We have said that BGP forms peers, but what does that mean. In order to use the peers’ features, BGP has to use TCP as a layer 4 protocol which borrows UDP. The other IGPs then use their own layer 4 growth. It is important to remember that BGP always needs to have IGP underneath to help catch any incongruence. There are several states that BGP routers might be in when trying to become neighbours. The states include:

  • Idle
  • Connect
  • Active
  • OpenScent
  • OpenConfirm
  • Established

Why Use BGP?

There are several reasons to use BGP. Not only is it the largest protocol of its kind on the internet and the most effective, but it also has scalability. This means that it can handle thousands of routes that would not be otherwise tried by IGPS.

The BGP is stable and can take care of the internet routing table. It also uses route attributes, which is nothing like the IGPs. Therefore, traffic engineering can be performed simply.

We continue to use BGP, because of its effectiveness. You only wouldn’t want to use a BGP if you were handling a single ISP connectivity, if your CPU was short on space, and if you don’t own your IPv4 address.

You still might decide to use a BGP with any of those situations, but it is not required by any means. If you do have an affinity for computers, you can always attempt to reconfigure the BGP yourself. Otherwise, just enjoy your high speed internet.