Difference between revisions of "VPPHostStack"

From fd.io
Jump to: navigation, search
(Description)
Line 1: Line 1:
= Description =
+
== 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 parts:
+
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
 
* Session Layer that accepts pluggable transport protocols
* Shared memory mechanisms for pushing data between vpp to applications
+
* Shared memory mechanisms for pushing data between VPP and applications
 
* Transport protocol implementations (e.g. TCP, SCTP, UDP)
 
* Transport protocol implementations (e.g. TCP, SCTP, UDP)
* Comms Library (VCL)
+
* Comms Library (VCL) and LD_PRELOAD Library
  
= 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
 +
* VCL API that offers a POSIX-like interface
 +
* POSIX API through LD_PRELOAD
  
= Running List of Presentations =
+
== Start Here ==
 +
 
 +
[[VPP/Setting_Up_Your_Dev_Environment|Set Up Dev Environment]] - Explains how to set up a VPP development environment and the requirements for using the build tools
 +
 
 +
== Getting Started ==
 +
 
 +
Simple testing of the stack can be driven from a number of layers.
 +
 
 +
 
 +
== Running List of Presentations ==
  
 
* [[Media:Vpp-hoststack.pdf|DPDK Summit North America 2017]]
 
* [[Media:Vpp-hoststack.pdf|DPDK Summit North America 2017]]
 
* [[Media:Vpp-hoststack-kc.pdf|FD.io Mini Summit KubeCon 2017]]
 
* [[Media:Vpp-hoststack-kc.pdf|FD.io Mini Summit KubeCon 2017]]
  
= Session Layer Architecture =
+
== Session Layer Architecture ==
 +
 
 
[[File:Session API.png|550px|center|Session API Diagram]]
 
[[File:Session API.png|550px|center|Session API Diagram]]

Revision as of 22:55, 6 March 2018

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

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
  • VCL API that offers a POSIX-like interface
  • POSIX API through LD_PRELOAD

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

Simple testing of the stack can be driven from a number of layers.


Running List of Presentations

Session Layer Architecture

Session API Diagram