SlideShare a Scribd company logo
1 of 8
07 Jan, 2013

     SAKURA Internet Research Center
Senior Researcher / Naoto MATSUMOTO
DPDK TESTING Overview
 1) Intel ® DPDK source codes for linux were released at End of 2012.
 http://www.intel.com/p/en_US/embedded/hwsw/technology/packet-processing

 Running Intel® DPDK Applications in a Linux Environment
 To run an Intel® DPDK application, some customization must be done on the target
 machine. Running an Intel® DPDK application requires some kernel configuration
 customization (done at build time) and some dynamic kernel tweaks (modules, procfs):

 Required:
 • glibc >= 2.7 (for features related to cpuset) ..etc




                                                         Intel® 10Gbps Dual-port Network Adapter


Linux DPDK Layer3 Router is Evolutionary Network Technology.
                                                            Source: SAKURA Internet Research Center. 11/2012: Project THORN
Build/Execute Sample Application
  1) Install Intel® DPDK
  # mkdir /hugepages
  # vi /etc/fstab
  hugetlbfs          /hugepages          hugetlbfs rw,mode=0777 0 0
  # mount /hugepages
  # cd /opt; unzip INTELDPDK.L.1.2.3_3.zip ; cd DPDK
  # make install T=x86_64-default-linuxapp-gcc
  # modprobe uio
  # insmod /opt/dpdktest/DPDK/x86_64-default-linuxapp-gcc/kmod/igb_uio.ko

  2) Configure Intel® DPDK L3 Forwarding Sample Application
  # cd examples/l3fwd
  # diff main.c.orig main.c
  284a285,286
  >      {IPv4(10,0,0,11), 24, 1},
  >      {IPv4(10,0,0,22), 24, 0},
  478c480
  <      *((uint64_t *)tmp) = 0x000000c00900 + (dst_port << 24);
  ---
  >      *((uint64_t *)tmp) = 0x9d0223bae290 ; /* MAC Addr 90:E2:BA:23:02:9D */
  # RTE_SDK=/opt/DPDK make              /* Source: Intel DPDK Step by Step instructions by Hisaki Ohara*/

                                                        Source: SAKURA Internet Research Center. 11/2012: Project THORN
Build Packet Generator /w NETMAP
 1) Creat Bootable USB memory for Packet Generator/Receiver
 Download Bin image from http://info.iet.unipi.it/~luigi/netmap/
 Burn to USB Memory using Win32 Disk Imager




                                                 Source: SAKURA Internet Research Center. 11/2012: Project THORN
DPDK Layer 3 Fwd Benchmark
                                    [Layer 3 Fowarder with Intel® DPDK]
                                    Intel® Core™ i7-3960X CPU @ 3.30GHz
                                    Intel 82599EB 10GbE-NIC /PCI Epxress 3.0
                                    Linux 2.6.32-220.23.1.el6.x86_64
                           # ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)"
                           :
                           done: Port 0 Link Up - speed 10000 Mbps - full-duplex
                           done: Port 1 Link Up - speed 10000 Mbps - full-duplex
                           L3FWD: entering main loop on lcore 1           VXLAN             Network
                           L3FWD: -- lcoreid=1 portid=1 rxqueueid=0
                           :

[Traffic Generator] MTU64Byte Short Pkt.                                  [Packet Receiver]
Intel® Core™ i7-3930K CPU @ 3.20GHz                                       AMD E-350 1.76MHz / DDR3 8GB
Intel 82599EB 10GbE-NIC/PCI Express 2.0                                   Intel XXXXX 10GbE-NIC/PCI Express 2.0
10.0.0.11 / 00:0C:BD:00:E8:1B                                             10.0.0.22 / 90:E2:BA:23:02:9D

