SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
Running	
  Monitoring	
  Applica0ons	
  
on	
  Accelerated	
  Capture	
  Engines	
  
Nicola	
  Bonelli	
  
N.	
  Bonelli,	
  R.G	
  Garroppo,	
  L.	
  Gazzarrini,	
  S.	
  Giordano,	
  G.	
  
Procissi,	
  F.	
  Russo,	
  G.	
  Volpi	
  
Agenda	
  
•  Capture	
  engines	
  overview	
  
•  What’s	
  new	
  in	
  PFQ	
  (2.0)	
  
•  Accelerated	
  pcap	
  library	
  
– PF_RING,	
  PF_RING+DNA,	
  NETMAP,	
  PFQ	
  
•  Pcap-­‐perf:	
  a	
  tool	
  for	
  benchmarking	
  pcap	
  apps	
  
•  Experimental	
  results	
  
Speed	
  maXers…	
  
Accelerated	
  Capture	
  Engine 	
  	
  
•  Linux	
  is	
  provided	
  with	
  a	
  default	
  capture	
  engine	
  
–  the	
  PF_PACKET	
  socket	
  
•  Because	
  of	
  speed,	
  other	
  capture	
  engines	
  emerged:	
  
–  2004:	
  PF_RING	
  
•  designed	
  for	
  single	
  core,	
  beXer	
  performance	
  than	
  the	
  then	
  
PF_PACKET	
  
–  2011:	
  PFQ	
  
•  first	
  to	
  address	
  mul0-­‐core	
  architecture	
  and	
  mul0-­‐queues	
  NICs	
  
(Best	
  Paper	
  Award	
  @PAM2012)	
  
–  2012:	
  PF_RING-­‐DNA	
  
•  accelerated	
  drivers	
  (Intel)	
  
–  2012:	
  NetMap	
  
•  accelerated	
  drivers	
  (Intel,Broadcom)	
  (Best	
  Paper	
  Award	
  @Usenix	
  
ATC’12)	
  
…	
  but	
  what	
  happens	
  on	
  these	
  tracks?	
  
What’s	
  new	
  in	
  PFQ	
  2.0	
  
•  From	
  capture	
  engine	
  to	
  monitoring	
  framework…	
  
•  Improved	
  performance	
  
–  ~14.8	
  Mpps	
  single	
  user-­‐space	
  thread	
  
•  Improved	
  features:	
  
–  compliant	
  with	
  a	
  plethora	
  of	
  NICs:	
  pfq-­‐oma0c	
  
–  monitoring	
  groups	
  and	
  classes	
  
–  in-­‐kernel	
  extensible	
  engine	
  for	
  packet	
  steering:	
  
dispatching,	
  copying,	
  cloning,	
  filtering	
  
–  na0ve	
  bindings:	
  C,	
  C++11,	
  Haskell	
  (more	
  to	
  come)	
  
–  per-­‐group	
  filtering:	
  BFP,	
  vlan	
  (un-­‐tagging)	
  
–  pcap	
  library	
  
Feature	
  comparison	
  
PF_PACKET	
   PF_RING	
  5.x	
   PF_RING-­‐DNA	
   NETMAP	
  -­‐	
  0813	
   PFQ	
  2.0	
  
NIC	
   *	
   *,	
  PF-­‐AWARE	
  
(Intel,	
  Broadcom)	
  
only	
  Intel	
  1/10G	
   Intel	
  1/10G,	
  
forcedeth	
  
*	
  	
  accelerated	
  
Driver	
  compat.	
   *	
   yes,	
  non	
  accel.	
   no	
   no	
   yes,	
  dynamic	
  
mul0-­‐core	
   -­‐	
   Hardware	
  (RSS)	
   Hardware	
  (RSS)	
   Hardware	
  (RSS)	
   Hw	
  RSS	
  +	
  sog	
  
mul0-­‐queue	
   yes	
  (poor)	
   yes	
   yes	
   yes	
   yes	
  
