ODL流表操作
2017-09-01 本文已影响427人
顽强的猫尾草
一、安装Postman
OpenFlowplugin获取当前交换机的连接状态以及下发流表都需要手动发送HTTP的PUT/GET请求。使用的工具是Google的Chromium浏览器所提供的“Postman REST Client”插件。因此需要安装Chromium浏览器。
由于Google服务在大陆地区被禁,可能导致谷歌的插件市场无法访问,那么就只能下载第三方插件。
插件下载后解压缩,打开Chromium浏览器,点击右上角菜单按钮→Tools→Extentions→Developer mode→Load unpacked extention,然后选择刚刚下载的插件,Open。添加后后面的Enabled复选框要选上。
需要使用时,点击左上角Apps→Postman。
二、使用ODL OpenFlow插件
1. 显示节点信息
Basic Auth输入用户名和密码,Header中Accept设置为application/xml,方式选GET,URL为:
http://localhost:8181/restconf/operational/opendaylight-inventory:nodes/
也可以查看单个节点,url替换为:
http://localhost:8181/restconf/operational/opendaylight-inventory:nodes/node/openflow:1
2. 添加流表
Header中Accept和Content-type都设置为application/xml,方式选PUT,URL为:
http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0/flow/1
Body部分示例:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<flow xmlns="urn:opendaylight:flow:inventory">
<strict>false</strict>
<instructions>
<instruction>
<order>0</order>
<apply-actions>
<action>
<order>0</order>
<dec-mpls-ttl/>
</action>
</apply-actions>
</instruction>
</instructions>
<table_id>0</table_id>
<id>1</id>
<cookie_mask>255</cookie_mask>
<installHw>false</installHw>
<match>
<ethernet-match>
<ethernet-type>
<type>0x8847</type>
</ethernet-type>
<ethernet-destination>
<address>f4:ce:46:bf:32:f3</address>
</ethernet-destination>
<ethernet-source>
<address>d8:d3:85:5b:ad:89</address>
</ethernet-source>
</ethernet-match>
</match>
<hard-timeout>12</hard-timeout>
<cookie>4</cookie>
<idle-timeout>34</idle-timeout>
<flow-name>MYMACFLOW</flow-name>
<priority>2</priority>
<barrier>false</barrier>
</flow>
3. 查看流表
GET方式,URL为:
http://localhost:8181/restconf/operational/opendaylight-inventory:nodes/node/openflow:1/table/0/