study

D3.js v4 の Hierarchical Edge Bundling を理解する(3)

はじめに 1回目, 2回目 を経て、ようやく Hierarchical Edge Bundling の話へ。この辺を参考に。 svg要素の基本的な使い方まとめ Hierarchical Edge Bundling v4 port - bl.ocks.org Sample Code サンプルコードはこれ d3-hierarchical-edge-bundling.html d…

D3.js v4 の Hierarchical Edge Bundling を理解する(2)

はじめに 前回 は cluster layout で階層データを描いていました。ここから Hierarchical Edge Bundling にいく……前にこれをちょっと変えます。上下方向(水平・垂直方向)に広げて描いていた階層を円周上にレイアウトしてみたいと思います。参考 Radial Dendr…

D3.js v4 の Hierarchical Edge Bundling を理解する(1)

はじめに 最近、某プロジェクト用の補助ツールとかを作るために D3.js - Data-Driven Documents を触ってるんですね。で、Hierarchical Edge Bundling - bl.ocks.org みたいなのを描きたいなあとおもったんですが、壁がありまして。 そもそもこのサンプルス…

VyOSでL2透過なNetwork Emulatorをつくる

VyOS で Network Emulator という話は前見ていたので記憶の片隅にあったわけです。 VyOS でネットワーク遅延やロスを発生させるには - らくがきちょう で。こういうのを見つけたわけですね。 VyOS on KVM で透過ファイアウォールを作る : あかぎメモ 思った…

RANCIDでVyatta/VyOSのコンフィグを管理する

はじめに 自宅のサーバ環境を一部更新するのにあたってついでなので VyOS/1.1.0 のインストールをしてみました。 こんな感じで、2台の hypervisor 上に VyOS/1.1.0 と VC/6.3 が乗っています。VLAN 101, 103 はそれぞれ hypervisor 上の物理的に異なる NIC …

I-D"SDN Layers and Architecture Terminology"読んでみた(3)

4. SDN Model View 4. SDN Model View We advocate that the SDN southbound interface should encompass both CPSI and MPSI.我々は、SDN サウスバウンドインタフェースは CPSI と MPSI の両方を包含すべきだと提唱する。 SDN controllers such as [NOX] an…

I-D"SDN Layers and Architecture Terminology"読んでみた(2)

3. SDN Layers and Architecture 3. SDN Layers and Architecture Figure 1 summarizes in the form of a detailed high-level schematic the SDN architecture abstractions. Note that in a particular implementation planes can be collocated with othe…

I-D"SDN Layers and Architecture Terminology"読んでみた(1)

注意事項 元文書はこれ: draft-irtf-sdnrg-layer-terminology-02 - SDN Layers and Architecture Terminology 用語や基本的なモデルの定義と整理、周辺技術サーベイの基礎的なドキュメントとして有用だと思うので、英語のトレーニングというのもかねて読んで…

IPv4 addr bitmask calculation

IPv4アドレスのビットマスク計算を覚えよう…より正確には、覚え方を覚えましょう、という話。おまえ何年ネットワークエンジニアやってるんだって話なんですが、いまだにネットマスク計算とかワイルドカードマスク計算がねえ…覚えられなくてねえ。使う値は決…

Multiple Site-to-Site VPNs in VRF mode (2)

はじめに 前回 Multiple Site-to-Site VPNs in VRF mode では、Amazon VPC を想定して、複数の Site-to-Site VPN (IPsec VPN) をそれぞれ VRF に関連づけて分離する方法を調べました。今回は、 前回は FDVRF を明示する方法でやってたけどあの構成だとほとん…

Multiple Site-to-Site VPNs in VRF mode

やりたいこと ひとつ(物理)ルータで複数の拠点に対して IPsec VPN をはりたい 各拠点とのVPNは、システムとしては別物なので、相互に通信しない(分離する) 個々の VPN(IPsec SA) を別々の VRF にマッピングしてルーティングテーブルを分離する。 MPLS-VPN 的…

