210 likes | 336 Views
既存ネットワークとの高親和性を持つ ノードグルーピング機構に関する研究. さだ. 2.背景. 2.1 インターネットの普及 IP アドレスが足りなくなるくらい多くのノードがインターネットを介した通信を実現 ノードには 2 種類 IP ホスト:一般的な PC のように,ソフトウェアを容易に更新できるノード IP デバイス:ネットワークプリンタ・ DLNA 対応テレビなど,ソフトウェアの更新が無理・困難なノード. 2.2 ノードグルーピングの必要性 現在のネットワークは(原則として)地理的に近いノードを集約したもの
E N D
既存ネットワークとの高親和性を持つノードグルーピング機構に関する研究既存ネットワークとの高親和性を持つノードグルーピング機構に関する研究 さだ
2.背景 • 2.1 インターネットの普及 • IPアドレスが足りなくなるくらい多くのノードがインターネットを介した通信を実現 • ノードには2種類 • IPホスト:一般的なPCのように,ソフトウェアを容易に更新できるノード • IPデバイス:ネットワークプリンタ・DLNA対応テレビなど,ソフトウェアの更新が無理・困難なノード
2.2 ノードグルーピングの必要性 • 現在のネットワークは(原則として)地理的に近いノードを集約したもの • ネットワークを跨いだ通信はファイアウォールやNATなどの制限が多い • 今後のユビキタスコンピューティングの発展に伴い,より多くのノードが,(地理的に遠い)ネットワークを跨いだ通信を行う必要性がでてくる • ノードをグルーピングし,そのノード群で互いに透過的な通信ができる基盤が必要
3. ノードグルーピング実現の問題点 • 3.1 問題の背景 • IPデバイスの普及 • 各ノードにソフトウェアインストールを要するモデルでは,IPデバイスがグループに参加できない • ネットワーク構成の必要性 • ネットワークを物理的に変更(ルータを換装する,LANケーブルを差し替えるなど)が必要なモデルは • ネットワーク設定の必要性 • ネットワークを論理的に変更(ルーティングテーブルを変更するなど)
ノードグルーピング時の目標 • IPデバイスへの変更を必要としない • IPで通信できるだけでよい • 既存のネットワーク構成を変更しない • LANケーブルの抜き差しなど,物理的な変更を行わない • 既存のネットワーク設定を変更しない • ルータの設定など,論理的な変更を行わない
3.2 既存のモデル • Sites Connected Model ルーティングテーブルの書き換え必要 トンネリング用のサーバが必要 ネットワーク構成の変更が必要 トンネリング用のサーバが必要 Layer 2 の場合 Layer 3 の場合
既存のモデル • Nodes Connected Model IPデバイスのソフトウェア改変が必要
3.3 問題の解決策 • Sites Connected Model with Alternative Path ? • 既存のPC1台にソフトウェアをインストールするだけで良い • それ以外のノードに変更は必要ない • ネットワーク構成,設定などを変更する必要がない ソフトウェアのインストール
4.設計 • 4.1 概要
4.2 動作手順 • 4.2.1 想定環境 • ホームネットワーク • ルータ1台 • ソフトウェアの改変できない • NAT,DHCPを提供 • IPホストが1台以上 • そのうち1台がソフトウェアのインストール可能 • IPデバイスが0台以上
4.2.2 ノードのグローバルな把握 • Global Buddy List:他ネットワークに存在するノードの一覧 • XMPP(オープンIM用プロトコル)を用いて取得 あるXMPP サーバ(talk.google.com など)
4.2.3 ノードのローカルな把握 • IPデバイス接続時 • IPデバイスはDHCP要求 • PCはIPデバイスのMACアドレスを把握する 新しいIPデバイスを検出しましたVPN接続するデバイスに追加?デバイス名: はい いいえ 接続,DHCP要求
4.3.4 トンネリング通信 • Proxy ARP をVPNに応用する • PC (10.0.0.254) は未使用IPアドレスを発見 • 例えば 10.0.0.2 とする • 10.1.0.1 と通信するときは,10.0.0.2 を用いる • 端末 (10.0.0.1)は 10.0.0.2 と通信するためARPを投げる • PCはARPに対して応答する • 端末は10.0.0.2 宛のIPパケットを送信 • これはサーバに届く • PCはそのIPパケットの宛先を 10.1.0.1 に書き換えてカプセル化 • 他のネットワークのPC (10.1.0.254) に送信 10.0.0.1 10.0.0.254 10.1.0.1 10.1.0.254
5.実装 • 5.1 概要 • 環境 • Windows XP • 言語 • Visual C++ • ライブラリ • 低レイヤのネットワーク処理 • WinPcap • Buddy List の管理 • Libjingle を用いたXMPPによる通信
Contribution • Lower load • 監視すべきパケットが減る • Scalability • サーバの性能が足りなくなってきたらサーバを追加するだけでよい • Redundancy • サーバを複数設置して冗長性を持たせることが可能
Motivation • 異なるネットワークに属するIPデバイス同士を容易につなげたい • ユビキタスコンピューティングの発展によって,IPデバイスおよびこのような需要は増えるはず Internet
4.2.2 ノードのグローバルな把握 • 各PCはBuddy List を保持 • 各IPデバイスごとにアクセス制限ができる ○○家のDVDレコーダからの接続 NAS: ○許可 ●禁止プラズマ: ●許可 ○禁止
Related Works • アプローチの種類 • Application Layer • Transport Layer
拠点間接続VPN 端末は何もインストールしなくてもOK 端末とゲートウェイの間にIPsecサーバを設置 IPsecサーバは端末からの「全て」のトラフィックを監視 特定宛先のパケットだけトンネリング処理 SoftEther, P2P-CUG なども基本的に同一 Related Work ゲートウェイ IPsecサーバ
問題点 性能的な問題 高負荷 全てのトラフィックを監視するので重い トンネリング通信以外の通信も影響をうける ボトルネック サーバが遅いと,全通信が遅くなる 気軽にサーバを追加できない ネットワーク構成を変更する必要がある 冗長性の欠如 壊れたら全く通信できない 使用上の問題 細かいアクセス制限が出来ない DVDレコーダには通信してよいが,NASはダメとか 普通にDHCPでIPアドレスが割り当てられると,そのデバイスにどのアドレスがついたか分かりにくい
2.3 ノードグルーピングのアプローチ • Application Layer • pucc • Transport Layer • SOCKS • Network Layer • SoftEther, • Data Link Layer • SoftEther, P2P-CUG,