Issue #58 - iperf3 support for TCP Flows

92 views
Skip to first unread message

Omanshu Mahawar

unread,
Oct 27, 2021, 1:24:33 PM10/27/21
to NeST users
Hi,

I along with my teammates Shreeya Sand (shreeyasan...@nitk.edu.in) and Shrvan Warke (shrvan....@nitk.edu.in) will be working on Issue #58 - iperf3 support for TCP Flows.

As currently, NeST is using netperf for TCP flows, we are planning to tweak the APIs such that by default, users will be making use of netperf and switch to iperf3 if required.

We came up with the following tweaks to incorporate iperf3:
  1. Add a parameter “tool” in the class Flow which carries Info about the tool which user has specified. (By default it will be set to netpref)
  2. Tweak run_experiment (run_exp.py line 44) to account for different tool options and call setup_tcp_flows (run_exp.py line 333) accordingly.
  3. Modify setup_tcp_flows to call Runner classes (NetperfRunner / Iperf3Runner) accordingly.
  4. Add a parameter “protocol” to class Iperf3Runner which carries info about the protocol (tcp/udp).
We would be glad if you can review these suggestions and let us know of any improvements/corrections. 

Thanks,
Omanshu Mahawar
Message has been deleted

Shanthanu Rai

unread,
Oct 29, 2021, 2:58:19 AM10/29/21
to Omanshu Mahawar, NeST users
Hey Omanshu, thanks for choosing this issue! This will make our experiment API more configurable based on the user's requirements.

Please find my comments inline below:

As currently, NeST is using netperf for TCP flows, we are planning to tweak the APIs such that by default, users will be making use of netperf and switch to iperf3 if required.
Yep, this sounds good.
 
  1. Add a parameter “tool” in the class Flow which carries info about the tool which user has specified. (By default it will be set to netpref)
Hhm, maybe the "tool" parameter can be added to "add_tcp_flow" instead of "Flow", since it is specifically related to TCP. You can add a new "tool" key in the dictionary here, which can be later used in run_exp.py.

Tweak run_experiment (run_exp.py line 44) to account for different tool options and call setup_tcp_flows (run_exp.py line 333) accordingly.
Modify setup_tcp_flows to call Runner classes (NetperfRunner / Iperf3Runner) accordingly.  
Add a parameter “protocol” to class Iperf3Runner which carries info about the protocol (tcp/udp).
Yeah these changes look fine.

Your changes look good to me. Please go ahead and create an MR! (Do check the contributing guidelines before creating the MR: https://gitlab.com/nitk-nest/nest/-/blob/master/CONTRIBUTING.md)

On Thu, Oct 28, 2021 at 7:03 AM 'Omanshu Mahawar' via NeST users <nest-...@googlegroups.com> wrote:
Hi,

I along with my teammates Shreeya Sand and Shrvan Warke will be working on Issue #58 - iperf3 support for TCP Flows.

As currently, NeST is using netperf for TCP flows, we are planning to tweak the APIs such that by default, users will be making use of netperf and switch to iperf3 if required.

We came up with the following tweaks to incorporate iperf3:
  1. Add a parameter “tool” in the class Flow which carries info about the tool which user has specified. (By default it will be set to netpref)
  1. Tweak run_experiment (run_exp.py line 44) to account for different tool options and call setup_tcp_flows (run_exp.py line 333) accordingly.
  2. Modify setup_tcp_flows to call Runner classes (NetperfRunner / Iperf3Runner) accordingly.
  3. Add a parameter “protocol” to class Iperf3Runner which carries info about the protocol (tcp/udp).
We would be glad if you can review these suggestions and let us know of any improvements/corrections. 

Thanks,
Omanshu Mahawar

--
You received this message because you are subscribed to the Google Groups "NeST users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nest-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nest-users/c82f96fa-6ffe-4833-99da-3f6c28c36826n%40googlegroups.com.


--
Regards,
Shanthanu S Rai

Omanshu Mahawar

unread,
Oct 29, 2021, 5:19:34 AM10/29/21
to NeST users
Hi, 

Thank you for going through our suggestions.
 Yeah, adding new “tool” parameter in add_tcp_flow itself is cleaner. 
We’ll implement, test and create the MR soon.

Thanks,
Omanshu Mahawar

Shanthanu Rai

unread,
Oct 29, 2021, 5:21:51 AM10/29/21
to Omanshu Mahawar, NeST users
Sure, btw if there are any more queries, please ask them here: https://gitlab.com/nitk-nest/nest/-/issues/58. This is the more appropriate forum for technical queries. The user mailing list is meant for NeST users to clarify doubts and report issues.

Reply all
Reply to author
Forward
This conversation is locked
You cannot reply and perform actions on locked conversations.
0 new messages