257 Commits

Author SHA1 Message Date
Adrian Villin
2c4b699359 hs-test: update docs, makefile, maintainers
- don't run 'make list-tests' after 'make help'

Type: docs

Change-Id: I1b2ae02faf53b072b96c91f2e1fead52128f4710
Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-12-12 19:56:37 +00:00
Joel Ahn
72bd2e585d misc: move ppp to a plugin
Type: refactor

Move PPP folder under vnet to the plugin folder, and modify some of path
of the #inlude<header> to the new path.

Add a plugin.c file to register a plugin.

Resolve ip4_input and ip6_input's dependency on PPP functions by moving
those calls to PPP's initialization.

Resolve osi's inter-plugin dependency on PPP by having it retrieve the
function pointer

Add ppp to the list of valid spelling words

JIRA: VPP-2052

Change-Id: I1a26ef0663a91857d13f7d87a3bb14bc38893194
Signed-off-by: Joel Ahn <joeahn@cisco.com>
2024-12-06 22:18:42 +00:00
Andrew Yourtchenko
6313d9a30c misc: VPP 24.10 Release Notes
Type: docs
Change-Id: I3774ed636671c3e7f2cacc8ef910c1f3476e7933
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit cfa0953251cbab435307baf3dcd249fd95afaf1f)
2024-12-04 17:29:50 +00:00
Hadi Rayan Al-Sandid
f71c6d436b docs: mention command to display nodes supporting tracing
Type: docs
Change-Id: Id94539cae001059d1acdde6a90c3b2f16990bd47
Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
2024-12-04 16:51:22 +00:00
Bence Romsics
c2fa5a8c57 vat2: docs
Add a bit of documentation for vat2 - mostly through examples.

Type: docs
Change-Id: I1a95047b2bd33522f562c9c1a6a7e9e639ab1a47
Signed-off-by: Bence Romsics <bence.romsics@gmail.com>
2024-11-27 02:52:26 +00:00
Lukas Vogel
0dcf8ead2c docs: fix statseg title in config reference
Fix typo and put it on the correct level.

Type: fix
Change-Id: Ic7a8e557b22d0060d7f072132f00564e29d8e860
Signed-off-by: Lukas Vogel <vogel@anapaya.net>
2024-10-23 01:13:22 +00:00
Andrew Yourtchenko
8f989630b0 misc: Initial 25.02-rc0 commit
Type: docs
Change-Id: Ic8f0204752b93339203fe9ba04fdb77ba635e6d8
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2024-09-25 10:08:09 +00:00
Andrew Yourtchenko
0acb398d6d pvti: Packet Vector Tunnel Interface
This plugin implements a PoC of UDP-based tunnel substrate whose aim is
to specifically provide higher MTU to the upper layers by chunking
the payload PDUs into smaller packets with full 5-tuple.

At the same time, if there are multiple small packets to
the same destination during the vector processing, they
are packed into "carrier" packets up to underlay MTU size.

It does assume a trustworthy underlying medium, thus for the
operation over Internet it requires the use of encryption layer
underneath.

Type: feature
Change-Id: I323958fa8de62584f6ed15643ea689568a9a62bc
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2024-09-17 12:10:19 +00:00
Damjan Marion
4e51841896 armada: introduce dev_armada plugin
Also retires old marvell plugin.

Change-Id: Icedec11f5661909058fdfe8d5fc455306adafacd
Type: feature
Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-09-09 14:43:22 +00:00
Steven Luong
c4b5d10115 session: add Source Deny List
With this feature, session enable is now modified to have 3 modes of operation
session enable -- only enable session
session enable rt-backend sdl -- enable session with sdl
session enable rt-backend rule-table -- enable session with rule-table

session rule tables are now created on demand, upon adding first rule
to the rule table.

refactor session table to remove depenency from sesssion rules table. Now
session rules table APIs take srtg_handle and transport
proto instead of srt pointer.

Type: feature

