"Robin Jarry" <rja...@redhat.com> writes:

> Hi all,
>
> I have been working on some benchmarks of user space connection
> tracking. I wanted to give some feedback on the results so that I got on
> two patch series that were submitted by Paolo and Gaëtan a while ago.
>
> In this intent, I have written a small script that makes use of T-Rex
> ASTF API to generate arbitrary TCP and UDP connections:
>
> https://github.com/rh-nfv-int/trex-core/blob/master/scripts/conntrack_ndr.py
>
> TL;DR: Both series show significant improvement in conntrack creation
> and destruction for a single core (around +240%). However, there seem to
> be scalability issues with multiple cores in Gaëtan's series.
>

Just a note that may be useful.
After some tests, I noticed that establishing e.g. two TCP connections,
and leaving the first one idle after 3whs, once the second connection
expires (after moving to TIME_WAIT as a result of termination), the
second doesn't get evicted until any event gets scheduled for the first.

ovs-appctl dpctl/dump-conntrack -s
tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=9090,dport=8080),reply=(src=10.1.1.2,dst=10.1.1.1,sport=8080,dport=9090),zone=1,timeout=84576,protoinfo=(state=ESTABLISHED)
tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=9091,dport=8080),reply=(src=10.1.1.2,dst=10.1.1.1,sport=8080,dport=9091),zone=1,timeout=0,protoinfo=(state=TIME_WAIT)

This may be somewhat related to your results as during the
test, the number of connections may reach the limit so apparently reducing
the performances.

As a side note, I noticed that some tests succeed (e.g. 133: conntrack -
IPv6 HTTP with DNAT), but vswitchd ends up calling ovs_abort() after
dpctl_flush_conntrack() (the same happen for later tests after
conntrack_destroy()). That should have no impact on this specific
test, though.

> Detailed benchmark procedure and results:
> https://gist.github.com/rjarry/efe91f14a9bda4eb287592f696dbd123
>
> Gaëtan Rivet's series:
> https://patchwork.ozlabs.org/project/openvswitch/list/?series=292039
>
> Paolo Valerio's series (first 3 patches are missing from the web ui):
> https://patchwork.ozlabs.org/project/openvswitch/list/?series=291239
>
> Cheers,
>
> -- 
> Robin

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to