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的更多相关文章

  1. 【转】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 ...

  2. Xcode 8.X Command Line Tools

    Summary Step 1. Upgrade Your System to macOS Sierra Step 2. Open the Terminal Application Step 3. Is ...

  3. Development Tools

    Introduction Even Chris created his article of Useful Reference Books ages ago I just bumped into it ...

  4. 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 ...

  5. 转 How to install XenServer Tools – Linux(forward)

    本文转自: http://blog.csdn.net/zhongguoren666/article/details/7088798 比较懒....大家看图说话就行了.... 说句实在话…还是老外写的地 ...

  6. Ubuntu下手动安装VMware Tools步骤

    To mount the CD image and extract the contents: Power on the virtual machine. Log in to the virtual ...

  7. 四、VMware Tools 安装 与 问题

    解决VMware Tools无法安装的问题 虚拟机上装win2kgho版的系统,安装VMware Tools时,遇到“VMware Tools installation cannot be start ...

  8. 虚拟机 VMware Tools 安装

    Ubuntu 或具有图形用户界面的 Ubuntu Server 要挂载 CD 镜像并解压,请按以下步骤操作: 启动此虚拟机. 使用具有管理员权限或 root 用户权限的帐户登录此虚拟机. 选择:对于F ...

  9. systemtap 2.8 news

    * What's new in version 2.8, 2015-06-17 - SystemTap has improved support for probing golang programs ...

随机推荐

  1. python count()

    count() 描述 Python count() 方法用于统计字符串里某个字符出现的次数.可选参数为在字符串搜索的开始与结束位置. 语法 count()方法语法: str.count(sub, st ...

  2. Spring boot Security 用于权限管理,用户添加等。

    1:添加依赖: <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>thy ...

  3. modelform和modelserializer

    modelform modelform比form强悍很多

  4. JSP表单提交与接收

    JSP表单提交与接收 在Myeclipse中新建web project,在webroot中新建userRegist1.jsp,代码如下 <%@ page contentType="te ...

  5. pycharm进行调试[转载]

    转自:https://blog.csdn.net/william_hehe/article/details/80898031 1.首先设置断点. 2.Step into(F7):进入 若函数A内存在子 ...

  6. pdo sqlserver

    PHP代码如果想要用以上的方式兼容linux服务器和windows服务器,那么大概的示例代码是这样的. <?php header("Content-type: text/html; c ...

  7. python解决matplotlib中文坐标值乱码的问题

    加上这句话即可 plt.rcParams['font.sans-serif']=['SimHei'] 效果:

  8. hdu5145 莫队算法

    这题说的是个了n个数字 然后 在L 和R 区间内的数字的排列有多少种方案, 这里我们通过 将 这n长度的字符串 分成sqrt(n) 块然后 一个属性 他们的l 属于 那个快  以这个为第一关键字 ,然 ...

  9. ubuntu常用指令

    总结一下常用的linux指令. mark一个linux指令学习和速查的网站:http://man.linuxde.net/ (0) su和sudo:得到root权限 su 切换到root用户 sudo ...

  10. za

    http://www.szjs.gov.cn/bsfw/zdyw_1/zfbz/jgcx/