2 Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
5 Redistribution and use in source and binary forms, with or without
6 modification, are permitted provided that the following conditions
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
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.
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.
39 Application Programming Interface
42 Linux* kernel Address-Space Layout Randomization
45 Berkeley Software Distribution
51 Classless Inter-Domain Routing
54 The control plane is concerned with the routing of packets and with
55 providing a start or end point.
58 A core may include several lcores or threads if the processor supports
62 A set of libraries provided by the DPDK, including eal, ring, mempool,
63 mbuf, timers, and so on.
66 Central Processing Unit
69 Cyclic Redundancy Check
72 An *mbuf* carrying control data.
75 In contrast to the control plane, the data plane in a network architecture
76 are the layers involved when forwarding packets. These layers must be
77 highly optimized to achieve good performance.
80 Dual In-line Memory Module
83 A documentation generator used in the DPDK to generate the API reference.
86 Data Plane Development Kit
89 Dynamic Random Access Memory
92 The Environment Abstraction Layer (EAL) provides a generic interface that
93 hides the environment specifics from the applications and libraries. The
94 services expected from the EAL are: development kit loading and launching,
95 core affinity/ assignment procedures, system memory allocation/description,
96 PCI bus access, inter-partition communication.
102 Field Programmable Gate Array
111 High Precision Event Timer; a hardware timer that provides a precise time
112 reference on x86 platforms.
127 Internet Protocol version 4
130 Internet Protocol version 6
133 A logical execution unit of the processor, sometimes called a *hardware
137 Kernel Network Interface
158 The execution unit that executes the main() function and that launches
162 An mbuf is a data structure used internally to carry messages (mainly
163 network packets). The name is derived from BSD stacks. To understand the
164 concepts of packet buffers or mbuf, refer to *TCP/IP Illustrated, Volume 2:
168 Modified Exclusive Shared Invalid (CPU cache coherency protocol)
171 Maximum Transfer Unit
174 Network Interface Card
177 Out Of Order (execution of instructions within the CPU pipeline)
180 Non-uniform Memory Access
183 Peripheral Connect Interface
186 An abbreviation for the physical layer of the OSI model.
189 An *mbuf* carrying a network packet.
198 Read-Copy-Update algorithm, an alternative to simple rwlocks.
204 Random Early Detection
210 Run Time Environment. Provides a fast and simple framework for fast packet
211 processing, in a lightweight environment as a Linux* application and using
212 Poll Mode Drivers (PMDs) to increase speed.
218 Any *lcore* that is not the *master lcore*.
221 A physical CPU, that includes several *cores*.
224 Service Level Agreement
227 Single Rate Three Color Marking
230 Scheduler Round Trip Delay
236 In the DPDK, the target is a combination of architecture, machine,
237 executive environment and toolchain. For example:
238 i686-native-linuxapp-gcc.
241 Transmission Control Protocol
247 Translation Lookaside Buffer
253 Two Rate Three Color Marking
262 TUN and TAP are virtual network kernel devices.
265 Virtual Local Area Network
271 Weighted Random Early Detection