-
Bug
-
Resolution: Unresolved
-
Medium
-
None
-
None
-
None
-
None
I am working on a test suite that will do IP fragmentation and reasembly, using a tunneling protocol (currently gtpu) over an interface with reduced MTU. I have seen "duplicate/overlapping fragments" (causing very poor NDR) when multiple workers are fragmenting for a single tunnel.
As I was able to restore good performance using [0], I believe the issue is at line 45, running_fragment_id shared among all workers. A better solution would be to divide u32 into intervals, so each worker keeps a thread-local variable to iterate over its own interval.
From CSIT point of view, we are not blocked, as we have few testbeds with hyperthreading off, so we can see good results in 1c tests there.
[0] https://gerrit.fd.io/r/c/vpp/+/38797/1/src/vnet/ip/ip_frag.c