12
WebRTC を利用した ブラウザキャッシュ共有による データ配信システム 高知工科大学 情報学群 植田研究室 松下 和生

WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

Embed Size (px)

Citation preview

WebRTC を利用した

ブラウザキャッシュ共有による

データ配信システム

高知工科大学 情報学群 植田研究室

松下 和生

研究背景

• インターネットトラフィック 急増

– 特にビデオ配信トラフィック

• ネットワーク・サーバー 負荷増大

2

ネットワークトラフィックの削減

目的

P2P Web Proxy – 既存技術

• Web Proxy で通信を中継

– ピア同士で通信

– 通信を限られた NW 内で完結可能

3

キャッシュ を P2P で共有

P2PWeb Proxy

P2PWeb Proxy

Web サーバー

クライアント

P2P Web Proxy - 問題点

• 接続待ち受けが必要

→ セキュリティ上の懸念

• キャッシュの継続保持

→ ストレージ 圧迫

• 別途ソフトウェアが必要

4

既存 P2P Web Proxy には 多数の問題

5

ブラウザの プラグイン として動作

ウェブサーバー

シグナリングサーバー

WebRTC

HTTPHTTP

概要 (1/2) -WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

ブラウザの機能で通信を実現

• 拡張機能 API の利用

• WebRTCで直接通信

• 別途ソフトウェアが不要に

6

協調ダウンロードでキャッシュ保持不要

ウェブサーバー

• ストレージ圧迫 解消

• ダウンロード中ファイルのみ 共有

→ ダウンロード後 キャッシュを 削除

HTTP

クライアント

同時に DL

概要 (2/2) -WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

WebRTC – 利用技術

• 接続待ち受けが不要に

– 通信時のみ該当ピアでペアリング

• NAT 超えが非常に容易

7

ブラウザ間の 直接通信 が可能

NAT / NAPTブラウザ ブラウザ

直接通信

実装 (1/2) -

8

ウェブサーバー

シグナリングサーバー

WebRTC

基本的な機能は全て実装

JavaScript (Node.js)

• ピア情報の管理

ブラウザプラグイン

TypeScript

• HTTP クライアント• 内部 HTTP サーバー• WebRTC ノード

HTTP

WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

9

Chrome プラグインで通信を中継

内部 HTTPサーバ

ウェブページ

HTTP

プラグイン

実装 (2/2) -WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

• ウェブサーバーとの通信→ HTTP

• 他ピアとの通信→ WebRTC

ウェブサーバー

クライアント

WebRTC

結果 -

• キャッシュの継続保持が不要に

• 外部からの待ち受けが不要に

• 別途のソフトウェアが不要に

10

従来手法に比べ 導入が容易に

WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

既存の問題を解決

結論 -

P2P Web Proxy でトラフィック削減

11トラフィック削減による負荷減少

トラフィック急増による負荷増大

問題

結果

問題 解決案

帯域・ストレージ圧迫 協調ダウンロード

セキュリティ上の懸念 WebRTC の利用

要 別途ソフトウェア ブラウザプラグイン

実際に実装

WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム

11

1212

動画ファイルの 協調ダウンロード

ウェブサーバー

シグナリングサーバー

WebRTC

HTTP HTTP

ブラウザ

実演 - WebRTC を利用したブラウザキャッシュ共有によるデータ配信システム