+++ /dev/null
-# Copyright (c) 2023 Cisco and/or its affiliates.
-#
-# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
-#
-# Licensed under the Apache License 2.0 or
-# GNU General Public License v2.0 or later; you may not use this file
-# except in compliance with one of these Licenses. You
-# may obtain a copy of the Licenses at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# Note: If this file is linked with Scapy, which is GPLv2+, your use of it
-# must be under GPLv2+. If at any point in the future it is no longer linked
-# with Scapy (or other GPLv2+ licensed software), you are free to choose
-# Apache 2.
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Stream profile for T-rex traffic generator.
-
-Stream profile:
- - Two streams sent in directions 0 --> 1 and 1 --> 0 at the same time.
- - Packet: ETH / IP /
- - Direction 0 --> 1:
- - Source IP address range: 10.0.0.1
- - Destination IP address range: 20.0.0.0 - 20.0.39.15
- - Direction 1 --> 0:
- - Source IP address range: 20.0.0.1
- - Destination IP address range: 10.0.0.0 - 10.0.39.15
-"""
-
-from trex.stl.api import *
-from profile_trex_stateless_base_class import TrafficStreamsBaseClass
-
-
-class TrafficStreams(TrafficStreamsBaseClass):
- """Stream profile."""
-
- def __init__(self):
- """Initialization and setting of streams' parameters."""
-
- super(TrafficStreamsBaseClass, self).__init__()
-
- # IPs used in packet headers.
- self.p1_src_start_ip = u"10.0.0.1"
- self.p1_dst_start_ip = u"20.0.0.0"
- self.p1_dst_end_ip = u"20.0.39.15"
-
- self.p2_src_start_ip = u"20.0.0.1"
- self.p2_dst_start_ip = u"10.0.0.0"
- self.p2_dst_end_ip = u"10.0.39.15"
-
- def define_packets(self):
- """Defines the packets to be sent from the traffic generator.
-
- Packet definition: | ETH | IP |
-
- :returns: Packets to be sent from the traffic generator.
- :rtype: tuple
- """
-
- # Direction 0 --> 1
- base_pkt_a = (
- Ether() /
- IP(
- src=self.p1_src_start_ip,
- dst=self.p1_dst_start_ip,
- proto=61
- )
- )
- # Direction 1 --> 0
- base_pkt_b = (
- Ether() /
- IP(
- src=self.p2_src_start_ip,
- dst=self.p2_dst_start_ip,
- proto=61
- )
- )
-
- # Direction 0 --> 1
- vm1 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p1_dst_start_ip,
- max_value=self.p1_dst_end_ip,
- size=4,
- seed=1,
- # Cycle length. TRex does not allow any higher value.
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
-
- # Direction 1 --> 0
- vm2 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p2_dst_start_ip,
- max_value=self.p2_dst_end_ip,
- size=4,
- # Using a different seed to be extra sure
- # nothing useful gets cached.
- seed=2,
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
-
- return base_pkt_a, base_pkt_b, vm1, vm2
-
-
-def register():
- """Register this traffic profile to T-rex.
-
- Do not change this function.
-
- :return: Traffic streams.
- :rtype: Object
- """
- return TrafficStreams()
+++ /dev/null
-# Copyright (c) 2023 Cisco and/or its affiliates.
-#
-# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
-#
-# Licensed under the Apache License 2.0 or
-# GNU General Public License v2.0 or later; you may not use this file
-# except in compliance with one of these Licenses. You
-# may obtain a copy of the Licenses at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# Note: If this file is linked with Scapy, which is GPLv2+, your use of it
-# must be under GPLv2+. If at any point in the future it is no longer linked
-# with Scapy (or other GPLv2+ licensed software), you are free to choose
-# Apache 2.
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Stream profile for T-rex traffic generator.
-
-Stream profile:
- - Two streams sent in directions 0 --> 1 and 1 --> 0 at the same time.
- - Packet: ETH / IP /
- - Direction 0 --> 1:
- - Source IP address range: 10.0.0.1
- - Destination IP address range: 20.0.0.0 - 20.1.134.159
- - Direction 1 --> 0:
- - Source IP address range: 20.0.0.1
- - Destination IP address range: 10.0.0.0 - 10.1.134.159
-"""
-
-from trex.stl.api import *
-from profile_trex_stateless_base_class import TrafficStreamsBaseClass
-
-
-class TrafficStreams(TrafficStreamsBaseClass):
- """Stream profile."""
-
- def __init__(self):
- """Initialization and setting of streams' parameters."""
-
- super(TrafficStreamsBaseClass, self).__init__()
-
- # IPs used in packet headers.
- self.p1_src_start_ip = u"10.0.0.1"
- self.p1_dst_start_ip = u"20.0.0.0"
- self.p1_dst_end_ip = u"20.1.134.159"
-
- self.p2_src_start_ip = u"20.0.0.1"
- self.p2_dst_start_ip = u"10.0.0.0"
- self.p2_dst_end_ip = u"10.1.134.159"
-
- def define_packets(self):
- """Defines the packets to be sent from the traffic generator.
-
- Packet definition: | ETH | IP |
-
- :returns: Packets to be sent from the traffic generator.
- :rtype: tuple
- """
-
- # Direction 0 --> 1
- base_pkt_a = (
- Ether() /
- IP(
- src=self.p1_src_start_ip,
- dst=self.p1_dst_start_ip,
- proto=61
- )
- )
- # Direction 1 --> 0
- base_pkt_b = (
- Ether() /
- IP(
- src=self.p2_src_start_ip,
- dst=self.p2_dst_start_ip,
- proto=61
- )
- )
-
- # Direction 0 --> 1
- vm1 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p1_dst_start_ip,
- max_value=self.p1_dst_end_ip,
- size=4,
- seed=1,
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
- # Direction 1 --> 0
- vm2 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p2_dst_start_ip,
- max_value=self.p2_dst_end_ip,
- size=4,
- seed=2,
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
-
- return base_pkt_a, base_pkt_b, vm1, vm2
-
-
-def register():
- """Register this traffic profile to T-rex.
-
- Do not change this function.
-
- :return: Traffic streams.
- :rtype: Object
- """
- return TrafficStreams()
+++ /dev/null
-# Copyright (c) 2023 Cisco and/or its affiliates.
-#
-# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
-#
-# Licensed under the Apache License 2.0 or
-# GNU General Public License v2.0 or later; you may not use this file
-# except in compliance with one of these Licenses. You
-# may obtain a copy of the Licenses at:
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# Note: If this file is linked with Scapy, which is GPLv2+, your use of it
-# must be under GPLv2+. If at any point in the future it is no longer linked
-# with Scapy (or other GPLv2+ licensed software), you are free to choose
-# Apache 2.
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Stream profile for T-rex traffic generator.
-
-Stream profile:
- - Two streams sent in directions 0 --> 1 and 1 --> 0 at the same time.
- - Packet: ETH / IP /
- - Direction 0 --> 1:
- - Source IP address range: 10.0.0.1
- - Destination IP address range: 20.0.0.0 - 20.15.66.63
- - Direction 1 --> 0:
- - Source IP address range: 20.0.0.1
- - Destination IP address range: 10.0.0.0 - 10.15.66.63
-"""
-
-from trex.stl.api import *
-from profile_trex_stateless_base_class import TrafficStreamsBaseClass
-
-
-class TrafficStreams(TrafficStreamsBaseClass):
- """Stream profile."""
-
- def __init__(self):
- """Initialization and setting of streams' parameters."""
-
- super(TrafficStreamsBaseClass, self).__init__()
-
- # IPs used in packet headers.
- self.p1_src_start_ip = u"10.0.0.1"
- self.p1_dst_start_ip = u"20.0.0.0"
- self.p1_dst_end_ip = u"20.15.66.63"
-
- self.p2_src_start_ip = u"20.0.0.1"
- self.p2_dst_start_ip = u"10.0.0.0"
- self.p2_dst_end_ip = u"10.15.66.63"
-
- def define_packets(self):
- """Defines the packets to be sent from the traffic generator.
-
- Packet definition: | ETH | IP |
-
- :returns: Packets to be sent from the traffic generator.
- :rtype: tuple
- """
-
- # Direction 0 --> 1
- base_pkt_a = (
- Ether() /
- IP(
- src=self.p1_src_start_ip,
- dst=self.p1_dst_start_ip,
- proto=61
- )
- )
- # Direction 1 --> 0
- base_pkt_b = (
- Ether() /
- IP(
- src=self.p2_src_start_ip,
- dst=self.p2_dst_start_ip,
- proto=61
- )
- )
-
- # Direction 0 --> 1
- vm1 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p1_dst_start_ip,
- max_value=self.p1_dst_end_ip,
- size=4,
- seed=1,
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
- # Direction 1 --> 0
- vm2 = STLScVmRaw(
- [
- STLVmFlowVarRepeatableRandom(
- name=u"dst",
- min_value=self.p2_dst_start_ip,
- max_value=self.p2_dst_end_ip,
- size=4,
- seed=2,
- limit=(2**24 - 1)
- ),
- STLVmWrFlowVar(
- fv_name=u"dst",
- pkt_offset=u"IP.dst"
- ),
- STLVmFixIpv4(
- offset=u"IP"
- )
- ]
- )
-
- return base_pkt_a, base_pkt_b, vm1, vm2
-
-
-def register():
- """Register this traffic profile to T-rex.
-
- Do not change this function.
-
- :return: Traffic streams.
- :rtype: Object
- """
- return TrafficStreams()
{
"src_start_ip": "2100::1",
"dst_start_ip": "2200::0",
- "dst_end_ip": "2200::F:423F"
+ "dst_end_ip": "2200::F:423F",
+ "seed": 1
},
# Direction W --> E:
{
"src_start_ip": "2300::1",
"dst_start_ip": "2400::0",
- "dst_end_ip": "2400::F:423F"
+ "dst_end_ip": "2400::F:423F",
+ "seed": 2
},
# Direction W --> E:
{
"src_start_ip": "2500::1",
"dst_start_ip": "2600::0",
- "dst_end_ip": "2600::F:423F"
+ "dst_end_ip": "2600::F:423F",
+ "seed": 1
},
# Direction E --> W:
{
"src_start_ip": "2200::1",
"dst_start_ip": "2100::0",
- "dst_end_ip": "2100::F:423F"
+ "dst_end_ip": "2100::F:423F",
+ "seed": 2
},
# Direction E --> W:
{
"src_start_ip": "2400::1",
"dst_start_ip": "2300::0",
- "dst_end_ip": "2300::F:423F"
+ "dst_end_ip": "2300::F:423F",
+ "seed": 1
},
# Direction E --> W:
{
"src_start_ip": "2600::1",
"dst_start_ip": "2500::0",
- "dst_end_ip": "2500::F:423F"
+ "dst_end_ip": "2500::F:423F",
+ "seed": 2
}
]
self.pkt_base = []
min_value=base,
max_value=base + count,
size=8,
- op="inc"
+ seed=self.pkt_data[i]["seed"],
+ limit=(2**24 - 1)
),
STLVmWrFlowVar(
fv_name="ipv6_dst",
-24.06-rc0~197-g67226438c
\ No newline at end of file
+24.06-rc0~240-g916ca8d5a
\ No newline at end of file
URL_JENKINS = "https://jenkins.fd.io/job/"
# URL to logs
- URL_LOGS = "https://s3-logs.fd.io/vex-yul-rot-jenkins-1/"
+ URL_LOGS = "https://logs.fd.io/vex-yul-rot-jenkins-1/"
# URL to the documentation
URL_DOC_TRENDING = "https://csit.fd.io/cdocs/methodology/trending/analysis/"
--- /dev/null
+../report_iterative/3n-icx/vpp-mrr-01.md
\ No newline at end of file
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
### intel-e810xxv
#### dpdk-vfio-pci
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND cps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND cps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND rps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND rps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND e810xxv AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
### intel-e810cq
#### dpdk-vfio-pci
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
-2c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
\ No newline at end of file
+2c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
\ No newline at end of file
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+##### eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 0b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+##### eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 0b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND 2p1cx7veat AND drv_mlx5_core AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
### intel-e810cq
#### dpdk-vfio-pci
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
2c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
##### eth-ip4tcphttp-ldpreload-nginx-1_21_5
1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
-2c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
\ No newline at end of file
+2c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-ldpreload-nginx-1_21_5
+##### eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 0b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 2048b AND cps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+##### eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 0b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+1c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
+2c AND 2048b AND rps AND e810cq AND drv_vfio_pci AND eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5
\ No newline at end of file
--- /dev/null
+# 3n-icx
+### intel-e810cq
+#### dpdk-vfio-pci
+##### ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+##### ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm
+##### ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm
+##### ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm
+##### ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+1c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+2c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
+4c AND imix AND mrr AND e810cq AND drv_vfio_pci AND ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm
\ No newline at end of file
from robot.libraries.BuiltIn import BuiltIn
from resources.libraries.python.Constants import Constants
+from resources.libraries.python.enum_util import get_enum_instance
from resources.libraries.python.IncrementUtil import ObjIncrement
from resources.libraries.python.InterfaceUtil import (
InterfaceUtil,
)
-class PolicyAction(Enum):
- """Policy actions."""
+# TODO: Introduce a metaclass that adds .find and .InputType automatically?
+class IpsecSpdAction(Enum):
+ """IPsec SPD actions.
- BYPASS = ("bypass", 0)
+ Mirroring VPP: src/vnet/ipsec/ipsec_types.api enum ipsec_spd_action.
+ """
+
+ BYPASS = NONE = ("bypass", 0)
DISCARD = ("discard", 1)
+ RESOLVE = ("resolve", 2)
PROTECT = ("protect", 3)
- def __init__(self, policy_name: str, policy_int_repr: int):
- self.policy_name = policy_name
- self.policy_int_repr = policy_int_repr
+ def __init__(self, action_name: str, action_int_repr: int):
+ self.action_name = action_name
+ self.action_int_repr = action_int_repr
def __str__(self) -> str:
- return self.policy_name
+ return self.action_name
def __int__(self) -> int:
- return self.policy_int_repr
+ return self.action_int_repr
class CryptoAlg(Enum):
"""Encryption algorithms."""
+ NONE = ("none", 0, "none", 0)
AES_CBC_128 = ("aes-cbc-128", 1, "AES-CBC", 16)
AES_CBC_256 = ("aes-cbc-256", 3, "AES-CBC", 32)
AES_GCM_128 = ("aes-gcm-128", 7, "AES-GCM", 16)
self.scapy_name = scapy_name
self.key_len = key_len
+ # TODO: Investigate if __int__ works with PAPI. It was not enough for "if".
+ def __bool__(self):
+ """A shorthand to enable "if crypto_alg:" constructs."""
+ return self.alg_int_repr != 0
+
class IntegAlg(Enum):
"""Integrity algorithm."""
+ NONE = ("none", 0, "none", 0)
SHA_256_128 = ("sha-256-128", 4, "SHA2-256-128", 32)
SHA_512_256 = ("sha-512-256", 6, "SHA2-512-256", 64)
self.scapy_name = scapy_name
self.key_len = key_len
+ def __bool__(self):
+ """A shorthand to enable "if integ_alg:" constructs."""
+ return self.alg_int_repr != 0
+
+# TODO: Base on Enum, so str values can be defined as in alg enums?
class IPsecProto(IntEnum):
- """IPsec protocol."""
+ """IPsec protocol.
+
+ Mirroring VPP: src/vnet/ipsec/ipsec_types.api enum ipsec_proto.
+ """
- IPSEC_API_PROTO_ESP = 50
- IPSEC_API_PROTO_AH = 51
+ ESP = 50
+ AH = 51
+ NONE = 255
+ def __str__(self) -> str:
+ """Return string suitable for CLI commands.
+
+ None is not supported.
+
+ :returns: Lowercase name of the proto.
+ :rtype: str
+ :raises: ValueError if the numeric value is not recognized.
+ """
+ num = int(self)
+ if num == 50:
+ return "esp"
+ if num == 51:
+ return "ah"
+ raise ValueError(f"String form not defined for IPsecProto {num}")
+
+# The rest of enums do not appear outside this file, so no no change needed yet.
class IPsecSadFlags(IntEnum):
"""IPsec Security Association Database flags."""
- IPSEC_API_SAD_FLAG_NONE = 0
+ IPSEC_API_SAD_FLAG_NONE = NONE = 0
# Enable extended sequence numbers
IPSEC_API_SAD_FLAG_USE_ESN = 0x01
# Enable Anti - replay
class TunnelEncpaDecapFlags(IntEnum):
"""Flags controlling tunnel behaviour."""
- TUNNEL_API_ENCAP_DECAP_FLAG_NONE = 0
+ TUNNEL_API_ENCAP_DECAP_FLAG_NONE = NONE = 0
# at encap, copy the DF bit of the payload into the tunnel header
TUNNEL_API_ENCAP_DECAP_FLAG_ENCAP_COPY_DF = 1
# at encap, set the DF bit in the tunnel header
"""Tunnel modes."""
# point-to-point
- TUNNEL_API_MODE_P2P = 0
+ TUNNEL_API_MODE_P2P = NONE = 0
# multi-point
TUNNEL_API_MODE_MP = 1
-class IPsecUtil:
- """IPsec utilities."""
-
- @staticmethod
- def policy_action_bypass() -> PolicyAction:
- """Return policy action bypass.
-
- :returns: PolicyAction enum BYPASS object.
- :rtype: PolicyAction
- """
- return PolicyAction.BYPASS
-
- @staticmethod
- def policy_action_discard() -> PolicyAction:
- """Return policy action discard.
-
- :returns: PolicyAction enum DISCARD object.
- :rtype: PolicyAction
- """
- return PolicyAction.DISCARD
-
- @staticmethod
- def policy_action_protect() -> PolicyAction:
- """Return policy action protect.
-
- :returns: PolicyAction enum PROTECT object.
- :rtype: PolicyAction
- """
- return PolicyAction.PROTECT
+# Derived types for type hints, based on capabilities of get_enum_instance.
+IpsecSpdAction.InputType = Union[IpsecSpdAction, str, None]
+CryptoAlg.InputType = Union[CryptoAlg, str, None]
+IntegAlg.InputType = Union[IntegAlg, str, None]
+IPsecProto.InputType = Union[IPsecProto, str, int, None]
+# TODO: Introduce a metaclass that adds .find and .InputType automatically?
- @staticmethod
- def crypto_alg_aes_cbc_128() -> CryptoAlg:
- """Return encryption algorithm aes-cbc-128.
- :returns: CryptoAlg enum AES_CBC_128 object.
- :rtype: CryptoAlg
- """
- return CryptoAlg.AES_CBC_128
-
- @staticmethod
- def crypto_alg_aes_cbc_256() -> CryptoAlg:
- """Return encryption algorithm aes-cbc-256.
-
- :returns: CryptoAlg enum AES_CBC_256 object.
- :rtype: CryptoAlg
- """
- return CryptoAlg.AES_CBC_256
-
- @staticmethod
- def crypto_alg_aes_gcm_128() -> CryptoAlg:
- """Return encryption algorithm aes-gcm-128.
-
- :returns: CryptoAlg enum AES_GCM_128 object.
- :rtype: CryptoAlg
- """
- return CryptoAlg.AES_GCM_128
-
- @staticmethod
- def crypto_alg_aes_gcm_256() -> CryptoAlg:
- """Return encryption algorithm aes-gcm-256.
+class IPsecUtil:
+ """IPsec utilities."""
- :returns: CryptoAlg enum AES_GCM_128 object.
- :rtype: CryptoAlg
- """
- return CryptoAlg.AES_GCM_256
+ # The following 4 methods are Python one-liners,
+ # but they are useful when called as a Robot keyword.
@staticmethod
- def get_crypto_alg_key_len(crypto_alg: CryptoAlg) -> int:
+ def get_crypto_alg_key_len(crypto_alg: CryptoAlg.InputType) -> int:
"""Return encryption algorithm key length.
+ This is a Python one-liner, but useful when called as a Robot keyword.
+
:param crypto_alg: Encryption algorithm.
- :type crypto_alg: CryptoAlg
+ :type crypto_alg: CryptoAlg.InputType
:returns: Key length.
:rtype: int
"""
- return crypto_alg.key_len
+ return get_enum_instance(CryptoAlg, crypto_alg).key_len
@staticmethod
- def get_crypto_alg_scapy_name(crypto_alg: CryptoAlg) -> str:
+ def get_crypto_alg_scapy_name(crypto_alg: CryptoAlg.InputType) -> str:
"""Return encryption algorithm scapy name.
+ This is a Python one-liner, but useful when called as a Robot keyword.
+
:param crypto_alg: Encryption algorithm.
- :type crypto_alg: CryptoAlg
+ :type crypto_alg: CryptoAlg.InputType
:returns: Algorithm scapy name.
:rtype: str
"""
- return crypto_alg.scapy_name
-
- @staticmethod
- def integ_alg_sha_256_128() -> IntegAlg:
- """Return integrity algorithm SHA-256-128.
-
- :returns: IntegAlg enum SHA_256_128 object.
- :rtype: IntegAlg
- """
- return IntegAlg.SHA_256_128
+ return get_enum_instance(CryptoAlg, crypto_alg).scapy_name
+ # The below to keywords differ only by enum type conversion from str.
@staticmethod
- def integ_alg_sha_512_256() -> IntegAlg:
- """Return integrity algorithm SHA-512-256.
-
- :returns: IntegAlg enum SHA_512_256 object.
- :rtype: IntegAlg
- """
- return IntegAlg.SHA_512_256
-
- @staticmethod
- def get_integ_alg_key_len(integ_alg: Optional[IntegAlg]) -> int:
+ def get_integ_alg_key_len(integ_alg: IntegAlg.InputType) -> int:
"""Return integrity algorithm key length.
- None argument is accepted, returning zero.
-
:param integ_alg: Integrity algorithm.
- :type integ_alg: Optional[IntegAlg]
+ :type integ_alg: IntegAlg.InputType
:returns: Key length.
:rtype: int
"""
- return 0 if integ_alg is None else integ_alg.key_len
+ return get_enum_instance(IntegAlg, integ_alg).key_len
@staticmethod
- def get_integ_alg_scapy_name(integ_alg: Optional[IntegAlg]) -> str:
+ def get_integ_alg_scapy_name(integ_alg: IntegAlg.InputType) -> str:
"""Return integrity algorithm scapy name.
:param integ_alg: Integrity algorithm.
- :type integ_alg: IntegAlg
+ :type integ_alg: IntegAlg.InputType
:returns: Algorithm scapy name.
:rtype: str
"""
- return integ_alg.scapy_name
-
- @staticmethod
- def ipsec_proto_esp() -> int:
- """Return IPSec protocol ESP.
-
- :returns: IPsecProto enum ESP object.
- :rtype: IPsecProto
- """
- return int(IPsecProto.IPSEC_API_PROTO_ESP)
-
- @staticmethod
- def ipsec_proto_ah() -> int:
- """Return IPSec protocol AH.
-
- :returns: IPsecProto enum AH object.
- :rtype: IPsecProto
- """
- return int(IPsecProto.IPSEC_API_PROTO_AH)
+ return get_enum_instance(IntegAlg, integ_alg).scapy_name
@staticmethod
def vpp_ipsec_select_backend(
- node: dict, protocol: int, index: int = 1
+ node: dict, proto: IPsecProto.InputType, index: int = 1
) -> None:
"""Select IPsec backend.
:param node: VPP node to select IPsec backend on.
- :param protocol: IPsec protocol.
+ :param proto: IPsec protocol.
:param index: Backend index.
:type node: dict
- :type protocol: IPsecProto
+ :type proto: IPsecProto.InputType
:type index: int
:raises RuntimeError: If failed to select IPsec backend or if no API
reply received.
"""
+ proto = get_enum_instance(IPsecProto, proto)
cmd = "ipsec_select_backend"
err_msg = f"Failed to select IPsec backend on host {node['host']}"
- args = dict(protocol=protocol, index=index)
+ args = dict(protocol=proto, index=index)
with PapiSocketExecutor(node) as papi_exec:
papi_exec.add(cmd, **args).get_reply(err_msg)
node: dict,
sad_id: int,
spi: int,
- crypto_alg: CryptoAlg,
- crypto_key: str,
- integ_alg: Optional[IntegAlg] = None,
+ crypto_alg: CryptoAlg.InputType = None,
+ crypto_key: str = "",
+ integ_alg: IntegAlg.InputType = None,
integ_key: str = "",
tunnel_src: Optional[str] = None,
tunnel_dst: Optional[str] = None,
:type node: dict
:type sad_id: int
:type spi: int
- :type crypto_alg: CryptoAlg
+ :type crypto_alg: CryptoAlg.InputType
:type crypto_key: str
- :type integ_alg: Optional[IntegAlg]
+ :type integ_alg: IntegAlg.InputType
:type integ_key: str
:type tunnel_src: Optional[str]
:type tunnel_dst: Optional[str]
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
if isinstance(crypto_key, str):
crypto_key = crypto_key.encode(encoding="utf-8")
if isinstance(integ_key, str):
spi=int(spi),
crypto_algorithm=crypto_alg.alg_int_repr,
crypto_key=ckey,
- integrity_algorithm=integ_alg.alg_int_repr if integ_alg else 0,
+ integrity_algorithm=integ_alg.alg_int_repr,
integrity_key=ikey,
flags=flags,
tunnel=dict(
),
dscp=int(IpDscp.IP_API_DSCP_CS0),
),
- protocol=int(IPsecProto.IPSEC_API_PROTO_ESP),
+ protocol=IPsecProto.ESP,
udp_src_port=IPSEC_UDP_PORT_DEFAULT,
udp_dst_port=IPSEC_UDP_PORT_DEFAULT,
anti_replay_window_size=IPSEC_REPLAY_WINDOW_DEFAULT,
n_entries: int,
sad_id: int,
spi: int,
- crypto_alg: CryptoAlg,
- crypto_key: str,
- integ_alg: Optional[IntegAlg] = None,
+ crypto_alg: CryptoAlg.InputType = None,
+ crypto_key: str = "",
+ integ_alg: IntegAlg.InputType = None,
integ_key: str = "",
tunnel_src: Optional[str] = None,
tunnel_dst: Optional[str] = None,
:type n_entries: int
:type sad_id: int
:type spi: int
- :type crypto_alg: CryptoAlg
+ :type crypto_alg: CryptoAlg.InputType
:type crypto_key: str
- :type integ_alg: Optional[IntegAlg]
+ :type integ_alg: IntegAlg.InputType
:type integ_key: str
:type tunnel_src: Optional[str]
:type tunnel_dst: Optional[str]
:type tunnel_addr_incr: bool
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
if isinstance(crypto_key, str):
crypto_key = crypto_key.encode(encoding="utf-8")
if isinstance(integ_key, str):
spi=int(spi),
crypto_algorithm=crypto_alg.alg_int_repr,
crypto_key=ckey,
- integrity_algorithm=integ_alg.alg_int_repr if integ_alg else 0,
+ integrity_algorithm=integ_alg.alg_int_repr,
integrity_key=ikey,
flags=flags,
tunnel=dict(
),
dscp=int(IpDscp.IP_API_DSCP_CS0),
),
- protocol=int(IPsecProto.IPSEC_API_PROTO_ESP),
+ protocol=IPsecProto.ESP,
udp_src_port=IPSEC_UDP_PORT_DEFAULT,
udp_dst_port=IPSEC_UDP_PORT_DEFAULT,
anti_replay_window_size=IPSEC_REPLAY_WINDOW_DEFAULT,
entry_amount: int,
local_addr_range: Union[str, IPv4Address, IPv6Address],
remote_addr_range: Union[str, IPv4Address, IPv6Address],
- action: PolicyAction = PolicyAction.BYPASS,
+ action: IpsecSpdAction.InputType = IpsecSpdAction.BYPASS,
inbound: bool = False,
bidirectional: bool = True,
) -> None:
:param remote_addr_range: Matching remote address range in
direction 1 in format IP/prefix or IP/mask. If no mask is
provided, it's considered to be /32.
- :param action: Policy action.
+ :param action: IPsec SPD action.
:param inbound: If True policy is for inbound traffic, otherwise
outbound.
:param bidirectional: When True, will create SPDs in both directions
Union[str, IPv4Address, IPv6Address]
:type remote_addr_range:
Union[str, IPv4Address, IPv6Address]
- :type action: PolicyAction
+ :type action: IpsecSpdAction.InputType
:type inbound: bool
:type bidirectional: bool
- :raises NotImplementedError: When the action is PolicyAction.PROTECT.
+ :raises NotImplementedError: When the action is IpsecSpdAction.PROTECT.
"""
-
- if action == PolicyAction.PROTECT:
- raise NotImplementedError("Policy action PROTECT is not supported.")
+ action = get_enum_instance(IpsecSpdAction, action)
+ if action == IpsecSpdAction.PROTECT:
+ raise NotImplementedError(
+ "IPsec SPD action PROTECT is not supported."
+ )
spd_id_dir1 = 1
spd_id_dir2 = 2
executor: PapiSocketExecutor,
spd_id: int,
priority: int,
- action: PolicyAction,
+ action: IpsecSpdAction.InputType,
inbound: bool = True,
sa_id: Optional[int] = None,
- proto: Optional[int] = None,
+ proto: IPsecProto.InputType = None,
laddr_range: Optional[str] = None,
raddr_range: Optional[str] = None,
lport_range: Optional[str] = None,
:param executor: Open PAPI executor (async handling) to add commands to.
:param spd_id: SPD ID to add entry on.
:param priority: SPD entry priority, higher number = higher priority.
- :param action: Policy action.
+ :param action: IPsec SPD action.
:param inbound: If True policy is for inbound traffic, otherwise
outbound.
- :param sa_id: SAD entry ID for action PolicyAction.PROTECT.
+ :param sa_id: SAD entry ID for action IpsecSpdAction.PROTECT.
:param proto: Policy selector next layer protocol number.
:param laddr_range: Policy selector local IPv4 or IPv6 address range
in format IP/prefix or IP/mask. If no mask is provided,
:type executor: PapiSocketExecutor
:type spd_id: int
:type priority: int
- :type action: PolicyAction
+ :type action: IpsecSpdAction.InputType
:type inbound: bool
:type sa_id: Optional[int]
- :type proto: Optional[int]
+ :type proto: IPsecProto.InputType
:type laddr_range: Optional[str]
:type raddr_range: Optional[str]
:type lport_range: Optional[str]
:type rport_range: Optional[str]
:type is_ipv6: bool
"""
+ action = get_enum_instance(IpsecSpdAction, action)
+ proto = get_enum_instance(IPsecProto, proto)
if laddr_range is None:
laddr_range = "::/0" if is_ipv6 else "0.0.0.0/0"
is_outbound=not inbound,
sa_id=int(sa_id) if sa_id else 0,
policy=int(action),
- protocol=255 if proto is None else int(proto),
+ protocol=proto,
remote_address_start=IPAddress.create_ip_address_object(
remote_net.network_address
),
node: dict,
spd_id: int,
priority: int,
- action: PolicyAction,
+ action: IpsecSpdAction.InputType,
inbound: bool = True,
sa_id: Optional[int] = None,
- proto: Optional[int] = None,
+ proto: IPsecProto.InputType = None,
laddr_range: Optional[str] = None,
raddr_range: Optional[str] = None,
lport_range: Optional[str] = None,
:param node: VPP node to add SPD entry on.
:param spd_id: SPD ID to add entry on.
:param priority: SPD entry priority, higher number = higher priority.
- :param action: Policy action.
+ :param action: IPsec SPD action.
:param inbound: If True policy is for inbound traffic, otherwise
outbound.
- :param sa_id: SAD entry ID for action PolicyAction.PROTECT.
+ :param sa_id: SAD entry ID for action IpsecSpdAction.PROTECT.
:param proto: Policy selector next layer protocol number.
:param laddr_range: Policy selector local IPv4 or IPv6 address range
in format IP/prefix or IP/mask. If no mask is provided,
:type node: dict
:type spd_id: int
:type priority: int
- :type action: PolicyAction
+ :type action: IpsecSpdAction.InputType
:type inbound: bool
:type sa_id: Optional[int]
- :type proto: Optional[int]
+ :type proto: IPsecProto.InputType
:type laddr_range: Optional[str]
:type raddr_range: Optional[str]
:type lport_range: Optional[str]
:type rport_range: Optional[str]
:type is_ipv6: bool
"""
+ action = get_enum_instance(IpsecSpdAction, action)
+ proto = get_enum_instance(IPsecProto, proto)
err_msg = (
"Failed to add entry to Security Policy Database"
f" {spd_id} on host {node['host']}"
n_entries: int,
spd_id: int,
priority: Optional[ObjIncrement],
- action: PolicyAction,
+ action: IpsecSpdAction.InputType,
inbound: bool,
sa_id: Optional[ObjIncrement] = None,
- proto: Optional[int] = None,
+ proto: IPsecProto.InputType = None,
laddr_range: Optional[NetworkIncrement] = None,
raddr_range: Optional[NetworkIncrement] = None,
lport_range: Optional[str] = None,
:param n_entries: Number of SPD entries to be added.
:param spd_id: SPD ID to add entries on.
:param priority: SPD entries priority, higher number = higher priority.
- :param action: Policy action.
+ :param action: IPsec SPD action.
:param inbound: If True policy is for inbound traffic, otherwise
outbound.
- :param sa_id: SAD entry ID for action PolicyAction.PROTECT.
+ :param sa_id: SAD entry ID for action IpsecSpdAction.PROTECT.
:param proto: Policy selector next layer protocol number.
:param laddr_range: Policy selector local IPv4 or IPv6 address range
in format IP/prefix or IP/mask. If no mask is provided,
:type n_entries: int
:type spd_id: int
:type priority: Optional[ObjIncrement]
- :type action: PolicyAction
+ :type action: IpsecSpdAction.InputType
:type inbound: bool
:type sa_id: Optional[ObjIncrement]
- :type proto: Optional[int]
+ :type proto: IPsecProto.InputType
:type laddr_range: Optional[NetworkIncrement]
:type raddr_range: Optional[NetworkIncrement]
:type lport_range: Optional[str]
:type rport_range: Optional[str]
:type is_ipv6: bool
"""
+ action = get_enum_instance(IpsecSpdAction, action)
+ proto = get_enum_instance(IPsecProto, proto)
if laddr_range is None:
laddr_range = "::/0" if is_ipv6 else "0.0.0.0/0"
laddr_range = NetworkIncrement(ip_network(laddr_range), 0)
if1_key: str,
if2_key: str,
n_tunnels: int,
- crypto_alg: CryptoAlg,
- integ_alg: Optional[IntegAlg],
+ crypto_alg: CryptoAlg.InputType,
+ integ_alg: IntegAlg.InputType,
raddr_ip2: Union[IPv4Address, IPv6Address],
addr_incr: int,
spi_d: dict,
:type if1_key: str
:type if2_key: str
:type n_tunnels: int
- :type crypto_alg: CryptoAlg
- :type integ_alg: Optional[IntegAlg]
+ :type crypto_alg: CryptoAlg.InputType
+ :type integ_alg: IntegAlg.InputType
:type raddr_ip2: Union[IPv4Address, IPv6Address]
:type addr_incr: int
:type spi_d: dict
:returns: Generated ckeys and ikeys.
:rtype: List[bytes], List[bytes]
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
if not existing_tunnels:
loop_sw_if_idx = IPsecUtil._ipsec_create_loopback_dut1_papi(
nodes, tun_ips, if1_key, if2_key
sad_entry = dict(
sad_id=None,
spi=None,
- protocol=int(IPsecProto.IPSEC_API_PROTO_ESP),
+ protocol=IPsecProto.ESP,
crypto_algorithm=crypto_alg.alg_int_repr,
crypto_key=c_key,
- integrity_algorithm=integ_alg.alg_int_repr if integ_alg else 0,
+ integrity_algorithm=integ_alg.alg_int_repr,
integrity_key=i_key,
flags=common_flags,
tunnel=dict(
)
args = dict(entry=sad_entry)
for i in range(existing_tunnels, n_tunnels):
- ckeys.append(
- gen_key(IPsecUtil.get_crypto_alg_key_len(crypto_alg))
- )
- ikeys.append(
- gen_key(IPsecUtil.get_integ_alg_key_len(integ_alg))
- )
+ ckeys.append(gen_key(crypto_alg.key_len))
+ ikeys.append(gen_key(integ_alg.key_len))
# SAD entry for outband / tx path
sad_entry["sad_id"] = i
sad_entry["spi"] = spi_d["spi_1"] + i
tun_ips: dict,
if2_key: str,
n_tunnels: int,
- crypto_alg: CryptoAlg,
+ crypto_alg: CryptoAlg.InputType,
ckeys: Sequence[bytes],
- integ_alg: Optional[IntegAlg],
+ integ_alg: IntegAlg.InputType,
ikeys: Sequence[bytes],
raddr_ip1: Union[IPv4Address, IPv6Address],
addr_incr: int,
:type tun_ips: dict
:type if2_key: str
:type n_tunnels: int
- :type crypto_alg: CryptoAlg
+ :type crypto_alg: CryptoAlg.InputType
:type ckeys: Sequence[bytes]
- :type integ_alg: Optional[IntegAlg]
+ :type integ_alg: IntegAlg.InputType
:type ikeys: Sequence[bytes]
:type raddr_ip1: Union[IPv4Address, IPv6Address]
:type addr_incr: int
:type spi_d: dict
:type existing_tunnels: int
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
with PapiSocketExecutor(nodes["DUT2"], is_async=True) as papi_exec:
if not existing_tunnels:
# Set IP address on VPP node 2 interface
sad_entry = dict(
sad_id=None,
spi=None,
- protocol=int(IPsecProto.IPSEC_API_PROTO_ESP),
+ protocol=IPsecProto.ESP,
crypto_algorithm=crypto_alg.alg_int_repr,
crypto_key=c_key,
- integrity_algorithm=integ_alg.alg_int_repr if integ_alg else 0,
+ integrity_algorithm=integ_alg.alg_int_repr,
integrity_key=i_key,
flags=common_flags,
tunnel=dict(
)
args = dict(entry=sad_entry)
for i in range(existing_tunnels, n_tunnels):
- ckeys.append(
- gen_key(IPsecUtil.get_crypto_alg_key_len(crypto_alg))
- )
- ikeys.append(
- gen_key(IPsecUtil.get_integ_alg_key_len(integ_alg))
- )
+ ckeys.append(gen_key(crypto_alg.key_len))
+ ikeys.append(gen_key(integ_alg.key_len))
# SAD entry for outband / tx path
sad_entry["sad_id"] = 100000 + i
sad_entry["spi"] = spi_d["spi_2"] + i
if1_key: str,
if2_key: str,
n_tunnels: int,
- crypto_alg: CryptoAlg,
- integ_alg: Optional[IntegAlg],
+ crypto_alg: CryptoAlg.InputType,
+ integ_alg: IntegAlg.InputType,
raddr_ip1: str,
raddr_ip2: str,
raddr_range: int,
:type if1_key: str
:type if2_key: str
:type n_tunnels: int
- :type crypto_alg: CryptoAlg
- :type integ_alg: Optional[IntegAlg]
+ :type crypto_alg: CryptoAlg.InputType
+ :type integ_alg: IntegAlg.InputType
:type raddr_ip1: str
:type raddr_ip2: str
:type raddr_range: int
:returns: Ckeys, ikeys, spi_1, spi_2.
:rtype: Optional[Tuple[List[bytes], List[bytes], int, int]]
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
n_tunnels = int(n_tunnels)
existing_tunnels = int(existing_tunnels)
spi_d = dict(spi_1=100000, spi_2=200000)
return ckeys, ikeys, spi_d["spi_1"], spi_d["spi_2"]
return None
+ @staticmethod
+ def _create_ipsec_script_files(
+ dut: str, instances: int
+ ) -> List[TextIOWrapper]:
+ """Create script files for configuring IPsec in containers
+
+ :param dut: DUT node on which to create the script files
+ :param instances: number of containers on DUT node
+ :type dut: str
+ :type instances: int
+ :returns: Created opened file handles.
+ :rtype: List[TextIOWrapper]
+ """
+ scripts = []
+ for cnf in range(0, instances):
+ script_filename = (
+ f"/tmp/ipsec_create_tunnel_cnf_{dut}_{cnf + 1}.config"
+ )
+ scripts.append(open(script_filename, "w", encoding="utf-8"))
+ return scripts
+
+ @staticmethod
+ def _close_and_copy_ipsec_script_files(
+ dut: str, nodes: dict, instances: int, scripts: Sequence[TextIOWrapper]
+ ) -> None:
+ """Close created scripts and copy them to containers
+
+ :param dut: DUT node on which to create the script files
+ :param nodes: VPP nodes
+ :param instances: number of containers on DUT node
+ :param scripts: dictionary holding the script files
+ :type dut: str
+ :type nodes: dict
+ :type instances: int
+ :type scripts: dict
+ """
+ for cnf in range(0, instances):
+ scripts[cnf].close()
+ script_filename = (
+ f"/tmp/ipsec_create_tunnel_cnf_{dut}_{cnf + 1}.config"
+ )
+ scp_node(nodes[dut], script_filename, script_filename)
+
@staticmethod
def vpp_ipsec_add_multiple_tunnels(
nodes: dict,
interface1: Union[str, int],
interface2: Union[str, int],
n_tunnels: int,
- crypto_alg: CryptoAlg,
- integ_alg: Optional[IntegAlg],
+ crypto_alg: CryptoAlg.InputType,
+ integ_alg: IntegAlg.InputType,
tunnel_ip1: str,
tunnel_ip2: str,
raddr_ip1: str,
:type interface1: Union[str, int]
:type interface2: Union[str, int]
:type n_tunnels: int
- :type crypto_alg: CryptoAlg
- :type integ_alg: Optional[IntegAlg]
+ :type crypto_alg: CryptoAlg.InputType
+ :type integ_alg: IntegAlg.InputType
:type tunnel_ip1: str
:type tunnel_ip2: str
:type raddr_ip1: str
:type raddr_range: int
:type tunnel_addr_incr: bool
"""
+ crypto_alg = get_enum_instance(CryptoAlg, crypto_alg)
+ integ_alg = get_enum_instance(IntegAlg, integ_alg)
+
spd_id = 1
p_hi = 100
p_lo = 10
spi_1 = 300000
spi_2 = 400000
- crypto_key = gen_key(
- IPsecUtil.get_crypto_alg_key_len(crypto_alg)
- ).decode()
- integ_key = (
- gen_key(IPsecUtil.get_integ_alg_key_len(integ_alg)).decode()
- if integ_alg
- else ""
- )
-
+ crypto_key = gen_key(crypto_alg.key_len).decode()
+ integ_key = gen_key(integ_alg.key_len).decode()
rmac = (
Topology.get_interface_mac(nodes["DUT2"], interface2)
if "DUT2" in nodes.keys()
nodes["DUT1"],
spd_id,
p_hi,
- PolicyAction.BYPASS,
+ IpsecSpdAction.BYPASS,
inbound=False,
- proto=50,
+ proto=IPsecProto.ESP,
laddr_range=dut1_local_outbound_range,
raddr_range=dut1_remote_outbound_range,
)
nodes["DUT1"],
spd_id,
p_hi,
- PolicyAction.BYPASS,
+ IpsecSpdAction.BYPASS,
inbound=True,
- proto=50,
+ proto=IPsecProto.ESP,
laddr_range=dut1_remote_outbound_range,
raddr_range=dut1_local_outbound_range,
)
n_tunnels,
spd_id,
priority=ObjIncrement(p_lo, 0),
- action=PolicyAction.PROTECT,
+ action=IpsecSpdAction.PROTECT,
inbound=False,
sa_id=ObjIncrement(sa_id_1, 1),
raddr_range=NetworkIncrement(ip_network(raddr_ip2)),
n_tunnels,
spd_id,
priority=ObjIncrement(p_lo, 0),
- action=PolicyAction.PROTECT,
+ action=IpsecSpdAction.PROTECT,
inbound=True,
sa_id=ObjIncrement(sa_id_2, 1),
raddr_range=NetworkIncrement(ip_network(raddr_ip1)),
nodes["DUT2"],
spd_id,
p_hi,
- PolicyAction.BYPASS,
+ IpsecSpdAction.BYPASS,
inbound=False,
- proto=50,
+ proto=IPsecProto.ESP,
laddr_range=dut2_remote_outbound_range,
raddr_range=dut2_local_outbound_range,
)
nodes["DUT2"],
spd_id,
p_hi,
- PolicyAction.BYPASS,
+ IpsecSpdAction.BYPASS,
inbound=True,
- proto=50,
+ proto=IPsecProto.ESP,
laddr_range=dut2_local_outbound_range,
raddr_range=dut2_remote_outbound_range,
)
n_tunnels,
spd_id,
priority=ObjIncrement(p_lo, 0),
- action=PolicyAction.PROTECT,
+ action=IpsecSpdAction.PROTECT,
inbound=True,
sa_id=ObjIncrement(sa_id_1, 1),
raddr_range=NetworkIncrement(ip_network(raddr_ip2)),
n_tunnels,
spd_id,
priority=ObjIncrement(p_lo, 0),
- action=PolicyAction.PROTECT,
+ action=IpsecSpdAction.PROTECT,
inbound=False,
sa_id=ObjIncrement(sa_id_2, 1),
raddr_range=NetworkIncrement(ip_network(raddr_ip1)),
@staticmethod
def vpp_ipsec_flow_enable_rss(
- node: dict, proto: str, rss_type: str, function: str = "default"
+ node: dict,
+ proto: str = "IPSEC_ESP",
+ rss_type: str = "esp",
+ function: str = "default",
) -> int:
"""Ipsec flow enable rss action.
:param proto: The flow protocol.
:param rss_type: RSS type.
:param function: RSS function.
-
:type node: dict
- :type proto: str
+ :type proto: IPsecProto.InputType
:type rss_type: str
:type function: str
:returns: flow_index.
:rtype: int
"""
+ # The proto argument does not correspond to IPsecProto.
+ # The allowed values come from src/vnet/ip/protocols.def
+ # and we do not have a good enum for that yet.
+ # FlowUti. and FlowUtil. are close but not exactly the same.
+
# TODO: to be fixed to use full PAPI when it is ready in VPP
cmd = (
f"test flow add src-ip any proto {proto} rss function"
--- /dev/null
+# Copyright (c) 2024 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""Utility functions for handling VPP API enum values from Robot."""
+
+
+from enum import Enum, IntEnum
+from typing import Type, Union
+
+
+# The return type is enum_class, but it is hard to explain that to pylint.
+def get_enum_instance(
+ enum_class: Type[Enum], value: Union[Enum, str, int, None]
+) -> Enum:
+ """Return an enum instance matching the string name.
+
+ In Robot, it is not convenient to construct Enum instances,
+ most values defined in Robot are strings.
+
+ This helper function can be used in Python L1 keywords
+ to convert string into the corresponding Enum instance.
+ Aliases are also recognized.
+
+ As an added benefit, support various Robot-like niceties,
+ like lower case, or dash or space instead of underscore.
+
+ As a common shortcut, value is returned it it already is an instance.
+
+ Another convenience: None or empty string is processed as "NONE".
+
+ If the class is a subclass of IntEnum, int values
+ and (string) values convertable to int are also accepted as input.
+
+ :param enum_class: Class object instance of which should be returned.
+ :param value: String or any other recognized form of an enum instance.
+ :type enum_class: Type[Enum]
+ :type value: Union[enum_class, str, int, None]
+ :returns: The matching instance, if found.
+ :rtype: enum_class
+ :raises: ValueError if no matching instance is found.
+ """
+ if issubclass(enum_class, IntEnum):
+ try:
+ int_value = int(value)
+ return enum_class(int_value)
+ except (TypeError, ValueError):
+ pass
+ if isinstance(value, enum_class):
+ return value
+ if not value:
+ value = "NONE"
+ normalized_name = str(value).upper().replace("-", "_").replace(" ", "_")
+ members = enum_class.__members__ # Includes aliases, useful for NONE.
+ if normalized_name not in members:
+ msg = f"Enum class {enum_class} does not have value {normalized_name!r}"
+ raise ValueError(msg)
+ return members[normalized_name]
-# Copyright (c) 2023 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| | ... | ${r_tunnel} | ${l_tunnel}
| | VPP IPsec Add SPD | ${node} | ${spd_id}
| | VPP IPsec SPD Add If | ${node} | ${spd_id} | ${interface}
-| | ${action}= | Policy Action Bypass
-| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_hi} | ${action}
-| | ... | inbound=${TRUE} | proto=${ESP_PROTO} | is_ipv6=${is_ipv6}
+| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_hi} | BYPASS
+| | ... | inbound=${TRUE} | proto=ESP | is_ipv6=${is_ipv6}
| | ... | laddr_range=${tg_tun_ip} | raddr_range=${dut_tun_ip}
-| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_hi} | ${action}
-| | ... | inbound=${FALSE} | proto=${ESP_PROTO} | is_ipv6=${is_ipv6}
+| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_hi} | BYPASS
+| | ... | inbound=${FALSE} | proto=ESP | is_ipv6=${is_ipv6}
| | ... | laddr_range=${dut_tun_ip} | raddr_range=${tg_tun_ip}
-| | ${action}= | Policy Action Protect
-| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_lo} | ${action}
+| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_lo} | PROTECT
| | ... | sa_id=${r_sa_id} | laddr_range=${l_ip}
| | ... | raddr_range=${r_ip} | inbound=${TRUE}
-| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_lo} | ${action}
+| | VPP IPsec Add SPD Entry | ${node} | ${spd_id} | ${p_lo} | PROTECT
| | ... | sa_id=${l_sa_id} | laddr_range=${l_ip}
| | ... | raddr_range=${r_ip} | inbound=${FALSE}
| | | ... | ${dut}.Add DPDK Dev Default Tso
| | | Run keyword If | '${nic_driver}' == 'vfio-pci'
| | | ... | ${dut}.Add DPDK Enable Tcp Udp Checksum
-| | | Run keyword | ${dut}.Add Api Trace
| | END
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES CBC 128
-| | ${auth_alg} = | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES CBC 128
-| | ${auth_alg} = | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${overhead}= | ${54}
| ${tg_spi}= | ${1000}
| ${dut_spi}= | ${1001}
-| ${ESP_PROTO}= | ${50}
| ${tg_if1_ip4}= | 192.168.100.2
| ${tg_if2_ip4}= | 192.168.4.4
| ${dut_if1_ip4}= | 192.168.100.3
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${overhead}= | ${54}
| ${tg_spi}= | ${1000}
| ${dut_spi}= | ${1001}
-| ${ESP_PROTO}= | ${50}
| ${tg_if1_ip4}= | 192.168.100.2
| ${tg_if2_ip4}= | 192.168.4.4
| ${dut_if1_ip4}= | 192.168.100.3
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${overhead}= | ${54}
| ${tg_spi}= | ${1000}
| ${dut_spi}= | ${1001}
-| ${ESP_PROTO}= | ${50}
| ${tg_if1_ip6}= | 3ffe:5f::1
| ${tg_if2_ip6}= | 3ffe:60::4
| ${dut_if1_ip6}= | 3ffe:5f::2
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
-# Copyright (c) 2022 Cisco and/or its affiliates.
+# Copyright (c) 2024 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${overhead}= | ${58}
| ${tg_spi}= | ${1000}
| ${dut_spi}= | ${1001}
-| ${ESP_PROTO}= | ${50}
| ${tg_if1_ip6}= | 3ffe:5f::1
| ${tg_if2_ip6}= | 3ffe:60::4
| ${dut_if1_ip6}= | 3ffe:5f::2
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| | When Initialize layer driver | ${nic_driver}
| | And Initialize layer interface
| | And Initialize IPSec in 3-node circular topology
-| | ${flow_index} = | And VPP Ipsec Flow Enable Rss
-| | ... | ${dut1} | IPSEC_ESP | esp | default
+| | ${flow_index} = | And VPP Ipsec Flow Enable Rss | ${dut1}
| | And VPP Flow Enable | ${dut1} | ${DUT1_${int}2}[0] | ${flow_index}
-| | ${flow_index} = | And VPP Ipsec Flow Enable Rss
-| | ... | ${dut2} | IPSEC_ESP | esp | default
+| | ${flow_index} = | And VPP Ipsec Flow Enable Rss | ${dut2}
| | And VPP Flow Enable | ${dut2} | ${DUT2_${int}1}[0] | ${flow_index}
| | And VPP IPsec Add Multiple Tunnels
| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels}
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | HW_DH895xcc
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| | ${ipsec_proto}= | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 128
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_native_plugin.so
| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg} = | Crypto Alg AES GCM 256
-| | ${auth_alg} = | Set Variable | ${NONE}
-| | ${ipsec_proto} = | IPsec Proto ESP
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES CBC 128
+| ${auth_alg}= | SHA 512 256
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES CBC 128
-| | ${auth_alg}= | Integ Alg SHA 512 256
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 128
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 128
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}
| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so
| ... | crypto_openssl_plugin.so
| ${crypto_type}= | ${None}
+| ${encr_alg}= | AES GCM 256
+| ${auth_alg}= | NONE
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| |
| | Set Test Variable | \${frame_size}
| |
-| | # These are enums (not strings) so they cannot be in Variables table.
-| | ${encr_alg}= | Crypto Alg AES GCM 256
-| | ${auth_alg}= | Set Variable | ${NONE}
-| |
| | Given Set Max Rate And Jumbo
| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq}
| | And Pre-initialize layer driver | ${nic_driver}