aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries
AgeCommit message (Collapse)AuthorFilesLines
2021-03-31TrafficGenerator: Less logging of unsentVratko Polak1-1/+2
When a trial has explicit stop instead of duration (e.g. for show run), the computation of unsent packets is wrong, so simply do not log the result. Change-Id: I7722c85b156f92e456eda212104abdb216e78b04 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-31IPsec: add 2n crypto policy udir perf testsJuraj Linkeš1-35/+65
Add 2n1l udir 1 and 1000 tunnel sw policy IPsec tests to mirror the existing 3n tests. Add static ip neighbor mac entries which can't be retrieved in 2node setups. Change-Id: I13dd557cbeed7f907fa9b4c21e4e245d48916513 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-31Device: Add stats test with AVFVratko Polak2-1/+29
+ Extract the stats keyword into a library. Change-Id: Icfaaa32c2a97d479ba0339acf34b865006949a89 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-29FIX: VPP version file name based on OSpmikus1-13/+13
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Icab8b87498e8487268857bb04c5ba7069d9297e3
2021-03-26STL traffic: Use the sleep+stop logicVratko Polak3-8/+38
+ PPS limit for AWS set to 1.2 Mpps. + The logic is very similar to that one in ASTF driver. + This helps for testbeds with high duration stretching (e.g. AWS). + Difference: No transaction scale, and we deal with floats. + Update loss counting to count unsent packets as lost. + Also count "unsent" transactions for other transaction types. + If nonzero, log the number of unsent packets/transactions. + Make STL and ASTF time overhead constant (called delay) configurable. + Subtract delay from approximated_duration, also for ASTF. Change-Id: I6ee6aa6fba4f110ba1636e1b0ff76cac64383e33 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-26Parametrize T-Rex rx/tx descriptors countTomas Alexy2-0/+23
Additional configuration can provide performance boosts when running in virtual environments If set to 0, uses default DPDK value By tuning this value it's also possible to run T-Rex 2.88 with ENA NICs on AWS Signed-off-by: Tomas Alexy <tomas.alexy@pantheon.tech> Change-Id: I43c86ea1d9aa854a1087f07fe544ac77a5b80397
2021-03-26ansible: update TX2 VPP Device hugepages and ifsJuraj Linkeš1-8/+2
These interfaces are not used, so remove them until we actually use them. Use less amount of hugepages since we don't need as much and the rest of the memory is more useful for build/host processes. Change-Id: I52b2d6e2812e5cadeab9e51a1bae3688794f414a Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-24FrameworkSetup: fix timeout in Arm setupJuraj Linkeš1-1/+1
Framework extraction in Arm jobs is taking longer than the current timeout. Increase the timeout to fix this. Change-Id: I436d3131fcd7c25fd1f9607095712b4a8aa2d28c Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-24FrameworkSetup: catch all exceptions in threadsJuraj Linkeš1-15/+32
Any uncaught exception in a thread running setup_node or cleanup_node will prevent the result of that thread's execution from being passed to the main thread. Since the main thread assumes there will be a result for each thread, this leads to false positives. Catch all exceptions in those background threads to fix this. Change-Id: I64013dfc671e576290c8376a58c754ed21b9ba3e Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-23Infra: fix NUMA count in Arm DPDK buildJuraj Linkeš1-3/+6
The default NUMA value for Taishan build is insufficient and results in failed test runs. Fix by increasing the amount to what's on the device. Change-Id: Ia7c761e81ee9063d7129472d9caa8cebbbb7e1cf Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-23Geneve: Re-write the creation of tunnels in pythonTibor Frank2-38/+75
Change-Id: I8b20134ad10abd9c021270b98c3110bd186946d5 Signed-off-by: Tibor Frank <tifrank@cisco.com>
2021-03-22MLRsearch: Support other than just two ratiosVratko Polak13-654/+896
+ Change some method names and argument types: + Do not mention NDR and PDR, except as examples. + Return list of ReceiveRateInterval instead of NdrPdrResult. + The resulting intervals can be degenerate when hitting min/max rate. + Rename quantity name parts from "fraction" to "ratio". + Intervals are no longer tracked for each target ratio. + They are found dynamically from known results. + Add effective_loss_ratio field to avoid loss inversion effects. + Move some functions to separate files. + Bound search logic moved to MeasurementDatabase.py + ProgressState moved to its file. + WidthArithmetics.py holds small computation functions. + Use parameter expansion_coefficient instead of "doublings". + Do uneven bisect to save time when width is not power of two times goal. + Timeout now correctly tracked for the whole search, not just the current phase. + Make logging (debug) function pluggable. + Added debug log messages for initial phase. + Do not mark as subclass if contructor signature differs. + Avoid re-measure on scale-limited (ASTF) profiles. + Remove outdated comments. + Bump copyright years. Change-Id: I93f693b4f186f59030ee5ac21b78acc890109813 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-22FIX: LXC imagepmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I73f7a1095b7cee52fade8a31285e405727548394
2021-03-20Tox: Increase verbosityVratko Polak1-2/+3
CSIT is becoming stricter in avoiding downloads during run, as everything should be pre-cached in executor image. This change makes it easier for human to detect downloads. Change-Id: If7085f96ef1033f7f9405a86232a3d39a239d3e1 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-19FrameworkSetup: Detect socket.timeoutVratko Polak1-2/+3
Otherwise setup "passes" leading to confusing errors later. Example: https://logs.fd.io/production/vex-yul-rot-jenkins-1/csit-vpp-perf-mrr-daily-master-2n-skx/1251/archives/log.html.gz#s1-s1-s1-k1-k2 Change-Id: I56b14e2eb75679c7c10b00b3f9c6bf07902e5166 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-18fix two issuesYulong Pei1-1/+1
1. wrong symbol link path for MLRsearch. 2. self._received force to integer in _parse_traffic_results function. Signed-off-by: Yulong Pei <yulong.pei@intel.com> Change-Id: Ie86a549b222d28b8cecc889807044476975dffb1
2021-03-17IPsec: fix SA policy cliJuraj Linkeš1-2/+2
The tunnel specification in "ipsec sa add" has changed. Update the cli the reflect this. Change-Id: I11d788798419b96b1289c53052eedb9767252df6 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-16Infra: Upgrade csit-dut imagepmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I0341a1564ba510acf46bda3e24225209abef2f82
2021-03-16Perf: Bump T-Rex to 2.88pmikus1-2/+2
+ Mellanox 4.6 is not for Ubuntu 20.04 + Mellanox for ubuntu 20.04 is 4.9+ + T-Rex 2.86 is not for Mellanox 4.6+ + T-Rex for Mellanox 5.2 is 2.88+ ================================== = Bump Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I902dfc2a43e6718b385e89f31a34260e09d61bd3
2021-03-16API options: Fix case when no options are presentVratko Polak1-2/+2
In that case we want to pass by returning an empty dict, as docstring already describes. Before this, the code failed when checking for included version. Change-Id: Ia0d6b81a64ad0e7027ac7daf15c72ace1f6982ce Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-12Allow IPSECSW on 2node testbedsVratko Polak1-5/+5
Change-Id: I71d72699a7fa99749e2554fcb2252f8bd86bfdfa Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-10Infra: Do not strict check keys in Ansiblepmikus1-7/+9
- not until we migrate to SSH keys in ubuntu 2004 Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I796f86922c672ba053d64f317cf6adb46b845cac
2021-03-09API: Track options and versionVratko Polak1-9/+55
If options are not present in .api.json file (e.g. old PVP build), use an empty dict. If a message is used in CSIT, check its options. Tolerate vat_help, but print warning for others. This aims to discover in-progress and obsolete APIs. If .api.json version is not detected, or starts with "0.", add a "version" item to options, so they get reported. Change-Id: Ic5a9423157728a58f7ad306c7bd9eaef3bd92488 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-22Ipsec: Always generate ikeyVratko Polak1-43/+67
Some tests use a crypto algorithm with no integrity algorithm. Generate empty binary strings as fake integrity keys to keep return values of low level methods consistent. + Add return_keys argument to avoid returning long lists. + Improve various docstrings. Change-Id: Idae1877bdde32d194ce4e3bb3053c8dba39d377a Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-19Add test suites for crypto sw scheduler engineYulong Pei6-5/+165
This patch is to add test suites for vpp plugin crypto_sw_scheduler, IPsec sync mode is to do crypto and packet forward work in same worker cores, crypto_sw_scheduler can schedule crypto work to other async crypto cores to improve whole crypto processing capability. This test suites configure fixed 1 rx queues per port, then measure IPsec performance with 1, 2, 3 crypto cores. This patchset include 1, 2, 4, 8 ipsec tunnels test cases. +Vratko help to change to count total physical cores instead of previous only count crypto cores in test cases. Change-Id: I0e67182e3d13273890a23703d838101900e25126 Signed-off-by: Yulong Pei <yulong.pei@intel.com> Signed-off-by: Vratko Polak <vrpolak@cisco.com> Signed-off-by: pmikus <pmikus@cisco.com>
2021-02-19FIX: Naming convention compliancepmikus1-1/+1
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Idcee623abbc5568fc6ca49113bc2ff8add179046
2021-02-19API: Use newer messagesVratko Polak2-9/+24
The mesages are the newest present in last common ancestor of master and rls2101 (so not yet ipsec_sad_entry_add_del_v3). Added a TODO for the RDMA create improvement, to be implemented in a separate change. Change-Id: I94bcd2f1bc109fb995c4dd6df44f8928865634f5 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-19Framework: GSO testpmikus2-1/+70
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I874568aebbe50c38e634438eb1201ca737bd18ad
2021-02-18Framework: Qemu 4.2 compatibility fixpmikus1-1/+0
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I8692b53c02773dbe5a5e02f959dfed8599cb8a4d
2021-02-17PAPI: Python 3.8 compatibilitypmikus1-5/+7
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I33fefddda9055524c1817b13b5c99bb1b97ebff4
2021-02-16Infra: Ansible 2.10Peter Mikus1-2/+3
Signed-off-by: Peter Mikus <pmikus@cisco.com> Change-Id: I6b058ff30628c7e066372fec2141a8bcc18c3997
2021-02-08FIX: Nic selectionpmikus1-2/+2
- Buggy unnoticed for quite some time Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I7d2387186e0250b80d664e2f004f909fd80c7bfa
2021-02-08Traffic generator: Force ramp-up in next testVratko Polak1-2/+2
The behavior was already documented, just not implemented properly. Change-Id: Ib8c232c004e91032e1230e86dda9f70bdfab43ad Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-05NAT44ed: Add pure throuhput bidir testsVratko Polak5-71/+313
+ With ramp-up, without reset, with session verification. + Uses the same profile as pps tests. + Ramp up duration is not specified, as duration is computed. + Timeout tracking with automated ramp-up. + Correct computation of next duration. + Checking both early and late sessions. + No loss measurement also acts as a ramp-up. + Return ReceiveRateMeasurement from send_traffic_on_tg_internal, as that is needed for detecting whether trial is ok as ramp up. - Udp needs quite low ramp-up rate after recent regression. - Max scale has higher rate (so failing) to avoid session timeouts. + Bump copyright year. Change-Id: I50c928659cd5b985b490a2e5fb69c5cd790600b0 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-01-21Reconf: Fix bidir/unidir mismatchVratko Polak1-14/+15
Results if NDR search is in TPS (so unidir) since https://gerrit.fd.io/r/c/csit/+/28208 The bug was causing all reconf tests report zero loss, as they used half of NDR load during reconfiguration. + Small improvements to descriptions of other traffic keywords. Change-Id: Ib9af5861cc09e698eb762feb3f0a019571d17962 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-01-14perf: GENEVE tunnel test, l3 modeJan Gelety3-5/+7
Jira: CSIT-1768 Change-Id: I888ae1a5754fa07297d4cdf65c2be0e3e49d89a5 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2021-01-11tests: add 2n1l l2 acl tests, update 2n-tx2 specsJuraj Linkeš1-7/+12
Modify initialize L2BD ACL keywords to be usable for both 2-node and 3-node topologies and update testsuites accordingly. Add the missing macip T-rex profile. Add classifier tests to 2n-tx2 job specs. Change-Id: I17b84b8fc18ef9a6f275ae0238a0665ac2017f01 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-01-11Infra: Increase shm-sizepmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ib9dfb8623757fd23fd8b49b5e04ed86e202ada66
2021-01-07fix: use csit lts branch in vpp-csit lts jobsJan Gelety1-1/+5
Change-Id: Iebd62fd6b0c798f7b4dd1f3b093c156e533b3900 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-21fix: geneveJan Gelety1-3/+3
Change-Id: I23541e1c07a42b4baa560c343ffeed3b963fe694 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2021-01-04API: deprecated COP APIsTomas Alexy2-22/+22
Signed-off-by: Tomas Alexy <tomas.alexy@pantheon.tech> Change-Id: Ifb97088a26f3c2ab2ecee28ed43e6e957a844c64
2021-01-04GSO: TAP/VHOST use casepmikus14-65/+983
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ibafaaca4438587284d1e255c764f0701002941e8
2021-01-04FIX: AWK NIC replace in case of x520pmikus1-1/+1
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I7d83ba048e0609d6b8623fab5c2960e48a37c023
2020-12-21Framework: add 2n-tx2 perf testbedJuraj Linkeš1-1/+12
Add testbed file and make code changes in common.sh. Change-Id: I493bb92db3c66358afa81ec81bcd99b296f49c03 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2020-12-18Keep robot example lines shortVratko Polak1-12/+12
Do not expand argument expressions into actual verbose values. Change-Id: I3d86cd826e9cd03cefefe2e197250f76414ac101 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-18API: deprecated bond APIsJan Gelety5-61/+47
Jira: CSIT-1597 Change-Id: I77b746584851331d46eca1caafd4468d18f1e78d Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-18FIX: Backward compatibility include selectionpmikus1-2/+9
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ieff60a44d42d66acee8ba1680e7e285d6cd01bc9
2020-12-17PAPI: Cache connected client instancesVratko Polak5-97/+480
Disconnect+connect cycle is expensive and slow. This change tracks connected client instances so later "connect" to the same target uses it. Explicit disconnects are allowed (and executed before VPP ends), but once again disconnected instances are cached and reused, as creating a new instance is more expensive than just connect. + Add missing checks on interfaces being up to appropriate keyword. + Use appropriate keywords. + Add a comment explaining why a simpler keyword is not appropriate. + Improve VPP checks in containers. + Fix the vppctl check to actually work. + Add PAPI check to ensure VPP is really ready. + Delay/reorder checks to make them faster with multiple containers. + Leave some TODOs to improve various lifecycles later. + As we do not stop VPP in test/suite teardown: + One final disconnect is needed, added to __init__.robot teardowns. - Import of the final disconnect keyword is ugly, but it works. - We could use a hashable class for distinguishing node+socket pairs. - Are we connecting to VPP inside VMs? Change-Id: I49cd726740c3e8cae1591c7c84b85a447241228f Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-17Switch include to testpmikus1-22/+36
+ Reduce time overhead when parsing --include vs --test + Input files will remain the same + 3n-hsw 150include ~24min, 150test ~5min + 2n-clx 489include ~61min, 489test ~9min Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I7e5957c32385aecbc4551bd124da41afa5bc63c9
2020-12-11API: deprecated nsim APIsJan Gelety1-3/+11
Jira: CSIT-1597 Change-Id: Ice342d6cb7cd244d712c42a3d468c851c79739f4 Signed-off-by: Jan Gelety <jgelety@cisco.com>