# pkt-gen –i ix1 –f tx –l 64 -d 10.0.0.22                                 # pkt-gen –i ix1 –f rx
main [1042]   map size is 207712 Kb                                       main   [1071]   map size is 207712 Kb
main [1064]   mmapping 207712 Kbytes                                      main   [1093]   mmapping 207712 Kbytes
main [1119]   Ready...                                                    main   [1146]   Wait 2 secs for phy reset
sender_body   [607] start                                                 main   [1148]   Ready...
sender_body   [644] drop copy                                             main   [1257]   1206448 pps
main [1231]   14115785 pps                                                main   [1257]   13602560 pps
main [1231]   14118009 pps                                                main   [1257]   13573141 pps
:                             [14.1Mpps]                                  :                                 [13.5Mpps]

                                                             Source: SAKURA Internet Research Center. 11/2012: Project THORN
DPDK Layer 3 Fwd perf report
                                  [Layer 3 Fowarder with Intel® DPDK]
                                  Intel(R) Core(TM) i7-3960X CPU @ 3.30GHz
                                  Intel 82599EB 10GbE-NIC /PCI Epxress 3.0
                                  Linux 2.6.32-220.23.1.el6.x86_64
                   # perf record ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)"
                   # perf report

                   :Events:   94K cycles
                    49.17%    l3fwd l3fwd                 [.]   main_loop     VXLAN Network
                    42.14%    l3fwd l3fwd                 [.]   ixgbe_recv_pkts
                     5.40%    l3fwd l3fwd                 [.]   rte_delay_us
                     2.86%    l3fwd l3fwd                 [.]   ixgbe_xmit_pkts
                     0.18%    l3fwd l3fwd                 [.]   send_burst
                     0.07%    l3fwd libc-2.12.so          [.]   __memset_sse2
                     0.03%    l3fwd l3fwd                 [.]   ixgbe_poll_eerd_eewr_done
                     0.02%    l3fwd [kernel.kallsyms]     [k]   apic_timer_interrupt
                     0.02%    l3fwd [kernel.kallsyms]     [k]   tty_write
                     0.01%    l3fwd [kernel.kallsyms]     [k]   native_write_msr_safe
                     0.01%    l3fwd [kernel.kallsyms]     [k]   _spin_lock
                     0.00%    l3fwd l3fwd                 [.]   ixgbe_read_eerd_generic
                     0.00%    l3fwd [kernel.kallsyms]     [k]   account_user_time
                     0.00%    l3fwd [kernel.kallsyms]     [k]   smp_apic_timer_interrupt
                     0.00%    l3fwd [kernel.kallsyms]     [k]   scheduler_tick
                     :

[Traffic Generator] MTU64Byte Short Pkt.                                 [Packet Receiver]
                                                            Source: SAKURA Internet Research Center. 11/2012: Project THORN
DPDK Layer 3 Fwd perf stat
                                  [Layer 3 Fowarder with Intel® DPDK]
                                  Intel(R) Core(TM) i7-3960X CPU @ 3.30GHz
                                  Intel 82599EB 10GbE-NIC /PCI Epxress 3.0
                                  Linux 2.6.32-220.23.1.el6.x86_64
                # perf rstat ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)"


    :    Performance counter stats for './build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config=(0,0,0),(1,0,1)':
                                                                                 VXLAN Network
           92805.936402   task-clock                  #    1.853 CPUs utilized
                    133   context-switches            #    0.000 M/sec
                     13   CPU-migrations              #    0.000 M/sec
                  1,958   page-faults                 #    0.000 M/sec
        370,566,087,852   cycles                      #    3.993 GHz                            [83.33%]
        102,860,504,930   stalled-cycles-frontend     # 27.76% frontend cycles idle             [83.33%]
         32,572,874,185   stalled-cycles-backend      #    8.79% backend cycles idle            [66.67%]
        663,418,320,041   instructions                #    1.79 insns per cycle
                                                      #    0.16 stalled cycles per insn         [83.33%]
        106,088,555,938 branches                      # 1143.123 M/sec                          [83.33%]
             63,608,468 branch-misses                 #    0.06% of all branches                [83.33%]

           50.077399637 seconds time elapsed



