session: API cleanup
[vpp.git] / src / vcl / FEATURE.yaml
1 ---
2 name: VPP Comms Library
3 maintainer: Florin Coras <fcoras@cisco.com>
4 features:
5   - Abstracts vpp host stack sessions to integer session handles
6   - Exposes its own async communication functions, i.e., epoll, select, poll
7   - Supports multi-worker applications
8   - Sessions cannot be shared between multiple threads/processes
9   - VCL Locked Sessions (VLS):
10       - Ensure through locking that only one thread accesses a session at a
11         time
12       - Detects and registers forked processes as new VCL workers. It does not
13         register threads as new workers.
14   - LD_PRELOAD shim (LDP):
15       - Intercepts syscalls and injects them into VLS.
16       - Applications that are supported work with VCL and implicitly with VPP's
17         host stack without any code change
18       - It does not support all syscalls and syscall options
19 description: "VPP Comms Library (VCL) simplifies app interaction with session layer
20               by exposing APIs that are similar to but not POSIX-compliant."
21 state: production
22 properties: [API, CLI, MULTITHREAD]