As part of its operation, Cisco Enhanced Interior Gateway Routing Protocol or EIGRP forms neighbor relationships by sending ‘Hello’ packets to other routers. If a router sends Hello packets to another router that receives them, it will become a neighbor and they will just exchange their routing information that will be saved in the topology table. EIGRP has a table called “EIGRP Routing Table” that has the best routes from EIGRP Topology table that are going to be used for sending the traffic.
Let’s have a look at this topology:
EIGRP is configured and running on all of the routers shown in the topology above. As we can see, there is a link failure on R1 to Network 10.1.1.0/24.
As R1 have lost its Successor, and if it doesn’t have an FS in its topology table, it will send queries to R2 and R3. The following scenarios will take place:
•1. If R2 or R3, have information about network 10.1.1.0/24, they will reply back to R1 and the query process will end.
•2. If neither of R2 nor R3 have no information about network 10.1.1.0/24, each one of them will send query to its neighbors. R2 and R3 will not send any replies to R1 until they get a response to their queries from their neighbors (R4, R5, R6 and R7). R2 neighbors have replied back that they have no information about network 10.1.1.0/24, in return, R2 replies back to R1 that it has no clue. R7 has replied R3 that it has no information about that network, but R3 is still waiting for R7 that has no informaation about network 10.1.1.0/24 and as result, it has sent a query to its neighbors in network 10.2.2.0/24. R7 will not reply R3 until it gets a reply to its query (That’s the idea behind using STUB areas, to prevent such queries). EIGRP process is considered “Stuck in Active (SIA)” and must be reset when one or more queries to a neighbor do not return a route before the active timer expires (default is 3 minutes) and neighbor adjacency will be killed. By dropping the neighbor adjacency you will lose all the routes you’ve learned from this neighbor which means the router will start sending queries for all those routes as well.
Why don’t neighbors give a reply back to R1?
The router that gets the query is too busy because of memory problems or a CPU that’s too busy. It might not get the chance to process the incoming query or send a reply packet.
There are problems with the link between the neighbors so not all packets arrive.
You have a unidirectional link failure so packets only flow in one direction. This can happen with fiber links.
Cisco IOS Software Release 12.1(5) introduced a new feature called Active Process Enhancement.
This feature enables an EIGRP router to monitor the progression of the search for a successor route and ensure that the neighbor is still reachable by using two new addition to the EIGRP packet header:
SIA – Query
SIA – Reply
The result is improved network reliability by reducing unintended termination of neighbor adjacency.
Going back to the above diagram, let me illustrate how the process works before and after the addition of the Active Process Enhancement::
R1 sends a query for network 10.2.2.0/24 to R3
R3 has no entry for this network, so it queries R7
If problem exists between R3 and R7, the reply packet from R7 to R3 might be delayed or lost.
R1 has no visibility of downstream progress and assumes that no response indicates problems with R3
After R1’s 3-minute active timer expires, the neighbor relationship with R3 is reset, along with all known routes from R3.
With the Active Process Enhancement feature, R1 queries downstream R3 (with an SIA-Query) at the midway point of the active timer (one and a half minutes by default) about the status of the route.
R3 responds (with an SIA-Reply) that it is searching for a replacement route.
Upon receiving this SIA-Reply response packet, R1 validates the status of R3 and does not terminate the neighbor relationship.
Meanwhile, R3 will send up to three SIA-Queries to R7. If they go unanswered, R3 will terminate the neighbor relationship with R7.
R3 will then update R1 with an SIA-Reply indicating that the network 10.2.2.0/24 is unreachable.
R1 and R3 will remove the active route from their topology tables.
The neighbor relationship between R1 and R3 remains intact.
Another method to deal with these queries is to configure EIGRP summarization or the EIGRP stub feature.