Enviar búsqueda
Cargar
Lagos running on small factor machine
•
3 recomendaciones
•
1,748 vistas
Lagopus SDN/OpenFlow switch
Seguir
Lagopusを小箱でうごかしてみました。
Leer menos
Leer más
Software
Denunciar
Compartir
Denunciar
Compartir
1 de 22
Descargar ahora
Descargar para leer sin conexión
Recomendados
DPDK QoS
DPDK QoS
Masaru Oki
Dpdk環境の話
Dpdk環境の話
Masaru Oki
ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会
Tomoya Hibi
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
Masaru Oki
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
Tomoya Hibi
DPDKを拡張してみた話し
DPDKを拡張してみた話し
Lagopus SDN/OpenFlow switch
Dpdk pmd
Dpdk pmd
Masaru Oki
Kernel vm-2014-05-25
Kernel vm-2014-05-25
Hirochika Asai
Recomendados
DPDK QoS
DPDK QoS
Masaru Oki
Dpdk環境の話
Dpdk環境の話
Masaru Oki
ネットワークプログラマビリティ勉強会
ネットワークプログラマビリティ勉強会
Tomoya Hibi
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
Masaru Oki
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
Tomoya Hibi
DPDKを拡張してみた話し
DPDKを拡張してみた話し
Lagopus SDN/OpenFlow switch
Dpdk pmd
Dpdk pmd
Masaru Oki
Kernel vm-2014-05-25
Kernel vm-2014-05-25
Hirochika Asai
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Tomoya Hibi
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
Tomoya Hibi
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
Toru Makabe
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続
Tomoya Hibi
NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07
Tomoya Hibi
自作仮想化基盤 「n0stack」の紹介
自作仮想化基盤 「n0stack」の紹介
Takeshi Take
Lagopus Switch Usecases
Lagopus Switch Usecases
Sakiko Kawai
Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224
Tomoya Hibi
VPP事始め
VPP事始め
npsg
Lagopus Router v19.07.1
Lagopus Router v19.07.1
Tomoya Hibi
Lagopus Router
Lagopus Router
Tomoya Hibi
High Performance Networking with DPDK & Multi/Many Core
High Performance Networking with DPDK & Multi/Many Core
slankdev
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
Linux packet-forwarding
Linux packet-forwarding
Masakazu Asama
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
Takashi Sogabe
NetBSD/evbarm on Raspberry Pi
NetBSD/evbarm on Raspberry Pi
tokudahiroshi
Interrupt Affinityについて
Interrupt Affinityについて
Takuya ASADA
Lagopus as open flow hybrid switch 実践編
Lagopus as open flow hybrid switch 実践編
Masaru Oki
LagopusとAzureとIPsecとDPDK
LagopusとAzureとIPsecとDPDK
Tomoya Hibi
Lagopus, raw socket build
Lagopus, raw socket build
Masaru Oki
LagopusでPPPoEを使えるか考えてみた件
LagopusでPPPoEを使えるか考えてみた件
Masaru Oki
Más contenido relacionado
La actualidad más candente
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Tomoya Hibi
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
Tomoya Hibi
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
Toru Makabe
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続
Tomoya Hibi
NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07
Tomoya Hibi
自作仮想化基盤 「n0stack」の紹介
自作仮想化基盤 「n0stack」の紹介
Takeshi Take
Lagopus Switch Usecases
Lagopus Switch Usecases
Sakiko Kawai
Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224
Tomoya Hibi
VPP事始め
VPP事始め
npsg
Lagopus Router v19.07.1
Lagopus Router v19.07.1
Tomoya Hibi
Lagopus Router
Lagopus Router
Tomoya Hibi
High Performance Networking with DPDK & Multi/Many Core
High Performance Networking with DPDK & Multi/Many Core
slankdev
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
Linux packet-forwarding
Linux packet-forwarding
Masakazu Asama
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
Takashi Sogabe
NetBSD/evbarm on Raspberry Pi
NetBSD/evbarm on Raspberry Pi
tokudahiroshi
Interrupt Affinityについて
Interrupt Affinityについて
Takuya ASADA
Lagopus as open flow hybrid switch 実践編
Lagopus as open flow hybrid switch 実践編
Masaru Oki
LagopusとAzureとIPsecとDPDK
LagopusとAzureとIPsecとDPDK
Tomoya Hibi
La actualidad más candente
(20)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続
NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07
自作仮想化基盤 「n0stack」の紹介
自作仮想化基盤 「n0stack」の紹介
Lagopus Switch Usecases
Lagopus Switch Usecases
Osc2018tokyo spring-20180224
Osc2018tokyo spring-20180224
VPP事始め
VPP事始め
Lagopus Router v19.07.1
Lagopus Router v19.07.1
Lagopus Router
Lagopus Router
High Performance Networking with DPDK & Multi/Many Core
High Performance Networking with DPDK & Multi/Many Core
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Linux packet-forwarding
Linux packet-forwarding
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
NetBSD/evbarm on Raspberry Pi
NetBSD/evbarm on Raspberry Pi
Interrupt Affinityについて
Interrupt Affinityについて
Lagopus as open flow hybrid switch 実践編
Lagopus as open flow hybrid switch 実践編
LagopusとAzureとIPsecとDPDK
LagopusとAzureとIPsecとDPDK
Destacado
Lagopus, raw socket build
Lagopus, raw socket build
Masaru Oki
LagopusでPPPoEを使えるか考えてみた件
LagopusでPPPoEを使えるか考えてみた件
Masaru Oki
Linux Namespace
Linux Namespace
Masami Ichikawa
自宅実験環境 Aug 2014
自宅実験環境 Aug 2014
Masaru Oki
Using Xeon D 10GBase-T
Using Xeon D 10GBase-T
Masaru Oki
SDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSD
Masaru Oki
今よりも少し(?)昔、 Windowsを作ろうとした話
今よりも少し(?)昔、 Windowsを作ろうとした話
Masaru Oki
新生Lagopus2017(仮称)
新生Lagopus2017(仮称)
Masaru Oki
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
Masaru Oki
Destacado
(9)
Lagopus, raw socket build
Lagopus, raw socket build
LagopusでPPPoEを使えるか考えてみた件
LagopusでPPPoEを使えるか考えてみた件
Linux Namespace
Linux Namespace
自宅実験環境 Aug 2014
自宅実験環境 Aug 2014
Using Xeon D 10GBase-T
Using Xeon D 10GBase-T
SDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSD
今よりも少し(?)昔、 Windowsを作ろうとした話
今よりも少し(?)昔、 Windowsを作ろうとした話
新生Lagopus2017(仮称)
新生Lagopus2017(仮称)
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
Similar a Lagos running on small factor machine
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUG
Hideki Aoshima
超激安WinタブレットにLinux、*BSDを入れて 賢く経済的にリサイクルしよう in OSC東京2018 #osc18tk
超激安WinタブレットにLinux、*BSDを入れて 賢く経済的にリサイクルしよう in OSC東京2018 #osc18tk
Netwalker lab kapper
超激安WinタブレットにLinux、*BSDを入れよう 最新情報編 in KOF2018 Install Linux and Re-use 「newer ...
超激安WinタブレットにLinux、*BSDを入れよう 最新情報編 in KOF2018 Install Linux and Re-use 「newer ...
Netwalker lab kapper
ネットワークプロトコル探索隊 LLDP-Link Layer Discovery Protocol-
ネットワークプロトコル探索隊 LLDP-Link Layer Discovery Protocol-
ZenSekibe
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
Netwalker lab kapper
201104016 osc2011 kobe
201104016 osc2011 kobe
Yamauchi isamu
PF部第19回資料 poor man's JTAG
PF部第19回資料 poor man's JTAG
daye001
retrobsd-2012-JUL-07 at JNUG BSD BoF
retrobsd-2012-JUL-07 at JNUG BSD BoF
たけおか しょうぞう
Androidとfpgaを高速fifo通信させちゃう
Androidとfpgaを高速fifo通信させちゃう
ksk sue
Container Networking Deep Dive
Container Networking Deep Dive
Hirofumi Ichihara
Hacking with x86 Windows Tablet and mobile devices on Linux #FOSSASIA
Hacking with x86 Windows Tablet and mobile devices on Linux #FOSSASIA
Netwalker lab kapper
Inside winnyp
Inside winnyp
FFRI, Inc.
JTAGを使ってみよう
JTAGを使ってみよう
Study Group by SciencePark Corp.
Riscv+fpga200606
Riscv+fpga200606
たけおか しょうぞう
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
Netwalker lab kapper
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
VirtualTech Japan Inc.
Pdp11 on-fpga
Pdp11 on-fpga
magoroku Yamamoto
Trema day 1
Trema day 1
ykuga
20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameeting
Akihiro Motoki
ソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うか
なおき きしだ
Similar a Lagos running on small factor machine
(20)
OSC Tokyo 2013 Spring JRPUG
OSC Tokyo 2013 Spring JRPUG
超激安WinタブレットにLinux、*BSDを入れて 賢く経済的にリサイクルしよう in OSC東京2018 #osc18tk
超激安WinタブレットにLinux、*BSDを入れて 賢く経済的にリサイクルしよう in OSC東京2018 #osc18tk
超激安WinタブレットにLinux、*BSDを入れよう 最新情報編 in KOF2018 Install Linux and Re-use 「newer ...
超激安WinタブレットにLinux、*BSDを入れよう 最新情報編 in KOF2018 Install Linux and Re-use 「newer ...
ネットワークプロトコル探索隊 LLDP-Link Layer Discovery Protocol-
ネットワークプロトコル探索隊 LLDP-Link Layer Discovery Protocol-
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
はじめての4,500円OS無しジャンクIntel MacbookにLinux,NetBSDインストール iin OSC 2020 Online/Kyoto...
201104016 osc2011 kobe
201104016 osc2011 kobe
PF部第19回資料 poor man's JTAG
PF部第19回資料 poor man's JTAG
retrobsd-2012-JUL-07 at JNUG BSD BoF
retrobsd-2012-JUL-07 at JNUG BSD BoF
Androidとfpgaを高速fifo通信させちゃう
Androidとfpgaを高速fifo通信させちゃう
Container Networking Deep Dive
Container Networking Deep Dive
Hacking with x86 Windows Tablet and mobile devices on Linux #FOSSASIA
Hacking with x86 Windows Tablet and mobile devices on Linux #FOSSASIA
Inside winnyp
Inside winnyp
JTAGを使ってみよう
JTAGを使ってみよう
Riscv+fpga200606
Riscv+fpga200606
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
WindowsタブレットでLinux、*BSD改造特集と裏技ハッキング in OSC東京2020 #osc20tk Hacking Linux and *...
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
Pdp11 on-fpga
Pdp11 on-fpga
Trema day 1
Trema day 1
20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameeting
ソフトウェア技術者はFPGAをどのように使うか
ソフトウェア技術者はFPGAをどのように使うか
Lagos running on small factor machine
1.
Lagopus running on
small factor machine Nov 18, 2014 Masaru OKI @masaru0714 m-oki@stratosphere.co.jp
2.
小さなマシン ●Mini-ITXなマシン→ふつうに動く。でも大きい ●候補
oIntel NUC, BRIX →おそらくふつうに動く。つまらん。 oZOTAC ZBOX →CPUいろいろ、モデルによる。 oWin8タブレット→Linuxだとタッチパネルも無線もダメ。 oGalileo, Edison →メモリが少なすぎる。無理。 ●半日で準備するなら、持ってるしZBOXかな……
3.
ZOTAC ZBOX nano
●Intel NUCみたいなサイズ o発売はNUCよりもずっと前 ●VIAやAMDのプロセッサを載せたモデルもある ●AMD-E350を載せたモデルを数年前に購入 oWiFi内蔵、GbEはRealtekが1本 oベアボーンにパーツを追加し組み立て oメモリ 4GB, SSD 32GB
4.
AMD E-350 ●1.6GHz
dual core (64bit), GPU内蔵, TDP18W ●ノート用プロセッサ ●MMX, SSE, SSE2, SSE3, SSSE3, SSE4a oSSE4.2やAVXには未対応 ●2011年発売 o当時のAtom (D525とか) 対抗 o2014年現在、ひとことでいえば、遅い
5.
AMD E-350でLagopus動くの? ●Intel
DPDKが動作するかが問題 oAMD PhenomIIではコンパイルできなかった(1.6.0) oPCAP PMD等を使えばIntel以外のNICでも動くが…… ●DPDKが動作すれば、おそらくLagopusも大丈夫 oスループットはおそらく出ないけど oメモリはひとまず足りている ●とにかく、動かしてみよう!
6.
OSのインストール ●今回使ったのは Fedora
20 (amd64) oUSB接続のDVDドライブを使う oとくに問題なく入る oGUIが基本なのでマウスがないと初期設定大変
7.
Intel DPDKのコンパイル ●DPDK
1.7.0を使ってみる ●コンパイルする→案の定エラーが出る olibrte_pmd_i40e olibrte_pmd_ixgbe olibrte_acl ●SSE4.2あるいはAVXが使えない問題
8.
DPDK 1.7.0コンパイルエラーの処置 ●i40e,
ixgbe→Intel 40GbE NIC, 10GbE NIC o当該ハードを使わない(使えない)のでconfigから削る ●librte_acl→ACLライブラリ o現在のLagopusでは使ってないのでconfigから削る ●config/common_linuxappを編集 oCONFIG_RTE_LIBRTE_I40E_PMD=n oCONFIG_RTE_LIBRTE_IXGBE_PMD=n oCONFIG_RTE_LIBRTE_ACL=n
9.
その後に出たDPDK 1.7.1 ●configの変更をしなくてもコンパイルとおった(!)
●ので、1.7.1を使います
10.
Lagopusのコンパイル ●必要なライブラリ・ツールはsudo yum
install oncurses-devel, libpcap-devel, oopenssl-devel, expat-devel, gmp-devel, obyacc, flex ●ふつうにDPDK版のconfigure, make ●とくに問題なく完了 ●ビルド時間は4分37秒 o参考: 手持ちのXeon E3機では30秒でした
11.
Lagopusを動かしてみる前に ●Ryuも入れておく osudo
yum install python-pip osudo yum install python-devel osudo pip install ryu
12.
Lagopusを動かしてみる前に(その2) ●PCAP PMDを使ってもいいけれど
●今回は自作したPipe PMDを使ってみます
13.
Pipe PMD ●DPDK
portを2つ生やすPMD ●2ポート1組で、つながっている(port idは連番) ●同一プロセス内で2ポートをつなぐ ●内部でrte_ringを2つ使っている Port id 0 Port id 1 TX RX TX RX rte_ring rte_ring
14.
LagopusとPipe PMD Lagopusはbridgeを複数作れます
bridgeどうしをつなぐのにPipe PMDを使います Lagopus br0 br1 pipe0 pipe1 pipe2 Port1=id 0 Port2=id 2 Port3=id 4 Port1=id 1 Port3=id 5 Port2=id 3
15.
Ryuのcertification testを動かす ●動かし方
ocd /usr/lib/python2.7/site-packages oryu-manager ./ryu/tests/switch/tester.py ●OpenFlowスイッチ(bridge)を2つ使う oDUT: datapath id 1のスイッチ o補助スイッチ: datapath id 2のスイッチ
16.
lagopus.conf interface {
ethernet { eth0; eth1; (中略) eth5; } } bridge-domains { br0 { dpid 0.00:00:00:00:00:01; port { eth0 port-no 1; eth2 port-no 2; eth4 port-no 3; } controller { 127.0.0.1; } } br1 { dpid 0.00:00:00:00:00:02; port { eth1 port-no 1; eth3 port-no 2; eth5 port-no 3; } controller { 127.0.0.1; } } }
17.
Pipe PMDの組み込み ●方法はいくつかある
oDPDKのツリーに加える oLagopusのツリーに加える oshared lib版DPDKを使いLagopus起動時に加える ●今回はLagopusの中に入れました oソースを置いて oMakefile(.in)に追記するだけ
18.
Lagopus起動コマンドライン sudo lagopus
-d -- -c3 -n1 --vdev eth_pipe0,socket=0 --vdev eth_pipe1,socket=0 --vdev eth_pipe2,socket=0 -- -p3f
19.
結果 ●テストトラフィックを流すとコケました。 Program
received signal SIGILL, Illegal instruction. [Switching to Thread 0x7fff715fe700 (LWP 16283)] 0x00007ffff63fa404 in _mm_crc32_u32 (__V=572662306, __C=0) at /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/smmintrin.h:815 815 return __builtin_ia32_crc32si (__C, __V); oDPDKのrte_hash_crc() oE-350ではCRC32命令がサポートされていない模様 oソフトで置き換えれば動くかも(さらに遅くなる) odpdk-dev MLでもソフトウェア実装が提案されている
20.
再挑戦 ●CRC32を使ってる場所は一か所 oフローを複数のworkerコアに振り分ける部分
oE-350のworkerコアは一つ、計算不要 ●CRC32計算しないオプションをつけてみる ●--fifoness none oCRC32を使わず受信したらとにかく分散させる o複数コアだとフローの順序性が保証されない oコアが一つなので問題なし
21.
動いた!! ●OK(955) /
ERROR(36) ●やっぱり遅い ●error内訳 oeth_type(1) oip_proto(8) ometer(27)
22.
遅い理由 ●ハードウェアがそもそも遅い oクロック1.6GHz
●dual coreでLagopusは速くない oI/O,OpenFlowを1core 1threadで交互に処理する oI/Oとworker間接続は1threadでもrte_ring経由 ●チューニングにより多少は改善可能
Descargar ahora