<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Problem with Flow-Mods instructions on HP VAN SDN in Software Defined Networking</title>
    <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6398751#M168</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Following the HP SDN workshop tutorial, I have a problem when my controller (HP VAN SDN) try to installing Flow-Mods in my physical switch (HP 3800-24 G).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The openFlow version used by the switch is 1.3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Methode that instert Flow-Mods &amp;nbsp;(given by the tuto) is:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;private&lt;/STRONG&gt; &lt;STRONG&gt;void&lt;/STRONG&gt; installDhcpFlowMod(DataPathId dp, ProtocolVersion version) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; OfmMutableFlowMod flowMod67, flowMod68;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Action action;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MutableMatch match67, match68; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67 = MatchFactory.&lt;EM&gt;createMatch&lt;/EM&gt;(version);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;UDP_DST&lt;/EM&gt;, PortNumber.&lt;EM&gt;valueOf&lt;/EM&gt;(67)));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;IP_PROTO&lt;/EM&gt;, IpProtocol.&lt;EM&gt;UDP&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;ETH_TYPE&lt;/EM&gt;, EthernetType.&lt;EM&gt;IPv4&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68 = MatchFactory.&lt;EM&gt;createMatch&lt;/EM&gt;(version);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;UDP_DST&lt;/EM&gt;, PortNumber.&lt;EM&gt;valueOf&lt;/EM&gt;(68)));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;IP_PROTO&lt;/EM&gt;, IpProtocol.&lt;EM&gt;UDP&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;ETH_TYPE&lt;/EM&gt;, EthernetType.&lt;EM&gt;IPv4&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;action = ActionFactory.&lt;EM&gt;createAction&lt;/EM&gt;(version, ActionType.&lt;EM&gt;OUTPUT&lt;/EM&gt;, Port.&lt;EM&gt;CONTROLLER&lt;/EM&gt;, ActOutput.&lt;EM&gt;CONTROLLER_NO_BUFFER&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // create flow-&lt;U&gt;mod&lt;/U&gt; and add all required fields&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67 = (OfmMutableFlowMod) MessageFactory.&lt;EM&gt;create&lt;/EM&gt;(version, MessageType.&lt;EM&gt;FLOW_MOD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.match((Match) match67.toImmutable());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.hardTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.idleTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.priority(33333);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.command(FlowModCommand.&lt;EM&gt;ADD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.bufferId(BufferId.&lt;EM&gt;NO_BUFFER&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.outPort(Port.&lt;EM&gt;NONE&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.cookie(0x1234);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68 = (OfmMutableFlowMod) MessageFactory.&lt;EM&gt;create&lt;/EM&gt;(version, MessageType.&lt;EM&gt;FLOW_MOD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.match((Match) match68.toImmutable());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.hardTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.idleTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.addAction(action);&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.cookie(0x1235);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;try&lt;/STRONG&gt; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Send our flow-&lt;U&gt;mods&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; controllerService.sendFlowMod((OfmFlowMod) flowMod67.toImmutable(), dp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; controllerService.sendFlowMod((OfmFlowMod) flowMod68.toImmutable(), dp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; } &lt;STRONG&gt;catch&lt;/STRONG&gt; (OpenflowException e) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ogger.warn("MYFIRST: Failed to install DHCP FlowMod: " + e.getMessage().toString());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The controller bundle failed with the follwing instruction:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;flowMod67.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;or&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;flowMod68.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you know why ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Moreover, do you know why this code is using two different “flowMod” (67 and 68) Is it depending on the kind of switch.&lt;/P&gt;&lt;P&gt;In fact this tuto is suppose to be executed on Mininet. I use it with physical HP switch.&amp;nbsp; Do you think it could be the problem ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Serge&lt;/P&gt;</description>
    <pubDate>Tue, 04 Mar 2014 07:59:32 GMT</pubDate>
    <dc:creator>sbotkine</dc:creator>
    <dc:date>2014-03-04T07:59:32Z</dc:date>
    <item>
      <title>Problem with Flow-Mods instructions on HP VAN SDN</title>
      <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6398751#M168</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Following the HP SDN workshop tutorial, I have a problem when my controller (HP VAN SDN) try to installing Flow-Mods in my physical switch (HP 3800-24 G).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The openFlow version used by the switch is 1.3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Methode that instert Flow-Mods &amp;nbsp;(given by the tuto) is:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;private&lt;/STRONG&gt; &lt;STRONG&gt;void&lt;/STRONG&gt; installDhcpFlowMod(DataPathId dp, ProtocolVersion version) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; OfmMutableFlowMod flowMod67, flowMod68;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Action action;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MutableMatch match67, match68; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67 = MatchFactory.&lt;EM&gt;createMatch&lt;/EM&gt;(version);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;UDP_DST&lt;/EM&gt;, PortNumber.&lt;EM&gt;valueOf&lt;/EM&gt;(67)));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;IP_PROTO&lt;/EM&gt;, IpProtocol.&lt;EM&gt;UDP&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match67.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;ETH_TYPE&lt;/EM&gt;, EthernetType.&lt;EM&gt;IPv4&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68 = MatchFactory.&lt;EM&gt;createMatch&lt;/EM&gt;(version);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;UDP_DST&lt;/EM&gt;, PortNumber.&lt;EM&gt;valueOf&lt;/EM&gt;(68)));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;IP_PROTO&lt;/EM&gt;, IpProtocol.&lt;EM&gt;UDP&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; match68.addField(FieldFactory.&lt;EM&gt;createBasicField&lt;/EM&gt;(version, OxmBasicFieldType.&lt;EM&gt;ETH_TYPE&lt;/EM&gt;, EthernetType.&lt;EM&gt;IPv4&lt;/EM&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;action = ActionFactory.&lt;EM&gt;createAction&lt;/EM&gt;(version, ActionType.&lt;EM&gt;OUTPUT&lt;/EM&gt;, Port.&lt;EM&gt;CONTROLLER&lt;/EM&gt;, ActOutput.&lt;EM&gt;CONTROLLER_NO_BUFFER&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // create flow-&lt;U&gt;mod&lt;/U&gt; and add all required fields&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67 = (OfmMutableFlowMod) MessageFactory.&lt;EM&gt;create&lt;/EM&gt;(version, MessageType.&lt;EM&gt;FLOW_MOD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.match((Match) match67.toImmutable());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.hardTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.idleTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.priority(33333);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.command(FlowModCommand.&lt;EM&gt;ADD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.bufferId(BufferId.&lt;EM&gt;NO_BUFFER&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.outPort(Port.&lt;EM&gt;NONE&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod67.cookie(0x1234);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68 = (OfmMutableFlowMod) MessageFactory.&lt;EM&gt;create&lt;/EM&gt;(version, MessageType.&lt;EM&gt;FLOW_MOD&lt;/EM&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.match((Match) match68.toImmutable());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.hardTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.idleTimeout(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.addAction(action);&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flowMod68.cookie(0x1235);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;try&lt;/STRONG&gt; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Send our flow-&lt;U&gt;mods&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; controllerService.sendFlowMod((OfmFlowMod) flowMod67.toImmutable(), dp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; controllerService.sendFlowMod((OfmFlowMod) flowMod68.toImmutable(), dp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; } &lt;STRONG&gt;catch&lt;/STRONG&gt; (OpenflowException e) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ogger.warn("MYFIRST: Failed to install DHCP FlowMod: " + e.getMessage().toString());&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The controller bundle failed with the follwing instruction:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;flowMod67.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;or&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;flowMod68.addAction(action);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you know why ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Moreover, do you know why this code is using two different “flowMod” (67 and 68) Is it depending on the kind of switch.&lt;/P&gt;&lt;P&gt;In fact this tuto is suppose to be executed on Mininet. I use it with physical HP switch.&amp;nbsp; Do you think it could be the problem ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Serge&lt;/P&gt;</description>
      <pubDate>Tue, 04 Mar 2014 07:59:32 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6398751#M168</guid>
      <dc:creator>sbotkine</dc:creator>
      <dc:date>2014-03-04T07:59:32Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Flow-Mods instructions on HP VAN SDN</title>
      <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6398931#M169</link>
      <description>&lt;P&gt;Code you are using is OF 1.0 specific. Controller does provide some level of abstractions (for example match is universal even there are differences between versions), but this one needs to be version specific. With OF 1.0 you are assigning actions with Flow Mod, but OF 1.3 is using instructions. Those with Write-Actions for example contain actions. So I suggest to check here agains negotiated version (or version from Packet IN event) and either assign action directly or construct OF 1.3 instruction with action.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tomas&lt;/P&gt;</description>
      <pubDate>Tue, 04 Mar 2014 11:16:08 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6398931#M169</guid>
      <dc:creator>Tomas_Kubica</dc:creator>
      <dc:date>2014-03-04T11:16:08Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Flow-Mods instructions on HP VAN SDN</title>
      <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6400133#M170</link>
      <description>&lt;P&gt;Hello Tomas,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Code you are using is OF 1.0 specific. Controller does provide some level of abstractions (for example match is universal even there are differences between versions), but this one needs to be version specific. With OF 1.0 you are assigning actions with Flow Mod, but OF 1.3 is using instructions. Those with Write-Actions for example contain actions. So I suggest to check here agains negotiated version (or version from Packet IN event) and either assign action directly or construct OF 1.3 instruction with action.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ok, I tried to replace the previous code with the next one by using "Instructions" to add actions. Being not an expert with "Instructions", I took as a starting point the example in page 27 int the HPSDNControllerProgrammingGuide.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Here is the code:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;final&lt;/SPAN&gt; ProtocolVersion PV = ProtocolVersion.&lt;SPAN&gt;V_1_3&lt;/SPAN&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; OfmMutableFlowMod &lt;SPAN&gt;flowMod&lt;/SPAN&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; MutableMatch match = MatchFactory.createMatch(PV);&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; match = MatchFactory.createMatch(version);&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; match.addField(FieldFactory.createBasicField(PV, OxmBasicFieldType.&lt;SPAN&gt;UDP_DST&lt;/SPAN&gt;, PortNumber.valueOf(67)));&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; match.addField(FieldFactory.createBasicField(PV, OxmBasicFieldType.&lt;SPAN&gt;IP_PROTO&lt;/SPAN&gt;, IpProtocol.&lt;SPAN&gt;UDP&lt;/SPAN&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; match.addField(FieldFactory.createBasicField(PV, OxmBasicFieldType.&lt;SPAN&gt;ETH_TYPE&lt;/SPAN&gt;, EthernetType.&lt;SPAN&gt;IPv4&lt;/SPAN&gt;));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; final&lt;/SPAN&gt; &lt;SPAN&gt;long&lt;/SPAN&gt; &lt;SPAN&gt;INS_META_MASK&lt;/SPAN&gt; = 0xffff0000;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &lt;SPAN&gt;final&lt;/SPAN&gt; &lt;SPAN&gt;long&lt;/SPAN&gt; &lt;SPAN&gt;INS_META_DATA&lt;/SPAN&gt; = 0x33ab0000;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; List&amp;lt;Instruction&amp;gt; &lt;SPAN&gt;ins&lt;/SPAN&gt; = &lt;SPAN&gt;new&lt;/SPAN&gt; ArrayList&amp;lt;Instruction&amp;gt;();&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;ins.add((Instruction) createInstruction(PV, InstructionType.WRITE_METADATA,INS_META_DATA, INS_META_MASK));&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;InstrMutableAction apply = createMutableInstruction(PV,InstructionType.APPLY_ACTIONS);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;apply.addAction(createAction(PV, ActionType.OUTPUT));&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;ins.add((Instruction) apply.toImmutable());&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;flowMod = (OfmMutableFlowMod) MessageFactory.create(PV, MessageType.FLOW_MOD);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;flowMod.match((Match) match.toImmutable());&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;flowMod.hardTimeout(0);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;flowMod.idleTimeout(0);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;for (Instruction ins: result)&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; flowMod.addInstruction((com.hp.of.lib.instr.Instruction) ins);&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;flowMod.priority(33333);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However my application stoped after the instruction:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;ins.add((Instruction) createInstruction(PV, InstructionType.WRITE_METADATA,INS_META_DATA, INS_META_MASK));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Do you have an idea ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Regards,&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Serge&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 05 Mar 2014 07:48:10 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6400133#M170</guid>
      <dc:creator>sbotkine</dc:creator>
      <dc:date>2014-03-05T07:48:10Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Flow-Mods instructions on HP VAN SDN</title>
      <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6400217#M171</link>
      <description>&lt;P&gt;Forget my previous message, I found the problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In fact I made the wrong import for "Instruction"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I did:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;import com.hp.util.Instruction&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;instead of:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;import com.hp.of.lib.Intstruction.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Serge&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 05 Mar 2014 08:26:38 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6400217#M171</guid>
      <dc:creator>sbotkine</dc:creator>
      <dc:date>2014-03-05T08:26:38Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with Flow-Mods instructions on HP VAN SDN</title>
      <link>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6409956#M189</link>
      <description>&lt;P&gt;Hello Serge,&lt;BR /&gt;&lt;BR /&gt;From the post we understand that your problem is resolved.&lt;BR /&gt;Please do let us know if you need further assistance.&lt;BR /&gt;&lt;BR /&gt;Please feel free to reply incase you have more questions around the same topic or open a new thread if new topic.&lt;BR /&gt;&lt;BR /&gt;Thanks&lt;BR /&gt;HP SDN Team&lt;/P&gt;</description>
      <pubDate>Wed, 12 Mar 2014 11:52:59 GMT</pubDate>
      <guid>https://community.hpe.com/t5/software-defined-networking/problem-with-flow-mods-instructions-on-hp-van-sdn/m-p/6409956#M189</guid>
      <dc:creator>sdnindia</dc:creator>
      <dc:date>2014-03-12T11:52:59Z</dc:date>
    </item>
  </channel>
</rss>

