<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:31:28 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[OPNFLWPLUG-59] Set-field cannot update read-only actions on OVS</title>
                <link>https://jira.opendaylight.org/browse/OPNFLWPLUG-59</link>
                <project id="10155" key="OPNFLWPLUG">OpenFlowPlugin</project>
                    <description>&lt;p&gt;We cannot use set-field action for:&lt;br/&gt;
ETH_TYPE &lt;br/&gt;
ICMPV4_TYPE &lt;br/&gt;
ICMPV4_CODE &lt;br/&gt;
ARP_OP &lt;br/&gt;
ARP_SPA &lt;br/&gt;
ARP_TPA &lt;br/&gt;
ARP_SHA &lt;br/&gt;
ARP_THA &lt;br/&gt;
IPV6_FLABEL &lt;br/&gt;
ICMPV6_TYPE &lt;br/&gt;
ICMPV6_CODE &lt;br/&gt;
IPV6_ND_TARGET &lt;br/&gt;
IPV6_ND_SLL &lt;br/&gt;
IPV6_ND_TLL &lt;/p&gt;

&lt;p&gt;We were testing using XMLs and the odl_tests.py script, which failed.&lt;br/&gt;
When we tried to do it manually over CLI, this is the output:&lt;/p&gt;

&lt;p&gt;mininet@mininet-vm:~$ sudo ovs-ofctl &lt;del&gt;O OpenFlow13 add-flow s1 &quot;dl_type=0x800,table=2,nw_src=1.2.3.4/24,metadata=12345,actions=set_field:0x86DD&lt;/del&gt;&amp;gt;dl_type&quot;&lt;br/&gt;
ovs-ofctl: dl_type is read-only&lt;/p&gt;

&lt;p&gt;mininet@mininet-vm:~$ sudo ovs-ofctl &lt;del&gt;O OpenFlow13 add-flow s1 &quot;table=2,priority=2,dl_type=0x86DD,dl_dst=aa:bb:cc:00:64:00,nw_proto=1,actions=set_field:7&lt;/del&gt;&amp;gt;icmp_code&quot;&lt;br/&gt;
ovs-ofctl: icmp_code is read-only&lt;/p&gt;

&lt;p&gt;mininet@mininet-vm:~$ sudo ovs-ofctl &lt;del&gt;O OpenFlow13 add-flow s1 &quot;table=2,priority=2,dl_type=0x86DD,dl_dst=aa:bb:cc:00:64:00,nw_proto=1,actions=set_field:7&lt;/del&gt;&amp;gt;icmp_code&quot;&lt;br/&gt;
ovs-ofctl: icmp_code is read-only&lt;/p&gt;

&lt;p&gt;and so on.&lt;/p&gt;

&lt;p&gt;Version Info:&lt;br/&gt;
mininet@mininet-vm:~/removeMDFlow-test-scripts$ ovs-ofctl -V&lt;br/&gt;
ovs-ofctl (Open vSwitch) 2.0.0&lt;br/&gt;
Compiled Nov 11 2013 12:25:52&lt;br/&gt;
OpenFlow versions 0x1:0x4&lt;br/&gt;
mininet@mininet-vm:~/removeMDFlow-test-scripts$ mn --version&lt;br/&gt;
2.1.0&lt;br/&gt;
krish@krish-Ubuntu32:~/Desktop/shared/E_DRIVE/openflowplugin$ git log&lt;br/&gt;
commit 49029e5d7978e4bf9f9c56f1ec98a264f61ff203&lt;br/&gt;
Author: Ed Warnicke &amp;lt;eaw@cisco.com&amp;gt;&lt;br/&gt;
Date:   Sat Jan 25 21:33:22 2014 -0600&lt;/p&gt;

&lt;p&gt;    Turned down logging in ErrorTranslator from ERROR to DEBUG&lt;/p&gt;

&lt;p&gt;    Change-Id: I296451951e41320def91234b67671211948f5908&lt;br/&gt;
    Signed-off-by: Ed Warnicke &amp;lt;eaw@cisco.com&amp;gt;&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Linux&lt;br/&gt;
