利用者主導型仮想プライベート・ サブネットワークに関する研究

60
利利利利利利利利利利利利利利利利利利利利利利利利利利利利 利利利利利利利利 利利利利利利利利利利利 利利利利利利利利利利利利利 (CI) 利利利利 利利 利利利利 利利 利利 利利 利利利利 一,

Upload: howard-walton

Post on 03-Jan-2016

32 views

Category:

Documents


5 download

DESCRIPTION

利用者主導型仮想プライベート・ サブネットワークに関する研究. 慶應義塾大学政策・メディア研究科修士二年 サイバーインフォマティクス (CI)  青柳禎矩 主査 徳田英幸,副査 高汐一紀,戸辺義人. : Shepherd. 概要. 利用者主導型 VPN 構築機構の Shepherd の提案 ノード単位のアクセス制御が可能 既存ネットワーク構成,設定などを変更する必要がない 導入回数はプライベートネットワーク毎に一度のみ. アウトライン. 利用者主導型 VPN の必要性 Shepherd の提案および関連研究との比較 Shepherd の設計・実装 評価 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 利用者主導型仮想プライベート・ サブネットワークに関する研究

利用者主導型仮想プライベート・サブネットワークに関する研究

慶應義塾大学政策・メディア研究科修士二年サイバーインフォマティクス (CI)  青柳禎

主査 徳田英幸,副査 高汐一紀,戸辺義人

Page 2: 利用者主導型仮想プライベート・ サブネットワークに関する研究

概要

ه 利用者主導型 VPN 構築機構の Shepherd の提案ه ノード単位のアクセス制御が可能ه 既存ネットワーク構成,設定などを変更する必要がないه 導入回数はプライベートネットワーク毎に一度のみ

: Shepherd

Page 3: 利用者主導型仮想プライベート・ サブネットワークに関する研究

アウトライン

ه 利用者主導型 VPN の必要性ه Shepherd の提案および関連研究との比較ه Shepherd の設計・実装ه 評価ه 今後とまとめ

Page 4: 利用者主導型仮想プライベート・ サブネットワークに関する研究

本研究の背景と目的

Page 5: 利用者主導型仮想プライベート・ サブネットワークに関する研究

プライベートネットワーク

ه IP 通信可能なノードの増加ه ノード:個人利用する端末

ه 組織でのプライベートネットワーク構築

:プライベートネットワーク

Page 6: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Public NetworkPublic Network

仮想プライベートネットワーク(VPN: Virtual Private Network)

VPN

ه 遠隔地に存在する同一組織のプライベートネットワークの結合ه ノード間の透過的な通信の実現ه ネットワーク管理者による構築

Page 7: 利用者主導型仮想プライベート・ サブネットワークに関する研究

接続形態による VPN の分類

CE CE

private network A private network B

(a) Virtual Leased Line

CECE CE

private network Bprivate network A private network C

(b) Virtual Private Routed Networks/Virtual Private LAN Segment

CE

private network public network

(c) Virtual Private Dial Networks

mobilenode

private network A

(d) Virtual Private SubNetworks

private network B

node a node c

node b node d

Page 8: 利用者主導型仮想プライベート・ サブネットワークに関する研究

本研究の着目点

ه 利用者主導型の VPN に着目ه 従来の多くの VPN は管理者主導型

ى 利用者は無意識に VPN を利用していたه 利用シナリオ

ى 利用者が他のプライベートネットワークのノードと通信したい時ى プライベートネットワークは同一組織とは限らない

ه 機能要件ى ノード単位のアクセス制御が可能であることى 利用者のみで容易に VPN 構築機構を導入・利用可能であること

映像が見たい

映像が見たい

Page 9: 利用者主導型仮想プライベート・ サブネットワークに関する研究

本研究の目的

ه 利用者主導型 VPN の機能要件ه ノード単位のアクセス制御が可能であること

ى VPN の接続形態の一種である VPSN によって実現可能ه 利用者のみで容易に VPN 構築機構を導入可能であること

既存のى VPSN 構築機構には存在しない

利用者のみで容易に導入可能な VPSN 構築機構を提案し,設計・実装すること

Page 10: 利用者主導型仮想プライベート・ サブネットワークに関する研究

本研究による貢献

ه 下記を実現可能ه プライベートネットワーク専用アプリケーションの利用ه グループ専用アプリケーションの通信基盤

プライベートネットワーク専用の

アプリケーション使用 (DLNAなど)

グループ専用のアプリケーション実装

映像鑑賞

映像鑑賞新しいユビキタスアプリケーション

Page 11: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の提案および関連研究との比較

Page 12: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の提案

ه 利用者のみで容易に導入可能な VPSN 構築機構ه 既存ネットワーク構成,設定などを変更する必要がないه 導入回数はプライベートネットワーク毎に一度のみ

: Shepherd

Page 13: 利用者主導型仮想プライベート・ サブネットワークに関する研究

関連研究

ه ノードが送信した Ethernet フレームの集約手法の観点から分類ه Bridge Modelه Routing Modelه Flat Model

Page 14: 利用者主導型仮想プライベート・ サブネットワークに関する研究

関連研究 (1/3)

ه Bridge Model

ブリッジノードが必要

ネットワーク構成の変更が必要

既存の実装

・ P2P-CUG (NEC) など

問題点

・ネットワーク構成変更が必要

・ネットワークの知識が必要

: VPSN 構築機構

Page 15: 利用者主導型仮想プライベート・ サブネットワークに関する研究

関連研究 (2/3)

ه Routing Model

ルーティングテーブルの書き換え必要 既存の実装

・ SoftEther ( ソフトイーサ ) など

問題点

・ルータの設定変更が必要

・ネットワークの知識が必要

: VPSN 構築機構

Page 16: 利用者主導型仮想プライベート・ サブネットワークに関する研究

関連研究 (3/3)

ه Flat Model

ノードのソフトウェア改変が必要

全てのノードにインストールの必

既存の実装

・ i3・ hamachi・ ELA など

問題点

・導入の手間が多い・ノードによっては導入困難

: VPSN 構築機構

Page 17: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd

ه Shepherd のトラフィック集約手法ه Proxy ARP を利用するه シェパード(羊飼い)のようにトラフィック

を特定ノードに呼び寄せることができる

ns ss nd sd ARP 要求 ARP 代理応答

本来応答すべきノー

送信元 送信先

Page 18: 利用者主導型仮想プライベート・ サブネットワークに関する研究

比較

ه シェパードは導入が容易である

Bridge Routing Flat Shepherd

ネットワークの物理的変更

必要 不要 不要 不要

ネットワークの論理的変更

不要 必要 不要 不要

機構導入回数 少ない 少ない 多い 少ない

導入後の設定 必要 必要 必要 必要

Page 19: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の設計と実装

Page 20: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の機能要件

ه ノード単位のアクセス制御ه 既存プライベートネットワークの物理

的変更の不要ه 既存プライベートネットワークの論理

的変更の不要ه 少ない機構導入回数ه 接続先の容易な発見ه IP アドレス衝突の回避

Page 21: 利用者主導型仮想プライベート・ サブネットワークに関する研究

機能要件の実現手法 (1/4)

ه ノード単位のアクセス制御ه ⇒フォールドの概念を導入

The Internet

Private Network A Private Network Bsa na nb sb

fold 1

fold 2

Page 22: 利用者主導型仮想プライベート・ サブネットワークに関する研究

機能要件の実現手法 (2/4)

ه 既存プライベートネットワークの物理的変更の不要ه 既存プライベートネットワークの論理的変更の不要ه 少ない機構導入回数

ه ⇒Proxy ARP によって実現

ns ss nd sd ARP 要求 ARP 代理応答

本来応答すべきノー

送信元 送信先

Page 23: 利用者主導型仮想プライベート・ サブネットワークに関する研究

機能要件の実現手法 (3/4)

ه 接続先の容易な発見ه プライベートネットワークによっては IP アドレスが不定

利用者が接続毎に手動で教えてもらうのは利便性に欠けるىه ⇒ XMPP (eXtensible Messaging and Presence Protocol) の利

用インスタントメッセンジャのオープンプロトコルىXMPPى サーバによるアカウントの発行,認証

ي アカウント毎の Jabber ID 割り当てすでに多くの実装が存在ى

ي Google Talk など

Page 24: 利用者主導型仮想プライベート・ サブネットワークに関する研究

機能要件の実現手法 (4/4)

ه IP アドレス衝突の回避ه 新しいアドレス空間の形成 (10.0.0.0/8 など )

既存アドレス空間と衝突する可能性があるىه 既存アドレス空間の拡張

IPى アドレスを多く消費するが,衝突の可能性はない

実際の IP アドレス : 192.168.0.1 192.168.0.2 192.168.0.1 192.168.0.2 送信先 IP アドレス : 192.168.0.3 192.168.0.4 192.168.0.3 192.168.0.4

Page 25: 利用者主導型仮想プライベート・ サブネットワークに関する研究

全体構成と制約条件ه プライベートネットワーク

ه インターネットとの接続を持つEthernet , IPv4 のネットワークه Shepherd を導入した 1台のシェパードノードه DHCP サーバの存在

ه XMPP サーバه シェパードノードのアカウントが存在することه 他のアカウントを追加していること(フレンドシェパードノード)

ns ss nd sd

XMPP サーバ

シェパードノード(ss のフレンドシェパードノード)シェパードノード

Shepherd

Page 26: 利用者主導型仮想プライベート・ サブネットワークに関する研究

モジュール構成

Internal Message

TrafficUser Interface Module

Account ModuleManaging Fold

Module

ShepherdNodes List

Nodes List Fold List

Tending Module Proxy Module

Authenticate Refresh Refer Refresh Define Fold

Refresh Refer

Shepherd ID, password Edit Folds

ARP, DHCP Node’s traffic Shepherd

NetworkTo Shepherd Managing Server

To Nodes To Friend Shepherd Nodes

To Nodes, Friend Shepherd Nodes

Page 27: 利用者主導型仮想プライベート・ サブネットワークに関する研究

実装

ه Shepherdه 実装対象 OS

Windows XP ى

ه 実装言語C++ (Visual Studio .NET)ى

ي ヘッダを合わせて約 6000行

ه 使用ライブラリWinPcap: 低レイヤのネットワーク処理ىLibjingle: XMPPى 通信

Page 28: 利用者主導型仮想プライベート・ サブネットワークに関する研究

スクリーンショット

初期設定

フレンドシェパードノード一覧フォールド一覧

メッセージ

Page 29: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の利用手順 (1/5)

ه XMPP サーバへのログインه フレンドシェパードノードの

発見

ns ss nd sd

XMPP サーバ

発見フレンドシェパード

ノードが表示される

Page 30: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の利用手順 (2/5)

ه フォールドの作成ه 把握したノードの指定ه フレンドシェパードノードの指定ه フォールド名の指定

ns ssブロードキャストフレーム

( ARP 要求等)

Page 31: 利用者主導型仮想プライベート・ サブネットワークに関する研究

ns ss nd sd

フォールドが表示される

Page 32: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の利用手順 (3/5)

ه 送信先 IP アドレスの決定ه リレーエージェント DHCP 要求を出すه nd の IP アドレスが決定されるه 画面に表示される IP アドレスに送信

ns ss nd sd DHCP 要求

192.168.2.190 192.168.2.198

(192.168.2.197)

10.0.0.1 10.0.0.2

DHCP 応答受信

Page 33: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の利用手順 (4/5)ه トラフィックの誘導

ه ns が 192.168.2.197 宛に送信するため ARP 要求する

ه シェパードノード ss が ARP に応答する (Proxy ARP)

→ns が 192.168.2.197 宛 IP パケットを ss に送信するようになる

ns ss nd sd

ARP 要求where 192.168.2.197

ARP 応答192.168.2.190 192.168.2.198

(192.168.2.197)

10.0.0.1 10.0.0.2

Page 34: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の利用手順 (5/5)ه 実際のトラフィック転送

ه ns が 192.168.2.197宛に送信→ ssへ

ه ss はカプセリングして sd に転送

ه sd は宛先を 10.0.0.1 に書き換え等して ndへ転送

ns ss nd sd

IP PacketTo:192.168.2.197

192.168.2.190 192.168.2.198

(192.168.2.197)

10.0.0.1 10.0.0.2

Page 35: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の評価

Page 36: 利用者主導型仮想プライベート・ サブネットワークに関する研究

評価手法

ه 定性的評価ه 機能の観点による関連研究との比較

ه 定量的評価遅延・スループットの計測によるه

Shepherd の性能評価

Page 37: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定性的評価 - 評価項目 -

ه 利用者主導型 VPN の機能要件ه ノード単位のアクセス制御ه 既存プライベートネットワークの物理的変更の不

要ه 既存プライベートネットワークの論理的変更の不

要ه 少ない機構導入回数ه 接続先の容易な発見ه IP アドレス衝突の回避

Page 38: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定性的評価 - 評価対象 -

ه ノード単位のアクセス制御可能な機構に限定

Page 39: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定性的評価 - 評価結果 -既存 PN の物理

的変更不要既存 PN の論理

的変更不要少ない

機構導入回数接続先の

容易な発見IP アドレス衝突の回避

Shepherd ○ ○ ○ ○ ○p2pcug × ○ ○ ○ ×

ELA ○ ○ × × ○i3 ○ ○ × × ○

hamachi ○ ○ × ○ ○SoftEther

(Bridge Model)× ○ ○ × ×

SoftEther (Router Model)

○ × ○ × ×

SoftEther(Flat Model)

○ ○ × × ×

SSH ○ ○ × × ×SOCKS ○ ○ × × ×

Page 40: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定量的評価

ه 計測項目ه 遅延

ى node 1 - node 4 間の RTT

ى ping を用いて計測ه スループット

ى node 1 -> node 4 に対する UDP スループット

ى netperf を用いて計測 node 1 node 2 node 3 node 4

private network A private network B 192.168.1.0/24 192.168.2.0/24

router

: Shepherd

計測環境

Page 41: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定量的評価 (1/2) 遅延

ه RTT 増加(中央値で約 2.84 msec の増加)ه Shepherd による処理増加ه ホップ数の増加

ه ばらつき( q1 は 2.72 msec, q3 は 4.05 msec )ه 結果⇒許容範囲内である

ه インターネットでは定常的に発生しうる値ه 実装改良・ハードウェア性能向上により改善

1 2

Page 42: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の処理時間の分析 (1)

ه Pentium Counter を用いて計測ه Shepherd に評価用実装を加えたため,若干性能が減少する

ه ノードからシェパードノードへの Ethernet フレーム転送時ه Ethernet フレームの修正に用いるデータのキャッシュなどによっ

て改善の余地あり

node 1 node 2 node 3 node 4

router

処理時間 割合

転送先フレンドシェパードノードの検索

0.026 msec 0.04

Ethernet フレームの修正

0.454 msec 0.74

フレンドシェパードノードへの転送

0.303 msec 0.22

計 0.563 msec 1

1

Page 43: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd の処理時間の分析 (2)

ه シェパードノードからノードへの Ethernet フレーム転送時ه 検索処理は処理削減による改善の余地ありه ノードへの転送は, WinPcap に頼らない手法 (Ra

w Socket など ) を検討する必要あり

node 1 node 2 node 3 node 4

router処理時間 割合

送信元・送信先ノードの検索

0.316 msec 0.32

Ethernet フレームの修正

0.250 msec 0.25

ノードへの転送 0.435 msec 0.43

計 1.126 msec 1

2

Page 44: 利用者主導型仮想プライベート・ サブネットワークに関する研究

定量的評価 (2/2) スループット

ه スループットは 35.53 Mbps (中央値)ه Shepherd による処理の限界

ه 結果⇒許容範囲であるه インターネットの方がボト

ルネックになる

Page 45: 利用者主導型仮想プライベート・ サブネットワークに関する研究

スループット減少の過程の検証

ه IPヘッダの ID に着目ه 考察

ه 最初:バッファ内の受信した Ethernet フレーム全てを送信しようとするه 途中から: Shepherd は処理が追いつかずバッファが溢れ,受信した Eth

ernet フレームを間引いて送信する

Page 46: 利用者主導型仮想プライベート・ サブネットワークに関する研究

今後とまとめ

Page 47: 利用者主導型仮想プライベート・ サブネットワークに関する研究

今後の課題

ه セキュリティه 既存プロトコルなどを用いた下記項目の実装

通信の暗号化ى改ざん検出ى成りすまし検出ى

ه オーバヘッド軽減ه 実装改良による遅延の軽減,スループットの向上

ه 利用制限ه 必要に応じて,管理者による制限

Page 48: 利用者主導型仮想プライベート・ サブネットワークに関する研究

まとめ

ه 動的ノードグルーピングの必要性ه 利用者主導型 VPSN 構築機構 Shepherd の提

案ه ノード単位のアクセス制御が可能な VPN

ه 利用者のみで導入可能ه 導入はプライベートネットワーク毎に一回のみ

Page 49: 利用者主導型仮想プライベート・ サブネットワークに関する研究

参照文献

ه "異種セグメント端末による分散型仮想 LAN 構築機構の設計と実装 " 青柳 禎矩 , 滝沢 允 , 斉藤 匡人 , 間 博人 , 徳田 英幸 情報処理学会全国大会 Vol.66 (3) 2004 年 3月 March. 2004

ه "ELA: 分散型 VPN の設計と実装 " 青柳 禎矩 , 滝沢 允 , 斉藤 匡人 , 間 博人 , 徳田 英幸 日本ソフトウェア学会インターネットテクノロジーワークショップ (WIT2004)

ه "ELA: A Fully Distributed VPN System over Peer-to-Peer Network" Sadanori Aoyagi, Makoto Takizawa, Masato Saito, Hiroto Aida, Hideyuki Tokuda IEEE International Symposium on Applications and the Internet (SAINT 2005) 2005 年 1月 January. 2005 pp.89-92

ه "Shepherd: 利用者主導型動的ノードグルーピング機構 " 青柳禎矩 , 高橋ひとみ , 斉藤匡人 , 間博人 , 徳田英幸 日本ソフトウェア学会 SPA X

Page 50: 利用者主導型仮想プライベート・ サブネットワークに関する研究
Page 51: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Contribution

ه Lower load監視すべきパケットが減るه

ه Scalabilityه サーバの性能が足りなくなってきたら

サーバを追加するだけでよいه Redundancy

ه サーバを複数設置して冗長性を持たせることが可能

Page 52: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Motivation

ه 異なるネットワークに属する IP デバイス同士を容易につなげたいه ユビキタスコンピューティングの発展によって,

IP デバイスおよびこのような需要は増えるはず

Internet

Page 53: 利用者主導型仮想プライベート・ サブネットワークに関する研究

ه 4.2.2 ノードのグローバルな把握各ه PC は Buddy List を保持各ه IP デバイスごとにアクセス制限ができる

○○家の DVD レコーダからの接続NAS :   ○許可  ●禁止プラズマ: ●許可  ○禁止

Page 54: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Related Works

ه アプローチの種類ه Application Layerه Transport Layer

Page 55: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Related Work

ه 拠点間接続 VPNه 端末は何もインストールしなくても OKه 端末とゲートウェイの間に IPsec サーバを設置

ى IPsec サーバは端末からの「全て」のトラフィックを監視特定宛先のパケットだけトンネリング処理ى

ه SoftEther, P2P-CUG なども基本的に同一

IPsec サーバ

ゲートウェイ

Page 56: 利用者主導型仮想プライベート・ サブネットワークに関する研究

ه 問題点ه 性能的な問題

ى 高負荷ي 全てのトラフィックを監視するので重い

ي トンネリング通信以外の通信も影響をうける

ى ボトルネックي サーバが遅いと,全通信

が遅くなるي 気軽にサーバを追加でき

ないه ネットワーク構成

を変更する必要がある

ى 冗長性の欠如ي 壊れたら全く通信できな

ه 使用上の問題細かいアクセス制限がى出来ないي DVD レコーダには通

信してよいが, NASはダメとか

普通にى DHCP で IP アドレスが割り当てられると,そのデバイスにどのアドレスがついたか分かりにくい

Page 57: 利用者主導型仮想プライベート・ サブネットワークに関する研究

ه 2.3 ノードグルーピングのアプローチه Application Layer

puccى

ه Transport LayerSOCKSى

ه Network Layer ,SoftEtherى

ه Data Link Layer ,SoftEther, P2P-CUGى

Page 58: 利用者主導型仮想プライベート・ サブネットワークに関する研究

通信相手による通信の分類

ه パブリックなサーバに対する通信ه プライベートなノード同士の通信

番組表取得

google

動画鑑賞ファイル共

Page 59: 利用者主導型仮想プライベート・ サブネットワークに関する研究

Shepherd のモジュール図

Inducing module Capsulating module

User Interface

Node managingmodule

Nodes managingmodule

ARP要求

ARP応答

DHCP要求

MACアドレ

ノード追加?

ノード追加要請

トラフィック受信

トラフィック

送信

宛先要求

宛先応答

宛先存在確認

宛先存在応答

ノード追加

内部メッセージ

トラフィック

Page 60: 利用者主導型仮想プライベート・ サブネットワークに関する研究

private network A private network B 192.168.1.0/24 192.168.2.0/24

router