DPDK  25.11.0
doc/api/doxy-api-index.md
1 API
2 ===
3 
4 <!--
5  SPDX-License-Identifier: BSD-3-Clause
6  Copyright(c) 2013-2017 6WIND S.A.
7 -->
8 
9 The public API headers are grouped by topics:
10 
11 - **device**:
12  [dev](@ref rte_dev.h),
13  [ethdev](@ref rte_ethdev.h),
14  [ethctrl](@ref rte_eth_ctrl.h),
15  [rte_flow](@ref rte_flow.h),
16  [rte_tm](@ref rte_tm.h),
17  [rte_mtr](@ref rte_mtr.h),
18  [bbdev](@ref rte_bbdev.h),
19  [cryptodev](@ref rte_cryptodev.h),
20  [security](@ref rte_security.h),
21  [compressdev](@ref rte_compressdev.h),
22  [compress](@ref rte_comp.h),
23  [regexdev](@ref rte_regexdev.h),
24  [mldev](@ref rte_mldev.h),
25  [dmadev](@ref rte_dmadev.h),
26  [gpudev](@ref rte_gpudev.h),
27  [eventdev](@ref rte_eventdev.h),
28  [event_eth_rx_adapter](@ref rte_event_eth_rx_adapter.h),
29  [event_eth_tx_adapter](@ref rte_event_eth_tx_adapter.h),
30  [event_timer_adapter](@ref rte_event_timer_adapter.h),
31  [event_crypto_adapter](@ref rte_event_crypto_adapter.h),
32  [event_dma_adapter](@ref rte_event_dma_adapter.h),
33  [event_vector_adapter](@ref rte_event_vector_adapter.h),
34  [rawdev](@ref rte_rawdev.h),
35  [metrics](@ref rte_metrics.h),
36  [bitrate](@ref rte_bitrate.h),
37  [latency](@ref rte_latencystats.h),
38  [devargs](@ref rte_devargs.h),
39  [PCI](@ref rte_pci.h),
40  [vdev](@ref rte_bus_vdev.h),
41  [vfio](@ref rte_vfio.h)
42 
43 - **device specific**:
44  [softnic](@ref rte_eth_softnic.h),
45  [bond](@ref rte_eth_bond.h),
46  [vhost](@ref rte_vhost.h),
47  [vdpa](@ref rte_vdpa.h),
48  [ixgbe](@ref rte_pmd_ixgbe.h),
49  [i40e](@ref rte_pmd_i40e.h),
50  [iavf](@ref rte_pmd_iavf.h),
51  [bnxt](@ref rte_pmd_bnxt.h),
52  [cnxk](@ref rte_pmd_cnxk.h),
53  [cnxk_crypto](@ref rte_pmd_cnxk_crypto.h),
54  [cnxk_eventdev](@ref rte_pmd_cnxk_eventdev.h),
55  [cnxk_mempool](@ref rte_pmd_cnxk_mempool.h),
56  [dpaa](@ref rte_pmd_dpaa.h),
57  [dpaa2](@ref rte_pmd_dpaa2.h),
58  [mlx5](@ref rte_pmd_mlx5.h),
59  [dpaa2_mempool](@ref rte_dpaa2_mempool.h),
60  [dpaa2_cmdif](@ref rte_pmd_dpaa2_cmdif.h),
61  [dpaax_qdma](@ref rte_pmd_dpaax_qdma.h),
62  [crypto_scheduler](@ref rte_cryptodev_scheduler.h),
63  [dlb2](@ref rte_pmd_dlb2.h),
64  [ifpga](@ref rte_pmd_ifpga.h)
65 
66 - **memory**:
67  [per-lcore](@ref rte_per_lcore.h),
68  [lcore variables](@ref rte_lcore_var.h),
69  [memseg](@ref rte_memory.h),
70  [memzone](@ref rte_memzone.h),
71  [mempool](@ref rte_mempool.h),
72  [malloc](@ref rte_malloc.h),
73  [memcpy](@ref rte_memcpy.h)
74 
75 - **timers**:
76  [cycles](@ref rte_cycles.h),
77  [timer](@ref rte_timer.h),
78  [alarm](@ref rte_alarm.h)
79 
80 - **locks**:
81  [atomic](@ref rte_atomic.h),
82  [mcslock](@ref rte_mcslock.h),
83  [pflock](@ref rte_pflock.h),
84  [rwlock](@ref rte_rwlock.h),
85  [seqcount](@ref rte_seqcount.h),
86  [seqlock](@ref rte_seqlock.h),
87  [spinlock](@ref rte_spinlock.h),
88  [ticketlock](@ref rte_ticketlock.h),
89  [RCU](@ref rte_rcu_qsbr.h)
90 
91 - **CPU arch**:
92  [branch prediction](@ref rte_branch_prediction.h),
93  [cache prefetch](@ref rte_prefetch.h),
94  [SIMD](@ref rte_vect.h),
95  [byte order](@ref rte_byteorder.h),
96  [CPU flags](@ref rte_cpuflags.h),
97  [CPU pause](@ref rte_pause.h),
98  [I/O access](@ref rte_io.h),
99  [power management](@ref rte_power_intrinsics.h)
100 
101 - **CPU multicore**:
102  [interrupts](@ref rte_interrupts.h),
103  [launch](@ref rte_launch.h),
104  [lcore](@ref rte_lcore.h),
105  [service cores](@ref rte_service.h),
106  [keepalive](@ref rte_keepalive.h),
107  [power/freq](@ref rte_power_cpufreq.h),
108  [power/uncore](@ref rte_power_uncore.h),
109  [PMD power](@ref rte_power_pmd_mgmt.h)
110 
111 - **layers**:
112  [ethernet](@ref rte_ether.h),
113  [MACsec](@ref rte_macsec.h),
114  [ARP](@ref rte_arp.h),
115  [HIGIG](@ref rte_higig.h),
116  [ICMP](@ref rte_icmp.h),
117  [ESP](@ref rte_esp.h),
118  [IPsec](@ref rte_ipsec.h),
119  [IPsec group](@ref rte_ipsec_group.h),
120  [IPsec SA](@ref rte_ipsec_sa.h),
121  [IPsec SAD](@ref rte_ipsec_sad.h),
122  [IPv4](@ref rte_ip4.h),
123  [IPv6](@ref rte_ip6.h),
124  [frag/reass](@ref rte_ip_frag.h),
125  [UDP](@ref rte_udp.h),
126  [SCTP](@ref rte_sctp.h),
127  [TCP](@ref rte_tcp.h),
128  [TLS](@ref rte_tls.h),
129  [DTLS](@ref rte_dtls.h),
130  [GTP](@ref rte_gtp.h),
131  [GRO](@ref rte_gro.h),
132  [GSO](@ref rte_gso.h),
133  [GRE](@ref rte_gre.h),
134  [MPLS](@ref rte_mpls.h),
135  [VXLAN](@ref rte_vxlan.h),
136  [Geneve](@ref rte_geneve.h),
137  [eCPRI](@ref rte_ecpri.h),
138  [PDCP hdr](@ref rte_pdcp_hdr.h),
139  [PDCP](@ref rte_pdcp.h),
140  [L2TPv2](@ref rte_l2tpv2.h),
141  [PPP](@ref rte_ppp.h),
142  [IB](@ref rte_ib.h)
143 
144 - **QoS**:
145  [metering](@ref rte_meter.h),
146  [scheduler](@ref rte_sched.h),
147  [RED congestion](@ref rte_red.h)
148 
149 - **routing**:
150  [LPM IPv4 route](@ref rte_lpm.h),
151  [LPM IPv6 route](@ref rte_lpm6.h),
152  [RIB IPv4](@ref rte_rib.h),
153  [RIB IPv6](@ref rte_rib6.h),
154  [FIB IPv4](@ref rte_fib.h),
155  [FIB IPv6](@ref rte_fib6.h)
156 
157 - **hashes**:
158  [hash](@ref rte_hash.h),
159  [jhash](@ref rte_jhash.h),
160  [thash](@ref rte_thash.h),
161  [thash_gfni](@ref rte_thash_gfni.h),
162  [FBK hash](@ref rte_fbk_hash.h),
163  [CRC hash](@ref rte_hash_crc.h)
164 
165 - **classification**
166  [reorder](@ref rte_reorder.h),
167  [dispatcher](@ref rte_dispatcher.h),
168  [distributor](@ref rte_distributor.h),
169  [EFD](@ref rte_efd.h),
170  [ACL](@ref rte_acl.h),
171  [member](@ref rte_member.h),
172  [BPF](@ref rte_bpf.h)
173 
174 - **containers**:
175  [mbuf](@ref rte_mbuf.h),
176  [mbuf pool ops](@ref rte_mbuf_pool_ops.h),
177  [ring](@ref rte_ring.h),
178  [soring](@ref rte_soring.h),
179  [stack](@ref rte_stack.h),
180  [tailq](@ref rte_tailq.h),
181  [bitset](@ref rte_bitset.h),
182  [bitmap](@ref rte_bitmap.h)
183 
184 - **packet framework**:
185  * [port](@ref rte_port.h):
186  [ethdev](@ref rte_port_ethdev.h),
187  [ring](@ref rte_port_ring.h),
188  [frag](@ref rte_port_frag.h),
189  [reass](@ref rte_port_ras.h),
190  [sched](@ref rte_port_sched.h),
191  [src/sink](@ref rte_port_source_sink.h)
192  * [table](@ref rte_table.h):
193  [lpm IPv4](@ref rte_table_lpm.h),
194  [lpm IPv6](@ref rte_table_lpm_ipv6.h),
195  [ACL](@ref rte_table_acl.h),
196  [hash](@ref rte_table_hash.h),
197  [array](@ref rte_table_array.h),
198  [stub](@ref rte_table_stub.h)
199  * [pipeline](@ref rte_pipeline.h)
200  [port_in_action](@ref rte_port_in_action.h)
201  [table_action](@ref rte_table_action.h)
202  * SWX pipeline:
203  [control](@ref rte_swx_ctl.h),
204  [extern](@ref rte_swx_extern.h),
205  [pipeline](@ref rte_swx_pipeline.h)
206  * SWX port:
207  [port](@ref rte_swx_port.h),
208  [ethdev](@ref rte_swx_port_ethdev.h),
209  [fd](@ref rte_swx_port_fd.h),
210  [ring](@ref rte_swx_port_ring.h),
211  [src/sink](@ref rte_swx_port_source_sink.h)
212  * SWX table:
213  [table](@ref rte_swx_table.h),
214  [table_em](@ref rte_swx_table_em.h)
215  [table_wm](@ref rte_swx_table_wm.h)
216  * [graph](@ref rte_graph.h):
217  [graph_worker](@ref rte_graph_worker.h),
218  [graph_feature_arc](@ref rte_graph_feature_arc.h),
219  [graph_feature_arc_worker](@ref rte_graph_feature_arc_worker.h)
220  * graph_nodes:
221  [eth_node](@ref rte_node_eth_api.h),
222  [ip4_node](@ref rte_node_ip4_api.h),
223  [ip6_node](@ref rte_node_ip6_api.h),
224  [udp4_input_node](@ref rte_node_udp4_input_api.h),
225  [mbuf_dynfield](@ref rte_node_mbuf_dynfield.h)
226 
227 - **basic**:
228  [bitops](@ref rte_bitops.h),
229  [approx fraction](@ref rte_approx.h),
230  [random](@ref rte_random.h),
231  [checksum](@ref rte_cksum.h),
232  [config file](@ref rte_cfgfile.h),
233  [key/value args](@ref rte_kvargs.h),
234  [argument parsing](@ref rte_argparse.h),
235  [ptr_compress](@ref rte_ptr_compress.h),
236  [string](@ref rte_string_fns.h),
237  [thread](@ref rte_thread.h)
238 
239 - **debug**:
240  [jobstats](@ref rte_jobstats.h),
241  [telemetry](@ref rte_telemetry.h),
242  [PMU](@ref rte_pmu.h),
243  [pcapng](@ref rte_pcapng.h),
244  [pdump](@ref rte_pdump.h),
245  [hexdump](@ref rte_hexdump.h),
246  [debug](@ref rte_debug.h),
247  [log](@ref rte_log.h),
248  [errno](@ref rte_errno.h),
249  [trace](@ref rte_trace.h),
250  [trace_point](@ref rte_trace_point.h)
251 
252 - **misc**:
253  [EAL config](@ref rte_eal.h),
254  [common](@ref rte_common.h),
255  [experimental APIs](@ref rte_compat.h),
256  [version](@ref rte_version.h)
257 
258 - **tests**:
259  [**DTS**](@dts_api_main_page)