-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy pathxdp.bib
444 lines (389 loc) · 14.4 KB
/
xdp.bib
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
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
@Misc{cisco18:_trex_traff_gener,
url = {https://trex-tgn.cisco.com/},
year = {2018},
title = {{TRex} Traffic Generator},
author = {Cisco}
}
@misc{dpdk,
url = {https://www.dpdk.org/},
year = {2018},
title = {Data Plane Development Kit},
author = {Linux Foundation}
}
@Conference{dumazet17:_busyp,
booktitle = {NetDev 2.1 - The Technical Conference on Linux Networking},
year = {2017},
title = {Busypolling next generation},
author = {Eric Dumazet}
}
@Conference{cloudflare-ddos,
booktitle = {NetDev 2.1 - The Technical Conference on Linux Networking},
year = {2017},
title = {XDP in practice: integrating XDP in our DDoS mitigation pipeline},
author = {Gilberto Bertin}
}
@Conference{xdp-offload,
booktitle = {NetDev 1.2 - The Technical Conference on Linux Networking},
year = {2016},
title = {{eBPF/XDP hardware offload to SmartNICs}},
author = {Jakub Kicinski and Nic Viljoen}
}
@misc{katran,
url = {https://github.com/facebookincubator/katran},
year = {2018},
title = {Katran source code repository},
author = {Facebook}
}
@inproceedings{mccanne_bsd_1993,
title = {The {BSD} {Packet} {Filter}: {A} {New} {Architecture} for {User}-level {Packet} {Capture}},
volume = {93},
shorttitle = {The {BSD} {Packet} {Filter}},
booktitle = {{USENIX} winter},
author = {McCanne, Steven and Jacobson, Van},
year = {1993}
}
@inproceedings{napi,
author = {Jamal Hadi Salim and Robert Olsson and Alexey Kuznetsov},
title = {Beyond Softnet},
booktitle = {Proceedings of the 5th Annual Linux Showcase \& Conference},
publisher = {USENIX},
year = 2001,
url = {https://wiki.linuxfoundation.org/networking/napi}
}
@misc{netperf,
author = {Rick Jones},
title = {Netperf},
howpublished = {Open source benchmarking software},
year = 2018,
url = {http://www.netperf.org/}
}
@Misc{test-data,
year = {2018},
title = {XDP-paper online appendix},
author = {Toke Høiland-Jørgensen and Jesper Dangaard Brouer and Daniel Borkmann and John Fastabend and Tom Herbert and David Ahern and David Miller},
url = {https://github.com/tohojo/xdp-paper},
}
@inproceedings{rizzo2012netmap,
title={Netmap: a novel framework for fast packet {I/O}},
author={Rizzo, Luigi},
booktitle={21st USENIX Security Symposium (USENIX Security 12)},
year={2012}
}
@inproceedings{openvswitch,
title={The Design and Implementation of {Open vSwitch}},
author={Pfaff, Ben and Pettit, Justin and Koponen, Teemu and Jackson, Ethan J and Zhou, Andy and Rajahalme, Jarno and Gross, Jesse and Wang, Alex and Stringer, Joe and Shelar, Pravin and others},
booktitle={Proceedings of the 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI '15)},
year={2015}
}
@inproceedings{martins2014clickos,
title={{ClickOS} and the art of network function virtualization},
author={Martins, Joao and Ahmed, Mohamed and Raiciu, Costin and Olteanu, Vladimir and Honda, Michio and Bifulco, Roberto and Huici, Felipe},
booktitle={Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation},
year={2014},
organization={USENIX Association}
}
@article{hwang2015netvm,
title={{NetVM}: high performance and flexible networking using virtualization on commodity platforms},
author={Hwang, Jinho and Ramakrishnan, K K\_ and Wood, Timothy},
journal={IEEE Transactions on Network and Service Management},
volume={12},
number={1},
year={2015},
publisher={IEEE}
}
@inproceedings{rizzo2012vale,
title={Vale, a switched ethernet for virtual machines},
author={Rizzo, Luigi and Lettieri, Giuseppe},
booktitle={Proceedings of the 8th international conference on Emerging networking experiments and technologies},
year={2012},
organization={ACM}
}
@inproceedings{han2012megapipe,
title={{MegaPipe}: A New Programming Interface for Scalable Network {I/O}},
author={Han, Sangjin and Marshall, Scott and Chun, Byung-Gon and Ratnasamy, Sylvia},
booktitle={Proceedings of the 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI '12)},
year={2012}
}
@inproceedings{marian2012netslices,
title={{NetSlices}: scalable multi-core packet processing in user-space},
author={Marian, Tudor and Lee, Ki Suh and Weatherspoon, Hakim},
booktitle={Proceedings of the eighth ACM/IEEE symposium on Architectures for networking and communications systems},
year={2012},
organization={ACM}
}
@inproceedings{deri2009modern,
title={Modern packet capture and analysis: Multi-core, multi-gigabit, and beyond},
author={Deri, Luca},
booktitle={the 11th IFIP/IEEE International Symposium on Integrated Network Management (IM)},
year={2009}
}
@inproceedings{lockwood2007netfpga,
title={{NetFPGA}--an open platform for gigabit-rate network switching and routing},
author={Lockwood, John W and McKeown, Nick and Watson, Greg and Gibb, Glen and Hartke, Paul and Naous, Jad and Raghuraman, Ramanan and Luo, Jianying},
booktitle={IEEE International Conference on Microelectronic Systems Education},
year={2007},
organization={IEEE}
}
@inproceedings{han2010packetshader,
title={{PacketShader}: a {GPU}-accelerated software router},
author={Han, Sangjin and Jang, Keon and Park, KyoungSoo and Moon, Sue},
booktitle={ACM SIGCOMM Computer Communication Review},
volume={40},
number={4},
year={2010},
organization={ACM}
}
@misc{pfringzc,
url={https://www.ntop.org/products/packet-capture/pf_ring/pf_ring-zc-zero-copy/},
title={{PF\_RING ZC (Zero Copy)}},
year=2018,
author={Ntop project}
}
@misc{openonload,
url={https://www.openonload.org/},
title={{OpenOnload}},
year=2018,
author={Solarflare Communications Inc}
}
@article{bosshart2014p4,
title={P4: Programming protocol-independent packet processors},
author={Bosshart, Pat and Daly, Dan and Gibb, Glen and Izzard, Martin and McKeown, Nick and Rexford, Jennifer and Schlesinger, Cole and Talayco, Dan and Vahdat, Amin and Varghese, George and others},
journal={ACM SIGCOMM Computer Communication Review},
volume={44},
number={3},
year={2014},
publisher={ACM}
}
@inproceedings{gallenmuller_comparison_2015,
author = {Gallenm\"{u}ller, Sebastian and Emmerich, Paul and Wohlfart, Florian and Raumer, Daniel and Carle, Georg},
title = {Comparison of Frameworks for High-Performance Packet {IO}},
booktitle = {Proceedings of the Eleventh ACM/IEEE Symposium on Architectures for Networking and Communications Systems},
series = {ANCS '15},
year = {2015},
isbn = {978-1-4673-6632-8},
location = {Oakland, California, USA},
pages = {29--38},
numpages = {10},
acmid = {2772729},
publisher = {IEEE Computer Society},
keywords = {dpdk, netmap, performance measurement, pf_ring zc, software packet processing},
}
@misc{fwd-example,
title={{XDP} forwarding example},
url={https://elixir.bootlin.com/linux/v4.18-rc1/source/samples/bpf/xdp_fwd_kern.c},
author={David Ahern},
year=2018
}
@inproceedings{miano2018creating,
title={Creating Complex Network Service with {eBPF}: Experience and Lessons Learned},
author={Miano, Sebastiano and Bertrone, Matteo and Risso, Fulvio and Tumolo, Massimo and Bernal, Mauricio V{\'a}squez},
booktitle={IEEE International Conference on High Performance Switching and Routing},
year={2018}
}
@misc{generic-xdp,
title={Generic {XDP}},
author={David S. Miller},
url={https://git.kernel.org/torvalds/c/b5cdae3291f7},
year=2017
}
@article{good-bad-wifi,
title = {The {Good}, the {Bad} and the {WiFi}: {Modern} {AQMs} in a residential setting},
volume = {89},
issn = {1389-1286},
shorttitle = {The {Good}, the {Bad} and the {WiFi}},
urldate = {2015-09-24},
journal = {Computer Networks},
author = {Høiland-Jørgensen, Toke and Hurtig, Per and Brunstrom, Anna},
month = oct,
year = {2015},
}
@misc{txdp,
author={Tom Herbert},
title={Initial thoughts on {TXDP}},
url={https://www.spinics.net/lists/netdev/msg407537.html},
year=2016
}
@misc{kernel-tracing,
title={Linux Tracing Technologies},
year=2018,
url={https://www.kernel.org/doc/html/latest/trace/index.html},
author={Linux documentation authors}
}
@misc{perf,
url={https://perf.wiki.kernel.org/index.php/Main_Page},
title={perf: {Linux} profiling with performance counters},
year=2018,
author={perf authors}
}
@misc{bcc,
url={https://www.iovisor.org/technology/bcc},
title={{BCC BPF Compiler Collection}},
author={IO Visor},
year=2018
}
@misc{bpftool,
url={https://elixir.bootlin.com/linux/v4.18-rc1/source/tools/bpf/bpftool/Documentation/bpftool.rst},
title={bpftool manual},
year=2018,
author={bpftool authors}
}
@misc{libbpf,
url={https://elixir.bootlin.com/linux/v4.18-rc1/source/tools/lib/bpf},
title={libbpf source code},
year=2018,
author={libbpf authors}
}
@techreport{linguaglossa2017high,
title={High-speed software data plane via vectorized packet processing},
author={Linguaglossa, Leonardo and Rossi, Dario and Pontarelli, Salvatore and Barach, Dave and Marjon, Damjan and Pfister, Pierre},
year={2017},
institution={Telecom ParisTech}
}
@inproceedings{kirchner2016augustus,
title={Augustus: a {CCN} router for programmable networks},
author={Kirchner, Davide and Ferdous, Raihana and Cigno, Renato Lo and Maccari, Leonardo and Gallo, Massimo and Perino, Diego and Saino, Lorenzo},
booktitle={Proceedings of the 3rd ACM Conference on Information-Centric Networking},
year={2016},
organization={ACM}
}
@inproceedings{santiago2012wire,
title={Wire-speed statistical classification of network traffic on commodity hardware},
author={Santiago del Rio, Pedro M and Rossi, Dario and Gringoli, Francesco and Nava, Lorenzo and Salgarelli, Luca and Aracil, Javier},
booktitle={Proceedings of the 2012 Internet Measurement Conference},
year={2012},
organization={ACM}
}
@inproceedings{mansilha2015hierarchical,
title={Hierarchical content stores in high-speed {ICN} routers: Emulation and prototype implementation},
author={Mansilha, Rodrigo B and Saino, Lorenzo and Barcellos, Marinho P and Gallo, Massimo and Leonardi, Emilio and Perino, Diego and Rossi, Dario},
booktitle={Proceedings of the 2nd ACM Conference on Information-Centric Networking},
year={2015},
organization={ACM}
}
@article{morris1999click,
title={The {Click} modular router},
author={Morris, Robert and Kohler, Eddie and Jannotti, John and Kaashoek, M Frans},
journal={ACM SIGOPS Operating Systems Review},
volume={33},
number={5},
year={1999},
publisher={ACM}
}
@inproceedings{dobrescu2009routebricks,
title={{RouteBricks}: exploiting parallelism to scale software routers},
author={Dobrescu, Mihai and Egi, Norbert and Argyraki, Katerina and Chun, Byung-Gon and Fall, Kevin and Iannaccone, Gianluca and Knies, Allan and Manesh, Maziar and Ratnasamy, Sylvia},
booktitle={Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles},
year={2009},
organization={ACM}
}
@inproceedings{emmerich2015moongen,
title={Moongen: A scriptable high-speed packet generator},
author={Emmerich, Paul and Gallenm{\"u}ller, Sebastian and Raumer, Daniel and Wohlfart, Florian and Carle, Georg},
booktitle={Proceedings of the 2015 Internet Measurement Conference},
year={2015},
organization={ACM}
}
@article{peter2016arrakis,
title={Arrakis: The operating system is the control plane},
author={Peter, Simon and Li, Jialin and Zhang, Irene and Ports, Dan RK and Woos, Doug and Krishnamurthy, Arvind and Anderson, Thomas and Roscoe, Timothy},
journal={ACM Transactions on Computer Systems (TOCS)},
volume={33},
number={4},
year={2016},
publisher={ACM}
}
@inproceedings{llvm,
title={{LLVM}: A compilation framework for lifelong program analysis \& transformation},
author={Lattner, Chris and Adve, Vikram},
booktitle={Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization},
year={2004},
organization={IEEE Computer Society}
}
@misc{bird,
title={{BIRD} Internet Routing Daemon},
url={https://bird.network.cz/},
author={CZ.nic},
year=2018
}
@misc{frr,
title={{FRRouting}},
url={https://frrouting.org/},
year=2018,
author={The Linux Foundation}
}
@misc{cilium-docs,
url={https://cilium.readthedocs.io/en/latest/bpf/},
title={{BPF and XDP Reference Guide}},
author={Cilium Authors},
year=2018
}
@inproceedings {stackmap,
author = {Kenichi Yasukata and Michio Honda and Douglas Santry and Lars Eggert},
title = {{StackMap}: Low-Latency Networking with the {OS} Stack and Dedicated {NICs}},
booktitle = {2016 {USENIX} Annual Technical Conference ({USENIX} {ATC} 16)},
year = {2016},
isbn = {978-1-931971-30-0},
pages = {43--56},
publisher = {{USENIX} Association},
}
@inproceedings{sandstorm,
title={Network stack specialization for performance},
author={Marinos, Ilias and Watson, Robert NM and Handley, Mark},
booktitle={ACM SIGCOMM Computer Communication Review},
volume={44},
number={4},
pages={175--186},
year={2014},
organization={ACM}
}
@inproceedings{belay2014ix,
title={{IX}: A protected dataplane operating system for high throughput and low latency},
author={Belay, Adam and Prekas, George and Klimovic, Ana and Grossman, Samuel and Kozyrakis, Christos and Bugnion, Edouard},
booktitle={Proceedings of the 11th USENIX Symposium on Operating System Design and Implementation (OSDI '14)},
year={2014},
organization={USENIX}
}
@inproceedings{jeong2014mtcp,
title={{mTCP}: a Highly Scalable User-level {TCP} Stack for Multicore Systems.},
author={Jeong, EunYoung and Woo, Shinae and Jamshed, Muhammad Asim and Jeong, Haewon and Ihm, Sunghwan and Han, Dongsu and Park, KyoungSoo},
booktitle={Proceedings of the 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI '14)},
volume={14},
pages={489--502},
year={2014}
}
@misc{p4xdp,
url={https://github.com/vmware/p4c-xdp},
title={p4c-xdp},
author={VMWare},
year=2018
}
@misc{cilium,
url={https://github.com/cilium/cilium},
title={Cilium software},
author={Cilium Authors},
year={2018}
}
@misc{suricata,
url={https://suricata.readthedocs.io/en/latest/capture-hardware/ebpf-xdp.html},
title={Suricata - {eBPF} and {XDP}},
author={Suricata authors},
year={2018}
}
@misc{ovs-xdp,
url={https://mail.openvswitch.org/pipermail/ovs-dev/2018-August/351295.html},
title={[ovs-dev] {AF\_XDP} support for {OVS}},
author={William Tu},
year={2018}
}
@misc{dpdk-xdp,
url={http://mails.dpdk.org/archives/dev/2018-February/091502.html},
title={[dpdk-dev] {PMD} driver for {AF\_XDP}},
author={Qi Zhang},
year={2018}
}
@misc{contrail,
url={https://github.com/Juniper/contrail-vrouter},
title={{Juniper Contrail Virtual Router}},
author={Juniper Networks},
year={2018}
}