na0ve	
  binding	
   C	
   C	
   C	
   C	
   C,	
  C++11,	
  
Haskell,	
  Java,	
  
Python	
  
groups	
   -­‐	
   -­‐	
   -­‐	
   -­‐	
   yes	
  
class	
   -­‐	
   -­‐	
   -­‐	
   -­‐	
   yes	
  
concurrent	
  mon.	
   yes	
   yes	
   commercial	
  ?	
   -­‐	
   yes	
  
clustering	
   -­‐	
   yes	
   -­‐	
   -­‐	
   yes	
  (MT,	
  group)	
  
steering	
   -­‐	
   -­‐	
   commercial	
   -­‐	
   yes	
  (MT,	
  group)	
  
STM	
  state	
   -­‐	
   -­‐	
   -­‐	
   -­‐	
   work	
  in	
  
progress	
  
Feature	
  comparison	
  
PF_PACKET	
   PF_RING	
  5.x	
   PF_RING-­‐DNA	
   NETMAP	
  -­‐	
  0813	
   PFQ	
  2.0	
  
Pcap	
  library	
   yes	
   yes	
   yes	
   buggy/incomplete	
   yes	
  
BPF	
  (filters)	
   yes	
  (MT)	
   yes	
  (MT)	
   yes	
  (user-­‐space)	
   -­‐	
   yes	
  (MT,	
  group)	
  
vlan	
  filters	
   -­‐	
   yes	
   yes	
  (hw	
  Intel)	
   -­‐	
   yes	
  (MT,	
  group)	
  
vlan	
  untagging	
   -­‐	
   -­‐	
  	
   -­‐	
   -­‐	
   yes	
  (MT,	
  sog.)	
  
Intel	
  hw	
  filters	
   -­‐	
   yes	
   yes	
   -­‐	
   No	
  
bloom	
  filters	
   -­‐	
   -­‐	
   -­‐	
   -­‐	
   work	
  in	
  progress	
  
Accelerated	
  PCAP	
  library	
  
•  Pcap	
  library	
  is	
  the	
  standard	
  de-­‐facto	
  interface	
  for	
  packet	
  capture	
  
•  Accelerated	
  capture	
  engines	
  provide	
  their	
  own	
  pcap	
  library:	
  
–  Both	
  PF_RING	
  and	
  PF_RING-­‐DNA	
  provide	
  a	
  complete	
  accelerated	
  
version	
  
–  NetMap	
  provides	
  an	
  experimental	
  and	
  incomplete	
  pcap	
  support	
  
•  BPF	
  is	
  missing	
  
•  PFQ	
  provides	
  a	
  complete	
  implementa0on	
  
–  PFQ	
  C-­‐API	
  mapped	
  over	
  pcap	
  interface	
  wherever	
  possible,	
  
implemented	
  as	
  environment	
  variables	
  otherwise	
  
–  Clustering	
  is	
  enabled	
  specifying	
  mul0ple	
  NICs	
  in	
  colon-­‐separated	
  
fashion,	
  steering	
  by	
  means	
  of	
  PFQ_STEER	
  variable	
  
PFQ_GROUP=10	
  PFQ_STEER=ipv4-­‐addr	
  tcpdump	
  –n	
  –i	
  eth2:eth3	
  
PFQ_GROUP=10	
  PFQ_STEER=ipv4-­‐addr	
  tcpdump	
  –n	
  –i	
  eth2:eth3	
  
Pcap-­‐perf	
  
•  Pcap-­‐perf	
  is	
  a	
  C++11	
  applica0on	
  designed	
  for	
  
benchmarking	
  capture	
  engines	
  through	
  pcap	
  interfaces	
  
•  Support	
  for	
  mul0-­‐threads,	
  BPF	
  filter	
  and	
  plug-­‐ins:	
  
plug-­‐in	
   kind	
  
Null	
   packet	
  counter	
  
IP	
  checksum	
   light	
  CPU	
  computa0on	
  
MD5	
   CPU	
  computa0on	
  
SHA256	
   heavy	
  CPU	
  computa0on	
  
