SlideShare une entreprise Scribd logo
1  sur  2
FD.io VPP tap-inject with
sample_plugins
2018/04/01 SAKURA Internet, Inc. Research Center SR / Naoto MATSUMOTO
(C) Copyright 1996-2017 SAKURA Internet Inc
FD.io VPP tap-inject with sample_plugins
2
© 2017 FD.io is a Linux Foundation Project. All Rights Reserved.
# uname -sr; cat /etc/lsb-release
Linux 4.13.0-37-generic
DISTRIB_DESCRIPTION="Ubuntu 17.10"
# echo VTYSH_PAGER=more >> /etc/environment
# apt install -y quagga
# touch /etc/quagga/zebra.conf
# touch /etc/quagga/bgpd.conf
# chown quagga.quaggavty /etc/quagga/*.conf
# chmod 640 /etc/quagga/*.conf
# ufw disable
# vi /etc/quagga/daemons
zebra=yes
bgpd=yes
# sync; sync; sync; reboot
# apt install build-essential -y
# cd /opt/
# git clone https://gerrit.fd.io/r/vpp
# git clone https://gerrit.fd.io/r/vppsb
# cd /opt/vpp
# ./extras/vagrant/build.sh
# make install-dep; make bootstrap; make build
# vi /opt/vppsb/router/router/tap_inject_node.c
#include <sys/uio.h>
# ln -sf /opt/vppsb/netlink
# ln -sf /opt/vppsb/router
# ln -sf /opt/vppsb/netlink/netlink.mk build-data/packages/
# ln -sf /opt/vppsb/router/router.mk build-data/packages/
# cd build-root/
# make V=0 PLATFORM=vpp TAG=vpp_debug netlink-install router-install
# dpkg -i *.deb
# cp -p /opt/vpp/build-root/install-vpp_debug-native/router/lib64/router.so.0.0.0 /usr/lib/vpp_plugins/router.so
# service vpp restart
# vppctl enable tap-inject
# vppctl show tap-inject
GigabitEthernet13/0/0 -> vpp1
GigabitEthernetb/0/0 -> vpp0
# vtysh (quagga)
# configure terminal
(config)# interface vpp0
(config-if)# ip address 192.168.11.100/24
(config-if)# exit
(config)# exit
# write
# quit
# vppctl show int addr
GigabitEthernetb/0/0 (up):
L3 192.168.11.100/24
L3 fe80::20c:29ff:fe24:af28/64
# /opt/vpp/src/examples/sample-plugin
# libtoolize
# aclocal
# autoconf
# autoheader
# automake --add-missing
# chmod +x configure
# ./configure
# make
# make install
GigabitEthernetb/0/0
vpp0
vpp_plugins / router.so
vpp_plugins / sample_plugin.so
quagga

Contenu connexe

Tendances

NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO Configurations
Hank Preston
 

Tendances (20)

Yoctoで綺麗なkernel configを作る
Yoctoで綺麗なkernel configを作るYoctoで綺麗なkernel configを作る
Yoctoで綺麗なkernel configを作る
 
2011年度 新3年生向け
2011年度 新3年生向け2011年度 新3年生向け
2011年度 新3年生向け
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
インターネットの仕組み enPiT資料
インターネットの仕組み enPiT資料インターネットの仕組み enPiT資料
インターネットの仕組み enPiT資料
 
Dpdk applications
Dpdk applicationsDpdk applications
Dpdk applications
 
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月 知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
 
EBPF and Linux Networking
EBPF and Linux NetworkingEBPF and Linux Networking
EBPF and Linux Networking
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking Walkthrough
 
Understanding DPDK
Understanding DPDKUnderstanding DPDK
Understanding DPDK
 
eBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to UserspaceeBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to Userspace
 
Meet cute-between-ebpf-and-tracing
Meet cute-between-ebpf-and-tracingMeet cute-between-ebpf-and-tracing
Meet cute-between-ebpf-and-tracing
 
DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on Lab
 
