Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/vpp/configuration/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
:includehidden:

acl
ipfix
ipsec
nat/index
sflow
Expand All @@ -33,14 +34,14 @@
VPP Initialization
==================

When VPP Dataplane is configured and the configuration is committed, VyOS will attempt to start VPP and initialize all interfaces assigned to it. During this process the following steps occur:

Check warning on line 37 in docs/vpp/configuration/index.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=192

1. VyOS checks that the system meets all requirements for VPP operation. If any requirement is not met, VPP will not start and an error message will be displayed.

Check warning on line 39 in docs/vpp/configuration/index.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=162

2. VPP is started and its initial configuration is applied.

3. All interfaces assigned to VPP are initialized and brought up.

4. A special virtual interfaces are reinstalled to the kernel with the same names as interfaces that were attached to VPP to maintain compatibility with the configuration.

Check warning on line 45 in docs/vpp/configuration/index.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=171

5. VyOS configuration initializes those virtual interfaces, so that features that exist only in kernel dataplane continue to operate.

Check warning on line 47 in docs/vpp/configuration/index.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=133
50 changes: 50 additions & 0 deletions docs/vpp/configuration/ipfix.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
VPP IPFIX Configuration
=======================

VPP IPFIX in VyOS allows monitoring and exporting network traffic flows
for analytics, security, and accounting. IPFIX works with the VPP
(Vector Packet Processing) backend to provide high-performance flow tracking.

Overview
--------

VyOS integrates VPP for high-performance packet processing. IPFIX
configuration controls how flows are monitored, exported, and which
interfaces are included.

Key IPFIX Concepts
------------------

- **Active timeout**: Maximum time a flow is kept active before export.
- **Inactive timeout**: Maximum time an idle flow is kept before export.
- **Collector**: The remote host and port to which flow records are sent.
- **Flow layers**: Determines which layer information is included (`l2`, `l3`, `l4`).
- **Interfaces**: Physical or virtual interfaces to monitor.
- **Direction**: Which traffic to monitor (`rx`, `tx`, `both`).
- **Flow variant**: Optional filter for IPv4 or IPv6 flows.

Configuration Options
---------------------

- **active-timeout**: Duration (in seconds) after which active flows are exported.
- **inactive-timeout**: Duration (in seconds) after which idle flows are exported.
- **collector `<ip>` port `<port>`**: IP and UDP port of the IPFIX collector.
- **collector `<ip>` source-address `<ip>`**: Source address for flow export.
- **flowprobe-record `<l2|l3|l4>`**: Layers to include in flow records.
- **interface `<interface>` [direction `<rx|tx|both>`] [flow-variant `<ipv4|ipv6>`]**: Interfaces to monitor, direction of traffic, and optional flow variant filter.

Example Configuration
---------------------

.. code-block:: none

set vpp ipfix active-timeout '15'
set vpp ipfix inactive-timeout '120'
set vpp ipfix collector 192.0.2.2 port '4739'
set vpp ipfix collector 192.0.2.2 source-address '192.0.2.1'
set vpp ipfix flowprobe-record 'l2'
set vpp ipfix flowprobe-record 'l3'
set vpp ipfix flowprobe-record 'l4'
set vpp ipfix interface eth0
set vpp ipfix interface eth1 direction 'both' flow-variant 'ipv4'

Loading