cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
5771
Views
15
Helpful
25
Replies

ospf point to multipoint neighbors-cost

willowklan1
Level 1
Level 1

Hello everyone,

been searching all over these forums and also read some text-books, but still I can`t find a good, decent and simple explanation about the cost changes in the peering neighbor over frame relay. I know how to do it , I know why you do it - but I can not understand the mechanics behind.

say you got a hub with an ethernet segment behind. this hub is connected to two spokes over frame relay. one spoke is a fast-speed cable (say 1 gig) and the other is much slower.

when those spoke routers advertise their route to that ethernet segment, they will both show the same cost. if I`d like to change that and make only the faster spoke an active route over the slower one, I could modify a p2m-non-broadcast neighbor statement with a lower cost value thus enabling only that route. 

can anyone please give me a simple explanation as to why it should be done, who are the spokes advertising that ethernet segment to (it can`t be the hub - since he is the one who advertised the network in the first place) and why can`t I change the cost from the spokes rather than from the hub itself? I already need to configure them - so can`t I just take care of the of the cost then? 

thanks ahead

willow

25 Replies 25

Hi Willow,

Just one question at this point to both of your issues: Did you work in GNS3 or in Packet Tracer?

Best regards,
Peter

Hello Peter,

Thanks for answering. everything is done by packet-tracer. the first question got solved magically when I started a new project from scratch. I dunno what that bug was since I did everything exactly the same... guess it`s one of those PT wonders :)

the other question (about the timers) is still a mystery, since it never seems you really need to adjust the timers: just neighbor up the NBMA parts of the network, choose your DR and it just works. when does that "sync timers" come into play?

thank you,

Willow

Hi Willow,

I see... Well, you are going far beyond CCNA requirements, and Packet Tracer is specifically created only for CCNA-level training and knowledge. What you are trying to do is understand in depth how OSPF is designed and how it interacts with various network topologies under different circumstances. However, Packet Tracer does not fully implement OSPF, and so it is in fact quite dangerous to infer the properties of OSPF by testing them on Packet Tracer. In many places, Packet Tracer's emulation of OSPF may be significantly different.

In other words, for your in-depth and keen studying style, Packet Tracer is not suitable, and it can do more harm than good. If possible, I suggest you use real IOSes - GNS3 or VIRL.

the other question (about the timers) is still a mystery, since it never seems you really need to adjust the timers: just neighbor up the NBMA parts of the network, choose your DR and it just works. when does that "sync timers" come into play?

Any time two routers are supposed to talk to each other :)

Consider the following scenario: R1 uses physical interface for FR connectivity to talk to R2, R2 uses a subinterface:

R1:
interface Serial1/0
 description => To FR <=
 ip address 10.0.0.1 255.255.255.0
 encapsulation frame-relay IETF
 serial restart-delay 0
R2:
interface Serial1/0
 description => To FR <=
 no ip address
 encapsulation frame-relay IETF
 serial restart-delay 0
!
interface Serial1/0.201 point-to-point
 ip address 10.0.0.2 255.255.255.0
 snmp trap link-status
 frame-relay interface-dlci 201

Because R1 is configured on physical interface, OSPF defaults to the NBMA network type there. On R2 that uses a point-to-point subinterface, OSPF also defaults to point-to-point network type.

After starting OSPF on R1 and R2, no OSPF adjacency comes up. Running debug ip ospf adj on R1 tells us:

R1#
*Mar  1 01:15:20.395: OSPF: Rcv hello from 10.0.0.2 area 0 from Serial1/0 10.0.0.2
*Mar  1 01:15:20.399: OSPF: Mismatched hello parameters from 10.0.0.2
*Mar  1 01:15:20.403: OSPF: Dead R 40 C 120, Hello R 10 C 30  Mask R 255.255.255.0 C 255.255.255.0

Note the complaint about mismatched hello parameters: Dead interval: Received=40, Configured=120, Hello interval: Received=10, Configured=30.

As a result, this Hello is not accepted, and OSPF adjacency never comes up - R1 and R2 do not see each other in OSPF at all, not even in the INIT state (the first state of an adjacency).

In addition, even if I tweaked the timers to be identical, the OSPF routers would establish a full adjacency but they would not see their networks - the routing tables would stay empty. This is because these two routers use incompatible approaches to representing this network: R1 with NBMA thinks that the DR must be elected and that the DR will represent the adjacencies of all routers on the network, while R2 with P2P thinks that there is no DR and adjacent routers indicate their adjacency by referring to each other directly. If we were to draw an internal representation in of the network in these routers' link state databases, this would be the approximate state:

Because R1 engages into DR/BDR elections while R2 does not, R1 will become the DR and there will be no BDR on this network. Furthermore, because R1 is the DR, it thinks it is entitled to represent the network on this interface, so what it inserts into the link-state database is

  • itself
  • the information about the network
  • a link from itself to the network
  • a link from the network back to every router R1 can hear including itself, that is, R1 and R2

R2 does not know about this. It thinks that if it hears R1, there's only a point-to-point link between these two, not a network that can hold two or more routers, and so it does not know that it also should indicate an adjacency to the network. Instead, it indicates an adjacency directly back to R1. So what R2 inserts into the link-state database is this:

  • itself
  • a link from itself to R1

Notice the asymmetry in how R1 and R2 treat the same interconnection between these two. Now, when they both start the SPF algorithm and start computing the shortest paths, there is a clause that says: After you follow an arrow (that is, a link) from one object to another, see if the target object points back by its own link to the object you have just left. If not, ignore this object.

Notice that this check prevents R1 and R2 from ever considering themselves in the computation. R2 will follow the link from R2 to R1 but will find out that R1 doesn't point back to R2, so it will ignore it, and there are no further outgoing links from R2. So, R2's routing table remains empty.