大Trema day (Trema day #6) 参加メモ

大Trema Day : ATND 大Trema Day (Trema Day #6?) まとめ - Togetterまとめ 大Trema dayに参加してきました。今回は信学会NV研共催ということで場所は東大・本郷です。 例によって聞きながらのメモなので内容的に怪しげなところがあるかもしれませんのでご容…

ACLをどうにかしたい話(3)

herokuで公開してみた Web Frontend を Sinatra アプリとして作ってみました。って話だったんですが、いまこれを VMware Player 上のマシンで作っていたので、試しに使ってみようとすると、 vmware player起動する ssh login WEBrick起動 という手間がかかる…

ACLをどうにかしたい話(2)

どうにかしたい話(1) がもう4ヶ月前? なかなか先に進まない、というかちょっと気合い入れて手をつけられる時間が取れないと結構しんどい物があって。まあ正月休みはわりといろいろ書きかえたんだけど、基本的には rubocop に怒られまくったところを直して直…

ruby expect でルータ操作

すごく前に作った perl-Expect なスクリプト を元に一括コンフィグバックアップスクリプトとか使ってたんですが、 適当に作ったから汎用性がない 最近ぜんぜん perl 使ってないからかなり忘れてしもた という有様で。したがって機能追加とかすごくしにくい状…

Trema Day #4 参加メモ #tremaday

Trema Day #4 参加してきました。というか発表してきました。毎度のごとく各発表のメモを公開しておきます。 Trema Day まとめ - TremaDay Trema Day #4 | 集客ならイベントアテンド Trema Day #4 #tremaday - Togetter Trema Dayといいつつ他の OFC Framewo…

Trema/Wireshark/OpenFlow Dissector関連情報

OpenFlow Dissector の使い分け OpenFlow Message のおパケ見をしようとする場合、今のところ以下のツールを使い分ける必要があるようです。 OpenFlow 1.0 Stanford Univ. の ofdissector を使う OpenFlow Wireshark Dissector - OpenFlow Wiki Wireshark Op…

Trema/Pioでパケットを作ろう(3)

まあ、細かいこと考えてたなかなか先進まないのでやれそうなことやってしまえ、ってことで、TCP packet generator/parser を作ってみました。やってみたメモ。 コードは Gist へ。 simple-router + udp echo server function using Pio Pioのクラスとファイ…

Trema/Pioでパケットを作ろう(2)

続きです。 IP, UDP の話 Checksum 計算 Gist みればわかると思いますが、simple-router の中に router-utils.rb ってのがあるんですね。これの checksum 計算用のルーチンを丸パクリです。チェックサム計算のコード自体はなんか ruby っぽくないので、まだ…

Trema/Pioでパケットを作ろう(1)

trema/pio でいろんなパケットを作ってみよう! という話です。 Trema の packet generate/parse の機能が Pio として分離されています。こいつを使えば任意のパケットの生成・送受信機能を作れる。はず。ということで作ってみました。可変長フィールドのある…

ACLをどうにかしたい話

ちょっとやっては飽きたり挫折したり面倒くさくなって放り投げたりしていた企画を今月になってまたやっていました。 Perl で Cisco ACL Parser を作れないかな? Road to Cisco ACL Parser Road to Cisco ACL Parser(2) Road to Cisco ACL Parser(3) ……あらた…

Trema-edge + OVSでOpenFlow1.3テスト環境を作る

はじめに そろそろ OpenFlow 1.3 なテストをやってみたいなあと思ったので Trema-edge のビルドと KVM + Open vSwitch でのテスト環境の構築をやってみた。といっても、Trema-edge でサンプル (learning-switch) が動くってところまで。 環境と下準備 Contro…

Trema/MyRoutingSwitch(7), Topology Change and Re-route(10)

前回の続き。OVS patch port はどうも状態が固定されているらしく、ポートの状態変更ができないとか、ポート消しても link down を検出できないとか、そうなってしまうようです。とはいえ、OpenFlowテスト環境をつくる(7) でやったみたいに、overlay 的な環…

Trema/MyRoutingSwitch(7), Topology Change and Re-route(9)

あいかわらずごちゃごちゃやってます。トポロジ変化と、それに対してどうパケットの経路制御するかというのを見てきたのですが、KVM/OVS 実機でトポロジ変更させるのがやたらと面倒くさいので、基本的には Trema のネットワークエミュレータ機能を使ってテス…

Trema Day #3 参加メモ #tremaday

はじめに 前回に引き続き Trema Day #3 参加してきました。 TremaDay Trema Day #3 | 集客ならイベントアテンド Trema Day #3 #tremaday - Togetter Giving is Taking - Networking: Trema Day #3 に参加してきた(一部) いやあ、今回人多かったですねえ。過…

Ubuntu/KVM/OVSでOpenFlowテスト環境をつくる(7)

一連のシリーズで見てきていますが中身が変わるのでちょっとタイトル変更。連番は継続。これまでは、ポータブルな環境を、という考え方で vmware player 1 KVM Server (OVS+KVM で複数ブリッジ接続環境を模擬) 1 Controller Server (Trema) みたいな構成でど…

Trema/MyRoutingSwitch(6), 全対最短経路(2)

全対最短経路に変えた事によるアレコレ。 Topology based flooding 従来(point-to-point shortest-path) Broadcast/Unknown-unicast による flooding は、いままで management network 経由で全スイッチに対して packet-out していたので、openflow network …

Trema/MyRoutingSwitch(6), 全対最短経路(1)

はじめに MyRoutingSwitch(5) のシリーズ ではトポロジの変化に対してどうやって経路迂回させるか、みたいな話をいろいろやってきました。それで、いろいろ試してみたけど、やっぱりリアクティブでやる方法って今ひとつ拡張性とか微妙だなあと。もうちょっと…

Trema/MyRoutingSwitch(5), Topology Change and Re-route(8)

トポロジ変化の処理についてどういう対応ができそうか、というのについてこれまであれこれ見てきたのですが、気づいたところとかをだらっと上げておきたいと思います。 前提・条件を明示する 作っているうちに暗黙的に仮定している物があって、そういうのが…

Trema/MyRoutingSwitch(5), Topology Change and Re-route(7)

はじめに リンク追加(リンクアップ)に伴うトポロジ変化について。今回は、リンクが増えたときにどういうフロー情報操作が必要になるか? という話を見ていきます。昨日の夜 master にマージした他ので一応ソースも。 training/my-routing-switch at 1131b58f0…