| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The forwarding table was filled with wrong next-hops, and which is even
worse, it was done in a totally non-deterministic way.
The next-hop set for an IP prefix by isisd was the neighbor IS from which
the flooded LSP about the IP prefix was arrived. So, if an IS received all
the LSPs through its, say, eth0 interface, all entries in the forwarding
table contained the next IS reachable via eth0 as the next-hop.
The solution is to propagate the correct next-hop further from node to node
as the SPF algorithm traverses the graph and selects the next node to be
added to the set of already covered nodes.
Also, the construction of the tentative node list (the nodes where the
shortest path is not known yet) was buggy: if a node was already a member
of this list with a certain path cost, and an alternative path was found to
it with a lower cost while processing a pseudo-node LSP, it was not added
to the list. This way, the path selected by isisd for a certain prefix was
the first one it encountered during the LSDB processing.
Signed-off-by: Fritz Reichmann <fritz@reichmann.nl>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
only in generated topology LSPs.
* isisd.[ch]: Cleanup CLI commands related to topology generation and
added command to specify base fo dynamic hostname for topology LSPs.
* isis_lsp.c: Rewrite almost all code related to generation topology
LSPs (top_lsp_refresh(), generate_topology_lsps() and
build_topology_lsp_data() functions). Topology is connected to own
LSP now (lsp_build_nonpseudo). Commented out lsppdu_realloc
functions, it's not used any more hopefully.
Topology generation feature is actually useful now.
|
|
|
|
|
|
| |
its data and put it back after. Database entry MUST contain at least
correct pointers to the sysid to get correct compare results.
* isis_lsp.[ch], isis_pdu.c: Pass level to the lsp_update() function.
|
| |
|
| |
|
|
|
|
|
| |
* isis_misc.[c|h], isis_lsp.[c|h]: Move static variables out of header
files.
|
| |
|
|
|