summaryrefslogtreecommitdiff
path: root/dev/roadmap.html
blob: 53344201abb9118fdebebf0496641eca59e719de (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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="utf-8" />
	<meta name=viewport content="width=device-width, initial-scale=1" />
	<title>DPDK roadmap</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="/">Home</a>
			<li><a href="/download">Download</a>
			<li><a href="/doc">Documentation</a>
			<li><a href="/dev" id="current">Development</a>
			<li><a href="/ml">Mailing Lists</a>
			<li><a href="/events">Events</a>
			<li><a href="/news">News</a>
			<li><a href="/about">About</a>
		</ul>
	</nav>
</header>
<section id="roadmap">
	<h2>Development roadmap</h2>
	<p>Major known features and milestones may be noted here.
	This list is obviously neither complete nor guaranteed.
	<h3 id="1808">Version 18.08 (2018 August)</h3>
	<ul>
		<li>new device specification (devargs) syntax
		<li>power management: turbo core thread pinning
		<li>power management: traffic pattern aware power control
		<li>power management: 100% busy traffic polling
		<li>add MPLS to rte_flow encapsulation API
		<li>add metadata matching in rte_flow API
		<li>mlx5: add representors (including for BlueField SmartNIC)
		<li>mlx5: support rte_flow port and VLAN actions
		<li>mlx5: support VXLAN and MPLS encapsulations
		<li>mlx4: support TSO offload for ConnectX-3 Pro
		<li>mlx: support 32-bit compilation
		<li>complete support of new descriptor status API for Intel PMDs
		<li>failure handler for PCIE hardware hotplug
		<li>virtual device hotplug
		<li>virtio IN_ORDER support
		<li>vhost/virtio: packed ring layout support
		<li>vhost: unified enqueue path
		<li>vhost: buffer vectors generalization
		<li>vhost-user extension to improve vDPA
		<li>tap TSO
		<li>tap and failsafe support in multi-process
		<li>SoftNIC restructuring to use Packet Framework
		<li>SoftNIC support for NAT
		<li>eventdev ordered and atomic queues for DPAA2
		<li>3DES support in AESNI_MB PMD
		<li>ISAL Compression PMD enhancements
		<li>Intel QuickAssist Technology Compression PMD
		<li>unified packet fragmentation API
		<li>libedit integration
		<li>noisy VNF forward mode in testpmd
	</ul>
	<h3 id="future">Nice to have - Future</h3>
	<ul>
		<li>multi-process rework
		<li>automatic UIO/VFIO binding
		<li>infiniband driver class (ibdev)
		<li>default configuration from files
		<li>generic white/blacklisting
	</ul>
	<h3 id="cycle">Cycle model</h3>
	<p>A typical release should be done after 3 months.
	<p>It is designed to allow DPDK to keep evolving at a rapid pace while
	giving enough opportunity to review, discuss and improve the contributions.
	<p>The merge window will open once the previous release is complete.
	First version of a new feature must be submitted before the proposal deadline.
	Features that miss this first period will be deferred until the next release.
	<p>Updated versions of patches (v2, v3, etc.) will be submitted to address comments.
	The new features must be properly reviewed, tested and accepted before the
	integration deadline. Otherwise, they will be postponed to the next releases.
	<p>At the end of the merge window, the first release candidate is out.
	<p>The last period is 1 month long and is dedicated to bug fixing.
	<h3 id="dates">Scheduling</h3>
	<p>18.08
	<ul>
		<li>Proposal deadline: June 8, 2018
		<li>Integration deadline: June 29, 2018
		<li>Release: August 1, 2018
	</ul>
	<p>18.11 (LTS)
	<ul>
		<li>Proposal deadline: September 7, 2018
		<li>Integration deadline: October 5, 2018
		<li>Release: November 2, 2018
	</ul>
	<h2 id="stable">Stable releases</h2>
	<p>There is a documentation page describing the
	<a href="/doc/guides/contributing/stable.html">guidelines of the stable releases</a>.
	<p>Stable point releases follow mainline releases.
	<p>After each -rc tag and after the final version, relevant bug fixes get
	backported by the stable maintainers into the respective branches in "bursts".
	<p>Developers can provide stable-specific patches by sending them
	to stable@dpdk.org only (avoiding dev@dpdk.org).
	<p>After all the relevant bugfixes have been backported,
	regression tests are ran, and if clear, the stable release is announced.
	<p>Typically a new stable release version follows a mainline release
	by 1-2 weeks, depending on the test results.
	<hr>
	<div style="overflow-x:auto">
	<table>
		<tr>
			<th>Next version</th>
			<th>Date</th>
			<th>End of life</th>
			<th>Maintainer</th>
		</tr>
		<tr>
			<td>16.11.8</td>
			<td>August 14, 2018</td>
			<td>November 2018 (LTS)</td>
			<td>Luca Boccassi</td>
		</tr>
		<tr>
			<td>17.11.3</td>
			<td>June 15, 2018</td>
			<td>November 2019 (LTS)</td>
			<td>Yuanhan Liu</td>
		</tr>
		<tr>
			<td>18.02.2</td>
			<td>June 15, 2018</td>
			<td>June 2018</td>
			<td>Luca Boccassi</td>
		</tr>
		<tr>
			<td>18.05.1</td>
			<td>August 24, 2018</td>
			<td>August 2018</td>
			<td>Christian Ehrhardt</td>
		</tr>
		<tr>
			<td>18.08.1</td>
			<td>November 16, 2018</td>
			<td>November 2018</td>
			<td>looking for volunteer</td>
		</tr>
		<tr>
			<td>18.11.1</td>
			<td>January 11, 2019</td>
			<td>November 2020 (LTS)</td>
			<td>Kevin Traynor</td>
		</tr>
	</table>
	</div>
</section>
<footer></footer>