Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
misc: Fix python scripts shebang line
[vpp.git]
/
test
/
test_l2_flood.py
diff --git
a/test/test_l2_flood.py
b/test/test_l2_flood.py
index
35d325e
..
f4d1c07
100644
(file)
--- a/
test/test_l2_flood.py
+++ b/
test/test_l2_flood.py
@@
-1,4
+1,4
@@
-#!/usr/bin/env python
+#!/usr/bin/env python
3
import unittest
import socket
import unittest
import socket
@@
-11,10
+11,20
@@
from scapy.packet import Raw
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
+NUM_PKTS = 67
+
class TestL2Flood(VppTestCase):
""" L2-flood """
class TestL2Flood(VppTestCase):
""" L2-flood """
+ @classmethod
+ def setUpClass(cls):
+ super(TestL2Flood, cls).setUpClass()
+
+ @classmethod
+ def tearDownClass(cls):
+ super(TestL2Flood, cls).tearDownClass()
+
def setUp(self):
super(TestL2Flood, self).setUp()
def setUp(self):
super(TestL2Flood, self).setUp()
@@
-77,25
+87,25
@@
class TestL2Flood(VppTestCase):
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
- self.pg0.add_stream(p*
65
)
+ self.pg0.add_stream(p*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:12]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:12]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
#
# input on pg4 (SHG=1) expect copies on pg0->3 (SHG=0)
# and pg8->11 (SHG=2)
#
#
# input on pg4 (SHG=1) expect copies on pg0->3 (SHG=0)
# and pg8->11 (SHG=2)
#
- self.pg4.add_stream(p*
65
)
+ self.pg4.add_stream(p*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[8:12]:
for i in self.pg_interfaces[8:12]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[4:8]:
i.assert_nothing_captured(remark="Different SH group")
for i in self.pg_interfaces[4:8]:
i.assert_nothing_captured(remark="Different SH group")
@@
-114,25
+124,25
@@
class TestL2Flood(VppTestCase):
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
# this is in SHG=0 so its flooded to all, expect the pg0 since that's
# the ingress link
#
- self.pg0.add_stream(p*
65
)
+ self.pg0.add_stream(p*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
#
# input on pg4 (SHG=1) expect copies on pg0->3 (SHG=0)
# and pg8->12 (SHG=2)
#
#
# input on pg4 (SHG=1) expect copies on pg0->3 (SHG=0)
# and pg8->12 (SHG=2)
#
- self.pg4.add_stream(p*
65
)
+ self.pg4.add_stream(p*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[8:13]:
for i in self.pg_interfaces[8:13]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[4:8]:
i.assert_nothing_captured(remark="Different SH group")
for i in self.pg_interfaces[4:8]:
i.assert_nothing_captured(remark="Different SH group")
@@
-175,7
+185,7
@@
class TestL2Flood(VppTestCase):
#
# input on pg0 expect copies on pg1
#
#
# input on pg0 expect copies on pg1
#
- self.send_and_expect(self.pg0, p*
65
, self.pg1)
+ self.send_and_expect(self.pg0, p*
NUM_PKTS
, self.pg1)
#
# cleanup
#
# cleanup
@@
-217,19
+227,19
@@
class TestL2Flood(VppTestCase):
#
# input on pg0, expected copies on pg1->4
#
#
# input on pg0, expected copies on pg1->4
#
- self.pg0.add_stream(p_uu*
65
)
+ self.pg0.add_stream(p_uu*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
- self.pg0.add_stream(p_bm*
65
)
+ self.pg0.add_stream(p_bm*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
#
# use pg8 as the uu-fwd interface
#
# use pg8 as the uu-fwd interface
@@
-241,21
+251,21
@@
class TestL2Flood(VppTestCase):
#
# expect the UU packet on the uu-fwd interface and not be flooded
#
#
# expect the UU packet on the uu-fwd interface and not be flooded
#
- self.pg0.add_stream(p_uu*
65
)
+ self.pg0.add_stream(p_uu*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
- rx0 = self.pg8.get_capture(
65
, timeout=1)
+ rx0 = self.pg8.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[0:4]:
i.assert_nothing_captured(remark="UU not flooded")
for i in self.pg_interfaces[0:4]:
i.assert_nothing_captured(remark="UU not flooded")
- self.pg0.add_stream(p_bm*
65
)
+ self.pg0.add_stream(p_bm*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
#
# remove the uu-fwd interface and expect UU to be flooded again
#
# remove the uu-fwd interface and expect UU to be flooded again
@@
-264,12
+274,12
@@
class TestL2Flood(VppTestCase):
rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
port_type=L2_PORT_TYPE.UU_FWD, enable=0)
rx_sw_if_index=self.pg8.sw_if_index, bd_id=1, shg=0,
port_type=L2_PORT_TYPE.UU_FWD, enable=0)
- self.pg0.add_stream(p_uu*
65
)
+ self.pg0.add_stream(p_uu*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
for i in self.pg_interfaces[1:4]:
- rx0 = i.get_capture(
65
, timeout=1)
+ rx0 = i.get_capture(
NUM_PKTS
, timeout=1)
#
# change the BD config to not support UU-flood
#
# change the BD config to not support UU-flood
@@
-286,11
+296,11
@@
class TestL2Flood(VppTestCase):
port_type=L2_PORT_TYPE.UU_FWD)
self.logger.info(self.vapi.cli("sh bridge 1 detail"))
port_type=L2_PORT_TYPE.UU_FWD)
self.logger.info(self.vapi.cli("sh bridge 1 detail"))
- self.pg0.add_stream(p_uu*
65
)
+ self.pg0.add_stream(p_uu*
NUM_PKTS
)
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
self.pg_enable_capture(self.pg_interfaces)
self.pg_start()
- rx0 = self.pg8.get_capture(
65
, timeout=1)
+ rx0 = self.pg8.get_capture(
NUM_PKTS
, timeout=1)
for i in self.pg_interfaces[0:4]:
i.assert_nothing_captured(remark="UU not flooded")
for i in self.pg_interfaces[0:4]:
i.assert_nothing_captured(remark="UU not flooded")