Enviar búsqueda
Cargar
of_protocol_tremaday5
•
1 recomendación
•
2,201 vistas
エイシュン コンドウ
Seguir
flowforwardingのof_protocolで遊んでみた話です。 おおざっぱすぎるんで、後日修正したのを再アップします。
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 18
Descargar ahora
Descargar para leer sin conexión
Recomendados
Loom openflow controller in 10 min
Loom openflow controller in 10 min
エイシュン コンドウ
Cloud stackユーザ会大阪 運用Tips 20130802
Cloud stackユーザ会大阪 運用Tips 20130802
hirokihojo
Korejanai Story
Korejanai Story
Kentaro Takeda
Mk state in-programming-01
Mk state in-programming-01
Miya Kohno
FlexPod Day 2016 - Cisco session (Publish edition)
FlexPod Day 2016 - Cisco session (Publish edition)
Takao Setaka
Tokyo meetup 20160224
Tokyo meetup 20160224
Takao Setaka
L2 over l3 ecnaspsulations (english)
L2 over l3 ecnaspsulations (english)
Motonori Shindo
OpenStack Congress and Datalog (English)
OpenStack Congress and Datalog (English)
Motonori Shindo
Recomendados
Loom openflow controller in 10 min
Loom openflow controller in 10 min
エイシュン コンドウ
Cloud stackユーザ会大阪 運用Tips 20130802
Cloud stackユーザ会大阪 運用Tips 20130802
hirokihojo
Korejanai Story
Korejanai Story
Kentaro Takeda
Mk state in-programming-01
Mk state in-programming-01
Miya Kohno
FlexPod Day 2016 - Cisco session (Publish edition)
FlexPod Day 2016 - Cisco session (Publish edition)
Takao Setaka
Tokyo meetup 20160224
Tokyo meetup 20160224
Takao Setaka
L2 over l3 ecnaspsulations (english)
L2 over l3 ecnaspsulations (english)
Motonori Shindo
OpenStack Congress and Datalog (English)
OpenStack Congress and Datalog (English)
Motonori Shindo
中国にOpenflowを入れてきた話
中国にOpenflowを入れてきた話
cloretsblack
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
Node最新トピックス
Node最新トピックス
shigeki_ohtsu
自動でできるかな?
自動でできるかな?
_norin_
OpenStack Congress and Datalog (Japanese)
OpenStack Congress and Datalog (Japanese)
Motonori Shindo
10分で作るクラスライブラリ
10分で作るクラスライブラリ
_norin_
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
シスコシステムズ合同会社
HTTP/2, QUIC入門
HTTP/2, QUIC入門
shigeki_ohtsu
Web制作・運用会社に必要なCDNサービスとは?
Web制作・運用会社に必要なCDNサービスとは?
J-Stream Inc.
ノリとその場の勢いでPocを作った話
ノリとその場の勢いでPocを作った話
zaki4649
とある診断員とAWS
とある診断員とAWS
zaki4649
Janog37 Pattern BoF
Janog37 Pattern BoF
Miya Kohno
Jcsug21 20140912
Jcsug21 20140912
hirokihojo
Contiv 20160914
Contiv 20160914
Takao Setaka
Cedexis
Cedexis
J-Stream Inc.
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
cloretsblack
Lagopus & NFV with Vhost (Tremaday#9)
Lagopus & NFV with Vhost (Tremaday#9)
Tomoya Hibi
試してわかるSDN
試してわかるSDN
cloretsblack
Router chat for np
Router chat for np
Okuya Igarashi
npstudy 161129
npstudy 161129
エイシュン コンドウ
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜
Eric Sartre
Laravelを使ってみた
Laravelを使ってみた
Jaeseop Jeong
Más contenido relacionado
Destacado
中国にOpenflowを入れてきた話
中国にOpenflowを入れてきた話
cloretsblack
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
Node最新トピックス
Node最新トピックス
shigeki_ohtsu
自動でできるかな?
自動でできるかな?
_norin_
OpenStack Congress and Datalog (Japanese)
OpenStack Congress and Datalog (Japanese)
Motonori Shindo
10分で作るクラスライブラリ
10分で作るクラスライブラリ
_norin_
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
シスコシステムズ合同会社
HTTP/2, QUIC入門
HTTP/2, QUIC入門
shigeki_ohtsu
Web制作・運用会社に必要なCDNサービスとは?
Web制作・運用会社に必要なCDNサービスとは?
J-Stream Inc.
ノリとその場の勢いでPocを作った話
ノリとその場の勢いでPocを作った話
zaki4649
とある診断員とAWS
とある診断員とAWS
zaki4649
Janog37 Pattern BoF
Janog37 Pattern BoF
Miya Kohno
Jcsug21 20140912
Jcsug21 20140912
hirokihojo
Contiv 20160914
Contiv 20160914
Takao Setaka
Cedexis
Cedexis
J-Stream Inc.
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
cloretsblack
Lagopus & NFV with Vhost (Tremaday#9)
Lagopus & NFV with Vhost (Tremaday#9)
Tomoya Hibi
試してわかるSDN
試してわかるSDN
cloretsblack
Router chat for np
Router chat for np
Okuya Igarashi
npstudy 161129
npstudy 161129
エイシュン コンドウ
Destacado
(20)
中国にOpenflowを入れてきた話
中国にOpenflowを入れてきた話
TLS, HTTP/2演習
TLS, HTTP/2演習
Node最新トピックス
Node最新トピックス
自動でできるかな?
自動でできるかな?
OpenStack Congress and Datalog (Japanese)
OpenStack Congress and Datalog (Japanese)
10分で作るクラスライブラリ
10分で作るクラスライブラリ
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
【Interop Tokyo 2016】 Seminar - EA-14 : シスコ スイッチが標的型攻撃を食い止める ~新しい内部対策ソリューション「C...
HTTP/2, QUIC入門
HTTP/2, QUIC入門
Web制作・運用会社に必要なCDNサービスとは?
Web制作・運用会社に必要なCDNサービスとは?
ノリとその場の勢いでPocを作った話
ノリとその場の勢いでPocを作った話
とある診断員とAWS
とある診断員とAWS
Janog37 Pattern BoF
Janog37 Pattern BoF
Jcsug21 20140912
Jcsug21 20140912
Contiv 20160914
Contiv 20160914
Cedexis
Cedexis
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
情シス戦線異状アリ!? 自作のパケットレコーダーで海外拠点のLANを自動監視してみた
Lagopus & NFV with Vhost (Tremaday#9)
Lagopus & NFV with Vhost (Tremaday#9)
試してわかるSDN
試してわかるSDN
Router chat for np
Router chat for np
npstudy 161129
npstudy 161129
Similar a of_protocol_tremaday5
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜
Eric Sartre
Laravelを使ってみた
Laravelを使ってみた
Jaeseop Jeong
My開発環境の話
My開発環境の話
Yuta Ohashi
PowerShellが苦手だった男がPowerShellを愛するようになるまで
PowerShellが苦手だった男がPowerShellを愛するようになるまで
Kazuhiro Matsushima
実践Excelスクレイピング
実践Excelスクレイピング
宏明 塩原
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
Yuta Hayakawa
UniRxでPUNを使いやすくする
UniRxでPUNを使いやすくする
torisoup
OSC hiroshima 2014
OSC hiroshima 2014
nemumu
libpgenでパケット操作
libpgenでパケット操作
slankdev
簡易デプロイツール(スクリプト)を作ってみた話
簡易デプロイツール(スクリプト)を作ってみた話
yokoda_toshiaki
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013
0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013
Tasuku Suenaga
LibreOffice ヘルプを翻訳してみよう
LibreOffice ヘルプを翻訳してみよう
Kazumi Ohhashi
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
Futoshi Tanuma
Fn project爆誕
Fn project爆誕
Hiroshi Hayakawa
Reproducebility 100倍 Dockerマン
Reproducebility 100倍 Dockerマン
Nagi Teramo
Cake assets plugin in PHP Matsuri 2012
Cake assets plugin in PHP Matsuri 2012
Hirohide Sano
R超入門
R超入門
Sachiko Hirata
Perl入学式をやってみた! - YAPC::Asia 2012
Perl入学式をやってみた! - YAPC::Asia 2012
Takayuki Fukumoto
オープンソース入門
オープンソース入門
VirtualTech Japan Inc./Begi.net Inc.
Similar a of_protocol_tremaday5
(20)
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜
Laravelを使ってみた
Laravelを使ってみた
My開発環境の話
My開発環境の話
PowerShellが苦手だった男がPowerShellを愛するようになるまで
PowerShellが苦手だった男がPowerShellを愛するようになるまで
実践Excelスクレイピング
実践Excelスクレイピング
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
UniRxでPUNを使いやすくする
UniRxでPUNを使いやすくする
OSC hiroshima 2014
OSC hiroshima 2014
libpgenでパケット操作
libpgenでパケット操作
簡易デプロイツール(スクリプト)を作ってみた話
簡易デプロイツール(スクリプト)を作ってみた話
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013
0から学んだポストモダンPerl @ YAPC::Asia Tokyo 2013
LibreOffice ヘルプを翻訳してみよう
LibreOffice ヘルプを翻訳してみよう
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
Fn project爆誕
Fn project爆誕
Reproducebility 100倍 Dockerマン
Reproducebility 100倍 Dockerマン
Cake assets plugin in PHP Matsuri 2012
Cake assets plugin in PHP Matsuri 2012
R超入門
R超入門
Perl入学式をやってみた! - YAPC::Asia 2012
Perl入学式をやってみた! - YAPC::Asia 2012
オープンソース入門
オープンソース入門
Último
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Último
(8)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
of_protocol_tremaday5
1.
Of_protocolで遊んでみた @Eishun_Kondoh
2.
自己紹介 • 某SIerでSEしています。 • 普段はネットワーク周りばかり(ですが、最近ruby 使った仕事もさせてもらってます) •
Trema派です。 • 最近、プログラミングを勉強し始めたばかりの素 人です。
3.
今日は • of_protocolの話を少しだけします。 – あんまりないようは追っていないよ!!! •
Erlangの話は一切しません。 • Openflow1.3の話もしません。 • 遊んでみた話が中心です。
4.
Of_protocolってなんすか • Erlangで書かれています。 • Flowforwarding.orgの中のerlangでopenflowな人たち が作ったLINCというソフトウエアスイッチのOFパケット パーサ •
使えるバージョンは1.2(3)と1.3(4) – ofp_v1.hrlとofp_v2.hrlは1.0と1.1のヘッダみたいなのある けど、実装はされていない・・・? • 1.4(5)のブランチもあるようだ…?
5.
Of_protocolのモジュールたち① • • • • • • • • • • • • • • • • gen_protocol.erl of_protocol.app.src ofp_channel.erl ofp_channel_sup.erl ofp_client.erl ofp_client_v4.erl ofp_conn_listener.erl ofp_conn_listener_sup.erl ofp_parser.erl ofp_utils.erl ofp_v4.erl ofp_v4_decode.erl ofp_v4_encode.erl ofp_v4_enum.erl ofp_v4_map.erl ofp_v4_utils.erl
6.
Of_protocolのモジュールたち② • 中を読んでもらうとわかるかも。LINCでの用途 以外にも、OpenFlowコントローラでも利用さ れることを意識した作りこみになっているよう に見える。 • decodeでどんなメッセージが返ってくるかは、 大体include/ofp_vX.hrlと include/of_protocol.hrlを見ればわかる。
7.
使い方 • of_protocol:encode(#ofp_message) # =>
<<….>> ※バイナリが返ってくる。 • of_protocol:decode(BinaryData). # => #ofp_message{…} ※of_protocol.hrlにかいてるレコードがえられる。
8.
LINCでのテストをチラ見する。 hello() -> message(#ofp_hello{}). message(Body) -> #ofp_message{version
= 4, xid = get_xid(), body = Body}. encode(Message) -> of_protocol:encode(Message) これでhelloのバイナリを作れます。 簡単だね!
9.
で、もう少し使ってみる。 • ErlangのOpenFlowコントローラには既に FlowERというものがあるが、、、
10.
少し作ってみた。 • Flowerベースだけど、コントローラのコード上の 見た目が少しだけ違う。 – 個人的には、そのままだと使いづらかった。。。 (FlowERをdisっているわけではない) •
時間がなかったので、全体的に3.5kLOCという短 さで実装。そのために色々なerlangで書かれたラ イブラリ等をいっぱい使って実装したみた。 • Openflow1.3に対応させてみた。
11.
構成図 app sup Connection Pool(ranch) Switch manager OpenFlow Switch event dispatcher
12.
構成図 app sup Connection Pool(ranch) Switch manager OpenFlow Switch event dispatcher
13.
Switch manager コードはごちゃごちゃしてきたないので割愛。。。 gen_fsm(behaviour ) TransportMod Event
Dispatcher of_protocol :de/encode
14.
何となくこんな感じに書いて、実行してみる。 Learning switch に相当するよ!
15.
Trema switchを起動しておく • sudo
-E ./objects/switch/switch/switch -datapath_id=4 --server_ip=localhost -server_port=6653 --switch_ports=eth0
16.
結果 $ sh start.sh ….[起動メッセージ] connected
from {127,0,0,1}:37903 Verdict: flood ちゃんとtremaスイッチに怒られずに 動かせた!!!!
17.
まとめ • 今回は、openflowでの新しい遊び方を提案し てみました。 – オレオレコントローラを作って遊ぶのたのしいで す。 •
of_protocolは便利です。 – 動かすだけなら、短くかけます。
18.
以上
Descargar ahora