Hi,
I had code that inserts flow rules in the switches once the feature is
installed at the controller. It was and still is working fine for OF1.0 but I
had to upgrade to OF1.3 to make use of multible flow tables.
If I replace the match so that the flow matches everything, the rule is
inserted fine so I'm assuming the match is what creates the issue.
private Flow blockFlow(Short tableId, int priority) {
FlowBuilder Flow = new FlowBuilder() // /**Flow to hold DNS
rule*/ //
.setTableId(tableId) //
.setFlowName("DropDNSx");
Flow.setId(new FlowId(Long.toString(1333337))); /**Set flow ID*/
// Match on port and ip
UdpMatch dnsPort = new UdpMatchBuilder().setUdpSourcePort(new
PortNumber(portNum)).build();
Ipv4MatchArbitraryBitMask SrcIp = new
Ipv4MatchArbitraryBitMaskBuilder().setIpv4SourceAddressNoMask(SrcIP).build();
Match Match = new
MatchBuilder().setLayer4Match(Port).setLayer3Match(SrcIp).build();
List<Action> actions = new ArrayList<>();
actions.add(getDropAction());
// Create an Apply Action
ApplyActions applyActions = new ApplyActionsBuilder() //
.setAction(ImmutableList.copyOf(actions)) //
.build();
// Wrap our Apply Action in an Instruction
Instruction applyActionsInstruction = new InstructionBuilder() //
.setOrder(0)
.setInstruction(new ApplyActionsCaseBuilder()//
.setApplyActions(applyActions) //
.build()) //
.build();
// Put our Instruction in a list of Instructions
Flow
.setMatch(Match) //
.setInstructions(new InstructionsBuilder() //
.setInstruction(ImmutableList.of(applyActionsInstruction))
//
.build()) //
.setPriority(priority) //
.setBufferId(OFConstants.OFP_NO_BUFFER) //
.setHardTimeout(flowHardTimeout) //
.setIdleTimeout(flowIdleTimeout) //
.setCookie(new
FlowCookie(BigInteger.valueOf(flowCookieInc.getAndIncrement())))
.setFlags(new FlowModFlags(false, false, false, false, false));
LOG.info("Jacob, flow blocked...");
return dnsxFlow.build();
}
_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev