くじら(仮称): 共同体的インターネットトポロジビジュアルブラウザ
Download
Report
Transcript くじら(仮称): 共同体的インターネットトポロジビジュアルブラウザ
くじら(仮称)
さだ
Background
ﻪ近年の著しい技術進化
ﻩPCの高性能化
ﻩネットワークの広域化
→ ﻩ性能が余るようになった
ﻪ分散コンピューティングの登場
Motivation
ﻪ従来の分散コンピュー
ティングはPush型
ﻩタスク配布ノードが各ピ
アにタスクを配布し、計
算させる
タスク
(a) Push 型
ﻪPull型に関する議論は
少ない
データ
(本当かな?)
ﻩ各ピアが受動的に取得
したデータを集約・共有
(b) Pull 型
Purpose
ﻪPull型分散コンピューティングの実現
ﻩユーザがPCを利用したことによって発生した
データを集約・共有し、別のアプリケーションに
役立てる
ﻯWebページ、メール、ネットワークトラフィックなど
ﻩセンサネットワークのインターネット版のような
もの?
ﻪPull型分散コンピューティングのアプリケー
ション例
ﻩ
ﻩ
ﻩ
ﻩ
(データの種類:実現可能なアプリケーション)
HTML:P2P版 google
SPAMメール:SPAMフィルタ
通信経路:トポロジ解析
ﻯここをアタック
Contribution
ﻪ
Push型と比較したPull型の利点
1. 少ない負荷
ﻩ
限界までCPUやメモリなどのピアのリソースを使
うPush型と比べ、負荷がはるかに小さい
2. 新種データの獲得
ﻩ
元からあるデータに計算を加えるPush型と比べ、
新種のデータを獲得できるという特長を持つ
3. (考案中)
Approach
ﻪくじら(仮称)
ﻩピアが通信したことのあるエンドホストに対し
てtraceroute
ﻩ全ピアのtraceroute情報を集約し、インターネッ
トトポロジを作成
ﻩ好みに応じて、自身のピアから見たインター
ネットトポロジの表示も可能
Classification of Related Work
ﻪトポロジ検出の推定材料となる情報
ﻩBGP
ﻯISPに協力しないと得られない
ﻯ公開してくれないISPも多い
ﻩtraceroute
ﻯ時間がかかる
ﻯ少数の位置からでは把握できるトポロジに限界が
ある
Related Work
Traceroute based
・Skitter
・Mercator
・インテック
コア社の研究
Rocketfuel
BGP based
・B. Chung et al.
(SIGCOMM CCR 2005)
・
Contribution
ﻪ
従来のトポロジ可視化機構と比較した利点
1. ノードの容易な配置
ﻯ
ネットワークセグメント毎にトポロジ視覚化だけが目的の
ノードを配置する必要がない
ﻳ
ﻳ
ﻳ
ﻯ
Rocketfuel: 277
Mercator:1
インテックコア:複数
好みに応じて可視化されたトポロジを閲覧できるため、そ
れを目的としたユーザが参加してくれる
2. 負荷分散
ﻯ
データベースへのコミットを最小限にすることにより、負荷
分散
3. (考案中)
くじらのネットワーク構成図
可視化ノード
データベースサーバ
DHT
くじらの表示イメージ
ﻪトポロジを可視化すると、下図のようなもの
が表示されます
ﻩ表示は各ピアによって異なります
6.1.1.1
3.1.1.1
4.1.1.1
2.1.1.1
1.1.1.1
5.1.1.1
動作概要
ﻪルータの発見手法
ﻩ自分の通信をpcapで観察
ﻩ目新しいIPアドレスを見つけたら、traceroute
ﻪ情報集約
ﻩ普段はルータの情報をDHTで共有
○ ﻩ時間毎、ソフト終了時にデータベースサーバにコ
ミット
ﻪ描画(オプション)
ﻩルータ・経路を描画
設計
ﻪDHTの中身
ﻩ各ルータのIPアドレスをキー キー
として、隣接ルータのIPアドレ 1.1.1.1
2.1.1.1
スを値として格納
6.1.1.1
3.1.1.1
4.1.1.1
2.1.1.1
1.1.1.1
5.1.1.1
値
2.1.1.1
1.1.1.1
2.1.1.1
3.1.1.1
2.1.1.1
4.1.1.1
2.1.1.1
5.1.1.1
3.1.1.1
2.1.1.1
3.1.1.1
4.1.1.1
4.1.1.1
2.1.1.1
ノードAの視点
B
Cと通信し、ルータ
2.1.1.1と3.1.1.1を
発見
1.1.1.1
A
C
6.1.1.1
3.1.1.1
4.1.1.1
B
2.1.1.1
2.1.1.1
1.1.1.1
5.1.1.1
A
DHTを参照し、
2.1.1.1にはその他
の隣接ルータがい
ることを発見
C
4.1.1.1
B
芋づる式に他の
ルータ、ピアも発
見
6.1.1.1
3.1.1.1
2.1.1.1
1.1.1.1
A
5.1.1.1
実装
ﻪ基本方針
ﻩ3D-tcpdump+DHT+traceroute
ﻪ環境
ﻩJava+Java3D
ﻩBamboo DHT (Java based)
ﻩJNI (pcap, traceroute用)
検討事項
ﻪルータなどの描画の配置はどうする?
ﻩ皆がよく経由するルータは基幹にあるものと考えて、中央に描画
していく
ﻩドメイン名がIXのものは中央に描画していく
ﻪトポロジ推定、DHT維持のためのトラフィック量が多くなら
ないか?
ﻩあまりに多いと、Pull型の意味がない・・・
ﻪ各ピアに近いルータの情報はなるべくそのピアで管理さ
せたい
ﻪルータの情報が更新されたら、該当ピアに通知したい
ﻩData Driven DHT?
ﻩ通知先ピアが多くなったらマルチキャストなども
発展
ﻪトポロジに基づいたDHTの改良
ﻩLocation Based ID
ﻩLocation Based Routing
ﻩLocation Based Data Placement
背景(本音)
ﻪ3D-tcpdump はネットワークのトラフィックを
可視化したが、トポロジの可視化をしてみ
るとどうなるか?
ﻪ3D-tcpdump にDHTを組み合わせると・・・
ﻩ各ピアのネットワーク状況を共有できる
ﻩTraceroute の結果を組み合わせれば、イン
ターネットトポロジ図を皆で完成できるのでは
命名
ﻪなぜ、くじら?
ﻩくじらは深い海を低周波音で相手を発見、お
互いの位置を認識します
ﻩインターネットを海に、ピアをくじらに例えてみ
ました