Accelerating Envoy and Istio with Cilium and the Linux Kernel
Accelerating Envoy and Istio with Cilium and the Linux KernelAccelerating Envoy and Istio with Cilium and the Linux Kernel
Accelerating Envoy and Istio with Cilium and the Linux Kernel
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
 
Pacemaker 操作方法メモ
Pacemaker 操作方法メモPacemaker 操作方法メモ
Pacemaker 操作方法メモ
 
Ixgbe internals
Ixgbe internalsIxgbe internals
Ixgbe internals
 
NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO Configurations
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについてeBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
 
GTPing, How To
GTPing, How ToGTPing, How To
GTPing, How To
 

Similaire à FD.io VPP tap-inject with sample_plugins

Similaire à FD.io VPP tap-inject with sample_plugins (20)

FD.io VPP 18.07 with Ubuntu 16.04.5 LTS (not support Ubuntu 1804)
FD.io VPP 18.07 with Ubuntu 16.04.5 LTS (not support Ubuntu 1804)FD.io VPP 18.07 with Ubuntu 16.04.5 LTS (not support Ubuntu 1804)
FD.io VPP 18.07 with Ubuntu 16.04.5 LTS (not support Ubuntu 1804)
 
My First FD.io VPP
My First FD.io VPPMy First FD.io VPP
My First FD.io VPP
 
Install Quagga - CheatSheet -
Install Quagga - CheatSheet -Install Quagga - CheatSheet -
Install Quagga - CheatSheet -
 
FD.io VPP with XeonPhi
FD.io VPP with XeonPhiFD.io VPP with XeonPhi
FD.io VPP with XeonPhi
 
Quagga with ROUTE_MULTIPATH
Quagga with ROUTE_MULTIPATHQuagga with ROUTE_MULTIPATH
Quagga with ROUTE_MULTIPATH
 
SPDK benchmark memo
SPDK benchmark memoSPDK benchmark memo
SPDK benchmark memo
 
My First XDP (eXpress Data Path)
My First XDP (eXpress Data Path)My First XDP (eXpress Data Path)
My First XDP (eXpress Data Path)
 
My First BCC
My First BCCMy First BCC
My First BCC
 
UP Board AI Core Configuration memo
UP Board AI Core Configuration memoUP Board AI Core Configuration memo
UP Board AI Core Configuration memo
 
My First F-Stack
My First F-StackMy First F-Stack
My First F-Stack
 
Self revisor
Self revisorSelf revisor
Self revisor
 
MQTTS mosquitto - cheat sheet -
MQTTS mosquitto - cheat sheet -MQTTS mosquitto - cheat sheet -
MQTTS mosquitto - cheat sheet -
 
AMDGPU ROCm Deep dive
AMDGPU ROCm Deep diveAMDGPU ROCm Deep dive
AMDGPU ROCm Deep dive
 
zebra & openconfigd Introduction
zebra & openconfigd Introductionzebra & openconfigd Introduction
zebra & openconfigd Introduction
 
[MeetUp][2nd] 컭on턺
[MeetUp][2nd] 컭on턺[MeetUp][2nd] 컭on턺
[MeetUp][2nd] 컭on턺
 
curl --http3 cheatsheet
curl --http3 cheatsheetcurl --http3 cheatsheet
curl --http3 cheatsheet
 
Network Adapter Deep dive
Network Adapter Deep diveNetwork Adapter Deep dive
Network Adapter Deep dive
 
How to twist a IPv6 over Bluetooth (6lowpan)
How to twist a IPv6 over Bluetooth (6lowpan) How to twist a IPv6 over Bluetooth (6lowpan)
How to twist a IPv6 over Bluetooth (6lowpan)
 
How to Install Ghost (CMS) MEMO
How to Install Ghost (CMS) MEMOHow to Install Ghost (CMS) MEMO
How to Install Ghost (CMS) MEMO
 
Web Server Free Bsd
Web Server Free BsdWeb Server Free Bsd
Web Server Free Bsd
 

