User Tools

Site Tools


openbach:exploitation:reference_scenarios:network:delay:index

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
openbach:exploitation:reference_scenarios:network:delay:index [2020/02/19 14:11]
mpetrou [RTT Delay diagnostic including post processing comparison scenario]
openbach:exploitation:reference_scenarios:network:delay:index [2020/06/29 16:30] (current)
dpradas [How to launch it]
Line 14: Line 14:
  
 ==== Objective ==== ==== Objective ====
-The purpose of this scenario is to compare delay results obtained from jobs: fping, hping (RTT) and owping (One-way Delay). +The purpose of this scenario is to compare delay results obtained from jobs: fping and d-itg (RTT). ​
  
   * ''​fping''​ measures the RTT delay (in ms) using the ICMP protocol (i.e. time since ICMP request sent until ICMP response received)   * ''​fping''​ measures the RTT delay (in ms) using the ICMP protocol (i.e. time since ICMP request sent until ICMP response received)
  
-  * ''​hping''​ measures the RTT delay (in ms) using the negotiation packets for opening a TCP connection (i.e. time since SYN sent until SYN-ACK received).+  * ''​d-itg''​ measures the RTT delay (in ms) using the an UDP connection (i.e. time since d-itg sender the packet ​until d-itg sender receive the same packet from d-itg receiver).
  
-Hping and fping (which are persistent jobs) are launched during the duration time (default 10). +D-itg and fping (which are persistent jobs) are launched during the duration time (default 10). 
  
 ==== Methodology ==== ==== Methodology ====
 Two approaches are used to analyse the delay: Two approaches are used to analyse the delay:
-  * The default first one considers a sequential launch of the three jobs in order to avoid any overload caused by the injected test packets (active measurement methods). ​+  * The default first one considers a sequential launch of the two jobs in order to avoid any overload caused by the injected test packets (active measurement methods). ​
   * The second one considers a parallel/​simultaneous launch of the two jobs   * The second one considers a parallel/​simultaneous launch of the two jobs
  
 The scenario proposed herein will then: The scenario proposed herein will then:
-  * Launch subscenarios delay_simultaneous or delay_sequential as subscenarios (allowing to compare the RTT measurement of fping, ​hping ).+  * Launch subscenarios delay_simultaneous or delay_sequential as subscenarios (allowing to compare the RTT measurement of fping, ​d-itg).
   * Launch two postprocessing jobs to compare the time-series and the CDF of the delay measurements. ​   * Launch two postprocessing jobs to compare the time-series and the CDF of the delay measurements. ​
  
-These scenarios have been written using the [[openbach:​manuals:​2.x:​user_manual:advanced_user_api:​scenario_builder:​index|scenario builder]].+These scenarios have been written using the [[openbach:​manuals:​2.x:​developer_manual:openbach_api:​index|scenario builder]].
  
 ==== How to launch it  ==== ==== How to launch it  ====
  
-The scenario is available in [[https://​forge.net4sat.org/​openbach/​openbach-extra/​blob/​master/​apis/​scenario_builder/​scenarios/​network_delay.py | network_delay ]]. It uses helpers (see [[openbach:​manuals:​2.x:​user_manual:advanced_user_api:manual_scenario_api:​index ​| API scenario manual]] for more information on helpers), and subscenarios ''​delay_sequential''​ and ''​delay_simultaneous''​. ​+The scenario is available in [[https://​forge.net4sat.org/​openbach/​openbach-extra/​blob/​master/​apis/​scenario_builder/​scenarios/​network_delay.py | network_delay ]]. It uses helpers (see [[openbach:​manuals:​2.x:​developer_manual:scenario:old_manual| API scenario manual]] for more information on helpers), and subscenarios ''​delay_sequential''​ and ''​delay_simultaneous''​. ​
  
-You must already have a project (i.e. "​your_project"​),​ two entities in the project (a server and a client), the hping/fping jobs installed in the client. You also need to install histogram and time-series jobs on the "​your_entity"​.+You must already have a project (i.e. "​your_project"​),​ two entities in the project (a server and a client), the d-itg_send/fping jobs installed in the client ​and d-itg_recv job installed in the server. You also need to install histogram and time-series jobs on the "​your_entity"​.
  
-The reference scenario ​script [[https://​forge.net4sat.org/​openbach/​openbach-extra/​blob/​master/​reference_scenarios/generate_network_delay.py | generate_network_delay]] will allow to launch it as follows.+The executor ​script [[https://​forge.net4sat.org/​openbach/​openbach-extra/​blob/​master/​executors/references/​executor_network_delay.py | executor_network_delay]] will allow to launch it as follows.
  
 <code shell> <code shell>
-python3 ​generate_network_delay.py -o PROJECT_NAME --client ​your_client_entity --ip_dst @IP --entity_pp your_entity run+python3 ​executor_network_delay.py -o PROJECT_NAME --clt your_client_entity --srv your_server_entity --clt_ip your_client_ip --srv_ip your_server_ip ​--entity_pp your_entity run
 </​code>​ </​code>​
  
 By default, it launches the scenario with the sequential methodology. If you want to launch the simultaneous one, you should add "​--simultaneous"​ to your arguments. By default, it launches the scenario with the sequential methodology. If you want to launch the simultaneous one, you should add "​--simultaneous"​ to your arguments.
 +
 +By default, it launches the scenario for a duration of 10 seconds. If you want to change the duration, you should add "​--duration duration_in_sec"​
  
 Alternatively,​ it can create a JSON file that could be imported to the OpenBACH web interface: Alternatively,​ it can create a JSON file that could be imported to the OpenBACH web interface:
  
 <code shell> <code shell>
-python3 ​generate_network_delay.py -o PROJECT_NAME --client ​your_client_entity --ip_dst @IP --entity_pp your_entity build .+python3 ​executor_network_delay.py -o PROJECT_NAME --clt your_client_entity --srv your_server_entity --clt_ip your_client_ip --srv_ip your_server_ip ​--entity_pp your_entity build .
 </​code>​ </​code>​
  
 An example of the type of results that this scenarios is capable of plotting is shown below: An example of the type of results that this scenarios is capable of plotting is shown below:
  
-{{ :​openbach:​exploitation:​reference_scenarios:​network:​delay:​time_series_rtt.png |}} +{{ :​openbach:​exploitation:​reference_scenarios:​network:​delay:​time_series_rtt_rtt_sender.png?​nolink ​|}}
- +
-{{ :​openbach:​exploitation:​reference_scenarios:​network:​delay:​histogram_rtt.png |}}+
  
 +{{ :​openbach:​exploitation:​reference_scenarios:​network:​delay:​histogram_rtt_rtt_sender.png?​nolink |}}
  
 The plots can be downloaded from the OpenBACH web interface: go to the scenario instance, click on export CSV, check the histogram and time-series boxes and click on Download. The plots can be downloaded from the OpenBACH web interface: go to the scenario instance, click on export CSV, check the histogram and time-series boxes and click on Download.
openbach/exploitation/reference_scenarios/network/delay/index.1582117860.txt.gz · Last modified: 2020/02/19 14:11 by mpetrou