Openflow超解釈
-
Upload
hiroaki-kawai -
Category
Technology
-
view
482 -
download
3
Transcript of Openflow超解釈
3
I am
• Hiroaki KAWAI• 神戸在住• @kwi• Stratosphere, Inc. に在籍▫ SDNの会社として、AccessとIIJで設立▫ OmniSphere : Wireless + Openflow をテーマに製品化▫ Wireless + Openflowの開発はひきつづきやってます
4
最も短いOpenflow説明
• パケット転送装置。スイッチングハブ。• 転送の仕方を指定できる。• OSI参照モデルをぶち抜きで通して指定できる。▫ いきなり「TCP 80(HTTP)なら~」みたいに。
• ついでにちょっとした料理もできる。▫ IPアドレス書き換えとか。
• プログラムを書いて使う。▫ プログラム置き場として「コントローラ」▫ 転送装置は「スイッチ」と分離されているのが一般的
• スポット的に導入すると大変効果的。▫ mod_rewrite をイメージすると近しい感じ。
6
Openflow 1.5 released !!(Protocol version 0x06)
Illustrations by: http://free-illustrations.gatag.net/2013/12/08/170000.html
7
What's new
• Egress Tables• Packet Type aware pipeline• Extensible Flow Entry Statistics• Flow Entry Statistics Trigger• Copy-Field action• Packet Register pipeline fields• TCP flags matching• Group command• etc...
Packet Type aware ?
8
OXM_OF_PACKET_TYPE
• OXMの一つ▫ Match要素として▫ Set-fieldのフィールドとして▫ Out-of-bandデータとして
• 中身は構造体(仕様としては初めて)▫ 4 bytesを2,2に区切って、(uint16,uint16)と読み出す。▫ 前半を namespace 後半を ns_type と呼ぶ。
• OXM列の先頭になければならない(順序言及は初)
9
Packet type namespace
OFPHTN_ONF (0)
OFPHTN_UDP_TCP_PORT (3) + IANA port number
OFPHTN_ETHERTYPE (1) + IANA Ethertype
OFPHTN_IP_PROTO (2) + IANA Protocol number
OFPHTN_IPV4_OPTION (4) + IANA ip option number
OFPHTO_ETHERNET (0)
OFPHTO_NO_HEADER (1)
OFPHTO_OXM_EXPERIMENTER (0xFFFF)
10
… …えっと つまり ?
• Default = Ethernet▫ packet_inのdataに入っているのはethernet frame
• OFPHTO_NO_HEADER▫ “ex. circuit switch” (回線交換機)なんだそうだ
• packet_type▫ (3, 80) とやると、HTTPを直接扱うという意味
L1 – L7 に拡張
reassembleについての記述は無い!! (現時点では multiple type を範囲外としているため)
13
acme/ofp4json
$ go get github.com/hkwi/acme/ofp4json$ go install github.com/hkwi/acme/ofp4json
& DEMO