Plus de Naoto MATSUMOTO

Plus de 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
 
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
 
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日現在)
 
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
私たちに訪れる(かもしれない)未来と計算機によるモノコトの見える化
 
仮想化環境におけるバイナリー・ポータビリティの考察 (WebAssemblyの場合)
仮想化環境におけるバイナリー・ポータビリティの考察 (WebAssemblyの場合)仮想化環境におけるバイナリー・ポータビリティの考察 (WebAssemblyの場合)
仮想化環境におけるバイナリー・ポータビリティの考察 (WebAssemblyの場合)
 
インターネットを用いたニア・リアルタイムでの災害観測の考察
インターネットを用いたニア・リアルタイムでの災害観測の考察インターネットを用いたニア・リアルタイムでの災害観測の考察
インターネットを用いたニア・リアルタイムでの災害観測の考察
 
AMD Ryzen Threadripper 3960X によるPCIe 4.0 x16x16x16環境の詳解
AMD Ryzen Threadripper 3960X によるPCIe 4.0 x16x16x16環境の詳解AMD Ryzen Threadripper 3960X によるPCIe 4.0 x16x16x16環境の詳解
AMD Ryzen Threadripper 3960X によるPCIe 4.0 x16x16x16環境の詳解
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

FD.io VPP tap-inject with sample_plugins

  • 1. FD.io VPP tap-inject with sample_plugins 2018/04/01 SAKURA Internet, Inc. Research Center SR / Naoto MATSUMOTO (C) Copyright 1996-2017 SAKURA Internet Inc
  • 2. FD.io VPP tap-inject with sample_plugins 2 © 2017 FD.io is a Linux Foundation Project. All Rights Reserved. # uname -sr; cat /etc/lsb-release Linux 4.13.0-37-generic DISTRIB_DESCRIPTION="Ubuntu 17.10" # echo VTYSH_PAGER=more >> /etc/environment # apt install -y quagga # touch /etc/quagga/zebra.conf # touch /etc/quagga/bgpd.conf # chown quagga.quaggavty /etc/quagga/*.conf # chmod 640 /etc/quagga/*.conf # ufw disable # vi /etc/quagga/daemons zebra=yes bgpd=yes # sync; sync; sync; reboot # apt install build-essential -y # cd /opt/ # git clone https://gerrit.fd.io/r/vpp # git clone https://gerrit.fd.io/r/vppsb # cd /opt/vpp # ./extras/vagrant/build.sh # make install-dep; make bootstrap; make build # vi /opt/vppsb/router/router/tap_inject_node.c #include <sys/uio.h> # ln -sf /opt/vppsb/netlink # ln -sf /opt/vppsb/router # ln -sf /opt/vppsb/netlink/netlink.mk build-data/packages/ # ln -sf /opt/vppsb/router/router.mk build-data/packages/ # cd build-root/ # make V=0 PLATFORM=vpp TAG=vpp_debug netlink-install router-install # dpkg -i *.deb # cp -p /opt/vpp/build-root/install-vpp_debug-native/router/lib64/router.so.0.0.0 /usr/lib/vpp_plugins/router.so # service vpp restart # vppctl enable tap-inject # vppctl show tap-inject GigabitEthernet13/0/0 -> vpp1 GigabitEthernetb/0/0 -> vpp0 # vtysh (quagga) # configure terminal (config)# interface vpp0 (config-if)# ip address 192.168.11.100/24 (config-if)# exit (config)# exit # write # quit # vppctl show int addr GigabitEthernetb/0/0 (up): L3 192.168.11.100/24 L3 fe80::20c:29ff:fe24:af28/64 # /opt/vpp/src/examples/sample-plugin # libtoolize # aclocal # autoconf # autoheader # automake --add-missing # chmod +x configure # ./configure # make # make install GigabitEthernetb/0/0 vpp0 vpp_plugins / router.so vpp_plugins / sample_plugin.so quagga