BGP Route Reflector Basics

Everyone who ever studied BGP knows that BGP has strong precautions and rules for loop prevention. In this post I will focus on iBGP and specifcally route reflectors.

The rule states that any route received from an iBGP neighbor should not be advertised to another iBGP neighbor.

This loop prevention mechanism induces a requirement that all iBGP routers in the network should be connected in logical full mesh fashion to allow for routing information propagation through the network. However, full mesh connectivity had never been a scalable solution specially in large networks.

Two mechanisms were built to solve this scalability problem, by eliminating the need for the full mesh and in the same time keep the network loop free. The first solution is BGP confederations and the second one is BGP route reflectors.

BGP route reflectors:

A route reflector is BGP router that is allowed to break the iBGP loop avoidance rule. Route reflectors can advertise updates recieved from an iBGP peer to another iBGP peer under specific conditions.

By breaking the rules, route reflectors are used to eliminate the full mesh requirement and allow for building iBGP networks that scale easily and cleanly.

How is this accomplished?

BGP Route Reflector follows the below listed rules to acheive its function:

  • iBGP routers are divided into Route Reflectors, Route Reflector clients and non-client Peers.
  • Routes received from a Route-Reflector-client is reflected to other clients and non-client neighbors.
  • Routes received from non-client neighbors are reflected to Route-Reflector-client neighbors only.
  • Set the Originator-ID attribute in the reflected update if it is not already set.
  • Add the Cluster-ID  to the Cluster-list attribute in the reflected update.
  • A Route Reflector reflects routes considered as best routes only. If more than one update is received for the same network, the BGP best route is only reflected.
  • A Route Reflector is not allowed to change any attributes of the reflected routes including the next-hop attribute.

Route Reflectors and Loop Prevention:

The following rules are used to detect and avoid routing loops caused by route reflection:

  • If a router received an iBGP route with the Originator-ID attribute set to its own router-id the route is discarded.
  • If a route reflector receives a route with a cluster-list attribute containing its cluster-id the route is discarded.

For more information about route reflectors check RFC 2796.

I hope it was simple, now lets get to the configuration and verification section. Watch the video below:

BGP Route Reflectors

This movie requires Flash Player 9

I hope I have been informative in this post, please let me know if any questions, ideas or corrections.

Related posts:

  1. BGP Route Refresh Capability
  2. BGP Routing Information Base (RIB)
  3. BGP 4-Byte ASN
  4. Choosing PE-CE Routing protocol


You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

AddThis Social Bookmark Button

4 Responses to “BGP Route Reflector Basics”

  1. It’s a good explanation.

  2. Very concise and clear.

  3. [...] control plane routers like (Route Reflectors) from being used accidentally in the forwarding [...]

  4. Good explanation thanks a lot

Leave a Reply