Ask HN: How to describe heterogeneous network topology and compute configs?

6 points by faisals ↗ HN
I'm looking for a standard file format to describe my private network. It is a heterogeneous network which is comprised of different operating systems (Linux, small RTOS, baremetal), and communication links (Ethernet, CAN, UART, Power Line Communications, and others ...).

I need to: 1. Describe network nodes, their interfaces, and connections (network topology). 2. Compute the configuration of each network interface (Layers 2 and 3), and node (some nodes are routers, need to generate the routing table as well).

Step 1: Hopefully, if I'm using a standard file format, I should be able to leverage some GUI tools to draw the network and enter in information, and/or visualize the network from the description in the file. The file should capture some necessary description of each node, the various network interfaces of each node, and the overall network topology. From this description, a network configuration needs to be computed. This configuration should ideally be able to be stored in the same file.

Step 2: Are there any available tools which can consume a description of a network topology, and generate subnets and IP addresses for each interface automagically?

Existing tools: Representing bus style networks (CAN, 10BASE2/5, PLC) seem to be difficult in the existing tools I've found. GraphML and netjson look promising. I haven't found anything non-proprietary to generate the network configuration from a topology description.

2 comments

[ 3.0 ms ] story [ 15.4 ms ] thread
In a couple of months I intend to look into this as well, leaving a comment here to remind me...