Similarly, when R1 proceeds from itself to the object representing the entire network and then from this network object follows to R2, it finds out that R2 does not point back to the network object, so again, R1 will ignore R2's topological information, and R1's routing table will remain empty as well.

Therefore, having the same timers alone won't make OSPF happy. Two routers have to agree on how they represent the network.

Best regards,
Peter

Hi Peter,

correct me if I`m worng. you said:

In addition, even if I tweaked the timers to be identical, the OSPF routers would establish a full adjacency but they would not see their networks - the routing tables would stay empty. This is because these two routers use incompatible approaches to representing this network: R1 with NBMA thinks that the DR must be elected and that the DR will represent the adjacencies of all routers on the network, while R2 with P2P thinks that there is no DR and adjacent routers indicate their adjacency by referring to each other directly

isn`t the whole problem here just a neighbor issue? NBMA needs neighbors to be configured statically, so you must add "neighbor 10.0.0.2" on R1. that would result in a correct topology table and R1 would be the DR, getting "full" with R2 which himself would be "full" with R1 but not as BDR or DROTHER - just as you`d expect from a p2p link. 

thanks, 


Willow

Hi Willow,

isn`t the whole problem here just a neighbor issue?

Most certainly, it is not. Problems in OSPF that are caused by network type mismatches fall into two distinct and independent categories:

  • Failure to establish IP connectivity (NBMA requires that neighbors are specified manually; point-to-point uses multicasts)
  • Failure to consistently model the adjacency in the link-state database

In my configuration, I have indeed not defined any static neighbors on R1 but that was not really required in my particular scenario: R2 was sending multicasts and they made it to R1, and thanks to that, R1 was able to learn about R2's IP address by simply receiving its packets. Maybe you have noticed that if you have a hub-and-spoke scenario and configure spokes with OSPF priority of 0, any static neighbor commands will be removed automatically, and if even you add them, they won't be inserted into the configuration. In essence, the spoke routers remain without static neighbors, and are entirely dependent on the hub contacting them in the first place.

you must add "neighbor 10.0.0.2" on R1

No, certainly not. R1 will learn about R2 because R2 uses multicasts. See the explanation above.

that would result in a correct topology table and R1 would be the DR, getting "full" with R2 which himself would be "full" with R1 but not as BDR or DROTHER - just as you`d expect from a p2p link.

Yes, but that's the problem I have depicted in the diagram in my previous post. R2 points to R1, but R1 does not point to R2 - instead, it points to the DR-created object representing the network between these two routers, and that is the fundamental discrepancy in how the connectivity is modelled. As I indicated in my previous post, there is a built-in check into OSPF that verifies whether two objects in link-state database are described in the same manner (if I point to a object, then the object must point back to me). If they aren't, the object is ignored, and that is what I have tried to explain.

Does it make any sense? These principles in OSPF are closely tied to a mathematical discipline called graph theory, and for some of the intricate details, it would be extremely helpful to have some foundations, as it would ease the discussion significantly.

Best regards,
Peter

Hi Perer,

Hmm. after reading your last replay I am fully convinced that you understand the subject perfectly... seriously, it is only now I can understand how much more is into OSPF and how much I need to dwell into this even further. as you hinted, this is a little out of my scope right now, remembering I`m only a CCNA student :( but I will get there.

to understand something like "R2 points to R1, but R1 does not point to R2 - instead, it points to the DR-created object representing the network between these two routers, and that is the fundamental discrepancy in how the connectivity is modelled" you really can not use PT or be in a CCNA level. all that hybrid networks stuff is really interesting but as you mentioned once in our previous dialogs - it is really a CCNP at least. guess I`m climbing a too tall of a tree here.

on this sad note, let me say again thank you for your excellent replays, and infinite patience. bless you.

best regards,

Willow

Hi Willow,

I feel a certain sense of disappointment from your words but I want to assure you that there is no reason for that. Things you have been asking about are far, far beyond CCNA, and their depth would even exceed what is required for CCNP. You are asking questions that go right into the heart of the topic, and that is the best way of becoming an expert, period. You are on that way - don't stop!

Sure, you may come across topics that are difficult to grasp at the first time you approach them. But this is the normal process of learning. You have to keep in mind that over the last two weeks, you have basically gone from zero knowledge of OSPF+Frame Relay up to this point, and what a learning curve that was! Give yourself the time to have all this newly gained knowledge "settle down" so that you're comfortable with it. After then, when you revisit these topics, it will gradually make more and more sense.

I am honored to have had the opportunity to be of help to you. I have really enjoyed debating these things with you, and I hope you'll keep posting more questions ;)

Best regards,
Peter

Hi Peter, 

Thanks alot for your kind words of encouragement :) 

best regards,

Willow

Hi Peter,

I am truly sorry to bother you again, but after your remarkable explanation on the ospf/frame relay issue, which btw made me understand the subject completely (can`t thank you enough for that), I have some vpn basic issues, and would really appreciate your kind help. the questions are rather basic stuff. can you please find the time and share with me your expertise?

I posted the question under "security" - "vpn". any help would be much appreciated 

Willow

Willow,

Perhaps, in addition, the following figure shows you a correct OSPF model of a network - the upper one is with DR (BMA, NBMA), the bottom one is with point-to-point. Any of these is correct; the hybrid in my previous post isn't, and that's what you get when you have a mix of NBMA and point-to-point on a single network segment.

Best regards,
Peter

Hi Peter, 

Thank your for the explanation about int Neighbour Cost command. 

Please confirm this command was set on the Hub router right?

 

Regards

Phuc

Review Cisco Networking for a $25 gift card