anchor.diff:  
   A:: 
   
  -The power of our Python API is the scapy integration for simple building of the packets / fueled engine
  -There is a proxy over RPC that you can extend to your use cases. It has basic function like connect/start/stop/get_stats
  +The power of our Python API is the scapy integration for simple building of the packets and the field engine.
  +There is a proxy over RPC that you can extend to your use cases. It has basic functionality, like connect/start/stop/get_stats.
   You could use it to send some pcap file via ports, or so-called python profiles, which you can configure by passing different variables (so-called tunabels) via the RPC.
  -Take a look  link:trex_stateless.html#_using_stateless_client_via_json_rpc[using_stateless_client_via_json_rpc]
  -You can even dump the profile as a string and move it to the proxy to run it (but it is a security hole as anything can be run on the TRex server)
  -for more info see link:trex_stateless.html#_using_stateless_client_via_json_rpc[using_stateless_client_via_json_rpc]
  -
  -see link:https://github.com/zverevalexei/trex-http-proxy[here] for simple Web server proxy 
  +Take a look at link:trex_stateless.html#_using_stateless_client_via_json_rpc[using_stateless_client_via_json_rpc].
  +You can even dump the profile as a string and move it to the proxy to run it (Notice that it is a potential security hole, as you allow outside content to run as root on the TRex server).
  +
  +See link:https://github.com/zverevalexei/trex-http-proxy[here] an example for simple Web server proxy for interacting with TRex.
   
   ==== Where can I find a reference to RFC2544 using TRex
   
   link:https://gerrit.fd.io/r/gitweb?p=csit.git;a=tree;f=resources;hb=HEAD[here]
   
  -===  Installation
  -
  -==== During OS installation, screen is skewed / error Out of range / resolution not supported etc
  -
  -        * Fedora - during installation, choose "Troubleshooting" -> Install in basic graphic mode
  -        * Ubuntu - try Ubuntu server, which has textual installation
  -
  -==== How to determine relation between TRex ports and Router ports
  -
  -Run the TRex with following command and check incoming packet on router interfaces:
  -
  -[source,bash]
  -----
  -        sudo ./t-rex-64 -f cap2/dns.yaml --lm 1 --lo -l 1000 -d 100
  -----
  -
  -How to determine relation between Virtual OS ports and Hypervisor ports
  -
  -Compare the MACs address + name of interface, for example:
  -
  -[source,bash]
  -----
  -* > ifconfig +
  -*eth0*    Link encap:Ethernet  *HWaddr 00:0c:29:2a:99:b2* + 
  -          ...
  -
  -* > sudo ./dpdk_setup_ports.py -s +
  -*03:00.0* 'VMXNET3 Ethernet Controller' *if=eth0* drv=vmxnet3 unused=igb_uio
  -----
  -
  -[NOTE]
  -=====================================
  -If at TRex side the NICs are not visible to ifconfig, run: +
  -....
  -sudo ./dpdk_nic_bind.py -b <driver name> <1> <PCI address> <2>
  -....
  -
  -<1> driver name - vmxnet3 for VMXNET3 and e1000 for E1000
  -<2> 03:00.0 for example
  -
  -We are planning to add MACs to `./dpdk_setup_ports.py -s`
  -=====================================
  -
  -==== TRex traffic does not show up on Wireshark, so I can not capture the traffic from the TRex port
  -TRex uses DPDK which takes ownership of the ports, so using Wireshark is not possible. You can use switch with port mirroring to capture the traffic.
  -
  -==== How can I map betwean TRex ports-id (e.g. port 0) to physical router interface
  -Load TRex in a stateless mode and run traffic from each port 
  -
  -
  -
  +
  +
  
