Orhan Ergun No Comments

BGP RR (Route Reflector) in EBGP

Is BGP RR used in EBGP ? You might think I mean IBGP , not EBGP or I mean BGP Route Server, not BGP Route Reflector but no I really mean BGP RR (Route Reflector). Read more

Orhan Ergun 8 Comments

BGP Route Reflector in Plain English

BGP Route Reflector in Plain English, in this post, I will explain you the BGP Route Reflector basics, after you read this post, you will be able to answer many questions regarding BGP Route Reflectors.


Read more

Orhan Ergun No Comments

Network Interconnections Video by Orhan Ergun

Network Interconnections is one of the most important topics for the operator network as it directly related with the cost of the sending traffic out from their networks.

Read more

Orhan Ergun 1 Comment

BGP Route Reflector routing loop problem !

BGP Route reflector routing loop arise in IP networks. In this post, I will illustrate the topology which will loop the IP packets between the routers and I will describe multiple possible solution and share a best practice to design BGP Route Reflector in an IP network. Read more

Orhan Ergun No Comments

Settlement-Free Peering Requirements

Settlement-Free Peering Requirements.


I explained the Peering , Types of Peering basics in one of the previous posts. When we talk about peering, we generally mean settlement-free peering. But what are the common requirements for companies to peer with each other ?

Read more

Orhan Ergun 2 Comments

Tier 1, Tier 2 and Tier 3 Service Providers

Tier 1,Tier 2 and Tier 3 Service Providers

What is tier in the first place ? If you are dealing with Service Provider networks, you hear this term a lot. But how we define Tier 1,Tier 2 and Tier 3 Service Providers ?


What should be their infrastructure to be seen as Tier 1 for example ?


Which tier is bigger in scale ? Which one is better for the customers to purchase a service from ?


Why Service Providers claim that they are Tier 1 or Tier 2 ?


Note: If you are looking for a much more detailed resource on this topic, please click here.

Read more

Orhan Ergun No Comments

BGP in MPLS Layer 3 VPN – BGP as a PE-CE Routing Protocol

BGP can be used as a PE-CE routing protocol in MPLS Layer 3 VPN. Also Service Providers run MP-BGP (Multiprotocol BGP) if they have MPLS Layer 3 VPN.

In this article, MP-BGP will not be explained since it has been explained here earlier in detail.

When BGP is used as a PE-CE routing protocol between the customer and its MPLS Layer 3 VPN Provider, it is important to say that there is no need to redistribute on the Service Provider PE. All the other routing protocol require redistribution from MP-BGP into the routing protocol and vice versa.

In this post, I will explained what are the design considerations when BGP is used as PE-CE routing protocol in MPLS Layer 3 VPN and the how you can mitigate possible routing loop problems.

Last but not least, I will share when CE (Customer Equipment) is multihomed to two PEs (Provider Edge Device), what would be the design considerations if BGP is used in MPLS Layer VPN. Read more

Orhan Ergun 7 Comments

BGP Peering – Private, Public, Bilateral and Multilateral Peering

BGP Peering

BGP Peering is an agreement between different Service Providers. It is an EBGP neighborship between different Service Providers to send BGP traffic between them without paying upstream Service Provider.


To understand BGP peering, first we must understand how networks are connected to each other on the Internet. The Internet is a collection of many individual networks, which interconnect with each other under the common goal of ensuring global reachability between any two points.


BGP peering
BGP Peering and Transit Links

Read more

Orhan Ergun 2 Comments

BGP (Border Gateway Protocol) Quiz,Questions and Detailed Answers

BGP (Border Gateway Protocol) a.k.a Bloody Good Protocol quiz !

I prepared 20 Questions in this quiz for you. Intend of this quiz to provide you the BGP design information.

This quiz is part of the BGP Review Questions of my upcoming new version of CCDE Workbook. There will be hundreds of questions in it and will be available shortly !

This quiz helps for CCDE Written and CCDE Practical exam as well as real-life Network Engineering Interviews.

For more quizzes and many other design resources such as videos, mind maps and the my books, you can subscribe and access immediately. Click here to subscribe Self Paced CCDE Course 

Read more

Orhan Ergun No Comments

BGP As-path prepending – Use cases, Alternatives and Challenges

BGP As-path is a mandatory BGP attribute which has to be sent in every BGP message. BGP as-path prepending is one of the BGP traffic engineering methods which will be explained in detail throughout this post. 



What is BGP As-path attribute ? Why BGP as-path attribute is used ?

What is BGP as-path prepending ?

What are the other alternatives for BGP as-path prepending ?

How BGP traffic engineering is achieved with BGP as-path prepending ?

What are the challenges which BGP as-path prepending cannot handle and what are the solutions for incoming BGP path selections.