Change-Id: Idde6a9b2f46b29bb931f9039636562575572aa14
Signed-off-by: Steven Luong <sluong@cisco.com>
2024-09-06 18:26:56 +00:00
Lukas Stockner
b4808de247 buffers: support disabling allocation per numa domain
Currently, the per-numa buffer allocation doesn't support skipping the
allocation altogether for a particular NUMA domain - if it's set to
zero, it instead uses the default allocation.

Therefore, this changes the behavior so that the default is only used
if no per-numa allocation is specified, and an allocation of zero
is honored by not allocating a buffer at all.

Type: improvement
Change-Id: Ie9133b179a88eb884aa3da921e65292daea0df2d
Signed-off-by: Lukas Stockner <lstockner@genesiscloud.com>
2024-08-29 08:40:34 +00:00
Hadi Rayan Al-Sandid
8629336fa5 misc: move osi to plugin
Type: refactor

This patch moves osi into a plugin, and also modifies
the init functions of llc and snap to preserve init
order dependency (llc_init --> osi_init --> snap_init).

While the initial intent was to move osi/llc/snap together
into a single plugin, there exists a dependency on llc
in vnet/ethernet, which would require further refactoring
and testing work.

Change-Id: Ic0eff030ee29c8d316c0e0fe13931451aa193527
Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
2024-08-22 08:00:52 +00:00
Matus Fabian
a67da25008 http_static: web app doc update
Type: docs
Change-Id: I0d3395c1de51c086b2ac68cd92c97efe36665b62
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-08-01 22:13:46 +00:00
Andrew Yourtchenko
3e0600bb12 misc: VPP 24.06 Release Notes
Type: docs
Change-Id: Id47dbab5e5661c76e6ff41237bbca5b5b15506c4
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit 6e8b350a0154caee6e9f037ae4938b83fb5dcf20)
2024-06-28 01:41:06 +00:00
Matus Fabian
82ad9660be http: return more than url to server app
Provide all bytes as received from transport as data in the http
message to server. Additionally provide offset and length of target
path, target query, headers and body. Offers apis for parsing of
headers, percent decoding, target path/query syntax verification.

Type: improvement

Change-Id: Idbe6f13afa378650cc5212ea7d3f9319183ebbbe
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-06-13 06:35:26 +00:00
Renato Botelho do Couto
893dacae3f build: Use $(MAKE) instead of direct call to make
No functional changes, just make it to respect original make binary
name used to start building

Type: improvement

Change-Id: Ic8568237fbb39c6a0d3b7405a9670e9410aeb752
Signed-off-by: Renato Botelho do Couto <renato@netgate.com>
2024-06-10 13:13:31 +00:00
Lukas Stockner
63ff7a6325 buffers: support per-numa-domain buffer size
Currently, buffers-per-numa is used for all NUMA domains, and there's
no way to allocate different amounts for each domain.

Therefore, this adds a per-NUMA-domain buffer config section, which
currently has a single option to set the number of buffers.

If it's not specified or set to zero, the code falls back to
buffers-per-numa as before.

Type: improvement
Change-Id: If35d7a9eff6f8d1d78063ea7873dbf50780d0ec3
Signed-off-by: Lukas Stockner <lstockner@genesiscloud.com>
2024-06-05 12:28:27 +00:00
Andrew Yourtchenko
71e0902454 misc: Initial 24.10-rc0 commit
Type: docs
Change-Id: If9cfc421a0769b68a8520e99c41c954db1973ca9
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2024-05-22 12:58:06 +02:00
Scott Hutton
182d8b2ddb sr: move srmpls to a plugin
Move sr_mpls folder under vnet to the plugin folder, update cmake configuration
and header paths, and add plugin.c to register plugin.

JIRA: VPP-2054

