BEHAVIORAL MODEL REPOSITORY
这是第二个版本的P4软件交换机,也叫bmv2。与之前的版本p4c-behavioral不同,这个新版本是静态的(例如:每次对程序修改后重新编译),用C++11实现的。
启动/behavioral-model/mininet下的1sw_demon.py脚本,创建了一个有一个交换机和两个主机的实验拓扑。P4交换机是simple_router。
首先查看交换机上有些哪些match-action table,如图可以看出这个target上有forward,ipv4_lpm,send_frame这3张表,分别用table_dump查看,可以看到这几张表都是空的:
在另一个终端,进入target/simple_router, 查看文件command.txt,这个文件是一些手动添加rules的命令:
把这些流表项写入simple_router的match-action table中:
在mininet中查看网络的链路状态:
删除ipv4_lpm的一条表项:
测试网络的链路状况,可以看到h1和h2之间不可达: