2 * Copyright (c) 2016 Red Hat, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.netvirt.aclservice.tests
10 import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
11 import org.opendaylight.genius.mdsalutil.FlowEntity
12 import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
13 import org.opendaylight.genius.mdsalutil.matches.MatchArpSha
14 import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType
15 import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6
16 import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol
17 import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort
18 import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort
19 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress
20 import org.opendaylight.genius.mdsalutil.nxmatches.NxMatchRegister
21 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg6
22 import org.opendaylight.genius.mdsalutil.MetaDataUtil
23 import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
25 class FlowEntryObjectsBase {
27 protected def fixedFlowsPort1() {
28 #[ fixedIngressFlowsPort1, fixedEgressFlowsPort1 ]
31 protected def fixedIngressFlowsPort1() {
33 new FlowEntity(123bi) => [
35 flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
37 instructionInfoList = #[
38 new InstructionApplyActions(#[
39 new ActionNxResubmit(220 as short)
43 new MatchEthernetType(2048L),
44 new MatchIpProtocol(17 as short),
45 new MatchUdpDestinationPort(68),
46 new MatchUdpSourcePort(67),
47 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
50 tableId = 241 as short
52 new FlowEntity(123bi) => [
54 flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
56 instructionInfoList = #[
57 new InstructionApplyActions(#[
58 new ActionNxResubmit(220 as short)
62 new MatchEthernetType(34525L),
63 new MatchIpProtocol(17 as short),
64 new MatchUdpDestinationPort(546),
65 new MatchUdpSourcePort(547),
66 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
69 tableId = 241 as short
71 new FlowEntity(123bi) => [
73 flowId = "Ingress_ICMPv6_123_987_130_Permit_"
75 instructionInfoList = #[
76 new InstructionApplyActions(#[
77 new ActionNxResubmit(220 as short)
81 new MatchEthernetType(34525L),
82 new MatchIpProtocol(58 as short),
83 new MatchIcmpv6(130 as short, 0 as short),
84 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
87 tableId = 241 as short
89 new FlowEntity(123bi) => [
91 flowId = "Ingress_ICMPv6_123_987_135_Permit_"
93 instructionInfoList = #[
94 new InstructionApplyActions(#[
95 new ActionNxResubmit(220 as short)
99 new MatchEthernetType(34525L),
100 new MatchIpProtocol(58 as short),
101 new MatchIcmpv6(135 as short, 0 as short),
102 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
105 tableId = 241 as short
107 new FlowEntity(123bi) => [
109 flowId = "Ingress_ICMPv6_123_987_136_Permit_"
111 instructionInfoList = #[
112 new InstructionApplyActions(#[
113 new ActionNxResubmit(220 as short)
117 new MatchEthernetType(34525L),
118 new MatchIpProtocol(58 as short),
119 new MatchIcmpv6(136 as short, 0 as short),
120 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
123 tableId = 241 as short
125 new FlowEntity(123bi) => [
127 flowId = "Ingress_ARP_123_987"
129 instructionInfoList = #[
130 new InstructionApplyActions(#[
131 new ActionNxResubmit(220 as short)
135 new MatchEthernetType(2054L),
136 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
139 tableId = 241 as short
145 protected def fixedEgressFlowsPort1() {
148 new FlowEntity(123bi) => [
150 flowId = "Egress_DHCP_Client_v4123_987__Permit_"
152 instructionInfoList = #[
153 new InstructionApplyActions(#[
154 new ActionNxResubmit(17 as short)
158 new MatchEthernetType(2048L),
159 new MatchIpProtocol(17 as short),
160 new MatchUdpDestinationPort(67),
161 new MatchUdpSourcePort(68),
162 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
165 tableId = 211 as short
167 new FlowEntity(123bi) => [
169 flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
171 instructionInfoList = #[
172 new InstructionApplyActions(#[
173 new ActionNxResubmit(17 as short)
177 new MatchEthernetType(34525L),
178 new MatchIpProtocol(17 as short),
179 new MatchUdpDestinationPort(547),
180 new MatchUdpSourcePort(546),
181 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
184 tableId = 211 as short
186 new FlowEntity(123bi) => [
188 flowId = "Egress_DHCP_Server_v4123_987__Drop_"
190 instructionInfoList = #[
193 new MatchEthernetType(2048L),
194 new MatchIpProtocol(17 as short),
195 new MatchUdpDestinationPort(68),
196 new MatchUdpSourcePort(67),
197 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
200 tableId = 211 as short
202 new FlowEntity(123bi) => [
204 flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
206 instructionInfoList = #[
209 new MatchEthernetType(34525L),
210 new MatchIpProtocol(17 as short),
211 new MatchUdpDestinationPort(546),
212 new MatchUdpSourcePort(547),
213 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
216 tableId = 211 as short
218 new FlowEntity(123bi) => [
220 flowId = "Egress_ICMPv6_123_987_134_Drop_"
222 instructionInfoList = #[
225 new MatchEthernetType(34525L),
226 new MatchIpProtocol(58 as short),
227 new MatchIcmpv6(134 as short, 0 as short),
228 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
231 tableId = 211 as short
233 new FlowEntity(123bi) => [
235 flowId = "Egress_ICMPv6_123_987_133_Permit_"
237 instructionInfoList = #[
238 new InstructionApplyActions(#[
239 new ActionNxResubmit(17 as short)
243 new MatchEthernetType(34525L),
244 new MatchIpProtocol(58 as short),
245 new MatchIcmpv6(133 as short, 0 as short),
246 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
249 tableId = 211 as short
251 new FlowEntity(123bi) => [
253 flowId = "Egress_ICMPv6_123_987_135_Permit_"
255 instructionInfoList = #[
256 new InstructionApplyActions(#[
257 new ActionNxResubmit(17 as short)
261 new MatchEthernetType(34525L),
262 new MatchIpProtocol(58 as short),
263 new MatchIcmpv6(135 as short, 0 as short),
264 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
267 tableId = 211 as short
269 new FlowEntity(123bi) => [
271 flowId = "Egress_ICMPv6_123_987_136_Permit_"
273 instructionInfoList = #[
274 new InstructionApplyActions(#[
275 new ActionNxResubmit(17 as short)
279 new MatchEthernetType(34525L),
280 new MatchIpProtocol(58 as short),
281 new MatchIcmpv6(136 as short, 0 as short),
282 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
285 tableId = 211 as short
287 new FlowEntity(123bi) => [
289 flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F3"
291 instructionInfoList = #[
292 new InstructionApplyActions(#[
293 new ActionNxResubmit(17 as short)
297 new MatchEthernetType(2054L),
298 new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F3")),
299 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
302 tableId = 211 as short
308 protected def fixedIngressFlowsPort2() {
310 new FlowEntity(123bi) => [
312 flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
314 instructionInfoList = #[
315 new InstructionApplyActions(#[
316 new ActionNxResubmit(220 as short)
320 new MatchEthernetType(2048L),
321 new MatchIpProtocol(17 as short),
322 new MatchUdpDestinationPort(68),
323 new MatchUdpSourcePort(67),
324 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
327 tableId = 241 as short
329 new FlowEntity(123bi) => [
331 flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
333 instructionInfoList = #[
334 new InstructionApplyActions(#[
335 new ActionNxResubmit(220 as short)
339 new MatchEthernetType(34525L),
340 new MatchIpProtocol(17 as short),
341 new MatchUdpDestinationPort(546),
342 new MatchUdpSourcePort(547),
343 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
346 tableId = 241 as short
348 new FlowEntity(123bi) => [
350 flowId = "Ingress_ICMPv6_123_987_130_Permit_"
352 instructionInfoList = #[
353 new InstructionApplyActions(#[
354 new ActionNxResubmit(220 as short)
358 new MatchEthernetType(34525L),
359 new MatchIpProtocol(58 as short),
360 new MatchIcmpv6(130 as short, 0 as short),
361 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
364 tableId = 241 as short
366 new FlowEntity(123bi) => [
368 flowId = "Ingress_ICMPv6_123_987_135_Permit_"
370 instructionInfoList = #[
371 new InstructionApplyActions(#[
372 new ActionNxResubmit(220 as short)
376 new MatchEthernetType(34525L),
377 new MatchIpProtocol(58 as short),
378 new MatchIcmpv6(135 as short, 0 as short),
379 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
382 tableId = 241 as short
384 new FlowEntity(123bi) => [
386 flowId = "Ingress_ICMPv6_123_987_136_Permit_"
388 instructionInfoList = #[
389 new InstructionApplyActions(#[
390 new ActionNxResubmit(220 as short)
394 new MatchEthernetType(34525L),
395 new MatchIpProtocol(58 as short),
396 new MatchIcmpv6(136 as short, 0 as short),
397 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
400 tableId = 241 as short
402 new FlowEntity(123bi) => [
404 flowId = "Ingress_ARP_123_987"
406 instructionInfoList = #[
407 new InstructionApplyActions(#[
408 new ActionNxResubmit(220 as short)
412 new MatchEthernetType(2054L),
413 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
416 tableId = 241 as short
421 protected def fixedEgressFlowsPort2 () {
423 new FlowEntity(123bi) => [
425 flowId = "Egress_DHCP_Client_v4123_987__Permit_"
427 instructionInfoList = #[
428 new InstructionApplyActions(#[
429 new ActionNxResubmit(17 as short)
433 new MatchEthernetType(2048L),
434 new MatchIpProtocol(17 as short),
435 new MatchUdpDestinationPort(67 as short),
436 new MatchUdpSourcePort(68 as short),
437 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
440 tableId = 211 as short
442 new FlowEntity(123bi) => [
444 flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
446 instructionInfoList = #[
447 new InstructionApplyActions(#[
448 new ActionNxResubmit(17 as short)
452 new MatchEthernetType(34525L),
453 new MatchIpProtocol(17 as short),
454 new MatchUdpDestinationPort(547 as short),
455 new MatchUdpSourcePort(546 as short),
456 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
459 tableId = 211 as short
461 new FlowEntity(123bi) => [
463 flowId = "Egress_DHCP_Server_v4123_987__Drop_"
465 instructionInfoList = #[
468 new MatchEthernetType(2048L),
469 new MatchIpProtocol(17 as short),
470 new MatchUdpDestinationPort(68 as short),
471 new MatchUdpSourcePort(67 as short),
472 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
475 tableId = 211 as short
477 new FlowEntity(123bi) => [
479 flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
481 instructionInfoList = #[
484 new MatchEthernetType(34525L),
485 new MatchIpProtocol(17 as short),
486 new MatchUdpDestinationPort(546 as short),
487 new MatchUdpSourcePort(547 as short),
488 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
491 tableId = 211 as short
493 new FlowEntity(123bi) => [
495 flowId = "Egress_ICMPv6_123_987_134_Drop_"
497 instructionInfoList = #[
500 new MatchEthernetType(34525L),
501 new MatchIpProtocol(58 as short),
502 new MatchIcmpv6(134 as short, 0 as short),
503 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
506 tableId = 211 as short
508 new FlowEntity(123bi) => [
510 flowId = "Egress_ICMPv6_123_987_133_Permit_"
512 instructionInfoList = #[
513 new InstructionApplyActions(#[
514 new ActionNxResubmit(17 as short)
518 new MatchEthernetType(34525L),
519 new MatchIpProtocol(58 as short),
520 new MatchIcmpv6(133 as short, 0 as short),
521 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
524 tableId = 211 as short
526 new FlowEntity(123bi) => [
528 flowId = "Egress_ICMPv6_123_987_135_Permit_"
530 instructionInfoList = #[
531 new InstructionApplyActions(#[
532 new ActionNxResubmit(17 as short)
536 new MatchEthernetType(34525L),
537 new MatchIpProtocol(58 as short),
538 new MatchIcmpv6(135 as short, 0 as short),
539 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
542 tableId = 211 as short
544 new FlowEntity(123bi) => [
546 flowId = "Egress_ICMPv6_123_987_136_Permit_"
548 instructionInfoList = #[
549 new InstructionApplyActions(#[
550 new ActionNxResubmit(17 as short)
554 new MatchEthernetType(34525L),
555 new MatchIpProtocol(58 as short),
556 new MatchIcmpv6(136 as short, 0 as short),
557 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
560 tableId = 211 as short
562 new FlowEntity(123bi) => [
564 flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F4"
566 instructionInfoList = #[
567 new InstructionApplyActions(#[
568 new ActionNxResubmit(17 as short)
572 new MatchEthernetType(2054L),
573 new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F4")),
574 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
577 tableId = 211 as short
583 protected def fixedIngressFlowsPort3() {
585 new FlowEntity(123bi) => [
587 flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
589 instructionInfoList = #[
590 new InstructionApplyActions(#[
591 new ActionNxResubmit(220 as short)
595 new MatchEthernetType(2048L),
596 new MatchIpProtocol(17 as short),
597 new MatchUdpDestinationPort(68),
598 new MatchUdpSourcePort(67),
599 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
602 tableId = 241 as short
604 new FlowEntity(123bi) => [
606 flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
608 instructionInfoList = #[
609 new InstructionApplyActions(#[
610 new ActionNxResubmit(220 as short)
614 new MatchEthernetType(34525L),
615 new MatchIpProtocol(17 as short),
616 new MatchUdpDestinationPort(546),
617 new MatchUdpSourcePort(547),
618 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
621 tableId = 241 as short
623 new FlowEntity(123bi) => [
625 flowId = "Ingress_ICMPv6_123_987_130_Permit_"
627 instructionInfoList = #[
628 new InstructionApplyActions(#[
629 new ActionNxResubmit(220 as short)
633 new MatchEthernetType(34525L),
634 new MatchIpProtocol(58 as short),
635 new MatchIcmpv6(130 as short, 0 as short),
636 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
639 tableId = 241 as short
641 new FlowEntity(123bi) => [
643 flowId = "Ingress_ICMPv6_123_987_135_Permit_"
645 instructionInfoList = #[
646 new InstructionApplyActions(#[
647 new ActionNxResubmit(220 as short)
651 new MatchEthernetType(34525L),
652 new MatchIpProtocol(58 as short),
653 new MatchIcmpv6(135 as short, 0 as short),
654 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
657 tableId = 241 as short
659 new FlowEntity(123bi) => [
661 flowId = "Ingress_ICMPv6_123_987_136_Permit_"
663 instructionInfoList = #[
664 new InstructionApplyActions(#[
665 new ActionNxResubmit(220 as short)
669 new MatchEthernetType(34525L),
670 new MatchIpProtocol(58 as short),
671 new MatchIcmpv6(136 as short, 0 as short),
672 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
675 tableId = 241 as short
677 new FlowEntity(123bi) => [
679 flowId = "Ingress_ARP_123_987"
681 instructionInfoList = #[
682 new InstructionApplyActions(#[
683 new ActionNxResubmit(220 as short)
687 new MatchEthernetType(2054L),
688 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
691 tableId = 241 as short
696 protected def fixedEgressFlowsPort3 () {
698 new FlowEntity(123bi) => [
700 flowId = "Egress_DHCP_Client_v4123_987__Permit_"
702 instructionInfoList = #[
703 new InstructionApplyActions(#[
704 new ActionNxResubmit(17 as short)
708 new MatchEthernetType(2048L),
709 new MatchIpProtocol(17 as short),
710 new MatchUdpDestinationPort(67),
711 new MatchUdpSourcePort(68),
712 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
715 tableId = 211 as short
717 new FlowEntity(123bi) => [
719 flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
721 instructionInfoList = #[
722 new InstructionApplyActions(#[
723 new ActionNxResubmit(17 as short)
727 new MatchEthernetType(34525L),
728 new MatchIpProtocol(17 as short),
729 new MatchUdpDestinationPort(547),
730 new MatchUdpSourcePort(546),
731 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
734 tableId = 211 as short
736 new FlowEntity(123bi) => [
738 flowId = "Egress_DHCP_Server_v4123_987__Drop_"
740 instructionInfoList = #[
743 new MatchEthernetType(2048L),
744 new MatchIpProtocol(17 as short),
745 new MatchUdpDestinationPort(68),
746 new MatchUdpSourcePort(67),
747 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
750 tableId = 211 as short
752 new FlowEntity(123bi) => [
754 flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
756 instructionInfoList = #[
759 new MatchEthernetType(34525L),
760 new MatchIpProtocol(17 as short),
761 new MatchUdpDestinationPort(546),
762 new MatchUdpSourcePort(547),
763 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
766 tableId = 211 as short
768 new FlowEntity(123bi) => [
770 flowId = "Egress_ICMPv6_123_987_134_Drop_"
772 instructionInfoList = #[
775 new MatchEthernetType(34525L),
776 new MatchIpProtocol(58 as short),
777 new MatchIcmpv6(134 as short, 0 as short),
778 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
781 tableId = 211 as short
783 new FlowEntity(123bi) => [
785 flowId = "Egress_ICMPv6_123_987_133_Permit_"
787 instructionInfoList = #[
788 new InstructionApplyActions(#[
789 new ActionNxResubmit(17 as short)
793 new MatchEthernetType(34525L),
794 new MatchIpProtocol(58 as short),
795 new MatchIcmpv6(133 as short, 0 as short),
796 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
799 tableId = 211 as short
801 new FlowEntity(123bi) => [
803 flowId = "Egress_ICMPv6_123_987_135_Permit_"
805 instructionInfoList = #[
806 new InstructionApplyActions(#[
807 new ActionNxResubmit(17 as short)
811 new MatchEthernetType(34525L),
812 new MatchIpProtocol(58 as short),
813 new MatchIcmpv6(135 as short, 0 as short),
814 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
817 tableId = 211 as short
819 new FlowEntity(123bi) => [
821 flowId = "Egress_ICMPv6_123_987_136_Permit_"
823 instructionInfoList = #[
824 new InstructionApplyActions(#[
825 new ActionNxResubmit(17 as short)
829 new MatchEthernetType(34525L),
830 new MatchIpProtocol(58 as short),
831 new MatchIcmpv6(136 as short, 0 as short),
832 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
835 tableId = 211 as short
837 new FlowEntity(123bi) => [
839 flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F5"
841 instructionInfoList = #[
842 new InstructionApplyActions(#[
843 new ActionNxResubmit(17 as short)
847 new MatchEthernetType(2054L),
848 new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F5")),
849 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
852 tableId = 211 as short
857 static def fixedIngressFlowsPort4() {
859 new FlowEntity(123bi) => [
861 flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
863 instructionInfoList = #[
864 new InstructionApplyActions(#[
865 new ActionNxResubmit(220 as short)
869 new MatchEthernetType(2048L),
870 new MatchIpProtocol(17 as short),
871 new MatchUdpDestinationPort(68),
872 new MatchUdpSourcePort(67),
873 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
876 tableId = 241 as short
878 new FlowEntity(123bi) => [
880 flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
882 instructionInfoList = #[
883 new InstructionApplyActions(#[
884 new ActionNxResubmit(220 as short)
888 new MatchEthernetType(34525L),
889 new MatchIpProtocol(17 as short),
890 new MatchUdpDestinationPort(546),
891 new MatchUdpSourcePort(547),
892 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
895 tableId = 241 as short
897 new FlowEntity(123bi) => [
899 flowId = "Ingress_ICMPv6_123_987_130_Permit_"
901 instructionInfoList = #[
902 new InstructionApplyActions(#[
903 new ActionNxResubmit(220 as short)
907 new MatchEthernetType(34525L),
908 new MatchIpProtocol(58 as short),
909 new MatchIcmpv6(130 as short, 0 as short),
910 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
913 tableId = 241 as short
915 new FlowEntity(123bi) => [
917 flowId = "Ingress_ICMPv6_123_987_135_Permit_"
919 instructionInfoList = #[
920 new InstructionApplyActions(#[
921 new ActionNxResubmit(220 as short)
925 new MatchEthernetType(34525L),
926 new MatchIpProtocol(58 as short),
927 new MatchIcmpv6(135 as short, 0 as short),
928 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
931 tableId = 241 as short
933 new FlowEntity(123bi) => [
935 flowId = "Ingress_ICMPv6_123_987_136_Permit_"
937 instructionInfoList = #[
938 new InstructionApplyActions(#[
939 new ActionNxResubmit(220 as short)
943 new MatchEthernetType(34525L),
944 new MatchIpProtocol(58 as short),
945 new MatchIcmpv6(136 as short, 0 as short),
946 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
949 tableId = 241 as short
951 new FlowEntity(123bi) => [
953 flowId = "Ingress_ARP_123_987"
955 instructionInfoList = #[
956 new InstructionApplyActions(#[
957 new ActionNxResubmit(220 as short)
961 new MatchEthernetType(2054L),
962 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
965 tableId = 241 as short
970 static def fixedEgressFlowsPort4 () {
972 new FlowEntity(123bi) => [
974 flowId = "Egress_DHCP_Client_v4123_987__Permit_"
976 instructionInfoList = #[
977 new InstructionApplyActions(#[
978 new ActionNxResubmit(17 as short)
982 new MatchEthernetType(2048L),
983 new MatchIpProtocol(17 as short),
984 new MatchUdpDestinationPort(67),
985 new MatchUdpSourcePort(68),
986 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
989 tableId = 211 as short
991 new FlowEntity(123bi) => [
993 flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
995 instructionInfoList = #[
996 new InstructionApplyActions(#[
997 new ActionNxResubmit(17 as short)
1001 new MatchEthernetType(34525L),
1002 new MatchIpProtocol(17 as short),
1003 new MatchUdpDestinationPort(547),
1004 new MatchUdpSourcePort(546),
1005 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1008 tableId = 211 as short
1010 new FlowEntity(123bi) => [
1011 cookie = 110100480bi
1012 flowId = "Egress_DHCP_Server_v4123_987__Drop_"
1014 instructionInfoList = #[
1017 new MatchEthernetType(2048L),
1018 new MatchIpProtocol(17 as short),
1019 new MatchUdpDestinationPort(68),
1020 new MatchUdpSourcePort(67),
1021 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1024 tableId = 211 as short
1026 new FlowEntity(123bi) => [
1027 cookie = 110100480bi
1028 flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
1030 instructionInfoList = #[
1033 new MatchEthernetType(34525L),
1034 new MatchIpProtocol(17 as short),
1035 new MatchUdpDestinationPort(546),
1036 new MatchUdpSourcePort(547),
1037 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1040 tableId = 211 as short
1042 new FlowEntity(123bi) => [
1043 cookie = 110100480bi
1044 flowId = "Egress_ICMPv6_123_987_134_Drop_"
1046 instructionInfoList = #[
1049 new MatchEthernetType(34525L),
1050 new MatchIpProtocol(58 as short),
1051 new MatchIcmpv6(134 as short, 0 as short),
1052 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1055 tableId = 211 as short
1057 new FlowEntity(123bi) => [
1058 cookie = 110100480bi
1059 flowId = "Egress_ICMPv6_123_987_133_Permit_"
1061 instructionInfoList = #[
1062 new InstructionApplyActions(#[
1063 new ActionNxResubmit(17 as short)
1067 new MatchEthernetType(34525L),
1068 new MatchIpProtocol(58 as short),
1069 new MatchIcmpv6(133 as short, 0 as short),
1070 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1073 tableId = 211 as short
1075 new FlowEntity(123bi) => [
1076 cookie = 110100480bi
1077 flowId = "Egress_ICMPv6_123_987_135_Permit_"
1079 instructionInfoList = #[
1080 new InstructionApplyActions(#[
1081 new ActionNxResubmit(17 as short)
1085 new MatchEthernetType(34525L),
1086 new MatchIpProtocol(58 as short),
1087 new MatchIcmpv6(135 as short, 0 as short),
1088 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1091 tableId = 211 as short
1093 new FlowEntity(123bi) => [
1094 cookie = 110100480bi
1095 flowId = "Egress_ICMPv6_123_987_136_Permit_"
1097 instructionInfoList = #[
1098 new InstructionApplyActions(#[
1099 new ActionNxResubmit(17 as short)
1103 new MatchEthernetType(34525L),
1104 new MatchIpProtocol(58 as short),
1105 new MatchIcmpv6(136 as short, 0 as short),
1106 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1109 tableId = 211 as short
1111 new FlowEntity(123bi) => [
1112 cookie = 110100480bi
1113 flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F6"
1115 instructionInfoList = #[
1116 new InstructionApplyActions(#[
1117 new ActionNxResubmit(17 as short)
1121 new MatchEthernetType(2054L),
1122 new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F6")),
1123 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1126 tableId = 211 as short
1128 new FlowEntity(123bi) => [
1129 cookie = 110100480bi
1130 flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F6"
1132 instructionInfoList = #[
1133 new InstructionApplyActions(#[
1134 new ActionNxResubmit(17 as short)
1138 new MatchEthernetType(2054L),
1139 new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F6")),
1140 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1143 tableId = 211 as short
1148 protected def expectedFlows(String mac) {
1149 // Code auto. generated by https://github.com/vorburger/xtendbeans
1151 new FlowEntity(123bi) => [
1152 cookie = 110100480bi
1153 flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
1155 instructionInfoList = #[
1156 new InstructionApplyActions(#[
1157 new ActionNxResubmit(220 as short)
1161 new MatchEthernetType(2048L),
1162 new MatchIpProtocol(17 as short),
1163 new MatchUdpDestinationPort(68),
1164 new MatchUdpSourcePort(67),
1165 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1168 tableId = 241 as short
1170 new FlowEntity(123bi) => [
1171 cookie = 110100480bi
1172 flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
1174 instructionInfoList = #[
1175 new InstructionApplyActions(#[
1176 new ActionNxResubmit(220 as short)
1180 new MatchEthernetType(34525L),
1181 new MatchIpProtocol(17 as short),
1182 new MatchUdpDestinationPort(546),
1183 new MatchUdpSourcePort(547),
1184 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1187 tableId = 241 as short
1189 new FlowEntity(123bi) => [
1190 cookie = 110100480bi
1191 flowId = "Ingress_ICMPv6_123_987_130_Permit_"
1193 instructionInfoList = #[
1194 new InstructionApplyActions(#[
1195 new ActionNxResubmit(220 as short)
1199 new MatchEthernetType(34525L),
1200 new MatchIpProtocol(58 as short),
1201 new MatchIcmpv6(130 as short, 0 as short),
1202 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1205 tableId = 241 as short
1207 new FlowEntity(123bi) => [
1208 cookie = 110100480bi
1209 flowId = "Ingress_ICMPv6_123_987_135_Permit_"
1211 instructionInfoList = #[
1212 new InstructionApplyActions(#[
1213 new ActionNxResubmit(220 as short)
1217 new MatchEthernetType(34525L),
1218 new MatchIpProtocol(58 as short),
1219 new MatchIcmpv6(135 as short, 0 as short),
1220 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1223 tableId = 241 as short
1225 new FlowEntity(123bi) => [
1226 cookie = 110100480bi
1227 flowId = "Ingress_ICMPv6_123_987_136_Permit_"
1229 instructionInfoList = #[
1230 new InstructionApplyActions(#[
1231 new ActionNxResubmit(220 as short)
1235 new MatchEthernetType(34525L),
1236 new MatchIpProtocol(58 as short),
1237 new MatchIcmpv6(136 as short, 0 as short),
1238 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1241 tableId = 241 as short
1243 new FlowEntity(123bi) => [
1244 cookie = 110100480bi
1245 flowId = "Ingress_ARP_123_987"
1247 instructionInfoList = #[
1248 new InstructionApplyActions(#[
1249 new ActionNxResubmit(220 as short)
1253 new MatchEthernetType(2054L),
1254 new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
1257 tableId = 241 as short
1259 new FlowEntity(123bi) => [
1260 cookie = 110100480bi
1261 flowId = "Egress_DHCP_Client_v4123_987__Permit_"
1263 instructionInfoList = #[
1264 new InstructionApplyActions(#[
1265 new ActionNxResubmit(17 as short)
1269 new MatchEthernetType(2048L),
1270 new MatchIpProtocol(17 as short),
1271 new MatchUdpDestinationPort(67),
1272 new MatchUdpSourcePort(68),
1273 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1276 tableId = 211 as short
1278 new FlowEntity(123bi) => [
1279 cookie = 110100480bi
1280 flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
1282 instructionInfoList = #[
1283 new InstructionApplyActions(#[
1284 new ActionNxResubmit(17 as short)
1288 new MatchEthernetType(34525L),
1289 new MatchIpProtocol(17 as short),
1290 new MatchUdpDestinationPort(547),
1291 new MatchUdpSourcePort(546),
1292 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1295 tableId = 211 as short
1297 new FlowEntity(123bi) => [
1298 cookie = 110100480bi
1299 flowId = "Egress_DHCP_Server_v4123_987__Drop_"
1301 instructionInfoList = #[
1304 new MatchEthernetType(2048L),
1305 new MatchIpProtocol(17 as short),
1306 new MatchUdpDestinationPort(68),
1307 new MatchUdpSourcePort(67),
1308 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1311 tableId = 211 as short
1313 new FlowEntity(123bi) => [
1314 cookie = 110100480bi
1315 flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
1317 instructionInfoList = #[
1320 new MatchEthernetType(34525L),
1321 new MatchIpProtocol(17 as short),
1322 new MatchUdpDestinationPort(546),
1323 new MatchUdpSourcePort(547),
1324 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1327 tableId = 211 as short
1329 new FlowEntity(123bi) => [
1330 cookie = 110100480bi
1331 flowId = "Egress_ICMPv6_123_987_134_Drop_"
1333 instructionInfoList = #[
1336 new MatchEthernetType(34525L),
1337 new MatchIpProtocol(58 as short),
1338 new MatchIcmpv6(134 as short, 0 as short),
1339 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1342 tableId = 211 as short
1344 new FlowEntity(123bi) => [
1345 cookie = 110100480bi
1346 flowId = "Egress_ICMPv6_123_987_133_Permit_"
1348 instructionInfoList = #[
1349 new InstructionApplyActions(#[
1350 new ActionNxResubmit(17 as short)
1354 new MatchEthernetType(34525L),
1355 new MatchIpProtocol(58 as short),
1356 new MatchIcmpv6(133 as short, 0 as short),
1357 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1360 tableId = 211 as short
1362 new FlowEntity(123bi) => [
1363 cookie = 110100480bi
1364 flowId = "Egress_ICMPv6_123_987_135_Permit_"
1366 instructionInfoList = #[
1367 new InstructionApplyActions(#[
1368 new ActionNxResubmit(17 as short)
1372 new MatchEthernetType(34525L),
1373 new MatchIpProtocol(58 as short),
1374 new MatchIcmpv6(135 as short, 0 as short),
1375 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1378 tableId = 211 as short
1380 new FlowEntity(123bi) => [
1381 cookie = 110100480bi
1382 flowId = "Egress_ICMPv6_123_987_136_Permit_"
1384 instructionInfoList = #[
1385 new InstructionApplyActions(#[
1386 new ActionNxResubmit(17 as short)
1390 new MatchEthernetType(34525L),
1391 new MatchIpProtocol(58 as short),
1392 new MatchIcmpv6(136 as short, 0 as short),
1393 new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
1396 tableId = 211 as short