Details
-
Bug
-
Status: Resolved
-
Resolution: Cannot Reproduce
-
None
-
None
-
None
-
Operating System: Mac OS
Platform: Macintosh
-
263
Description
Steps to reproduce:
1. Connect mininet with a single OF switch to the controller, e.g.:
' sudo mn --topo single,3 --controller 'remote,ip=192.168.4.1:6633' --switch ovsk,protocols=OpenFlow13'
2. Program multiple flows in Table 0 through restconf, e.g.:
HTTP PUT to 'http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0/flow/126'with XML data:
<?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-nw-ttl/>
</action>
</apply-actions>
</instruction>
</instructions>
<table_id>0</table_id>
<id>126</id>
<cookie_mask>255</cookie_mask>
<out_port>0</out_port>
<installHw>false</installHw>
<out_group>2</out_group>
<match>
<ipv4-destination>10.2.3.4/24</ipv4-destination>
<ethernet-match>
<ethernet-type>
<type>2048</type>
</ethernet-type>
</ethernet-match>
</match>
<hard-timeout>0</hard-timeout>
<flags/>
<cookie>11</cookie>
<idle-timeout>0</idle-timeout>
<flow-name>FooXf2</flow-name>
<priority>2</priority>
<barrier>false</barrier>
</flow>
3. Similarly, program flow 125 in Table 0 by issuing HTTP PUT to ''http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0/flow/125' (and corresponding changes to flow id in the XML payload)
4. Verify that flows are present in the switch in mininet:
'sudo ovs-ofctl -O OpenFlow13 dump-flows s1'
5. verify that flows are present in the RESTCONG config space:
issue HTTP GET to 'http://192.168.4.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/0' - both flows are showing
6. Try to retrieve the operational state for Table 0 by issuing HTTP GET to ''http://192.168.4.1:8080/restconf/operational/opendaylight-inventory:nodes/node/openflow:1/table/0' - only the first programmed flow will show.
Before issuing Step 6, wait for the stats collection cycle to complete.