cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1848
Views
10
Helpful
13
Replies

Stub Routing definition and use case (in Simple terms)

nwekechampion
Level 3
Level 3

Please Could anyone explain to me in very simplistic terms, what the use of stub routing is.

Most of the texts on this matter just jump into configuring the feature.

Here is my definition:

 

Stub: Main use: for resource utilization on specific routers that do not need an update from the neighboring router (Stub router)

Eigrp Stub: Used to:

1. Stop packets from being forwarded to neighboring routers (especially routers in a stub. EG DMVPN topology)

2. Used to stop a neighboring router that has lost access to route, to send queries when it has lost access to a route.

 

OSPF Stub: Primarily used to reduce LSA's a router in an area can process in its LSDB, hence conserving resources.

 

Would the above be correct?

 

 

2 Accepted Solutions

Accepted Solutions

I do not agree that stub router for OSPF or for EIGRP is intended to reduce the size of the routing table. If we were talking about OSPF stub area I might agree since the OSPF stub area does not accept any advertisement of external routes. So its routing table could be a bit smaller. But that is not what stub router does in OSPF or in EIGRP. stub does significantly different things in OSPF and in EIGRP. So lets discuss them separately.

 

In OSPF a router configured as stub will send out its LSAs with maximum metric. The result is that the router will form neighbor relationships but no neighbor will attempt to route any packets through this router. You might use the OSPF stub router in a couple of situations:

1) when bringing up a new router you might configure it as stub. This allows the new router to come up and stabilize. It gives you an opportunity to verify that the router is operating correctly, has appropriate connectivity, is forming appropriate neighbor relationships while not exposing your network traffic to an uncertain resource. 

2) when you are preparing to do maintenance which will bring a router off line you might configure it as stub. This will cause the router to send out new LSAs with maximum metric and will cause its neighbors to look for new routes while continuing to route traffic that was in flight. This is a more graceful withdrawal than simply powering down and requiring neighbors to adapt to an abrupt failure.

 

The function in EIGRP is quite different. The function of stub router in EIGRP has to do with the query process that EIGRP uses when a route transitions to the active state. In normal EIGRP when a route transitions to the active state the EIGRP router will send query messages to all of its neighbors. Each neighbor must either be able to answer the query or must forward the query to its neighbors. For routers that have neighbors that are upstream and also neighbors that are downstream this makes a lot of sense. Let us think of a simple example. There is a network running EIGRP with multiple routers. Let us think about routeA which has a neighbor upstream routerU and a neighbor downstream routerD. Somewhere in the network some route is withdrawn. So routerA receives a query from a neighbor (upstream or downstream). It does not know the answer about this route so it must forward the query (to downstream or to upstream). Only when its neighbor has answered the query can routerA send its response.

 

But let us also think about a situation where routerA does not have any downstream neighbors. It may have multiple upstream neighbors but nothing is forwarded to routerA for a destination that is not locally connected (it is not a transit router to reach any other router). Typical example of this would be the spoke router in a hub and spoke network.  Lets think about a situation where routerA has 3 upstream neighbors router1, router2, router3. Now some route in the network is withdrawn. If routerA was a normal EIGRP router it would receive a query from router1 and since it does not know an answer about that route it must forward the query to router2 and to router3. It can not respond until it has received responses from router 2 and router3. routerA has also received a query from router2. It does not know the answer so it must forward the query to router1 and router3 and must wait to send its answer until it has received answers from both of them. And the same thing is true of the query that it receives from router3. I hope you will allow me to not go through the details of who sends what and has to wait for responses. So you can see that there is potentially a lot of query and response traffic going on here which is completely not needed because we knew at the beginning that there is not anything reached through routerA that is not locally connected. So Cisco introduced the concept of stub router in EIGRP. When routerA is configured as a stub it notifies its neighbors during the neighbor negotiation that it is a stub. Now with routerA as a stub when a route in the network is withdrawn, router1, router2, and router3 will receive the query and will know that routerA is not potentially involved in forwarding to it and so do not forward the query to routerA and all that unnecessary traffic is avoided. 

 

HTH

 

Rick

HTH

Rick

View solution in original post

