中文社区中,关于VPP的文章比较零碎,有些资料都是前些年的了,因此写一个系列,顺带实现Ruta的插件.
?VPP是什么?VPP,全称VectorPacketProcessor,是一个由思科开源的基于C语言的高性能网络数据平面。
它内置了大量常用的数据面功能,并采用DAG的方式构建转发处理链,这是一个非常好的工程实践,添加feature也非常灵活。
前面介绍过QFP处理器也是采用C语言编程的,并且也支持ARM/X86等通用处理器平台,但是思科针对这些平台使用的是一套名为CiscoPacketProcessor(Cpp)的框架,由于保密的原因,只能贴个打码图了...
贴图的目的是请各位?不要认为VPP是思科ISR、ASR、CatalystEdge的开源实现!完全不同~CPP有很多更好玩的东西~
?VPP编译VPP编译非常简单,我们以Ubuntu20.04为例,编译环境准备:
sudoaptinstallbuild-essentialgitgitclone