graph "2x4" {
	layout="neato";
	overlap="false";
	esep="+23";

        node [shape=record, fontname="DejaVu Sans Mono, Book"];
	edge [color="cornflowerblue", penwidth="2", fontname="DejaVu Serif, Book"];

	host [
		label="host | { <mgmt1> mgmt1 | <data11> data11 | <data12>  data12 | <> \n\n\n | <mgmt2> mgmt2 | <data21> data21 | <data22>  data22 }",
		pos="0,15!",
		requires="controller",
	];

        dut1 [
		label="{ <mgmt> mgmt | <data1> data1 | <data2> data2 } | { dut1 \nVLAN55: 10.0.1.1 \nVLAN77: 10.0.2.1 |  <link> link }",
		pos="3,15.4!",
		fontsize=12,
		requires="infix",
	];

        dut2 [
		label="{ <mgmt> mgmt | <data1> data1 | <data2> data2 } | { <link> link | dut2 \nVLAN55: 10.0.1.2 \nVLAN77: 10.0.2.2\n }",
		pos="3,14.6!",
		fontsize=12,
		requires="infix",
	];

	host:mgmt1 -- dut1:mgmt [requires="mgmt", color=lightgrey]
	host:data11 -- dut1:data1 [color=purple, fontcolor=purple, taillabel="10.0.1.11", headlabel="VLAN55 U"]
	host:data12 -- dut1:data2 [color=darkgreen, fontcolor=darkgreen, taillabel="10.0.2.11", headlabel="VLAN77 U"]

	host:mgmt2 -- dut2:mgmt [requires="mgmt", color=lightgrey]
	host:data21 -- dut2:data1 [color=purple, fontcolor=purple, taillabel="10.0.1.22", headlabel="VLAN55 U"]
	host:data22 -- dut2:data2 [color=darkgreen, fontcolor=darkgreen, taillabel="10.0.2.22", headlabel="VLAN77 U"]

	dut1:link -- dut2:link [color=black, fontcolor=black, label="VLAN 1,2 T"]
}