You are quite welcome. I am glad that my explanations have been helpful. Thank you for marking this question as solved. This will help other participants in the communities to identify discussions which have helpful information. This has been a very interesting discussion of some very subtle topics and other participants would do well to read this carefully. These communities are excellent places to ask questions and to learn about networking. I look forward to seeing you continue to be active in the community.

 

Yes the purpose of ospf stub area and eigrp stub router are quite different. ospf stub area does not accept or process any advertisement for external resources. This simplifies the routing decision and does reduce (at least somewhat) the size of the routing table. In ospf stub area the router knows about destination that are within the enterprise network and depends on a default route for anything external. eigrp stub has to do with the query process and not with routing table entries. eigrp stub attempts to simplify the query process as the eigrp network needs to converge and does not have any effect on the content of the routing table or the routing decision about how reach a particular destination.

 

I want to be very careful with the last part of your most recent follow up question. You ask about whether eigrp stub affects or improves resource utilization. If you think of resource utilization in terms of the size of the routing table and the processing of a routing decision then eigrp stub has no effect on them. But if you think of resource utilization in terms of the number of routing protocol messages that are sent, about the amount of bandwidth that they consume, and about the processing time for these messages then I would claim that eigrp stub can be beneficial about resource utilization.

 

HTH

 

Rick

HTH

Rick

View solution in original post

13 Replies 13

dbeattie
Level 1
Level 1

Yes, this is all about resources on the routers and efficiency. The critical factor is that although the stub may have multiple uplinks (towards the core of the network) it should never become a transit for traffic to traverse from one uplink to another. In doing this the size of the routing table can be restricted promoting more efficient use of the router's resources and reducing the amount of information that must be exchanged before convergence occurs.

 

Hope this helps

 

Dave

I do not agree that stub router for OSPF or for EIGRP is intended to reduce the size of the routing table. If we were talking about OSPF stub area I might agree since the OSPF stub area does not accept any advertisement of external routes. So its routing table could be a bit smaller. But that is not what stub router does in OSPF or in EIGRP. stub does significantly different things in OSPF and in EIGRP. So lets discuss them separately.

 

In OSPF a router configured as stub will send out its LSAs with maximum metric. The result is that the router will form neighbor relationships but no neighbor will attempt to route any packets through this router. You might use the OSPF stub router in a couple of situations:

1) when bringing up a new router you might configure it as stub. This allows the new router to come up and stabilize. It gives you an opportunity to verify that the router is operating correctly, has appropriate connectivity, is forming appropriate neighbor relationships while not exposing your network traffic to an uncertain resource. 

2) when you are preparing to do maintenance which will bring a router off line you might configure it as stub. This will cause the router to send out new LSAs with maximum metric and will cause its neighbors to look for new routes while continuing to route traffic that was in flight. This is a more graceful withdrawal than simply powering down and requiring neighbors to adapt to an abrupt failure.

 

The function in EIGRP is quite different. The function of stub router in EIGRP has to do with the query process that EIGRP uses when a route transitions to the active state. In normal EIGRP when a route transitions to the active state the EIGRP router will send query messages to all of its neighbors. Each neighbor must either be able to answer the query or must forward the query to its neighbors. For routers that have neighbors that are upstream and also neighbors that are downstream this makes a lot of sense. Let us think of a simple example. There is a network running EIGRP with multiple routers. Let us think about routeA which has a neighbor upstream routerU and a neighbor downstream routerD. Somewhere in the network some route is withdrawn. So routerA receives a query from a neighbor (upstream or downstream). It does not know the answer about this route so it must forward the query (to downstream or to upstream). Only when its neighbor has answered the query can routerA send its response.

 

