Tag: Border Gateway Protocol

BGP Route Reflectors (RR) – The iBGP Reflection Mechanism

Light when bounces off an object is called “reflection.” Remember the “Law of Reflection” during High School days? The angle of incidence equals to the angle of reflection. Thinking about this might somehow give you a better grasp on the BGP Route Reflectors. As we progress this topic, you will see how routes are reflected.

Remember the split horizon rule in iBGP? Route Reflector (RFC 4456) is one of the three solutions and often use as an alternative to Full Mesh topology. Route Reflectors allows iBGP speaker to have partial mesh topology while still propagating iBGP routes to another iBGP speaker. It modifies the iBGP split horizon rule by allowing the router to forward incoming iBGP updates to an outgoing iBGP session under. With Route Reflector, it lowers CPU and memory requirements by reducing the number of TCP sessions to be maintained.

Route Reflector has two iBGP peers: Client peers and Non-Client peers. Route-Reflector clients behave like normal iBGP routers. They are not required to form full mesh, can have any number of eBGP sessions and they can have only one iBGP session and that is the connection to Route-Reflector. When Route Reflector fails, they can no longer receive or send updates to the rest of the AS. In this kind of design, Route Reflector represents a single point of failure. In order to solve this, we need redundant Route Reflectors. Each Clients needs to connect to redundant Route Reflectors. Route Reflectors receive the same iBGP update from its Clients and reflect it all other Clients and Route Reflectors send same routes to each Clients.

Route-Reflector
Route Reflector

(more…)

BGP Neighbor Adjacency States: From IDLE to ESTABLISHED

BGP requires manual configuration of neighbors. Once neighbors are manually configured, it goes through 6 states until it is fully established. Knowing these states would help us determine the stage our connection is currently in. It is also very important in troubleshooting as it helps us understand what went wrong during adjacency.

BGP-Neighbor-Adjacency-States
BGP Neighbor Adjacency States

BGP Neighbor Adjacency States:

1. IDLE – This is normally can be seen if BGP is down / administratively down or just waiting for the next attempt. At this stage, no BGP incoming sessions are permitted.

My BGP is established between Culloden and Stirling sites and Culloden and Fyvie sites. But when I shut down s2/2 link between Culloden and Fyvie, my BGP went to IDLE state.

Culloden(config)#int s2/2
Culloden(config-if)#shut
Culloden(config-if)#end
BGP-Neighbor-Adjacency-States
BGP-Neighbor-Adjacency-States: IDLE STATE

(more…)

iBGP: BGP Next-Hop-Self Command

The BGP next hop processing distinguishes iBGP from eBGP. A route advertised from an eBGP to another eBGP peer, the next hop address will be the address of the exit point of that AS. A route advertised from an eBGP to iBGP, the next-hop address remains unchanged when sent to another iBGP peer. It will not insert its own address as the next-hop address of the advertised route. The problem here is, what if that iBGP peer doesn’t know how to reach that eBGP address?

BGP Next-Hop-Self
BGP Next-Hop-Self

Let’s take this scenario.

Colletidae, a blellum lady living in the outskirt of Edinburgh, told her neighbor Apidae that Dasypoda is having an illegal affair with somebody else. Colletidae told Apidae that she can spread that in town. And, because Colletidae wants so much attention, she told her to tell everybody that she is the one who told her about it. Colletidae knows that everybody will believe Apidae as she is known to be an honest quine. Apidae cannot believe it and she told Andrena, sister of Andrenidae, about this.

“Don’t be such a wee clipe!”, said Andrena. “Are you the one spreading that rumor?”

“No, it’s not me. It’s Colletidae who told me about that.” Apidae replied.

When Andrena told her sister about this rumor,

“Who told you that?” Andrenidae asked

“Colletidae knows everything about Dasypoda’s affair,” Andrena whispered.

“Who is Colletidae?” Andrenidae asked.

Andrenidae, who is one of Dasypoda’s best friend, knows that it was her sister who told her about the affair rumor. What she didn’t know is that it was Apidae who told her sister about this and that Apidae knows where Colletidae lives. (more…)

BGP Path Attributes: The BGP Path Selection Process

BGP Path Attributes

BGP has many attributes in choosing the best path. It is like an ice cream. It has many flavors. I bought Gianduia flavor from Gelato Messina while I was preparing this topic. I think I need loads of sugar to feed my brain as this BGP topic is robust and every attribute can be well-explained if we are going to lab it.

BGP’s attributes are mainly for path manipulation and these can influence either outbound or inbound traffic. It has a systematic process that it uses to choose the best path in the network.

BGP-path-attributes
BGP Path Selection Algorithm

The first thing that BGP checks is whether the WEIGHT is configured or not. WEIGHT is Cisco Proprietary so it is obvious that it prioritizes Cisco devices which has BGP WEIGHT configured. In short, if you are using Cisco devices, WEIGHT is the first thing it checks before it goes on with the series of standard BGP attributes. Keep in mind that WEIGHT is local to the router and doesn’t pass to other routers. The higher the value is more preferred. (more…)

BGP Path Attributes Types

BGP has many attributes in choosing the best path. However, not all attributes need to be present in every BGP update and need to be recognized or pass to other peers. There are some that can be silently discarded and ignored.

BGP attributes are classified into 4 types:

  1. Well-known Mandatory
  2. Well-known Discretionary
  3. Optional Transitive
  4. Optional Non-Transitive

Well-known Mandatory attributes, as the name suggests, it is a must in every BGP update to have it included. It should exist in every BGP update and must be recognized by all BGP speakers. Well-known mandatory attributes are AS Path, Next Hop address, and Origin.
(more…)

Autonomous System (AS) Ranges

You often heard about AS (Autonomous System) since the beginning of your BGP study. By now, you know that when we talk about AS we are referring to set or group of routers operating with same routing policy under a single administrative domain/control. The AS number should be unique to identify them in the internet. It is 16-bit in size allowing 65536 AS to be used in BGP. However, not all are available for use. Some are reserved for documentation purposes and the rest are divided for private and public use.
(more…)

The Internet Protocol: Border Gateway Protocol (BGP) Overview

Border Gateway Protocol (BGP) is an exterior gateway protocol used on the internet and ISPs to exchange routing and reachability information. BGP is a layer 4 path vector routing protocol that uses port 179. It is the only EGP that is still in use today. The current BGP version is BGPv4 which was published as RFC 4271 in 2006.

Unlike other IGPs (OSPF, EIGRP, or RIP), BGP has many metrics or attributes in choosing the best path in the network. These attributes are for path manipulation. We will check it one by one as those attributes influence either inbound or outbound traffic.
(more…)

Difference Between Interior Gateway Protocol (IGP) and Exterior Gateway Protocol (EGP)?

When I first heard about Interior Gateway Protocol (IGP) and Exterior Gateway Protocol (EGP), I was just like, “what on bits and bytes are these?” If you are new to networks and you suddenly heard these on your first day, you might ignore the meaning and also the importance. However, you don’t have to memorize the meaning because you will know it by heart as days go by. (more…)