summaryrefslogtreecommitdiff
path: root/index.html
blob: 7fee8b52c6c1ce632c731a5df5a506733fa53298 (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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<meta name=viewport content="width=device-width, initial-scale=1" />
		<title>DPDK</title>
		<link rel="stylesheet" href="/reset.css" />
		<link rel="stylesheet" href="/layout.css" />
		<link rel="stylesheet" href="/content.css" />
		<script type="text/javascript">
			var _gaq = _gaq || [];
			_gaq.push(['_setAccount', 'UA-39229303-1']);
			_gaq.push(['_setDomainName', 'dpdk.org']);
			_gaq.push(['_setAllowLinker', true]);
			_gaq.push(['_trackPageview']);
			(function() {
				var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
				ga.src = '//www.google-analytics.com/ga.js';
				var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
			})();
		</script>
	</head>
	<body>
		<header>
			<h1><a href="//dpdk.org/"><img src="/logos/dpdk.png"
				alt="DPDK: Data Plane Development Kit"></a></h1>
			<nav>
				<ul>
					<li><a href="/" id="current">Home</a></li>
					<li><a href="/download">Download</a></li>
					<li><a href="/doc">Documentation</a></li>
					<li><a href="/dev">Development</a></li>
					<li><a href="/ml">Mailing Lists</a></li>
					<li><a href="/events">Events</a></li>
					<li><a href="/news">News</a></li>
					<li><a href="/about">About</a></li>
				</ul>
			</nav>
		</header>
		<section id="home">
			<p>DPDK is a Linux Foundation Project,
			developed by hundreds of contributors,
			supported by strong leading <a href="/about#members">members</a>,
			and used in a growing <a href="/about/ecosystem">ecosystem</a>.</p>

			<a href="about/Venky" style="display:block; margin:2em -1.5em 0 -1.5em;
			padding:1em; background:linear-gradient(to right,white,black); text-align:right;">
			in memoriam<img src="https://fast.dpdk.org/events/images/Venky-Venkatesan-.jpg"
			style="display: inline-block; border-radius:50%; margin-left:1em;"></a>

			<h2>What it is</h2>
			<p>DPDK is a set of libraries and drivers
			for <strong>fast packet processing</strong>.
			<p>It is designed to run on <strong>any processors</strong>.
			The first supported CPU was Intel x86 and it is now extended to
			IBM POWER and ARM.
			<p>It runs mostly in Linux <strong>userland</strong>.
			A FreeBSD port is available for a subset of DPDK features.</p>
			<p>DPDK is an <a href="http://opensource.org/licenses/BSD-3-Clause">Open Source BSD licensed</a> project.
			The most recent patches and enhancements, provided by the community,
			are available in <a href="/browse/dpdk/log/">master branch</a>.</p>
			<h3>Main libraries</h3>
			<ul>
				<li>multicore framework</li>
				<li>huge page memory</li>
				<li>ring buffers</li>
				<li>poll-mode drivers
					for <a href="/doc/nics">networking</a>
					, <a href="/doc/guides/cryptodevs/">crypto</a>
					and <a href="/doc/guides/eventdevs/">eventdev</a></li>
			</ul>
			<h3>Usage</h3>
			<p>These libraries can be used to:</p>
			<ul>
				<li>receive and send packets within the minimum number of CPU cycles (usually less than 80 cycles)</li>
				<li>develop fast packet capture algorithms (tcpdump-like)</li>
				<li>run third-party fast path stacks</li>
			</ul>
			<p>Some packet processing functions have been benchmarked up to
			hundreds million frames per second, using 64-byte packets with a PCIe NIC.</p>
			<h2>What it is not</h2>
			<p>DPDK is not a networking stack and does not provide functions such as
			Layer-3 forwarding, IPsec, firewalling, etc.
			Within the tree, however, various
			<a href="/browse/dpdk/tree/examples/">application examples are included</a>
			to help developing such features.</p>
			<p>Some support and services are provided by <a href="/about">several companies</a>.</p>
		</section>
		<footer></footer>
	</body>
</html>