aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/python/Constants.py
diff options
context:
space:
mode:
authorVratko Polak <vrpolak@cisco.com>2023-05-23 10:34:05 +0200
committerVratko Polak <vrpolak@cisco.com>2023-05-24 12:40:36 +0000
commit1fd3d96de221e7bf281f7ce96dc5cad0170a602d (patch)
treef94e408ee9cedeebe99ff0d70807aefb57812f1f /resources/libraries/python/Constants.py
parentd6604cd860130f3d0520acefc1a0ced70e231b8c (diff)
feat(reassembly): add few suites for ip reassembly
In tunneling scenarios, VPP needs to reassembly packet fragments before decapsulation. Conveniently, VPP also fragments the packets after encapsulation (at least for some encapsulation protocols) if they do not fit into MTU. So this change adds few suites, adapted from existing 3-node ones which additionally lower MTU on DUT1-DUT2 link. The intended packet size is 1518B. 64B packets will fit, and most of IMIX packets will also fit without fragmentation. VPP refuses to reassembly 9000B packets as they have too many fragments. + Add a keyword so suites need only one additional line of code. + Add new test tag REASSEMBLY for the added suites. + Tell autogen the one soak test case for reaseembly should be 1518B. - It is possible to increase fragment limit for 9000B, not done yet. - Ipsec policy suites are added but they should not be used. - VPP does fragmentation twice (before and after encapsulation). - VPP does not perform reassembly (only last fragment is decrypted). - TRex does not realize the packet from VPP is only a fragment. - The result is false pass with unfairly good performance. + Suites still included, to simplify verifying VPP fixes for the above. Change-Id: If33c60d767fea161d9e4ffabb8ded3d81c8f39ed Signed-off-by: Vratko Polak <vrpolak@cisco.com>
Diffstat (limited to 'resources/libraries/python/Constants.py')
-rw-r--r--resources/libraries/python/Constants.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/resources/libraries/python/Constants.py b/resources/libraries/python/Constants.py
index 1049e47f40..1a4b10d441 100644
--- a/resources/libraries/python/Constants.py
+++ b/resources/libraries/python/Constants.py
@@ -250,6 +250,9 @@ class Constants:
# Default path to VPP API Stats socket.
SOCKSTAT_PATH = u"/run/vpp/stats.sock"
+ # This MTU value is used to force VPP to fragment 1518B packet into two.
+ MTU_FOR_FRAGMENTATION = 1043
+
# Number of trials to execute in MRR test.
PERF_TRIAL_MULTIPLICITY = get_int_from_env(u"PERF_TRIAL_MULTIPLICITY", 10)