Uploaded image for project: 'CORD'
  1. CORD
  2. CORD-2694

ONOS fails to install routes that differ only in netmask

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: ONOS
    • Labels:
      None
    • Story Points:
      1

      Description

      When there are routes that are different only in netmask, only one of them gets installed. The other one stays in PENDING_ADD state.

      Examples:

      deviceId=of:0000000059120111, flowRuleCount=532
          ADDED, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x70000105], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x70000105], transition=TABLE:60]
      deviceId=of:0000000059120112, flowRuleCount=532
          PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60]
          ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60]
      deviceId=of:0000000059120113, flowRuleCount=523
          PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x7000014c], transition=TABLE:60]
          ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x7000014c], transition=TABLE:60]
      deviceId=of:0000000059120114, flowRuleCount=531
          PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x700001af], transition=TABLE:60]
          ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x700001af], transition=TABLE:60]
      deviceId=of:0000000059160117, flowRuleCount=442
          PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x7000010b], transition=TABLE:60]
          ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x7000010b], transition=TABLE:60]
      deviceId=of:0000000077120115, flowRuleCount=69
      deviceId=of:0000000077120116, flowRuleCount=74
      
      deviceId=of:0000000059120111, flowRuleCount=531
          ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x700000fb], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x700000fb], transition=TABLE:60]
      deviceId=of:0000000059120112, flowRuleCount=531
          ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60]
      deviceId=of:0000000059120113, flowRuleCount=522
          ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x70000159], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x70000159], transition=TABLE:60]
      deviceId=of:0000000059120114, flowRuleCount=530
          ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x700001b4], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x700001b4], transition=TABLE:60]
      deviceId=of:0000000059160117, flowRuleCount=441
          ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x70000113], transition=TABLE:60]
          PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x70000113], transition=TABLE:60]
      deviceId=of:0000000077120115, flowRuleCount=69
      deviceId=of:0000000077120116, flowRuleCount=74
      

      As shown, it happens for both IPv4 and IPv6.

      Relevant log messages:

      2018-02-04 10:28:13,430 | ERROR | onos-of-worker-3 | OFChannelHandler                 | 180 - org.onosproject.onos-protocols-openflow-ctl - 1.11.2.rc3 | OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)])) from switch DefaultSwitchHandshaker{session=192.168.151.12:53465, dpid=00:00:00:00:59:12:01:12} in state ACTIVE
      2018-02-04 10:28:13,430 | WARN  | vent-error-msg-0 | OpenFlowRuleProvider             | 183 - org.onosproject.onos-providers-openflow-flow - 1.11.2.rc3 | Received error message OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)])) from 00:00:00:00:59:12:01:12
      2018-02-04 10:28:13,430 | ERROR | vent-error-msg-0 | OpenFlowRuleProvider             | 183 - org.onosproject.onos-providers-openflow-flow - 1.11.2.rc3 | No matching batch for this error: OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)]))
      

        Attachments

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

          Activity

            People

            Assignee:
            sauravdas Saurav Das
            Reporter:
            dbg Daniel Ginsburg
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes