retis-org/retis

OVS: Extract flow information

Opened this issue · 2 comments

Currently, the OVS module hooks into the ovs_do_execute_action tracepoint and extracts some basic action information.

However, in order to get a more complete picture of what OVS is doing with the packet, it would be nice to get some datapath flow information. Even if we don't implement a full key parsing library, extracting the UFID will be helpful as it can then be enriched by OVS.

Unfortunately, the UFID is not easily available in a tracepoint so some kprobe/kretprobe workaround will be needed (until OVS developers add a good tracepoint, wink wink).

Unfortunately, the UFID is not easily available in a tracepoint so some kprobe/kretprobe workaround will be needed (until OVS developers add a good tracepoint, wink wink).

FYI noinline_for_tracing is currently under discussion, which is a good starting point before adding a tracepoint.

Unfortunately, the UFID is not easily available in a tracepoint so some kprobe/kretprobe workaround will be needed (until OVS developers add a good tracepoint, wink wink).

FYI noinline_for_tracing is currently under discussion, which is a good starting point before adding a tracepoint.

Interesting. Fortunately, the symbol can be probed, it should just be inconvenient to retrieve the data.
This is the case where fexit shines (args access).