[Traffic Generator] MTU64Byte Short Pkt.                                  [Packet Receiver]
                                                             Source: SAKURA Internet Research Center. 11/2012: Project THORN
Thank you for your interest.

More Related Content

What's hot

DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDKLagopus SDN/OpenFlow switch
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDKKernel TLV
 
Enable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunEnable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunheut2008
 
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitchDPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitchJim St. Leger
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaJim St. Leger
 
Symmetric Crypto for DPDK - Declan Doherty
Symmetric Crypto for DPDK - Declan DohertySymmetric Crypto for DPDK - Declan Doherty
Symmetric Crypto for DPDK - Declan Dohertyharryvanhaaren
 
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. GrayOVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. Grayharryvanhaaren
 
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardson
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce RichardsonThe 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardson
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardsonharryvanhaaren
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)Kirill Tsym
 
Performance challenges in software networking
Performance challenges in software networkingPerformance challenges in software networking
Performance challenges in software networkingStephen Hemminger
 
Accelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAccelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAlexander Shalimov
 
Accelerate Service Function Chaining Vertical Solution with DPDK
Accelerate Service Function Chaining Vertical Solution with DPDKAccelerate Service Function Chaining Vertical Solution with DPDK
Accelerate Service Function Chaining Vertical Solution with DPDKOPNFV
 
イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IOTakuya ASADA
 
The n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkThe n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkmarkdgray
 
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
 

What's hot (20)

DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
 
100 M pps on PC.
100 M pps on PC.100 M pps on PC.
100 M pps on PC.
 
Dpdk performance
Dpdk performanceDpdk performance
Dpdk performance
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDK
 
Enable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunEnable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zun
 
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitchDPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
 
Symmetric Crypto for DPDK - Declan Doherty
Symmetric Crypto for DPDK - Declan DohertySymmetric Crypto for DPDK - Declan Doherty
Symmetric Crypto for DPDK - Declan Doherty
 
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. GrayOVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
 
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardson
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce RichardsonThe 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardson
The 7 Deadly Sins of Packet Processing - Venky Venkatesan and Bruce Richardson
 
Userspace networking
Userspace networkingUserspace networking
Userspace networking
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
Performance challenges in software networking
Performance challenges in software networkingPerformance challenges in software networking
Performance challenges in software networking
 
Dpdk applications
Dpdk applicationsDpdk applications
Dpdk applications
 
Accelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAccelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDK
 
Understanding DPDK
Understanding DPDKUnderstanding DPDK
Understanding DPDK
 
Accelerate Service Function Chaining Vertical Solution with DPDK
Accelerate Service Function Chaining Vertical Solution with DPDKAccelerate Service Function Chaining Vertical Solution with DPDK
Accelerate Service Function Chaining Vertical Solution with DPDK
 
イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
 
The n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkThe n00bs guide to ovs dpdk
The n00bs guide to ovs dpdk
 
Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)Recent advance in netmap/VALE(mSwitch)
Recent advance in netmap/VALE(mSwitch)
 

Similar to Disruptive IP Networking with Intel DPDK on Linux

In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)Naoto MATSUMOTO
 
Debugging linux issues with eBPF
Debugging linux issues with eBPFDebugging linux issues with eBPF
Debugging linux issues with eBPFIvan Babrou
 
DPDK layer for porting IPS-IDS
DPDK layer for porting IPS-IDSDPDK layer for porting IPS-IDS
DPDK layer for porting IPS-IDSVipin Varghese
 
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...confluent
 
YOW2020 Linux Systems Performance
YOW2020 Linux Systems PerformanceYOW2020 Linux Systems Performance
YOW2020 Linux Systems PerformanceBrendan Gregg
 
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioFast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioOPNFV
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stackHajime Tazaki
 
Ovs perf
Ovs perfOvs perf
Ovs perfMadhu c
 
