summaryrefslogtreecommitdiffstats
path: root/src/vcl
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2020-01-03 00:57:33 +0000
committerPaul Vinciguerra <pvinci@vinciconsulting.com>2020-01-03 03:54:07 +0000
commitb3f7d9ba6cd3f5ae650986239d875aff9fb61bda (patch)
treeefb5f2302fa1fd7959ae1bdac2b66e63e1be5e2f /src/vcl
parenta2dd5e08c6ab195c000181efa11b1852a89630aa (diff)
vcl: add feature.yaml
Type: docs Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ifda0404cfc6710d7ecf21da96eb1cb92750b495f
Diffstat (limited to 'src/vcl')
-rw-r--r--src/vcl/FEATURE.yaml22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/vcl/FEATURE.yaml b/src/vcl/FEATURE.yaml
new file mode 100644
index 00000000000..b2ab7ccfd99
--- /dev/null
+++ b/src/vcl/FEATURE.yaml
@@ -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]