Uploaded image for project: 'OpenFlowPlugin'
  1. OpenFlowPlugin
  2. OPNFLWPLUG-172

Bad pre-req for PCP match resulting in OFPBAC_MATCH_INCONSISTENT in OpenFlowPluginTestCommandProvider

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Done
    • None
    • None
    • General
    • None
    • Operating System: Mac OS
      Platform: PC

    • 1072

    Description

      The f80 function in OpenFlowPluginTestCommandProvider doesn't adhere to the field OXM_OF_VLAN_PCP pre-requisite of containing a VID match. I filed a separate bug from OPNFLWPLUG-171 just in case there was a specific use case for this function and I should add a new function to the test that will pass on OVS.

      Field: OXM_OF_VLAN_PCP
      Dependency: VLAN VID!=NONE
      Reference: see table 10, section A.2.3.5 for validation

      Current:
      ---------
      case "f80":
      id += 80;
      flow.setMatch(createMatch1().build());
      flow.setInstructions(createAppyActionInstruction88().build());
      break;

      Result: OFPBAC_MATCH_INCONSISTENT
      ---------------------------------
      2014-05-13T14:12:58.542Z|1970472|ofp_actions|WARN|set_field vlan_pcp lacks correct prerequisities
      2014-05-13T14:12:58.542Z|1970473|vconn|DBG|tcp:172.16.86.1:6633: received: OFPT_FLOW_MOD (OF1.3) (xid=0x177): **decode error: OFPBAC_MATCH_INCONSISTENT**
      2014-05-13T14:12:58.542Z|1970474|ofp_actions|WARN|set_field vlan_pcp lacks correct prerequisities
      2014-05-13T14:12:58.542Z|1970475|connmgr|INFO|br-int<->tcp:172.16.86.1:6633: sending OFPBAC_MATCH_INCONSISTENT error reply to OFPT_FLOW_MOD message
      2014-05-13T14:12:58.542Z|1970476|vconn|DBG|tcp:172.16.86.1:6633: sent (Success): OFPT_ERROR (OF1.3) (xid=0x177): OFPBAC_MATCH_INCONSISTENT
      OFPT_FLOW_MOD (OF1.3) (xid=0x177):

      -Changing the function to (along with the patch https://git.opendaylight.org/gerrit/#/c/7371/ ) results in a successful flowmod:
      ---------------
      case "f80":
      id += 80;
      flow.setMatch(createVlanMatch().build());
      flow.setInstructions(createAppyActionInstruction88().build());
      break;

      Resulting successful flowmod via f80() OpenFlowPluginTestCommandProvider
      ------------------------------------------------------------------------
      2014-05-13T14:24:31.043Z|1982264|vconn|DBG|tcp:172.16.86.1:6633: received: OFPST_FLOW request (OF1.3) (xid=0x49): table=2 dl_vlan=10,dl_vlan_pcp=3
      2014-05-13T14:24:31.043Z|1982265|vconn|DBG|tcp:172.16.86.1:6633: sent (Success): OFPST_FLOW reply (OF1.3) (xid=0x49):
      2014-05-13T14:24:31.049Z|1982266|poll_loop|DBG|wakeup due to [POLLIN] on fd 29 (172.16.86.144:48786<->172.16.86.1:6633) at lib/stream-fd.c:124 (0% CPU usage)
      2014-05-13T14:24:31.050Z|1982267|vconn|DBG|tcp:172.16.86.1:6633: received: OFPT_FLOW_MOD (OF1.3) (xid=0x4a): ADD table:2 priority=2,dl_vlan=10,dl_vlan_pcp=3 cookie:0xa send_flow_rem actions=set_field:4->vlan_pcp

      Will update with the ticket with a patch in a few minutes.

      Thanks,
      -Brent

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            brent.salisbury@gmail.com Brent Salisbury
            brent.salisbury@gmail.com Brent Salisbury
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: