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. 网络密钥交换协议——Diffie-Hellman

    Diffie-Hellman算法是一种交换密钥的算法. 它是眼下比較经常使用的密钥交换算法. 这样的算法的优点是能让两台计算机在不安全的网络环境中完毕密钥的交换. 下面是整个算法的过程.当中红色字体表 ...

  2. Debugging golang programs

    https://ttboj.wordpress.com/2016/02/15/debugging-golang-programs/ I’ve been writing a lot of golang ...

  3. 用setup.py安装第三方包packages

    这次要说的是用setup.py 来安装第三方包.步骤如下: 步骤:setup.py 先下载你要安装的包,并解压到磁盘下: 进入到该文件的setup.py 目录下 ,打开cmd,并切换到该目录下: 先执 ...

  4. 使用masory

    动态更新约束的时候老是提示有多余的约束,我使用update_contraits  make_contraits  都不能解决,后来使用了remake_contraits才消除了告警. view pro ...

  5. 用python参加Kaggle的些许经验总结(收藏)

    Step1: Exploratory Data Analysis EDA,也就是对数据进行探索性的分析,一般就用到pandas和matplotlib就够了.EDA一般包括: 每个feature的意义, ...

  6. 【upstream】Nginx配置upstream实现负载均衡

    如果Nginx没有仅仅只能代理一台服务器的话,那它也不可能像今天这么火,Nginx可以配置代理多台服务器,当一台服务器宕机之后,仍能保持系统可用.具体配置过程如下: 1. 在http节点下,添加ups ...

  7. Javascript--运算符判断成绩运算

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Django初级手册2-管理界面的使用及定制

    管理界面的使用 管理界面的URL,帐号和密码在第一次输入syncdb时建立 http://127.0.0.1:8000/admin/ 将app加入管理界面 编辑polls/admin.py from ...

  9. SQL Server 将查询结果导出插入(insert)语句的简单方式

    转自 http://blog.csdn.net/danny_style/article/details/45166391 1.首先将查询结果添加到一个原数据库中不存在的表,表名随意命名. 例:SELE ...

  10. ajax post 数组

    ajax post 传递数组参数后台接收的为null,需要将其连接为字符串后传递 var url = "@Url.Action("CheckOutProduct", &q ...