graph "dual" { layout="neato"; overlap="false"; splines="true"; esep="+30"; sep="+30"; node [shape=record, fontname="monospace"]; edge [color="cornflowerblue", penwidth="2"]; qn_template="infix-bios-x86_64"; qn_image="infix-x86_64-disk-test.img" qn_oui="00:a0:85"; qn_append="quiet"; host [ label="host | { d1a | d1b | d1c | d2a | d2b | d2c }", color="grey", fontcolor="grey", pos="0,15!", provides="controller", ]; dut1 [ label="{ e1 | e2 | e3 } | dut1 | { e4 | e5 | e6 }", pos="10,18!", provides="infix", expected_boot="primary", qn_console=9001, qn_mem="384M", qn_usb="dut1.usb" ]; dut2 [ label="{ e1 | e2 | e3 } | dut2 | { e4 | e5 | e6 }", pos="10,12!", provides="infix", expected_boot="primary", qn_console=9002, qn_mem="384M", qn_usb="dut2.usb" ]; host:d1a -- dut1:e1 [provides=mgmt, color="lightgray"] host:d1b -- dut1:e2 [provides="ieee-mc"] host:d1c -- dut1:e3 [provides="ieee-mc"] host:d2a -- dut2:e1 [provides=mgmt, color="lightgray"] host:d2b -- dut2:e2 [provides="ieee-mc"] host:d2c -- dut2:e3 [provides="ieee-mc"] dut1:e4 -- dut2:e6 [color="black"] dut1:e5 -- dut2:e5 [color="red"] dut1:e6 -- dut2:e4 [color="black"] }