positive.code: 
  ===  General 
  
  ==== What are the common use cases for TRex?
  1. High scale benchmarks for Stateful features that inspect the traffic like Firewall/NAT/DPI
  2. Higg scale DDOS Attacks see link:https://www.incapsula.com/blog/trex-traffic-generator-software.html[Why TRex is Our Choice of Traffic Generator Software]
  3. High scale and flexible testing for Switch (e.g. RFC2544)- see link:https://wiki.fd.io/view/CSIT[fd.io]
  4. Scale tests for a number of clients/servers/VLAN for controller base testing 
  
  [NOTE]
  =====================================
  A feature that terminate TCP can't be tested yet
  =====================================
  
  ==== Who is using TRex?
  
  Cisco systems, Intel, Imperva,  Vasona networks and probably more
  
  ==== Can TRex run on the hypervisor with virtual NICS?
  
  Yes, currently there is a need to have 2-3 cores and 4GB of memory (4GB can reduce significantly if required)
  
  The limitations:
  
  1. Each dual NICS (e.g. VMXNET3) you can have maximum one core 
  2. vSwitch can limit the maximum PPS to ~1MPPS
  3. Latency results would not be accurate 
            
  ==== Why not all DPDK drivers are supported?
  1. flow-director accelerator is used  for each NIC type. 
  2. We have regression per each recommended NIC 
  
  ==== Is Cisco VIC supported?
  No. The driver does not pass our regression 
  
  ==== Is 100Gb/s NIC QSFP+ supported?
  Not yet, working on FM10K and Mellanox Connectx5 
  
  ==== Is there a GUI?
  The core team is not developing it. Have a look link:https://groups.google.com/forum/#!searchin/trex-tgn/sari%7Csort:relevance/trex-tgn/R92-N2Yjy2Q/DIUe06YCBgAJ[here] for one Stateless GUI from Exalt 
  
  
  ==== What is the maximum number of ports per TRex application?
  12 ports
  
  ==== I can't see all 12 ports statistics on TRex server 
  Right, we present only the first four ports statistics (global statistics are still ok, like total Tx) because there is no console space. 
  Use the GUI or API to get per port statistics.
  
  ==== Can I run multiple TRex servers on the same machine?
  Yes.
  
  ==== Can I use multiple type of ports with the same TRex server?
  No. 
  
  ==== TRex on a VM with PCI Pass through or bare metal?
  The bare metal will have a lower latency results
  
  ==== I want to report an issue
  
  Two options:
  1. Send email to trex.tgen@gmail.com 
  2. Open a defect here link:https://trex-tgn.cisco.com/youtrack[youtrack]
  
  
  ==== I have X710 NIC with 4x10Gb/sec ports and I can't get line rate
  Correct. x710da4fh with 4 ports of 10gb can reached maximum of 40MPPS (total for all the ports) and not 60MPPS with small packets (64B)
  still it is better than x520 (559 based) than can give ~30MPPS for two ports with one NIC
  
  ==== I have XL710 NIC with 2x40Gb/sec ports and I can't get line rate
  Correct. XL710-da2 with 2 ports of 40gb can reached maximum of 40MPPS/50Gb (total for all the ports) and not 60MPPS with small packets (64B)
  The two ports are for redundancy and can't reach 80Gb/sec line rate
  
  ==== I want to contribute 
  You are welcome, just create a gitHub pool request 
  
  ==== What is the release process?
  It is a continuous integration - the latest version is under 24/7 regression on a few setups.  Once we have enough content we release it to GitHub with a new tag.
  We don't send an email for every new release as it could be too frequent for some. 
  
  
  ===  Stateful 
  
  ==== TRex is connected to a Switch and we observe many drop packets at TRex startup
  A Switch might be configured with spanning tree enable. TRex initialized the Interface port at startup and making the spanning tree drop the packets. 
  Disable spanning tree can help. On Cisco nexus it would be `switch(config)#spanning-tree port type edge`
  This issue would be fixed when we consolidate Stateful and Stateless RPC
  ==== I can't see RX packets
  TRex does not support ARP yet, you should configure the DUT to send the packets to the TRex port MAC-ADDR. From Stateless mode, you can change the port mode to promiscuous
     
  ==== Why the performance is low?
  
  TRex performance depends on many factors:
  
  1. make sure trex_cfg.yaml is optimal see "platform" section in manual 
  2. More concurrent flows will reduce the performance 
  3. Short flows with one/two packets (e.g. cap2/dns.yaml ) will give the worst performance 
  
  ==== Is there a plan to add TCP stack?
  Yes
  
  ==== How can I run the YAML profile and capture the results to a pcap file?
  you can use the simulator. see link:trex_manual.html#_simulator[simulator]
  The output of the simulator can be loaded to Excel. The CPS can be tuned
  
  ==== I want to have more active flows, how can I do it
  Each profile will have the same active flows/Gb in TRex. DUT will have much more active flows in case of a UDP flow due to the nature of aging (DUT does not know when the flow ends while TRex knows)
  to artificialy increse the active flows - you can incress the IPG in the YAML file. or change the pcap file and 
         
  
  
  ===  Stateless 
  
  ==== Is pyATS supported as client framework 
  
  Yes. both Python 3 and Python 2
  
  ==== Python API does not work on my Mac with ZMQ library issue 
  
  We are using Python ZMQ wrapper. it needs to compiled per platform and we have a support for many platforms but not all of them
  You will need to build ZMQ for your platform if it is not part of the package.
  
  [source,Python]
  
negative.code: <1> cache 
  
  
  ==== I want to generate gratuitous ARP/NS IPv6.
  
  See example link:trex_stateless.html#_tutorial_field_engine_many_clients_with_arp[here]
  
  ==== How do I create a deterministic random stream variable
  
  