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

Network Simulator for P4(NSP4) src内容介绍的更多相关文章

  1. NSP4——Network Simulator for P4

    NSP4--Network Simulator for P4 一.前言 NSP4旨在为P4开发者,创建一个可视化的P4流表管理及拓扑建立工具,帮助P4开发者,更好的调试自己的P4程序.此开发工具是基于 ...

  2. AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码

    AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码 添加Watch应用对象时新增内容介绍 Watch应用对象添加到创建的项目中后,会包含两个部分:Watch App 和 Wa ...

  3. PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能

    PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能 网上很多正则表达式只能获取或者替换一个img的src内容,或者只能替换固定的字符串,要动态替换多个图片内容的试了几个小时 ...

  4. 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma

     1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...

  5. 四、Redis通配符介绍、命令缩写介绍和后面内容介绍讲解。

    1.通配符介绍 ? 匹配一个字符 * 匹配任意个(包括 0 个)字符 [] 匹配括号间任一字符,可以使用 "-" 符号表示一个范围,如 a[b-d]匹配 "ab" ...

  6. PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能

    PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能 网上很多正则表达式只能获取或者替换一个img的src内容,或者只能替换固定的字符串,要动态替换多个图片内容的试了几个小时 ...

  7. pyspark 内容介绍(一)

    pyspark 包介绍 子包 pyspark.sql module pyspark.streaming module pyspark.ml package pyspark.mllib package ...

  8. Solr学习笔记---部署Solr到Tomcat上,可视化界面的介绍和使用,Solr的基本内容介绍,SolrJ的使用

    学习Solr前需要有Lucene的基础 Lucene的一些简单用法:https://www.cnblogs.com/dddyyy/p/9842760.html 1.部署Solr到Tomcat(Wind ...

  9. 有关https安全的相关内容介绍

    Https 介绍什么是Https HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道.简单讲是H ...

随机推荐

  1. Mirror--如何对运行中的镜像端点更换证书

    如果使用证书配置镜像时,没有设置证书的时间,则默认证书有效期为一年,当证书快过期时,需要更换证书. 下面代码演示如何对正在运行的镜像更换证书 --=========================== ...

  2. this与$scope

    最近在Angular项目中遇到关于controller内使用$scope&this 暴露数据的问题,下面来分析一下: "controller as" 是Angular在1. ...

  3. [LeetCode] 198. House Robber _Easy tag: Dynamic Programming

    You are a professional robber planning to rob houses along a street. Each house has a certain amount ...

  4. testng入门教程7 TestNG组测试

    在TestNG中组测试是一个新的创新功能,它不存在于JUnit框架,它允许调度到适当的部分方法和瓶坯复杂的测试方法分组.您不仅可以声明属于群体的那些方法,但你也可以指定一组包含其他组.然后,TestN ...

  5. 7.6 Models -- Finding Records

    Ember Data的store为检索一个类型的records提供一个接口. 一.Retrieving a single record(检索单记录) 1. 通过type和ID使用store.findR ...

  6. 微信小程序-1

    微信小程序 (开发微信小程序基础:HTML+js+css) l  准备工作 工具安装 开发工具是由微信官方提供 项目的预览(校验环境) l  开发体验阶段 -         Hello world ...

  7. Centos下添加PHP对MSSQL的支持

    Leave a reply 其实很少会有连接SQL Server的机会,不过我们公司刚好有个应用需要使用的SQL Server的数据库,所以也知道给LNMP安装MSSQL的扩展. 搜索网上的相关文章一 ...

  8. VC++文件操作之最全篇

    一.剖析VC中的文件操作 各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分 ...

  9. HTML 和 JavaScript 编写简单的 404 界面

    编写简单的 404 界面,也可以用来做 500 报错界面,还会飘东西,特别好,蛮漂亮的! <!DOCTYPE html> <html> <head> <met ...

  10. CentOS7.3防火墙firewalld简单配置

    今天安装了centos7.3, 想用iptables的save功能保存规则的时候发现跟rhel不一样了,  后来度娘说centos用的是firewalld而不是iptables了, 平时工作都是用re ...