Here at PANTHEON.tech, we really enjoy perfecting the user experience around VPP and creating projects based around this framework. That is why we have developed a handy tool, which lets you analyze several crucial data points while using VPP. We call it VPPTop.
In order to run VPPTop, you will need to install these dependencies first:
- [Go] version 1.11+
- [VPP], version 19.04-3~g1cb333cdf~b41 is recommended. You can find the installation guide here.
- Configure VPP, according to the README file
How to install & run
1. Follow the above requirements, in order to have all dependencies for this software installed
2. Make sure VPP is running beforehand
3. Install VPPTop via Terminal to $GOPATH/bin:
go get -u github.com/PantheonTechnologies/vpptop
4. Run the tool from Terminal:
sudo -E vpptop
What is VPPTop?
VPPTop is an application for sysadmins and testers, implemented in Go. The goal of VPPTop is to provide VPP statistics which are updated in real-time, in one terminal window.
Before the release of our tool, admins could only rely on the usage of a CLI, to first request the data flow and then receive information, which are not up-to-date, nor in real-time.
Now, you can use our VPPTop tool, to find up-to-date information on your framework!
Version 1.11 supports statistics for:
- Memory Usage per Thread
- Per Thread-Data
Version 1.11 supports these functionalities:
- Clearing counters
- Filter by Name
Why should you start to use Vector Package Processing?
The main advantages are:
- high performance with a proven technology
- production level quality
- flexible and extensible
The main advantage of VPP is, that you can plug in a new graph node, adapt it to your networks purposes and run it right away. Including a new plugin does not mean, you need to change your core-code with each new addition. Plugins can be either included in the processing graph, or they can be built outside the source tree and become an individual component in your build.
Furthermore, this separation of plugins makes crashes a matter of a simple process restart, which does not require your whole build to be restarted because of one plugin failure.
You can read more in our PANTHEON.tech series on VPP.