Dec
29

OSPF point-to-multipoint non-broadcast was designed to allow for the assignment of the cost on a per neighbor basis as opposed to using the interface's cost. This
is useful on a multipoint Frame Relay interface where there are two neighbors advertising the same route but the CIRs for the DLCIs to reach each neighbor is different or these two neighbors that are advertising the same route have different port speeds to the Frame Relay network. Remember that the cost is based on your "incoming" interface's bandwidth and not the bandwidth of the neighbor's interface that connects to you.

As an example say we have two remote routers over Frame Relay and the remote routers are both connected to and advertising the same Ethernet segment. Our router is connected to these two routers via Frame Relay. One of the remote routers has a T1 Frame Relay connection and the other has a 64k Frame Relay connection. Since our cost to the Ethernet segment advertised by these two routers will be calculated based on the cost of the Ethernet segment plus the cost of our incoming interface, both routes appear to be equal cost. Obviously this is not what we would want. We would want to prefer the route from the router with the T1 connection over the 64k connection.

Here is an example with two remote routers advertising the same network (loopback interfaces):

Rack2R4#show ip ospf interface s0/0 | include Cost
Process ID 1, Router ID 150.1.4.4, Network Type POINT_TO_MULTIPOINT, Cost: 64

Rack1R4#sho run int s0/0
interface Serial0/0
ip address 154.1.0.4 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-multipoint
frame-relay map ip 154.1.0.3 403 broadcast
frame-relay map ip 154.1.0.5 405 broadcast
no frame-relay inverse-arp
end

Rack2R4#sho ip route 150.1.0.0 255.255.255.0
Routing entry for 150.1.0.0/24
Known via "ospf 1", distance 110, metric 65, type intra area
Last update from 154.1.0.3 on Serial0/0, 00:00:30 ago
Routing Descriptor Blocks:
* 154.1.0.3, from 150.1.3.3, 00:00:30 ago, via Serial0/0
Route metric is 65, traffic share count is 1
154.1.0.5, from 150.1.5.5, 00:00:30 ago, via Serial0/0
Route metric is 65, traffic share count is 1

As you can see both 154.1.0.3 (router-ID 150.1.3.3) and 154.1.0.5 (router-ID 150.1.5.5) are advertising the 150.1.0.0/24 network with an OSPF cost of 1 (total cost minus our interface's cost, 65-64=1). If both of these routers have the same port speed to the Frame Relay network then this is what we would want to see, two equal cost paths. But if they have different port speeds, then we would want to prefer the route from the router with the higher port speed, theoretically. The problem is that OSPF does not take into account the cost of the remote router's interface to us. We only take into account the cost of the loopback and our interface's cost to reach the remote neighbor.

To prefer the route from the router with the higher port speed, we are going to use OSPF point-to-multipoint non-broadcast to specify the cost on a per neighbor basis. In this example we are going to add a cost of 25 to the routes from 154.1.0.5 and 50 to the routes from 154.1.0.3.

Rack1R4#sho run | be router ospf
router ospf 1
network 154.1.0.0 0.0.255.255 area 0
neighbor 154.1.0.5 cost 25
neighbor 154.1.0.3 cost 50

Rack1R4#sho run int s0/0
interface Serial0/0
ip address 154.1.0.4 255.255.255.0
encapsulation frame-relay
ip ospf network point-to-multipoint non-broadcast
frame-relay map ip 154.1.0.3 403 broadcast
frame-relay map ip 154.1.0.5 405 broadcast
no frame-relay inverse-arp
end

Rack1R4#sho ip route 150.1.0.0 255.255.255.0
Routing entry for 150.1.0.0/24
Known via "ospf 1", distance 110, metric 26, type intra area
Last update from 154.1.0.5 on Serial0/0, 00:06:13 ago
Routing Descriptor Blocks:
* 154.1.0.5, from 150.1.5.5, 00:06:13 ago, via Serial0/0
Route metric is 26, traffic share count is 1
^^^^^^^^^^^^^^^^^^^

Now we can see that we prefer the route from 154.1.0.5 (router-ID 150.1.5.5).

Brian Dennis, CCIE #2210
About Brian Dennis, CCIE #2210

Subscribe to INE Blog Updates