diff --git a/doc/source/images/simultaneous.svg b/doc/source/images/simultaneous.svg
new file mode 100644
index 0000000..e3c2365
--- /dev/null
+++ b/doc/source/images/simultaneous.svg
@@ -0,0 +1,527 @@
+
+
+
+
diff --git a/doc/source/index.rst b/doc/source/index.rst
index 575e4c0..89847b0 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -4,14 +4,14 @@ Welcome to Shaker!
The distributed data-plane testing tool for OpenStack.
.. toctree::
- :maxdepth: 2
+ :maxdepth: 2
- installation
- usage
- examples
- tools
- architecture
- contributing
+ installation
+ usage
+ tools
+ examples
+ architecture
+ contributing
.. Indices and tables
.. ==================
diff --git a/doc/source/tools/shaker-agent.txt b/doc/source/tools/shaker-agent.txt
index c5f87c4..ee019c6 100644
--- a/doc/source/tools/shaker-agent.txt
+++ b/doc/source/tools/shaker-agent.txt
@@ -51,14 +51,14 @@ optional arguments:
--syslog-log-facility SYSLOG_LOG_FACILITY
Syslog facility to receive log lines.
--use-syslog Use syslog for logging. Existing syslog format is
- DEPRECATED during I, and will change in J to honor
+ DEPRECATED during I, and changed in J to honor
RFC5424.
--use-syslog-rfc-format
(Optional) Enables or disables syslog rfc5424 format
for logging. If enabled, prefixes the MSG part of the
syslog message with APP-NAME (RFC5424). The format
without the APP-NAME is deprecated in K, and will be
- removed in L, along with this option.
+ removed in M, along with this option.
--verbose, -v Print more verbose output (set logging level to INFO
instead of default WARNING level).
--version show program's version number and exit
diff --git a/doc/source/tools/shaker-cleanup.txt b/doc/source/tools/shaker-cleanup.txt
index 63dabff..03b60ba 100644
--- a/doc/source/tools/shaker-cleanup.txt
+++ b/doc/source/tools/shaker-cleanup.txt
@@ -76,14 +76,14 @@ optional arguments:
--syslog-log-facility SYSLOG_LOG_FACILITY
Syslog facility to receive log lines.
--use-syslog Use syslog for logging. Existing syslog format is
- DEPRECATED during I, and will change in J to honor
+ DEPRECATED during I, and changed in J to honor
RFC5424.
--use-syslog-rfc-format
(Optional) Enables or disables syslog rfc5424 format
for logging. If enabled, prefixes the MSG part of the
syslog message with APP-NAME (RFC5424). The format
without the APP-NAME is deprecated in K, and will be
- removed in L, along with this option.
+ removed in M, along with this option.
--verbose, -v Print more verbose output (set logging level to INFO
instead of default WARNING level).
--version show program's version number and exit
diff --git a/doc/source/tools/shaker-image-builder.txt b/doc/source/tools/shaker-image-builder.txt
index ab0e914..cf2ce2c 100644
--- a/doc/source/tools/shaker-image-builder.txt
+++ b/doc/source/tools/shaker-image-builder.txt
@@ -78,14 +78,14 @@ optional arguments:
--syslog-log-facility SYSLOG_LOG_FACILITY
Syslog facility to receive log lines.
--use-syslog Use syslog for logging. Existing syslog format is
- DEPRECATED during I, and will change in J to honor
+ DEPRECATED during I, and changed in J to honor
RFC5424.
--use-syslog-rfc-format
(Optional) Enables or disables syslog rfc5424 format
for logging. If enabled, prefixes the MSG part of the
syslog message with APP-NAME (RFC5424). The format
without the APP-NAME is deprecated in K, and will be
- removed in L, along with this option.
+ removed in M, along with this option.
--verbose, -v Print more verbose output (set logging level to INFO
instead of default WARNING level).
--version show program's version number and exit
diff --git a/doc/source/tools/shaker-report.txt b/doc/source/tools/shaker-report.txt
index 981b1d1..51f8a95 100644
--- a/doc/source/tools/shaker-report.txt
+++ b/doc/source/tools/shaker-report.txt
@@ -53,14 +53,14 @@ optional arguments:
--syslog-log-facility SYSLOG_LOG_FACILITY
Syslog facility to receive log lines.
--use-syslog Use syslog for logging. Existing syslog format is
- DEPRECATED during I, and will change in J to honor
+ DEPRECATED during I, and changed in J to honor
RFC5424.
--use-syslog-rfc-format
(Optional) Enables or disables syslog rfc5424 format
for logging. If enabled, prefixes the MSG part of the
syslog message with APP-NAME (RFC5424). The format
without the APP-NAME is deprecated in K, and will be
- removed in L, along with this option.
+ removed in M, along with this option.
--verbose, -v Print more verbose output (set logging level to INFO
instead of default WARNING level).
--version show program's version number and exit
diff --git a/doc/source/tools/shaker.txt b/doc/source/tools/shaker.txt
index 03e5f7c..76f865f 100644
--- a/doc/source/tools/shaker.txt
+++ b/doc/source/tools/shaker.txt
@@ -97,14 +97,14 @@ optional arguments:
--syslog-log-facility SYSLOG_LOG_FACILITY
Syslog facility to receive log lines.
--use-syslog Use syslog for logging. Existing syslog format is
- DEPRECATED during I, and will change in J to honor
+ DEPRECATED during I, and changed in J to honor
RFC5424.
--use-syslog-rfc-format
(Optional) Enables or disables syslog rfc5424 format
for logging. If enabled, prefixes the MSG part of the
syslog message with APP-NAME (RFC5424). The format
without the APP-NAME is deprecated in K, and will be
- removed in L, along with this option.
+ removed in M, along with this option.
--verbose, -v Print more verbose output (set logging level to INFO
instead of default WARNING level).
--version show program's version number and exit
diff --git a/doc/source/usage.rst b/doc/source/usage.rst
index e07f764..48801a0 100644
--- a/doc/source/usage.rst
+++ b/doc/source/usage.rst
@@ -31,7 +31,7 @@ are deployed at OpenStack instances a reference to Heat template is provided.
accommodation: [pair, single_room]
execution:
- size: quadratic_progression
+ progression: quadratic
tests:
-
title: Iperf TCP
@@ -65,19 +65,49 @@ Execution
^^^^^^^^^
The execution part of scenario contains a list of tests that are executed one by one. By default Shaker runs the test
-simultaneously on all available agents. The level of concurrency can be controlled by option ``size``. There are
+simultaneously on all available agents. The level of concurrency can be controlled by option ``progression``. There are
3 values available:
- * ``size`` is not specified - all agents are involved;
- * ``size: linear_progression`` - the execution starts with 1 agent and increases by 1 until all agents are involved;
- * ``size: quadratic_progression`` - the execution starts with 1 agent (or 1 pair) and doubles until all agents are involved.
+ * no value specified - all agents are involved;
+ * ``linear`` - the execution starts with 1 agent and increases by 1 until all agents are involved;
+ * ``quadratic`` - the execution starts with 1 agent (or 1 pair) and doubles until all agents are involved.
Tests are executed in order of definition. The exact action is defined by option ``class``, additional attributes are provided
by respective parameters. The following classes are available:
* ``iperf_graph`` - runs ``iperf`` tool and shows chart and statistics
- * ``netperf_wrapper`` - runs ``netperf-wrapper`` and shows chart and statistics
+ * ``flent`` - runs ``flent`` (http://flent.org) and shows chart and statistics
* ``iperf`` - runs ``iperf`` tool and shows plain output
* ``netperf`` - runs ``netpers`` tool and shows plain output
* ``shell`` - runs any shell command or process and shows plain output
+Test classes
+^^^^^^^^^^^^
+
+Tools are configured via key-value attributes in test definition. For all networking tools Shaker offers unified parameters, that are translated
+automatically.
+
+iperf_graph, iperf:
+~~~~~~~~~~~~~~~~~~~
+ * ``time`` - time in seconds to transmit for, defaults to `60`
+ * ``udp`` - use UDP instead of TCP, defaults to `TCP`
+ * ``interval`` - seconds between periodic bandwidth reports, defaults to `1 s`
+ * ``bandwidth`` - for UDP, bandwidth to send at in bits/sec, defaults to `1 Mbit/s`
+ * ``threads`` - number of parallel client threads to run
+
+flent:
+~~~~~~
+ * ``time`` - time in seconds to transmit for, defaults to `60`
+ * ``interval`` - seconds between periodic bandwidth reports, defaults to `1`
+ * ``method`` - which flent scenario to use, see https://github.com/tohojo/flent/tree/master/flent/tests for the whole list, defaults to `tcp_download`
+
+
+netperf:
+~~~~~~~~
+ * ``time`` - time in seconds to transmit for, defaults to `60`
+ * ``method`` - one of built-in test names, see http://linux.die.net/man/1/netperf for the whole list, defaults to `TCP_STREAM`
+
+shell:
+~~~~~~
+ * ``program`` - run single program
+ * ``script`` - run bash script
diff --git a/etc/shaker.conf b/etc/shaker.conf
index fb92861..fb023c8 100644
--- a/etc/shaker.conf
+++ b/etc/shaker.conf
@@ -39,13 +39,15 @@
#log_dir =
# Use syslog for logging. Existing syslog format is DEPRECATED during I, and
-# will change in J to honor RFC5424. (boolean value)
+# changed in J to honor RFC5424. (boolean value)
#use_syslog = false
# (Optional) Enables or disables syslog rfc5424 format for logging. If enabled,
# prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The
-# format without the APP-NAME is deprecated in K, and will be removed in L,
+# format without the APP-NAME is deprecated in K, and will be removed in M,
# along with this option. (boolean value)
+# This option is deprecated for removal.
+# Its value may be silently ignored in the future.
#use_syslog_rfc_format = true
# Syslog facility to receive log lines. (string value)
@@ -64,7 +66,7 @@
#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
# Prefix each line of exception output with this format. (string value)
-#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s
+#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
# List of logger=LEVEL pairs. (list value)
#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN
@@ -83,6 +85,9 @@
# value)
#instance_uuid_format = "[instance: %(uuid)s] "
+# Enables or disables fatal status of deprecations. (boolean value)
+#fatal_deprecations = false
+
#
# From shaker.engine.config
#