Type: improvement
Change-Id: I1ad6f287f67eb0c35588c339bcd51218fadf5f8e
Signed-off-by: Scott Hutton <schutton@cisco.com>
2024-05-14 07:53:35 +00:00
Elod Illes
078a3607c3 docs: Use newer Ubuntu LTS in tutorial
The tutorial uses old 18.04 Bionic Ubuntu release, and tries to
install vpp from packagecloud.io's bionic repository which does not
exist. However newer ubuntu releases' repositories exist, so let's
update to newer Ubuntu LTS version: 22.04 Jammy.

Also, the ubuntu vagrant box is old, so let's replace it to a newer,
generic/ubuntu2204, which uses libvirt provider (instead of virtualbox)
and updated frequently, works well for the tutorial. Due to using
libvirt provider, there is no need to customize the VM as those
customizations are present in the box by default.

The truested=yes part is removed from the apt source list command, as
we add gpgkey anyway, thus, no need for this.

Tutorial and vpp build tested with this new box and looks to be working
fine.

Type: docs
Signed-off-by: Elod Illes <elod.illes@est.tech>
Change-Id: Idcff693240fc6a1496a240e0d07c5ed43fe833e9
2024-05-10 21:39:54 +00:00
Andrew Yourtchenko
93d38823f9 misc: VPP 24.02 Release Notes
Type: docs
Change-Id: I4209b4edf387f2d7b88ecc338cca3b4901210ed2
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit 455960759b5417c767ed331748c7ee76662ffd18)
2024-03-06 01:01:23 +00:00
Andrew Yourtchenko
6fb2b3dc72 misc: Initial 24.06-rc0 commit
Type: docs
Change-Id: Ia459d5ba6f7da3081192c6aba156e66fb2d6377c
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2024-01-24 12:28:55 +00:00
Damjan Marion
01fe7ab88e octeon: native driver for Marvell Octeon SoC
Type: feature
Change-Id: I6898625c4e8854f777407dac3159e4c639a54860
Signed-off-by: Monendra Singh Kushwaha <kmonendra@marvell.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
2024-01-17 20:44:10 +01:00
Dave Barach
b7e66f4a30 docs: minor updates to the lxc container test writeup
Fix minor differences between Ubuntu 18.04 LTS and Ubuntu 22.04 LTS when
using the scheme to test new code.

Type: docs

Change-Id: I5810b6f3d76d8d98fa764b61828b1ca32507bd91
Signed-off-by: Dave Barach <dave@barachs.net>
2023-12-29 11:19:37 -05:00
Mohsin Kazmi
69f800fbfd devices: add cli support to enable disable qdisc bypass
Type: improvement

Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: Ic124f44e64bd60f41e750b4118be3e8d1d1eb70b
2023-12-15 18:09:45 +00:00
Andrew Yourtchenko
4b89013081 misc: VPP 23.10 Release Notes
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: Icd40064c06ccc53efba1cd9564613108b999b656
(cherry picked from commit 7c4027fa5e42a8cc7176cd62ab7a0043fb1933ff)
2023-11-15 16:16:08 +00:00
Steven Luong
ac49cf9205 docs: Remove references to vlan-strip-offload as it is deprecated
Type: fix

Change-Id: I3a258433cf507f48cd67332387eb7fef103a88f8
Signed-off-by: Steven Luong <sluong@cisco.com>
2023-11-15 14:07:33 +00:00
Damjan Marion
2d725c6128 ena: Amazon Elastic Network Adapter (ENA) native driver
Type: feature
Change-Id: Icd9de05f2cbac0e5a6dfb1f1414f21dc4b893104
Signed-off-by: Damjan Marion <damarion@cisco.com>
2023-11-13 19:05:17 +00:00
Damjan Marion
47447f1f59 iavf: new driver using new dev infra
Type: feature
Change-Id: I9ae0dbf28b4571a37c568b587b771f90c06f200d
Signed-off-by: Damjan Marion <damarion@cisco.com>
2023-11-02 16:08:57 +00:00
hsandid
e75176a257 docs: Updated "VPP with Containers" use-case section
Type: improvement

