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.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18447 ) Change subject: iperf3: Support runing test with bidirectional data ...................................................................... iperf3: Support runing test with bidirectional data Change-Id: Ia6f12c65fd3ea26d412997741cb8685a9646af43 --- M doc/examples/4g_srsLTE/suites/4g/iperf3_dl.py M doc/examples/4g_srsLTE/suites/4g/iperf3_ul.py M src/osmo_gsm_tester/obj/iperf3.py M sysmocom/suites/4g/handover.py M sysmocom/suites/4g/iperf3_dl.py M sysmocom/suites/4g/iperf3_ul.py M sysmocom/suites/gprs/lib/testlib.py 7 files changed, 25 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/47/18447/1 diff --git a/doc/examples/4g_srsLTE/suites/4g/iperf3_dl.py b/doc/examples/4g_srsLTE/suites/4g/iperf3_dl.py index bcc569a..66d75bb 100755 --- a/doc/examples/4g_srsLTE/suites/4g/iperf3_dl.py +++ b/doc/examples/4g_srsLTE/suites/4g/iperf3_dl.py @@ -21,7 +21,7 @@ ue.connect(enb) iperf3srv.start() -proc = iperf3cli.prepare_test_proc(True, ue.netns()) +proc = iperf3cli.prepare_test_proc(iperf3cli.DIR_DL, ue.netns()) print('waiting for UE to attach...') wait(ue.is_connected, None) diff --git a/doc/examples/4g_srsLTE/suites/4g/iperf3_ul.py b/doc/examples/4g_srsLTE/suites/4g/iperf3_ul.py index a92a658..7dca127 100755 --- a/doc/examples/4g_srsLTE/suites/4g/iperf3_ul.py +++ b/doc/examples/4g_srsLTE/suites/4g/iperf3_ul.py @@ -21,7 +21,7 @@ ue.connect(enb) iperf3srv.start() -proc = iperf3cli.prepare_test_proc(False, ue.netns()) +proc = iperf3cli.prepare_test_proc(iperf3cli.DIR_UL, ue.netns()) print('waiting for UE to attach...') wait(ue.is_connected, None) diff --git a/src/osmo_gsm_tester/obj/iperf3.py b/src/osmo_gsm_tester/obj/iperf3.py index 9c05d44..04aac47 100644 --- a/src/osmo_gsm_tester/obj/iperf3.py +++ b/src/osmo_gsm_tester/obj/iperf3.py @@ -193,6 +193,10 @@ PROTO_TCP = "tcp" PROTO_UDP = "udp" + DIR_UL = "ul" + DIR_DL = "dl" + DIR_BI = "bi" + @classmethod def validate_protocol(cls, val): return val in (cls.PROTO_TCP, cls.PROTO_UDP) @@ -215,9 +219,13 @@ locally = not self._run_node or self._run_node.is_local() return locally - def prepare_test_proc(self, downlink=False, netns=None, time_sec=None, proto=None): + def prepare_test_proc(self, dir=None, netns=None, time_sec=None, proto=None): values = config.get_defaults('iperf3cli') config.overlay(values, self.testenv.suite().config().get('iperf3cli', {})) + + if dir is None: + dir = self.DIR_UL + if time_sec is None: time_sec_str = values.get('time', time_sec) @@ -239,11 +247,11 @@ self.run_dir = util.Dir(self.testenv.test().get_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(downlink, netns, time_sec, proto == IPerf3Client.PROTO_UDP) + return self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP) else: - return self.prepare_test_proc_remotely(downlink, netns, time_sec, proto == IPerf3Client.PROTO_UDP) + return self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP) - def prepare_test_proc_remotely(self, downlink, netns, time_sec, use_udp): + def prepare_test_proc_remotely(self, dir, netns, time_sec, use_udp): 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) @@ -257,8 +265,10 @@ '-t', str(time_sec)) if self.logfile_supported: popen_args += ('--logfile', self.remote_log_file,) - if downlink: + if dir == IPerf3Client.DIR_DL: popen_args += ('-R',) + elif dir == IPerf3Client.DIR_BI: + popen_args += ('--bidir',) if use_udp: popen_args += ('-u', '-b', '0') @@ -268,7 +278,7 @@ self.process = self.rem_host.RemoteProcess(self.name(), popen_args, env={}) return self.process - def prepare_test_proc_locally(self, downlink, netns, time_sec, use_udp): + def prepare_test_proc_locally(self, dir, netns, time_sec, use_udp): pcap_recorder.PcapRecorder(self.testenv, self.run_dir.new_dir('pcap'), None, 'host %s and port not 22' % self.server.addr(), netns) @@ -277,8 +287,10 @@ '-t', str(time_sec)) if self.logfile_supported: popen_args += ('--logfile', os.path.abspath(self.log_file),) - if downlink: + if dir == IPerf3Client.DIR_DL: popen_args += ('-R',) + elif dir == IPerf3Client.DIR_BI: + popen_args += ('--bidir',) if use_udp: popen_args += ('-u', '-b', '0') diff --git a/sysmocom/suites/4g/handover.py b/sysmocom/suites/4g/handover.py index a503465..b0837d8 100755 --- a/sysmocom/suites/4g/handover.py +++ b/sysmocom/suites/4g/handover.py @@ -43,7 +43,7 @@ ue.connect(enb) iperf3srv.start() -proc = iperf3cli.prepare_test_proc(False, ue.netns(), duration + 30) +proc = iperf3cli.prepare_test_proc(iperf3cli.DIR_UL, ue.netns(), duration + 30) print('waiting for UE to attach...') wait(ue.is_connected, None) diff --git a/sysmocom/suites/4g/iperf3_dl.py b/sysmocom/suites/4g/iperf3_dl.py index bcc569a..66d75bb 100755 --- a/sysmocom/suites/4g/iperf3_dl.py +++ b/sysmocom/suites/4g/iperf3_dl.py @@ -21,7 +21,7 @@ ue.connect(enb) iperf3srv.start() -proc = iperf3cli.prepare_test_proc(True, ue.netns()) +proc = iperf3cli.prepare_test_proc(iperf3cli.DIR_DL, ue.netns()) print('waiting for UE to attach...') wait(ue.is_connected, None) diff --git a/sysmocom/suites/4g/iperf3_ul.py b/sysmocom/suites/4g/iperf3_ul.py index a92a658..7dca127 100755 --- a/sysmocom/suites/4g/iperf3_ul.py +++ b/sysmocom/suites/4g/iperf3_ul.py @@ -21,7 +21,7 @@ ue.connect(enb) iperf3srv.start() -proc = iperf3cli.prepare_test_proc(False, ue.netns()) +proc = iperf3cli.prepare_test_proc(iperf3cli.DIR_UL, ue.netns()) print('waiting for UE to attach...') wait(ue.is_connected, None) diff --git a/sysmocom/suites/gprs/lib/testlib.py b/sysmocom/suites/gprs/lib/testlib.py index 765f463..1421229 100644 --- a/sysmocom/suites/gprs/lib/testlib.py +++ b/sysmocom/suites/gprs/lib/testlib.py @@ -10,7 +10,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(False, ms_li[i].netns())) + procs.append(iperf3clients[i].prepare_test_proc(iperf3clients[i].DIR_UL, ms_li[i].netns())) try: for proc in procs: proc.launch() -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18447 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: Ia6f12c65fd3ea26d412997741cb8685a9646af43 Gerrit-Change-Number: 18447 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200525/b40809ed/attachment.htm>