Network Simulator for P4(NSP4) src内容介绍
Structure
- What's NSP4?
- src source code introduction
What's NSP4?
NSP4是一个用于P4的网络仿真工具,旨在简化P4的环境部署和运行,将原有的指令和Runtime Commands抽象为GUI上的控件,达到轻松上手P4的目的。
详细介绍:NSP4——Network Simulator for P4
Github主页:NSP4: Network Simulator for P4
src source code introduction
在src目录下有以下几个文件:
└── src
├── cmd
│ ├── show_tables.txt
│ └── table_delete.txt
├── show_sw_tables.py
├── show_table_info.py
├── simple_switch_CLI
├── table_add_entry.py
├── table_delete_entry.py
└── todo.md
这里简单的介绍一下:
1.cmd中的*.txt文件:用于存放写好的P4运行时命令。
2.show_sw_tables.py:通过运行时命令查看特定交换机的流表信息。
usage: show_sw_tables.py [-h] --swname SWNAME
P4 demo
optional arguments:
-h, --help show this help message and exit
--swname SWNAME Switch Name
3.show_table_info.py:通过运行时命令查看特定交换机中特定流表的信息。
usage: show_table_info.py [-h] --swname SWNAME --table-name TABLE_NAME
P4 demo
optional arguments:
-h, --help show this help message and exit
--swname SWNAME Switch Name
--table-name TABLE_NAME
Table Name
4.simple_switch_CLI:运行时CLI。
./simple_switch_CLI --thrift-port [port_number]
5.table_add_entry.py:往特定交换机内部的特定流表添加流表项。
usage: table_add_entry.py [-h] --swname SWNAME --table-name TABLE_NAME --key
[KEY [KEY ...]] --action ACTION
[para [para ...]]
P4 demo
positional arguments:
para
optional arguments:
-h, --help show this help message and exit
--swname SWNAME Switch Name
--table-name TABLE_NAME
Table Name
--key [KEY [KEY ...]]
Match Key
--action ACTION Action
6.table_delete_entry.py:删除特定交换机内部的特定流表中的流表项。
usage: table_delete_entry.py [-h] --swname SWNAME --table-name TABLE_NAME
--handle HANDLE
P4 demo
optional arguments:
-h, --help show this help message and exit
--swname SWNAME Switch Name
--table-name TABLE_NAME
Table Name
--handle HANDLE Handle
7.todo.md:待完成的工作。
2017.6.3
To improve is to change, to be perfect is to change often.