ATO Linux Performance 2018
ATO Linux Performance 2018ATO Linux Performance 2018
ATO Linux Performance 2018Brendan Gregg
 
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterDUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterAndrey Kudryavtsev
 
re:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflixre:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at NetflixBrendan Gregg
 
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014Amazon Web Services
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemCyber Security Alliance
 
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
 
NUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioNUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioHajime Tazaki
 
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...DataWorks Summit/Hadoop Summit
 
Oow2007 performance
Oow2007 performanceOow2007 performance
Oow2007 performanceRicky Zhu
 

Similar to Disruptive IP Networking with Intel DPDK on Linux (20)

In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)
 
Debugging linux issues with eBPF
Debugging linux issues with eBPFDebugging linux issues with eBPF
Debugging linux issues with eBPF
 
DPDK layer for porting IPS-IDS
DPDK layer for porting IPS-IDSDPDK layer for porting IPS-IDS
DPDK layer for porting IPS-IDS
 
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...
Kafka Summit SF 2017 - One Day, One Data Hub, 100 Billion Messages: Kafka at ...
 
YOW2020 Linux Systems Performance
YOW2020 Linux Systems PerformanceYOW2020 Linux Systems Performance
YOW2020 Linux Systems Performance
 
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioFast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stack
 
Ovs perf
Ovs perfOvs perf
Ovs perf
 
ATO Linux Performance 2018
ATO Linux Performance 2018ATO Linux Performance 2018
ATO Linux Performance 2018
 
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterDUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
 
re:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflixre:Invent 2019 BPF Performance Analysis at Netflix
re:Invent 2019 BPF Performance Analysis at Netflix
 
Linux boot-time
Linux boot-timeLinux boot-time
Linux boot-time
 
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
(PFC306) Performance Tuning Amazon EC2 Instances | AWS re:Invent 2014
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande Modem
 
Neutron DVR
Neutron DVRNeutron DVR
Neutron DVR
 
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...
 
NUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osioNUSE (Network Stack in Userspace) at #osio
NUSE (Network Stack in Userspace) at #osio
 
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...
End to End Processing of 3.7 Million Telemetry Events per Second using Lambda...
 
Oow2007 performance
Oow2007 performanceOow2007 performance
Oow2007 performance
 
The Spectre of Meltdowns
The Spectre of MeltdownsThe Spectre of Meltdowns
The Spectre of Meltdowns
 

More from Naoto MATSUMOTO

Alder Lake-S CPU Temperature Monitoring
Alder Lake-S CPU Temperature MonitoringAlder Lake-S CPU Temperature Monitoring
Alder Lake-S CPU Temperature MonitoringNaoto MATSUMOTO
 
CPU製品出荷状況と消費電力の見える化
CPU製品出荷状況と消費電力の見える化CPU製品出荷状況と消費電力の見える化
CPU製品出荷状況と消費電力の見える化Naoto MATSUMOTO
 
2023年以降のサーバークラスタリング設計(メモ)
2023年以降のサーバークラスタリング設計(メモ)2023年以降のサーバークラスタリング設計(メモ)
2023年以降のサーバークラスタリング設計(メモ)Naoto MATSUMOTO
 
防災を考慮した水中調査の一考察
防災を考慮した水中調査の一考察防災を考慮した水中調査の一考察
防災を考慮した水中調査の一考察Naoto MATSUMOTO
 
旅するパケットの見える化
旅するパケットの見える化旅するパケットの見える化
旅するパケットの見える化Naoto MATSUMOTO
 
LTE-M/NB IoTを試してみる nRF9160/Thingy:91
LTE-M/NB IoTを試してみる nRF9160/Thingy:91LTE-M/NB IoTを試してみる nRF9160/Thingy:91
LTE-M/NB IoTを試してみる nRF9160/Thingy:91Naoto MATSUMOTO
 
災害時における無線モニタリングによる社会インフラの見える化
災害時における無線モニタリングによる社会インフラの見える化災害時における無線モニタリングによる社会インフラの見える化
災害時における無線モニタリングによる社会インフラの見える化Naoto MATSUMOTO
 
