blob: 8f41d1d454effff48f6da62d41b2460338a57fb8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
Copyright (c) 2014-2018, Linaro Limited
Copyright (c) 2019, Nokia
All rights reserved.
SPDX-License-Identifier: BSD-3-Clause
1. Intro
OpenDataPlane API generic Linux implementation. Directory linux-generic
contains the header and source files and additional platform test scripts
for ODP linux-generic implementation.
2. Build
See DEPENDENCIES file about system requirements and dependencies to external
libraries/packages. It contains also more detailed build instructions.
Generally, ODP is built with these three steps:
./bootstrap
./configure
make
3. Configuration file
See config/README for application runtime configuration options.
4. Packet I/O
When passing a packet I/O device name to odp_pktio_open() one can explicitly
specify the used implementation internal pktio type. The pktio type can be
selected by adding a pktio type prefix to the device name separated by a
colon (<pktio_type>:<if_name>).
E.g.
socket:eth1
netmap:eth2
The supported pktio types are:
dpdk
ipc
loop
netmap
null
pcap
socket
socket_mmap
tap
5. Random data
On x86 ODP_RANDOM_TRUE type random data is generated using rdseed [1] via
compiler builtin functions. If OpenSSL is not available or its use for
generating random data is disabled with the --disable-openssl-rand
configure option, ODP_RANDOM_CRYPTO type random data is generated using
rdrand [1].
Note that there may be issues with the quality or security of rdrand and
rdseed. [2]
6. References
[1] Intel Digital Random Number Generator (DRNG) Software Implementation
Guide. John P Mechalas, 17 October 2018.
https://www.intel.com/content/www/us/en/developer/articles/guide/intel-digital-random-number-generator-drng-software-implementation-guide.html
[2] RDRAND. Wikipedia, 29 September 2021.
https://en.wikipedia.org/wiki/RDRAND#Reception
|