[OPNFLWPLUG-263] IN_PORT Action flow mod not working Created: 05/Sep/14  Updated: 27/Sep/21  Due: 15/Sep/14  Resolved: 25/Sep/14

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Jamo Luhrsen Assignee: Jamo Luhrsen
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: PC


Attachments: HTML File log.html     File output.xml     HTML File report.html    
External issue ID: 1725

 Description   

When I try to create a flow via restconf with IN_PORT as the action I see that no flow mod is sent to the corresponding switch (via pkt capture on mininet vm running OVS). Also in the OSGI console, the following errors are seen:

2014-09-05 14:58:33.456 PDT [OFRpc-2] ERROR o.o.o.o.m.c.s.c.ActionConvertor - Invalid Port specified null for Output Action for OF version:OF13
2014-09-05 14:58:33.456 PDT [OFRpc-2] ERROR o.o.o.o.m.c.s.c.ActionConvertor - Invalid Port specified null for Output Action for OF version:OF13
2014-09-05 14:58:33.456 PDT [nioEventLoopGroup-12-6] WARN o.o.o.protocol.impl.core.OFEncoder - Message serialization failed: null

Here is the flow_mod XML:

<flow xmlns="urn:opendaylight:flow:inventory"><instructions><instruction><order>0</order><apply-actions><action><order>0</order><output-action><output-node-connector>IN_PORT</output-node-connector></output-action></action></apply-actions></instruction></instructions><match><ethernet-match><ethernet-type><type>0x800</type></ethernet-type><ethernet-source><address>00:ab:cd:ef:01:23</address></ethernet-source><ethernet-destination><address>ff:ff:ff:ff:ff:ff</address></ethernet-destination></ethernet-match><ipv4-source>11.3.0.0/16</ipv4-source><ipv4-destination>99.0.0.0/8</ipv4-destination></match><strict>false</strict><hard-timeout>60</hard-timeout><idle-timeout>30</idle-timeout><flow-name>No Name</flow-name><priority>0</priority><barrier>false</barrier><cookie>0</cookie><cookie_mask>0</cookie_mask><table_id>22</table_id><id>161</id></flow>

If it matters, the REST details are a PUT @ /restconf/config/opendaylight-inventory:nodes/node/openflow:1/table/22/flow/161

Attached are some robot test logs if it helps.



 Comments   
Comment by Jamo Luhrsen [ 05/Sep/14 ]

Attachment log.html has been added with description: robot log.html file

Comment by Jamo Luhrsen [ 05/Sep/14 ]

Attachment output.xml has been added with description: robot output.xml

Comment by Jamo Luhrsen [ 05/Sep/14 ]

Attachment report.html has been added with description: robot report.html file

Comment by Jamo Luhrsen [ 05/Sep/14 ]

distro used was distributions-base-0.2.0-20140825.175909-538-osgipackage.zip

Comment by Timotej Kubas [ 11/Sep/14 ]

For creation of flow with IN_PORT action via RESTCONF you should set in your XML "output - action" to:

<output-action>
<output-node-connector>INPORT</output-node-connector>
</output-action>

instead of:

<output-action>
<output-node-connector>IN_PORT</output-node-connector>
</output-action>

This change will fix the problem.

Comment by Jamo Luhrsen [ 11/Sep/14 ]

I can confirm that INPORT works for the action when passing it to the controller, however I think we should stay consistent with the spec, which
says:

OFPP_IN_PORT = 0xfffffff8, /* Send the packet out the input port. This
reserved port must be explicitly used
in order to send back out of the input
port. */

Also, OVS uses the same format:

cookie=0x0, duration=1.021s, table=22, n_packets=0, n_bytes=0, idle_timeout=30, hard_timeout=60, send_flow_rem priority=0,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT

Is it possible/worthwhile to change?

Thanks.

Comment by Abhijit Kumbhare [ 16/Sep/14 ]

Moving to Lithium as we have only a week and half for Helium.

Comment by Timotej Kubas [ 17/Sep/14 ]

For Helium we do not plan to implement unified action values for flows because of lack of time.
However, it is not bad idea to change.
It would be best if you create a new enhancement bug for this issue which would be solved in next releases.

Comment by Jamo Luhrsen [ 25/Sep/14 ]

filed enhancement for Lithium as requested:
https://bugs.opendaylight.org/show_bug.cgi?id=2095

Generated at Wed Feb 07 20:32:00 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.