IBGP usage notes

Vikas Aggarwal aggarwal at nisc.jvnc.net
Wed Nov 17 20:59:40 UTC 1993


Here are some notes that I wrote up regarding IBGP...  I don't think
any such doc exists, was trying to clear things up for myself more
than anything else.

Comments welcome.

 -vikas                                                    (609) 897-7307
 vikas at jvnc.net	                                 ...rutgers!jvncnet!vikas

		   IBGP - Advantages/Disadvantages
			    Vikas Aggarwal
			   (vikas at jvnc.net)

The following is an attempt to consolidate the advantages and disadvantages
of BGP used as an *interior* routing protocol (known in this mode as 'IBGP').

In this doc, IGP is used to refer to some 'traditional' interior routing 
protocol other than IBGP (such as RIP, IGRP).


A typical setup consists of routers within an Autonomous System (AS) peering
(using BGP) with each other over an IP net, and also running an IGP which 
carries the 'internal' networks. Each router learns about external routes
directly using IBGP ('directly' implying *not* using IGP). Once a router
knows the 'exit' router to get to the desired exterior net, it uses the IGP
table to figure out how to get to the *exit* router.

	RouterA ------ RouterB ------ RouterC +-- net_N

Thus, in the simple topology above, A learns about exterior net N via
router C. It looks up in its IGP table to see how to get to C, and
thus sends the traffic for net N to B. Router-B in turn learns about N
from C, and hence uses its IGP table to find the path to C (and so on).
This mechanism is referred to as 'recursive' lookup.


1. Keeps full AS path information (for external routes) through the local AS
   which would have been lost if the routes would have been redistributed
   into another IGP and then carried within the AS.

2. Incremental updates-- which comes from the way BGP works. A big win if
   your IGP does not use incremental updates and you carry a large number 
   of external routes.


(current... ;-)

1. Does not know the entire path (within the AS) to the exit router for its
   destination. Needs to rely on another IGP to figure out the best path
   (within your AS) to the exit router. Does this using recursive lookup.

2. *All* routers along the path must have consistent route information to
   get to the exit router. Currently this is achieved using a full mesh
   of IBGP within the network. If the external routes are NOT redistributed
   into IGP and carried only using IBGP, then causes a problem if the 
   IBGP mesh is broken.

	RouterA -------RouterB---------RouterC +---net N

   RouterA learns via IBGP that to get to 'N' is via RouterC. Using the
   recursive lookup, it sends the packet to RouterB. If the IBGP link
   between B-C  breaks (for any reason), then  B will not know the route
   to get to N. As a consequence, A keeps sending packets to B, and B
   keeps sending back ICMP unreachables (router meltdown ??).

3. Mesh topology grows at N^2 rate, which becomes unmanageable if the
   number of routers is large.

More information about the NANOG mailing list