Omit packages dropped by OpenFlow from sFlow samples in mininet

25 views
Skip to first unread message

Dio V

unread,
Sep 21, 2020, 11:01:20 AM9/21/20
to sFlow

Hello,
I am using mininet to experiment with some SDN applications and use sFlow for gathering network statistics and sfacctd for data aggregation.

When I set an OpenFlow rule to drop traffic, I can still see the dropped packages on the collector. If I understand correctly this is because OVS performs ingress sampling (instead of egress)

My main question is: How can I omit packages dropped by an OpenFlow drop action from the sFlow samples?

I think possible solutions are:
  • Configure OVS to perform egress sampling (I couldn't find anything on the ovs-vsctl man-page, with which sFlow is configured)
  • Add a filter on sfacctd (I couldn't find any option there either)
  • Use an alternative collector (maybe sflow-rt?). If it is in principle possible to achieve what I want and it is just a limitation of the collector I'm using, could you provide me with some guidance on that alternative tool?
If none of my solutions is correct I am open for suggestions.

Thank you,
Dionisio

Peter Phaal

unread,
Sep 21, 2020, 12:12:36 PM9/21/20
to sFlow
The sFlow packet samples from OVS indicate that the sampled packet was dropped, by setting format=1, reason=256 in the egress port field, see sFlow Version 5, page 27, https://sflow.org/sflow_version_5.txt. You can see this in the sflowtool output, e.g.

inputPort 38
outputPort dropCode 256

Your sFlow analyzer should let you filter on the outputifindex field so you can ignore dropped packets.

Reply all
Reply to author
Forward
0 new messages