Details
-
Bug
-
Status: Resolved
-
Resolution: Done
-
None
-
None
-
None
-
Operating System: Linux
Platform: PC
-
475
Description
Sending a delete message to the controller via REST to wildcard delete all the flows in a specific table does not result in a flow mod message being sent from the controller to the switch. I used tcpdump to cap packets leaving the controller with a source/destination port of 6653 to verify whether or not the flow mod was ever being sent.
Steps to reproduce:
1. add flow to switch
http://192.168.0.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:5/table/0/flow/2
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<flow xmlns="urn:opendaylight:flow:inventory">
<priority>5000</priority>
<match>
<in-port>31</in-port>
<protocol-match-fields>
<mpls-label>1234</mpls-label>
</protocol-match-fields>
</match>
<id>2</id>
<table_id>0</table_id>
<idle-timeout>0</idle-timeout>
<hard-timeout>0</hard-timeout>
<instructions>
<instruction>
<order>0</order>
<apply-actions>
<action>
<order>0</order>
<pop-mpls-action>
<ethernet-type>2048</ethernet-type>
</pop-mpls-action>
</action>
<action>
<order>1</order>
<output-action>
<output-node-connector>12</output-node-connector>
<max-length>60</max-length>
</output-action>
</action>
</apply-actions>
</instruction>
</instructions>
</flow>
2. verify flow was installed on switch
ovs-ofctl --protocols OpenFlow13 dump-flows s1
OFPST_FLOW reply (OF1.3) (xid=0x2):
cookie=0x0, duration=3.934s, table=0, n_packets=0, n_bytes=0, send_flow_rem priority=5000,in_port=31 actions=pop_mpls:0x0800,output:12
3. send delete, specifying table only
curl --user "admin":"admin" -H "Content-Type: application/xml" -X DELETE http://192.168.0.1:8080/restconf/config/opendaylight-inventory:nodes/node/openflow:5/table/0
Actual results:
Flow is still present on the switch
ovs-ofctl --protocols OpenFlow13 dump-flows s1
OFPST_FLOW reply (OF1.3) (xid=0x2):
cookie=0x0, duration=162.522s, table=0, n_packets=0, n_bytes=0, send_flow_rem priority=5000,in_port=31 actions=pop_mpls:0x0800,output:12
Expected results:
Flow mod should be sent and all flows in the specified tablet should be deleted