Cisco VPP(1) 简介
一、简介
VPP全称Vector Packet Processing,是Cisco2002年开发的商用代码。
2016年2月11号,Linux基金会创建FD.io项目。Cisco将VPP代码的开源版本加入该项目,目前已成为该项目的核心。
VPP运行于用户空间,支持多种收包方式,常用的是DPDK。
VPP主要有两个主要功能:框架可扩展;成熟的交换/路由功能。
二、扩展性
1、结点操作
VPP平台是通过graphnode串联起来处理数据包,类似于freebsd的netgraph。
通过插件的形式引入新的graph node或者重新排列数据包的gpragh node。将插件添加到插件目录中,运行程序的时候就会自动加载插件。另外插件也可以根据硬件情况通过某个node直接连接硬件进行加速。
VPP平台可以用于构建任何类型的数据包处理应用。比如负载均衡、防火墙、IDS、主机栈。也可以是一个组合,比如给负载均衡添加一个vSwitch。
通过创建插件,可以任意扩展如下功能:
• 自定义新的图结点
• 重新排列图结点
• 添加底层API
添加插件如下图所示:
2、可编程能力
VPP还提供了基于共享内存或者消息队列的高性能内部API。目前VPP平台支持C和JAVA客户端进行内部API绑定。
如下图所以,我们完成一个外部应用对VPP进行操作:
以上的编程能力是针对内部API的调用,另外还可以支持远程可编程能力。
远程可编程能力可以通过Data Plane Management Agent来实现。
通过外部API与Data Plane Management Agent进行通信。Data Plane Management Agent通过内部API与VPP应用(引擎)进行通信。
这是一个非常灵活的方法,任何人可以添加,但是需要外部API和Data Plane Management Agent匹配,以实现特定需求的VPP应用。
下图展示Agent对接VPP和外部程序:
案例Honeycomb Agent:
HoneycombAgent通过netconf和restconf发布了yang模型的VPP功能。 像OpenDaylight 这样支持netconf/yang的控制器可以挂载Honeycomb 管理代理来工作。而OpenDaylight支持OpenStack Neutron,所以如下图所示OpenStack Neutron可以集成到vpp来:
三、网络功能
1、网络特性
VPP拥有的网络特性如下:
• 快速查找路由表、CAM表
• 任意n元组分类
• 商用级别的交换/路由功能
VPP能提供的所有功能如下:
2、网络性能
多核基准性能例子 (UCS-C240 M3, 3.5gHz,所有内存通道转发ipv4):
• 1 core: 9 MPPS in+out
• 2 cores: 13.4 MPPS in+out
• 4 cores: 20.0 MPPS in+out
下面几个图展示的是和OVS+DPDK的性能对比:
下图是在Haswell x86 架构的E5-2698v3 2x16C 2.3GHz上测试,图中显示了12口10GE,16核,ipv4转发:
资料来源于:https://fd.io/
欢迎加入VPP讨论群:417538415
Cisco VPP(1) 简介相关推荐
- Cisco Packet Tracer 简介和安装
Cisco Packet Tracer 简介和安装 Packet Tracer 是一款强大的网络模拟平台,可激励学生尝试网络行为并提出假设分析.它让学生可以创建包含几乎无限量设备的虚拟网络,以补充课堂 ...
- Cisco VPP:cop简介
Github-blog CSDN 注意:本文使用的代码是2018.05.07提交的master分支上的code,其具体commitID是c22fcba177bad2c755fdb6d4d52f2a79 ...
- Cisco思科公司简介
[size=18]简介:[/size] Cisco Systems, Inc. 思科系统公司是全球领先的互联网设备供应商.它的网络设备和应用方案将世界各地的人.计算设备以及网络联结起来,使人们能够随时 ...
- CISCO认证体系简介
网络模型 一,网络简介 1,网络的定义 2,网络拓扑图图标简介 3,网络模型简介 A) 网络模型的作用 把网络的任务分层,便于学习诗集协议规范,降低复杂性, B) 分类: 网络设计模型(此模型为CIS ...
- 《Cisco VPP SFC》2、NSH_SFC 安装
原文地址:https://blog.csdn.net/u010827484/article/details/81031539 SFC概念 SFC是Service Function Chain的缩写,直 ...
- 《Cisco VPP SFC 》1、 VPP 安装
原文地址:https://blog.csdn.net/u010827484/article/details/81029919 基础环境 Linux ubuntu 4.13.0-36-generic # ...
- Cisco VPP(7) 插件开发
还在初学阶段,如果有误,希望多批评指正. 在VPP中,插件可以在程序启动的时候加载,一般我们会往里面加入node,实现一些功能. 首先介绍怎么直接重定义硬件接口RX到我们的node vnet_hw_i ...
- VPP Agent 简介
文章目录 VPP Agent Overview VPP Agent 架构 体系架构图 VPP Agent 功能 VPP Agent Features VPP 配置和管理 重新同步 插件概念 说明 CN ...
- whois命令_WHOIS使用Whois搜索
whois命令 I used to do all of my WHOIS searches at a really popular website that I wont name here. I h ...
最新文章
- 1618D. Array and Operations
- 作者:滕飞(1984-),女,博士,西南交通大学信息科学与技术学院讲师,CCF和ACM会员。...
- 可是听了半天C++五子棋
- 三天打鱼两天晒网 (15 分)
- C++ queue
- Android 面试常问七道题
- 语文学科html代码,语文教育专业介绍 [代码660201]
- 《不能承受的生命之轻》
- uml的九种图例分析
- python制作网页难吗_怎么做网页制作(用python做网页与html)
- 【博弈论】Nim游戏
- 记录一下手把手教您做电商网站
- 第十二期 U-Boot工作原理 《路由器就是开发板》
- steam 创客教育
- 国内三大云平台,IoT物联网实例选购指南
- 使用python获取微医数据
- 扎好篱笆桩:三大运营商守住网络安全“命门”
- ejwt积分_菜鸡速通微积分:从十进制展开到数列、级数、幂级数、函数项级数...
- java 前后台json的传递
- Vue textarea 和input 开发ios点击空白地方键盘不收起问题