North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

Re: BGP and OSPF

  • From: Owen DeLong
  • Date: Thu Oct 09 11:06:33 2003


By definition, R0 should run BGP, or, R1-4 should be meshed and exchange
BGP with each other. If R1-4 are meshed, then, it doesn't completely matter
which of R1-4 R0 defaults to, they will handle it from there. If they are
not properly meshed, then, it gets messy, but, the protocol spec. says as
much.

Owen


--On Thursday, October 9, 2003 12:00 PM +0200 Jean-Yves Le Boudec <jean-yves.leboudec@epfl.ch> wrote:

It is known that redistribution of routes learnt by BGP into an IGP is
considered harmful, but I am still wondering how you can route
without redistribution of BGP routes in an OSPF cloud that
connects to several external networks. I have the following
scenario.


       RA (AS100)  |    RB (AS101)

   ------------------------

       R1       R2

           R0        (AS559)

       R3       R4

    ------------------------

       RC (AS201)  |    RD (AS202)



All routers except R0 run BGP. R0--R4 are in the same AS and run
OSPF. RA-RD are all in distinct ASs.  RA is BGP peer to R1, RB to
R2, RC to R3 and RD to R4. The addresses and numbers are fake. The
ASs are peers, not customers.

Assume that R1 learns a route to a network in AS100, says 1.1/16,
with next hop = 3.3.3.1 (the IP address of the p2p link R1-RA).
Now assume a data packet with destination address in 1.1/16 is
received by any router in AS559, say for example R0 or R4. The
router has to know where to forward it. Since AS559 connects to
different peer ASs in different locations, it does not seem
feasible to use default routes.


(Method 1) One way to is to assume that R1 redistributes the route
1.1/16 into OSPF, which will then propagate it as a type 4 LSA.
Then R0 and R4 can build a forwarding table (using OSPF) and set a
forwarding entry to 1.1/16. This method is what is described in
Huitema's book "Routing in the Internet". Now I understand that
this is not done in practice (I am right ?) since it forces OSPF
to carry all the IP prefixes seen by BGP, which in that case might
be all prefixes in the world.

(Method 2) An alternative is to have recursive table lookup in
forwarding entries at all border routers (R1 to R4). R4 writes
that the destination address 1.1/16 is to be sent to NEXT-HOP =
3.3.3.1. R4 learns this over I-BGP from R1. The data packet with
destination address in 1.1/16 uses loose source routing inside
AS559 and is sent to the link R1-RA. The job of OSPF is only to
propagate how to route to all addresses in AS559 (including
3.3.3.1) and there is  no redistribution of BGP into OSPF. Border
routers need to update the forwarding tables using their RIB
learnt from BGP.

Now source routing is obsolete in IPv4, does any one use it ?

(Method 3) Same as method 2, but IP in IP encapsulation is used
instead of loose source routing. Seems heavy weight for a high
speed backbone.

(Method 4) Same as method 2, but Tag Switching (or MPLS) is used
instead of loose source routing.


Can any one help me understand what is done in practice among
Methods 1 to 4, or any other one that I missed ?


Thanks in advance,  JL