Bloom	
  Filter	
   memory	
  (linear)	
  
Protocol	
  Classifica0on	
   memory	
  tree	
  
TCP/UDP	
  flow	
  counter	
   memory	
  (std::unordered_set)	
  
Test-­‐bed	
  and	
  measurements	
  
•  Intel	
  Xeon	
  6	
  cores	
  x5650	
  @2.67Ghz,	
  16G	
  Ram	
  +	
  Intel	
  82599	
  10G	
  (Debian	
  Wheezy)	
  
•  Accelerated	
  drivers	
  
–  PF_RING:	
  ixgbe	
  3.11.33	
  PF_RING-­‐aware	
  
–  PF_RING-­‐DNA:	
  ixgbe	
  3.10.16-­‐DNA	
  driver	
  
–  Netmap:	
  ixgbe	
  driver	
  shipped	
  with	
  the	
  netmap	
  package	
  
–  PFQ:	
  intel	
  ixgbe	
  3.11.33	
  vanilla,	
  recompiled	
  through	
  pfq-­‐oma0c	
  
•  Best	
  Interrupt	
  affinity	
  (MSI-­‐X)	
  
–  4	
  or	
  5	
  kernel	
  threads	
  (NAPI)	
  bound	
  to	
  fixed	
  core	
  (RSS),	
  1	
  or	
  2	
  user-­‐space	
  threads	
  bound	
  to	
  
other	
  core(s)	
  
•  Traffic	
  is	
  generated	
  with	
  randomized	
  IP	
  addresses,	
  64/128	
  bytes	
  long	
  UDP	
  packets	
  
–  using	
  both	
  PF_DIRECT	
  and	
  PF_RING-­‐DNA	
  
10 Gb link
mascara monsters
Coun0ng	
  packets	
  is	
  useless	
  
(na0ve	
  speed)	
  
	
   	
   	
  uint64_t counter = 0;!
! ! !for(;;)!
! ! !{!
! ! !counter++;!
! ! !}!
1	
  thread	
  user-­‐space	
  (Intel	
  10G)	
  
pcap	
  library	
  
Pcap	
  library,	
  1	
  thread	
  counter	
  
Pcap,	
  1	
  thread	
  counter,	
  BPF=udp	
  
Pcap,	
  1	
  thread	
  counter,	
  BPF=hXp	
  ||	
  udp	
  	
  
pcap-­‐perf	
  
pcap-­‐perf	
  
pcap-­‐perf	
  with	
  BPF	
  =	
  udp	
  
pcap-­‐perf	
  (2	
  threads)	
  
tcpdump	
  
tcpdump	
  –s	
  64	
  –i	
  dev	
  –w	
  /ramdisk/dump.pcap	
  
(300M@14.8Mpps)	
  
tcpdump	
  –s	
  138	
  –i	
  dev	
  –w	
  /ramdisk/dump.pcap	
  
(100M@~8Mpps)	
  
tcpdump	
  –i	
  dev	
  –w	
  /ramdisk/dump.pcap	
  vlan	
  	
  
(5	
  Gbps)	
  
tcpdump	
  –i	
  dev	
  –w	
  /ramdisk/dump.pcap	
  ip	
  host	
  
192.168.0.10	
  (voip	
  call)	
  
Thanks	
  for	
  the	
  aXen0on!	
  
nicola.bonelli@cnit.it	
  

Mais conteúdo relacionado

Mais procurados

nftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewallnftables - the evolution of Linux Firewall
nftables - the evolution of Linux FirewallMarian Marinov
 
How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.Naoto MATSUMOTO
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersBrendan Gregg
 
Netmap presentation
Netmap presentationNetmap presentation
Netmap presentationAmir Razmjou
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and moreBrendan Gregg
 
IP Address Lookup By Using GPU
IP Address Lookup By Using GPUIP Address Lookup By Using GPU
IP Address Lookup By Using GPUJino Antony
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_mapslcplcp1
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01Hajime Tazaki
 
Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)micchie
 
