Change in osmo-gsm-tester[master]: iperf3: Support configuring data direction (dl vs ul)

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

pespin gerrit-no-reply at lists.osmocom.org
Tue Mar 3 09:21:27 UTC 2020


pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17315 )

Change subject: iperf3: Support configuring data direction (dl vs ul)
......................................................................

iperf3: Support configuring data direction (dl vs ul)

Change-Id: I6b5b740beac22015c952ce826c034031ad4c4465
---
M src/osmo_gsm_tester/iperf3.py
M suites/4g/iperf3.py
M suites/gprs/lib/testlib.py
3 files changed, 13 insertions(+), 7 deletions(-)

Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, approved



diff --git a/src/osmo_gsm_tester/iperf3.py b/src/osmo_gsm_tester/iperf3.py
index 1b13ffe..78dc140 100644
--- a/src/osmo_gsm_tester/iperf3.py
+++ b/src/osmo_gsm_tester/iperf3.py
@@ -154,17 +154,17 @@
         locally = not self._run_node or self._run_node.is_local()
         return locally
 
-    def prepare_test_proc(self, netns=None):
+    def prepare_test_proc(self, downlink=False, netns=None):
         self.log('Starting iperf3-client connecting to %s:%d' % (self.server.addr(), self.server.port()))
         self.log_copied = False
         self.run_dir = util.Dir(self.suite_run.get_test_run_dir().new_dir(self.name()))
         self.log_file = self.run_dir.new_file(IPerf3Client.LOGFILE)
         if self.runs_locally():
-            return self.prepare_test_proc_locally(netns)
+            return self.prepare_test_proc_locally(downlink, netns)
         else:
-            return self.prepare_test_proc_remotely(netns)
+            return self.prepare_test_proc_remotely(downlink, netns)
 
-    def prepare_test_proc_remotely(self, netns):
+    def prepare_test_proc_remotely(self, downlink, netns):
         self.rem_host = remote.RemoteHost(self.run_dir, self._run_node.ssh_user(), self._run_node.ssh_addr())
 
         remote_prefix_dir = util.Dir(IPerf3Client.REMOTE_DIR)
@@ -176,19 +176,25 @@
         popen_args = ('iperf3', '-c',  self.server.addr(),
                       '-p', str(self.server.port()), '-J',
                       '--logfile', self.remote_log_file)
+        if downlink:
+            popen_args += ('-R',)
+
         if netns:
             self.process = self.rem_host.RemoteNetNSProcess(self.name(), netns, popen_args, env={})
         else:
             self.process = self.rem_host.RemoteProcess(self.name(), popen_args, env={})
         return self.process
 
-    def prepare_test_proc_locally(self, netns):
+    def prepare_test_proc_locally(self, downlink, netns):
         pcap_recorder.PcapRecorder(self.suite_run, self.run_dir.new_dir('pcap'), None,
                                    'host %s and port not 22' % self.server.addr(), netns)
 
         popen_args = ('iperf3', '-c',  self.server.addr(),
                       '-p', str(self.server.port()), '-J',
                       '--logfile', os.path.abspath(self.log_file))
+        if downlink:
+            popen_args += ('-R',)
+
         if netns:
             self.process = process.NetNSProcess(self.name(), self.run_dir, netns, popen_args, env={})
         else:
diff --git a/suites/4g/iperf3.py b/suites/4g/iperf3.py
index 5ccc922..cc7bca0 100755
--- a/suites/4g/iperf3.py
+++ b/suites/4g/iperf3.py
@@ -32,7 +32,7 @@
 ue.connect(enb)
 
 iperf3srv.start()
-proc = iperf3cli.prepare_test_proc(ue.netns())
+proc = iperf3cli.prepare_test_proc(False, ue.netns())
 
 print('waiting for UE to attach...')
 wait(ue.is_connected, None)
diff --git a/suites/gprs/lib/testlib.py b/suites/gprs/lib/testlib.py
index 284ca63..c0af372 100644
--- a/suites/gprs/lib/testlib.py
+++ b/suites/gprs/lib/testlib.py
@@ -16,7 +16,7 @@
     procs = []
     for i in range(len(iperf3clients)):
         print("Running iperf3 client to %s through %r" % (str(iperf3clients[i]), repr(ms_li[i].tmp_ctx_id)))
-        procs.append(iperf3clients[i].prepare_test_proc(ms_li[i].netns()))
+        procs.append(iperf3clients[i].prepare_test_proc(False, ms_li[i].netns()))
     try:
         for proc in procs:
             proc.launch()

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17315
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Change-Id: I6b5b740beac22015c952ce826c034031ad4c4465
Gerrit-Change-Number: 17315
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200303/5e9260c1/attachment.htm>


More information about the gerrit-log mailing list