Modified "VPP with Containers" doc section to run on Ubuntu 22.04 LTS.

Change-Id: Ic09b88cf0e3b492711222a1bb24552de964a7d03
Signed-off-by: hsandid <halsandi@cisco.com>
2023-10-31 23:54:28 +00:00
Andrew Yourtchenko
5ca8bfcacb build: allow for reproducible builds
Setting and using the SOURCE_DATE_EPOCH variable takes
care of most of the magic necessary.
https://reproducible-builds.org/docs/source-date-epoch/

vpp-ext-deps packages after this change is being built with that
date set to date of the last modification of the
subtree (similar logic to deriving the "number" for
the package version)

For the rest of the packages, pinning the following
three variables should result in bit-identical
artifacts across multiple runs:

export SOURCE_DATE_EPOCH=$(date +%s)
export VPP_BUILD_HOST="buildhost"
export VPP_BUILD_USER="builduser"

Add a blurb in the docs describing this new functionality.

Type: improvement
Change-Id: I71b085f0577b2358aa98f01dafd8e392239420a6
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2023-10-26 12:09:44 +00:00
Andrew Yourtchenko
7419bede7a misc: Initial 24.02-rc0 commit
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I42af9706461034957f83103e2756cc6bfab054f7
2023-09-20 15:59:48 +02:00
Andrew Yourtchenko
74cbed1497 misc: VPP 23.06 Release Notes
Type: docs
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: Id39d7d6a6340e65885ab0845b6fc9a2b81e4f565
(cherry picked from commit 493b8990d1185f818890560101e13e1b69f54b1d)
2023-09-16 04:54:53 +00:00
Vratko Polak
c142cd115b docs: mention how to build VPP outside git
Type: docs

Change-Id: Iceee9ef489f7f68049882651bb338311295ca12d
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2023-09-13 13:37:22 +00:00
Maxime Peim
77812045e7 tracenode: filtering feature
In order to be able to filter on encapsulated packet, a new node
has been added to the ip4/6-unicast arcs.

Type: feature
Change-Id: I1e8ee05bc6d0fce20cadd8319c81bab260c17d21
Signed-off-by: Maxime Peim <mpeim@cisco.com>
2023-09-04 07:57:44 +00:00
Andrew Yourtchenko
f234b0d462 fateshare: a plugin for managing child processes
For the reasons of modularity and security, it is useful
to have various functionality split into processes different from VPP.
However, this approach presents the challenges of managing those processes,
and is markedly different from simply running everything within VPP process.

This plugin is an experiment in having the VPP itself start off a monitor
process which in turn starts the child processes, and restarts them if they
quit.

If the VPP process ceases to exist, the monitor process terminates all
the descendant processes and quits itself.

This allows to preserve the "single entity to manage" approach of
simply running a barebones VPP.

An example of running it:

export DPDK_CONFIG=""
export DISABLED_PLUGINS=dpdk
export EXTRA_VPP_CONFIG="fateshare { monitor ./build-root/install-vpp_debug-native/vpp/bin/vpp_fateshare_monitor command ./test1 }"
make run

Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Change-Id: I66221fd7403f220d9652fe76958ca499cfd070a7
Type: feature
2023-08-31 09:50:00 +00:00
Ole Troan
6ee3aa41c3 npt66: network prefix translation for ipv6
This is the initial commit of a NPTv6 (RFC6296) implementation for VPP.
It's restricted to a single internal to external binding and runs
as an output/input feature on the egress interface.

Type: feature
Change-Id: I0e3497af97f1ebd99377b84dbf599ecea935ca24
Signed-off-by: Ole Troan <otroan@employees.org>
2023-08-25 09:15:32 +02:00
Ting Xu
737edea328 idpf: add native idpf driver plugin
Add a new native idpf driver. This patch enables the device
initialization. Add some necessary functions and definations
for input and output. A new version of virtchnl is introduced.

Type: feature