BeautifulSoup / selenium Deep dive
BeautifulSoup / selenium Deep diveBeautifulSoup / selenium Deep dive
BeautifulSoup / selenium Deep diveNaoto MATSUMOTO
 
Network Adapter Deep dive
Network Adapter Deep diveNetwork Adapter Deep dive
Network Adapter Deep diveNaoto MATSUMOTO
 
x86_64 Hardware Deep dive
x86_64 Hardware Deep divex86_64 Hardware Deep dive
x86_64 Hardware Deep diveNaoto MATSUMOTO
 
ADS-B, AIS, APRS cheatsheet
ADS-B, AIS, APRS cheatsheetADS-B, AIS, APRS cheatsheet
ADS-B, AIS, APRS cheatsheetNaoto MATSUMOTO
 
3/4G USB modem Cheat Sheet
3/4G USB modem Cheat Sheet3/4G USB modem Cheat Sheet
3/4G USB modem Cheat SheetNaoto MATSUMOTO
 
How To Train Your ARM(SBC)
How To  Train Your ARM(SBC)How To  Train Your ARM(SBC)
How To Train Your ARM(SBC)Naoto MATSUMOTO
 
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~全国におけるCOVID-19対策の見える化 ~宿泊業の場合~
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~Naoto MATSUMOTO
 
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)Naoto MATSUMOTO
 
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化Naoto MATSUMOTO
 

More from Naoto MATSUMOTO (20)

Alder Lake-S CPU Temperature Monitoring
Alder Lake-S CPU Temperature MonitoringAlder Lake-S CPU Temperature Monitoring
Alder Lake-S CPU Temperature Monitoring
 
CPU製品出荷状況と消費電力の見える化
CPU製品出荷状況と消費電力の見える化CPU製品出荷状況と消費電力の見える化
CPU製品出荷状況と消費電力の見える化
 
5Gの見える化
5Gの見える化5Gの見える化
5Gの見える化
 
2023年以降のサーバークラスタリング設計(メモ)
2023年以降のサーバークラスタリング設計(メモ)2023年以降のサーバークラスタリング設計(メモ)
2023年以降のサーバークラスタリング設計(メモ)
 
防災を考慮した水中調査の一考察
防災を考慮した水中調査の一考察防災を考慮した水中調査の一考察
防災を考慮した水中調査の一考察
 
旅するパケットの見える化
旅するパケットの見える化旅するパケットの見える化
旅するパケットの見える化
 
LTE-M/NB IoTを試してみる nRF9160/Thingy:91
LTE-M/NB IoTを試してみる nRF9160/Thingy:91LTE-M/NB IoTを試してみる nRF9160/Thingy:91
LTE-M/NB IoTを試してみる nRF9160/Thingy:91
 
災害時における無線モニタリングによる社会インフラの見える化
災害時における無線モニタリングによる社会インフラの見える化災害時における無線モニタリングによる社会インフラの見える化
災害時における無線モニタリングによる社会インフラの見える化
 
BeautifulSoup / selenium Deep dive
BeautifulSoup / selenium Deep diveBeautifulSoup / selenium Deep dive
BeautifulSoup / selenium Deep dive
 
AMDGPU ROCm Deep dive
AMDGPU ROCm Deep diveAMDGPU ROCm Deep dive
AMDGPU ROCm Deep dive
 
Network Adapter Deep dive
Network Adapter Deep diveNetwork Adapter Deep dive
Network Adapter Deep dive
 
RTL2838 DVB-T Deep dive
RTL2838 DVB-T Deep diveRTL2838 DVB-T Deep dive
RTL2838 DVB-T Deep dive
 
x86_64 Hardware Deep dive
x86_64 Hardware Deep divex86_64 Hardware Deep dive
x86_64 Hardware Deep dive
 
