<div dir="ltr">Hi,<div><br></div><div>Thanks for reaching out us. </div><div><br></div><div>I'm going to define what skydive does in the context of your project. Skydive collects all the events of the monitored topology. It listens for event from netlink, ovsdb, namespaces, docker and uses connectors to external SDN controllers  (Neutron, Opencontrail) to enhance the captured topology. As Skydive is listening the events we keep all the modification of the topology in a data store which allows us to see any previous version. On top of that we can start packet capture and packet generation/injection. Since there is a mapping between the flows and the topology we can track a packet along its path and see where a packet was dropped. We do support multi-level of encapsulation useful for nested deployment like container over OpenStack meaning that we do support packet tracking between two containers hosted within two VMs.</div><div><br></div><div>That where I think your project could be useful as we are currently working on a way to write validation rules leveraging topology/packet capture/packet injection, it seems to me that Symnet provides such mechanism. </div><div><br></div><div>Depending on the language used by Symnet (Scala ?) it could be integrated within Skydive or just consuming information gathered. Internally the topology is kept as a graph and external tools can subscribe to it or just use the API (Gremlin language).</div><div><br></div><div>Regards,</div><div>Sylvain</div><div><br></div><div><br></div><div><br></div></div>