User Tools

Site Tools


Sidebar

openbach:exploitation:reference_scenarios:transport:transport_tcp_stack_conf:index

Transport TCP Stack Scenario Conf

This page provides instructions to exploit transport_tcp_stack_conf scenario. This scenario relies on the OpenBACH jobs tcp_conf_linux, ethtool and ip_route to configure:

  • TCP congestion control,
  • route including TCP parameters like initial congestion and receive windows
  • TCP segmentation offloading on a network interface. Its a useful scenario allowing to evaluate the impact of these parameters on the performances of a TCP flow.

How to launch it

The scenario is available in transport_tcp_stack_conf. It uses helpers (see API scenario manual for more information on helpers) of previously cited jobs.

You must already have a project (i.e. “your_project”), one entity in the project (i.e. “your_entity”), with the following jobs installed on this entity: ip_route, tcp_conf_linux and ethtool.

The executor script executor_transport_tcp_stack_conf will allow to launch it as follows.

python3 executor_transport_tcp_stack_conf.py your_project --entity your_entity --congestion-control congestion_control --dest-ip @network_ip_address --gw-ip @gateway_ip_address --dev output_device --icwnd initcwnd --irwnd initrwnd --interface net_iface run

Alternatively, it can create a JSON file that could be imported to the OpenBACH web interface:

python3 executor_transport_tcp_stack_conf.py your_project --entity your_entity --congestion-control congestion_control --dest-ip @network_ip_address --gw-ip @gateway_ip_address --dev output_device --icwnd initcwnd --irwnd initrwnd --interface net_iface build .

You can make a parameter as an argument of generated scenario, just by specifying its value starting with '$'.

This script includes a manual page listing all of the command-line options. Issue following commands for more information about paramaters

python3 executor_transport_tcp_stack_conf.py -h

Use cases

This scenario can be used as module (or building block) to build more complex scenarios. Here is a scenario allowing to launch web_browsing_qoe and/or dash jobs under various network conditions including packets losses and congestion for different tcp configurations.

openbach/exploitation/reference_scenarios/transport/transport_tcp_stack_conf/index.txt · Last modified: 2020/10/22 10:08 by kuhnn