summaryrefslogtreecommitdiffstats
path: root/src/main_dpdk.cpp
diff options
context:
space:
mode:
authorIdo Barnea <ibarnea@cisco.com>2016-12-21 17:15:04 +0200
committerIdo Barnea <ibarnea@cisco.com>2016-12-22 10:18:40 +0200
commitd99346269fed5539d483113a4b37928619c6640a (patch)
tree29785f11d04e444181f7161b03ea73352deb3b4d /src/main_dpdk.cpp
parente528048b2a9c99899cf1f69a2c11f51a383384db (diff)
UDP NAT --learn mode 1,3 support - doc + regression tests
Signed-off-by: Ido Barnea <ibarnea@cisco.com>
Diffstat (limited to 'src/main_dpdk.cpp')
-rw-r--r--src/main_dpdk.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/main_dpdk.cpp b/src/main_dpdk.cpp
index c9b182af..250d0911 100644
--- a/src/main_dpdk.cpp
+++ b/src/main_dpdk.cpp
@@ -780,22 +780,23 @@ static int usage(){
printf(" --ipv6 : Work in ipv6 mode \n");
printf(" -k <num> : Run 'warm up' traffic for num seconds before starting the test. \n");
printf(" -l <rate> : In parallel to the test, run latency check, sending packets at rate/sec from each interface \n");
+ printf(" --l-pkt-mode <0-3> : Set mode for sending latency packets \n");
+ printf(" 0 (default) send SCTP packets \n");
+ printf(" 1 Send ICMP request packets \n");
+ printf(" 2 Send ICMP requests from client side, and response from server side (for working with firewall) \n");
+ printf(" 3 Send ICMP requests with sequence ID 0 from both sides \n");
printf(" Rate of zero means no latency check \n");
printf(" --learn (deprecated). Replaced by --learn-mode. To get older behaviour, use --learn-mode 2 \n");
- printf(" --learn-mode [1-3] : Work in NAT environments, learn the dynamic NAT translation and ALG \n");
- printf(" 1 Use TCP ACK in first SYN to pass NAT translation information. Will work only for TCP streams. Initial SYN packet must be first packet in stream \n");
- printf(" 2 Add special IP option to pass NAT translation information. Will not work on certain firewalls if they drop packets with IP options \n");
+ printf(" --learn-mode [1-3] : Used for working in NAT environments. Dynamically learn the NAT translation done by the DUT \n");
+ printf(" 1 In case of TCP flow, use TCP ACK in first SYN to pass NAT translation information. Initial SYN packet must be first packet in the TCP flow \n");
+ printf(" In case of UDP stream, NAT translation information will pass in IP ID field of first packet in flow. This means that this field is changed by TRex\n");
+ printf(" 2 Add special IP option to pass NAT translation information to first packet of each flow. Will not work on certain firewalls if they drop packets with IP options \n");
printf(" 3 Like 1, but without support for sequence number randomization in server->clien direction. Performance (flow/second) better than 1 \n");
printf(" --learn-verify : Test the NAT translation mechanism. Should be used when there is no NAT in the setup \n");
printf(" --limit-ports : Limit number of ports used. Must be even number (TRex always uses port pairs) \n");
printf(" --lm : Hex mask of cores that should send traffic \n");
printf(" For example: Value of 0x5 will cause only ports 0 and 2 to send traffic \n");
printf(" --lo : Only run latency test \n");
- printf(" --l-pkt-mode <0-3> : Set mode for sending latency packets \n");
- printf(" 0 (default) send SCTP packets \n");
- printf(" 1 Send ICMP request packets \n");
- printf(" 2 Send ICMP requests from client side, and response from server side (for working with firewall) \n");
- printf(" 3 Send ICMP requests with sequence ID 0 from both sides \n");
printf(" -m <num> : Rate multiplier. Multiply basic rate of templates by this number \n");
printf(" --mbuf-factor : Factor for packet memory \n");
printf(" --nc : If set, will not wait for all flows to be closed, before terminating - see manual for more information \n");