实验8:数据平面可编程实践——P4
一、实验目的
- 掌握V1Model框架下P4_16的程序结构和基本语法
- 能够运用 P4 进行简单数据平面编程
二、实验环境
- 下载虚拟机软件Oracle VisualBox或VMware;
- 在虚拟机中安装Ubuntu 16.04 Desktop amd64,并安装完整Mininet和P4开发环境;
- 提供P4镜像P4-Suite2018.ova,提取码:egwf
三、实验要求
(一)基本要求
- 熟悉使用P4实现交换机IPv4的基本转发原理,编写P4程序,在下面的拓扑中实现IPV4 隧道转发。
- 修改代码后
make run
-
xterm h1,h2,h3
并且./receive.py
监听- 不使用隧道
- 使用隧道
个人总结
遇到困难以及解决方法
- 下载p4时由于百度网盘实在慢,所以我只好使用U盘大法,从同学那里拷贝来了p4,
- 代码难懂,通过问同学、看资料、查百度勉强理解
- 复制粘贴难搞,下载vmwaretools后才完成
心得
- 这次实验难度很高,需要学习心得语言、语法,还要看懂很多不同的代码语义、结构。在学习代码上花费了很长的时间,github上的代码更是令人感动(难懂),更别提运行时遇到了无数问题,所幸大部分的问题都可以通过上网找到解决方法。通过本次实验,我能够掌握V1Model框架下P4_16的程序结构和基本语法,但自己对于P4编程来说还是不太熟练,不过还是有不少收获的。希望在之后的大作业里能有更多的收获。