Java Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsJava Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsBrendan Gregg
 
Measuring a 25 and 40Gb/s Data Plane
Measuring a 25 and 40Gb/s Data PlaneMeasuring a 25 and 40Gb/s Data Plane
Measuring a 25 and 40Gb/s Data PlaneOpen-NFP
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughThomas Graf
 
Berkeley Packet Filters
Berkeley Packet FiltersBerkeley Packet Filters
Berkeley Packet FiltersKernel TLV
 
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...PROIDEA
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Brendan Gregg
 
Debug dpdk process bottleneck & painpoints
Debug dpdk process bottleneck & painpointsDebug dpdk process bottleneck & painpoints
Debug dpdk process bottleneck & painpointsVipin Varghese
 

Mais procurados (20)

nftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewallnftables - the evolution of Linux Firewall
nftables - the evolution of Linux Firewall
 
How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.
 
Linux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF SuperpowersLinux 4.x Tracing Tools: Using BPF Superpowers
Linux 4.x Tracing Tools: Using BPF Superpowers
 
Linux Network Stack
Linux Network StackLinux Network Stack
Linux Network Stack
 
DPDK KNI interface
DPDK KNI interfaceDPDK KNI interface
DPDK KNI interface
 
Netmap presentation
Netmap presentationNetmap presentation
Netmap presentation
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
 
IP Address Lookup By Using GPU
IP Address Lookup By Using GPUIP Address Lookup By Using GPU
IP Address Lookup By Using GPU
 
Xdp and ebpf_maps
Xdp and ebpf_mapsXdp and ebpf_maps
Xdp and ebpf_maps
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01Library Operating System for Linux #netdev01
Library Operating System for Linux #netdev01
 
Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)
 
Java Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame GraphsJava Performance Analysis on Linux with Flame Graphs
Java Performance Analysis on Linux with Flame Graphs
 
Measuring a 25 and 40Gb/s Data Plane
Measuring a 25 and 40Gb/s Data PlaneMeasuring a 25 and 40Gb/s Data Plane
Measuring a 25 and 40Gb/s Data Plane
 
Userspace networking
Userspace networkingUserspace networking
Userspace networking
 
LinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking WalkthroughLinuxCon 2015 Linux Kernel Networking Walkthrough
LinuxCon 2015 Linux Kernel Networking Walkthrough
 
Berkeley Packet Filters
Berkeley Packet FiltersBerkeley Packet Filters
Berkeley Packet Filters
 
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
 
Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016Broken Linux Performance Tools 2016
Broken Linux Performance Tools 2016
 
Debug dpdk process bottleneck & painpoints
Debug dpdk process bottleneck & painpointsDebug dpdk process bottleneck & painpoints
Debug dpdk process bottleneck & painpoints
 

Destaque

PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)Nicola Bonelli
 
Functional approach to packet processing
Functional approach to packet processingFunctional approach to packet processing
Functional approach to packet processingNicola Bonelli
 
Types, classes and concepts
Types, classes and conceptsTypes, classes and concepts
Types, classes and conceptsNicola Bonelli
 
Understanding DPDK algorithmics
Understanding DPDK algorithmicsUnderstanding DPDK algorithmics
Understanding DPDK algorithmicsDenys Haryachyy
 

Destaque (9)

PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)
 
Functional approach to packet processing
Functional approach to packet processingFunctional approach to packet processing
Functional approach to packet processing
 
Cat's anatomy
Cat's anatomyCat's anatomy
Cat's anatomy
 
PFQ@ PAM12
PFQ@ PAM12PFQ@ PAM12
PFQ@ PAM12
 
Types, classes and concepts
Types, classes and conceptsTypes, classes and concepts
Types, classes and concepts
 
PF_DIRECT@TMA12
PF_DIRECT@TMA12PF_DIRECT@TMA12
PF_DIRECT@TMA12
 
Understanding DPDK algorithmics
Understanding DPDK algorithmicsUnderstanding DPDK algorithmics
Understanding DPDK algorithmics
 
