210 likes | 321 Views
くじら(仮称). さだ. Background. 近年の著しい技術進化 PC の高性能化 ネットワークの広域化 →性能が余るようになった 分散コンピューティングの登場. Motivation. 従来の分散コンピューティングは Push 型 タスク配布ノードが各ピアにタスクを配布し、計算させる Pull 型に関する議論は少ない (本当かな?) 各ピアが受動的に取得したデータを集約・共有. タスク. (a) Push 型. データ. (b) Pull 型. Purpose. Pull 型分散コンピューティングの実現
E N D
くじら(仮称) さだ
Background • 近年の著しい技術進化 • PCの高性能化 • ネットワークの広域化 • →性能が余るようになった • 分散コンピューティングの登場
Motivation • 従来の分散コンピューティングはPush型 • タスク配布ノードが各ピアにタスクを配布し、計算させる • Pull型に関する議論は少ない(本当かな?) • 各ピアが受動的に取得したデータを集約・共有 タスク (a) Push 型 データ (b) Pull 型
Purpose • Pull型分散コンピューティングの実現 • ユーザがPCを利用したことによって発生したデータを集約・共有し、別のアプリケーションに役立てる • Webページ、メール、ネットワークトラフィックなど • センサネットワークのインターネット版のようなもの?
Pull型分散コンピューティングのアプリケーション例Pull型分散コンピューティングのアプリケーション例 • (データの種類:実現可能なアプリケーション) • HTML:P2P版 google • SPAMメール:SPAMフィルタ • 通信経路:トポロジ解析 • ここをアタック
Contribution • Push型と比較したPull型の利点 • 少ない負荷 • 限界までCPUやメモリなどのピアのリソースを使うPush型と比べ、負荷がはるかに小さい • 新種データの獲得 • 元からあるデータに計算を加えるPush型と比べ、新種のデータを獲得できるという特長を持つ • (考案中)
Approach • くじら(仮称) • ピアが通信したことのあるエンドホストに対してtraceroute • 全ピアのtraceroute情報を集約し、インターネットトポロジを作成 • 好みに応じて、自身のピアから見たインターネットトポロジの表示も可能
Classification of Related Work • トポロジ検出の推定材料となる情報 • BGP • ISPに協力しないと得られない • 公開してくれないISPも多い • traceroute • 時間がかかる • 少数の位置からでは把握できるトポロジに限界がある
Related Work Traceroute based BGP based ・Skitter ・Mercator ・インテックコア社の研究 ・B. Chung et al.(SIGCOMM CCR 2005) ・ Rocketfuel
Contribution • 従来のトポロジ可視化機構と比較した利点 • ノードの容易な配置 • ネットワークセグメント毎にトポロジ視覚化だけが目的のノードを配置する必要がない • Rocketfuel: 277 • Mercator:1 • インテックコア:複数 • 好みに応じて可視化されたトポロジを閲覧できるため、それを目的としたユーザが参加してくれる • 負荷分散 • データベースへのコミットを最小限にすることにより、負荷分散 • (考案中)
くじらのネットワーク構成図 可視化ノード データベースサーバ 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で共有 • ○時間毎、ソフト終了時にデータベースサーバにコミット • 描画(オプション) • ルータ・経路を描画
6.1.1.1 3.1.1.1 4.1.1.1 2.1.1.1 1.1.1.1 5.1.1.1 設計 • DHTの中身 • 各ルータのIPアドレスをキーとして、隣接ルータのIPアドレスを値として格納
B ノードAの視点 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 5.1.1.1 1.1.1.1 A DHTを参照し、2.1.1.1にはその他の隣接ルータがいることを発見 C 6.1.1.1 3.1.1.1 B 4.1.1.1 芋づる式に他のルータ、ピアも発見 2.1.1.1 1.1.1.1 5.1.1.1 A
実装 • 基本方針 • 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 の結果を組み合わせれば、インターネットトポロジ図を皆で完成できるのでは
命名 • なぜ、くじら? • くじらは深い海を低周波音で相手を発見、お互いの位置を認識します • インターネットを海に、ピアをくじらに例えてみました