+| | [Documentation] | Send traffic at specified rate. No packet loss is
+| | ... | accepted at loss evaluation.
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${duration} - Duration of traffic run [s]. Type: integer
+| | ... | - ${rate} - Rate for sending packets. Type: string
+| | ... | - ${framesize} - L2 Frame Size [B]. Type: integer
+| | ... | - ${topology_type} - Topology type. Type: string
+| | ...
+| | ... | *Return:*
+| | ... | - No value returned
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Traffic should pass with no loss \| 10 \| 4.0mpps \| 64 \
+| | ... | \| 3-node-IPv4
+| | [Arguments] | ${duration} | ${rate} | ${framesize} | ${topology_type}
+| | ... | ${fail_on_loss}=${True}
+| | Clear and show runtime counters with running traffic | ${duration}
+| | ... | ${rate} | ${framesize} | ${topology_type}
+| | Clear all counters on all DUTs
+| | Send traffic on tg | ${duration} | ${rate} | ${framesize}
+| | ... | ${topology_type} | warmup_time=0
+| | Show statistics on all DUTs
+| | Run Keyword If | ${fail_on_loss} | No traffic loss occurred
+
+| Traffic should pass with partial loss
+| | [Documentation] | Send traffic at specified rate. Partial packet loss is
+| | ... | accepted within loss acceptance value.
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${duration} - Duration of traffic run [s]. Type: integer
+| | ... | - ${rate} - Rate for sending packets. Type: string
+| | ... | - ${framesize} - L2 Frame Size [B]. Type: integer
+| | ... | - ${topology_type} - Topology type. Type: string
+| | ... | - ${loss_acceptance} - Accepted loss during search. Type: float
+| | ... | - ${loss_acceptance_type} - Percentage or frames. Type: string
+| | ...
+| | ... | *Return:*
+| | ... | - No value returned
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Traffic should pass with partial loss \| 10 \| 4.0mpps \| 64 \
+| | ... | \| 3-node-IPv4 \| 0.5 \| percentage
+| | [Arguments] | ${duration} | ${rate} | ${framesize} | ${topology_type}
+| | ... | ${loss_acceptance} | ${loss_acceptance_type}
+| | ... | ${fail_on_loss}=${True}
+| | Clear and show runtime counters with running traffic | ${duration}
+| | ... | ${rate} | ${framesize} | ${topology_type}
+| | Clear all counters on all DUTs
+| | Send traffic on tg | ${duration} | ${rate} | ${framesize}
+| | ... | ${topology_type} | warmup_time=0
+| | Show statistics on all DUTs
+| | Run Keyword If | ${fail_on_loss} | Partial traffic loss accepted
+| | ... | ${loss_acceptance} | ${loss_acceptance_type}
+
+| Clear and show runtime counters with running traffic