Route path simulator

lazear at lazear at
Thu Jun 2 16:46:17 UTC 1994

As one approach to seeing whether a group of routers were acting
correctly, I wrote some code to trace all possible routings in
a network.  The basic approach was to gather (via SNMP) all the
routing tables of all the routers (SNMPv2 GetBulk could help keep
this reasonable) and run through the routes for each subscriber
net to every other subscriber net.  This presumed a backbone set
of routers and a known set of networks behind each "POP" router.

The program took less than a second on a Sparc ELC, for 30+
routers and 100+ subscriber nets.  The program highlighted long
routes, loops (such as when defaults point to defaults that
point back...), and dead ends.  The diameter of the network was 
settable and "long" was defined as some amount above the diameter.  

The intent was to discover that "reasonable" routing was
happening...there was no intent to insist on optimal routing.
The snapshot of routing tables could be a blurred one, as
dynamic routing protocols could be changing routing tables during the
period of table collection.  The same effect could be achieved
by doing "traceroutes" from every subscriber network, but this
gets messy. 

Overall, it was a fun exercise and the operational requirement was
that you identify where each network attached to your backbone.
Then you look at actual routing tables to see that your routing
protocols were being reasonable about service.

The program has been packaged and is available online:

Enjoy and let me know any reactions to the scheme.


More information about the NANOG mailing list