P4-Related Tools Installation
P4-Related Tools Installation
安装P4相关工具的步骤和说明。
本说明只适用于 Ubuntu 14.04 系统。
推荐安装的其他工具
mininet:SDN网络仿真工具
vim:编辑器
scapy:Python的一个功能十分强大的库,可以用于生成数据报
pip:Python包管理工具
P4Factory
官方README:P4 Model Repository
注意:如果你对P4已经很熟悉并且能够独立搭建环境,这个repo已经不大适合现在的P4开发了(使用bmv1软件交换机),建议是使用bmv2搭建环境并进行相关开发。
1.安装外部引用的库:
git submodule update --init --recursive
2.安装Ubuntu14.04系统下所需的所有依赖:
./install_deps.sh
3.在启动模拟器之前,需要创建虚拟的端口:
sudo p4factory/tools/veth_setup.sh
4.使用autoconf工具生成Makefile,并对工作环境进行配置:
cd p4factory
./autogen.sh
./configure
5.验证安装是否成功,并测试一个简单的P4程序:
cd p4factory/targets/basic_routing/
make bm
sudo ./behavioral-model
同时新打开一个终端进行测试:
cd p4factory/targets/basic_routing/
sudo python run_tests.py --test-dir tests/ptf-tests/
BMv2
官方README:BEHAVIORAL MODEL REPOSITORY
1.Ubuntu 14.04下要求安装的依赖:
automake
cmake
libjudy-dev
libgmp-dev
libpcap-dev
libboost-dev
libboost-test-dev
libboost-program-options-dev
libboost-system-dev
libboost-filesystem-dev
libboost-thread-dev
libevent-dev
libtool
flex
bison
pkg-config
g++
libssl-dev
2.使用脚本安装外部依赖库,如thrift。
注意:如果已经安装了P4Factory,请忽略此步,否则会有一系列的版本不匹配问题。
./install_deps.sh
3.按照以下步骤安装bmv2:
./autogen.sh
./configure
make
[sudo] make install # if you need to install bmv2
4.更新Linux库缓存:
sudo ldconfig
5.检验:
[sudo] make check
P4c-bm
官方README:p4c-bm
1.要求安装好pip;
2.安装步骤:
sudo pip install -r requirements.txt
sudo pip install -r requirements_v1_1.txt
sudo python setup.py install
Happy Hacking
P4-Related Tools Installation的更多相关文章
- 【转】VMware Tools installation cannot be started manually while Easy Install is in progress.
我HOST 是WIN7也遇到了这样的问题 我这样做的:进入系统以后在你VM的下面会有几个图标:关于1,CD DVD 2,disk 3,floppy 4,网络连接... 选择floppy--settin ...
- Xcode 8.X Command Line Tools
Summary Step 1. Upgrade Your System to macOS Sierra Step 2. Open the Terminal Application Step 3. Is ...
- Development Tools
Introduction Even Chris created his article of Useful Reference Books ages ago I just bumped into it ...
- Xcode Command Line Tools for Mac OS X 10.9 Mavericks
by Daniel Kehoe Last updated 28 December 2013 How to install Apple Xcode Command Line Tools for Mac ...
- 转 How to install XenServer Tools – Linux(forward)
本文转自: http://blog.csdn.net/zhongguoren666/article/details/7088798 比较懒....大家看图说话就行了.... 说句实在话…还是老外写的地 ...
- Ubuntu下手动安装VMware Tools步骤
To mount the CD image and extract the contents: Power on the virtual machine. Log in to the virtual ...
- 四、VMware Tools 安装 与 问题
解决VMware Tools无法安装的问题 虚拟机上装win2kgho版的系统,安装VMware Tools时,遇到“VMware Tools installation cannot be start ...
- 虚拟机 VMware Tools 安装
Ubuntu 或具有图形用户界面的 Ubuntu Server 要挂载 CD 镜像并解压,请按以下步骤操作: 启动此虚拟机. 使用具有管理员权限或 root 用户权限的帐户登录此虚拟机. 选择:对于F ...
- systemtap 2.8 news
* What's new in version 2.8, 2015-06-17 - SystemTap has improved support for probing golang programs ...
随机推荐
- mysql 数据操作 多表查询 子查询 虚拟表介绍
子查询 把一个sql语句放在括号里 ,这个括号里sql语句查询结果其实就是一张表,并且是一个临时在内存里存在的虚拟表 可以用括号把一个查询sql语句括起来 得到查询的结果并且用as 为这张虚拟表起个别 ...
- java获取屏幕密度
方法1: float xdpi = getResources().getDisplayMetrics().widthPixels;float ydpi = getResources().getDisp ...
- golang语言调试
https://software.intel.com/en-us/blogs/2014/05/10/debugging-performance-issues-in-go-programs https: ...
- git 下载单个文件 已经添加多个远程服务器
175down vote It is possible to do (in the deployed repository) git fetch followed by git checkout or ...
- 集合框架—常用的map集合
1.Collections.synchronizedMap() 实现上在调用map所有方法时,都对整个map进行同步,而ConcurrentHashMap的实现却更加精细,它对map中的所有桶加了锁. ...
- za
http://www.szjs.gov.cn/bsfw/zdyw_1/zfbz/jgcx/
- Java设计模式应用——模板方法模式
所谓模板方法模式,就是在一组方法结构一致,只有部分逻辑不一样时,使用抽象类制作一个逻辑模板,具体是实现类仅仅实现特殊逻辑就行了.类似科举制度八股文,文章结构相同,仅仅具体语句有差异,我们只需要按照八股 ...
- HTML5代码规范
HTML5代码规范html标签里面等号两边不要留空格在IE下可能会识别不了html5等号前后可以使用空格,但仍不推荐使用. HTML 代码约定很多 Web 开发人员对 HTML 的代码规范知之甚少.在 ...
- javascript闭包(Module模式)的用途和高级使用方式
javascript闭包(Module模式)的用途和高级使用方式 javascript闭包的用途:1. 匿名自执行函数:或者可以理解为,避免污染全局变量2. 缓存:源于闭包的核心特性便是保存状态,应用 ...
- Ubuntu系统下查看显卡相关信息
查看显卡信息 root@ubuntu:/home/ubuntu# lspci |grep -i vga 02:00.0 VGA compatible controller: NVIDIA Corpor ...
我HOST 是WIN7也遇到了这样的问题 我这样做的:进入系统以后在你VM的下面会有几个图标:关于1,CD DVD 2,disk 3,floppy 4,网络连接... 选择floppy--settin ...
Summary Step 1. Upgrade Your System to macOS Sierra Step 2. Open the Terminal Application Step 3. Is ...
Introduction Even Chris created his article of Useful Reference Books ages ago I just bumped into it ...
by Daniel Kehoe Last updated 28 December 2013 How to install Apple Xcode Command Line Tools for Mac ...
本文转自: http://blog.csdn.net/zhongguoren666/article/details/7088798 比较懒....大家看图说话就行了.... 说句实在话…还是老外写的地 ...
To mount the CD image and extract the contents: Power on the virtual machine. Log in to the virtual ...
解决VMware Tools无法安装的问题 虚拟机上装win2kgho版的系统,安装VMware Tools时,遇到“VMware Tools installation cannot be start ...
Ubuntu 或具有图形用户界面的 Ubuntu Server 要挂载 CD 镜像并解压,请按以下步骤操作: 启动此虚拟机. 使用具有管理员权限或 root 用户权限的帐户登录此虚拟机. 选择:对于F ...
* What's new in version 2.8, 2015-06-17 - SystemTap has improved support for probing golang programs ...
子查询 把一个sql语句放在括号里 ,这个括号里sql语句查询结果其实就是一张表,并且是一个临时在内存里存在的虚拟表 可以用括号把一个查询sql语句括起来 得到查询的结果并且用as 为这张虚拟表起个别 ...
方法1: float xdpi = getResources().getDisplayMetrics().widthPixels;float ydpi = getResources().getDisp ...
https://software.intel.com/en-us/blogs/2014/05/10/debugging-performance-issues-in-go-programs https: ...
175down vote It is possible to do (in the deployed repository) git fetch followed by git checkout or ...
1.Collections.synchronizedMap() 实现上在调用map所有方法时,都对整个map进行同步,而ConcurrentHashMap的实现却更加精细,它对map中的所有桶加了锁. ...
http://www.szjs.gov.cn/bsfw/zdyw_1/zfbz/jgcx/
所谓模板方法模式,就是在一组方法结构一致,只有部分逻辑不一样时,使用抽象类制作一个逻辑模板,具体是实现类仅仅实现特殊逻辑就行了.类似科举制度八股文,文章结构相同,仅仅具体语句有差异,我们只需要按照八股 ...
HTML5代码规范html标签里面等号两边不要留空格在IE下可能会识别不了html5等号前后可以使用空格,但仍不推荐使用. HTML 代码约定很多 Web 开发人员对 HTML 的代码规范知之甚少.在 ...
javascript闭包(Module模式)的用途和高级使用方式 javascript闭包的用途:1. 匿名自执行函数:或者可以理解为,避免污染全局变量2. 缓存:源于闭包的核心特性便是保存状态,应用 ...
查看显卡信息 root@ubuntu:/home/ubuntu# lspci |grep -i vga 02:00.0 VGA compatible controller: NVIDIA Corpor ...