But let us also think about a situation where routerA does not have any downstream neighbors. It may have multiple upstream neighbors but nothing is forwarded to routerA for a destination that is not locally connected (it is not a transit router to reach any other router). Typical example of this would be the spoke router in a hub and spoke network.  Lets think about a situation where routerA has 3 upstream neighbors router1, router2, router3. Now some route in the network is withdrawn. If routerA was a normal EIGRP router it would receive a query from router1 and since it does not know an answer about that route it must forward the query to router2 and to router3. It can not respond until it has received responses from router 2 and router3. routerA has also received a query from router2. It does not know the answer so it must forward the query to router1 and router3 and must wait to send its answer until it has received answers from both of them. And the same thing is true of the query that it receives from router3. I hope you will allow me to not go through the details of who sends what and has to wait for responses. So you can see that there is potentially a lot of query and response traffic going on here which is completely not needed because we knew at the beginning that there is not anything reached through routerA that is not locally connected. So Cisco introduced the concept of stub router in EIGRP. When routerA is configured as a stub it notifies its neighbors during the neighbor negotiation that it is a stub. Now with routerA as a stub when a route in the network is withdrawn, router1, router2, and router3 will receive the query and will know that routerA is not potentially involved in forwarding to it and so do not forward the query to routerA and all that unnecessary traffic is avoided. 

 

HTH

 

Rick

HTH

Rick

Hello 

May I say excellent post Rick - The  ospf stub for a maintenance change was something I would have never thought of  - really excellent idea!

 

 


Please rate and mark as an accepted solution if you have found any of the information provided useful.
This then could assist others on these forums to find a valuable answer and broadens the community’s global network.

Kind Regards
Paul

Paul

 

Thank you. One of the reasons that I continue to participate in the community is the things that I learn while doing it. Until this discussion I was familiar with ospf stub area but not aware of ospf stub router. I agree that it is a neat concept. I am glad that I have been able to increase awareness of this feature. 

 

HTH

 

Rick

HTH

Rick

Hello

TBH I have use the max-metric command a few times for path manipulation but never really thought to use the way you mentioned.


Please rate and mark as an accepted solution if you have found any of the information provided useful.
This then could assist others on these forums to find a valuable answer and broadens the community’s global network.

Kind Regards
Paul

Thanks so much Dave. I thought as much, but Richard below thinks differently.

I am still trying to wrap my head around his explanation.

Let's if he can clarify a bit more.

nwekechampion
Level 3
Level 3

Hi Richard, 

 

Thanks so much for the explanation you provided earlier. However, i am still unclear about a few things:

 

1. You said: If we were talking about OSPF stub area I might agree since the OSPF stub area does not accept any advertisement of external routes.However  It does NSSA Type 5, Totally NSSA Type 7 ==> Route redistribution into stubby areas.

 

2. So would the only use case for stub routing in OSPF be to:

 a. Add a new router to an existing network

 b. To gracefully remove an old one, 

 c. How does making a router a stub in ospf potentially affects (increases) its metric calculation.

 d. Couldn't a manual adjustment of the local (new/old) router suffice, as opposed to making it a stub?

 

3. As per Eigrp Stub, I understand the SIA issues related with EIGRP. However, it is very confusing, and I personally don't think Cisco learning have done a good job explaining why we need this feature and how it actually works in a real network.

 

So here are my questions, simply (As per Eigrp)

a. Do we simply need a stub router to stop the SIA situation?

b. Would stub routing be only required on routers that do not have any downstream neighbour to send queries to?

c. Is Hub and spoke the only use case for this?

d. Wouldn't SIA processing affect the routers resources in a large scale scenario?

 

 

Thanks so much for your help

In 1) you are confusing ospf area stub and ospf area nssa (not so stubby area). An ospf stub area does not receive any external advertisement. The type 7 LSSA is used in nssa but not in stub areas. 

 

In 2) these are probably the most important use cases. I would not go so far as to say they are the only use cases. In 2c I am not clear what you are asking. When you configure ospf stub the router will send new LSAs with infinite metric. It is not a calculation. It is doing what some protocols might call poisoning its routes so that no neighbor will attempt to forward traffic through it. In 2d I do not know of any way that you can manually adjust the router and achieve the same result that ospf stub does. 

 

In 3) I do not know what you have gotten from Cisco Learning. I have taken some classes and have attended some Cisco Live presentations in which I thought they did have effective explanations of eigrp stub. I agree that it is a subtle issue and some parts are more difficult to understand than some other parts of eigrp.

 

For your follow up questions:

a) using eigrp stub is not necessarily a solution for SIA. And it is certainly not the only solution for SIA.

