VPPHostStack
From fd.io
Revision as of 23:07, 6 March 2018 by Florin.coras (Talk | contribs)
Contents
Description
VPP's host stack is a user space implementation of a number of transport, session and application layer protocols that leverages VPP's existing protocol stack. It roughly consists of four major components:
- Session Layer that accepts pluggable transport protocols
- Shared memory mechanisms for pushing data between VPP and applications
- Transport protocol implementations (e.g. TCP, SCTP, UDP)
- Comms Library (VCL) and LD_PRELOAD Library
Start Here
Set Up Dev Environment - Explains how to set up a VPP development environment and the requirements for using the build tools
Getting Started
Applications can link against the following APIs for host-stack service:
- Builtin C API. It can only be used by applications hosted within VPP
- "Raw" session layer API. It does not offer any support for async communication
- VCL API that offers a POSIX-like interface. It comes with its own epoll implementation.
- POSIX API through LD_PRELOAD
A number of test applications can be used to exercise these APIs.
Builtin Echo Server/Client
Once two vpp instances are brought and conf, the builtin echo apps can be
External Echo Server/Client
VCL socket client/server
For more details see the tutorial here