ADS-B, AIS, APRS cheatsheet
ADS-B, AIS, APRS cheatsheetADS-B, AIS, APRS cheatsheet
ADS-B, AIS, APRS cheatsheet
 
curl --http3 cheatsheet
curl --http3 cheatsheetcurl --http3 cheatsheet
curl --http3 cheatsheet
 
3/4G USB modem Cheat Sheet
3/4G USB modem Cheat Sheet3/4G USB modem Cheat Sheet
3/4G USB modem Cheat Sheet
 
How To Train Your ARM(SBC)
How To  Train Your ARM(SBC)How To  Train Your ARM(SBC)
How To Train Your ARM(SBC)
 
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~全国におけるCOVID-19対策の見える化 ~宿泊業の場合~
全国におけるCOVID-19対策の見える化 ~宿泊業の場合~
 
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)
我が国の電波の使用状況/携帯電話向け割当 (2019年3月1日現在)
 
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
 

Recently uploaded

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Recently uploaded (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

Disruptive IP Networking with Intel DPDK on Linux

  • 1. 07 Jan, 2013 SAKURA Internet Research Center Senior Researcher / Naoto MATSUMOTO
  • 2. DPDK TESTING Overview 1) Intel ® DPDK source codes for linux were released at End of 2012. http://www.intel.com/p/en_US/embedded/hwsw/technology/packet-processing Running Intel® DPDK Applications in a Linux Environment To run an Intel® DPDK application, some customization must be done on the target machine. Running an Intel® DPDK application requires some kernel configuration customization (done at build time) and some dynamic kernel tweaks (modules, procfs): Required: • glibc >= 2.7 (for features related to cpuset) ..etc Intel® 10Gbps Dual-port Network Adapter Linux DPDK Layer3 Router is Evolutionary Network Technology. Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 3. Build/Execute Sample Application 1) Install Intel® DPDK # mkdir /hugepages # vi /etc/fstab hugetlbfs /hugepages hugetlbfs rw,mode=0777 0 0 # mount /hugepages # cd /opt; unzip INTELDPDK.L.1.2.3_3.zip ; cd DPDK # make install T=x86_64-default-linuxapp-gcc # modprobe uio # insmod /opt/dpdktest/DPDK/x86_64-default-linuxapp-gcc/kmod/igb_uio.ko 2) Configure Intel® DPDK L3 Forwarding Sample Application # cd examples/l3fwd # diff main.c.orig main.c 284a285,286 > {IPv4(10,0,0,11), 24, 1}, > {IPv4(10,0,0,22), 24, 0}, 478c480 < *((uint64_t *)tmp) = 0x000000c00900 + (dst_port << 24); --- > *((uint64_t *)tmp) = 0x9d0223bae290 ; /* MAC Addr 90:E2:BA:23:02:9D */ # RTE_SDK=/opt/DPDK make /* Source: Intel DPDK Step by Step instructions by Hisaki Ohara*/ Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 4. Build Packet Generator /w NETMAP 1) Creat Bootable USB memory for Packet Generator/Receiver Download Bin image from http://info.iet.unipi.it/~luigi/netmap/ Burn to USB Memory using Win32 Disk Imager Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 5. DPDK Layer 3 Fwd Benchmark [Layer 3 Fowarder with Intel® DPDK] Intel® Core™ i7-3960X CPU @ 3.30GHz Intel 82599EB 10GbE-NIC /PCI Epxress 3.0 Linux 2.6.32-220.23.1.el6.x86_64 # ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)" : done: Port 0 Link Up - speed 10000 Mbps - full-duplex done: Port 1 Link Up - speed 10000 Mbps - full-duplex L3FWD: entering main loop on lcore 1 VXLAN Network L3FWD: -- lcoreid=1 portid=1 rxqueueid=0 : [Traffic Generator] MTU64Byte Short Pkt. [Packet Receiver] Intel® Core™ i7-3930K CPU @ 3.20GHz AMD E-350 1.76MHz / DDR3 8GB Intel 82599EB 10GbE-NIC/PCI Express 2.0 Intel XXXXX 10GbE-NIC/PCI Express 2.0 10.0.0.11 / 00:0C:BD:00:E8:1B 10.0.0.22 / 90:E2:BA:23:02:9D # pkt-gen –i ix1 –f tx –l 64 -d 10.0.0.22 # pkt-gen –i ix1 –f rx main [1042] map size is 207712 Kb main [1071] map size is 207712 Kb main [1064] mmapping 207712 Kbytes main [1093] mmapping 207712 Kbytes main [1119] Ready... main [1146] Wait 2 secs for phy reset sender_body [607] start main [1148] Ready... sender_body [644] drop copy main [1257] 1206448 pps main [1231] 14115785 pps main [1257] 13602560 pps main [1231] 14118009 pps main [1257] 13573141 pps : [14.1Mpps] : [13.5Mpps] Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 6. DPDK Layer 3 Fwd perf report [Layer 3 Fowarder with Intel® DPDK] Intel(R) Core(TM) i7-3960X CPU @ 3.30GHz Intel 82599EB 10GbE-NIC /PCI Epxress 3.0 Linux 2.6.32-220.23.1.el6.x86_64 # perf record ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)" # perf report :Events: 94K cycles 49.17% l3fwd l3fwd [.] main_loop VXLAN Network 42.14% l3fwd l3fwd [.] ixgbe_recv_pkts 5.40% l3fwd l3fwd [.] rte_delay_us 2.86% l3fwd l3fwd [.] ixgbe_xmit_pkts 0.18% l3fwd l3fwd [.] send_burst 0.07% l3fwd libc-2.12.so [.] __memset_sse2 0.03% l3fwd l3fwd [.] ixgbe_poll_eerd_eewr_done 0.02% l3fwd [kernel.kallsyms] [k] apic_timer_interrupt 0.02% l3fwd [kernel.kallsyms] [k] tty_write 0.01% l3fwd [kernel.kallsyms] [k] native_write_msr_safe 0.01% l3fwd [kernel.kallsyms] [k] _spin_lock 0.00% l3fwd l3fwd [.] ixgbe_read_eerd_generic 0.00% l3fwd [kernel.kallsyms] [k] account_user_time 0.00% l3fwd [kernel.kallsyms] [k] smp_apic_timer_interrupt 0.00% l3fwd [kernel.kallsyms] [k] scheduler_tick : [Traffic Generator] MTU64Byte Short Pkt. [Packet Receiver] Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 7. DPDK Layer 3 Fwd perf stat [Layer 3 Fowarder with Intel® DPDK] Intel(R) Core(TM) i7-3960X CPU @ 3.30GHz Intel 82599EB 10GbE-NIC /PCI Epxress 3.0 Linux 2.6.32-220.23.1.el6.x86_64 # perf rstat ./build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config="(0,0,0),(1,0,1)" : Performance counter stats for './build/l3fwd -c 0x3 -n 2 -- -p 0x3 --config=(0,0,0),(1,0,1)': VXLAN Network 92805.936402 task-clock # 1.853 CPUs utilized 133 context-switches # 0.000 M/sec 13 CPU-migrations # 0.000 M/sec 1,958 page-faults # 0.000 M/sec 370,566,087,852 cycles # 3.993 GHz [83.33%] 102,860,504,930 stalled-cycles-frontend # 27.76% frontend cycles idle [83.33%] 32,572,874,185 stalled-cycles-backend # 8.79% backend cycles idle [66.67%] 663,418,320,041 instructions # 1.79 insns per cycle # 0.16 stalled cycles per insn [83.33%] 106,088,555,938 branches # 1143.123 M/sec [83.33%] 63,608,468 branch-misses # 0.06% of all branches [83.33%] 50.077399637 seconds time elapsed [Traffic Generator] MTU64Byte Short Pkt. [Packet Receiver] Source: SAKURA Internet Research Center. 11/2012: Project THORN
  • 8. Thank you for your interest.