Kentucky's Network Implementation Topology Tool

This tool, KNITT version 20241105, allows you to better manage the physical layout and connections of a network. It is particularly effective in optimizing physical layout of networks involving switches and other components spread across multiple racks. For more information see the KNITT homepage: http://aggregate.org/KNITT

Begin by specifying the logical connection pattern of the network (e.g., 0: 1 2 means s0 is connected to n1 and n2):

Next, define your physical racks (e.g., [sn0n] defines a rack with switch, n0, and another node):

How many seconds to search for a good layout (0 means use initial pattern)?

Switch Cable Color & Stripes Switch Cable Color & Stripes Switch Cable Color & Stripes Switch Cable Color & Stripes
s0: s8: s16: s24:
s1: s9: s17: s25:
s2: s10: s18: s26:
s3: s11: s19: s27:
s4: s12: s20: s28:
s5: s13: s21: s29:
s6: s14: s22: s30:
s7: s15: s23: s31:


Rack Placement Results

There were 2 rack crossings remaining of 4 total wires (50.000000%).

The following rack placement specification can be edited and used as input to this form, thus allowing incremental changes. That is also how you can re-render with different color choices for cabling.

[s0 n0 n2]
[s1 n1 n3]


Graphical Representation

The following SVG diagram shows the arrangement of objects on racks and the links between them. It was rendered using dot.



netmap



node0

s0

n0

n2



node1

s1

n1

n3



node0:n2->node1:s1




node1:n1->node0:s0





Color-Coded Labels

The following color-coded labels can be printed for marking each node with the set of switches to which it must be connected. The start of each line is the rack number, e.g., rack 2 is [2]. In cases where there are too few cabling colors to assign each switch a unique color, we suggest placing one or more tape stripes on each cable to distinguish between switches of the same color. For example, "/s1" would be the striped cable to switch s1.

[0] s0:
[0] n0: s0
[0] n2: s1
[1] s1:
[1] n1: s0
[1] n3: s1


The WWW form interface for KNITT 20241105 is implemented using custom C code written by Hank Dietz, using CGIC for the basic CGI interface.


The Aggregate The only thing set in stone is our name.