from scapy.layers.l2 import Ether
from scapy.layers.inet import IP, UDP
from scapy.layers.l2 import Ether
from scapy.layers.inet import IP, UDP
def setUp(self):
super(TestL2Flood, self).setUp()
# 12 l2 interface and one l3
self.create_pg_interfaces(range(13))
def setUp(self):
super(TestL2Flood, self).setUp()
# 12 l2 interface and one l3
self.create_pg_interfaces(range(13))
#
# add each interface to the BD. 3 interfaces per split horizon group
#
for i in self.pg_interfaces[0:4]:
#
# add each interface to the BD. 3 interfaces per split horizon group
#
for i in self.pg_interfaces[0:4]:
- self.vapi.sw_interface_set_l2_bridge(i.sw_if_index, 1, 2)
- for i in self.lo_interfaces:
- self.vapi.sw_interface_set_l2_bridge(i.sw_if_index, 1, 2,
+ self.vapi.sw_interface_set_l2_bridge(rx_sw_if_index=i.sw_if_index,
+ bd_id=1, shg=2)
+ for i in self.bvi_interfaces:
+ self.vapi.sw_interface_set_l2_bridge(rx_sw_if_index=i.sw_if_index,
+ bd_id=1, shg=2,
port_type=L2_PORT_TYPE.BVI)
p = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
port_type=L2_PORT_TYPE.BVI)
p = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
#
# input on pg0 expect copies on pg1->11
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
#
# input on pg0 expect copies on pg1->11
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
- self.vapi.sw_interface_set_l2_bridge(i.sw_if_index, 1, enable=0)
- for i in self.lo_interfaces:
- self.vapi.sw_interface_set_l2_bridge(i.sw_if_index, 1, 2,
+ self.vapi.sw_interface_set_l2_bridge(rx_sw_if_index=i.sw_if_index,
+ bd_id=1, enable=0)
+ for i in self.bvi_interfaces:
+ self.vapi.sw_interface_set_l2_bridge(rx_sw_if_index=i.sw_if_index,
+ bd_id=1, shg=2,
p = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
p = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
- self.vapi.sw_interface_set_l2_bridge(i.sw_if_index, 1, enable=0)
- self.vapi.bridge_domain_add_del(1, is_add=0)
+ self.vapi.sw_interface_set_l2_bridge(rx_sw_if_index=i.sw_if_index,
+ bd_id=1, enable=0)
+ self.vapi.bridge_domain_add_del(bd_id=1, is_add=0)
#
# add each interface to the BD. 3 interfaces per split horizon group
#
for i in self.pg_interfaces[0:4]:
#
# add each interface to the BD. 3 interfaces per split horizon group
#
for i in self.pg_interfaces[0:4]:
#
p_uu = (Ether(dst="00:00:00:c1:5c:00",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
#
p_uu = (Ether(dst="00:00:00:c1:5c:00",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
p_bm = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
p_bm = (Ether(dst="ff:ff:ff:ff:ff:ff",
src="00:00:de:ad:be:ef") /
IP(src="10.10.10.10", dst="1.1.1.1") /
UDP(sport=1234, dport=1234) /
- self.vapi.sw_interface_set_l2_bridge(self.pg8.sw_if_index, 1, 0,
- port_type=L2_PORT_TYPE.UU_FWD)
+ self.vapi.sw_interface_set_l2_bridge(
+ rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
+ port_type=L2_PORT_TYPE.UU_FWD)
- self.vapi.sw_interface_set_l2_bridge(self.pg8.sw_if_index, 1, 0,
- port_type=L2_PORT_TYPE.UU_FWD,
- enable=0)
+ self.vapi.sw_interface_set_l2_bridge(
+ rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
+ port_type=L2_PORT_TYPE.UU_FWD, enable=0)
self.send_and_assert_no_replies(self.pg0, p_uu)
#
# re-add the uu-fwd interface
#
self.send_and_assert_no_replies(self.pg0, p_uu)
#
# re-add the uu-fwd interface
#
- self.vapi.sw_interface_set_l2_bridge(self.pg8.sw_if_index, 1, 0,
- port_type=L2_PORT_TYPE.UU_FWD)
+ self.vapi.sw_interface_set_l2_bridge(
+ rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
+ port_type=L2_PORT_TYPE.UU_FWD)
- self.vapi.sw_interface_set_l2_bridge(self.pg8.sw_if_index, 1, 0,
- port_type=L2_PORT_TYPE.UU_FWD,
- enable=0)
+ self.vapi.sw_interface_set_l2_bridge(
+ rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
+ port_type=L2_PORT_TYPE.UU_FWD, enable=0)
self.send_and_assert_no_replies(self.pg0, p_uu)
#
# cleanup
#
for i in self.pg_interfaces[:4]:
self.send_and_assert_no_replies(self.pg0, p_uu)
#
# cleanup
#
for i in self.pg_interfaces[:4]: