xref: /dpdk/doc/guides/sample_app_ug/index.rst (revision a56335925919d26c81dec8accf31c39d2f790c5a)
1..  BSD LICENSE
2    Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
3    All rights reserved.
4
5    Redistribution and use in source and binary forms, with or without
6    modification, are permitted provided that the following conditions
7    are met:
8
9    * Redistributions of source code must retain the above copyright
10    notice, this list of conditions and the following disclaimer.
11    * Redistributions in binary form must reproduce the above copyright
12    notice, this list of conditions and the following disclaimer in
13    the documentation and/or other materials provided with the
14    distribution.
15    * Neither the name of Intel Corporation nor the names of its
16    contributors may be used to endorse or promote products derived
17    from this software without specific prior written permission.
18
19    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31Sample Applications User Guide
32==============================
33
34|today|
35
36**Contents**
37
38.. toctree::
39    :maxdepth: 2
40    :numbered:
41
42    intro
43    cmd_line
44    exception_path
45    hello_world
46    ip_frag
47    ipv4_multicast
48    ip_reassembly
49    kernel_nic_interface
50    l2_forward_real_virtual
51    l3_forward
52    l3_forward_power_man
53    l3_forward_access_ctrl
54    l3_forward_virtual
55    link_status_intr
56    load_balancer
57    multi_process
58    qos_metering
59    qos_scheduler
60    intel_quickassist
61    quota_watermark
62    timer
63    packet_ordering
64    vmdq_dcb_forwarding
65    vhost
66    netmap_compatibility
67    internet_proto_ip_pipeline
68    test_pipeline
69    dist_app
70    vm_power_management
71
72**Figures**
73
74:ref:`Figure 1.Packet Flow <figure_1>`
75
76:ref:`Figure 2.Kernel NIC Application Packet Flow <figure_2>`
77
78:ref:`Figure 3.Performance Benchmark Setup (Basic Environment) <figure_3>`
79
80:ref:`Figure 4.Performance Benchmark Setup (Virtualized Environment) <figure_4>`
81
82:ref:`Figure 5.Load Balancer Application Architecture <figure_5>`
83
84:ref:`Figure 5.Example Rules File <figure_5_1>`
85
86:ref:`Figure 6.Example Data Flow in a Symmetric Multi-process Application <figure_6>`
87
88:ref:`Figure 7.Example Data Flow in a Client-Server Symmetric Multi-process Application <figure_7>`
89
90:ref:`Figure 8.Master-slave Process Workflow <figure_8>`
91
92:ref:`Figure 9.Slave Process Recovery Process Flow <figure_9>`
93
94:ref:`Figure 10.QoS Scheduler Application Architecture <figure_10>`
95
96:ref:`Figure 11.Intel®QuickAssist Technology Application Block Diagram <figure_11>`
97
98:ref:`Figure 12.Pipeline Overview <figure_12>`
99
100:ref:`Figure 13.Ring-based Processing Pipeline Performance Setup <figure_13>`
101
102:ref:`Figure 14.Threads and Pipelines <figure_14>`
103
104:ref:`Figure 15.Packet Flow Through the VMDQ and DCB Sample Application <figure_15>`
105
106:ref:`Figure 16.QEMU Virtio-net (prior to vhost-net) <figure_16>`
107
108:ref:`Figure 17.Virtio with Linux* Kernel Vhost <figure_17>`
109
110:ref:`Figure 18.Vhost-net Architectural Overview <figure_18>`
111
112:ref:`Figure 19.Packet Flow Through the vhost-net Sample Application <figure_19>`
113
114:ref:`Figure 20.Packet Flow on TX in DPDK-testpmd <figure_20>`
115
116:ref:`Figure 21.Test Pipeline Application <figure_21>`
117
118:ref:`Figure 22.Performance Benchmarking Setup (Basic Environment) <figure_22>`
119
120:ref:`Figure 23.Distributor Sample Application Layout <figure_23>`
121
122:ref:`Figure 24.High level Solution <figure_24>`
123
124:ref:`Figure 25.VM request to scale frequency <figure_25>`
125
126**Tables**
127
128:ref:`Table 1.Output Traffic Marking <table_1>`
129
130:ref:`Table 2.Entity Types <table_2>`
131
132:ref:`Table 3.Table Types <table_3>`
133