Vagrant
VagrantVagrant
Vagrant
 
Understanding DPDK
Understanding DPDKUnderstanding DPDK
Understanding DPDK
 

Semelhante a PFQ@ 10th Italian Networking Workshop (Bormio)

The Next Generation Firewall for Red Hat Enterprise Linux 7 RC
The Next Generation Firewall for Red Hat Enterprise Linux 7 RCThe Next Generation Firewall for Red Hat Enterprise Linux 7 RC
The Next Generation Firewall for Red Hat Enterprise Linux 7 RCThomas Graf
 
[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4Open Networking Summits
 
VMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld
 
BUD17-300: Journey of a packet
BUD17-300: Journey of a packetBUD17-300: Journey of a packet
BUD17-300: Journey of a packetLinaro
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdfJunZhao68
 
Shak larry-jeder-perf-and-tuning-summit14-part1-final
Shak larry-jeder-perf-and-tuning-summit14-part1-finalShak larry-jeder-perf-and-tuning-summit14-part1-final
Shak larry-jeder-perf-and-tuning-summit14-part1-finalTommy Lee
 
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PC Cluster Consortium
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking WalkthroughThomas Graf
 
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Michelle Holley
 
CentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and UpdateCentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and UpdateTom Herbert
 
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...PROIDEA
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Danielle Womboldt
 
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...Ceph Community
 
CAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementCAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementGanesan Narayanasamy
 
3.INTEL.Optane_on_ceph_v2.pdf
3.INTEL.Optane_on_ceph_v2.pdf3.INTEL.Optane_on_ceph_v2.pdf
3.INTEL.Optane_on_ceph_v2.pdfhellobank1
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...PROIDEA
 
Shak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalShak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalTommy Lee
 
Building your own CGN boxes with Linux
Building your own CGN boxes with LinuxBuilding your own CGN boxes with Linux
Building your own CGN boxes with LinuxMaximilan Wilhelm
 

Semelhante a PFQ@ 10th Italian Networking Workshop (Bormio) (20)

The Next Generation Firewall for Red Hat Enterprise Linux 7 RC
The Next Generation Firewall for Red Hat Enterprise Linux 7 RCThe Next Generation Firewall for Red Hat Enterprise Linux 7 RC
The Next Generation Firewall for Red Hat Enterprise Linux 7 RC
 
[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4
 
VMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep Dive
 
BUD17-300: Journey of a packet
BUD17-300: Journey of a packetBUD17-300: Journey of a packet
BUD17-300: Journey of a packet
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
 
Shak larry-jeder-perf-and-tuning-summit14-part1-final
Shak larry-jeder-perf-and-tuning-summit14-part1-finalShak larry-jeder-perf-and-tuning-summit14-part1-final
Shak larry-jeder-perf-and-tuning-summit14-part1-final
 
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking Walkthrough
 
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
 
CentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and UpdateCentOS NFV SIG Introduction and Update
CentOS NFV SIG Introduction and Update
 
Tma ph d_school_2011
Tma ph d_school_2011Tma ph d_school_2011
Tma ph d_school_2011
 
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...
PLNOG14: Architektura oraz rozwiązywanie problemów na routerach IOS-XE - Piot...
 
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph Performance by Leveraging Intel Optane and...
 
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...
Ceph Day Beijing - Optimizing Ceph performance by leveraging Intel Optane and...
 
CAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementCAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablement
 
3.INTEL.Optane_on_ceph_v2.pdf
3.INTEL.Optane_on_ceph_v2.pdf3.INTEL.Optane_on_ceph_v2.pdf
3.INTEL.Optane_on_ceph_v2.pdf
 
Can FPGAs Compete with GPUs?
Can FPGAs Compete with GPUs?Can FPGAs Compete with GPUs?
Can FPGAs Compete with GPUs?
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
 
Shak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalShak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-final
 
Building your own CGN boxes with Linux
Building your own CGN boxes with LinuxBuilding your own CGN boxes with Linux
Building your own CGN boxes with Linux
 

Último

Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGSIVASHANKAR N
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 

Último (20)

Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 

PFQ@ 10th Italian Networking Workshop (Bormio)

  • 1. Running  Monitoring  Applica0ons   on  Accelerated  Capture  Engines   Nicola  Bonelli   N.  Bonelli,  R.G  Garroppo,  L.  Gazzarrini,  S.  Giordano,  G.   Procissi,  F.  Russo,  G.  Volpi  
  • 2. Agenda   •  Capture  engines  overview   •  What’s  new  in  PFQ  (2.0)   •  Accelerated  pcap  library   – PF_RING,  PF_RING+DNA,  NETMAP,  PFQ   •  Pcap-­‐perf:  a  tool  for  benchmarking  pcap  apps   •  Experimental  results  
  • 4. Accelerated  Capture  Engine     •  Linux  is  provided  with  a  default  capture  engine   –  the  PF_PACKET  socket   •  Because  of  speed,  other  capture  engines  emerged:   –  2004:  PF_RING   •  designed  for  single  core,  beXer  performance  than  the  then   PF_PACKET   –  2011:  PFQ   •  first  to  address  mul0-­‐core  architecture  and  mul0-­‐queues  NICs   (Best  Paper  Award  @PAM2012)   –  2012:  PF_RING-­‐DNA   •  accelerated  drivers  (Intel)   –  2012:  NetMap   •  accelerated  drivers  (Intel,Broadcom)  (Best  Paper  Award  @Usenix   ATC’12)  
  • 5. …  but  what  happens  on  these  tracks?  
  • 6. What’s  new  in  PFQ  2.0   •  From  capture  engine  to  monitoring  framework…   •  Improved  performance   –  ~14.8  Mpps  single  user-­‐space  thread   •  Improved  features:   –  compliant  with  a  plethora  of  NICs:  pfq-­‐oma0c   –  monitoring  groups  and  classes   –  in-­‐kernel  extensible  engine  for  packet  steering:   dispatching,  copying,  cloning,  filtering   –  na0ve  bindings:  C,  C++11,  Haskell  (more  to  come)   –  per-­‐group  filtering:  BFP,  vlan  (un-­‐tagging)   –  pcap  library  
  • 7. Feature  comparison   PF_PACKET   PF_RING  5.x   PF_RING-­‐DNA   NETMAP  -­‐  0813   PFQ  2.0   NIC   *   *,  PF-­‐AWARE   (Intel,  Broadcom)   only  Intel  1/10G   Intel  1/10G,   forcedeth   *    accelerated   Driver  compat.   *   yes,  non  accel.   no   no   yes,  dynamic   mul0-­‐core   -­‐   Hardware  (RSS)   Hardware  (RSS)   Hardware  (RSS)   Hw  RSS  +  sog   mul0-­‐queue   yes  (poor)   yes   yes   yes   yes   na0ve  binding   C   C   C   C   C,  C++11,   Haskell,  Java,   Python   groups   -­‐   -­‐   -­‐   -­‐   yes   class   -­‐   -­‐   -­‐   -­‐   yes   concurrent  mon.   yes   yes   commercial  ?   -­‐   yes   clustering   -­‐   yes   -­‐   -­‐   yes  (MT,  group)   steering   -­‐   -­‐   commercial   -­‐   yes  (MT,  group)   STM  state   -­‐   -­‐   -­‐   -­‐   work  in   progress  
  • 8. Feature  comparison   PF_PACKET   PF_RING  5.x   PF_RING-­‐DNA   NETMAP  -­‐  0813   PFQ  2.0   Pcap  library   yes   yes   yes   buggy/incomplete   yes   BPF  (filters)   yes  (MT)   yes  (MT)   yes  (user-­‐space)   -­‐   yes  (MT,  group)   vlan  filters   -­‐   yes   yes  (hw  Intel)   -­‐   yes  (MT,  group)   vlan  untagging   -­‐   -­‐     -­‐   -­‐   yes  (MT,  sog.)   Intel  hw  filters   -­‐   yes   yes   -­‐   No   bloom  filters   -­‐   -­‐   -­‐   -­‐   work  in  progress  
  • 9. Accelerated  PCAP  library   •  Pcap  library  is  the  standard  de-­‐facto  interface  for  packet  capture   •  Accelerated  capture  engines  provide  their  own  pcap  library:   –  Both  PF_RING  and  PF_RING-­‐DNA  provide  a  complete  accelerated   version   –  NetMap  provides  an  experimental  and  incomplete  pcap  support   •  BPF  is  missing   •  PFQ  provides  a  complete  implementa0on   –  PFQ  C-­‐API  mapped  over  pcap  interface  wherever  possible,   implemented  as  environment  variables  otherwise   –  Clustering  is  enabled  specifying  mul0ple  NICs  in  colon-­‐separated   fashion,  steering  by  means  of  PFQ_STEER  variable   PFQ_GROUP=10  PFQ_STEER=ipv4-­‐addr  tcpdump  –n  –i  eth2:eth3   PFQ_GROUP=10  PFQ_STEER=ipv4-­‐addr  tcpdump  –n  –i  eth2:eth3  
  • 10. Pcap-­‐perf   •  Pcap-­‐perf  is  a  C++11  applica0on  designed  for   benchmarking  capture  engines  through  pcap  interfaces   •  Support  for  mul0-­‐threads,  BPF  filter  and  plug-­‐ins:   plug-­‐in   kind   Null   packet  counter   IP  checksum   light  CPU  computa0on   MD5   CPU  computa0on   SHA256   heavy  CPU  computa0on   Bloom  Filter   memory  (linear)   Protocol  Classifica0on   memory  tree   TCP/UDP  flow  counter   memory  (std::unordered_set)  
  • 11. Test-­‐bed  and  measurements   •  Intel  Xeon  6  cores  x5650  @2.67Ghz,  16G  Ram  +  Intel  82599  10G  (Debian  Wheezy)   •  Accelerated  drivers   –  PF_RING:  ixgbe  3.11.33  PF_RING-­‐aware   –  PF_RING-­‐DNA:  ixgbe  3.10.16-­‐DNA  driver   –  Netmap:  ixgbe  driver  shipped  with  the  netmap  package   –  PFQ:  intel  ixgbe  3.11.33  vanilla,  recompiled  through  pfq-­‐oma0c   •  Best  Interrupt  affinity  (MSI-­‐X)   –  4  or  5  kernel  threads  (NAPI)  bound  to  fixed  core  (RSS),  1  or  2  user-­‐space  threads  bound  to   other  core(s)   •  Traffic  is  generated  with  randomized  IP  addresses,  64/128  bytes  long  UDP  packets   –  using  both  PF_DIRECT  and  PF_RING-­‐DNA   10 Gb link mascara monsters
  • 12. Coun0ng  packets  is  useless   (na0ve  speed)        uint64_t counter = 0;! ! ! !for(;;)! ! ! !{! ! ! !counter++;! ! ! !}!
  • 13. 1  thread  user-­‐space  (Intel  10G)  
  • 15. Pcap  library,  1  thread  counter  
  • 16. Pcap,  1  thread  counter,  BPF=udp  
  • 17. Pcap,  1  thread  counter,  BPF=hXp  ||  udp    
  • 23. tcpdump  –s  64  –i  dev  –w  /ramdisk/dump.pcap   (300M@14.8Mpps)  
  • 24. tcpdump  –s  138  –i  dev  –w  /ramdisk/dump.pcap   (100M@~8Mpps)  
  • 25. tcpdump  –i  dev  –w  /ramdisk/dump.pcap  vlan     (5  Gbps)  
  • 26. tcpdump  –i  dev  –w  /ramdisk/dump.pcap  ip  host   192.168.0.10  (voip  call)  
  • 27. Thanks  for  the  aXen0on!   nicola.bonelli@cnit.it