summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-01-08Fix using signature in latency measurementsXavier Simonart1-0/+3
When doing latency measurements the generator can add a 32 bits signature in the packet at a specific location, so that the receiver only uses the packets generated by the generator and ignores packets generated for instance by a switch The is particuly important for latency measurements as we use data in the packets as timestamps, and packets generated elsewhere would result in random latency for those packets. Change-Id: I8352b35aff76ec8d1344a1e492b9dcc20a53f1ce Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2018-01-08Fix stacking of rx receive functionsXavier Simonart2-10/+11
PROX can stack different RX functions, so that they are executed after each other. This feature is for instance used to dump packets or to print distribution of receive packets, without influencing the performance of the rx functions when no dump or print is needed. The previous implementation was wrong and causing some of the stacked functions not to be executed. This was causing for instance issues in latency measurement after enabling dumping packets. Change-Id: I766b8ee8e8852fa17cdaf60ee6e1fec0dc98c719 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2018-01-05Merge "Initialize fields of outer IP header"Deepak S1-5/+4
2018-01-04Fix potential crash when issuing "tx distr stop" command.Xavier Simonart1-2/+2
Change-Id: I9ef89020d203674f6c3301653ab2ff9d623665b6 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2018-01-04Add config option to use port mac as src mac in l2fwd and swapXavier Simonart3-27/+39
L2fwd and swap has many options to set src mac. swap was supposed to support the ability to use port mac, but config file parsing was wrong. L2fwd was using port mac if a port was available and if src mac=packet or if there was no src mac in the config. Now l2fwd supports the following options - "src mac=xx:xx:xx:xx:xx:xx" => this mac address is used as src mac. - "src mac=packet" => the src mac is taken from the dst mac of the received packet. - "src mac=hw" => the src mac is taken from the mac address of the port, if there is a physical port. Error otherwise. - "src mac=no" => src mac kept untouched - No "src mac" => same as "src mac=hw" if there is a physical port and same as "src mac=packet" otherwise. Default is (no "src mac") hence the mac is taken from the tx port if there is one tx port and from the packet otherwise. swap support is similar, except that it does not support "src mac=no". Change-Id: I70fe49a61c2e85772288b769ede14a7a6205d122 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2018-01-04Add support for DPDK 17.11Xavier Simonart16-68/+250
Change-Id: I5611ead4b61b23d6c1c983852e8c75619e08ecf9 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-20Initialize fields of outer IP headerXavier Simonart1-5/+4
As it was non being initialized, fragment offset was sometimes non null. prox_ip_cksum_sw (as well as prox_ip_cksum_hw) require the hdr_checksum field to be initialized to 0. Change-Id: I3824682023782edb555982e558e5ae68062c3c9b Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-19Merge "Adding Security gateway testing"Deepak S18-367/+1225
2017-12-19Merge "Add l3 support for tasks without physical tx ports"Deepak S2-8/+5
2017-12-18Add support for multiple tasks generating to same ip in l3 mode.Xavier Simonart1-6/+23
When multiple tasks generate to the same ip in l3 mode (i.e. with arp support), all those tasks generate arp requests. we need to make sure that they all receive a arp-reply i.e. that the master broadcast the reply to all those cores. Change-Id: I7e89196497a1016a94dde167f212b1f6ed03bcfe Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-18Add l3 support for tasks without physical tx portsXavier Simonart2-8/+5
This adds support for tasks in l3 submode receiving from ports but transmitting to rings. ARP related information is exchanged between tasks through master core. Tasks transmitting to physical ports are responsible to transmit arp related packets. Tasks not transmitting to physical ports (and using rings) should not try to transmit arp packets. Transmitting arp packets through ring would be more complex, as we would need extra information (within the mbuf) to distinguish for instance an arp reply comoing from the network and an arp reply coming from a core (as a reply to an arp request). Change-Id: Ib55dc8c39d5e55703a933faa16bcc008f1274929 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-18Adding Security gateway testingProvoost18-367/+1225
Using now .test files describing the test to be executed. Also desribed in the README file how to deal with SRIOV ports. Change-Id: I3eb1551d7f205fef3fa1914bc6959c2126d63425 Signed-off-by: Provoost <luc.provoost@intel.com>
2017-12-14Updating release notes for OPNFV Euphrates 5.1opnfv-5.1.RC1opnfv-5.1.0Deepak S1-5/+5
Change-Id: I01a619de621a3dfbfe11cabef257f9dec311e318 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-12-08Merge "Fix command parser"Deepak S1-13/+12
2017-12-08Merge "Fix checks done when changing generator pkt_size"Deepak S1-10/+25
2017-12-06Fix qos statisticsXavier Simonart1-1/+1
Packets dropped by QoS (because queues were full) were erroneously shown as idle cycles. There aee now shown as discarded packets. Change-Id: I01a619de621a3dfbfe11cabef257f9dec311e208 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-06Fix checks done when changing generator pkt_sizeXavier Simonart1-10/+25
Different checks were done when setting the generator pkt_size. In case of wrong pkt_size (e.g. too big) an error was printed but the pkt_size was still set causing a potential corruption. In addition, in case of a packet size incompatible with some of the packet fields (e.g. latency data) PROX was panicing while this should not happen runtime for such an error. Change-Id: Ifa11475bf295aaac7b0255c1bf9b5feed8ef90c4 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-12-06Fix command parserXavier Simonart1-13/+12
Command parser could have been crashing if a wrong core/task was used in pkt_size command. For some other commands both an error and a warning were printed in case of errors. Change-Id: I6648bfca1b5bcde3c6393d49687ed84900326d49 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-11-22correct prox ipsec vnfIgor Shaula1-107/+90
reapply the latest changes (47355 and 47521) due to gerrit merge problem * fix crypto init for both encryptor and decryptor * improve performance: preallocate crypto op memory in init * finalize enabling routed ipsec traffic (proper IP/MAC addresses) * correct handling of dropped packets at encryptor * Fix receive packets with size > 1024 bytes Change-Id: I51cccc9bef0b9564ea1a3465ad28fb985eee06d1 Signed-off-by: Igor Shaula <igor.shaula@intel.com>
2017-11-21fix prox crypto buildIgor Shaula1-1/+6
Change-Id: I4ea54763871c18b1bd6cec9dbb926f18f0f5833f Signed-off-by: Igor Shaula <igor.shaula@intel.com>
2017-11-21Merge "Add support for nop mode with l3 submode"Deepak S7-23/+52
2017-11-17* fix encryption: ESP packet formatIgor Shaula1-45/+129
* fix traffic routing * enqueue packets in a bulk (improve crypto performance: TBD) * improve code clarity * fix crypto dequeuing * complete decryption path implementation * NOTE: the code works in a chain mode; crypto init to be fixed next Change-Id: I058a906f4f4f5691ebf25d2cdf5b5faded88e11d Signed-off-by: Igor Shaula <igor.shaula@intel.com>
2017-11-15Add support for nop mode with l3 submodeXavier Simonart7-23/+52
The l3 submode was not supported in nop mode, as the nop mode uses some specific nop thread (and not generic). When L3 is specified, the nop mode must use the generic thread. In addition the l3 submode is implemented differently than other submodes. It is not supported through task_init structures (i.e. each task does not have to explicitely tell that it supports l3 submode). But this prevented to run both a nop with no submode and a nop with a l3 submode. Note that nop with l3 is usually not very useful - it handles arp (requests and response) but as nop, it does not swap IP addresses. So with a real switch, the packets transmitted will be received back... and l3 mode is usually mainly usefull when using a switch. However, there is at least one nop mode where l3 submode makes sense: when the nop does not transmit. In such cases, for instace used in conjunction with a gen l3, the nop receives all packets and forward the arp requests and responses to the master for handling. Change-Id: I992121db285ba25a11cbb494092a6afc6fe55a58 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-11-13Remove unused files in udp replayDeepak S4-247/+0
Change-Id: I8cbad85c607ca5148723ed3689eaed2c4967fb1d Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-11-09Merge "Fix changing impair delay through command line"Deepak S1-1/+3
2017-11-09Fix latency commands in l3 submodeXavier Simonart2-21/+29
Change-Id: I9c46b57f98b566efc8ca3ea5966befe2a150315b Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-11-08Fix changing impair delay through command lineXavier Simonart1-1/+3
Change-Id: I7797241a1d384fa184bdf4d73b81babb21f7383d Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
2017-11-07Merge "Rework handle_esp.c (proto, DPDK<17.08, cleanup)"Deepak S2-73/+34
2017-11-07Merge "lw_AFTR: IP Checksum required on generated packet."Deepak S2-0/+15
2017-11-01lw_AFTR: IP Checksum required on generated packet.DanielMartinBuckley2-0/+15
In lwAFTR (ipv6 de-encapsulate) the generated ipv4 packet requires an IP checksum, otherwise this packet is dropped in Openstack. (Openstack is much stricter than baremetal) Some fields in the header need to be initialized. Add flag in Makefile which when enabled will build to include the generate the IP checksum in the build. FLAG = GEN_DECAP_IPV6_TO_IPV4_CKSUM=y Not include in default build. Change-Id: If94e7cff64b03c66362021f05e48fb9265fc8210 Signed-off-by: Daniel Martin Buckley <daniel.m.buckley@intel.com>
2017-10-27Rework handle_esp.c (proto, DPDK<17.08, cleanup)Patrice Buriez2-73/+34
- Adjust handle functions to PROX-v035+ prototype, returning 0 when all packets have been handled. - Because cryptodev API was modified in DPDK 17.08, many changes would be necessary to support it. For the moment, just exclude handle_esp.c from PROX build when using DPDK 17.08+, which will be supported later. - Cleanup: - consistent use of PROX_PANIC to cleanly fail on errors - consistent use of OUT_DISCARD to drop unhandled packets - remove "__attribute__((unused))" when parameter is actually used - remove unused defines, fields and variables Change-Id: I10d84fa184a866b4a5f87272875612aace5dd5b1 Signed-off-by: Patrice Buriez <patrice.buriez@intel.com>
2017-10-25Merge changes from PROX-v041Patrice Buriez39-511/+1630
Change-Id: Ie6d4e7ce22c27967117a446626f5923643397812 Signed-off-by: Patrice Buriez <patrice.buriez@intel.com>
2017-10-24Merge "Makefile change and new task structures for IPSec Prox task"Deepak S3-1/+6
2017-10-24Merge "Added IPSec/ESP performance demo building block to DPPD-PROX"Deepak S2-0/+621
2017-10-19Merge "Adjusted referencing for docs"Deepak S1-3/+3
2017-10-19Makefile change and new task structures for IPSec Prox taskAlexander Komarov3-1/+6
Change-Id: I389389e5317d1a9d0d79cc1762d6f15d8287e36a Signed-off-by: Alexander Komarov <alexander.komarov@intel.com> Signed-off-by: Alexander Komarov <izard.ak@gmail.com>
2017-10-18Fix all the config files alignment issuesDeepak S8-47/+64
Change-Id: I087c9a9acf412a99f8425fd65d07db6c3b7a4af7 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-18Added IPSec/ESP performance demo building block to DPPD-PROXAlexander Komarov2-0/+621
Change-Id: I25ab50297cd7d2f80a5206ddc3c55ffad36bd8d8 Signed-off-by: Alexander Komarov <alexander.komarov@intel.com> Signed-off-by: Alexander Komarov <izard.ak@gmail.com>
2017-10-17update rest api tableDeepak S9-600/+622
Change-Id: I71f8b419a8b28bc3c9208c8902b91d06bc4653de Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Fix table issues in release notesDeepak S1-14/+16
Change-Id: I0c2accf7e2c1f417b9823a0dfa1f356ff7730a3d Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Updating user guideDeepak S9-451/+1012
Change-Id: I80bcbe616b8f2c64151de6e588c892de6c3dc8f1 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17remove unwated proxy in the scriptDeepak S1-1/+1
Change-Id: I4a38ac4f7a05b6a96fd9e0e8539aa76252ded3b0 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Adding script to build samplevnf VM imagesDeepak S2-0/+395
Change-Id: I1238aa72f178fb8744fdea688704ef7ff22c9c75 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Updating release notes of samplevnfDeepak S1-22/+42
Change-Id: I5c6854467bca41ab0ca5894e1a706a65eb68ef32 Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Merge "Rest API: Fix all the bugs in the HWLB, mask issue, etc"Deepak S3-34/+47
2017-10-17Adjusted referencing for docsSofia Wallin1-3/+3
Change-Id: If9e92a2404214e91c682793622f097e28c11597d Signed-off-by: Sofia Wallin <sofia.wallin@ericsson.com>
2017-10-17Rest API: Fix all the bugs in the HWLB, mask issue, etcDeepak S3-34/+47
Change-Id: If7cc44f3b57a54aef510f729930e6f79bf83689e Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Copy the dev bind to standard pathDeepak S1-0/+5
Change-Id: I44972071e41b67a5aec2adaf426ec84f54c4414e Signed-off-by: Deepak S <deepak.s@linux.intel.com>
2017-10-17Docs: Developer guide review and updateAnand B Jyoti4-209/+290
Review and update teh Developer guide for E-Release. Change-Id: I88221fe6ea5bf3581c1dbf8bf6aaa31a628fff87 Signed-off-by: Anand B Jyoti <anand.b.jyoti@intel.com>
2017-10-16Fix udp replay issueDeepak S2-7/+7
Change-Id: I6b78044beb21fdf07ad70d22c81bcca6ca955e63 Signed-off-by: Deepak S <deepak.s@linux.intel.com>