Skip to content

Instantly share code, notes, and snippets.

@ayourtch
Created May 18, 2020 14:36
Show Gist options
  • Save ayourtch/3dee595d92dd7b17d86753f86c17553d to your computer and use it in GitHub Desktop.
Save ayourtch/3dee595d92dd7b17d86753f86c17553d to your computer and use it in GitHub Desktop.
FEATURE.yaml changes since 20.05-rc0

Patches that changed FEATURE.yaml definitions

| @c extras/deprecated/netmap/FEATURE.yaml || | 7db6ab03d | misc: deprecate netmap and ixge drivers |

diff --git a/extras/deprecated/netmap/FEATURE.yaml b/extras/deprecated/netmap/FEATURE.yaml
new file mode 100644
index 000000000..e23e5c243
--- /dev/null
+++ b/extras/deprecated/netmap/FEATURE.yaml
@@ -0,0 +1,12 @@
+---
+name: Netmap Device
+maintainer: Damjan Marion <damarion@cisco.com>
+features:
+  - L4 checksum offload
+description: "Create a netmap interface, which is a high speed user-space
+              interface that allows VPP to patch into a linux namespace,
+              a linux container, or a physical NIC without the use of DPDK."
+missing:
+  - API dump
+state: production
+properties: [API, CLI, STATS, MULTITHREAD]

| @c src/vnet/tunnel/FEATURE.yaml || | 774b5dbe7 | tunnel: add FEATURE.yaml |

diff --git a/src/vnet/tunnel/FEATURE.yaml b/src/vnet/tunnel/FEATURE.yaml
new file mode 100644
index 000000000..811274d98
--- /dev/null
+++ b/src/vnet/tunnel/FEATURE.yaml
@@ -0,0 +1,9 @@
+---
+name: Tunnel Infra
+maintainer: Neale Ranns <nranns@cisco.com>
+features:
+  - Common types and functions for IP tunnels
+
+description: "Tunnel Infrastructure"
+state: production
+properties: [API, CLI, MULTITHREAD]

| @c src/vnet/cop/FEATURE.yaml || | e053056bb | misc: add FEATURE.yaml files |

diff --git a/src/vnet/cop/FEATURE.yaml b/src/vnet/cop/FEATURE.yaml
new file mode 100644
index 000000000..c6fbdb86f
--- /dev/null
+++ b/src/vnet/cop/FEATURE.yaml
@@ -0,0 +1,11 @@
+---
+name: COP
+maintainer: Dave Barach <dbarach@cisco.com>
+features:
+  - v4, v6 non-default FIB src-address lookup
+  - Drop packets which don't hit a receive adjacency
+  - Not widely used
+
+description: "A very simple / fast source-address whitelist feature"
+state: experimental
+properties: [API, CLI, MULTITHREAD]

| @c src/vnet/pg/FEATURE.yaml || | e053056bb | misc: add FEATURE.yaml files |

diff --git a/src/vnet/pg/FEATURE.yaml b/src/vnet/pg/FEATURE.yaml
new file mode 100644
index 000000000..5dfdbf672
--- /dev/null
+++ b/src/vnet/pg/FEATURE.yaml
@@ -0,0 +1,13 @@
+---
+name: PG
+maintainer: Dave Barach <dbarach@cisco.com>
+features:
+  - High-speed packet generation
+  - Packet definition CLI
+  - Support for pcap capture replay
+  - Multi-thread packet generation
+  - Packet injection into arbitrary graph nodes
+  - Heavily used by "make test"
+description: "High-speed packet generator"
+state: production
+properties: [CLI, MULTITHREAD]

| @c src/vnet/devices/tap/FEATURE.yaml || | 073d74d0b | tap: implement sw_interface_tap_v2_dump filtering by sw_if_index |

diff --git a/src/vnet/devices/tap/FEATURE.yaml b/src/vnet/devices/tap/FEATURE.yaml
index a143d333a..5d1726d3b 100644
--- a/src/vnet/devices/tap/FEATURE.yaml
+++ b/src/vnet/devices/tap/FEATURE.yaml
@@ -7,8 +7,5 @@ features:
   - attach to existing tap at host
 description: "Create a tap v2 device interface, which connects to a
               tap interface on the host system."
-missing:
-
-  - API dump filtering by sw_if_index
 state: production
 properties: [API, CLI, STATS, MULTITHREAD]

| b49bc1ae6 | tap: add support for persistance |

diff --git a/src/vnet/devices/tap/FEATURE.yaml b/src/vnet/devices/tap/FEATURE.yaml
index ce2c510cc..a143d333a 100644
--- a/src/vnet/devices/tap/FEATURE.yaml
+++ b/src/vnet/devices/tap/FEATURE.yaml
@@ -3,6 +3,8 @@ name: Tap Device
 maintainer: damarion@cisco.com sluong@cisco.com sykazmi@cisco.com
 features:
   - Virtio
+  - persistence
+  - attach to existing tap at host
 description: "Create a tap v2 device interface, which connects to a
               tap interface on the host system."
 missing:

| @c src/vnet/devices/virtio/FEATURE.yaml || | bc0d9ff67 | virtio: support virtio 1.1 packed ring in vhost |

diff --git a/src/vnet/devices/virtio/FEATURE.yaml b/src/vnet/devices/virtio/FEATURE.yaml
index de449c866..b446a5594 100644
--- a/src/vnet/devices/virtio/FEATURE.yaml
+++ b/src/vnet/devices/virtio/FEATURE.yaml
@@ -7,7 +7,7 @@ features:
   - device mode to emulate vhost-user interface presented to VPP from the
     guest VM.
   - support multi-queue, GSO, checksum offload, indirect descriptor,
-    and jumbo frame.
+    jumbo frame, and packed ring.
 description: "Virtio v1.0 implementation"
 missing:
   - API dump filtering by sw_if_index

| 13ff90fe5 | virtio: update FEATURE.yaml to include description for vhost-user |

diff --git a/src/vnet/devices/virtio/FEATURE.yaml b/src/vnet/devices/virtio/FEATURE.yaml
index c98689e2f..de449c866 100644
--- a/src/vnet/devices/virtio/FEATURE.yaml
+++ b/src/vnet/devices/virtio/FEATURE.yaml
@@ -1,10 +1,14 @@
 ---
 name: Virtio PCI Device
-maintainer: Mohsin Kazmi <sykazmi@cisco.com>
+maintainer: sykazmi@cisco.com sluong@cisco.com
 features:
-  - connection to the emulated pci interface presented to vpp from
+  - driver mode to emulate PCI interface presented to VPP from
     the host interface.
-description: "Create a virtio-backed PCI device interface"
+  - device mode to emulate vhost-user interface presented to VPP from the
+    guest VM.
+  - support multi-queue, GSO, checksum offload, indirect descriptor,
+    and jumbo frame.
+description: "Virtio v1.0 implementation"
 missing:
   - API dump filtering by sw_if_index
 state: production

| @c src/vnet/gso/FEATURE.yaml || | 84f91fa9c | gso: add support for IP-IP |

diff --git a/src/vnet/gso/FEATURE.yaml b/src/vnet/gso/FEATURE.yaml
index b3296d6ef..79b506df6 100644
--- a/src/vnet/gso/FEATURE.yaml
+++ b/src/vnet/gso/FEATURE.yaml
@@ -5,9 +5,11 @@ features:
   - Basic GSO support
   - GSO for VLAN tagged packets
   - GSO for VXLAN tunnel
+  - GSO for IP-IP tunnel
+  - GSO for IPSec tunnel  
   - Provide inline function to get header offsets
 description: "Generic Segmentation Offload"
 missing:
-  - Thorough Testing, IPIP, GRE, Geneve, IPSec
+  - Thorough Testing, GRE, Geneve
 state: experimental
 properties: [API, CLI]

| 0b04209ed | gso: add vxlan tunnel support |

diff --git a/src/vnet/gso/FEATURE.yaml b/src/vnet/gso/FEATURE.yaml
index 4edca9c0c..b3296d6ef 100644
--- a/src/vnet/gso/FEATURE.yaml
+++ b/src/vnet/gso/FEATURE.yaml
@@ -4,9 +4,10 @@ maintainer: ayourtch@gmail.com sykazmi@cisco.com
 features:
   - Basic GSO support
   - GSO for VLAN tagged packets
+  - GSO for VXLAN tunnel
   - Provide inline function to get header offsets
 description: "Generic Segmentation Offload"
 missing:
-  - Tunnels i.e. VXLAN
+  - Thorough Testing, IPIP, GRE, Geneve, IPSec
 state: experimental
 properties: [API, CLI]

| @c src/vnet/classify/FEATURE.yaml || | e053056bb | misc: add FEATURE.yaml files |

diff --git a/src/vnet/classify/FEATURE.yaml b/src/vnet/classify/FEATURE.yaml
new file mode 100644
index 000000000..976bfa5ba
--- /dev/null
+++ b/src/vnet/classify/FEATURE.yaml
@@ -0,0 +1,10 @@
+---
+name: Classify
+maintainer: Dave Barach <dbarach@cisco.com>
+features:
+  - Swiss-army-knife mask-match engine for classifying packets
+  - Uses 128-bit SIMD vector operations for performance
+  - Many use-cases, including packet trace / pcap capture filtration
+description: "Mask / match packet classifier"
+state: production
+properties: [API, CLI, MULTITHREAD]

| @c src/plugins/tlsopenssl/FEATURE.yaml || | 04f7830f9 | tls: Add Feature yaml |

diff --git a/src/plugins/tlsopenssl/FEATURE.yaml b/src/plugins/tlsopenssl/FEATURE.yaml
new file mode 100644
index 000000000..4a172e8f9
--- /dev/null
+++ b/src/plugins/tlsopenssl/FEATURE.yaml
@@ -0,0 +1,11 @@
+---
+name: TLS OpenSSL
+maintainer: Florin Coras <fcoras@cisco.com>, Ping Yu <ping.yu@intel.com>
+features:
+  - OpenSSL engine for TLS
+  - TLS Async framework
+  - Enable QAT for crypto offload
+description: "TLS OpenSSL plugin for VPP host stack"
+state: experimental
+properties: [API, CLI, STATS, MULTITHREAD]
+

| @c src/plugins/vrrp/FEATURE.yaml || | 39e9428b9 | vrrp: add plugin providing vrrp support |

diff --git a/src/plugins/vrrp/FEATURE.yaml b/src/plugins/vrrp/FEATURE.yaml
new file mode 100644
index 000000000..d92e97e03
--- /dev/null
+++ b/src/plugins/vrrp/FEATURE.yaml
@@ -0,0 +1,23 @@
+---
+name: Virtual Router Redundancy Protocol
+maintainer: Matthew Smith <mgsmith@netgate.com>
+features:
+  - VRRPv3 (RFC 5798) for IPv4 and IPv6:
+      - Signaling/advertisements and election of a master
+      - Replies to ARP, NS requests for virtual router addresses
+  - VRRP virtual MAC address support:
+      - DPDK interfaces with PMD support for multiple MAC addresses via the
+        rte_eth_dev_mac_addr_add(), rte_eth_dev_mac_addr_del()
+      - Other interfaces which are set in promiscuous mode may work
+  - Support interface types for VRRP virtual routers:
+      - Hardware interfaces
+      - VLAN subinterfaces
+      - Bond interfaces
+  - Additional features not specified in RFC 5798:
+      - Allows sending advertisements to unicast peers instead of multicast
+      - Allows a virtual router's priority to be adjusted based on the state
+        of an upstream interface. Mentioned as a configuration option to
+        "track interfaces or networks" in RFC 8347.
+description: "Virtual Router Redundancy Protocol implementation (VRRPv3)"
+state: production
+properties: [API, CLI, STATS, MULTITHREAD]

| @c src/plugins/crypto_native/FEATURE.yaml || | 7d08e39a8 | crypto-native: rename crypto_ia32 to crypto_native |

diff --git a/src/plugins/crypto_native/FEATURE.yaml b/src/plugins/crypto_native/FEATURE.yaml
new file mode 100644
index 000000000..206caceb2
--- /dev/null
+++ b/src/plugins/crypto_native/FEATURE.yaml
@@ -0,0 +1,10 @@
+---
+name: IPSec crypto engine provided by native implementation
+maintainer: Damjan Marion <damarion@cisco.com>
+features:
+  - CBC(128, 192, 256)
+  - GCM(128, 192, 256)
+
+description: "An implentation of a native crypto-engine"
+state: production
+properties: [API, CLI, MULTITHREAD]

| @c src/vlib/unix/FEATURE.yaml || | e053056bb | misc: add FEATURE.yaml files |

diff --git a/src/vlib/unix/FEATURE.yaml b/src/vlib/unix/FEATURE.yaml
new file mode 100644
index 000000000..e5fcf9c55
--- /dev/null
+++ b/src/vlib/unix/FEATURE.yaml
@@ -0,0 +1,13 @@
+---
+name: vlib/unix
+maintainer: Dave Barach <dbarach@cisco.com>
+features:
+  - epoll-based file I/O support
+  - Linux signal handling
+  - Syslog support
+  - Startup configuration processing, logging
+  - Configuration debug CLI pager, banner, main loop polling interval
+  - Per-thread stack allocation, guard-page setup
+description: "Linux-specific support routines"
+state: production
+properties: [CLI, MULTITHREAD]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment