def test_flow(self): tables = [ -1, pb.FlowMod.VLAN, pb.FlowMod.TERM_MAC, pb.FlowMod.MPLS1, pb.FlowMod.UNICAST_ROUTING, pb.FlowMod.BRIDGING, pb.FlowMod.POLICY_ACL, ] for dp_type in DP_TYPES: for table in tables: self.assertIsNotNone(ofc.flow(dp_type, table))
def on_flow_mod(self, evt): """ Process FlowMod event """ mod = evt.msg if fibclog.dump_msg(): _LOG.debug("%s", mod) try: dpath, mode = _find_dp_by_re_id(mod.re_id) if dpath is not None: fibccnv.conv_flow(mod, fibcdbm.portmap()) func = ofc.flow(mode, mod.table) func(dpath, mod, ofctl) sleep(_SEND_MOD_WAIT_SEC) except Exception as expt: _LOG.exception(expt)
def on_dp(self, evt): """ Process Dp Entre event """ if not evt.enter: return try: mode = fibcdbm.dps().get_mode(evt.dp.id, "default") flow = ofc.flow(mode, -1) group = ofc.group(mode, -1) flow(evt.dp, None, ofctl) sleep(_SEND_MOD_WAIT_SEC) group(evt.dp, None, ofctl) except Exception as expt: _LOG.exception(expt)