Read more

Orhan Ergun No Comments

BGP Best External

BGP Best External is used in Active Standby BGP Topologies generally but not limited with that.BGP Best External feature helps BGP to converge much faster by sending external BGP prefixes which wouldn’t normally be sent if they are not overall BGP best path.

There are BGP best internal, BGP best external and BGP Overall best path.

BGP Best external in an active-standby scenarios can be used in MPLS VPN, Internet Business Customers, EBGP Peering Scenarios, Hierarchical large scale Service Provider backbone and many others.

But,How active-standby scenario connection with BGP is created ? In which situation people use active-standby instead of active-active connection ?

Let’s start with the below scenario.

bgp best external

Figure -1 BGP Active-Standby Path Selection Example

Read more

Orhan Ergun 9 Comments

What is MP-BGP – Multiprotocol BGP

MP-BGP (Multiprotocol BGP) is an extensions to BGP protocol. Standard BGP only supports IPv4 unicast address family, whereas MP-BGP supports more than 15 different BGP address families.

RFC4760 defines the extensions for BGP protocol and states that ” in order to bring extra functionality to BGP protocol, new BGP AFI (Address Family Identifier) and BGP SAFI (Sub Address Family Identifier) is introduced”.

Multi protocol BGP supports IPv4 and IPv6 address families and their unicast and multicast variants.

MPBGP also supports Layer 2 VPN address families. EVPN (Ethernet VPN) is a mechanism which the mac addresses are exchanged between PE devices over BGP control plane. Read more

Orhan Ergun 4 Comments

BGP Next-Hop Behaviour in IP and MPLS Networks

One of my CCDE bootcamp students asked a question about next hop in MPLS VPN network. So, I would be very pleased to explain the BGP next hop behaviour both in IP and MPLS network in this post.

Let’s start with this IP network shown below (Figure-1).

IBGP next-hop

Figure-1 IBGP Next Hop handling in IP networks

Read more

Orhan Ergun 1 Comment

What is DFZ (Default Free Zone)?

In the context of the Internet and BGP routing, DFZ – commonly known as Default Free Zone – refers to the collections of all the public IPv4 BGP prefixes without default route on the global Internet.

Most of the time, you hear full-route or full-Internet-route terms which are the same with Default Free Zone term. Having all BGP routes, which are announced by all the available AS (Autonomous System), on the Internet.

Currently, there are more than 600,000 IPv4 BGP routes and about 30,000 IPv6 routes in the DFZ (Default Free Zone).  These numbers, however, could easily be reduced to 300,000 for IPv4 and less than 20,000 for IPv6 based on the CIDR reports (IPv4 CIDR report and  IPv6 CIDR report). Read more

Orhan Ergun 1 Comment



BGP PIC Edge provides sub second convergence time in the case of edge link or node failure. BGP PIC is a useful for MPLS VPN service and can be provided by the Service provider as a value added service thus might provide additional revenue.

BGP PIC provides sub second converge time in case link or node failure, and BGP PIC edge covers the edge failure cases.Sub second convergence is not possible without PIC – Prefix Independent Convergence for BGP.

Read more

Orhan Ergun 2 Comments

What does BGP free core mean ?

What is the meaning of BGP free core?

BGP refers to an Internet protocol used between different Autonomous System on the Internet. The purpose of this post is not to explain the fundamentals of BGP, as I believe that readers are already familiar with the basic of BGP and IP routing operation. To understand the rudimentary aspect of BGP, click here to peruse articles on BGP.

Let’s look at the topology shown below to understand the BGP operation and IP destination-based lookup. Read more

Orhan Ergun 9 Comments

BGP Design Case Study

Below BGP design case study is taken from the Orhan Ergun’s CCDE Practical Workbook.In the new version of the workbook there are more than 50 case studies are shared for many technologies.

If you are in the network design field or want to learn about it,don’t miss the book.

Scenario :
Network A is a customer of Network Z, Network B is a peer of Network Z.
Network A becomes transit customer of Network B.
Network A announces aggregate to Network Z and more specific prefixes, and to Network B. Network B sends more specific to its peer Z.
Network Z only announces the aggregate to the world. Network B doesn’t announce anything to the upstream SP.

What is the impact of this design ?
Is there any problem ? If there is , how you can fix ? 

Read more

Orhan Ergun 9 Comments

BGP PIC – Prefix Independent Convergence

BGP PIC ( Prefix Independent Convergence )  is a BGP Fast reroute mechanism which can provides sub second convergence even for the 500K internet prefixes by taking help of IGP convergence.

BGP PIC uses hierarchical data plane in contrast to flat FIB design which is used by Cisco CEF and many legacy platforms. Read more

Orhan Ergun 26 Comments

