diff options
author | 2023-10-26 08:13:17 +0200 | |
---|---|---|
committer | 2023-10-26 08:13:17 +0200 | |
commit | 60a7ae0dc76a1dfe6ded559740c9d9037879a833 (patch) | |
tree | 2021484b36e63b699ac98d0057fee73d20026b7f /GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py | |
parent | 039a8a325bc24cd8d7c5770d88a20ce517197fe9 (diff) |
feat(trex): cleanup t-rex profiles
Signed-off-by: pmikus <peter.mikus@protonmail.ch>
Change-Id: Ib93dc1552945fe91ab5346b9b759d56c7468debf
Diffstat (limited to 'GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py')
-rw-r--r-- | GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py | 199 |
1 files changed, 0 insertions, 199 deletions
diff --git a/GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py b/GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py deleted file mode 100644 index 6ba4c34340..0000000000 --- a/GPL/traffic_profiles/trex/trex-stl-2n-ethip4udp-10u1000p-conc.py +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright (c) 2021 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 / UDP - - Direction 0 --> 1: - - Source IP address range: 10.10.10.2 - 10.10.10.11 - - Destination IP address range: 20.20.20.2 - 20.20.20.11 - - Source UDP port range: 1001 - 2000 - - Destination UDP port range: 2001 - 3000 - - Direction 1 --> 0: - - Source IP address range: 20.20.20.2 - 20.20.20.11 - - Destination IP address range: 10.10.10.2 - 10.10.10.11 - - Source UDP port range: 2001 - 3000 - - Destination UDP port range: 1001 - 2000 -""" - -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.10.10.2" - self.p1_src_end_ip = u"10.10.10.11" - self.p1_dst_start_ip = u"20.20.20.2" - self.p1_dst_end_ip = u"20.20.20.11" - - self.p2_src_start_ip = u"20.20.20.2" - self.p2_src_end_ip = u"20.20.20.11" - self.p2_dst_start_ip = u"10.10.10.2" - self.p2_dst_end_ip = u"10.10.10.11" - - # UDP ports used in packet headers. - self.p1_src_start_udp_port = 1001 - self.p1_src_end_udp_port = 2000 - self.p1_dst_start_udp_port = 2001 - self.p1_dst_end_udp_port = 3000 - - self.p2_src_start_udp_port = 2001 - self.p2_src_end_udp_port = 3000 - self.p2_dst_start_udp_port = 1001 - self.p2_dst_end_udp_port = 2000 - - def define_packets(self): - """Defines the packets to be sent from the traffic generator. - - Packet definition: | ETH | IP | UDP | - - :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=17 - ) / - UDP( - sport=self.p1_src_start_udp_port, - dport=self.p1_dst_start_udp_port - ) - ) - # Direction 1 --> 0 - base_pkt_b = ( - Ether() / - IP( - src=self.p2_src_start_ip, - dst=self.p2_dst_start_ip, - proto=17 - ) / - UDP( - sport=self.p2_src_start_udp_port, - dport=self.p2_dst_start_udp_port - ) - ) - - # Direction 0 --> 1 - vm1 = STLScVmRaw( - [ - STLVmTupleGen( - ip_min=self.p1_src_start_ip, - ip_max=self.p1_src_end_ip, - port_min=self.p1_src_start_udp_port, - port_max=self.p1_src_end_udp_port, - name=u"tuple1_src" - ), - STLVmTupleGen( - ip_min=self.p1_dst_start_ip, - ip_max=self.p1_dst_end_ip, - port_min=self.p1_dst_start_udp_port, - port_max=self.p1_dst_end_udp_port, - name=u"tuple1_dst" - ), - STLVmWrFlowVar( - fv_name=u"tuple1_src.ip", - pkt_offset=u"IP.src" - ), - STLVmWrFlowVar( - fv_name=u"tuple1_dst.ip", - pkt_offset=u"IP.dst" - ), - STLVmFixIpv4( - offset=u"IP" - ), - STLVmWrFlowVar( - fv_name=u"tuple1_src.port", - pkt_offset=u"UDP.sport" - ), - STLVmWrFlowVar( - fv_name=u"tuple1_dst.port", - pkt_offset=u"UDP.dport" - ) - ] - ) - # Direction 0 --> 1 - vm2 = STLScVmRaw( - [ - STLVmTupleGen( - ip_min=self.p2_src_start_ip, - ip_max=self.p2_src_end_ip, - port_min=self.p2_src_start_udp_port, - port_max=self.p2_src_end_udp_port, - name=u"tuple2_src" - ), - STLVmTupleGen( - ip_min=self.p2_dst_start_ip, - ip_max=self.p2_dst_end_ip, - port_min=self.p2_dst_start_udp_port, - port_max=self.p2_dst_end_udp_port, - name=u"tuple2_dst" - ), - STLVmWrFlowVar( - fv_name=u"tuple2_src.ip", - pkt_offset=u"IP.src" - ), - STLVmWrFlowVar( - fv_name=u"tuple2_dst.ip", - pkt_offset=u"IP.dst" - ), - STLVmFixIpv4( - offset=u"IP" - ), - STLVmWrFlowVar( - fv_name=u"tuple2_src.port", - pkt_offset=u"UDP.sport" - ), - STLVmWrFlowVar( - fv_name=u"tuple2_dst.port", - pkt_offset=u"UDP.dport" - ) - ] - ) - - 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() |