Submit Search
Upload
できる!trema-switch
•
Download as ODP, PDF
•
3 likes
•
2,532 views
Hiroaki Kawai
Follow
trema-switchの最近の動向についてまとめました。まず概要、次に開発者向け情報、最後に今後の相談について記載しています。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 28
Download now
Recommended
Tremaとtrema edgeの違い
Tremaとtrema edgeの違い
hiroshi oshiba
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
hiroshi oshiba
Trema day#4 Pio盛り ~Tremaのパケットパーサ~
Trema day#4 Pio盛り ~Tremaのパケットパーサ~
エイシュン コンドウ
Kanazawa.js.Next
Kanazawa.js.Next
dynamis
Nmap 9つの真実
Nmap 9つの真実
abend_cve_9999_0001
Doctrine2 odm-workshop-1
Doctrine2 odm-workshop-1
Hidenori Goto
Erlangご紹介 websocket編
Erlangご紹介 websocket編
Masatoshi Itoh
Ruby でパケットパーサを作ろう
Ruby でパケットパーサを作ろう
Yasuhito Takamiya
Recommended
Tremaとtrema edgeの違い
Tremaとtrema edgeの違い
hiroshi oshiba
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
hiroshi oshiba
Trema day#4 Pio盛り ~Tremaのパケットパーサ~
Trema day#4 Pio盛り ~Tremaのパケットパーサ~
エイシュン コンドウ
Kanazawa.js.Next
Kanazawa.js.Next
dynamis
Nmap 9つの真実
Nmap 9つの真実
abend_cve_9999_0001
Doctrine2 odm-workshop-1
Doctrine2 odm-workshop-1
Hidenori Goto
Erlangご紹介 websocket編
Erlangご紹介 websocket編
Masatoshi Itoh
Ruby でパケットパーサを作ろう
Ruby でパケットパーサを作ろう
Yasuhito Takamiya
ほんとにあったphantomjsのコワい話
ほんとにあったphantomjsのコワい話
Kohki Nakashima
World plonedaylt
World plonedaylt
Atsushi Odagiri
Nmapの真実(ゾクゾク)
Nmapの真実(ゾクゾク)
Keigo Yamazaki
プログラミング学習のための学習
プログラミング学習のための学習
siranon *
neobundle.vimについて+おまけ
neobundle.vimについて+おまけ
Shougo
PNA3秒クッキング
PNA3秒クッキング
wizstargaer
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
和弘 井之上
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
Start!! Ruby
Start!! Ruby
mitim
Python勉強会1-はじめに
Python勉強会1-はじめに
理 小林
Javaクラスファイルの読み方
Javaクラスファイルの読み方
y torazuka
Fluentd in #tkrk10
Fluentd in #tkrk10
SATOSHI TAGOMORI
心に残った名前ランキング
心に残った名前ランキング
infinite_loop
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
sandai
Vimはこわくない
Vimはこわくない
Yuichi Watanabe
【学習メモ#7th】12ステップで作る組込みOS自作入門
【学習メモ#7th】12ステップで作る組込みOS自作入門
sandai
【学習メモ#3rd】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門
sandai
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Yoshio Hanawa
人間たちとsystemd
人間たちとsystemd
Uchio Kondo
Testing PHP extension on Travis CI
Testing PHP extension on Travis CI
Yoshio Hanawa
パケットキャプチャの勘どころ Ssmjp 201501
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
Rgc.Deck.02.06.09
Rgc.Deck.02.06.09
kenmorimoto
More Related Content
What's hot
ほんとにあったphantomjsのコワい話
ほんとにあったphantomjsのコワい話
Kohki Nakashima
World plonedaylt
World plonedaylt
Atsushi Odagiri
Nmapの真実(ゾクゾク)
Nmapの真実(ゾクゾク)
Keigo Yamazaki
プログラミング学習のための学習
プログラミング学習のための学習
siranon *
neobundle.vimについて+おまけ
neobundle.vimについて+おまけ
Shougo
PNA3秒クッキング
PNA3秒クッキング
wizstargaer
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
和弘 井之上
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
Start!! Ruby
Start!! Ruby
mitim
Python勉強会1-はじめに
Python勉強会1-はじめに
理 小林
Javaクラスファイルの読み方
Javaクラスファイルの読み方
y torazuka
Fluentd in #tkrk10
Fluentd in #tkrk10
SATOSHI TAGOMORI
心に残った名前ランキング
心に残った名前ランキング
infinite_loop
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
sandai
Vimはこわくない
Vimはこわくない
Yuichi Watanabe
【学習メモ#7th】12ステップで作る組込みOS自作入門
【学習メモ#7th】12ステップで作る組込みOS自作入門
sandai
【学習メモ#3rd】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門
sandai
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Yoshio Hanawa
人間たちとsystemd
人間たちとsystemd
Uchio Kondo
Testing PHP extension on Travis CI
Testing PHP extension on Travis CI
Yoshio Hanawa
What's hot
(20)
ほんとにあったphantomjsのコワい話
ほんとにあったphantomjsのコワい話
World plonedaylt
World plonedaylt
Nmapの真実(ゾクゾク)
Nmapの真実(ゾクゾク)
プログラミング学習のための学習
プログラミング学習のための学習
neobundle.vimについて+おまけ
neobundle.vimについて+おまけ
PNA3秒クッキング
PNA3秒クッキング
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
【C++BUILDER STARTER チュートリアルシリーズ】シーズン2 C++Builderの部 第1回 ‟シューティングゲームのプログラム„
魔法少女 Laravel
魔法少女 Laravel
Start!! Ruby
Start!! Ruby
Python勉強会1-はじめに
Python勉強会1-はじめに
Javaクラスファイルの読み方
Javaクラスファイルの読み方
Fluentd in #tkrk10
Fluentd in #tkrk10
心に残った名前ランキング
心に残った名前ランキング
【学習メモ#4th】12ステップで作る組込みOS自作入門
【学習メモ#4th】12ステップで作る組込みOS自作入門
Vimはこわくない
Vimはこわくない
【学習メモ#7th】12ステップで作る組込みOS自作入門
【学習メモ#7th】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門
【学習メモ#3rd】12ステップで作る組込みOS自作入門
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
人間たちとsystemd
人間たちとsystemd
Testing PHP extension on Travis CI
Testing PHP extension on Travis CI
Viewers also liked
パケットキャプチャの勘どころ Ssmjp 201501
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
Rgc.Deck.02.06.09
Rgc.Deck.02.06.09
kenmorimoto
Fikir Nasil Bulunur
Fikir Nasil Bulunur
Firat Yildiz
Ohio Rapid Response Webinar 2
Ohio Rapid Response Webinar 2
Timothy Theberge
Village Relocation Conference Presenation
Village Relocation Conference Presenation
Andrew Mackenzie
Cloudstack networking の内側
Cloudstack networking の内側
Hiroaki Kawai
Nature
Nature
CK Tan
Massachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside Program
Timothy Theberge
How to Keep Workers Happy on Your Toughest Jobsite
How to Keep Workers Happy on Your Toughest Jobsite
Jeff Pollard
CSC Leasing
CSC Leasing
coreyj1472
Portifolio 2009 - 3d illustration
Portifolio 2009 - 3d illustration
ethip
4. Course Design: Putting it All Together
4. Course Design: Putting it All Together
ISEAL Alliance
Sneeuwklassen Terugkomdag Deel 2
Sneeuwklassen Terugkomdag Deel 2
sint.al.jo
Lego creations
Lego creations
smoser3039
WIA Bootcamp - Governance - Boards Only
WIA Bootcamp - Governance - Boards Only
Timothy Theberge
Session 1.3 Notes on PLNs
Session 1.3 Notes on PLNs
TechISM09
Valentine
Valentine
guestb947636
0119.El.Mandarin.De.Jose.Maria.Eca.De.Queiroz
0119.El.Mandarin.De.Jose.Maria.Eca.De.Queiroz
Gustavo Ramirez
Knowing Our Clients Keable Stl
Knowing Our Clients Keable Stl
keableeb
Faith The Way To Happiness
Faith The Way To Happiness
Abdullah Baspren
Viewers also liked
(20)
パケットキャプチャの勘どころ Ssmjp 201501
パケットキャプチャの勘どころ Ssmjp 201501
Rgc.Deck.02.06.09
Rgc.Deck.02.06.09
Fikir Nasil Bulunur
Fikir Nasil Bulunur
Ohio Rapid Response Webinar 2
Ohio Rapid Response Webinar 2
Village Relocation Conference Presenation
Village Relocation Conference Presenation
Cloudstack networking の内側
Cloudstack networking の内側
Nature
Nature
Massachusetts Rapid Response Set-Aside Program
Massachusetts Rapid Response Set-Aside Program
How to Keep Workers Happy on Your Toughest Jobsite
How to Keep Workers Happy on Your Toughest Jobsite
CSC Leasing
CSC Leasing
Portifolio 2009 - 3d illustration
Portifolio 2009 - 3d illustration
4. Course Design: Putting it All Together
4. Course Design: Putting it All Together
Sneeuwklassen Terugkomdag Deel 2
Sneeuwklassen Terugkomdag Deel 2
Lego creations
Lego creations
WIA Bootcamp - Governance - Boards Only
WIA Bootcamp - Governance - Boards Only
Session 1.3 Notes on PLNs
Session 1.3 Notes on PLNs
Valentine
Valentine
0119.El.Mandarin.De.Jose.Maria.Eca.De.Queiroz
0119.El.Mandarin.De.Jose.Maria.Eca.De.Queiroz
Knowing Our Clients Keable Stl
Knowing Our Clients Keable Stl
Faith The Way To Happiness
Faith The Way To Happiness
Similar to できる!trema-switch
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
NTT DATA Technology & Innovation
Serverless Framework 使ってる話(node.js)
Serverless Framework 使ってる話(node.js)
Naoto Teruya
Openflow超解釈
Openflow超解釈
Hiroaki Kawai
Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料
学 松崎
Ietf95 capport
Ietf95 capport
Mariko Kobayashi
Streaming Audio over HTTP 1.1 to Flask
Streaming Audio over HTTP 1.1 to Flask
Charles Heckroth
RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2
Kuniaki Igarashi
Lagopus & NFV with Vhost (Tremaday#9)
Lagopus & NFV with Vhost (Tremaday#9)
Tomoya Hibi
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用
kazuyas
小さく始める Docker container の deploy
小さく始める Docker container の deploy
Yoshinori Teraoka
Opa - Cloud Language
Opa - Cloud Language
Tozo Tanaka
DartPad+CodePenで、Flutterを体験してみよう
DartPad+CodePenで、Flutterを体験してみよう
cch-robo
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
Hiromichi Koga
Web技術勉強会 第33回
Web技術勉強会 第33回
龍一 田中
ブログを大阪リージョンに移行して東京リージョンをDRサイトにしています。その理由とRTO/RPOそしてコスト。
ブログを大阪リージョンに移行して東京リージョンをDRサイトにしています。その理由とRTO/RPOそしてコスト。
Mitsuhiro Yamashita
Practical migration from JSP to Thymeleaf
Practical migration from JSP to Thymeleaf
Toshiki Iga
東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた
Yoshiki Shibukawa
Lagopus performance
Lagopus performance
Masaru Oki
Scalaでのプログラム開発
Scalaでのプログラム開発
Kota Mizushima
次世代Webコンテナ Undertowについて
次世代Webコンテナ Undertowについて
Yoshimasa Tanabe
Similar to できる!trema-switch
(20)
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
Serverless Framework 使ってる話(node.js)
Serverless Framework 使ってる話(node.js)
Openflow超解釈
Openflow超解釈
Webサーバ勉強会 LT資料
Webサーバ勉強会 LT資料
Ietf95 capport
Ietf95 capport
Streaming Audio over HTTP 1.1 to Flask
Streaming Audio over HTTP 1.1 to Flask
RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2
Lagopus & NFV with Vhost (Tremaday#9)
Lagopus & NFV with Vhost (Tremaday#9)
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用
小さく始める Docker container の deploy
小さく始める Docker container の deploy
Opa - Cloud Language
Opa - Cloud Language
DartPad+CodePenで、Flutterを体験してみよう
DartPad+CodePenで、Flutterを体験してみよう
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
Web技術勉強会 第33回
Web技術勉強会 第33回
ブログを大阪リージョンに移行して東京リージョンをDRサイトにしています。その理由とRTO/RPOそしてコスト。
ブログを大阪リージョンに移行して東京リージョンをDRサイトにしています。その理由とRTO/RPOそしてコスト。
Practical migration from JSP to Thymeleaf
Practical migration from JSP to Thymeleaf
東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた
Lagopus performance
Lagopus performance
Scalaでのプログラム開発
Scalaでのプログラム開発
次世代Webコンテナ Undertowについて
次世代Webコンテナ Undertowについて
More from Hiroaki Kawai
Wireless openflow (english)
Wireless openflow (english)
Hiroaki Kawai
Play gopenflow (english)
Play gopenflow (english)
Hiroaki Kawai
Gopenflow demo v1 (english)
Gopenflow demo v1 (english)
Hiroaki Kawai
Play gopenflow
Play gopenflow
Hiroaki Kawai
Gopenflow demo v1
Gopenflow demo v1
Hiroaki Kawai
Wireless openflow with stratosphere experimenter
Wireless openflow with stratosphere experimenter
Hiroaki Kawai
Openflow - Reactive? Proactive?
Openflow - Reactive? Proactive?
Hiroaki Kawai
Cloudstack networking2
Cloudstack networking2
Hiroaki Kawai
Metro Style Dev #01 IMAP Client
Metro Style Dev #01 IMAP Client
Hiroaki Kawai
Python geohash 紹介
Python geohash 紹介
Hiroaki Kawai
Webteko mysqlftppc
Webteko mysqlftppc
Hiroaki Kawai
Skype Api
Skype Api
Hiroaki Kawai
mysqlftppc 紹介
mysqlftppc 紹介
Hiroaki Kawai
Php File Upload
Php File Upload
Hiroaki Kawai
More from Hiroaki Kawai
(14)
Wireless openflow (english)
Wireless openflow (english)
Play gopenflow (english)
Play gopenflow (english)
Gopenflow demo v1 (english)
Gopenflow demo v1 (english)
Play gopenflow
Play gopenflow
Gopenflow demo v1
Gopenflow demo v1
Wireless openflow with stratosphere experimenter
Wireless openflow with stratosphere experimenter
Openflow - Reactive? Proactive?
Openflow - Reactive? Proactive?
Cloudstack networking2
Cloudstack networking2
Metro Style Dev #01 IMAP Client
Metro Style Dev #01 IMAP Client
Python geohash 紹介
Python geohash 紹介
Webteko mysqlftppc
Webteko mysqlftppc
Skype Api
Skype Api
mysqlftppc 紹介
mysqlftppc 紹介
Php File Upload
Php File Upload
Recently uploaded
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
Recently uploaded
(9)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
できる!trema-switch
1.
できる!trema-switch Hiroaki KAWAI <kawai@stratosphere.co.jp>
2.
Introducing myself ● Apache好き。Webをやっていた。OSS好き。 ● 関西在住 ● 現所属:株式会社ストラトスフィア ● ACCESSとIIJで設立 ● SDNの会社 ● 技術開発部 ● Ruby …は書けません
3.
Interop Tokyo 2013
SDN ShowCase ● OmniSphere 1.0 展示 Buffalo G301N Trema-switch / OpenWRT に書換
4.
Trema-switch
5.
Trema-switch ● Part of “trema-edge” ● Github
にリポジトリ ● https://github.com/trema/trema-edge ● Tremaとの差分は大きい。別物。 ● Openflow 1.3 software switch ● tremaテスト用スイッチ ● なぜかCで書かれている ● netdevがportになる ● Openflowベンダは1.3で一度歩調を合わせることに なっているので、好都合
6.
他の実装 C Open vSwitch CpqD ofsoftswitch13 Indigo (IVS) Erlang LINC Lagopus C
C C kernel module or netdev netdev netdev netdev dpdk Pantou系 OpenWRT対応
7.
Trema-switch ● buildは簡単 $ rake trema_switch $
gcc src/lib/*.c src/switch/*/*.c …実は 超簡単! ということで、こうなる
8.
OpenWRT feed ● Trema-switch feed ● https://github.com/iHiroakiKawai/trema-openwrt ● OpenWRT
の feeds.conf に行を足すだけ …ただし 一部自前パッチが必要。uClibcに足をひっぱられ …て
9.
Trema-switch ● 起動も簡単! $ sudo TREMA_HOME=/var/tmp/sw1
./trema-switch -i 1 -e veth0a,veth1a,veth2a -c 192.168.1.201 -p 6653 -l debug -t syslog,stdout OpenWRTだと 「ディスクに書くのが辛い」 …システムもあり Datapath_id: 1 veth0a veth1a veth2a tcp:192.168.1.201:6653
10.
Trema-switchはできる子 ● 仕様準拠 ● テストスイッチかくあるべし。 Ryu certification 8: CPU足りない 8:
テストケースの不備
11.
…ちなみに Open vSwitch CpqD ofsoftswitch13 Indigo (IVS) LINC
Lagopus 673 /318 657 /330 386 /605 535 /444 952 /27 OK /NG …ハードウェアスイッチは概してもっと悪いです PoC は trema-switch で → 涙をのんで実装落とし込み http://osrg.github.io/ryu/certification.html
12.
安価なOpenflowスイッチ機器 ● OpenWRTの敷居が高いと感じたら、こんな選択肢 も ● Raspberry Pi ● Intel NUC USB
NIC
13.
Inside trema-switch
14.
trema_switch開発 ● 現在までのコミット数 2013-01 2013-02 2013-03 2013-04 2013-05 2013-06 2013-07 2013-08 2013-09 2013-10 2013-11 2013-12 2014-01 2014-02 2014-03 2014-04 2014-05 2014-06 0 10 20 30 40 50 60 Date Commits このあたりから参加
15.
Flags ● 内部にいくつかフラグがある ● WITH_PCAP ● USE_PCAP_IMMEDIATE_MODE ● GROUP_SELECT_BY_HASH ● こんな感じで使う $ gcc -DWITH_PCAP
src/lib/*.{c,h} src/switch/*/*.{c,h} -lpcap ...
16.
WITH_PCAP ● Cコンパイル時に定義するとlibpcap対応化 ● 抽象レイヤで最適な方法を選択してくれる ● mmap TPACKET_V3 ● Linux 3
VLAN offloading ● Double taggingはKernel 3.14以降 + libpcap patch(#346) ● あるいはKernel 2 系 ● ポータビリティ
17.
USE_PCAP_IMMEDIATE_MODE ● 比較的新しいlibpcapで使える ● pcap_set_immediate_mode() を呼び出す ● TPACKET_V2/V3 の特性の違いへの対応 ● TPACKET_V3はスループット重視 ● 即時応答性重視ならTPACKET_V2に切り替える
18.
GROUP_SELECT_BY_HASH ● Group output で Bucket
SELECT だったとき ● 完全ランダムではなくEthernet フレーム情報に基づ いて振り分ける ● 連続順に転送が期待されているパケット列のため ● Out-of-orderが発生しないように 個人的にはデフォルトで有効でいいと 思う
19.
私の場合 ● こんな感じでビルドしています $ gcc -Wall
-std=gnu99 -D_GNU_SOURCE -DGROUP_SELECT_BY_HASH -DWITH_PCAP -DUSE_PCAP_IMMEDIATE_MODE -Isrc/lib -Isrc/switch/datapath -Isrc/switch/switch src/lib/*.c src/switch/*/*.c -lsqlite3 -lpthread -lrt -lpcap -o trema_switch
20.
signal ● 内部状態の確認ができます ● SIGUSR1 ● Flow table dump ● SIGUSR2 ● Group
table dump ● Info レベルのログとして出力される
21.
And more
22.
相談ネタ ● OpenWRT feedメンテナンス事情 ● 通常は「特定リリース」+「patch群」で管理する ● trema-edge にリリースが無いので、常に
HEAD から ビルド ● 安定した環境を提供できない ● snapshotを取って起点を作る(アーカイブサイトと …して別途配布する)という手はあるが そろそろリリースしませんか?
23.
相談ネタ ● Trema-switchでOpenflow仕様の未完部分 ● CONTROLLER meter ● Queue ● トンネルポート ● ポートの動的追加削除 ● Role ● AsyncConfig ● SSL ● Performance tuning ● Containers ● Packet
parser ● Thread safety コントローラとの接続に関するもの 起動引数?に追加が必要なもの (switch-managerとの兼ね合い)
24.
拡張の名前空間欲しいな ● “Open” repositoryが欲しい ● 「OSS向けのExperimenter ID」とかないものか ● TCP
SYN,ACK,FIN match field とか ● …サブの名前空間でもいいので、あるといいな
25.
trema or trema-edge ● …統合
?
26.
そんなこんなで Gopenflow ● Golang で実装してみています ● pthread
…はもう嫌 ● https://github.com/hkwi/gopenflow ● とりあえず何でも対応する方向で ● Pcap netdevの後にdpdkも対応したい ● パフォーマンスも見る ● 全体の中での各処理がどのぐらいの比重になるのが 妥当なのかを把握しておきたい ● Windowsでも動く ● 現状 Ryu certification OK(981) / ERROR(10)
27.
ところで
28.
関西でSDN勉強会とかしませんか?
Download now