Trema Day

2015-12-12 / [network] [sdn] [nfv] [openflow]

14:00 はぎわらさん

物理ネットワークのテスト。 TremaやMininetの柔軟な構成を物理ネットワークでも再現することでテストしたい。

mininetのホストとエッジ装置間のpatch panelをovsで実現している。

テストの属人性を減らしていきたい。機器接続のノウハウがmininetのスクリプト上に集約されることで、知識が人に所属しなくなる。

l1patch部分はプロプラSWでもよいがスケーラビリティなどを考慮するとOFSがフィットしている(沖縄ラボだとpica8をおいている)

Q. テスト対象ネットワークの状態を変更して副作用が起きるような検証にどう対応するか。

Q. ProductionとStageもpatchでB/Gデプロイのように切り替えることができるのでは

14:17 @Clorets8lack NFVの運用事例

スライド

広域ネットのBCP対策をNFVでやる、という話。PoCの提案くらいのレベル。

既存のネットワークには変更を加えない。

別拠点に配置したNFVをdest NATゲートウェイにする。 ユーザは問題が起きたらNFV側をnext hopに切り替える。

NFVはVyOSを使っている。

14:45 OpenVNet アンドレアス・キーケンスさん

Axshで働いている方。

NFVのような機能を凝集した層がある。

VM VM VM
-------------
Functions
-------------
Physical

VNAが制御のコア部分(Tremaがいる)

VNet Edgeにはどんな機能があるのか?

wakameusersgroup.org

15:00 OpenStack Kuryr qb0c80aEさん

スライド

OpenStackとDockerNetworkingのはなし。

NeutronとDockerのNWをつないでくれる。 いくつかのスクリプトだけで連携できるようになるらしい。

  • veth: L2
  • netns: L3

nsdbに使うkvsはzookeeperらしい

15:10 OpenDaylightでApplicationを設定する Ichさん

スライド

KarafはOSGiのラッパー。

YANGってSNMPのMIBと同じ?

RESTconf = Rest + Netconf

↑Haskellで実装してみたい

YANGからJSONモデルへのマッパがある。 YANGはモデルだけで他のData StoreやSBIは自分で実装する必要がある。

作ったfeatureをKarafへと登録するためにmavenのpomファイルを駆使しないといけない。

featureというのはOpenDaylightで使える機能やプロトコルの単位で作成される。

発表者本人からのODLディスりがすごい。

RESTCONFの実装を作るのはすごくきになる。 NETCONFをHTTPのトランスポートまでリフトするものだとしたらとてもいいと思う。

15:45 Openflow Traceroute @atzmさん

スライド

  • D-planeでの動的解析がしたい
  • なるべく本番flowを触らない

Standordのndb (SDN Debugger)

ほしいものに近いのはIBMのSDN Traceroute

  • 事前にトポロジが必要
  • グラフ彩色問題という計算的な問題がる

OFSの数だけ色というマーカを定義する →ではなくmetadataを使ってシンプルにマーカを管理するだけでいける、という話。

OpenFlowでは障害切り分けがすごく大変そうなので、 こういう解析系ノウハウが提案されていくのは普及への強い力になると思う。

16:00 @yasuhito 高宮安仁さん

スライド

ネットワークスライスを提供したいとする。

  • スライス機能
  • トポロジ探索
  • SPF
  • ...

実装が難しい!!! → 小さなクラスに分けよう(ふつう)

haskellであればpipesのフィルタを組み合わせる感じだな。

RoutingSwitch
→
PathManager run Dijkstra
→
Path (上流からFlowMod)

リンクが消える場合

RoutingSwitch: PortDownを受信
イベントをTopologyへ送信
Topology: PathManagerにリンクの削除を通知
PathManager: FlowModでリンクを消す

RoutingSwitchはただのRouterまたはDispatcherだ。

TremaはOFS向けのバックエンドなんだな。 TremaではRPC機能としてプロキシインタフェースを作って外部から呼ばせる方法がある。

これはもはやJava時代のRMIと同じなのでもうダメだ。 Haskellのservantみたいに型から導出するような道があればいいのに。

※ なんというかIce breakして質問しやすくするのも大事だな。

まとめ

MP-BGP使ったVPN運用やっている人がいるとしれただけでもよかった。 自分がやってるノウハウってどこで活かせるのか徹底的に疑問だったので。

参加されている年齢層は比較的高めに感じたし、とても温和な方が多そうだった。 IT業界は広いけれどネットワーク分野はいい雰囲気で好きだな。 問題解決のためにバリバリ作るというスタンスが見えてよいな。