diff --git a/docs/usecases/simpleperf/iperf3.rst b/docs/usecases/simpleperf/iperf3.rst
new file mode 100644
index 0000000..1d159d0
--- /dev/null
+++ b/docs/usecases/simpleperf/iperf3.rst
@@ -0,0 +1,237 @@
+.. _iperf3:
+
+Introduction
+============
+
+This tutorial shows how to use VPP use iperf3 and Trex to get some basic peformance
+numbers from a few basic configurations. Four examples are shown. In the first two
+examples, the **iperf3** tool is used to generate traffic, and in the last two examples
+the Cisco's `TRex Realistic Traffic Generator <http://trex-tgn.cisco.com/>`_ is used. For
+comparison purposes, the first example shows packet forwarding using ordinary kernel
+IP forwarding, and the second example shows packet forwarding using VPP.
+
+Three Intel Xeon processor platform systems are used to connect to the VPP host to pass traffic
+using **iperf3** and Cisco’s `TRex <http://trex-tgn.cisco.com/>`_.
+
+Intel 40 Gigabit Ethernet (GbE) network interface cards (NICs) are used to connect the hosts.
+
+
+Using Kernel Packet Forwarding with Iperf3
+===========================================
+
+In this test, 40 GbE Intel Ethernet Network Adapters are used to connect the three
+systems. Figure 1 illustrates this configuration.
+
+.. figure:: /_images/iperf3fig1.png
+
+Figure 1: VPP runs on a host that connects to two other systems via 40 GbE NICs.
+
+For comparison purposes, in the first example, we configure kernel forwarding in
+*csp2s22c03* and use the **iperf3** tool to measure network bandwidth between
+*csp2s22c03* and *net2s22c05*.
+
+In the second example, we start the VPP engine in *csp2s22c03* instead of using
+kernel forwarding. On *csp2s22c03*, we configure the system to have the addresses
+10.10.1.1/24 and 10.10.2.1/24 on the two 40-GbE NICs. To find all network interfaces
+available on the system, use the lshw Linux command to list all network interfaces
+and the corresponding slots *[0000:xx:yy.z]*.
+
+In this example, the 40-GbE interfaces are *ens802f0* and *ens802f1*.
+
+.. code-block:: console
+
+   csp2s22c03$ sudo lshw -class network -businfo
+   Bus info         Device        Class         Description
+   ========================================================
+   pci@0000:03:00.0  enp3s0f0     network       Ethernet Controller 10-Gig
+   pci@0000:03:00.1  enp3s0f1     network       Ethernet Controller 10-Gig
+   pci@0000:82:00.0  ens802f0     network       Ethernet Controller XL710
+   pci@0000:82:00.1  ens802f1     network       Ethernet Controller XL710
+   pci@0000:82:00.0  ens802f0d1   network       Ethernet interface
+   pci@0000:82:00.1  ens802f1d1   network       Ethernet interface
+
+
+Configure the system *csp2s22c03* to have 10.10.1.1 and 10.10.2.1 on the two 40-GbE NICs
+*ens802f0* and *ens802f1*, respectively.
+
+.. code-block:: console
+
+   csp2s22c03$ sudo ip addr add 10.10.1.1/24 dev ens802f0
+   csp2s22c03$ sudo ip link set dev ens802f0 up
+   csp2s22c03$ sudo ip addr add 10.10.2.1/24 dev ens802f1
+   csp2s22c03$ sudo ip link set dev ens802f1 up
+    
+List the route table:
+
+.. code-block:: console
+
+   csp2s22c03$ route
+   Kernel IP routing table
+   Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
+   default         jf111-ldr1a-530 0.0.0.0         UG    0      0        0 enp3s0f1
+   default         192.168.0.50    0.0.0.0         UG    100    0        0 enp3s0f0
+   10.10.1.0       *               255.255.255.0   U     0      0        0 ens802f0
+   10.10.2.0       *               255.255.255.0   U     0      0        0 ens802f1
+   10.23.3.0       *               255.255.255.0   U     0      0        0 enp3s0f1
+   link-local      *               255.255.0.0     U     1000   0        0 enp3s0f1
+   192.168.0.0     *               255.255.255.0   U     100    0        0 enp3s0f0
+
+.. code-block:: console
+
+   csp2s22c03$ ip route
+   default via 10.23.3.1 dev enp3s0f1
+   default via 192.168.0.50 dev enp3s0f0  proto static  metric 100
+   10.10.1.0/24 dev ens802f0  proto kernel  scope link  src 10.10.1.1
+   10.10.2.0/24 dev ens802f1  proto kernel  scope link  src 10.10.2.1
+   10.23.3.0/24 dev enp3s0f1  proto kernel  scope link  src 10.23.3.67
+   169.254.0.0/16 dev enp3s0f1  scope link  metric 1000
+   192.168.0.0/24 dev enp3s0f0  proto kernel scope link src 192.168.0.142 metric 100
+
+On *csp2s22c04*, we configure the system to have the address 10.10.1.2 and use
+the interface *ens802* to route IP packets 10.10.2.0/24. Use the lshw Linux
+command to list all network interfaces and the corresponding slots *[0000:xx:yy.z]*.
+
+For example, the interface *ens802d1* *(ens802)* is connected to slot *[82:00.0]*:
+
+.. code-block:: console
+
+   csp2s22c04$ sudo lshw -class network -businfo
+   Bus info          Device      Class       Description
+   =====================================================
+   pci@0000:03:00.0  enp3s0f0    network     Ethernet Controller 10-Gigabit X540-AT2
+   pci@0000:03:00.1  enp3s0f1    network     Ethernet Controller 10-Gigabit X540-AT2
+   pci@0000:82:00.0  ens802d1    network     Ethernet Controller XL710 for 40GbE QSFP+
+   pci@0000:82:00.0  ens802      network     Ethernet interface
+
+For kernel forwarding, set 10.10.1.2 to the interface *ens802*, and add a static
+route for IP packet 10.10.2.0/24:
+
+.. code-block:: console
+
+   csp2s22c04$ sudo ip addr add 10.10.1.2/24 dev ens802
+   csp2s22c04$ sudo ip link set dev ens802 up
+   csp2s22c04$ sudo ip route add 10.10.2.0/24 via 10.10.1.1
+
+.. code-block:: console
+
+   csp2s22c04$ ifconfig
+   enp3s0f0  Link encap:Ethernet  HWaddr a4:bf:01:00:92:73
+             inet addr:10.23.3.62  Bcast:10.23.3.255  Mask:255.255.255.0
+             inet6 addr: fe80::a6bf:1ff:fe00:9273/64 Scope:Link
+             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
+             RX packets:3411 errors:0 dropped:0 overruns:0 frame:0
+             TX packets:1179 errors:0 dropped:0 overruns:0 carrier:0
+             collisions:0 txqueuelen:1000
+             RX bytes:262230 (262.2 KB)  TX bytes:139975 (139.9 KB)
+   
+   ens802    Link encap:Ethernet  HWaddr 68:05:ca:2e:76:e0
+             inet addr:10.10.1.2  Bcast:0.0.0.0  Mask:255.255.255.0
+             inet6 addr: fe80::6a05:caff:fe2e:76e0/64 Scope:Link
+             UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
+             RX packets:0 errors:0 dropped:0 overruns:0 frame:0
+             TX packets:40 errors:0 dropped:0 overruns:0 carrier:0
+             collisions:0 txqueuelen:1000
+             RX bytes:0 (0.0 B)  TX bytes:5480 (5.4 KB)
+   
+   lo        Link encap:Local Loopback
+             inet addr:127.0.0.1  Mask:255.0.0.0
+             inet6 addr: ::1/128 Scope:Host
+             UP LOOPBACK RUNNING  MTU:65536  Metric:1
+             RX packets:31320 errors:0 dropped:0 overruns:0 frame:0
+             TX packets:31320 errors:0 dropped:0 overruns:0 carrier:0
+             collisions:0 txqueuelen:1
+             RX bytes:40301788 (40.3 MB)  TX bytes:40301788 (40.3 MB)
+
+After setting the route, we can ping from *csp2s22c03* to *csp2s22c04*, and vice versa:
+
+.. code-block:: console
+
+   csp2s22c03$ ping 10.10.1.2 -c 3
+   PING 10.10.1.2 (10.10.1.2) 56(84) bytes of data.
+   64 bytes from 10.10.1.2: icmp_seq=1 ttl=64 time=0.122 ms
+   64 bytes from 10.10.1.2: icmp_seq=2 ttl=64 time=0.109 ms
+   64 bytes from 10.10.1.2: icmp_seq=3 ttl=64 time=0.120 ms
+
+.. code-block:: console
+
+   csp2s22c04$ ping 10.10.1.1 -c 3
+   PING 10.10.1.1 (10.10.1.1) 56(84) bytes of data.
+   64 bytes from 10.10.1.1: icmp_seq=1 ttl=64 time=0.158 ms
+   64 bytes from 10.10.1.1: icmp_seq=2 ttl=64 time=0.096 ms
+   64 bytes from 10.10.1.1: icmp_seq=3 ttl=64 time=0.102 ms
+
+Similarly, on *net2s22c05*, we configure the system to have the address *10.10.2.2*
+and use the interface *ens803f0* to route IP packets *10.10.1.0/24*. Use the lshw
+Linux command to list all network interfaces and the corresponding slots
+*[0000:xx:yy.z]*. For example, the interface *ens803f0* is connected to slot *[87:00.0]*:
+
+.. code-block:: console
+
+   NET2S22C05$ sudo lshw -class network -businfo
+   Bus info          Device      Class          Description
+   ========================================================
+   pci@0000:03:00.0  enp3s0f0    network    Ethernet Controller 10-Gigabit X540-AT2
+   pci@0000:03:00.1  enp3s0f1    network    Ethernet Controller 10-Gigabit X540-AT2
+   pci@0000:81:00.0  ens787f0    network    82599 10 Gigabit TN Network Connection
+   pci@0000:81:00.1  ens787f1    network    82599 10 Gigabit TN Network Connection
+   pci@0000:87:00.0  ens803f0    network    Ethernet Controller XL710 for 40GbE QSFP+
+   pci@0000:87:00.1  ens803f1    network    Ethernet Controller XL710 for 40GbE QSFP+
+
+For kernel forwarding, set 10.10.2.2 to the interface ens803f0, and add a static
+route for IP packet 10.10.1.0/24:
+
+.. code-block:: console
+
+   NET2S22C05$ sudo ip addr add 10.10.2.2/24 dev ens803f0
+   NET2S22C05$ sudo ip link set dev ens803f0 up
+   NET2S22C05$ sudo ip route add 10.10.1.0/24 via 10.10.2.1
+
+After setting the route, you can ping from *csp2s22c03* to *net2s22c05*, and vice
+versa. However, in order to ping between *net2s22c05* and *csp2s22c04*, kernel IP
+forwarding in *csp2s22c03* has to be enabled:
+
+.. code-block:: console
+
+   csp2s22c03$ sysctl net.ipv4.ip_forward
+   net.ipv4.ip_forward = 0
+   csp2s22c03$ echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
+   csp2s22c03$ sysctl net.ipv4.ip_forward
+   net.ipv4.ip_forward = 1
+
+If successful, verify that now you can ping between *net2s22c05* and *csp2s22c04*:
+
+.. code-block:: console
+
+   NET2S22C05$ ping 10.10.1.2 -c 3
+   PING 10.10.1.2 (10.10.1.2) 56(84) bytes of data.
+   64 bytes from 10.10.1.2: icmp_seq=1 ttl=63 time=0.239 ms
+   64 bytes from 10.10.1.2: icmp_seq=2 ttl=63 time=0.224 ms
+   64 bytes from 10.10.1.2: icmp_seq=3 ttl=63 time=0.230 ms
+
+We use the **iperf3** utility to measure network bandwidth between hosts. In this
+test, we download the **iperf3** utility tool on both *net2s22c05* and *csp2s22c04*.
+On *csp2s22c04*, we start the **iperf3** server with “iperf3 –s”, and then on *net2s22c05*,
+we start the **iperf3** client to connect to the server:
+
+.. code-block:: console
+
+   NET2S22C05$ iperf3 -c 10.10.1.2
+   Connecting to host 10.10.1.2, port 5201
+   [  4] local 10.10.2.2 port 54074 connected to 10.10.1.2 port 5201
+   [ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
+   [  4]   0.00-1.00   sec   936 MBytes  7.85 Gbits/sec  2120    447 KBytes
+   [  4]   1.00-2.00   sec   952 MBytes  7.99 Gbits/sec  1491    611 KBytes
+   [  4]   2.00-3.00   sec   949 MBytes  7.96 Gbits/sec  2309    604 KBytes
+   [  4]   3.00-4.00   sec   965 MBytes  8.10 Gbits/sec  1786    571 KBytes
+   [  4]   4.00-5.00   sec   945 MBytes  7.93 Gbits/sec  1984    424 KBytes
+   [  4]   5.00-6.00   sec   946 MBytes  7.94 Gbits/sec  1764    611 KBytes
+   [  4]   6.00-7.00   sec   979 MBytes  8.21 Gbits/sec  1499    655 KBytes
+   [  4]   7.00-8.00   sec   980 MBytes  8.22 Gbits/sec  1182    867 KBytes
+   [  4]   8.00-9.00   sec  1008 MBytes  8.45 Gbits/sec  945    625 KBytes
+   [  4]   9.00-10.00  sec  1015 MBytes  8.51 Gbits/sec  1394    611 KBytes
+   - - - - - - - - - - - - - - - - - - - - - - - - -
+   [ ID] Interval           Transfer     Bandwidth       Retr
+   [  4]   0.00-10.00  sec  9.45 GBytes  8.12 Gbits/sec  16474             sender
+   [  4]   0.00-10.00  sec  9.44 GBytes  8.11 Gbits/sec                  receiver
+   
+   iperf Done.
