diff --git a/lanforge/lanforge-scripts b/lanforge/lanforge-scripts new file mode 160000 index 000000000..7e1dc7dce --- /dev/null +++ b/lanforge/lanforge-scripts @@ -0,0 +1 @@ +Subproject commit 7e1dc7dce71e9386ccc28ce4a85a4740e1bec683 diff --git a/libs/lanforge/lf_tests.py b/libs/lanforge/lf_tests.py index cd1ea9e23..54c8c82f1 100644 --- a/libs/lanforge/lf_tests.py +++ b/libs/lanforge/lf_tests.py @@ -214,7 +214,7 @@ class RunTest: return True def dataplane(self, station_name=None, mode="BRIDGE", vlan_id=100, download_rate="85%", dut_name="TIP", - upload_rate="85%", duration="1m", instance_name="test_demo"): + upload_rate="85%", duration="1m", instance_name="test_demo", raw_line=None): if mode == "BRIDGE": self.client_connect.upstream_port = self.upstream_port elif mode == "NAT": @@ -238,11 +238,15 @@ class RunTest: duration=duration, dut=dut_name, station="1.1." + station_name[0], - raw_lines=['pkts: Custom;60;142;256;512;1024;MTU', - 'directions: DUT Transmit;DUT Receive', - 'traffic_types: UDP;TCP', "show_3s: 1", - "show_ll_graphs: 1", "show_log: 1"], + raw_lines=['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP',"spatial_streams:2","bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] ) + """['pkts: Custom;60;142;256;512;1024;MTU', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP;TCP', "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"],""" self.dataplane_obj.setup() self.dataplane_obj.run() report_name = self.dataplane_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] diff --git a/reports/dataplane-2021-06-08-04-03-37/CandelaLogo2-90dpi-200x90-trans.png b/reports/dataplane-2021-06-08-04-03-37/CandelaLogo2-90dpi-200x90-trans.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/CandelaLogo2-90dpi-200x90-trans.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/CenturyGothic.woff b/reports/dataplane-2021-06-08-04-03-37/CenturyGothic.woff new file mode 100644 index 000000000..877ec4a27 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/CenturyGothic.woff differ diff --git a/reports/dataplane-2021-06-08-04-03-37/candela_swirl_small-72h.png b/reports/dataplane-2021-06-08-04-03-37/candela_swirl_small-72h.png new file mode 100644 index 000000000..e288f8c96 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/candela_swirl_small-72h.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/canvil.ico b/reports/dataplane-2021-06-08-04-03-37/canvil.ico new file mode 100644 index 000000000..5f27eb942 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/canvil.ico differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-1-print.png b/reports/dataplane-2021-06-08-04-03-37/chart-1-print.png new file mode 100644 index 000000000..647d6ac87 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-1-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-1.png b/reports/dataplane-2021-06-08-04-03-37/chart-1.png new file mode 100644 index 000000000..11f5822fb Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-1.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-2-print.png b/reports/dataplane-2021-06-08-04-03-37/chart-2-print.png new file mode 100644 index 000000000..8034a4aaf Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-2-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-2.png b/reports/dataplane-2021-06-08-04-03-37/chart-2.png new file mode 100644 index 000000000..e79a3cd8b Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-2.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-3-print.png b/reports/dataplane-2021-06-08-04-03-37/chart-3-print.png new file mode 100644 index 000000000..024e48c26 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-3-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-3.png b/reports/dataplane-2021-06-08-04-03-37/chart-3.png new file mode 100644 index 000000000..9679a28aa Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-3.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-4-print.png b/reports/dataplane-2021-06-08-04-03-37/chart-4-print.png new file mode 100644 index 000000000..5ab90b977 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-4-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-4.png b/reports/dataplane-2021-06-08-04-03-37/chart-4.png new file mode 100644 index 000000000..603f79654 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-4.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-5-print.png b/reports/dataplane-2021-06-08-04-03-37/chart-5-print.png new file mode 100644 index 000000000..2859c1a58 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-5-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/chart-5.png b/reports/dataplane-2021-06-08-04-03-37/chart-5.png new file mode 100644 index 000000000..456196c3f Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/chart-5.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv new file mode 100644 index 000000000..54aa9f8e5 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv @@ -0,0 +1,63 @@ +"Endpoint RX Packet Loss Percentage", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent", +NA,NA,NA,NA,"2021-06-08T11:02:36.743 UTC",0,"2021-06-08T11:02:36.743 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:37.754 UTC",0,"2021-06-08T11:02:37.754 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:38.765 UTC",0,"2021-06-08T11:02:38.765 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:39.775 UTC",0,"2021-06-08T11:02:39.775 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:40.785 UTC",0,"2021-06-08T11:02:40.785 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:41.794 UTC",0,"2021-06-08T11:02:41.794 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:42.804 UTC",0,"2021-06-08T11:02:42.804 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:43.813 UTC",0,"2021-06-08T11:02:43.813 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:44.823 UTC",0,"2021-06-08T11:02:44.823 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:45.833 UTC",0,"2021-06-08T11:02:45.833 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:46.843 UTC",0,"2021-06-08T11:02:46.843 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:47.852 UTC",0,"2021-06-08T11:02:47.852 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:48.862 UTC",0,"2021-06-08T11:02:48.862 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:49.872 UTC",0,"2021-06-08T11:02:49.872 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:50.881 UTC",0,"2021-06-08T11:02:50.881 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:51.890 UTC",0,"2021-06-08T11:02:51.890 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:52.900 UTC",0,"2021-06-08T11:02:52.900 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:53.910 UTC",0,"2021-06-08T11:02:53.910 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:54.920 UTC",0,"2021-06-08T11:02:54.920 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:55.930 UTC",0,"2021-06-08T11:02:55.930 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:56.940 UTC",0,"2021-06-08T11:02:56.940 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:57.953 UTC",0,"2021-06-08T11:02:57.953 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:58.964 UTC",0,"2021-06-08T11:02:58.964 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:59.974 UTC",0,"2021-06-08T11:02:59.974 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:00.986 UTC",0,"2021-06-08T11:03:00.986 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:01.996 UTC",0,"2021-06-08T11:03:01.996 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:03.006 UTC",0,"2021-06-08T11:03:03.006 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:04.015 UTC",0,"2021-06-08T11:03:04.015 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:05.026 UTC",0,"2021-06-08T11:03:05.026 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:06.038 UTC",0,"2021-06-08T11:03:06.038 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:07.049 UTC",0,"2021-06-08T11:03:07.049 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:08.059 UTC",0,"2021-06-08T11:03:08.059 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:09.069 UTC",0,"2021-06-08T11:03:09.069 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:10.131 UTC",0,"2021-06-08T11:03:10.131 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:11.142 UTC",0,"2021-06-08T11:03:11.142 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:12.152 UTC",0,"2021-06-08T11:03:12.152 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:13.163 UTC",0,"2021-06-08T11:03:13.163 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:14.174 UTC",0,"2021-06-08T11:03:14.174 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:15.184 UTC",0,"2021-06-08T11:03:15.184 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:16.195 UTC",0,"2021-06-08T11:03:16.195 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:17.206 UTC",0,"2021-06-08T11:03:17.206 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:18.216 UTC",0,"2021-06-08T11:03:18.216 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:19.227 UTC",0,"2021-06-08T11:03:19.227 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:20.238 UTC",0,"2021-06-08T11:03:20.238 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:21.251 UTC",0,"2021-06-08T11:03:21.251 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:22.262 UTC",0,"2021-06-08T11:03:22.262 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:23.273 UTC",0,"2021-06-08T11:03:23.273 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:24.284 UTC",0,"2021-06-08T11:03:24.284 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:25.295 UTC",0,"2021-06-08T11:03:25.295 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:26.304 UTC",0,"2021-06-08T11:03:26.304 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:27.315 UTC",0,"2021-06-08T11:03:27.315 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:28.326 UTC",0,"2021-06-08T11:03:28.326 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:29.338 UTC",0,"2021-06-08T11:03:29.338 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:30.349 UTC",0,"2021-06-08T11:03:30.349 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:31.360 UTC",0,"2021-06-08T11:03:31.360 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:32.371 UTC",0,"2021-06-08T11:03:32.371 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:33.383 UTC",0,"2021-06-08T11:03:33.383 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:34.393 UTC",0,"2021-06-08T11:03:34.393 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:35.403 UTC",0,"2021-06-08T11:03:35.403 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:36.414 UTC",0,"2021-06-08T11:03:36.414 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:37.425 UTC",0,"2021-06-08T11:03:37.425 UTC",0, diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Latency_vs_Loops-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Latency_vs_Loops-1.csv new file mode 100644 index 000000000..c018246ef --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Latency_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Latency vs Loops", +"loop-1", +956 diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-RX_Pps_vs_Loops-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-RX_Pps_vs_Loops-1.csv new file mode 100644 index 000000000..18c072154 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-RX_Pps_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"RX Pps vs Loops", +"loop-1", +26.81572 diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Realtime_Throughput-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Realtime_Throughput-1.csv new file mode 100644 index 000000000..9a24b9cff --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Realtime_Throughput-1.csv @@ -0,0 +1,73 @@ +"Realtime Throughput", +Date,"Total Upload/RX (Mbps)",Date,"Total Download/RX (Mbps)",Date,"UL + DL Sum/RX (Mbps)", +"2021-06-08T11:02:26.644 UTC",0,"2021-06-08T11:02:26.644 UTC",0,"2021-06-08T11:02:26.644 UTC",0, +"2021-06-08T11:02:27.660 UTC",0,"2021-06-08T11:02:27.660 UTC",0,"2021-06-08T11:02:27.660 UTC",0, +"2021-06-08T11:02:28.668 UTC",0,"2021-06-08T11:02:28.668 UTC",0,"2021-06-08T11:02:28.668 UTC",0, +"2021-06-08T11:02:29.678 UTC",0,"2021-06-08T11:02:29.678 UTC",0,"2021-06-08T11:02:29.678 UTC",0, +"2021-06-08T11:02:30.687 UTC",0,"2021-06-08T11:02:30.687 UTC",0,"2021-06-08T11:02:30.687 UTC",0, +"2021-06-08T11:02:31.696 UTC",0,"2021-06-08T11:02:31.696 UTC",0,"2021-06-08T11:02:31.696 UTC",0, +"2021-06-08T11:02:32.705 UTC",0,"2021-06-08T11:02:32.705 UTC",0,"2021-06-08T11:02:32.705 UTC",0, +"2021-06-08T11:02:33.715 UTC",0,"2021-06-08T11:02:33.715 UTC",0,"2021-06-08T11:02:33.715 UTC",0, +"2021-06-08T11:02:34.724 UTC",0,"2021-06-08T11:02:34.724 UTC",0,"2021-06-08T11:02:34.724 UTC",0, +"2021-06-08T11:02:35.734 UTC",0,"2021-06-08T11:02:35.734 UTC",0,"2021-06-08T11:02:35.734 UTC",0, +"2021-06-08T11:02:36.744 UTC",0,"2021-06-08T11:02:36.744 UTC",0,"2021-06-08T11:02:36.744 UTC",0, +"2021-06-08T11:02:37.755 UTC",65.91143,"2021-06-08T11:02:37.755 UTC",59.47799,"2021-06-08T11:02:37.755 UTC",125.38942, +"2021-06-08T11:02:38.766 UTC",128.3285,"2021-06-08T11:02:38.766 UTC",52.27529,"2021-06-08T11:02:38.766 UTC",180.60379, +"2021-06-08T11:02:39.776 UTC",134.43623,"2021-06-08T11:02:39.776 UTC",61.37888,"2021-06-08T11:02:39.776 UTC",195.81512, +"2021-06-08T11:02:40.785 UTC",135.08969,"2021-06-08T11:02:40.785 UTC",65.36651,"2021-06-08T11:02:40.785 UTC",200.4562, +"2021-06-08T11:02:41.795 UTC",136.2267,"2021-06-08T11:02:41.795 UTC",70.99169,"2021-06-08T11:02:41.795 UTC",207.21839, +"2021-06-08T11:02:42.804 UTC",132.57008,"2021-06-08T11:02:42.804 UTC",74.55328,"2021-06-08T11:02:42.804 UTC",207.12335, +"2021-06-08T11:02:43.813 UTC",130.65197,"2021-06-08T11:02:43.813 UTC",77.12738,"2021-06-08T11:02:43.813 UTC",207.77935, +"2021-06-08T11:02:44.823 UTC",127.9073,"2021-06-08T11:02:44.823 UTC",81.81841,"2021-06-08T11:02:44.823 UTC",209.72571, +"2021-06-08T11:02:45.833 UTC",126.71215,"2021-06-08T11:02:45.833 UTC",84.36939,"2021-06-08T11:02:45.833 UTC",211.08154, +"2021-06-08T11:02:46.844 UTC",125.49832,"2021-06-08T11:02:46.844 UTC",83.4596,"2021-06-08T11:02:46.844 UTC",208.95792, +"2021-06-08T11:02:47.853 UTC",134.73739,"2021-06-08T11:02:47.853 UTC",76.99981,"2021-06-08T11:02:47.853 UTC",211.7372, +"2021-06-08T11:02:48.862 UTC",138.79639,"2021-06-08T11:02:48.862 UTC",70.52775,"2021-06-08T11:02:48.862 UTC",209.32414, +"2021-06-08T11:02:49.872 UTC",141.96998,"2021-06-08T11:02:49.872 UTC",66.69196,"2021-06-08T11:02:49.872 UTC",208.66194, +"2021-06-08T11:02:50.881 UTC",137.09788,"2021-06-08T11:02:50.881 UTC",67.85356,"2021-06-08T11:02:50.881 UTC",204.95143, +"2021-06-08T11:02:51.890 UTC",135.59857,"2021-06-08T11:02:51.890 UTC",73.53116,"2021-06-08T11:02:51.890 UTC",209.12973, +"2021-06-08T11:02:52.901 UTC",133.58211,"2021-06-08T11:02:52.901 UTC",78.02208,"2021-06-08T11:02:52.901 UTC",211.60418, +"2021-06-08T11:02:53.911 UTC",132.9534,"2021-06-08T11:02:53.911 UTC",81.56725,"2021-06-08T11:02:53.911 UTC",214.52065, +"2021-06-08T11:02:54.920 UTC",132.9534,"2021-06-08T11:02:54.920 UTC",81.56725,"2021-06-08T11:02:54.920 UTC",214.52065, +"2021-06-08T11:02:55.930 UTC",130.42627,"2021-06-08T11:02:55.930 UTC",86.1216,"2021-06-08T11:02:55.930 UTC",216.54787, +"2021-06-08T11:02:56.940 UTC",128.61889,"2021-06-08T11:02:56.940 UTC",90.03914,"2021-06-08T11:02:56.940 UTC",218.65803, +"2021-06-08T11:02:57.954 UTC",126.28894,"2021-06-08T11:02:57.954 UTC",93.12016,"2021-06-08T11:02:57.954 UTC",219.4091, +"2021-06-08T11:02:58.965 UTC",123.45074,"2021-06-08T11:02:58.965 UTC",93.55726,"2021-06-08T11:02:58.965 UTC",217.008, +"2021-06-08T11:02:59.974 UTC",120.13893,"2021-06-08T11:02:59.974 UTC",93.80762,"2021-06-08T11:02:59.974 UTC",213.94655, +"2021-06-08T11:03:00.986 UTC",114.63447,"2021-06-08T11:03:00.986 UTC",93.87488,"2021-06-08T11:03:00.986 UTC",208.50935, +"2021-06-08T11:03:01.996 UTC",119.49667,"2021-06-08T11:03:01.996 UTC",85.18191,"2021-06-08T11:03:01.996 UTC",204.67859, +"2021-06-08T11:03:03.006 UTC",125.30781,"2021-06-08T11:03:03.006 UTC",68.84016,"2021-06-08T11:03:03.006 UTC",194.14797, +"2021-06-08T11:03:04.016 UTC",138.32863,"2021-06-08T11:03:04.016 UTC",52.06139,"2021-06-08T11:03:04.016 UTC",190.39002, +"2021-06-08T11:03:05.027 UTC",142.89251,"2021-06-08T11:03:05.027 UTC",48.43399,"2021-06-08T11:03:05.027 UTC",191.3265, +"2021-06-08T11:03:06.038 UTC",148.97415,"2021-06-08T11:03:06.038 UTC",54.43296,"2021-06-08T11:03:06.038 UTC",203.40711, +"2021-06-08T11:03:07.049 UTC",147.6261,"2021-06-08T11:03:07.049 UTC",60.43379,"2021-06-08T11:03:07.049 UTC",208.05989, +"2021-06-08T11:03:08.060 UTC",144.83543,"2021-06-08T11:03:08.060 UTC",66.64021,"2021-06-08T11:03:08.060 UTC",211.47564, +"2021-06-08T11:03:09.070 UTC",140.28597,"2021-06-08T11:03:09.070 UTC",69.32366,"2021-06-08T11:03:09.070 UTC",209.60963, +"2021-06-08T11:03:10.132 UTC",136.96692,"2021-06-08T11:03:10.132 UTC",71.97786,"2021-06-08T11:03:10.132 UTC",208.94478, +"2021-06-08T11:03:11.142 UTC",132.45017,"2021-06-08T11:03:11.142 UTC",76.08982,"2021-06-08T11:03:11.142 UTC",208.53998, +"2021-06-08T11:03:12.153 UTC",131.32112,"2021-06-08T11:03:12.153 UTC",83.13382,"2021-06-08T11:03:12.153 UTC",214.45494, +"2021-06-08T11:03:13.163 UTC",129.24326,"2021-06-08T11:03:13.163 UTC",85.57535,"2021-06-08T11:03:13.163 UTC",214.81861, +"2021-06-08T11:03:14.174 UTC",126.35965,"2021-06-08T11:03:14.174 UTC",89.46043,"2021-06-08T11:03:14.174 UTC",215.82009, +"2021-06-08T11:03:15.185 UTC",123.84911,"2021-06-08T11:03:15.185 UTC",89.87221,"2021-06-08T11:03:15.185 UTC",213.72132, +"2021-06-08T11:03:16.195 UTC",123.05091,"2021-06-08T11:03:16.195 UTC",92.07792,"2021-06-08T11:03:16.195 UTC",215.12883, +"2021-06-08T11:03:17.206 UTC",117.66467,"2021-06-08T11:03:17.206 UTC",88.98399,"2021-06-08T11:03:17.206 UTC",206.64866, +"2021-06-08T11:03:18.216 UTC",112.9889,"2021-06-08T11:03:18.216 UTC",76.74231,"2021-06-08T11:03:18.216 UTC",189.73121, +"2021-06-08T11:03:19.227 UTC",115.31143,"2021-06-08T11:03:19.227 UTC",65.94771,"2021-06-08T11:03:19.227 UTC",181.25914, +"2021-06-08T11:03:20.239 UTC",123.58138,"2021-06-08T11:03:20.239 UTC",66.9134,"2021-06-08T11:03:20.239 UTC",190.49478, +"2021-06-08T11:03:21.252 UTC",134.27625,"2021-06-08T11:03:21.252 UTC",70.94323,"2021-06-08T11:03:21.252 UTC",205.21948, +"2021-06-08T11:03:22.263 UTC",133.72998,"2021-06-08T11:03:22.263 UTC",77.82796,"2021-06-08T11:03:22.263 UTC",211.55793, +"2021-06-08T11:03:23.274 UTC",132.12376,"2021-06-08T11:03:23.274 UTC",80.89494,"2021-06-08T11:03:23.274 UTC",213.0187, +"2021-06-08T11:03:24.285 UTC",129.01281,"2021-06-08T11:03:24.285 UTC",83.47267,"2021-06-08T11:03:24.285 UTC",212.48549, +"2021-06-08T11:03:25.295 UTC",127.16983,"2021-06-08T11:03:25.295 UTC",83.47267,"2021-06-08T11:03:25.295 UTC",210.6425, +"2021-06-08T11:03:26.305 UTC",126.35847,"2021-06-08T11:03:26.305 UTC",88.62162,"2021-06-08T11:03:26.305 UTC",214.98009, +"2021-06-08T11:03:27.316 UTC",131.02263,"2021-06-08T11:03:27.316 UTC",90.88963,"2021-06-08T11:03:27.316 UTC",221.91226, +"2021-06-08T11:03:28.326 UTC",137.14611,"2021-06-08T11:03:28.326 UTC",85.79747,"2021-06-08T11:03:28.326 UTC",222.94358, +"2021-06-08T11:03:29.338 UTC",142.40156,"2021-06-08T11:03:29.338 UTC",76.07277,"2021-06-08T11:03:29.338 UTC",218.47433, +"2021-06-08T11:03:30.349 UTC",138.71175,"2021-06-08T11:03:30.349 UTC",68.48176,"2021-06-08T11:03:30.349 UTC",207.19351, +"2021-06-08T11:03:31.361 UTC",128.71019,"2021-06-08T11:03:31.361 UTC",70.67338,"2021-06-08T11:03:31.361 UTC",199.38357, +"2021-06-08T11:03:32.371 UTC",126.03393,"2021-06-08T11:03:32.371 UTC",71.05502,"2021-06-08T11:03:32.371 UTC",197.08895, +"2021-06-08T11:03:33.383 UTC",124.60695,"2021-06-08T11:03:33.383 UTC",70.91355,"2021-06-08T11:03:33.383 UTC",195.5205, +"2021-06-08T11:03:34.393 UTC",128.15754,"2021-06-08T11:03:34.393 UTC",77.76865,"2021-06-08T11:03:34.393 UTC",205.92619, +"2021-06-08T11:03:35.404 UTC",126.38778,"2021-06-08T11:03:35.404 UTC",81.83748,"2021-06-08T11:03:35.404 UTC",208.22525, +"2021-06-08T11:03:36.415 UTC",126.38778,"2021-06-08T11:03:36.415 UTC",89.61222,"2021-06-08T11:03:36.415 UTC",215.99999, +"2021-06-08T11:03:37.425 UTC",125.53447,"2021-06-08T11:03:37.425 UTC",93.16606,"2021-06-08T11:03:37.425 UTC",218.70054, diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Rx_Errors-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Rx_Errors-1.csv new file mode 100644 index 000000000..474aa022a --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Rx_Errors-1.csv @@ -0,0 +1,63 @@ +"Rx Errors", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Errors", +NA,NA,NA,NA,"2021-06-08T11:02:36.743 UTC",0,"2021-06-08T11:02:36.743 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:37.754 UTC",0,"2021-06-08T11:02:37.754 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:38.765 UTC",0,"2021-06-08T11:02:38.765 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:39.775 UTC",0,"2021-06-08T11:02:39.775 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:40.785 UTC",0,"2021-06-08T11:02:40.785 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:41.794 UTC",0,"2021-06-08T11:02:41.794 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:42.804 UTC",0,"2021-06-08T11:02:42.804 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:43.813 UTC",0,"2021-06-08T11:02:43.813 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:44.823 UTC",0,"2021-06-08T11:02:44.823 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:45.833 UTC",0,"2021-06-08T11:02:45.833 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:46.843 UTC",0,"2021-06-08T11:02:46.843 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:47.852 UTC",0,"2021-06-08T11:02:47.852 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:48.862 UTC",0,"2021-06-08T11:02:48.862 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:49.872 UTC",0,"2021-06-08T11:02:49.872 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:50.881 UTC",0,"2021-06-08T11:02:50.881 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:51.890 UTC",0,"2021-06-08T11:02:51.890 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:52.900 UTC",0,"2021-06-08T11:02:52.900 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:53.910 UTC",0,"2021-06-08T11:02:53.910 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:54.920 UTC",0,"2021-06-08T11:02:54.920 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:55.930 UTC",0,"2021-06-08T11:02:55.930 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:56.940 UTC",0,"2021-06-08T11:02:56.940 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:57.953 UTC",0,"2021-06-08T11:02:57.953 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:58.964 UTC",0,"2021-06-08T11:02:58.964 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:02:59.974 UTC",0,"2021-06-08T11:02:59.974 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:00.986 UTC",0,"2021-06-08T11:03:00.986 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:01.996 UTC",0,"2021-06-08T11:03:01.996 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:03.006 UTC",0,"2021-06-08T11:03:03.006 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:04.015 UTC",0,"2021-06-08T11:03:04.015 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:05.026 UTC",0,"2021-06-08T11:03:05.026 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:06.038 UTC",0,"2021-06-08T11:03:06.038 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:07.049 UTC",0,"2021-06-08T11:03:07.049 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:08.059 UTC",0,"2021-06-08T11:03:08.059 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:09.069 UTC",0,"2021-06-08T11:03:09.069 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:10.131 UTC",0,"2021-06-08T11:03:10.131 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:11.142 UTC",0,"2021-06-08T11:03:11.142 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:12.152 UTC",0,"2021-06-08T11:03:12.152 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:13.163 UTC",0,"2021-06-08T11:03:13.163 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:14.174 UTC",0,"2021-06-08T11:03:14.174 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:15.184 UTC",0,"2021-06-08T11:03:15.184 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:16.195 UTC",0,"2021-06-08T11:03:16.195 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:17.206 UTC",0,"2021-06-08T11:03:17.206 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:18.216 UTC",0,"2021-06-08T11:03:18.216 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:19.227 UTC",0,"2021-06-08T11:03:19.227 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:20.238 UTC",0,"2021-06-08T11:03:20.238 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:21.251 UTC",0,"2021-06-08T11:03:21.251 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:22.262 UTC",0,"2021-06-08T11:03:22.262 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:23.273 UTC",0,"2021-06-08T11:03:23.273 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:24.284 UTC",0,"2021-06-08T11:03:24.284 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:25.295 UTC",0,"2021-06-08T11:03:25.295 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:26.304 UTC",0,"2021-06-08T11:03:26.304 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:27.315 UTC",0,"2021-06-08T11:03:27.315 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:28.326 UTC",0,"2021-06-08T11:03:28.326 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:29.338 UTC",0,"2021-06-08T11:03:29.338 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:30.349 UTC",0,"2021-06-08T11:03:30.349 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:31.360 UTC",0,"2021-06-08T11:03:31.360 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:32.371 UTC",0,"2021-06-08T11:03:32.371 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:33.383 UTC",0,"2021-06-08T11:03:33.383 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:34.393 UTC",0,"2021-06-08T11:03:34.393 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:35.403 UTC",0,"2021-06-08T11:03:35.403 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:36.414 UTC",0,"2021-06-08T11:03:36.414 UTC",0, +NA,NA,NA,NA,"2021-06-08T11:03:37.425 UTC",0,"2021-06-08T11:03:37.425 UTC",0, diff --git a/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Throughput_vs_Loops-1.csv b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Throughput_vs_Loops-1.csv new file mode 100644 index 000000000..a1a2163fb --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/csv-data/data-Throughput_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Throughput vs Loops", +"loop-1", +208.17939 diff --git a/reports/dataplane-2021-06-08-04-03-37/custom.css b/reports/dataplane-2021-06-08-04-03-37/custom.css new file mode 100644 index 000000000..26e937507 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/custom.css @@ -0,0 +1,11 @@ +/* file reserved for customer styling of reports */ +/* rename to custom.css to take effect */ + +.TitleFont {} +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +.HeaderStyle {} +.FooterStyle {} +/* eof */ diff --git a/reports/dataplane-2021-06-08-04-03-37/dataplane-report-2021-06-08-04-02-26.pdf b/reports/dataplane-2021-06-08-04-03-37/dataplane-report-2021-06-08-04-02-26.pdf new file mode 100644 index 000000000..dcac79b7c Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/dataplane-report-2021-06-08-04-02-26.pdf differ diff --git a/reports/dataplane-2021-06-08-04-03-37/index-print.html b/reports/dataplane-2021-06-08-04-03-37/index-print.html new file mode 100644 index 000000000..9da83cd6e --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/index-print.html @@ -0,0 +1,494 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 04:03:37 PDT 2021

+ +
+
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g ssid_wpa2_2g [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something something [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 3c:2c:99:f4:4e:78 [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
62437WPA24AUTO201024TCPDUT-TXNANA60208.16 Mbps208.073 Mbps208.179 Mbps219.764 Mbps217.953 Mbps-390 / 8780380288.9 Mbps288.9 Mbps802.11bgn802.11n
+ +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0208.07-39-39
+ +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-04-03-37/index.html b/reports/dataplane-2021-06-08-04-03-37/index.html new file mode 100644 index 000000000..875b1191b --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/index.html @@ -0,0 +1,499 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 04:03:37 PDT 2021

+ +
+
+PDF Report
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g ssid_wpa2_2g [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something something [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 3c:2c:99:f4:4e:78 [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
62437WPA24AUTO201024TCPDUT-TXNANA60208.16 Mbps208.073 Mbps208.179 Mbps219.764 Mbps217.953 Mbps-390 / 8780380288.9 Mbps288.9 Mbps802.11bgn802.11n
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0208.07-39-39
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0-print.png b/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0-print.png new file mode 100644 index 000000000..ae9768db5 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0-print.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0.png b/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0.png new file mode 100644 index 000000000..7d2cafef9 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/kpi-chart-0.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/kpi.csv b/reports/dataplane-2021-06-08-04-03-37/kpi.csv new file mode 100644 index 000000000..40be86b4d --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/kpi.csv @@ -0,0 +1,2 @@ +Date test-rig dut-hw-version dut-sw-version dut-model-num dut-serial-num test-priority test-id short-description pass/fail numeric-score test details Units Graph-Group Subtest-Pass Subtest-Fail +1623150217643 ecw5410 ecw5410-1.1.0.tar.gz ecw5410 3c2c99f44e77 90 Dataplane TCP-DUT-TX-1024pkt-sz 208.072604 Throughput at specified settings. Mbps Throughput 0 0 diff --git a/reports/dataplane-2021-06-08-04-03-37/logo.png b/reports/dataplane-2021-06-08-04-03-37/logo.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/logo.png differ diff --git a/reports/dataplane-2021-06-08-04-03-37/report.css b/reports/dataplane-2021-06-08-04-03-37/report.css new file mode 100644 index 000000000..9b2925190 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/report.css @@ -0,0 +1,256 @@ +html, body,div { + margin: 0; + padding:0; + font-size: 14px; +} +h1,h2,h3,h4 { + padding: 0em; + line-height: 1.5; + text-align: left; + color: rgb(42,91,41); +} +@font-face { + font-family: CenturyGothic; + src: url("CenturyGothic.woff"), + url("images/CenturyGothic.woff"), + url("/images/CenturyGothic.woff"), + url("http://www.candelatech.com/images/CenturyGothic.woff"); +} +body,h1,h2,h3,h4 { + font-family: CenturyGothic, "Century Gothic", Arial, Helvetica, sans-serif; +} +h1 { font-size: 30px;} +h2 { font-size: 24px;} +h3 { font-size: 18px;} +h4 { font-size: 14px;} +li,pre,tt { + text-align: left; +} +pre { + font-size: 10px; +} +table { + border-collapse: collapse; + background: #e0e0e0; +} +table, td, th { + border: 1px solid gray; + padding 4px; +} +table.noborder, table.noborder td, table.noborder th { + border: 0 none; +} +td { + background: white; +} +td.ar { + text-align: right; +} +th { + color: rgb(42,91,41); + text-align: center; +} +#lf_title { + text-align: center; + background-image: url(candela_swirl_small-72h.png); + background-position: right; + background-repeat: no-repeat; + height: 90px; +} +#new_chart { + display: block; + height: 250px; + min-width: 200px; + width: 80%; + border: 1px solid black; + margin: 14px auto; + padding: 14px; + vertical-align: bottom; + text-align: center; +} +.lf_chart { + margin: 1em; + padding: 5px; +} +#error_types ul { + background: #f0f0f0; + font-size: 12px; + line-height: 1.5; + margin: 1em; + padding: 0.25em inherit 0.25em inherit; + max-height: 8em; + overflow: auto; +} +li { + line-height: 1.5; +} +.contentDiv { + margin: 1em 0.25in; +} +.ct-point { + stroke-width: 6px;} + +.o_el { + display: inline-block; + width: 100px; + height: 230px; + border: none; + margin: 1px 1px 16px 1px; + padding: 10px 10px 0 10px; + background: #eee; + text-align: center; + vertical-align: bottom; +} +.bar_el { + display: block; + background: green; + border: none; + min-height: 1px; + + margin: 0 0 5px 0; + padding: 0; + text-align: center; +} +.label_el { + color: black; + display: block; + font-size: 14px; + font-family: Arial,Helvetica,sans-serif,mono; + margin: 1px; + text-align: center; + vertical-align: bottom; + width: inherit; +} +.value_el { + font-family: Arial,Helvetica,sans-serif,mono; + color: black; + display: block; + font-size: 14px; + margin: 0 auto; + padding: none; + border: none; + background: white; + text-align: center; + vertical-align: bottom; + width: auto; +} +.value_el>span { + background: #f0f0f0a0; + border: 1px solid #f0f0f0a0; + border-radius: 5px; + padding: 1px; + min-width: 2em; +} +.error { + color: red; +} + +@media only screen { +.hideFromPrint { } +.hideFromScreen { display:none; } +} +@media only print { +.hideFromScreen { } +.hideFromPrint { display:none; } +} + +/* these styles will get overridden by custom.css */ +.TitleFontScreen { + margin-left:auto; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 1em; +} + +.TitleFontPrint { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 20px; + padding-left: 20px; +} + +.TitleFontPrintSub { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + /*font-size: 20px; Let 'h3', etc control this */ + padding-top: 0px; + padding-left: 20px; +} + +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +div.Section h1, div.Section h2 { + margin: 0 0 0 0em; +} +div.HeaderStyle h1, div.HeaderStyle h2 { + text-align: left; + margin: 0 0 0 0; +} +div.Section { + padding 5px; + position: relative; +} +div.Section img { + margin: 0; + padding: 0; + position: relative; + top: 50%; + transform: translateY(-50%); +} +div.FooterStyle { + width: 100%; + vertical-align: middle; + border: 0 none; + border-top: 2px solid #2A5B29; + color: #2A5B29; + font-size: 12px; + margin-top: 2em; +} +div.FooterStyle img { + width: auto; + height: auto; + text-align: right; +} +div.FooterStyle span.Gradient { + background: white; + color: #2A5B29; + display: inline-block; + height: 30px; + line-height: 1; + padding-top: 22px; + padding-bottom: 20px; + padding-left: 2em; + vertical-align: middle; + max-width:80%; + float:left; + width:50%; +} +.FooterStyle a, .FooterStyle a:visited { + color: #2A5B29; + font-size: 12px; + line-height: 1; + height: 30px; + margin: 0; + padding: 0; + vertical-align: middle; +} +div.FooterStyle a.LogoImgLink { + display: inline-block; + text-align: right; + float: right; +} +a .LogoImgLink { +} +a.LogoImgLink img { +} diff --git a/reports/dataplane-2021-06-08-04-03-37/report_banner-1000x205.jpg b/reports/dataplane-2021-06-08-04-03-37/report_banner-1000x205.jpg new file mode 100644 index 000000000..e9e080ab8 Binary files /dev/null and b/reports/dataplane-2021-06-08-04-03-37/report_banner-1000x205.jpg differ diff --git a/reports/dataplane-2021-06-08-04-03-37/text-csv-0.csv b/reports/dataplane-2021-06-08-04-03-37/text-csv-0.csv new file mode 100644 index 000000000..d22d45698 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/text-csv-0.csv @@ -0,0 +1,2 @@ +Channel,Frequency,Security,NSS,Cfg-Mode,Bandwidth,Pkt,Traffic-Type,Direction,Atten,Rotation,Duration,Offered-1m,Rx-Bps,Rx-Bps-1m,Rx-Bps-LL,Rx-Bps-3s,RSSI,Tx-Failed,Tx-Failed%,Tx-Rate,Rx-Rate,Rpt-Mode,Rpt-Mode-Brief +6,2437,WPA2,4,AUTO,20,1024,TCP,DUT-TX,NA,NA,60,208.16 Mbps,208.073 Mbps,208.179 Mbps,219.764 Mbps,217.953 Mbps,-39,0 / 878038,0,288.9 Mbps,288.9 Mbps,802.11bgn,802.11n diff --git a/reports/dataplane-2021-06-08-04-03-37/text-csv-1.csv b/reports/dataplane-2021-06-08-04-03-37/text-csv-1.csv new file mode 100644 index 000000000..f2d83befb --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/text-csv-1.csv @@ -0,0 +1,2 @@ +Step Index,Position [Deg],Attenuation [dB],Throughput [Mbps],Beacon RSSI [dBm],Data RSSI [dBm] +0,NA,0,208.07,-39,-39 diff --git a/reports/dataplane-2021-06-08-04-03-37/text-tab-0.csv b/reports/dataplane-2021-06-08-04-03-37/text-tab-0.csv new file mode 100644 index 000000000..fa74496d7 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/text-tab-0.csv @@ -0,0 +1,2 @@ +Channel Frequency Security NSS Cfg-Mode Bandwidth Pkt Traffic-Type Direction Atten Rotation Duration Offered-1m Rx-Bps Rx-Bps-1m Rx-Bps-LL Rx-Bps-3s RSSI Tx-Failed Tx-Failed% Tx-Rate Rx-Rate Rpt-Mode Rpt-Mode-Brief +6 2437 WPA2 4 AUTO 20 1024 TCP DUT-TX NA NA 60 208.16 Mbps 208.073 Mbps 208.179 Mbps 219.764 Mbps 217.953 Mbps -39 0 / 878038 0 288.9 Mbps 288.9 Mbps 802.11bgn 802.11n diff --git a/reports/dataplane-2021-06-08-04-03-37/text-tab-1.csv b/reports/dataplane-2021-06-08-04-03-37/text-tab-1.csv new file mode 100644 index 000000000..17e62d334 --- /dev/null +++ b/reports/dataplane-2021-06-08-04-03-37/text-tab-1.csv @@ -0,0 +1,2 @@ +Step Index Position [Deg] Attenuation [dB] Throughput [Mbps] Beacon RSSI [dBm] Data RSSI [dBm] +0 NA 0 208.07 -39 -39 diff --git a/reports/dataplane-2021-06-08-05-16-17/CandelaLogo2-90dpi-200x90-trans.png b/reports/dataplane-2021-06-08-05-16-17/CandelaLogo2-90dpi-200x90-trans.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/CandelaLogo2-90dpi-200x90-trans.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/CenturyGothic.woff b/reports/dataplane-2021-06-08-05-16-17/CenturyGothic.woff new file mode 100644 index 000000000..877ec4a27 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/CenturyGothic.woff differ diff --git a/reports/dataplane-2021-06-08-05-16-17/candela_swirl_small-72h.png b/reports/dataplane-2021-06-08-05-16-17/candela_swirl_small-72h.png new file mode 100644 index 000000000..e288f8c96 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/candela_swirl_small-72h.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/canvil.ico b/reports/dataplane-2021-06-08-05-16-17/canvil.ico new file mode 100644 index 000000000..5f27eb942 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/canvil.ico differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-1-print.png b/reports/dataplane-2021-06-08-05-16-17/chart-1-print.png new file mode 100644 index 000000000..e25d9b688 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-1-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-1.png b/reports/dataplane-2021-06-08-05-16-17/chart-1.png new file mode 100644 index 000000000..0ae762041 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-1.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-2-print.png b/reports/dataplane-2021-06-08-05-16-17/chart-2-print.png new file mode 100644 index 000000000..7a51eb432 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-2-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-2.png b/reports/dataplane-2021-06-08-05-16-17/chart-2.png new file mode 100644 index 000000000..12aa0f894 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-2.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-3-print.png b/reports/dataplane-2021-06-08-05-16-17/chart-3-print.png new file mode 100644 index 000000000..a24d0cbd3 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-3-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-3.png b/reports/dataplane-2021-06-08-05-16-17/chart-3.png new file mode 100644 index 000000000..feba1385a Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-3.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-4-print.png b/reports/dataplane-2021-06-08-05-16-17/chart-4-print.png new file mode 100644 index 000000000..c423afdce Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-4-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-4.png b/reports/dataplane-2021-06-08-05-16-17/chart-4.png new file mode 100644 index 000000000..d41363bb8 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-4.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-5-print.png b/reports/dataplane-2021-06-08-05-16-17/chart-5-print.png new file mode 100644 index 000000000..def22f969 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-5-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/chart-5.png b/reports/dataplane-2021-06-08-05-16-17/chart-5.png new file mode 100644 index 000000000..c9b790d87 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/chart-5.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv new file mode 100644 index 000000000..511a9c972 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv @@ -0,0 +1,63 @@ +"Endpoint RX Packet Loss Percentage", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent", +NA,NA,NA,NA,"2021-06-08T12:15:16.525 UTC",0,"2021-06-08T12:15:16.525 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:17.535 UTC",0,"2021-06-08T12:15:17.535 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:18.546 UTC",0,"2021-06-08T12:15:18.546 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:19.556 UTC",0,"2021-06-08T12:15:19.556 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:20.568 UTC",0,"2021-06-08T12:15:20.568 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:21.579 UTC",0,"2021-06-08T12:15:21.579 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:22.592 UTC",0,"2021-06-08T12:15:22.592 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:23.602 UTC",0,"2021-06-08T12:15:23.602 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:24.614 UTC",0,"2021-06-08T12:15:24.614 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:25.628 UTC",0,"2021-06-08T12:15:25.628 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:26.639 UTC",0,"2021-06-08T12:15:26.639 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:27.650 UTC",0,"2021-06-08T12:15:27.650 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:28.661 UTC",0,"2021-06-08T12:15:28.661 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:29.672 UTC",0,"2021-06-08T12:15:29.672 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:30.683 UTC",0,"2021-06-08T12:15:30.683 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:31.694 UTC",0,"2021-06-08T12:15:31.694 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:32.705 UTC",0,"2021-06-08T12:15:32.705 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:33.716 UTC",0,"2021-06-08T12:15:33.716 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:34.727 UTC",0,"2021-06-08T12:15:34.727 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:35.739 UTC",0,"2021-06-08T12:15:35.739 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:36.811 UTC",0,"2021-06-08T12:15:36.811 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:37.824 UTC",0,"2021-06-08T12:15:37.824 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:38.835 UTC",0,"2021-06-08T12:15:38.835 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:39.845 UTC",0,"2021-06-08T12:15:39.845 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:40.856 UTC",0,"2021-06-08T12:15:40.856 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:41.866 UTC",0,"2021-06-08T12:15:41.866 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:42.876 UTC",0,"2021-06-08T12:15:42.876 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:43.887 UTC",0,"2021-06-08T12:15:43.887 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:44.900 UTC",0,"2021-06-08T12:15:44.900 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:45.912 UTC",0,"2021-06-08T12:15:45.912 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:46.924 UTC",0,"2021-06-08T12:15:46.924 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:47.934 UTC",0,"2021-06-08T12:15:47.934 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:48.945 UTC",0,"2021-06-08T12:15:48.945 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:49.958 UTC",0,"2021-06-08T12:15:49.958 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:50.969 UTC",0,"2021-06-08T12:15:50.969 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:51.980 UTC",0,"2021-06-08T12:15:51.980 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:52.991 UTC",0,"2021-06-08T12:15:52.991 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:54.002 UTC",0,"2021-06-08T12:15:54.002 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:55.015 UTC",0,"2021-06-08T12:15:55.015 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:56.027 UTC",0,"2021-06-08T12:15:56.027 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:57.037 UTC",0,"2021-06-08T12:15:57.037 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:58.050 UTC",0,"2021-06-08T12:15:58.050 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:59.063 UTC",0,"2021-06-08T12:15:59.063 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:00.074 UTC",0,"2021-06-08T12:16:00.074 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:01.085 UTC",0,"2021-06-08T12:16:01.085 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:02.095 UTC",0,"2021-06-08T12:16:02.095 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:03.106 UTC",0,"2021-06-08T12:16:03.106 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:04.117 UTC",0,"2021-06-08T12:16:04.117 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:05.130 UTC",0,"2021-06-08T12:16:05.130 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:06.145 UTC",0,"2021-06-08T12:16:06.145 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:07.157 UTC",0,"2021-06-08T12:16:07.157 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:08.168 UTC",0,"2021-06-08T12:16:08.168 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:09.178 UTC",0,"2021-06-08T12:16:09.178 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:10.188 UTC",0,"2021-06-08T12:16:10.188 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:11.201 UTC",0,"2021-06-08T12:16:11.201 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:12.212 UTC",0,"2021-06-08T12:16:12.212 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:13.225 UTC",0,"2021-06-08T12:16:13.225 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:14.237 UTC",0,"2021-06-08T12:16:14.237 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:15.247 UTC",0,"2021-06-08T12:16:15.247 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:16.258 UTC",0,"2021-06-08T12:16:16.258 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:17.269 UTC",0,"2021-06-08T12:16:17.269 UTC",0, diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Latency_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Latency_vs_Loops-1.csv new file mode 100644 index 000000000..6409c782e --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Latency_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Latency vs Loops", +"loop-1", +1012 diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-RX_Pps_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-RX_Pps_vs_Loops-1.csv new file mode 100644 index 000000000..26973b74c --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-RX_Pps_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"RX Pps vs Loops", +"loop-1", +48.39642 diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Realtime_Throughput-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Realtime_Throughput-1.csv new file mode 100644 index 000000000..4ac4be7c5 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Realtime_Throughput-1.csv @@ -0,0 +1,71 @@ +"Realtime Throughput", +Date,"Total Upload/RX (Mbps)",Date,"Total Download/RX (Mbps)",Date,"UL + DL Sum/RX (Mbps)", +"2021-06-08T12:15:08.438 UTC",0,"2021-06-08T12:15:08.438 UTC",0,"2021-06-08T12:15:08.438 UTC",0, +"2021-06-08T12:15:09.455 UTC",0,"2021-06-08T12:15:09.455 UTC",0,"2021-06-08T12:15:09.455 UTC",0, +"2021-06-08T12:15:10.464 UTC",0,"2021-06-08T12:15:10.464 UTC",0,"2021-06-08T12:15:10.464 UTC",0, +"2021-06-08T12:15:11.475 UTC",0,"2021-06-08T12:15:11.475 UTC",0,"2021-06-08T12:15:11.475 UTC",0, +"2021-06-08T12:15:12.485 UTC",0,"2021-06-08T12:15:12.485 UTC",0,"2021-06-08T12:15:12.485 UTC",0, +"2021-06-08T12:15:13.494 UTC",0,"2021-06-08T12:15:13.494 UTC",0,"2021-06-08T12:15:13.494 UTC",0, +"2021-06-08T12:15:14.504 UTC",0,"2021-06-08T12:15:14.504 UTC",0,"2021-06-08T12:15:14.504 UTC",0, +"2021-06-08T12:15:15.516 UTC",0,"2021-06-08T12:15:15.516 UTC",0,"2021-06-08T12:15:15.516 UTC",0, +"2021-06-08T12:15:16.526 UTC",0,"2021-06-08T12:15:16.526 UTC",0,"2021-06-08T12:15:16.526 UTC",0, +"2021-06-08T12:15:17.535 UTC",58.17248,"2021-06-08T12:15:17.535 UTC",112.92512,"2021-06-08T12:15:17.535 UTC",171.0976, +"2021-06-08T12:15:18.546 UTC",179.60972,"2021-06-08T12:15:18.546 UTC",162.37085,"2021-06-08T12:15:18.546 UTC",341.98057, +"2021-06-08T12:15:19.557 UTC",177.00236,"2021-06-08T12:15:19.557 UTC",159.8415,"2021-06-08T12:15:19.557 UTC",336.84386, +"2021-06-08T12:15:20.568 UTC",178.03306,"2021-06-08T12:15:20.568 UTC",161.9472,"2021-06-08T12:15:20.568 UTC",339.98026, +"2021-06-08T12:15:21.579 UTC",177.59258,"2021-06-08T12:15:21.579 UTC",162.19942,"2021-06-08T12:15:21.579 UTC",339.792, +"2021-06-08T12:15:22.592 UTC",176.60186,"2021-06-08T12:15:22.592 UTC",162.07542,"2021-06-08T12:15:22.592 UTC",338.67728, +"2021-06-08T12:15:23.602 UTC",176.3413,"2021-06-08T12:15:23.602 UTC",162.69577,"2021-06-08T12:15:23.602 UTC",339.03707, +"2021-06-08T12:15:24.615 UTC",175.66166,"2021-06-08T12:15:24.615 UTC",162.48842,"2021-06-08T12:15:24.615 UTC",338.15007, +"2021-06-08T12:15:25.629 UTC",165.4768,"2021-06-08T12:15:25.629 UTC",167.5761,"2021-06-08T12:15:25.629 UTC",333.0529, +"2021-06-08T12:15:26.640 UTC",147.66798,"2021-06-08T12:15:26.640 UTC",168.2281,"2021-06-08T12:15:26.640 UTC",315.89608, +"2021-06-08T12:15:27.651 UTC",149.57406,"2021-06-08T12:15:27.651 UTC",168.92268,"2021-06-08T12:15:27.651 UTC",318.49675, +"2021-06-08T12:15:28.662 UTC",161.34828,"2021-06-08T12:15:28.662 UTC",160.91578,"2021-06-08T12:15:28.662 UTC",322.26406, +"2021-06-08T12:15:29.672 UTC",170.30225,"2021-06-08T12:15:29.672 UTC",153.64643,"2021-06-08T12:15:29.672 UTC",323.94868, +"2021-06-08T12:15:30.683 UTC",168.95461,"2021-06-08T12:15:30.683 UTC",154.28133,"2021-06-08T12:15:30.683 UTC",323.23593, +"2021-06-08T12:15:31.694 UTC",168.21669,"2021-06-08T12:15:31.694 UTC",155.38586,"2021-06-08T12:15:31.694 UTC",323.60255, +"2021-06-08T12:15:32.705 UTC",184.82159,"2021-06-08T12:15:32.705 UTC",151.36374,"2021-06-08T12:15:32.705 UTC",336.18532, +"2021-06-08T12:15:33.716 UTC",210.22776,"2021-06-08T12:15:33.716 UTC",136.77279,"2021-06-08T12:15:33.716 UTC",347.00055, +"2021-06-08T12:15:34.728 UTC",231.1058,"2021-06-08T12:15:34.728 UTC",123.54814,"2021-06-08T12:15:34.728 UTC",354.65394, +"2021-06-08T12:15:35.739 UTC",231.1058,"2021-06-08T12:15:35.739 UTC",120.50971,"2021-06-08T12:15:35.739 UTC",351.61551, +"2021-06-08T12:15:36.813 UTC",251.18819,"2021-06-08T12:15:36.813 UTC",120.50971,"2021-06-08T12:15:36.813 UTC",371.6979, +"2021-06-08T12:15:37.825 UTC",267.83147,"2021-06-08T12:15:37.825 UTC",109.78054,"2021-06-08T12:15:37.825 UTC",377.61201, +"2021-06-08T12:15:38.836 UTC",284.42231,"2021-06-08T12:15:38.836 UTC",101.69369,"2021-06-08T12:15:38.836 UTC",386.116, +"2021-06-08T12:15:39.846 UTC",282.45151,"2021-06-08T12:15:39.846 UTC",102.18838,"2021-06-08T12:15:39.846 UTC",384.63988, +"2021-06-08T12:15:40.857 UTC",273.03451,"2021-06-08T12:15:40.857 UTC",106.02201,"2021-06-08T12:15:40.857 UTC",379.05652, +"2021-06-08T12:15:41.867 UTC",282.9595,"2021-06-08T12:15:41.867 UTC",100.11849,"2021-06-08T12:15:41.867 UTC",383.078, +"2021-06-08T12:15:42.876 UTC",298.51296,"2021-06-08T12:15:42.876 UTC",90.96775,"2021-06-08T12:15:42.876 UTC",389.48071, +"2021-06-08T12:15:43.888 UTC",315.88825,"2021-06-08T12:15:43.888 UTC",82.9898,"2021-06-08T12:15:43.888 UTC",398.87805, +"2021-06-08T12:15:44.900 UTC",308.01798,"2021-06-08T12:15:44.900 UTC",85.8491,"2021-06-08T12:15:44.900 UTC",393.86708, +"2021-06-08T12:15:45.913 UTC",298.68963,"2021-06-08T12:15:45.913 UTC",90.9395,"2021-06-08T12:15:45.913 UTC",389.62913, +"2021-06-08T12:15:46.924 UTC",290.23079,"2021-06-08T12:15:46.924 UTC",95.65096,"2021-06-08T12:15:46.924 UTC",385.88175, +"2021-06-08T12:15:47.934 UTC",286.74275,"2021-06-08T12:15:47.934 UTC",98.76924,"2021-06-08T12:15:47.934 UTC",385.512, +"2021-06-08T12:15:48.945 UTC",311.80081,"2021-06-08T12:15:48.945 UTC",80.7434,"2021-06-08T12:15:48.945 UTC",392.5442, +"2021-06-08T12:15:49.958 UTC",340.17407,"2021-06-08T12:15:49.958 UTC",61.85363,"2021-06-08T12:15:49.958 UTC",402.0277, +"2021-06-08T12:15:50.969 UTC",371.7945,"2021-06-08T12:15:50.969 UTC",48.62847,"2021-06-08T12:15:50.969 UTC",420.42297, +"2021-06-08T12:15:51.981 UTC",356.90954,"2021-06-08T12:15:51.981 UTC",55.38371,"2021-06-08T12:15:51.981 UTC",412.29325, +"2021-06-08T12:15:52.992 UTC",351.11442,"2021-06-08T12:15:52.992 UTC",61.91736,"2021-06-08T12:15:52.992 UTC",413.03178, +"2021-06-08T12:15:54.003 UTC",342.52323,"2021-06-08T12:15:54.003 UTC",66.90822,"2021-06-08T12:15:54.003 UTC",409.43145, +"2021-06-08T12:15:55.015 UTC",334.3391,"2021-06-08T12:15:55.015 UTC",71.96012,"2021-06-08T12:15:55.015 UTC",406.29922, +"2021-06-08T12:15:56.027 UTC",333.82024,"2021-06-08T12:15:56.027 UTC",73.59273,"2021-06-08T12:15:56.027 UTC",407.41297, +"2021-06-08T12:15:57.037 UTC",340.39517,"2021-06-08T12:15:57.037 UTC",65.84747,"2021-06-08T12:15:57.037 UTC",406.24264, +"2021-06-08T12:15:58.051 UTC",336.80316,"2021-06-08T12:15:58.051 UTC",58.82794,"2021-06-08T12:15:58.051 UTC",395.6311, +"2021-06-08T12:15:59.063 UTC",331.1731,"2021-06-08T12:15:59.063 UTC",62.17546,"2021-06-08T12:15:59.063 UTC",393.34857, +"2021-06-08T12:16:00.074 UTC",316.93631,"2021-06-08T12:16:00.074 UTC",74.37214,"2021-06-08T12:16:00.074 UTC",391.30845, +"2021-06-08T12:16:01.086 UTC",297.64557,"2021-06-08T12:16:01.086 UTC",82.31914,"2021-06-08T12:16:01.086 UTC",379.96471, +"2021-06-08T12:16:02.096 UTC",287.11018,"2021-06-08T12:16:02.096 UTC",89.69442,"2021-06-08T12:16:02.096 UTC",376.8046, +"2021-06-08T12:16:03.106 UTC",285.52493,"2021-06-08T12:16:03.106 UTC",96.45051,"2021-06-08T12:16:03.106 UTC",381.97544, +"2021-06-08T12:16:04.117 UTC",277.59998,"2021-06-08T12:16:04.117 UTC",101.74935,"2021-06-08T12:16:04.117 UTC",379.34933, +"2021-06-08T12:16:05.134 UTC",271.16611,"2021-06-08T12:16:05.134 UTC",104.62686,"2021-06-08T12:16:05.134 UTC",375.79298, +"2021-06-08T12:16:06.146 UTC",272.23172,"2021-06-08T12:16:06.146 UTC",110.13586,"2021-06-08T12:16:06.146 UTC",382.36757, +"2021-06-08T12:16:07.157 UTC",266.48786,"2021-06-08T12:16:07.157 UTC",112.57526,"2021-06-08T12:16:07.157 UTC",379.06312, +"2021-06-08T12:16:08.168 UTC",262.14567,"2021-06-08T12:16:08.168 UTC",115.51292,"2021-06-08T12:16:08.168 UTC",377.65859, +"2021-06-08T12:16:09.178 UTC",239.21524,"2021-06-08T12:16:09.178 UTC",128.70994,"2021-06-08T12:16:09.178 UTC",367.92518, +"2021-06-08T12:16:10.188 UTC",208.07618,"2021-06-08T12:16:10.188 UTC",144.86219,"2021-06-08T12:16:10.188 UTC",352.93837, +"2021-06-08T12:16:11.202 UTC",178.03648,"2021-06-08T12:16:11.202 UTC",160.65777,"2021-06-08T12:16:11.202 UTC",338.69425, +"2021-06-08T12:16:12.214 UTC",178.03648,"2021-06-08T12:16:12.214 UTC",165.54585,"2021-06-08T12:16:12.214 UTC",343.58233, +"2021-06-08T12:16:13.226 UTC",176.33844,"2021-06-08T12:16:13.226 UTC",164.8422,"2021-06-08T12:16:13.226 UTC",341.18064, +"2021-06-08T12:16:14.237 UTC",182.48577,"2021-06-08T12:16:14.237 UTC",150.26209,"2021-06-08T12:16:14.237 UTC",332.74786, +"2021-06-08T12:16:15.247 UTC",207.12252,"2021-06-08T12:16:15.247 UTC",136.15151,"2021-06-08T12:16:15.247 UTC",343.27403, +"2021-06-08T12:16:16.258 UTC",229.0215,"2021-06-08T12:16:16.258 UTC",124.81304,"2021-06-08T12:16:16.258 UTC",353.83454, +"2021-06-08T12:16:17.270 UTC",239.01652,"2021-06-08T12:16:17.270 UTC",128.06692,"2021-06-08T12:16:17.270 UTC",367.08345, diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Rx_Errors-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Rx_Errors-1.csv new file mode 100644 index 000000000..7f4d19818 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Rx_Errors-1.csv @@ -0,0 +1,63 @@ +"Rx Errors", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Errors", +NA,NA,NA,NA,"2021-06-08T12:15:16.525 UTC",0,"2021-06-08T12:15:16.525 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:17.535 UTC",0,"2021-06-08T12:15:17.535 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:18.546 UTC",0,"2021-06-08T12:15:18.546 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:19.556 UTC",0,"2021-06-08T12:15:19.556 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:20.568 UTC",0,"2021-06-08T12:15:20.568 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:21.579 UTC",0,"2021-06-08T12:15:21.579 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:22.592 UTC",0,"2021-06-08T12:15:22.592 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:23.602 UTC",0,"2021-06-08T12:15:23.602 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:24.614 UTC",0,"2021-06-08T12:15:24.614 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:25.628 UTC",0,"2021-06-08T12:15:25.628 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:26.639 UTC",0,"2021-06-08T12:15:26.639 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:27.650 UTC",0,"2021-06-08T12:15:27.650 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:28.661 UTC",0,"2021-06-08T12:15:28.661 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:29.672 UTC",0,"2021-06-08T12:15:29.672 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:30.683 UTC",0,"2021-06-08T12:15:30.683 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:31.694 UTC",0,"2021-06-08T12:15:31.694 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:32.705 UTC",0,"2021-06-08T12:15:32.705 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:33.716 UTC",0,"2021-06-08T12:15:33.716 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:34.727 UTC",0,"2021-06-08T12:15:34.727 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:35.739 UTC",0,"2021-06-08T12:15:35.739 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:36.811 UTC",0,"2021-06-08T12:15:36.811 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:37.824 UTC",0,"2021-06-08T12:15:37.824 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:38.835 UTC",0,"2021-06-08T12:15:38.835 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:39.845 UTC",0,"2021-06-08T12:15:39.845 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:40.856 UTC",0,"2021-06-08T12:15:40.856 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:41.866 UTC",0,"2021-06-08T12:15:41.866 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:42.876 UTC",0,"2021-06-08T12:15:42.876 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:43.887 UTC",0,"2021-06-08T12:15:43.887 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:44.900 UTC",0,"2021-06-08T12:15:44.900 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:45.912 UTC",0,"2021-06-08T12:15:45.912 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:46.924 UTC",0,"2021-06-08T12:15:46.924 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:47.934 UTC",0,"2021-06-08T12:15:47.934 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:48.945 UTC",0,"2021-06-08T12:15:48.945 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:49.958 UTC",0,"2021-06-08T12:15:49.958 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:50.969 UTC",0,"2021-06-08T12:15:50.969 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:51.980 UTC",0,"2021-06-08T12:15:51.980 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:52.991 UTC",0,"2021-06-08T12:15:52.991 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:54.002 UTC",0,"2021-06-08T12:15:54.002 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:55.015 UTC",0,"2021-06-08T12:15:55.015 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:56.027 UTC",0,"2021-06-08T12:15:56.027 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:57.037 UTC",0,"2021-06-08T12:15:57.037 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:58.050 UTC",0,"2021-06-08T12:15:58.050 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:15:59.063 UTC",0,"2021-06-08T12:15:59.063 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:00.074 UTC",0,"2021-06-08T12:16:00.074 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:01.085 UTC",0,"2021-06-08T12:16:01.085 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:02.095 UTC",0,"2021-06-08T12:16:02.095 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:03.106 UTC",0,"2021-06-08T12:16:03.106 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:04.117 UTC",0,"2021-06-08T12:16:04.117 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:05.130 UTC",0,"2021-06-08T12:16:05.130 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:06.145 UTC",0,"2021-06-08T12:16:06.145 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:07.157 UTC",0,"2021-06-08T12:16:07.157 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:08.168 UTC",0,"2021-06-08T12:16:08.168 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:09.178 UTC",0,"2021-06-08T12:16:09.178 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:10.188 UTC",0,"2021-06-08T12:16:10.188 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:11.201 UTC",0,"2021-06-08T12:16:11.201 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:12.212 UTC",0,"2021-06-08T12:16:12.212 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:13.225 UTC",0,"2021-06-08T12:16:13.225 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:14.237 UTC",0,"2021-06-08T12:16:14.237 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:15.247 UTC",0,"2021-06-08T12:16:15.247 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:16.258 UTC",0,"2021-06-08T12:16:16.258 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:16:17.269 UTC",0,"2021-06-08T12:16:17.269 UTC",0, diff --git a/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Throughput_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Throughput_vs_Loops-1.csv new file mode 100644 index 000000000..3ef0a770d --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/csv-data/data-Throughput_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Throughput vs Loops", +"loop-1", +369.23525 diff --git a/reports/dataplane-2021-06-08-05-16-17/custom.css b/reports/dataplane-2021-06-08-05-16-17/custom.css new file mode 100644 index 000000000..26e937507 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/custom.css @@ -0,0 +1,11 @@ +/* file reserved for customer styling of reports */ +/* rename to custom.css to take effect */ + +.TitleFont {} +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +.HeaderStyle {} +.FooterStyle {} +/* eof */ diff --git a/reports/dataplane-2021-06-08-05-16-17/dataplane-report-2021-06-08-05-15-08.pdf b/reports/dataplane-2021-06-08-05-16-17/dataplane-report-2021-06-08-05-15-08.pdf new file mode 100644 index 000000000..f61ea872b Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/dataplane-report-2021-06-08-05-15-08.pdf differ diff --git a/reports/dataplane-2021-06-08-05-16-17/index-print.html b/reports/dataplane-2021-06-08-05-16-17/index-print.html new file mode 100644 index 000000000..b5ccd8275 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/index-print.html @@ -0,0 +1,494 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 05:16:17 PDT 2021

+ +
+
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60369.22 Mbps369.049 Mbps369.235 Mbps390.143 Mbps367.083 Mbps-550 / 133420201560 Mbps1.3 Gbps802.11an-AC802.11ac
+ +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0369.05-54-55
+ +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-05-16-17/index.html b/reports/dataplane-2021-06-08-05-16-17/index.html new file mode 100644 index 000000000..961c58786 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/index.html @@ -0,0 +1,499 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 05:16:17 PDT 2021

+ +
+
+PDF Report
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60369.22 Mbps369.049 Mbps369.235 Mbps390.143 Mbps367.083 Mbps-550 / 133420201560 Mbps1.3 Gbps802.11an-AC802.11ac
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0369.05-54-55
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0-print.png b/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0-print.png new file mode 100644 index 000000000..5bb5f2ba6 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0-print.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0.png b/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0.png new file mode 100644 index 000000000..b61177e08 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/kpi-chart-0.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/kpi.csv b/reports/dataplane-2021-06-08-05-16-17/kpi.csv new file mode 100644 index 000000000..f6de9abce --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/kpi.csv @@ -0,0 +1,2 @@ +Date test-rig dut-hw-version dut-sw-version dut-model-num dut-serial-num test-priority test-id short-description pass/fail numeric-score test details Units Graph-Group Subtest-Pass Subtest-Fail +1623154577323 ecw5410 ecw5410-1.1.0.tar.gz ecw5410 3c2c99f44e77 90 Dataplane TCP-DUT-TX-1024pkt-sz 369.049388 Throughput at specified settings. Mbps Throughput 0 0 diff --git a/reports/dataplane-2021-06-08-05-16-17/logo.png b/reports/dataplane-2021-06-08-05-16-17/logo.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/logo.png differ diff --git a/reports/dataplane-2021-06-08-05-16-17/report.css b/reports/dataplane-2021-06-08-05-16-17/report.css new file mode 100644 index 000000000..9b2925190 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/report.css @@ -0,0 +1,256 @@ +html, body,div { + margin: 0; + padding:0; + font-size: 14px; +} +h1,h2,h3,h4 { + padding: 0em; + line-height: 1.5; + text-align: left; + color: rgb(42,91,41); +} +@font-face { + font-family: CenturyGothic; + src: url("CenturyGothic.woff"), + url("images/CenturyGothic.woff"), + url("/images/CenturyGothic.woff"), + url("http://www.candelatech.com/images/CenturyGothic.woff"); +} +body,h1,h2,h3,h4 { + font-family: CenturyGothic, "Century Gothic", Arial, Helvetica, sans-serif; +} +h1 { font-size: 30px;} +h2 { font-size: 24px;} +h3 { font-size: 18px;} +h4 { font-size: 14px;} +li,pre,tt { + text-align: left; +} +pre { + font-size: 10px; +} +table { + border-collapse: collapse; + background: #e0e0e0; +} +table, td, th { + border: 1px solid gray; + padding 4px; +} +table.noborder, table.noborder td, table.noborder th { + border: 0 none; +} +td { + background: white; +} +td.ar { + text-align: right; +} +th { + color: rgb(42,91,41); + text-align: center; +} +#lf_title { + text-align: center; + background-image: url(candela_swirl_small-72h.png); + background-position: right; + background-repeat: no-repeat; + height: 90px; +} +#new_chart { + display: block; + height: 250px; + min-width: 200px; + width: 80%; + border: 1px solid black; + margin: 14px auto; + padding: 14px; + vertical-align: bottom; + text-align: center; +} +.lf_chart { + margin: 1em; + padding: 5px; +} +#error_types ul { + background: #f0f0f0; + font-size: 12px; + line-height: 1.5; + margin: 1em; + padding: 0.25em inherit 0.25em inherit; + max-height: 8em; + overflow: auto; +} +li { + line-height: 1.5; +} +.contentDiv { + margin: 1em 0.25in; +} +.ct-point { + stroke-width: 6px;} + +.o_el { + display: inline-block; + width: 100px; + height: 230px; + border: none; + margin: 1px 1px 16px 1px; + padding: 10px 10px 0 10px; + background: #eee; + text-align: center; + vertical-align: bottom; +} +.bar_el { + display: block; + background: green; + border: none; + min-height: 1px; + + margin: 0 0 5px 0; + padding: 0; + text-align: center; +} +.label_el { + color: black; + display: block; + font-size: 14px; + font-family: Arial,Helvetica,sans-serif,mono; + margin: 1px; + text-align: center; + vertical-align: bottom; + width: inherit; +} +.value_el { + font-family: Arial,Helvetica,sans-serif,mono; + color: black; + display: block; + font-size: 14px; + margin: 0 auto; + padding: none; + border: none; + background: white; + text-align: center; + vertical-align: bottom; + width: auto; +} +.value_el>span { + background: #f0f0f0a0; + border: 1px solid #f0f0f0a0; + border-radius: 5px; + padding: 1px; + min-width: 2em; +} +.error { + color: red; +} + +@media only screen { +.hideFromPrint { } +.hideFromScreen { display:none; } +} +@media only print { +.hideFromScreen { } +.hideFromPrint { display:none; } +} + +/* these styles will get overridden by custom.css */ +.TitleFontScreen { + margin-left:auto; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 1em; +} + +.TitleFontPrint { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 20px; + padding-left: 20px; +} + +.TitleFontPrintSub { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + /*font-size: 20px; Let 'h3', etc control this */ + padding-top: 0px; + padding-left: 20px; +} + +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +div.Section h1, div.Section h2 { + margin: 0 0 0 0em; +} +div.HeaderStyle h1, div.HeaderStyle h2 { + text-align: left; + margin: 0 0 0 0; +} +div.Section { + padding 5px; + position: relative; +} +div.Section img { + margin: 0; + padding: 0; + position: relative; + top: 50%; + transform: translateY(-50%); +} +div.FooterStyle { + width: 100%; + vertical-align: middle; + border: 0 none; + border-top: 2px solid #2A5B29; + color: #2A5B29; + font-size: 12px; + margin-top: 2em; +} +div.FooterStyle img { + width: auto; + height: auto; + text-align: right; +} +div.FooterStyle span.Gradient { + background: white; + color: #2A5B29; + display: inline-block; + height: 30px; + line-height: 1; + padding-top: 22px; + padding-bottom: 20px; + padding-left: 2em; + vertical-align: middle; + max-width:80%; + float:left; + width:50%; +} +.FooterStyle a, .FooterStyle a:visited { + color: #2A5B29; + font-size: 12px; + line-height: 1; + height: 30px; + margin: 0; + padding: 0; + vertical-align: middle; +} +div.FooterStyle a.LogoImgLink { + display: inline-block; + text-align: right; + float: right; +} +a .LogoImgLink { +} +a.LogoImgLink img { +} diff --git a/reports/dataplane-2021-06-08-05-16-17/report_banner-1000x205.jpg b/reports/dataplane-2021-06-08-05-16-17/report_banner-1000x205.jpg new file mode 100644 index 000000000..e9e080ab8 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-16-17/report_banner-1000x205.jpg differ diff --git a/reports/dataplane-2021-06-08-05-16-17/text-csv-0.csv b/reports/dataplane-2021-06-08-05-16-17/text-csv-0.csv new file mode 100644 index 000000000..0b15d085e --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/text-csv-0.csv @@ -0,0 +1,2 @@ +Channel,Frequency,Security,NSS,Cfg-Mode,Bandwidth,Pkt,Traffic-Type,Direction,Atten,Rotation,Duration,Offered-1m,Rx-Bps,Rx-Bps-1m,Rx-Bps-LL,Rx-Bps-3s,RSSI,Tx-Failed,Tx-Failed%,Tx-Rate,Rx-Rate,Rpt-Mode,Rpt-Mode-Brief +36,5180,WPA2,4,AUTO,80,1024,TCP,DUT-TX,NA,NA,60,369.22 Mbps,369.049 Mbps,369.235 Mbps,390.143 Mbps,367.083 Mbps,-55,0 / 1334202,0,1560 Mbps,1.3 Gbps,802.11an-AC,802.11ac diff --git a/reports/dataplane-2021-06-08-05-16-17/text-csv-1.csv b/reports/dataplane-2021-06-08-05-16-17/text-csv-1.csv new file mode 100644 index 000000000..6f17e5bf0 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/text-csv-1.csv @@ -0,0 +1,2 @@ +Step Index,Position [Deg],Attenuation [dB],Throughput [Mbps],Beacon RSSI [dBm],Data RSSI [dBm] +0,NA,0,369.05,-54,-55 diff --git a/reports/dataplane-2021-06-08-05-16-17/text-tab-0.csv b/reports/dataplane-2021-06-08-05-16-17/text-tab-0.csv new file mode 100644 index 000000000..f57611f06 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/text-tab-0.csv @@ -0,0 +1,2 @@ +Channel Frequency Security NSS Cfg-Mode Bandwidth Pkt Traffic-Type Direction Atten Rotation Duration Offered-1m Rx-Bps Rx-Bps-1m Rx-Bps-LL Rx-Bps-3s RSSI Tx-Failed Tx-Failed% Tx-Rate Rx-Rate Rpt-Mode Rpt-Mode-Brief +36 5180 WPA2 4 AUTO 80 1024 TCP DUT-TX NA NA 60 369.22 Mbps 369.049 Mbps 369.235 Mbps 390.143 Mbps 367.083 Mbps -55 0 / 1334202 0 1560 Mbps 1.3 Gbps 802.11an-AC 802.11ac diff --git a/reports/dataplane-2021-06-08-05-16-17/text-tab-1.csv b/reports/dataplane-2021-06-08-05-16-17/text-tab-1.csv new file mode 100644 index 000000000..3bbd2b6e1 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-16-17/text-tab-1.csv @@ -0,0 +1,2 @@ +Step Index Position [Deg] Attenuation [dB] Throughput [Mbps] Beacon RSSI [dBm] Data RSSI [dBm] +0 NA 0 369.05 -54 -55 diff --git a/reports/dataplane-2021-06-08-05-44-43/CandelaLogo2-90dpi-200x90-trans.png b/reports/dataplane-2021-06-08-05-44-43/CandelaLogo2-90dpi-200x90-trans.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/CandelaLogo2-90dpi-200x90-trans.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/CenturyGothic.woff b/reports/dataplane-2021-06-08-05-44-43/CenturyGothic.woff new file mode 100644 index 000000000..877ec4a27 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/CenturyGothic.woff differ diff --git a/reports/dataplane-2021-06-08-05-44-43/candela_swirl_small-72h.png b/reports/dataplane-2021-06-08-05-44-43/candela_swirl_small-72h.png new file mode 100644 index 000000000..e288f8c96 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/candela_swirl_small-72h.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/canvil.ico b/reports/dataplane-2021-06-08-05-44-43/canvil.ico new file mode 100644 index 000000000..5f27eb942 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/canvil.ico differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-1-print.png b/reports/dataplane-2021-06-08-05-44-43/chart-1-print.png new file mode 100644 index 000000000..59110e1e8 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-1-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-1.png b/reports/dataplane-2021-06-08-05-44-43/chart-1.png new file mode 100644 index 000000000..7724e8da8 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-1.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-2-print.png b/reports/dataplane-2021-06-08-05-44-43/chart-2-print.png new file mode 100644 index 000000000..e285cc8ca Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-2-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-2.png b/reports/dataplane-2021-06-08-05-44-43/chart-2.png new file mode 100644 index 000000000..b3ad5d3e7 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-2.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-3-print.png b/reports/dataplane-2021-06-08-05-44-43/chart-3-print.png new file mode 100644 index 000000000..2839cad27 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-3-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-3.png b/reports/dataplane-2021-06-08-05-44-43/chart-3.png new file mode 100644 index 000000000..e8468f456 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-3.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-4-print.png b/reports/dataplane-2021-06-08-05-44-43/chart-4-print.png new file mode 100644 index 000000000..924066477 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-4-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-4.png b/reports/dataplane-2021-06-08-05-44-43/chart-4.png new file mode 100644 index 000000000..53f223e1c Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-4.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-5-print.png b/reports/dataplane-2021-06-08-05-44-43/chart-5-print.png new file mode 100644 index 000000000..134254e06 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-5-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/chart-5.png b/reports/dataplane-2021-06-08-05-44-43/chart-5.png new file mode 100644 index 000000000..a7c7d38dc Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/chart-5.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv new file mode 100644 index 000000000..28e6d684f --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv @@ -0,0 +1,63 @@ +"Endpoint RX Packet Loss Percentage", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent", +NA,NA,NA,NA,"2021-06-08T12:43:42.554 UTC",0,"2021-06-08T12:43:42.554 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:43.566 UTC",0,"2021-06-08T12:43:43.566 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:44.576 UTC",0,"2021-06-08T12:43:44.576 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:45.588 UTC",0,"2021-06-08T12:43:45.588 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:46.601 UTC",0,"2021-06-08T12:43:46.601 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:47.611 UTC",0,"2021-06-08T12:43:47.611 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:48.622 UTC",0,"2021-06-08T12:43:48.622 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:49.634 UTC",0,"2021-06-08T12:43:49.634 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:50.646 UTC",0,"2021-06-08T12:43:50.646 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:51.657 UTC",0,"2021-06-08T12:43:51.657 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:52.732 UTC",0,"2021-06-08T12:43:52.732 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:53.750 UTC",0,"2021-06-08T12:43:53.750 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:54.762 UTC",0,"2021-06-08T12:43:54.762 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:55.774 UTC",0,"2021-06-08T12:43:55.774 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:56.784 UTC",0,"2021-06-08T12:43:56.784 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:57.795 UTC",0,"2021-06-08T12:43:57.795 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:58.805 UTC",0,"2021-06-08T12:43:58.805 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:59.814 UTC",0,"2021-06-08T12:43:59.814 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:00.823 UTC",0,"2021-06-08T12:44:00.823 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:01.834 UTC",0,"2021-06-08T12:44:01.834 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:02.843 UTC",0,"2021-06-08T12:44:02.843 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:03.853 UTC",0,"2021-06-08T12:44:03.853 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:04.863 UTC",0,"2021-06-08T12:44:04.863 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:05.874 UTC",0,"2021-06-08T12:44:05.874 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:06.883 UTC",0,"2021-06-08T12:44:06.883 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:07.894 UTC",0,"2021-06-08T12:44:07.894 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:08.905 UTC",0,"2021-06-08T12:44:08.905 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:09.915 UTC",0,"2021-06-08T12:44:09.915 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:10.925 UTC",0,"2021-06-08T12:44:10.925 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:11.935 UTC",0,"2021-06-08T12:44:11.935 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:12.946 UTC",0,"2021-06-08T12:44:12.946 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:13.961 UTC",0,"2021-06-08T12:44:13.961 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:14.971 UTC",0,"2021-06-08T12:44:14.971 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:15.981 UTC",0,"2021-06-08T12:44:15.981 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:16.993 UTC",0,"2021-06-08T12:44:16.993 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:18.003 UTC",0,"2021-06-08T12:44:18.003 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:19.013 UTC",0,"2021-06-08T12:44:19.013 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:20.024 UTC",0,"2021-06-08T12:44:20.024 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:21.034 UTC",0,"2021-06-08T12:44:21.034 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:22.047 UTC",0,"2021-06-08T12:44:22.047 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:23.058 UTC",0,"2021-06-08T12:44:23.058 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:24.070 UTC",0,"2021-06-08T12:44:24.070 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:25.081 UTC",0,"2021-06-08T12:44:25.081 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:26.093 UTC",0,"2021-06-08T12:44:26.093 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:27.103 UTC",0,"2021-06-08T12:44:27.103 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:28.115 UTC",0,"2021-06-08T12:44:28.115 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:29.125 UTC",0,"2021-06-08T12:44:29.125 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:30.135 UTC",0,"2021-06-08T12:44:30.135 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:31.147 UTC",0,"2021-06-08T12:44:31.147 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:32.157 UTC",0,"2021-06-08T12:44:32.157 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:33.167 UTC",0,"2021-06-08T12:44:33.167 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:34.179 UTC",0,"2021-06-08T12:44:34.179 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:35.189 UTC",0,"2021-06-08T12:44:35.189 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:36.201 UTC",0,"2021-06-08T12:44:36.201 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:37.211 UTC",0,"2021-06-08T12:44:37.211 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:38.223 UTC",0,"2021-06-08T12:44:38.223 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:39.234 UTC",0,"2021-06-08T12:44:39.234 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:40.245 UTC",0,"2021-06-08T12:44:40.245 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:41.257 UTC",0,"2021-06-08T12:44:41.257 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:42.268 UTC",0,"2021-06-08T12:44:42.268 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:43.281 UTC",0,"2021-06-08T12:44:43.281 UTC",0, diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Latency_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Latency_vs_Loops-1.csv new file mode 100644 index 000000000..3fb055c98 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Latency_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Latency vs Loops", +"loop-1", +1502 diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-RX_Pps_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-RX_Pps_vs_Loops-1.csv new file mode 100644 index 000000000..c82c61240 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-RX_Pps_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"RX Pps vs Loops", +"loop-1", +49.93672 diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Realtime_Throughput-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Realtime_Throughput-1.csv new file mode 100644 index 000000000..92f07697c --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Realtime_Throughput-1.csv @@ -0,0 +1,73 @@ +"Realtime Throughput", +Date,"Total Upload/RX (Mbps)",Date,"Total Download/RX (Mbps)",Date,"UL + DL Sum/RX (Mbps)", +"2021-06-08T12:43:32.457 UTC",0,"2021-06-08T12:43:32.457 UTC",0,"2021-06-08T12:43:32.457 UTC",0, +"2021-06-08T12:43:33.470 UTC",0,"2021-06-08T12:43:33.470 UTC",0,"2021-06-08T12:43:33.470 UTC",0, +"2021-06-08T12:43:34.480 UTC",0,"2021-06-08T12:43:34.480 UTC",0,"2021-06-08T12:43:34.480 UTC",0, +"2021-06-08T12:43:35.490 UTC",0,"2021-06-08T12:43:35.490 UTC",0,"2021-06-08T12:43:35.490 UTC",0, +"2021-06-08T12:43:36.499 UTC",0,"2021-06-08T12:43:36.499 UTC",0,"2021-06-08T12:43:36.499 UTC",0, +"2021-06-08T12:43:37.508 UTC",0,"2021-06-08T12:43:37.508 UTC",0,"2021-06-08T12:43:37.508 UTC",0, +"2021-06-08T12:43:38.517 UTC",0,"2021-06-08T12:43:38.517 UTC",0,"2021-06-08T12:43:38.517 UTC",0, +"2021-06-08T12:43:39.527 UTC",0,"2021-06-08T12:43:39.527 UTC",0,"2021-06-08T12:43:39.527 UTC",0, +"2021-06-08T12:43:40.536 UTC",0,"2021-06-08T12:43:40.536 UTC",0,"2021-06-08T12:43:40.536 UTC",0, +"2021-06-08T12:43:41.545 UTC",0,"2021-06-08T12:43:41.545 UTC",0,"2021-06-08T12:43:41.545 UTC",0, +"2021-06-08T12:43:42.555 UTC",0,"2021-06-08T12:43:42.555 UTC",0,"2021-06-08T12:43:42.555 UTC",0, +"2021-06-08T12:43:43.566 UTC",129.35877,"2021-06-08T12:43:43.566 UTC",174.37042,"2021-06-08T12:43:43.566 UTC",303.7292, +"2021-06-08T12:43:44.577 UTC",134.70269,"2021-06-08T12:43:44.577 UTC",178.81481,"2021-06-08T12:43:44.577 UTC",313.5175, +"2021-06-08T12:43:45.588 UTC",153.71909,"2021-06-08T12:43:45.588 UTC",162.99571,"2021-06-08T12:43:45.588 UTC",316.7148, +"2021-06-08T12:43:46.601 UTC",177.5864,"2021-06-08T12:43:46.601 UTC",154.09597,"2021-06-08T12:43:46.601 UTC",331.68237, +"2021-06-08T12:43:47.611 UTC",204.44026,"2021-06-08T12:43:47.611 UTC",145.47227,"2021-06-08T12:43:47.611 UTC",349.91252, +"2021-06-08T12:43:48.623 UTC",201.80494,"2021-06-08T12:43:48.623 UTC",141.0902,"2021-06-08T12:43:48.623 UTC",342.89513, +"2021-06-08T12:43:49.634 UTC",198.39001,"2021-06-08T12:43:49.634 UTC",142.71293,"2021-06-08T12:43:49.634 UTC",341.10294, +"2021-06-08T12:43:50.646 UTC",198.39001,"2021-06-08T12:43:50.646 UTC",142.71293,"2021-06-08T12:43:50.646 UTC",341.10294, +"2021-06-08T12:43:51.657 UTC",195.32705,"2021-06-08T12:43:51.657 UTC",144.74567,"2021-06-08T12:43:51.657 UTC",340.07272, +"2021-06-08T12:43:52.739 UTC",203.97538,"2021-06-08T12:43:52.739 UTC",138.22672,"2021-06-08T12:43:52.739 UTC",342.20211, +"2021-06-08T12:43:53.750 UTC",229.62871,"2021-06-08T12:43:53.750 UTC",123.78919,"2021-06-08T12:43:53.750 UTC",353.41791, +"2021-06-08T12:43:54.762 UTC",255.33357,"2021-06-08T12:43:54.762 UTC",114.84993,"2021-06-08T12:43:54.762 UTC",370.1835, +"2021-06-08T12:43:55.774 UTC",260.9995,"2021-06-08T12:43:55.774 UTC",118.2607,"2021-06-08T12:43:55.774 UTC",379.2602, +"2021-06-08T12:43:56.785 UTC",268.11704,"2021-06-08T12:43:56.785 UTC",114.08757,"2021-06-08T12:43:56.785 UTC",382.20461, +"2021-06-08T12:43:57.796 UTC",284.29933,"2021-06-08T12:43:57.796 UTC",103.29643,"2021-06-08T12:43:57.796 UTC",387.59576, +"2021-06-08T12:43:58.805 UTC",300.59455,"2021-06-08T12:43:58.805 UTC",92.44147,"2021-06-08T12:43:58.805 UTC",393.03602, +"2021-06-08T12:43:59.815 UTC",293.96362,"2021-06-08T12:43:59.815 UTC",93.74766,"2021-06-08T12:43:59.815 UTC",387.71127, +"2021-06-08T12:44:00.824 UTC",278.77735,"2021-06-08T12:44:00.824 UTC",95.83799,"2021-06-08T12:44:00.824 UTC",374.61534, +"2021-06-08T12:44:01.834 UTC",272.99732,"2021-06-08T12:44:01.834 UTC",100.32638,"2021-06-08T12:44:01.834 UTC",373.32369, +"2021-06-08T12:44:02.844 UTC",270.50425,"2021-06-08T12:44:02.844 UTC",103.29095,"2021-06-08T12:44:02.844 UTC",373.7952, +"2021-06-08T12:44:03.853 UTC",285.88075,"2021-06-08T12:44:03.853 UTC",105.82173,"2021-06-08T12:44:03.853 UTC",391.70247, +"2021-06-08T12:44:04.863 UTC",304.95696,"2021-06-08T12:44:04.863 UTC",95.73486,"2021-06-08T12:44:04.863 UTC",400.69183, +"2021-06-08T12:44:05.874 UTC",321.97003,"2021-06-08T12:44:05.874 UTC",85.24209,"2021-06-08T12:44:05.874 UTC",407.21213, +"2021-06-08T12:44:06.884 UTC",324.8288,"2021-06-08T12:44:06.884 UTC",81.47221,"2021-06-08T12:44:06.884 UTC",406.30101, +"2021-06-08T12:44:07.895 UTC",315.14971,"2021-06-08T12:44:07.895 UTC",85.24308,"2021-06-08T12:44:07.895 UTC",400.39279, +"2021-06-08T12:44:08.905 UTC",292.65002,"2021-06-08T12:44:08.905 UTC",90.84064,"2021-06-08T12:44:08.905 UTC",383.49066, +"2021-06-08T12:44:09.915 UTC",258.52255,"2021-06-08T12:44:09.915 UTC",108.7623,"2021-06-08T12:44:09.915 UTC",367.28485, +"2021-06-08T12:44:10.926 UTC",227.75492,"2021-06-08T12:44:10.926 UTC",128.72677,"2021-06-08T12:44:10.926 UTC",356.48169, +"2021-06-08T12:44:11.936 UTC",215.05101,"2021-06-08T12:44:11.936 UTC",143.56383,"2021-06-08T12:44:11.936 UTC",358.61484, +"2021-06-08T12:44:12.947 UTC",212.82003,"2021-06-08T12:44:12.947 UTC",145.45522,"2021-06-08T12:44:12.947 UTC",358.27526, +"2021-06-08T12:44:13.962 UTC",232.46707,"2021-06-08T12:44:13.962 UTC",137.34053,"2021-06-08T12:44:13.962 UTC",369.8076, +"2021-06-08T12:44:14.971 UTC",254.66154,"2021-06-08T12:44:14.971 UTC",124.13108,"2021-06-08T12:44:14.971 UTC",378.79262, +"2021-06-08T12:44:15.982 UTC",271.86913,"2021-06-08T12:44:15.982 UTC",110.47579,"2021-06-08T12:44:15.982 UTC",382.34492, +"2021-06-08T12:44:16.994 UTC",267.53208,"2021-06-08T12:44:16.994 UTC",109.8679,"2021-06-08T12:44:16.994 UTC",377.39998, +"2021-06-08T12:44:18.004 UTC",278.53962,"2021-06-08T12:44:18.004 UTC",102.00566,"2021-06-08T12:44:18.004 UTC",380.54528, +"2021-06-08T12:44:19.014 UTC",290.2756,"2021-06-08T12:44:19.014 UTC",91.05592,"2021-06-08T12:44:19.014 UTC",381.33152, +"2021-06-08T12:44:20.024 UTC",304.1854,"2021-06-08T12:44:20.024 UTC",82.25666,"2021-06-08T12:44:20.024 UTC",386.44205, +"2021-06-08T12:44:21.035 UTC",295.05633,"2021-06-08T12:44:21.035 UTC",86.28519,"2021-06-08T12:44:21.035 UTC",381.34152, +"2021-06-08T12:44:22.047 UTC",295.05633,"2021-06-08T12:44:22.047 UTC",80.73923,"2021-06-08T12:44:22.047 UTC",375.79556, +"2021-06-08T12:44:23.059 UTC",301.77726,"2021-06-08T12:44:23.059 UTC",72.201,"2021-06-08T12:44:23.059 UTC",373.97826, +"2021-06-08T12:44:24.070 UTC",314.76021,"2021-06-08T12:44:24.070 UTC",67.40123,"2021-06-08T12:44:24.070 UTC",382.16144, +"2021-06-08T12:44:25.081 UTC",332.33644,"2021-06-08T12:44:25.081 UTC",75.64889,"2021-06-08T12:44:25.081 UTC",407.98532, +"2021-06-08T12:44:26.093 UTC",337.58721,"2021-06-08T12:44:26.093 UTC",74.45402,"2021-06-08T12:44:26.093 UTC",412.04123, +"2021-06-08T12:44:27.104 UTC",342.42588,"2021-06-08T12:44:27.104 UTC",67.39737,"2021-06-08T12:44:27.104 UTC",409.82325, +"2021-06-08T12:44:28.115 UTC",354.83272,"2021-06-08T12:44:28.115 UTC",60.83308,"2021-06-08T12:44:28.115 UTC",415.6658, +"2021-06-08T12:44:29.125 UTC",357.2238,"2021-06-08T12:44:29.125 UTC",62.23312,"2021-06-08T12:44:29.125 UTC",419.45692, +"2021-06-08T12:44:30.135 UTC",349.53269,"2021-06-08T12:44:30.135 UTC",62.23312,"2021-06-08T12:44:30.135 UTC",411.76581, +"2021-06-08T12:44:31.147 UTC",337.98393,"2021-06-08T12:44:31.147 UTC",67.12096,"2021-06-08T12:44:31.147 UTC",405.1049, +"2021-06-08T12:44:32.157 UTC",324.68654,"2021-06-08T12:44:32.157 UTC",72.71209,"2021-06-08T12:44:32.157 UTC",397.39863, +"2021-06-08T12:44:33.168 UTC",289.06091,"2021-06-08T12:44:33.168 UTC",92.83889,"2021-06-08T12:44:33.168 UTC",381.8998, +"2021-06-08T12:44:34.180 UTC",259.54067,"2021-06-08T12:44:34.180 UTC",112.25441,"2021-06-08T12:44:34.180 UTC",371.79508, +"2021-06-08T12:44:35.190 UTC",239.84959,"2021-06-08T12:44:35.190 UTC",128.4547,"2021-06-08T12:44:35.190 UTC",368.30428, +"2021-06-08T12:44:36.201 UTC",243.43415,"2021-06-08T12:44:36.201 UTC",130.50191,"2021-06-08T12:44:36.201 UTC",373.93606, +"2021-06-08T12:44:37.212 UTC",265.14372,"2021-06-08T12:44:37.212 UTC",118.81543,"2021-06-08T12:44:37.212 UTC",383.95915, +"2021-06-08T12:44:38.223 UTC",281.74185,"2021-06-08T12:44:38.223 UTC",106.08305,"2021-06-08T12:44:38.223 UTC",387.8249, +"2021-06-08T12:44:39.234 UTC",285.2154,"2021-06-08T12:44:39.234 UTC",96.54004,"2021-06-08T12:44:39.234 UTC",381.75544, +"2021-06-08T12:44:40.245 UTC",277.24346,"2021-06-08T12:44:40.245 UTC",101.76694,"2021-06-08T12:44:40.245 UTC",379.0104, +"2021-06-08T12:44:41.257 UTC",283.9287,"2021-06-08T12:44:41.257 UTC",105.83573,"2021-06-08T12:44:41.257 UTC",389.76443, +"2021-06-08T12:44:42.268 UTC",302.14591,"2021-06-08T12:44:42.268 UTC",96.32135,"2021-06-08T12:44:42.268 UTC",398.46726, +"2021-06-08T12:44:43.281 UTC",319.48741,"2021-06-08T12:44:43.281 UTC",86.53291,"2021-06-08T12:44:43.281 UTC",406.02031, diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Rx_Errors-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Rx_Errors-1.csv new file mode 100644 index 000000000..deb49a72c --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Rx_Errors-1.csv @@ -0,0 +1,63 @@ +"Rx Errors", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Errors", +NA,NA,NA,NA,"2021-06-08T12:43:42.554 UTC",0,"2021-06-08T12:43:42.554 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:43.566 UTC",0,"2021-06-08T12:43:43.566 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:44.576 UTC",0,"2021-06-08T12:43:44.576 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:45.588 UTC",0,"2021-06-08T12:43:45.588 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:46.601 UTC",0,"2021-06-08T12:43:46.601 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:47.611 UTC",0,"2021-06-08T12:43:47.611 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:48.622 UTC",0,"2021-06-08T12:43:48.622 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:49.634 UTC",0,"2021-06-08T12:43:49.634 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:50.646 UTC",0,"2021-06-08T12:43:50.646 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:51.657 UTC",0,"2021-06-08T12:43:51.657 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:52.732 UTC",0,"2021-06-08T12:43:52.732 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:53.750 UTC",0,"2021-06-08T12:43:53.750 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:54.762 UTC",0,"2021-06-08T12:43:54.762 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:55.774 UTC",0,"2021-06-08T12:43:55.774 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:56.784 UTC",0,"2021-06-08T12:43:56.784 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:57.795 UTC",0,"2021-06-08T12:43:57.795 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:58.805 UTC",0,"2021-06-08T12:43:58.805 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:43:59.814 UTC",0,"2021-06-08T12:43:59.814 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:00.823 UTC",0,"2021-06-08T12:44:00.823 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:01.834 UTC",0,"2021-06-08T12:44:01.834 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:02.843 UTC",0,"2021-06-08T12:44:02.843 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:03.853 UTC",0,"2021-06-08T12:44:03.853 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:04.863 UTC",0,"2021-06-08T12:44:04.863 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:05.874 UTC",0,"2021-06-08T12:44:05.874 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:06.883 UTC",0,"2021-06-08T12:44:06.883 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:07.894 UTC",0,"2021-06-08T12:44:07.894 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:08.905 UTC",0,"2021-06-08T12:44:08.905 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:09.915 UTC",0,"2021-06-08T12:44:09.915 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:10.925 UTC",0,"2021-06-08T12:44:10.925 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:11.935 UTC",0,"2021-06-08T12:44:11.935 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:12.946 UTC",0,"2021-06-08T12:44:12.946 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:13.961 UTC",0,"2021-06-08T12:44:13.961 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:14.971 UTC",0,"2021-06-08T12:44:14.971 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:15.981 UTC",0,"2021-06-08T12:44:15.981 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:16.993 UTC",0,"2021-06-08T12:44:16.993 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:18.003 UTC",0,"2021-06-08T12:44:18.003 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:19.013 UTC",0,"2021-06-08T12:44:19.013 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:20.024 UTC",0,"2021-06-08T12:44:20.024 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:21.034 UTC",0,"2021-06-08T12:44:21.034 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:22.047 UTC",0,"2021-06-08T12:44:22.047 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:23.058 UTC",0,"2021-06-08T12:44:23.058 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:24.070 UTC",0,"2021-06-08T12:44:24.070 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:25.081 UTC",0,"2021-06-08T12:44:25.081 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:26.093 UTC",0,"2021-06-08T12:44:26.093 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:27.103 UTC",0,"2021-06-08T12:44:27.103 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:28.115 UTC",0,"2021-06-08T12:44:28.115 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:29.125 UTC",0,"2021-06-08T12:44:29.125 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:30.135 UTC",0,"2021-06-08T12:44:30.135 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:31.147 UTC",0,"2021-06-08T12:44:31.147 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:32.157 UTC",0,"2021-06-08T12:44:32.157 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:33.167 UTC",0,"2021-06-08T12:44:33.167 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:34.179 UTC",0,"2021-06-08T12:44:34.179 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:35.189 UTC",0,"2021-06-08T12:44:35.189 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:36.201 UTC",0,"2021-06-08T12:44:36.201 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:37.211 UTC",0,"2021-06-08T12:44:37.211 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:38.223 UTC",0,"2021-06-08T12:44:38.223 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:39.234 UTC",0,"2021-06-08T12:44:39.234 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:40.245 UTC",0,"2021-06-08T12:44:40.245 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:41.257 UTC",0,"2021-06-08T12:44:41.257 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:42.268 UTC",0,"2021-06-08T12:44:42.268 UTC",0, +NA,NA,NA,NA,"2021-06-08T12:44:43.281 UTC",0,"2021-06-08T12:44:43.281 UTC",0, diff --git a/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Throughput_vs_Loops-1.csv b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Throughput_vs_Loops-1.csv new file mode 100644 index 000000000..7bdd99e0e --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/csv-data/data-Throughput_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Throughput vs Loops", +"loop-1", +380.98604 diff --git a/reports/dataplane-2021-06-08-05-44-43/custom.css b/reports/dataplane-2021-06-08-05-44-43/custom.css new file mode 100644 index 000000000..26e937507 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/custom.css @@ -0,0 +1,11 @@ +/* file reserved for customer styling of reports */ +/* rename to custom.css to take effect */ + +.TitleFont {} +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +.HeaderStyle {} +.FooterStyle {} +/* eof */ diff --git a/reports/dataplane-2021-06-08-05-44-43/dataplane-report-2021-06-08-05-43-32.pdf b/reports/dataplane-2021-06-08-05-44-43/dataplane-report-2021-06-08-05-43-32.pdf new file mode 100644 index 000000000..7257f20f2 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/dataplane-report-2021-06-08-05-43-32.pdf differ diff --git a/reports/dataplane-2021-06-08-05-44-43/index-print.html b/reports/dataplane-2021-06-08-05-44-43/index-print.html new file mode 100644 index 000000000..795ba6878 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/index-print.html @@ -0,0 +1,494 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 05:44:43 PDT 2021

+ +
+
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60381.02 Mbps380.87 Mbps380.986 Mbps402.559 Mbps405.747 Mbps-550 / 126073601300 Mbps1.17 Gbps802.11an-AC802.11ac
+ +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0380.87-53-55
+ +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-05-44-43/index.html b/reports/dataplane-2021-06-08-05-44-43/index.html new file mode 100644 index 000000000..0bd8d2ce7 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/index.html @@ -0,0 +1,499 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 05:44:43 PDT 2021

+ +
+
+PDF Report
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60381.02 Mbps380.87 Mbps380.986 Mbps402.559 Mbps405.747 Mbps-550 / 126073601300 Mbps1.17 Gbps802.11an-AC802.11ac
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0380.87-53-55
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0-print.png b/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0-print.png new file mode 100644 index 000000000..88272ff18 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0-print.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0.png b/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0.png new file mode 100644 index 000000000..0363c85e4 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/kpi-chart-0.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/kpi.csv b/reports/dataplane-2021-06-08-05-44-43/kpi.csv new file mode 100644 index 000000000..f9fd70e96 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/kpi.csv @@ -0,0 +1,2 @@ +Date test-rig dut-hw-version dut-sw-version dut-model-num dut-serial-num test-priority test-id short-description pass/fail numeric-score test details Units Graph-Group Subtest-Pass Subtest-Fail +1623156283540 ecw5410 ecw5410-1.1.0.tar.gz ecw5410 3c2c99f44e77 90 Dataplane TCP-DUT-TX-1024pkt-sz 380.869876 Throughput at specified settings. Mbps Throughput 0 0 diff --git a/reports/dataplane-2021-06-08-05-44-43/logo.png b/reports/dataplane-2021-06-08-05-44-43/logo.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/logo.png differ diff --git a/reports/dataplane-2021-06-08-05-44-43/report.css b/reports/dataplane-2021-06-08-05-44-43/report.css new file mode 100644 index 000000000..9b2925190 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/report.css @@ -0,0 +1,256 @@ +html, body,div { + margin: 0; + padding:0; + font-size: 14px; +} +h1,h2,h3,h4 { + padding: 0em; + line-height: 1.5; + text-align: left; + color: rgb(42,91,41); +} +@font-face { + font-family: CenturyGothic; + src: url("CenturyGothic.woff"), + url("images/CenturyGothic.woff"), + url("/images/CenturyGothic.woff"), + url("http://www.candelatech.com/images/CenturyGothic.woff"); +} +body,h1,h2,h3,h4 { + font-family: CenturyGothic, "Century Gothic", Arial, Helvetica, sans-serif; +} +h1 { font-size: 30px;} +h2 { font-size: 24px;} +h3 { font-size: 18px;} +h4 { font-size: 14px;} +li,pre,tt { + text-align: left; +} +pre { + font-size: 10px; +} +table { + border-collapse: collapse; + background: #e0e0e0; +} +table, td, th { + border: 1px solid gray; + padding 4px; +} +table.noborder, table.noborder td, table.noborder th { + border: 0 none; +} +td { + background: white; +} +td.ar { + text-align: right; +} +th { + color: rgb(42,91,41); + text-align: center; +} +#lf_title { + text-align: center; + background-image: url(candela_swirl_small-72h.png); + background-position: right; + background-repeat: no-repeat; + height: 90px; +} +#new_chart { + display: block; + height: 250px; + min-width: 200px; + width: 80%; + border: 1px solid black; + margin: 14px auto; + padding: 14px; + vertical-align: bottom; + text-align: center; +} +.lf_chart { + margin: 1em; + padding: 5px; +} +#error_types ul { + background: #f0f0f0; + font-size: 12px; + line-height: 1.5; + margin: 1em; + padding: 0.25em inherit 0.25em inherit; + max-height: 8em; + overflow: auto; +} +li { + line-height: 1.5; +} +.contentDiv { + margin: 1em 0.25in; +} +.ct-point { + stroke-width: 6px;} + +.o_el { + display: inline-block; + width: 100px; + height: 230px; + border: none; + margin: 1px 1px 16px 1px; + padding: 10px 10px 0 10px; + background: #eee; + text-align: center; + vertical-align: bottom; +} +.bar_el { + display: block; + background: green; + border: none; + min-height: 1px; + + margin: 0 0 5px 0; + padding: 0; + text-align: center; +} +.label_el { + color: black; + display: block; + font-size: 14px; + font-family: Arial,Helvetica,sans-serif,mono; + margin: 1px; + text-align: center; + vertical-align: bottom; + width: inherit; +} +.value_el { + font-family: Arial,Helvetica,sans-serif,mono; + color: black; + display: block; + font-size: 14px; + margin: 0 auto; + padding: none; + border: none; + background: white; + text-align: center; + vertical-align: bottom; + width: auto; +} +.value_el>span { + background: #f0f0f0a0; + border: 1px solid #f0f0f0a0; + border-radius: 5px; + padding: 1px; + min-width: 2em; +} +.error { + color: red; +} + +@media only screen { +.hideFromPrint { } +.hideFromScreen { display:none; } +} +@media only print { +.hideFromScreen { } +.hideFromPrint { display:none; } +} + +/* these styles will get overridden by custom.css */ +.TitleFontScreen { + margin-left:auto; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 1em; +} + +.TitleFontPrint { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 20px; + padding-left: 20px; +} + +.TitleFontPrintSub { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + /*font-size: 20px; Let 'h3', etc control this */ + padding-top: 0px; + padding-left: 20px; +} + +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +div.Section h1, div.Section h2 { + margin: 0 0 0 0em; +} +div.HeaderStyle h1, div.HeaderStyle h2 { + text-align: left; + margin: 0 0 0 0; +} +div.Section { + padding 5px; + position: relative; +} +div.Section img { + margin: 0; + padding: 0; + position: relative; + top: 50%; + transform: translateY(-50%); +} +div.FooterStyle { + width: 100%; + vertical-align: middle; + border: 0 none; + border-top: 2px solid #2A5B29; + color: #2A5B29; + font-size: 12px; + margin-top: 2em; +} +div.FooterStyle img { + width: auto; + height: auto; + text-align: right; +} +div.FooterStyle span.Gradient { + background: white; + color: #2A5B29; + display: inline-block; + height: 30px; + line-height: 1; + padding-top: 22px; + padding-bottom: 20px; + padding-left: 2em; + vertical-align: middle; + max-width:80%; + float:left; + width:50%; +} +.FooterStyle a, .FooterStyle a:visited { + color: #2A5B29; + font-size: 12px; + line-height: 1; + height: 30px; + margin: 0; + padding: 0; + vertical-align: middle; +} +div.FooterStyle a.LogoImgLink { + display: inline-block; + text-align: right; + float: right; +} +a .LogoImgLink { +} +a.LogoImgLink img { +} diff --git a/reports/dataplane-2021-06-08-05-44-43/report_banner-1000x205.jpg b/reports/dataplane-2021-06-08-05-44-43/report_banner-1000x205.jpg new file mode 100644 index 000000000..e9e080ab8 Binary files /dev/null and b/reports/dataplane-2021-06-08-05-44-43/report_banner-1000x205.jpg differ diff --git a/reports/dataplane-2021-06-08-05-44-43/text-csv-0.csv b/reports/dataplane-2021-06-08-05-44-43/text-csv-0.csv new file mode 100644 index 000000000..afa12b472 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/text-csv-0.csv @@ -0,0 +1,2 @@ +Channel,Frequency,Security,NSS,Cfg-Mode,Bandwidth,Pkt,Traffic-Type,Direction,Atten,Rotation,Duration,Offered-1m,Rx-Bps,Rx-Bps-1m,Rx-Bps-LL,Rx-Bps-3s,RSSI,Tx-Failed,Tx-Failed%,Tx-Rate,Rx-Rate,Rpt-Mode,Rpt-Mode-Brief +36,5180,WPA2,4,AUTO,80,1024,TCP,DUT-TX,NA,NA,60,381.02 Mbps,380.87 Mbps,380.986 Mbps,402.559 Mbps,405.747 Mbps,-55,0 / 1260736,0,1300 Mbps,1.17 Gbps,802.11an-AC,802.11ac diff --git a/reports/dataplane-2021-06-08-05-44-43/text-csv-1.csv b/reports/dataplane-2021-06-08-05-44-43/text-csv-1.csv new file mode 100644 index 000000000..f60b2a587 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/text-csv-1.csv @@ -0,0 +1,2 @@ +Step Index,Position [Deg],Attenuation [dB],Throughput [Mbps],Beacon RSSI [dBm],Data RSSI [dBm] +0,NA,0,380.87,-53,-55 diff --git a/reports/dataplane-2021-06-08-05-44-43/text-tab-0.csv b/reports/dataplane-2021-06-08-05-44-43/text-tab-0.csv new file mode 100644 index 000000000..17bc20957 --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/text-tab-0.csv @@ -0,0 +1,2 @@ +Channel Frequency Security NSS Cfg-Mode Bandwidth Pkt Traffic-Type Direction Atten Rotation Duration Offered-1m Rx-Bps Rx-Bps-1m Rx-Bps-LL Rx-Bps-3s RSSI Tx-Failed Tx-Failed% Tx-Rate Rx-Rate Rpt-Mode Rpt-Mode-Brief +36 5180 WPA2 4 AUTO 80 1024 TCP DUT-TX NA NA 60 381.02 Mbps 380.87 Mbps 380.986 Mbps 402.559 Mbps 405.747 Mbps -55 0 / 1260736 0 1300 Mbps 1.17 Gbps 802.11an-AC 802.11ac diff --git a/reports/dataplane-2021-06-08-05-44-43/text-tab-1.csv b/reports/dataplane-2021-06-08-05-44-43/text-tab-1.csv new file mode 100644 index 000000000..ca83c7d3c --- /dev/null +++ b/reports/dataplane-2021-06-08-05-44-43/text-tab-1.csv @@ -0,0 +1,2 @@ +Step Index Position [Deg] Attenuation [dB] Throughput [Mbps] Beacon RSSI [dBm] Data RSSI [dBm] +0 NA 0 380.87 -53 -55 diff --git a/reports/dataplane-2021-06-08-09-58-30/CandelaLogo2-90dpi-200x90-trans.png b/reports/dataplane-2021-06-08-09-58-30/CandelaLogo2-90dpi-200x90-trans.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/CandelaLogo2-90dpi-200x90-trans.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/CenturyGothic.woff b/reports/dataplane-2021-06-08-09-58-30/CenturyGothic.woff new file mode 100644 index 000000000..877ec4a27 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/CenturyGothic.woff differ diff --git a/reports/dataplane-2021-06-08-09-58-30/candela_swirl_small-72h.png b/reports/dataplane-2021-06-08-09-58-30/candela_swirl_small-72h.png new file mode 100644 index 000000000..e288f8c96 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/candela_swirl_small-72h.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/canvil.ico b/reports/dataplane-2021-06-08-09-58-30/canvil.ico new file mode 100644 index 000000000..5f27eb942 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/canvil.ico differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-1-print.png b/reports/dataplane-2021-06-08-09-58-30/chart-1-print.png new file mode 100644 index 000000000..8f8b8ddd6 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-1-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-1.png b/reports/dataplane-2021-06-08-09-58-30/chart-1.png new file mode 100644 index 000000000..2de613096 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-1.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-2-print.png b/reports/dataplane-2021-06-08-09-58-30/chart-2-print.png new file mode 100644 index 000000000..fbd3ee614 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-2-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-2.png b/reports/dataplane-2021-06-08-09-58-30/chart-2.png new file mode 100644 index 000000000..57db7fc1e Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-2.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-3-print.png b/reports/dataplane-2021-06-08-09-58-30/chart-3-print.png new file mode 100644 index 000000000..cbf661292 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-3-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-3.png b/reports/dataplane-2021-06-08-09-58-30/chart-3.png new file mode 100644 index 000000000..125b7e945 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-3.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-4-print.png b/reports/dataplane-2021-06-08-09-58-30/chart-4-print.png new file mode 100644 index 000000000..5f3a589dc Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-4-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-4.png b/reports/dataplane-2021-06-08-09-58-30/chart-4.png new file mode 100644 index 000000000..b1cf518b7 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-4.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-5-print.png b/reports/dataplane-2021-06-08-09-58-30/chart-5-print.png new file mode 100644 index 000000000..ecbe212e6 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-5-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/chart-5.png b/reports/dataplane-2021-06-08-09-58-30/chart-5.png new file mode 100644 index 000000000..fa54e1e5c Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/chart-5.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv new file mode 100644 index 000000000..db187fd8f --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Endpoint_RX_Packet_Loss_Percentage-1.csv @@ -0,0 +1,62 @@ +"Endpoint RX Packet Loss Percentage", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Packet Loss Percent",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Packet Loss Percent", +NA,NA,NA,NA,"2021-06-08T16:57:30.500 UTC",0,"2021-06-08T16:57:30.500 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:31.511 UTC",0,"2021-06-08T16:57:31.511 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:32.521 UTC",0,"2021-06-08T16:57:32.521 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:33.531 UTC",0,"2021-06-08T16:57:33.531 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:34.543 UTC",0,"2021-06-08T16:57:34.543 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:35.555 UTC",0,"2021-06-08T16:57:35.555 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:36.565 UTC",0,"2021-06-08T16:57:36.565 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:37.576 UTC",0,"2021-06-08T16:57:37.576 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:38.587 UTC",0,"2021-06-08T16:57:38.587 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:39.600 UTC",0,"2021-06-08T16:57:39.600 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:40.611 UTC",0,"2021-06-08T16:57:40.611 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:41.622 UTC",0,"2021-06-08T16:57:41.622 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:42.634 UTC",0,"2021-06-08T16:57:42.634 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:43.644 UTC",0,"2021-06-08T16:57:43.644 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:44.656 UTC",0,"2021-06-08T16:57:44.656 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:45.666 UTC",0,"2021-06-08T16:57:45.666 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:46.687 UTC",0,"2021-06-08T16:57:46.687 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:47.698 UTC",0,"2021-06-08T16:57:47.698 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:48.709 UTC",0,"2021-06-08T16:57:48.709 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:49.721 UTC",0,"2021-06-08T16:57:49.721 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:50.732 UTC",0,"2021-06-08T16:57:50.732 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:51.741 UTC",0,"2021-06-08T16:57:51.741 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:52.751 UTC",0,"2021-06-08T16:57:52.751 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:53.762 UTC",0,"2021-06-08T16:57:53.762 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:54.772 UTC",0,"2021-06-08T16:57:54.772 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:55.781 UTC",0,"2021-06-08T16:57:55.781 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:56.794 UTC",0,"2021-06-08T16:57:56.794 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:57.805 UTC",0,"2021-06-08T16:57:57.805 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:58.815 UTC",0,"2021-06-08T16:57:58.815 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:59.827 UTC",0,"2021-06-08T16:57:59.827 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:00.838 UTC",0,"2021-06-08T16:58:00.838 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:01.848 UTC",0,"2021-06-08T16:58:01.848 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:02.860 UTC",0,"2021-06-08T16:58:02.860 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:03.870 UTC",0,"2021-06-08T16:58:03.870 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:04.883 UTC",0,"2021-06-08T16:58:04.883 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:05.893 UTC",0,"2021-06-08T16:58:05.893 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:06.904 UTC",0,"2021-06-08T16:58:06.904 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:07.991 UTC",0,"2021-06-08T16:58:07.991 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:09.004 UTC",0,"2021-06-08T16:58:09.004 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:10.014 UTC",0,"2021-06-08T16:58:10.014 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:11.025 UTC",0,"2021-06-08T16:58:11.025 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:12.038 UTC",0,"2021-06-08T16:58:12.038 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:13.049 UTC",0,"2021-06-08T16:58:13.049 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:14.059 UTC",0,"2021-06-08T16:58:14.059 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:15.070 UTC",0,"2021-06-08T16:58:15.070 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:16.083 UTC",0,"2021-06-08T16:58:16.083 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:17.093 UTC",0,"2021-06-08T16:58:17.093 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:18.104 UTC",0,"2021-06-08T16:58:18.104 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:19.115 UTC",0,"2021-06-08T16:58:19.115 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:20.125 UTC",0,"2021-06-08T16:58:20.125 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:21.135 UTC",0,"2021-06-08T16:58:21.135 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:22.145 UTC",0,"2021-06-08T16:58:22.145 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:23.155 UTC",0,"2021-06-08T16:58:23.155 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:24.166 UTC",0,"2021-06-08T16:58:24.166 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:25.179 UTC",0,"2021-06-08T16:58:25.179 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:26.190 UTC",0,"2021-06-08T16:58:26.190 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:27.202 UTC",0,"2021-06-08T16:58:27.202 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:28.213 UTC",0,"2021-06-08T16:58:28.213 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:29.223 UTC",0,"2021-06-08T16:58:29.223 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:30.234 UTC",0,"2021-06-08T16:58:30.234 UTC",0, diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Latency_vs_Loops-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Latency_vs_Loops-1.csv new file mode 100644 index 000000000..63ede884e --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Latency_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Latency vs Loops", +"loop-1", +1006 diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-RX_Pps_vs_Loops-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-RX_Pps_vs_Loops-1.csv new file mode 100644 index 000000000..11ebe4d97 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-RX_Pps_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"RX Pps vs Loops", +"loop-1", +49.44943 diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Realtime_Throughput-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Realtime_Throughput-1.csv new file mode 100644 index 000000000..12451553d --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Realtime_Throughput-1.csv @@ -0,0 +1,82 @@ +"Realtime Throughput", +Date,"Total Upload/RX (Mbps)",Date,"Total Download/RX (Mbps)",Date,"UL + DL Sum/RX (Mbps)", +"2021-06-08T16:57:10.305 UTC",0,"2021-06-08T16:57:10.305 UTC",0,"2021-06-08T16:57:10.305 UTC",0, +"2021-06-08T16:57:11.320 UTC",0,"2021-06-08T16:57:11.320 UTC",0,"2021-06-08T16:57:11.320 UTC",0, +"2021-06-08T16:57:12.329 UTC",0,"2021-06-08T16:57:12.329 UTC",0,"2021-06-08T16:57:12.329 UTC",0, +"2021-06-08T16:57:13.338 UTC",0,"2021-06-08T16:57:13.338 UTC",0,"2021-06-08T16:57:13.338 UTC",0, +"2021-06-08T16:57:14.348 UTC",0,"2021-06-08T16:57:14.348 UTC",0,"2021-06-08T16:57:14.348 UTC",0, +"2021-06-08T16:57:15.357 UTC",0,"2021-06-08T16:57:15.357 UTC",0,"2021-06-08T16:57:15.357 UTC",0, +"2021-06-08T16:57:16.365 UTC",0,"2021-06-08T16:57:16.365 UTC",0,"2021-06-08T16:57:16.365 UTC",0, +"2021-06-08T16:57:17.375 UTC",0,"2021-06-08T16:57:17.375 UTC",0,"2021-06-08T16:57:17.375 UTC",0, +"2021-06-08T16:57:18.384 UTC",0,"2021-06-08T16:57:18.384 UTC",0,"2021-06-08T16:57:18.384 UTC",0, +"2021-06-08T16:57:19.393 UTC",0,"2021-06-08T16:57:19.393 UTC",0,"2021-06-08T16:57:19.393 UTC",0, +"2021-06-08T16:57:20.402 UTC",0,"2021-06-08T16:57:20.402 UTC",0,"2021-06-08T16:57:20.402 UTC",0, +"2021-06-08T16:57:21.412 UTC",0,"2021-06-08T16:57:21.412 UTC",0,"2021-06-08T16:57:21.412 UTC",0, +"2021-06-08T16:57:22.421 UTC",0,"2021-06-08T16:57:22.421 UTC",0,"2021-06-08T16:57:22.421 UTC",0, +"2021-06-08T16:57:23.431 UTC",0,"2021-06-08T16:57:23.431 UTC",0,"2021-06-08T16:57:23.431 UTC",0, +"2021-06-08T16:57:24.439 UTC",0,"2021-06-08T16:57:24.439 UTC",0,"2021-06-08T16:57:24.439 UTC",0, +"2021-06-08T16:57:25.448 UTC",0,"2021-06-08T16:57:25.448 UTC",0,"2021-06-08T16:57:25.448 UTC",0, +"2021-06-08T16:57:26.456 UTC",0,"2021-06-08T16:57:26.456 UTC",0,"2021-06-08T16:57:26.456 UTC",0, +"2021-06-08T16:57:27.465 UTC",0,"2021-06-08T16:57:27.465 UTC",0,"2021-06-08T16:57:27.465 UTC",0, +"2021-06-08T16:57:28.474 UTC",0,"2021-06-08T16:57:28.474 UTC",0,"2021-06-08T16:57:28.474 UTC",0, +"2021-06-08T16:57:29.491 UTC",0,"2021-06-08T16:57:29.491 UTC",0,"2021-06-08T16:57:29.491 UTC",0, +"2021-06-08T16:57:30.501 UTC",0,"2021-06-08T16:57:30.501 UTC",0,"2021-06-08T16:57:30.501 UTC",0, +"2021-06-08T16:57:31.511 UTC",5.26048,"2021-06-08T16:57:31.511 UTC",0,"2021-06-08T16:57:31.511 UTC",5.26048, +"2021-06-08T16:57:32.521 UTC",110.09744,"2021-06-08T16:57:32.521 UTC",205.95957,"2021-06-08T16:57:32.521 UTC",316.05702, +"2021-06-08T16:57:33.531 UTC",111.17657,"2021-06-08T16:57:33.531 UTC",192.16854,"2021-06-08T16:57:33.531 UTC",303.34511, +"2021-06-08T16:57:34.544 UTC",129.7613,"2021-06-08T16:57:34.544 UTC",187.78739,"2021-06-08T16:57:34.544 UTC",317.5487, +"2021-06-08T16:57:35.555 UTC",150.92047,"2021-06-08T16:57:35.555 UTC",173.68975,"2021-06-08T16:57:35.555 UTC",324.61021, +"2021-06-08T16:57:36.565 UTC",163.84883,"2021-06-08T16:57:36.565 UTC",170.14078,"2021-06-08T16:57:36.565 UTC",333.98961, +"2021-06-08T16:57:37.576 UTC",164.23702,"2021-06-08T16:57:37.576 UTC",170.1799,"2021-06-08T16:57:37.576 UTC",334.41693, +"2021-06-08T16:57:38.587 UTC",183.12982,"2021-06-08T16:57:38.587 UTC",160.1981,"2021-06-08T16:57:38.587 UTC",343.32793, +"2021-06-08T16:57:39.600 UTC",205.07301,"2021-06-08T16:57:39.600 UTC",146.55182,"2021-06-08T16:57:39.600 UTC",351.62484, +"2021-06-08T16:57:40.612 UTC",227.89436,"2021-06-08T16:57:40.612 UTC",132.8951,"2021-06-08T16:57:40.612 UTC",360.78945, +"2021-06-08T16:57:41.622 UTC",219.70219,"2021-06-08T16:57:41.622 UTC",130.14669,"2021-06-08T16:57:41.622 UTC",349.84888, +"2021-06-08T16:57:42.634 UTC",221.84801,"2021-06-08T16:57:42.634 UTC",126.87434,"2021-06-08T16:57:42.634 UTC",348.72235, +"2021-06-08T16:57:43.645 UTC",240.98899,"2021-06-08T16:57:43.645 UTC",114.83797,"2021-06-08T16:57:43.645 UTC",355.82696, +"2021-06-08T16:57:44.656 UTC",265.88397,"2021-06-08T16:57:44.656 UTC",108.39566,"2021-06-08T16:57:44.656 UTC",374.27964, +"2021-06-08T16:57:45.667 UTC",271.41175,"2021-06-08T16:57:45.667 UTC",104.1609,"2021-06-08T16:57:45.667 UTC",375.57266, +"2021-06-08T16:57:46.687 UTC",263.33246,"2021-06-08T16:57:46.687 UTC",108.8288,"2021-06-08T16:57:46.687 UTC",372.16126, +"2021-06-08T16:57:47.698 UTC",256.16199,"2021-06-08T16:57:47.698 UTC",113.03742,"2021-06-08T16:57:47.698 UTC",369.1994, +"2021-06-08T16:57:48.710 UTC",264.84753,"2021-06-08T16:57:48.710 UTC",105.85486,"2021-06-08T16:57:48.710 UTC",370.70239, +"2021-06-08T16:57:49.721 UTC",283.3229,"2021-06-08T16:57:49.721 UTC",96.10872,"2021-06-08T16:57:49.721 UTC",379.43162, +"2021-06-08T16:57:50.732 UTC",299.01266,"2021-06-08T16:57:50.732 UTC",85.83886,"2021-06-08T16:57:50.732 UTC",384.85152, +"2021-06-08T16:57:51.741 UTC",304.0672,"2021-06-08T16:57:51.741 UTC",90.18154,"2021-06-08T16:57:51.741 UTC",394.24874, +"2021-06-08T16:57:52.751 UTC",297.17838,"2021-06-08T16:57:52.751 UTC",93.13782,"2021-06-08T16:57:52.751 UTC",390.3162, +"2021-06-08T16:57:53.762 UTC",312.1792,"2021-06-08T16:57:53.762 UTC",85.09268,"2021-06-08T16:57:53.762 UTC",397.27188, +"2021-06-08T16:57:54.772 UTC",323.44796,"2021-06-08T16:57:54.772 UTC",76.05025,"2021-06-08T16:57:54.772 UTC",399.49821, +"2021-06-08T16:57:55.781 UTC",327.92776,"2021-06-08T16:57:55.781 UTC",69.49021,"2021-06-08T16:57:55.781 UTC",397.41796, +"2021-06-08T16:57:56.794 UTC",305.04309,"2021-06-08T16:57:56.794 UTC",71.00254,"2021-06-08T16:57:56.794 UTC",376.04562, +"2021-06-08T16:57:57.805 UTC",319.60958,"2021-06-08T16:57:57.805 UTC",64.5163,"2021-06-08T16:57:57.805 UTC",384.12588, +"2021-06-08T16:57:58.815 UTC",337.83033,"2021-06-08T16:57:58.815 UTC",59.85108,"2021-06-08T16:57:58.815 UTC",397.6814, +"2021-06-08T16:57:59.828 UTC",358.56419,"2021-06-08T16:57:59.828 UTC",59.65492,"2021-06-08T16:57:59.828 UTC",418.21911, +"2021-06-08T16:58:00.838 UTC",351.47442,"2021-06-08T16:58:00.838 UTC",65.06677,"2021-06-08T16:58:00.838 UTC",416.54119, +"2021-06-08T16:58:01.849 UTC",340.57077,"2021-06-08T16:58:01.849 UTC",70.49874,"2021-06-08T16:58:01.849 UTC",411.06951, +"2021-06-08T16:58:02.860 UTC",341.18009,"2021-06-08T16:58:02.860 UTC",59.71698,"2021-06-08T16:58:02.860 UTC",400.89707, +"2021-06-08T16:58:03.871 UTC",363.63509,"2021-06-08T16:58:03.871 UTC",46.7311,"2021-06-08T16:58:03.871 UTC",410.36618, +"2021-06-08T16:58:04.883 UTC",380.88447,"2021-06-08T16:58:04.883 UTC",38.701,"2021-06-08T16:58:04.883 UTC",419.58547, +"2021-06-08T16:58:05.894 UTC",373.14706,"2021-06-08T16:58:05.894 UTC",49.8964,"2021-06-08T16:58:05.894 UTC",423.04346, +"2021-06-08T16:58:06.905 UTC",373.14706,"2021-06-08T16:58:06.905 UTC",49.8964,"2021-06-08T16:58:06.905 UTC",423.04346, +"2021-06-08T16:58:07.992 UTC",346.41022,"2021-06-08T16:58:07.992 UTC",65.25554,"2021-06-08T16:58:07.992 UTC",411.66576, +"2021-06-08T16:58:09.004 UTC",328.74715,"2021-06-08T16:58:09.004 UTC",76.2419,"2021-06-08T16:58:09.004 UTC",404.98905, +"2021-06-08T16:58:10.014 UTC",312.33554,"2021-06-08T16:58:10.014 UTC",84.5423,"2021-06-08T16:58:10.014 UTC",396.87784, +"2021-06-08T16:58:11.025 UTC",302.04206,"2021-06-08T16:58:11.025 UTC",90.41713,"2021-06-08T16:58:11.025 UTC",392.45918, +"2021-06-08T16:58:12.038 UTC",279.75098,"2021-06-08T16:58:12.038 UTC",91.81903,"2021-06-08T16:58:12.038 UTC",371.57001, +"2021-06-08T16:58:13.049 UTC",280.772,"2021-06-08T16:58:13.049 UTC",86.08654,"2021-06-08T16:58:13.049 UTC",366.85855, +"2021-06-08T16:58:14.059 UTC",296.91466,"2021-06-08T16:58:14.059 UTC",77.15105,"2021-06-08T16:58:14.059 UTC",374.06571, +"2021-06-08T16:58:15.070 UTC",321.11385,"2021-06-08T16:58:15.070 UTC",73.7308,"2021-06-08T16:58:15.070 UTC",394.84465, +"2021-06-08T16:58:16.083 UTC",322.66315,"2021-06-08T16:58:16.083 UTC",77.78428,"2021-06-08T16:58:16.083 UTC",400.44743, +"2021-06-08T16:58:17.093 UTC",314.54216,"2021-06-08T16:58:17.093 UTC",82.82668,"2021-06-08T16:58:17.093 UTC",397.36884, +"2021-06-08T16:58:18.104 UTC",298.42051,"2021-06-08T16:58:18.104 UTC",93.54395,"2021-06-08T16:58:18.104 UTC",391.96447, +"2021-06-08T16:58:19.115 UTC",259.88932,"2021-06-08T16:58:19.115 UTC",108.31434,"2021-06-08T16:58:19.115 UTC",368.20367, +"2021-06-08T16:58:20.125 UTC",229.79188,"2021-06-08T16:58:20.125 UTC",126.10899,"2021-06-08T16:58:20.125 UTC",355.90087, +"2021-06-08T16:58:21.136 UTC",209.30319,"2021-06-08T16:58:21.136 UTC",136.32331,"2021-06-08T16:58:21.136 UTC",345.62651, +"2021-06-08T16:58:22.145 UTC",212.47841,"2021-06-08T16:58:22.145 UTC",141.90962,"2021-06-08T16:58:22.145 UTC",354.38803, +"2021-06-08T16:58:23.156 UTC",228.16724,"2021-06-08T16:58:23.156 UTC",132.17516,"2021-06-08T16:58:23.156 UTC",360.3424, +"2021-06-08T16:58:24.167 UTC",249.21507,"2021-06-08T16:58:24.167 UTC",119.34019,"2021-06-08T16:58:24.167 UTC",368.55526, +"2021-06-08T16:58:25.179 UTC",266.72766,"2021-06-08T16:58:25.179 UTC",106.24317,"2021-06-08T16:58:25.179 UTC",372.97083, +"2021-06-08T16:58:26.190 UTC",258.54206,"2021-06-08T16:58:26.190 UTC",106.64078,"2021-06-08T16:58:26.190 UTC",365.18284, +"2021-06-08T16:58:27.202 UTC",255.42146,"2021-06-08T16:58:27.202 UTC",96.45638,"2021-06-08T16:58:27.202 UTC",351.87783, +"2021-06-08T16:58:28.213 UTC",276.96309,"2021-06-08T16:58:28.213 UTC",88.17743,"2021-06-08T16:58:28.213 UTC",365.14052, +"2021-06-08T16:58:29.224 UTC",296.32785,"2021-06-08T16:58:29.224 UTC",81.07937,"2021-06-08T16:58:29.224 UTC",377.40722, +"2021-06-08T16:58:30.234 UTC",304.59513,"2021-06-08T16:58:30.234 UTC",89.26154,"2021-06-08T16:58:30.234 UTC",393.85668, diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Rx_Errors-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Rx_Errors-1.csv new file mode 100644 index 000000000..ce42b23a7 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Rx_Errors-1.csv @@ -0,0 +1,62 @@ +"Rx Errors", +Date,"cv_udp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_udp-1.2-1.wlan000--1.0.0-B/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-A/Errors",Date,"cv_tcp-1.2-1.wlan000--1.0.0-B/Errors", +NA,NA,NA,NA,"2021-06-08T16:57:30.500 UTC",0,"2021-06-08T16:57:30.500 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:31.511 UTC",0,"2021-06-08T16:57:31.511 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:32.521 UTC",0,"2021-06-08T16:57:32.521 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:33.531 UTC",0,"2021-06-08T16:57:33.531 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:34.543 UTC",0,"2021-06-08T16:57:34.543 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:35.555 UTC",0,"2021-06-08T16:57:35.555 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:36.565 UTC",0,"2021-06-08T16:57:36.565 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:37.576 UTC",0,"2021-06-08T16:57:37.576 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:38.587 UTC",0,"2021-06-08T16:57:38.587 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:39.600 UTC",0,"2021-06-08T16:57:39.600 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:40.611 UTC",0,"2021-06-08T16:57:40.611 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:41.622 UTC",0,"2021-06-08T16:57:41.622 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:42.634 UTC",0,"2021-06-08T16:57:42.634 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:43.644 UTC",0,"2021-06-08T16:57:43.644 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:44.656 UTC",0,"2021-06-08T16:57:44.656 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:45.666 UTC",0,"2021-06-08T16:57:45.666 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:46.687 UTC",0,"2021-06-08T16:57:46.687 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:47.698 UTC",0,"2021-06-08T16:57:47.698 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:48.709 UTC",0,"2021-06-08T16:57:48.709 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:49.721 UTC",0,"2021-06-08T16:57:49.721 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:50.732 UTC",0,"2021-06-08T16:57:50.732 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:51.741 UTC",0,"2021-06-08T16:57:51.741 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:52.751 UTC",0,"2021-06-08T16:57:52.751 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:53.762 UTC",0,"2021-06-08T16:57:53.762 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:54.772 UTC",0,"2021-06-08T16:57:54.772 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:55.781 UTC",0,"2021-06-08T16:57:55.781 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:56.794 UTC",0,"2021-06-08T16:57:56.794 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:57.805 UTC",0,"2021-06-08T16:57:57.805 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:58.815 UTC",0,"2021-06-08T16:57:58.815 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:57:59.827 UTC",0,"2021-06-08T16:57:59.827 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:00.838 UTC",0,"2021-06-08T16:58:00.838 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:01.848 UTC",0,"2021-06-08T16:58:01.848 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:02.860 UTC",0,"2021-06-08T16:58:02.860 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:03.870 UTC",0,"2021-06-08T16:58:03.870 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:04.883 UTC",0,"2021-06-08T16:58:04.883 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:05.893 UTC",0,"2021-06-08T16:58:05.893 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:06.904 UTC",0,"2021-06-08T16:58:06.904 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:07.991 UTC",0,"2021-06-08T16:58:07.991 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:09.004 UTC",0,"2021-06-08T16:58:09.004 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:10.014 UTC",0,"2021-06-08T16:58:10.014 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:11.025 UTC",0,"2021-06-08T16:58:11.025 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:12.038 UTC",0,"2021-06-08T16:58:12.038 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:13.049 UTC",0,"2021-06-08T16:58:13.049 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:14.059 UTC",0,"2021-06-08T16:58:14.059 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:15.070 UTC",0,"2021-06-08T16:58:15.070 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:16.083 UTC",0,"2021-06-08T16:58:16.083 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:17.093 UTC",0,"2021-06-08T16:58:17.093 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:18.104 UTC",0,"2021-06-08T16:58:18.104 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:19.115 UTC",0,"2021-06-08T16:58:19.115 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:20.125 UTC",0,"2021-06-08T16:58:20.125 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:21.135 UTC",0,"2021-06-08T16:58:21.135 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:22.145 UTC",0,"2021-06-08T16:58:22.145 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:23.155 UTC",0,"2021-06-08T16:58:23.155 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:24.166 UTC",0,"2021-06-08T16:58:24.166 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:25.179 UTC",0,"2021-06-08T16:58:25.179 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:26.190 UTC",0,"2021-06-08T16:58:26.190 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:27.202 UTC",0,"2021-06-08T16:58:27.202 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:28.213 UTC",0,"2021-06-08T16:58:28.213 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:29.223 UTC",0,"2021-06-08T16:58:29.223 UTC",0, +NA,NA,NA,NA,"2021-06-08T16:58:30.234 UTC",0,"2021-06-08T16:58:30.234 UTC",0, diff --git a/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Throughput_vs_Loops-1.csv b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Throughput_vs_Loops-1.csv new file mode 100644 index 000000000..61aa237df --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/csv-data/data-Throughput_vs_Loops-1.csv @@ -0,0 +1,3 @@ +"Throughput vs Loops", +"loop-1", +377.52991 diff --git a/reports/dataplane-2021-06-08-09-58-30/custom.css b/reports/dataplane-2021-06-08-09-58-30/custom.css new file mode 100644 index 000000000..26e937507 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/custom.css @@ -0,0 +1,11 @@ +/* file reserved for customer styling of reports */ +/* rename to custom.css to take effect */ + +.TitleFont {} +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +.HeaderStyle {} +.FooterStyle {} +/* eof */ diff --git a/reports/dataplane-2021-06-08-09-58-30/dataplane-report-2021-06-08-09-57-10.pdf b/reports/dataplane-2021-06-08-09-58-30/dataplane-report-2021-06-08-09-57-10.pdf new file mode 100644 index 000000000..22fb61608 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/dataplane-report-2021-06-08-09-57-10.pdf differ diff --git a/reports/dataplane-2021-06-08-09-58-30/index-print.html b/reports/dataplane-2021-06-08-09-58-30/index-print.html new file mode 100644 index 000000000..d03d22f62 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/index-print.html @@ -0,0 +1,494 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 09:58:31 PDT 2021

+ +
+
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60377.531 Mbps376.954 Mbps377.53 Mbps398.892 Mbps391.054 Mbps-550 / 123266001300 Mbps1.3 Gbps802.11an-AC802.11ac
+ +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0376.95-54-55
+ +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-09-58-30/index.html b/reports/dataplane-2021-06-08-09-58-30/index.html new file mode 100644 index 000000000..4097ca31a --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/index.html @@ -0,0 +1,499 @@ + + + + + + Dataplane Test + + + + + +
+ +
+

Dataplane Test







Tue Jun 08 09:58:30 PDT 2021

+ +
+
+PDF Report
+ + + + + +
+ + + + + + + + + + +
+ Test Setup Information +
+ Device Under Test + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Name + + basic-01 +
+ Software Version + + ecw5410-1.1.0.tar.gz + + Hardware Version + + ecw5410 +
+ Model Number + + ecw5410 + + Serial Number + + 3c2c99f44e77 +
+ SSIDs + +
ssid_wpa2_5g [] [] ssid_wpa3_mixed_eap_2g ssid_wpa2_eap_2g ssid_wpa3_eap_2g 
+
+ Passwords + +
something [] [] mixed 2 3 
+
+ BSSIDs + +
3c:2c:99:f4:4e:79 [] [] 3c:2c:99:f4:4e:78 3a:2c:99:f4:4e:78 3e:2c:99:f4:4e:78 
+
+ Notes + + [BLANK] +
+
+ + +
+ + + + + +

+ Objective +

+

+ The Candela WiFi data plane test is designed to conduct an automatic + testing of all combinations of station types, MIMO types, Channel + Bandwidths, Traffic types, Traffic direction, Frame sizes etc… It will + run a quick throughput test at every combination of these test variables + and plot all the results in a set of charts to compare performance. The + user is allowed to define an intended load as a percentage of the max + theoretical PHY rate for every test combination. The expected behavior + is that for every test combination the achieved throughput should be at + least 70% of the theoretical max PHY rate under ideal test conditions. + This test provides a way to go through hundreds of combinations in a + fully automated fashion and very easily find patterns and problem areas + which can be further debugged using more specific testing. +

+ + +
+ +

Throughput for each different traffic type. Datasets with names ending in '-LL' will include the IP, TCP, UDP and Ethernet header bytes in their calculation. For Armageddon traffic only, low-level throughput includes the Ethernet FCS and preamble. Other datasets report 'goodput' for the protocol. +
+
CSV Data for Throughput vs Loops
+Throughput vs Loops
+ +

Pps throughput for each different traffic type. The values are estimated packets-per-second over the DUT, but some protocols such as TCP make this difficult to know for certain, so the value is extrapolated. +
+
CSV Data for RX Pps vs Loops
+RX Pps vs Loops
+ +

Latency for each different traffic type. If opposite-direction traffic is non-zero, then round-trip time will be reported. Otherwise, one-way latency will be reported. +
+
CSV Data for Latency vs Loops
+Latency vs Loops
+ +

Realtime Graph shows summary download and upload RX Goodput rate of connections created by this test. Goodput does not include Ethernet, IP, UDP/TCP header overhead. +
+
CSV Data for Realtime Throughput
+Realtime Throughput
+ + + + + +

+ Test Information +

+ + + + + + + +
+ Message +
+ Starting dataplane test with: 1 iterations. +
+ + +
+

+ + +
ChannelFrequencySecurityNSSCfg-ModeBandwidthPktTraffic-TypeDirectionAttenRotationDurationOffered-1mRx-BpsRx-Bps-1mRx-Bps-LLRx-Bps-3sRSSITx-FailedTx-Failed%Tx-RateRx-RateRpt-ModeRpt-Mode-Brief
365180WPA24AUTO801024TCPDUT-TXNANA60377.531 Mbps376.954 Mbps377.53 Mbps398.892 Mbps391.054 Mbps-550 / 123266001300 Mbps1.3 Gbps802.11an-AC802.11ac
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Brief csv report, may be imported into third-party tools. +
+

+ + +
Step IndexPosition [Deg]Attenuation [dB]Throughput [Mbps]Beacon RSSI [dBm]Data RSSI [dBm]
0NA0376.95-54-55
+
TAB Delineated Data for Table Above +
CSV Data for Table Above + +

Packet Loss Percentage graph shows the percentage of lost packets as detected by the receiving endpoint due to packet gaps. If there is full packet loss, then this will not report any loss since there will be no gap to detect. +
+
CSV Data for Endpoint RX Packet Loss Percentage
+Endpoint RX Packet Loss Percentage
+ +

Error Graph shows occurances of packet errors. +
+
CSV Data for Rx Errors
+Rx Errors
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Test configuration and LANforge software version +
+ Path Loss + + 10 +
+ Requested Speed + + 85% +
+ Requested Opposite Speed + + 85% +
+ Multi-Conn + + 1 +
+ Armageddon Multi-Pkt + + 1000 +
+ ToS + + 0 +
+ Duration: + + 1 min (1 m) +
+ Settle Time: + + 1 sec (1 s) +
+ Send Buffer Size: + + OS Default +
+ Receive Buffer Size: + + OS Default +
+ Channels + + AUTO +
+ Spatial Streams + + AUTO +
+ Bandwidth + + AUTO +
+ Attenuator-1 + + 0 +
+ Attenuation-1 + + 0..+50..950 +
+ Attenuator-2 + + 0 +
+ Attenuation-2 + + 0..+50..950 +
+ Turntable Chamber + + 0 +
+ Turntable Angles + + 0..+45..359 +
+ Modes + + Auto +
+ Packet Size + + 1024 +
+ Security + + AUTO +
+ Traffic Type + + TCP +
+ Direction + + DUT Transmit +
+ Upstream Port + + 1.1.eth2 Firmware: 0x80000aef, 1.1876.0 Resource: ct523c-0b67 +
+ WiFi Port + + 1.1.wlan000 Firmware: 10.4b-ct-9984-xtH-13-774502ee5 Resource: + ct523c-0b67 +
+ Outer Loop is Attenuation + + false +
+ Show Events + + true +
+ Auto Save Report + + true +
+ Build Date + + Fri 28 May 2021 09:54:57 AM PDT +
+ Build Version + + 5.4.3 +
+ Git Version + + e6a6e20f12a47cefe6de9acbad2570cea4adf844 +
+ + +
+
Key Performance Indicators CSV

+
+
Generated by Candela Technologies LANforge network testing tool.
+ www.candelatech.com +
+ +

+ + diff --git a/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0-print.png b/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0-print.png new file mode 100644 index 000000000..f13fd4725 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0-print.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0.png b/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0.png new file mode 100644 index 000000000..bd83da3bf Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/kpi-chart-0.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/kpi.csv b/reports/dataplane-2021-06-08-09-58-30/kpi.csv new file mode 100644 index 000000000..3837f4a5d --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/kpi.csv @@ -0,0 +1,2 @@ +Date test-rig dut-hw-version dut-sw-version dut-model-num dut-serial-num test-priority test-id short-description pass/fail numeric-score test details Units Graph-Group Subtest-Pass Subtest-Fail +1623171510701 ecw5410 ecw5410-1.1.0.tar.gz ecw5410 3c2c99f44e77 90 Dataplane TCP-DUT-TX-1024pkt-sz 376.954089 Throughput at specified settings. Mbps Throughput 0 0 diff --git a/reports/dataplane-2021-06-08-09-58-30/logo.png b/reports/dataplane-2021-06-08-09-58-30/logo.png new file mode 100644 index 000000000..23cca07d9 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/logo.png differ diff --git a/reports/dataplane-2021-06-08-09-58-30/report.css b/reports/dataplane-2021-06-08-09-58-30/report.css new file mode 100644 index 000000000..9b2925190 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/report.css @@ -0,0 +1,256 @@ +html, body,div { + margin: 0; + padding:0; + font-size: 14px; +} +h1,h2,h3,h4 { + padding: 0em; + line-height: 1.5; + text-align: left; + color: rgb(42,91,41); +} +@font-face { + font-family: CenturyGothic; + src: url("CenturyGothic.woff"), + url("images/CenturyGothic.woff"), + url("/images/CenturyGothic.woff"), + url("http://www.candelatech.com/images/CenturyGothic.woff"); +} +body,h1,h2,h3,h4 { + font-family: CenturyGothic, "Century Gothic", Arial, Helvetica, sans-serif; +} +h1 { font-size: 30px;} +h2 { font-size: 24px;} +h3 { font-size: 18px;} +h4 { font-size: 14px;} +li,pre,tt { + text-align: left; +} +pre { + font-size: 10px; +} +table { + border-collapse: collapse; + background: #e0e0e0; +} +table, td, th { + border: 1px solid gray; + padding 4px; +} +table.noborder, table.noborder td, table.noborder th { + border: 0 none; +} +td { + background: white; +} +td.ar { + text-align: right; +} +th { + color: rgb(42,91,41); + text-align: center; +} +#lf_title { + text-align: center; + background-image: url(candela_swirl_small-72h.png); + background-position: right; + background-repeat: no-repeat; + height: 90px; +} +#new_chart { + display: block; + height: 250px; + min-width: 200px; + width: 80%; + border: 1px solid black; + margin: 14px auto; + padding: 14px; + vertical-align: bottom; + text-align: center; +} +.lf_chart { + margin: 1em; + padding: 5px; +} +#error_types ul { + background: #f0f0f0; + font-size: 12px; + line-height: 1.5; + margin: 1em; + padding: 0.25em inherit 0.25em inherit; + max-height: 8em; + overflow: auto; +} +li { + line-height: 1.5; +} +.contentDiv { + margin: 1em 0.25in; +} +.ct-point { + stroke-width: 6px;} + +.o_el { + display: inline-block; + width: 100px; + height: 230px; + border: none; + margin: 1px 1px 16px 1px; + padding: 10px 10px 0 10px; + background: #eee; + text-align: center; + vertical-align: bottom; +} +.bar_el { + display: block; + background: green; + border: none; + min-height: 1px; + + margin: 0 0 5px 0; + padding: 0; + text-align: center; +} +.label_el { + color: black; + display: block; + font-size: 14px; + font-family: Arial,Helvetica,sans-serif,mono; + margin: 1px; + text-align: center; + vertical-align: bottom; + width: inherit; +} +.value_el { + font-family: Arial,Helvetica,sans-serif,mono; + color: black; + display: block; + font-size: 14px; + margin: 0 auto; + padding: none; + border: none; + background: white; + text-align: center; + vertical-align: bottom; + width: auto; +} +.value_el>span { + background: #f0f0f0a0; + border: 1px solid #f0f0f0a0; + border-radius: 5px; + padding: 1px; + min-width: 2em; +} +.error { + color: red; +} + +@media only screen { +.hideFromPrint { } +.hideFromScreen { display:none; } +} +@media only print { +.hideFromScreen { } +.hideFromPrint { display:none; } +} + +/* these styles will get overridden by custom.css */ +.TitleFontScreen { + margin-left:auto; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 1em; +} + +.TitleFontPrint { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + font-size: 50px; + padding-top: 20px; + padding-left: 20px; +} + +.TitleFontPrintSub { + line-height: 1; + margin-left:0px; + margin-right:auto; + margin-top: 0; + margin-bottom: 0; + /*font-size: 20px; Let 'h3', etc control this */ + padding-top: 0px; + padding-left: 20px; +} + +.HeaderFont {} +.TableFont {} +.TableBorder {} +.ImgStyle {} +div.Section h1, div.Section h2 { + margin: 0 0 0 0em; +} +div.HeaderStyle h1, div.HeaderStyle h2 { + text-align: left; + margin: 0 0 0 0; +} +div.Section { + padding 5px; + position: relative; +} +div.Section img { + margin: 0; + padding: 0; + position: relative; + top: 50%; + transform: translateY(-50%); +} +div.FooterStyle { + width: 100%; + vertical-align: middle; + border: 0 none; + border-top: 2px solid #2A5B29; + color: #2A5B29; + font-size: 12px; + margin-top: 2em; +} +div.FooterStyle img { + width: auto; + height: auto; + text-align: right; +} +div.FooterStyle span.Gradient { + background: white; + color: #2A5B29; + display: inline-block; + height: 30px; + line-height: 1; + padding-top: 22px; + padding-bottom: 20px; + padding-left: 2em; + vertical-align: middle; + max-width:80%; + float:left; + width:50%; +} +.FooterStyle a, .FooterStyle a:visited { + color: #2A5B29; + font-size: 12px; + line-height: 1; + height: 30px; + margin: 0; + padding: 0; + vertical-align: middle; +} +div.FooterStyle a.LogoImgLink { + display: inline-block; + text-align: right; + float: right; +} +a .LogoImgLink { +} +a.LogoImgLink img { +} diff --git a/reports/dataplane-2021-06-08-09-58-30/report_banner-1000x205.jpg b/reports/dataplane-2021-06-08-09-58-30/report_banner-1000x205.jpg new file mode 100644 index 000000000..e9e080ab8 Binary files /dev/null and b/reports/dataplane-2021-06-08-09-58-30/report_banner-1000x205.jpg differ diff --git a/reports/dataplane-2021-06-08-09-58-30/text-csv-0.csv b/reports/dataplane-2021-06-08-09-58-30/text-csv-0.csv new file mode 100644 index 000000000..cf35947ef --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/text-csv-0.csv @@ -0,0 +1,2 @@ +Channel,Frequency,Security,NSS,Cfg-Mode,Bandwidth,Pkt,Traffic-Type,Direction,Atten,Rotation,Duration,Offered-1m,Rx-Bps,Rx-Bps-1m,Rx-Bps-LL,Rx-Bps-3s,RSSI,Tx-Failed,Tx-Failed%,Tx-Rate,Rx-Rate,Rpt-Mode,Rpt-Mode-Brief +36,5180,WPA2,4,AUTO,80,1024,TCP,DUT-TX,NA,NA,60,377.531 Mbps,376.954 Mbps,377.53 Mbps,398.892 Mbps,391.054 Mbps,-55,0 / 1232660,0,1300 Mbps,1.3 Gbps,802.11an-AC,802.11ac diff --git a/reports/dataplane-2021-06-08-09-58-30/text-csv-1.csv b/reports/dataplane-2021-06-08-09-58-30/text-csv-1.csv new file mode 100644 index 000000000..63bf6398a --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/text-csv-1.csv @@ -0,0 +1,2 @@ +Step Index,Position [Deg],Attenuation [dB],Throughput [Mbps],Beacon RSSI [dBm],Data RSSI [dBm] +0,NA,0,376.95,-54,-55 diff --git a/reports/dataplane-2021-06-08-09-58-30/text-tab-0.csv b/reports/dataplane-2021-06-08-09-58-30/text-tab-0.csv new file mode 100644 index 000000000..df7f35a1c --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/text-tab-0.csv @@ -0,0 +1,2 @@ +Channel Frequency Security NSS Cfg-Mode Bandwidth Pkt Traffic-Type Direction Atten Rotation Duration Offered-1m Rx-Bps Rx-Bps-1m Rx-Bps-LL Rx-Bps-3s RSSI Tx-Failed Tx-Failed% Tx-Rate Rx-Rate Rpt-Mode Rpt-Mode-Brief +36 5180 WPA2 4 AUTO 80 1024 TCP DUT-TX NA NA 60 377.531 Mbps 376.954 Mbps 377.53 Mbps 398.892 Mbps 391.054 Mbps -55 0 / 1232660 0 1300 Mbps 1.3 Gbps 802.11an-AC 802.11ac diff --git a/reports/dataplane-2021-06-08-09-58-30/text-tab-1.csv b/reports/dataplane-2021-06-08-09-58-30/text-tab-1.csv new file mode 100644 index 000000000..971a732c1 --- /dev/null +++ b/reports/dataplane-2021-06-08-09-58-30/text-tab-1.csv @@ -0,0 +1,2 @@ +Step Index Position [Deg] Attenuation [dB] Throughput [Mbps] Beacon RSSI [dBm] Data RSSI [dBm] +0 NA 0 376.95 -54 -55 diff --git a/tests/configuration.py b/tests/configuration.py index 97cf4c072..160d3606f 100644 --- a/tests/configuration.py +++ b/tests/configuration.py @@ -39,127 +39,127 @@ CONFIGURATION = { } } }, - # This is sample Config of a Testbed - "basic-ext-01": { - "controller": { - 'url': "http://wlan-portal-svc-digicert.cicd.lab.wlan.tip.build", # API base url for the controller - 'username': 'support@example.com', # cloud controller Login - 'password': 'support', # Cloud Controller Login Password - 'version': '1.1.0-SNAPSHOT', # Controller version - 'commit_date': "2021-04-27" # Controller version sdk, commit date - }, - 'access_point': [ - { - 'model': 'ecw5410', # AP Model, can be found in ap console using "node" command - 'mode': 'wifi5', # wifi5/wifi6 can be found on AP Hardware page on Confluence - 'serial': '903cb3944873', # "node" command has serial_number information - 'jumphost': True, - # True, if you have AP On serial console and not ssh access, False, if you have AP ssh access from the machine - 'ip': "192.168.80.99", - # IP Address of System, which has AP Connected to serial cable (if jumphost is True), else - AP IP Address - 'username': "lanforge", # ssh username of system (lab-ctlr/ap) - 'password': "lanforge", # ssh password for system (lab-ctlr/ap) - 'port': 22, # 22, # ssh port for system (lab-ctlr/ap) - 'jumphost_tty': '/dev/ttyAP1', # if jumphost is True, enter the serial console device name - 'version': "https://tip.jfrog.io/artifactory/tip-wlan-ap-firmware/ecw5410/trunk/ecw5410-1.1.0.tar.gz" - # Enter the Target AP Version URL for Testing - } - ], - # Traffic generator - "traffic_generator": { - "name": "lanforge", # ( lanforge/ perfecto) - # Details for LANforge system - "details": { - "ip": "192.168.80.99", # localhost, - "port": 8080, # 8802, - "2.4G-Radio": ["wiphy4"], - "5G-Radio": ["wiphy5"], - "AX-Radio": ["wiphy0", "wiphy1", "wiphy2", "wiphy3"], - "upstream": "1.1.eth2", - "upstream_subnet": "10.28.2.1/24", - "uplink": "1.1.eth3", - "2.4G-Station-Name": "wlan0", - "5G-Station-Name": "wlan0", - "AX-Station-Name": "ax" - } - } - +# This is sample Config of a Testbed +"basic-ext-01": { + "controller": { + 'url': "http://wlan-portal-svc-digicert.cicd.lab.wlan.tip.build", # API base url for the controller + 'username': 'support@example.com', # cloud controller Login + 'password': 'support', # Cloud Controller Login Password + 'version': '1.1.0-SNAPSHOT', # Controller version + 'commit_date': "2021-04-27" # Controller version sdk, commit date }, - "basic-lab": { + 'access_point': [ + { + 'model': 'ecw5410', # AP Model, can be found in ap console using "node" command + 'mode': 'wifi5', # wifi5/wifi6 can be found on AP Hardware page on Confluence + 'serial': '903cb3944873', # "node" command has serial_number information + 'jumphost': True, + # True, if you have AP On serial console and not ssh access, False, if you have AP ssh access from the machine + 'ip': "192.168.80.99", + # IP Address of System, which has AP Connected to serial cable (if jumphost is True), else - AP IP Address + 'username': "lanforge", # ssh username of system (lab-ctlr/ap) + 'password': "lanforge", # ssh password for system (lab-ctlr/ap) + 'port': 22, # 22, # ssh port for system (lab-ctlr/ap) + 'jumphost_tty': '/dev/ttyAP1', # if jumphost is True, enter the serial console device name + 'version': "https://tip.jfrog.io/artifactory/tip-wlan-ap-firmware/ecw5410/trunk/ecw5410-1.1.0.tar.gz" + # Enter the Target AP Version URL for Testing + } + ], + # Traffic generator + "traffic_generator": { + "name": "lanforge", # ( lanforge/ perfecto) + # Details for LANforge system + "details": { + "ip": "192.168.80.99", # localhost, + "port": 8080, # 8802, + "2.4G-Radio": ["wiphy4"], + "5G-Radio": ["wiphy5"], + "AX-Radio": ["wiphy0", "wiphy1", "wiphy2", "wiphy3"], + "upstream": "1.1.eth2", + "upstream_subnet": "10.28.2.1/24", + "uplink": "1.1.eth3", + "2.4G-Station-Name": "wlan0", + "5G-Station-Name": "wlan0", + "AX-Station-Name": "ax" + } + } + +}, +"basic-lab": { + "controller": { + 'url': "https://wlan-portal-svc-nola-ext-04.cicd.lab.wlan.tip.build", # API base url for the controller + 'username': 'support@example.com', # cloud controller Login + 'password': 'support', # Cloud Controller Login Password + 'version': '1.1.0-SNAPSHOT', # Controller version + 'commit_date': "2021-04-27" # Controller version sdk, commit date + }, + 'access_point': [ + { + 'model': 'ecw5410', # AP Model, can be found in ap console using "node" command + 'mode': 'wifi5', # wifi5/wifi6 can be found on AP Hardware page on Confluence + 'serial': '903cb3944873', # "node" command has serial_number information + 'jumphost': True, + # True, if you have AP On serial console and not ssh access, False, if you have AP ssh access from the machine + 'ip': "localhost", + # IP Address of System, which has AP Connected to serial cable (if jumphost is True), else - AP IP Address + 'username': "lanforge", # ssh username of system (lab-ctlr/ap) + 'password': "pumpkin77", # ssh password for system (lab-ctlr/ap) + 'port': 8803, # 22, # ssh port for system (lab-ctlr/ap) + 'jumphost_tty': '/dev/ttyAP1', # if jumphost is True, enter the serial console device name + 'version': "https://tip.jfrog.io/artifactory/tip-wlan-ap-firmware/ecw5410/trunk/ecw5410-1.1.0.tar.gz" + # Enter the Target AP Version URL for Testing + } + ], + # Traffic generator + "traffic_generator": { + "name": "lanforge", # ( lanforge/ perfecto) + # Details for LANforge system + "details": { + "ip": "localhost", # localhost, + "port": 8802, # 8802, + "2.4G-Radio": ["wiphy4"], + "5G-Radio": ["wiphy5"], + "AX-Radio": ["wiphy0", "wiphy1", "wiphy2", "wiphy3"], + "upstream": "1.1.eth2", + "upstream_subnet": "10.28.2.1/24", + "uplink": "1.1.eth3", + "2.4G-Station-Name": "wlan0", + "5G-Station-Name": "wlan0", + "AX-Station-Name": "ax" + } + } + +}, +"interop": { "controller": { - 'url': "https://wlan-portal-svc-nola-ext-04.cicd.lab.wlan.tip.build", # API base url for the controller - 'username': 'support@example.com', # cloud controller Login - 'password': 'support', # Cloud Controller Login Password - 'version': '1.1.0-SNAPSHOT', # Controller version - 'commit_date': "2021-04-27" # Controller version sdk, commit date + 'url': "https://wlan-portal-svc-nola-01.cicd.lab.wlan.tip.build", # API base url for the controller + 'username': 'support@example.com', + 'password': 'support', + 'version': '1.0.0-SNAPSHOT', + 'commit_date': '2021-03-01' }, 'access_point': [ { - 'model': 'ecw5410', # AP Model, can be found in ap console using "node" command - 'mode': 'wifi5', # wifi5/wifi6 can be found on AP Hardware page on Confluence - 'serial': '903cb3944873', # "node" command has serial_number information + 'model': 'ecw5410', + 'mode': 'wifi5', + 'serial': '68215fd2f78c', 'jumphost': True, - # True, if you have AP On serial console and not ssh access, False, if you have AP ssh access from the machine 'ip': "localhost", - # IP Address of System, which has AP Connected to serial cable (if jumphost is True), else - AP IP Address - 'username': "lanforge", # ssh username of system (lab-ctlr/ap) - 'password': "pumpkin77", # ssh password for system (lab-ctlr/ap) - 'port': 8803, # 22, # ssh port for system (lab-ctlr/ap) - 'jumphost_tty': '/dev/ttyAP1', # if jumphost is True, enter the serial console device name - 'version': "https://tip.jfrog.io/artifactory/tip-wlan-ap-firmware/ecw5410/trunk/ecw5410-1.1.0.tar.gz" - # Enter the Target AP Version URL for Testing + 'username': "lanforge", + 'password': "pumpkin77", + 'port': 8803, + 'jumphost_tty': '/dev/ttyAP1', + 'version': "ecw5410-2021-04-26-pending-3fc41fa" } ], - # Traffic generator - "traffic_generator": { - "name": "lanforge", # ( lanforge/ perfecto) - # Details for LANforge system + "traffic_generator": { + "name": "Perfecto", "details": { - "ip": "localhost", # localhost, - "port": 8802, # 8802, - "2.4G-Radio": ["wiphy4"], - "5G-Radio": ["wiphy5"], - "AX-Radio": ["wiphy0", "wiphy1", "wiphy2", "wiphy3"], - "upstream": "1.1.eth2", - "upstream_subnet": "10.28.2.1/24", - "uplink": "1.1.eth3", - "2.4G-Station-Name": "wlan0", - "5G-Station-Name": "wlan0", - "AX-Station-Name": "ax" - } - } - - }, - "interop": { - "controller": { - 'url': "https://wlan-portal-svc-nola-01.cicd.lab.wlan.tip.build", # API base url for the controller - 'username': 'support@example.com', - 'password': 'support', - 'version': '1.0.0-SNAPSHOT', - 'commit_date': '2021-03-01' - }, - 'access_point': [ - { - 'model': 'ecw5410', - 'mode': 'wifi5', - 'serial': '68215fd2f78c', - 'jumphost': True, - 'ip': "localhost", - 'username': "lanforge", - 'password': "pumpkin77", - 'port': 8803, - 'jumphost_tty': '/dev/ttyAP1', - 'version': "ecw5410-2021-04-26-pending-3fc41fa" - } - ], - "traffic_generator": { - "name": "Perfecto", - "details": { - "securityToken": "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw", - "perfectoURL": "tip" - } + "securityToken": "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw", + "perfectoURL": "tip" } } + } } @@ -359,5 +359,5 @@ TEST_CASES = { "5g_open_nat": 4322, "2g_open_vlan": 9897, "5g_open_vlan": 9898 -} + } \ No newline at end of file diff --git a/tests/e2e/basic/performance_tests/dataplane_throughput_test/test_bridge_mode.py b/tests/e2e/basic/performance_tests/dataplane_throughput_test/test_bridge_mode.py index e2144f069..c8029ec3e 100644 --- a/tests/e2e/basic/performance_tests/dataplane_throughput_test/test_bridge_mode.py +++ b/tests/e2e/basic/performance_tests/dataplane_throughput_test/test_bridge_mode.py @@ -8,7 +8,7 @@ import os import pytest import allure -pytestmark = [pytest.mark.performance, pytest.mark.dataplane_throughput_test, pytest.mark.bridge, pytest.mark.usefixtures("setup_test_run")] +pytestmark = [pytest.mark.performance, pytest.mark.dataplane_throughput_test, pytest.mark.bridge] #, pytest.mark.usefixtures("setup_test_run")] setup_params_general = { "mode": "BRIDGE", diff --git a/tests/e2e/basic/performance_tests/throughput_benchmark/__init__.py b/tests/e2e/basic/performance_tests/throughput_benchmark/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/__init__.py b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_bridge_mode.py b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_bridge_mode.py new file mode 100644 index 000000000..5165e29e7 --- /dev/null +++ b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_bridge_mode.py @@ -0,0 +1,1275 @@ +""" + + Performance Test: throughput test under various combinations: Bridge Mode + pytest -m "throughput_benchmark_test and downstream_udp_20mhz" -s -vvv --skip-testrail --testbed=basic-01 + + +""" +import os +import pytest +import allure + +pytestmark = [pytest.mark.performance, pytest.mark.throughput_benchmark_test, pytest.mark.bridge] # pytest.mark.usefixtures("setup_test_run")] + +setup_params_general = { + "mode": "BRIDGE", + "ssid_modes": { + "wpa2_personal": [ + {"ssid_name": "ssid_wpa2_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"}, + {"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"], + "security_key": "something"}]}, + "rf": {}, + "radius": False +} + +@allure.feature("BRIDGE MODE CLIENT CONNECTIVITY") +@pytest.mark.parametrize( + 'setup_profiles', + [setup_params_general], + indirect=True, + scope="class" +) +@pytest.mark.usefixtures("setup_profiles") +class TestThroughputUnderCombinationsBridge(object): + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_20mhz_bridge + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP',"spatial_streams:2","bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/"+report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ########################################################################## + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ################################################################################# + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ######################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################################ + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################ + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ###################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams: 4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "BRIDGE" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False diff --git a/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_nat_mode.py b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_nat_mode.py new file mode 100644 index 000000000..8b3210a29 --- /dev/null +++ b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_nat_mode.py @@ -0,0 +1,1274 @@ +""" + + Performance Test: throughput test under various combinations: NAT Mode + pytest -m "dataplane_throughput_test and NAT" + +""" +import os +import pytest +import allure + +pytestmark = [pytest.mark.performance, pytest.mark.throughput_benchmark_test, pytest.mark.nat] # pytest.mark.usefixtures("setup_test_run")] + +setup_params_general = { + "mode": "NAT", + "ssid_modes": { + "wpa2_personal": [ + {"ssid_name": "ssid_wpa2_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"}, + {"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"], + "security_key": "something"}]}, + "rf": {}, + "radius": False +} + +@allure.feature("NAT MODE CLIENT CONNECTIVITY") +@pytest.mark.parametrize( + 'setup_profiles', + [setup_params_general], + indirect=True, + scope="class" +) +@pytest.mark.usefixtures("setup_profiles") +class TestThroughputUnderCombinationsNAT(object): + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP',"spatial_streams:2","bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/"+report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ########################################################################## + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ################################################################################# + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ######################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################################ + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################ + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ###################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams: 4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "NAT" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False diff --git a/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_vlan_mode.py b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_vlan_mode.py new file mode 100644 index 000000000..c3202f99d --- /dev/null +++ b/tests/e2e/basic/performance_tests/throughput_benchmark/tcp_udp_upstream_downstream_bidirection_throughput_test/test_vlan_mode.py @@ -0,0 +1,1274 @@ +""" + + Performance Test: throughput test under various combinations: VLAN Mode + pytest -m "dataplane_throughput_test and VLAN" + +""" +import os +import pytest +import allure + +pytestmark = [pytest.mark.performance, pytest.mark.throughput_benchmark_test, pytest.mark.vlan] # pytest.mark.usefixtures("setup_test_run")] + +setup_params_general = { + "mode": "VLAN", + "ssid_modes": { + "wpa2_personal": [ + {"ssid_name": "ssid_wpa2_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"}, + {"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"], + "security_key": "something"}]}, + "rf": {}, + "radius": False +} + +@allure.feature("VLAN MODE CLIENT CONNECTIVITY") +@pytest.mark.parametrize( + 'setup_profiles', + [setup_params_general], + indirect=True, + scope="class" +) +@pytest.mark.usefixtures("setup_profiles") +class TestThroughputUnderCombinationsVLAN(object): + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP',"spatial_streams:2","bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/"+report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_20mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:20", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ########################################################################## + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss2_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:2", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + ################################################################################# + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ######################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_tcp_80mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:80", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################################ + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss3_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ############################################################ + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss3_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams:3", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ##################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_udp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: UDP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + ###################################################################### + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.upstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Receive', + 'traffic_types: TCP', "spatial_streams: 4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.downstream_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False + + @pytest.mark.wpa2_personal + @pytest.mark.fiveg + @pytest.mark.bidirectional_nss4_tcp_160mhz + def test_client_wpa2_personal_5g(self, get_vif_state, + lf_test, station_names_fiveg, create_lanforge_chamberview_dut, get_configuration): + + profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] + ssid_name = profile_data["ssid_name"] + security_key = profile_data["security_key"] + security = "wpa2" + mode = "VLAN" + band = "fiveg" + vlan = 1 + dut_name = create_lanforge_chamberview_dut + if ssid_name not in get_vif_state: + allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state)) + pytest.xfail("SSID NOT AVAILABLE IN VIF STATE") + station = lf_test.Client_Connect(ssid=ssid_name, security=security, + passkey=security_key, mode=mode, band=band, + station_name=station_names_fiveg, vlan_id=vlan) + + if station: + val = ['pkts: 60', + 'directions: DUT Transmit;DUT Receive', + 'traffic_types: TCP', "spatial_streams:4", "bandw_options:160", "show_3s: 1", + "show_ll_graphs: 1", "show_log: 1"] + dp_obj = lf_test.dataplane(station_name=station_names_fiveg, mode=mode, + instance_name="TIP_PERF_DPT_WPA2_5G", + vlan_id=vlan, dut_name=dut_name, raw_line=val) + report_name = dp_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + entries = os.listdir("../reports/" + report_name + '/') + pdf = False + for i in entries: + if ".pdf" in i: + pdf = i + if pdf: + allure.attach.file(source="../reports/" + report_name + "/" + pdf, + name=get_configuration["access_point"][0]["model"] + "_dataplane") + print("Test Completed... Cleaning up Stations") + lf_test.Client_disconnect(station_name=station_names_fiveg) + assert station + else: + assert False