Platform: PC&lt;/p&gt;</environment>
        <key id="27327">OPNFLWPLUG-59</key>
            <summary>Set-field cannot update read-only actions on OVS</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="krishnan.k.iyer@gmail.com">Krishnan Iyer</assignee>
                                    <reporter username="krishnan.k.iyer@gmail.com">Krishnan Iyer</reporter>
                        <labels>
                    </labels>
                <created>Mon, 27 Jan 2014 08:30:35 +0000</created>
                <updated>Mon, 27 Sep 2021 09:01:04 +0000</updated>
                            <resolved>Mon, 24 Mar 2014 21:10:19 +0000</resolved>
                                                                    <component>General</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>6</watches>
                                                                                                                <comments>
                            <comment id="55307" author="jyotsna.priya1@tcs.com" created="Wed, 29 Jan 2014 12:53:15 +0000"  >&lt;p&gt;If the flow is being written from CLI, what is the role of controller in this? &lt;/p&gt;

&lt;p&gt;I think the openvswitch code is working as intended and this is an invalid scenario: Try to write the set field that are read-only. &lt;/p&gt;

&lt;p&gt;The set-field action parameters are set as read-only in openvswitch. In file openvswitch&amp;lt;version&amp;gt;/lib/ofp-parse.c, method set_field_parse(), the code checks for the those variables that are not writable and returns fatal error if they are read-only.&lt;/p&gt;

&lt;p&gt;Please update that my understanding is correct on this or not?&lt;/p&gt;</comment>
                            <comment id="55308" author="krishnan.k.iyer@gmail.com" created="Mon, 3 Feb 2014 05:44:38 +0000"  >&lt;p&gt;Hi Jyotsna,&lt;/p&gt;

&lt;p&gt;&quot;If the flow is being written from CLI, what is the role of controller in this?&quot;&lt;br/&gt;
I just tested using the CLI, and also with the restconf API.&lt;/p&gt;


&lt;p&gt;&quot;I think the openvswitch code is working as intended and this is an invalid scenario: Try to write the set field that are read-only. &quot;&lt;br/&gt;
The OpenFlow 1.3.2 spec says that we should be able to set the values for these fields.&lt;/p&gt;

&lt;p&gt;&quot;The set-field action parameters are set as read-only in openvswitch. In file openvswitch&amp;lt;version&amp;gt;/lib/ofp-parse.c, method set_field_parse(), the code checks for the those variables that are not writable and returns fatal error if they are read-only.&lt;br/&gt;
Please update that my understanding is correct on this or not?&quot;&lt;br/&gt;
So, if this is the case, either OVS needs to make them read-write ot the OF spec should be updated.&lt;br/&gt;
Thanks.&lt;/p&gt;</comment>
                            <comment id="55309" author="krishnan.k.iyer@gmail.com" created="Mon, 3 Feb 2014 05:46:44 +0000"  >&lt;p&gt;Also, restconf sends an OK/Success when tested. PUT/GET succeeds.&lt;br/&gt;
It should return an error code if the field is read-only.&lt;br/&gt;
This part is an OpenflowPlugin bug.&lt;/p&gt;</comment>
                            <comment id="55310" author="jyotsna.priya1@tcs.com" created="Thu, 6 Feb 2014 13:00:55 +0000"  >&lt;p&gt;&amp;gt;&quot;The OpenFlow 1.3.2 spec says that we should be able to set the values for these fields&quot;&lt;br/&gt;
You are right. In openflow 1.3.2 spec, it is mentioned that all fi�elds in&lt;br/&gt;
ofp_table_features may be requested to be changed by the controller with the exception of the max_entries_fi�eld, this is read only and returned by the switch.&lt;/p&gt;

&lt;p&gt;So this is ovs bug and not of openflowplugin. OVS needs to make them read-write.&lt;/p&gt;</comment>
                            <comment id="55311" author="jyotsna.priya1@tcs.com" created="Mon, 10 Feb 2014 07:20:33 +0000"  >&lt;p&gt;Hi Krishnan,&lt;/p&gt;

&lt;p&gt;Can you please provide the url and xml file that you used in restclient.&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;</comment>
                            <comment id="55312" author="krishnan.k.iyer@gmail.com" created="Wed, 5 Mar 2014 04:04:07 +0000"  >&lt;p&gt;One of the example XML&lt;/p&gt;</comment>
                            <comment id="55319" author="krishnan.k.iyer@gmail.com" created="Wed, 5 Mar 2014 04:04:07 +0000"  >&lt;p&gt;Attachment f129.xml has been added with description: ICMPv4 Type XML&lt;/p&gt;</comment>
                            <comment id="55313" author="mirehak@cisco.com" created="Wed, 5 Mar 2014 13:40:07 +0000"  >&lt;p&gt;On cpqd switch the attached xml works. But on ovs it fails and corresponding error message arrives from switch. This message gets translated into MD-SAL model and published to MD-SAL. &lt;/p&gt;