b) I do not want to be overly picky about terms but eigrp stub is not required at all. It is appropriate and may be beneficial on routers running eigrp that do not have downstream neighbors. And it is certainly not appropriate on eigrp routers that do have downstream neighbors. Let me try to be clear about why eigrp stub might be beneficial. Using eigrp stub can eliminate query traffic that will not be helpful. If we can eliminate some network transmission of messages and can eliminate the cpu processing for those messages then it is beneficial to the network. That is what eigrp stub can accomplish.

c) hub and spoke is not the only use case. There are multiple use cases for eigrp stub. hub and spoke is probably the most obvious but certainly not the only use case.

d) I am not sure what you are asking in this one. Certainly processing for SIA has some impact on a router. But eigrp stub is not really about SIA. SIA is about an eigrp router that has sent a query and has received no response. eigrp stub is not about that. eigrp stub is about eliminating traffic that is not useful. Let us be clear that sending and processing query messages is a normal part of network convergence for eigrp. When an eigrp router loses an entry in its routing table and does not have a feasible successor then it transitions that route to the active state. In the active state the router is actively looking for a replacement route by sending query requests. Sending the query to all of its neighbors, and receiving responses from its neighbors is an important part of how the router knows that the new route that it is about to put into the routing table is truly loop free. So query is important in eigrp. But sometimes we can determine that sending the query to some neighbors is not going to be productive.

 

Let me revisit the example I used in my previous response. routerA has 3 upstream neighbors. Lets follow what happens when there is a network event and eigrp needs to converge. So lets count the messages required if we do not use stub. router 1 sends query to routerA (first message), routerA processes the query and decides that it needs to send query to router2 (second message) and to router3 (third message), router2 and router3 process the query from routerA and each sends a response back to routerA (fourth and fifth messages) and routerA is now able to send a response to router1 (sixth message). So the network has had to transmit 18 messages (6 for each of 3 upstream neighbors) and routers had to do processing for those 18 messages. And it was obvious at the beginning of this that routerA did not have helpful information about the missing route. So using eigrp stub in this case could have eliminated 18 messages and related processing.

 

HTH

 

Rick

HTH

Rick

Thanks so much for your detailed explanation Richard. much appreciated.
It certainly does clarify a few things for me especially regarding the Eigrp Stub routing.
So basically the OSPF Stub Area feature serves a completely different purpose to the EIGRP Stub Routing feature?

.... also, with stub routing in place in an EIGRP network, from what you are implying, it increases convergence time and not necessarily affecting or improving resource utilisation?

You are quite welcome. I am glad that my explanations have been helpful. Thank you for marking this question as solved. This will help other participants in the communities to identify discussions which have helpful information. This has been a very interesting discussion of some very subtle topics and other participants would do well to read this carefully. These communities are excellent places to ask questions and to learn about networking. I look forward to seeing you continue to be active in the community.

 

Yes the purpose of ospf stub area and eigrp stub router are quite different. ospf stub area does not accept or process any advertisement for external resources. This simplifies the routing decision and does reduce (at least somewhat) the size of the routing table. In ospf stub area the router knows about destination that are within the enterprise network and depends on a default route for anything external. eigrp stub has to do with the query process and not with routing table entries. eigrp stub attempts to simplify the query process as the eigrp network needs to converge and does not have any effect on the content of the routing table or the routing decision about how reach a particular destination.

 

I want to be very careful with the last part of your most recent follow up question. You ask about whether eigrp stub affects or improves resource utilization. If you think of resource utilization in terms of the size of the routing table and the processing of a routing decision then eigrp stub has no effect on them. But if you think of resource utilization in terms of the number of routing protocol messages that are sent, about the amount of bandwidth that they consume, and about the processing time for these messages then I would claim that eigrp stub can be beneficial about resource utilization.

 

HTH

 

Rick

HTH

Rick

Thanks Richard.

Very nicely put and well explained.
The concepts are very clear to me now.
I will endeavor to remain active, to bounce-off certain concepts with the team here. This has been very helpful.

Thanks again.

You are very welcome. I am glad that our discussions have clarified the points for you. A major part of what this community is about is to ask questions, to have multiple people respond (sometimes with divergent opinions), and to provide clarification about what is being discussed. I am glad that you plan to remain active in the community. I believe that it will be helpful.

 

HTH

 

Rick

HTH

Rick
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: