vcl: add feature.yaml 71/24171/2
authorFlorin Coras <fcoras@cisco.com>
Fri, 3 Jan 2020 00:57:33 +0000 (00:57 +0000)
committerPaul Vinciguerra <pvinci@vinciconsulting.com>
Fri, 3 Jan 2020 03:54:07 +0000 (03:54 +0000)
Type: docs

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ifda0404cfc6710d7ecf21da96eb1cb92750b495f

MAINTAINERS
src/vcl/FEATURE.yaml [new file with mode: 0644]

index 8ae5333..22c38b3 100644 (file)
@@ -581,6 +581,7 @@ F:  extras/libmemif
 
 VPP Comms Library
 I:     vcl
+Y:     src/vnet/vcl/FEATURE.yaml
 M:     Florin Coras <fcoras@cisco.com>
 F:     src/vcl
 
diff --git a/src/vcl/FEATURE.yaml b/src/vcl/FEATURE.yaml
new file mode 100644 (file)
index 0000000..b2ab7cc
--- /dev/null
@@ -0,0 +1,22 @@
+---
+name: VPP Comms Library (VCL)
+maintainer: Florin Coras <fcoras@cisco.com>
+features:
+  - Abstracts vpp host stack sessions to integer session handles
+  - Exposes its own async communication functions, i.e., epoll, select, poll
+  - Supports multi-worker applications
+  - Sessions cannot be shared between multiple threads/processes
+  - VCL Locked Sessions (VLS):
+      - Ensure through locking that only one thread accesses a session at a
+        time
+      - Detects and registers forked processes as new VCL workers. It does not
+        register threads as new workers.
+  - LD_PRELOAD shim (LDP):
+      - Intercepts syscalls and injects them into VLS.
+      - Applications that are supported work with VCL and implicitly with VPP's
+        host stack without any code change
+      - It does not support all syscalls and syscall options
+description: "VCL simplifies app interaction with session layer by exposing
+              APIs that are similar to but not POSIX-compliant."
+state: production
+properties: [API, CLI, MULTITHREAD]