aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries
AgeCommit message (Collapse)AuthorFilesLines
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>
2020-12-16API: deprecated IPSEC APIsJan Gelety4-134/+388
Jira: CSIT-1597 + add ipsec_sa tear down action Change-Id: I4d1e6f26c14e61e8ddc6f29fbf5528a034c84eb0 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-09Tox: Add GPL license checkerVratko Polak2-1/+74
A common mistage is to add a file into GPL directory, with Apache license only. This adds a tox checker to vote -1 on such changes, gpl_license.log contains the list of affected files. There are TODOs related to unlicensed files or unconventional GPL licenses. Change-Id: I267e4fb98afd199d5acc7d211068b28c97b31dc9 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-03vpp-device: GENEVE tunnel test, l3 modeJan Gelety7-90/+366
Jira: CSIT-1769 Change-Id: I98510cd8e627d7347f77d0032b7bac28f2e36c61 Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-08Revert "vpp-device: GENEVE tunnel test, l3 mode"Peter Mikus7-366/+90
This reverts commit a9f54ca5080aeef17686f300a6807bf9b46b7c90. Reason for revert: DO NOT MERGE BROKEN TESTS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! https://logs.fd.io/production/vex-yul-rot-jenkins-1/csit-vpp-device-master-ubuntu1804-1n-skx/9918/archives/log.html.gz Change-Id: I2ce2970a43e5dd7487eeb54d1ccbb149e06cf8fa Signed-off-by: pmikus <pmikus@cisco.com>
2020-12-03vpp-device: GENEVE tunnel test, l3 modeJan Gelety7-90/+366
Jira: CSIT-1769 Change-Id: I0ab906966f760b809b8431530c010a8f0835d62c Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-07Fix vpp-csit device scriptVratko Polak1-1/+0
In Gerrit 30041 that was not tested properly. Change-Id: I42f57f1933b0e7d029030f4ec502f7268780827b Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-04vpp_device: fix vpp device kernel driver bindingJuraj Linkeš1-9/+5
Attempt to unbind a driver from a device only if it is bound to a driver. Remove the dynamic addition of an existing device ID to a driver. From the docs [0]: Writing a device ID to this file will attempt to dynamically add a new device ID to a PCI device driver. Since we assume the VFs are bound to the kernel driver when VPP Device topology creation is done, it implies that the kernel driver supports the device ID of those VFs, removing the need to add the support. [0]: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-bus-pci Change-Id: I20f3ca071a5a84a06ff358ba514532248a8f9ad0 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2020-12-02Avoid ci-management archiving files twiceVratko Polak6-70/+54
This is a follow-up to https://gerrit.fd.io/r/c/csit/+/20394 https://gerrit.fd.io/r/20119 has changed the way archival works, everything should now go to logs.fd.io (instead of appearing on run page in jenkins.fd.io). The glob pattern for archiving is quite eager, doing recursive search. That is good, as it can find also misplaced useful outputs. But it also means our usage of copy_archives function creates two copies of archived directtories, usually archives/ and archives/archive/. This change renames copy_archives to move_archives, with few workarounds to support multiple calls. I also renamed ARCHIVE_DIR value from $CSIT_DIR/archive to $CSIT_DIR/archives to make "move" operation look natural. Finally, download_builds function is being removed, as after recent improvements to VPP compilation speed nobody seems to be using it. Change-Id: I19a429e1dfdfaab7fcf32a9609963b1aebd33c6c Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-12-02API: deprecated NAT APIsJan Gelety2-11/+16
Jira: CSIT-1597 Change-Id: Ib48d20ba087bc9828970c3acc081ac6e4447c20c Signed-off-by: Jan Gelety <jgelety@cisco.com>
2020-12-01Tolerate base64 encoded Gerrit commentsVratko Polak1-2/+8
+ Move "|| true" to a place that really aviods errors. + Attemp to parse decoded string if trigger is not found in plain one. Change-Id: If3587229ec588f9ad41acb3050add1142032d2d8 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2020-11-26Re-enable 9000B tests for ipsecVratko Polak1-4/+0
Ticket: CSIT-1771 VPP-1207 VPP-1675 Change-Id: I8ba2d62054361e72b833943327434ea071e7e568 Signed-off-by: Vratko Polak <vrpolak@cisco.com>