Signed-off-by: Ting Xu <ting.xu@intel.com>
Change-Id: Ibbd9cd645e64469f1c4c8b33346c1301be3f6927
2023-08-17 01:37:44 +00:00
Dave Wallace
7b8b465269 tests docs: update python3 venv packages
- Package update performed by
  1. updating pip, pip-tools, setuptools
  2. 'make test-refresh-deps' on ubuntu 22.04
  3. fixing 'make test' and 'make docs' issues
     on ubuntu 22.04
  4. 'make test-refresh-deps' on ubuntu 20.04
- Add dependency for 'make test-refresh-deps'
  to insure python venv is set up.
- Update of python formatter, black,
  caused reformating of 41 python code
  files.

Type: make

Change-Id: I7cafdf4b5189065ac57cb6b254937f6e0897a924
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2023-08-16 19:53:12 +00:00
Steven Luong
2faac91f67 docs: correct the directory path for index.html
Type: fix

Change-Id: Ia0d6f57790dbca92662c6d8b986c325f1c399131
Signed-off-by: Steven Luong <sluong@cisco.com>
2023-08-09 19:01:24 +00:00
yanlong
cad2111129 docs:Improve the README of vpp docs
Type:fix

Change-Id: Ie2ae728450ef123379b697cdf9c873d5bec01b47
Signed-off-by: yanlong <dyl_wlc@163.com>
2023-08-08 12:36:33 +00:00
Dave Wallace
f72a32a1e4 docs: add api change process from wiki
- Move the VPP API Change Process documentation
  from the wiki page into the in-tree VPP docs

Type: docs

Change-Id: I42f661618b8632230bebe3aa8fbad455b9a05d01
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2023-07-17 14:55:06 +00:00
Benoît Ganne
8aa47b7a76 docs: fix packages path in tutorial
Type: fix

Change-Id: I84bbb28490d9c66c5bf55839ab75b3aec1bf5854
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2023-06-30 20:45:46 +00:00
Mohammed Hawari
ccd3070958 bpf_trace_filter: plugin for BPF Trace Filtering
Change-Id: I342de0a375b783725aa2b621c1c70bc8bf646450
Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
Type: improvement
2023-06-30 11:53:06 +00:00
Dave Wallace
1c95e12b0d tests docs: fix lcov code coverage report generation
- Updated/rebased version of https://gerrit.fd.io/r/c/vpp/+/34199

Type: test
Change-Id: I43913ecfd11a4578bdb10c4be76253fe38d57976
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2023-06-22 13:35:28 +00:00
Mohsin Kazmi
5e42eae58b hash: add hash documentation
Type: docs

Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I36764aa3c0e9657d228413aeafa0a54bbd755e49
2023-05-24 14:47:42 +00:00
Andrew Yourtchenko
a7dd04d73b misc: Initial 23.10-rc0 commit
Type: docs
Change-Id: Id9b0ca0d43db0e5a52fd9696a5cba77a6772db5b
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2023-05-24 11:25:10 +00:00
Andrew Yourtchenko
380c62d704 misc: VPP 23.02 Release Notes
Type: docs
Change-Id: I88ae8452ed1b39a4c6d82b790f63f31deae4c2fa
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit 5516fc0f3bf50657446c4e68556c9f76ea2a43a4)
2023-05-24 07:00:40 +00:00
Mohsin Kazmi
7869985758 interface: add the transmit queue infrastructure document
Type: docs

Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I57f27f8ec4be7f3d8dc3d13ff4ea6b1b21c3cf6b
2023-05-19 19:08:17 +00:00
Benoît Ganne
83e73709c3 ip_session_redirect: add session redirect plugin
This feature enables the use of the classifier and ip-in-out-acl nodes
to redirect matching sessions via arbitrary fib paths instead of relying
on additional VRFs.

Type: feature

Change-Id: Ia59d35481c2555aec96c806b62bf29671abb295a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2023-05-16 13:29:04 +00:00