BGP Route Reflector Clusters

BGP route reflectors, used as an alternate method to full mesh IBGP, help in scaling.



BGP route reflector clustering is used to provide redundancy in a BGP RR design. BGP Route reflectors and RR clients create a cluster. (Cluster = BGP RR + BGP RR Clients) 


In IBGP topologies, every BGP speaker has to be in a logical full mesh. So, every BGP router has to have a direct IBGP neighborship with each other. However, route reflector is an exception.


If you place a BGP Route Reflector , IBGP router sets up BGP neighborship with only the route reflectors.


In this article, I will specifically mention the route reflector clusters and its design.


For those who want to understand BGP Route Reflectors, I highly recommend my ‘ BGP Route Reflector in Plain English ‘ post.


If you want to learn Route Reflector Loop Problem , check this post


Also, I explained BGP Route Reflectors, Route Reflector Design Options and many other Service Provider Design topic in my Service Provider Design Workshop.



What is BGP Route Reflector Cluster ID ?



Route Reflector Cluster ID is a four-byte BGP attribute, and, by default, it is taken from the Route Reflector’s BGP router ID.


If two routers share the same BGP cluster ID, they belong to the same cluster.


Before reflecting a route, route reflectors append its cluster ID to the cluster list. If the route is originated from the route reflector itself, then route reflector does not create a cluster list.


If the route is sent to EBGP peer, RR removes the cluster list information.


If the route is received from EBGP peer, RR does not create a cluster list attribute.


Why Cluster list it used ?


Cluster list is used for loop prevention by only the route reflectors. Route reflector clients do not use cluster list attribute, so they do not know to which cluster they belong.



If there are two Route Reflectors, Is same or different cluster IDs better on the Route Reflectors ?


If RR receives the routes from an IBGP neighbor which has the same cluster ID, routes are discarded.


Let’s start with the basic topology.


BGP Route Reflector Cluster Same CLuster ID

Figure-1  Route Reflector uses same cluster id



In the diagram shown above in fig.1, R1 and R2 are the route reflectors, and R3 and R4 are the RR clients. Both route reflectors use the same cluster ID.


Green lines depict physical connections. Red lines show IBGP connections.


Assume that we use both route reflectors as cluster ID which is R1’s router ID.


R1 and R2 receive routes from R4.

R1 and R2 receive routes from R3.



Both R1 and R2 as route reflectors appends as cluster ID attributes that they send to each other. However, since they use same cluster, they discard the routes of each other.


That’s why, if RRs use the same cluster ID, RR clients have to connect to both RRs.



In this topology, routes behind R4 is learned only from the R1-R4 direct IBGP session by the R1 (R1 rejects from R2). Of course, IGP path goes through R1-R2-R4, since there is no physical path between R1-R4.


If the physical link between R2 and R4 goes down, both IBGP sessions between R1-R4 and R2-R4 goes down as well. Thus, the networks behind R4 cannot be learned.


Since, the routes cannot be learned from R2 (the same cluster ID), if physical link is up and IBGP session goes down between R1 and R4, networks behind R4 will not be reachable either, but if you have BGP neighborship between loopbacks and physical topology is redundant , the chance of IBGP session going down is very hard.


Note : Having redundant physical links is a common network design best practice. Thats why below topology is a more realistic one.



What if we add a physical link between R1-R4 and R2-R3 ?


BGP Route Reflector Clusters Same Cluster-ID with excessive redundancy


 Figure-2 Route Reflector uses same cluster-ID, physical cross-connection is added between the RR and RR clients



In Figure-2  physical cross-connections are added between R1-R4 and R2-R3.


Still, we are using the same BGP cluster ID on the route reflectors.


Thus, when R2 reflects R4 routes to R1, R1 will discard those routes. In addition, R1 will learn R4 routes through direct IBGP peering with R4. In this case, IGP path will change to R1-R4 rather than to R1-R2-R4.


In a situation in which R1-R4 physical link fails, IBGP session will not go down if the IGP converges to R1-R2-R4 path quicker than BGP session timeout (By default it does).


Thus, having the same cluster ID on the RRs saves a lot of memory and CPU resource on the route reflectors even though link failures do not cause IBGP session drop if there is enough redundancy in the network.


If we would use different BGP cluster ID on R1 and R2, R1 would accept reflected routes from R2 in addition to the routes from direct peering with R4.





Orhan Ergun recommends Same BGP Cluster ID for the Route Reflector redundancy if there is a resource issue on the Route Reflectors. If there is no resource problem , having different Cluster ID provides faster convergence in some cases (Depend on the topology)


Otherwise, Route reflectors would keep an extra copy for each prefix which wouldn’t be advertised to Route Reflector clients anyway.