&lt;p&gt;I believe that controller is processing this scenario as expected.&lt;/p&gt;

&lt;p&gt;Krishnan, could you please mark this bug as resolved and eventually file a bug into openvswitch.org?&lt;/p&gt;

&lt;p&gt;Thank you.&lt;/p&gt;</comment>
                            <comment id="55314" author="abhijit2511" created="Mon, 24 Mar 2014 15:29:36 +0000"  >&lt;p&gt;Any update on this Krishnan?&lt;/p&gt;</comment>
                            <comment id="55315" author="krishnan.k.iyer@gmail.com" created="Mon, 24 Mar 2014 15:40:11 +0000"  >&lt;p&gt;Abhijit/Michal,&lt;br/&gt;
Have marked the bug as fixed.&lt;br/&gt;
Am trying to find how to file a bug on openvswitch.org.&lt;br/&gt;
Once I file there,will cross-reference it over here.&lt;/p&gt;</comment>
                            <comment id="55316" author="krishnan.k.iyer@gmail.com" created="Mon, 24 Mar 2014 17:05:54 +0000"  >&lt;p&gt;Have emailed bugs@openvswitch.org with the details.&lt;/p&gt;</comment>
                            <comment id="55317" author="blp@nicira.com" created="Mon, 24 Mar 2014 21:09:31 +0000"  >&lt;p&gt;(In reply to Krishnan Iyer from comment #2)&lt;br/&gt;
&amp;gt;&amp;gt; &quot;I think the openvswitch code is working as intended and this is an invalid&lt;br/&gt;
&amp;gt; scenario: Try to write the set field that are read-only. &quot;&lt;br/&gt;
&amp;gt; The OpenFlow 1.3.2 spec says that we should be able to set the values for&lt;br/&gt;
&amp;gt; these fields.&lt;/p&gt;

&lt;p&gt;This is some kind of misunderstanding.  Here&apos;s what OpenFlow 1.3.3 says in section 5.12.  Set-Field is clearly optional:&lt;/p&gt;

&lt;p&gt;    Optional Action: Set-Field. The various Set-Field actions are&lt;br/&gt;
    identified by their field type and mod- ify the values of&lt;br/&gt;
    respective header fields in the packet. While not strictly&lt;br/&gt;
    required, the support of rewriting various header fields using&lt;br/&gt;
    Set-Field actions greatly increase the usefulness of an OpenFlow&lt;br/&gt;
    implementation.&lt;/p&gt;

&lt;p&gt;Here&apos;s what 7.2.5 Action Structures says:&lt;/p&gt;

&lt;p&gt;    All header fields are valid in the set-field action, as well as&lt;br/&gt;
    the OXM_OF_TUNNEL_ID pipeline field, and can be used if the switch&lt;br/&gt;
    support them.&lt;/p&gt;</comment>
                            <comment id="55318" author="blp@nicira.com" created="Mon, 24 Mar 2014 21:10:19 +0000"  >&lt;p&gt;(In reply to Jyotsna Priya from comment #4)&lt;br/&gt;
&amp;gt; &amp;gt;&quot;The OpenFlow 1.3.2 spec says that we should be able to set the values for these fields&quot;&lt;br/&gt;
&amp;gt; You are right. In openflow 1.3.2 spec, it is mentioned that all fi�elds in&lt;br/&gt;
&amp;gt; ofp_table_features may be requested to be changed by the controller with the&lt;br/&gt;
&amp;gt; exception of the max_entries_fi�eld, this is read only and returned by the&lt;br/&gt;
&amp;gt; switch.&lt;br/&gt;
&amp;gt; &lt;br/&gt;
&amp;gt; So this is ovs bug and not of openflowplugin. OVS needs to make them&lt;br/&gt;
&amp;gt; read-write.&lt;/p&gt;

&lt;p&gt;This is wrong.  ofp_table_features allows one to find out the switch&apos;s features, including whether it can write various fields, and to request changes to the switch&apos;s features.  The text in 1.3.2 means that the controller can request a change to any feature, but it doesn&apos;t mean that the switch must be able to implement any change that the controller requests.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="13853" name="f129.xml" size="1709" author="krishnan.k.iyer@gmail.com" created="Wed, 5 Mar 2014 04:04:07 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>381</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=381]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i02ytb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>