SlideShare a Scribd company logo
1 of 26
デスクトップ画像共有
システムのための,
トーナメントアルゴリズム
を使った負荷分散機構
山之上卓†1 杉田裕次郎†1 小荒田裕理†1 小田謙太郎†1 下園幸一
†1
鹿児島大学
マルチメディア,分散,協調とモバイル(DICOMO2013)シンポジ
2F-4, 2013 7/10@北海道十勝川温泉 ホテル大平原
目次
 1. はじめに
 2. Web Screen Share
 3. Distributed Web Screen Share
 4. ISCノードによる平衡2分木の構成
 5. トーナメントアルゴリズムによる負荷分散
 6. アルゴリズムの拡張
 7. 関連研究
 8. おわりに
1. はじめに-1
 授業やゼミや会議
 パソコン画面をプロジェクタでスクリーンに投影
 -> 遠くから小さな字や絵を見ることが困難
 このような問題に対処するため
 -> SOLAR-CATS[1][4] やMulti VNC[7]
 -> 会議参加者それぞれに, これらのソフトウェアをインストール
したパソコンが必要.
 (市村先生のQuick Boardはその問題はありません)
1. はじめに-2
 最近, みんな、スマートフォンやノートパソコンを携帯
 発表者のパソコンのデスクトップ画像を,
 このような機器で,
 特別なソフトウェアやアプリをインストールすることなしに,
 共有したい
 -> 「Web Screen Share」
 我々のゼミで利用
1. はじめに-3
 Web Screen Share
 HTML5の Web Socket技術
 パソコンデスクトップ画面共有システム
 複数の, HTML5対応 Webブラウザに, 画像中継Webサーバを通じ
て, 送信元パソコンのデスクトップ画面をリアルタイムで配信
 Web Screen Share は, 参加者が20名程度までなら, 問題な
く動作
 この人数を超えると, 動画を表示するときに, 動きの滑らか
さが失われてしまう
1. はじめに-4
 この問題を,
 平衡2分木上に接続されたサーバ間データ転送ノード
 を使うことによって, 解消
 送信元パソコンのデスクトップ画像を
 サーバ間データ転送ノードを使って
 複数の画像中継Web サーバに配送
 Web ブラウザ
 複数の画像中継Webサーバに, 自動的に, 均等に, 接続
 「Distributed Web Screen Share」
1. はじめに-5
 Webブラウザの均等割り当て
トーナメントアルゴリズムを使って実現
 Distributed Web Screen Share
 動画表示の動きの滑らかさを損なうことなく,
 より多くのWebクライアントで
 同じデスクトップ画面を共有
1. はじめに-6
2. Web Screen Share-1
 Client-Server 型
 HTML5 の Web Socket 技術を使った
 パソコンデスクトップ画像の実時間共有システム
 構成
 1台の Web Server
 複数の Web Client
 画像取得とその画面をサーバに送信する Screen Sender
2. Web Screen Share-2
2. Web Screen Share-3
 Screen Sender
 デスクトップ画像を繰り返し取得
 通常のSocket を使って Web Server に送信
 Screen Sender から画像を受け取った Web Server
 その画像を各Web Client に対応した Queue の最後に追加
 Queue に溜まった画像の量が一定値を超えると, その値を超えな
いようにQueue の先頭部分にある画像を削除
 現在, この一定値は 3 .
2. Web Screen Share-4
 Web Client
 HTML5 , Web Socket
 Web Server に対して get コマンドを繰り返し発行
 Web Server が get コマンドを受け取ると
 Web Client に対応した Queue の先頭にある画像を,
 get コマンドを受け取った Socket に対して送信
 その画像を Queue から削除
 画像を受け取った Web Client …その画像を表示する.
 Jetty を利用(開発当時は Web Socket が利用できるWeb
サーバ)
2. Web Screen Share-5
CPU :intel インテル Celeron
デュアルコアE1200 1.6GHz 相当
Memory: 2GB
Screen Sender : 5fps
解像度: 1440 x 900
Network: 100Mbps
(NIC: 1Gbps)
3. Distributed Web Screen Share-1
 大規模な会議にも対応したい->
 数百台のWeb クライアントが画面共有できるようにしたい
 Web クライアント増加による性能劣化を緩和したい
Distributed Web Screen Share (DWSS)を開発
 DWSS
 Node System を平衡2分木状に接続
 葉の位置にあるNode system の Web Server にWeb Client をでき
るだけ均等に割り当て
3. Distributed Web Screen Share-2
3. Distributed Web Screen Share-3
 平衡2分木のすべてのISC Node に画像を中継するため,以下
のmulti-casting 手続きを利用する.
 準備
 すべてのノード(ISCノード)は、
親、左(の子)、右(の子)
 の3つの全2重のTCP 接続を持つ null の場合もある
 手続き
 どれかのTCP接続から multicast データを受け取ったら, それを他
の接続に転送する
 受け取った multicast データのノード内処理を行う
4. ISCノードによる平衡2分木の構成-1
 特許 No. 5186624, (Feb. 2013)
 新規ノード追加時
 準備
 すべてのノードは、自分の左右それぞれの子孫の数を記憶
 葉ノードはそれぞれ0
 根以外のノードは、一定間隔で、
自分(1)+左の子孫の数+右の子孫の数
を親ノードに通知
4. ISCノードによる平衡2分木の構成-2
 ノード追加処理 (recursive procedure)
 あるノードにおいて、
左右ともども子孫がいなかったら、左に追加
左に子孫がいて、右にいなかったら、右に追加
それ以外は子孫の数の少ない方に対してノード追加処
理
 新規ノードは(原則として)(グループの)根ノードから追加
4. ISCノードによる平衡2分木の構成-3
 グループ内ノード障害発生時・離脱時の処理
 ノード数情報を親ノードに送るとき、親から反応がない場合は親
がいなくなったと判断
 根以外のグループ内の任意のノードは、親がいなくなったら、自
分を新規ノードとして根に追加処理を依頼
 一時的にバランスはくずれるが、徐々にバランスが保たれ
る方向にノードが追加される。
5. トーナメントアルゴリズムによる負荷分
散-1
 準備
 任意のノードは、以下の情報を持つ
 [自分のWebサーバの情報, そのWeb Client の数]
 左の子孫における[Web Client 接続先候補, そのWeb Client の数]
 右の子孫における[Web Client 接続先候補, そのWeb Client の数]
 ノードの[Web Client 接続先候補, そのWeb Client の数]
5. トーナメントアルゴリズムによる負荷分
散-2
 定期的に以下を行う
 葉ノードは、[自分のWeb サーバの情報, そのWeb Client の数]を
[Web Client 接続先候補, その Web Client の数]とする
 節ノードは、左右を比較して、Web Client の数が少ない方(勝っ
た方)の
[Web Client 接続先候補, その Web Client の数]を
ノードの[Web Client 接続先候補, その Web Client の数]とす
る
 根ノード以外は
ノードの[Web Client 接続先候補, その Web Client の数]
を親ノードに伝える
5. トーナメントアルゴリズムによる負荷分
散-3
 新規に Web Client が接続されるとき
 その Web Cliet は根ノードに接続する.
 次に、根ノードの Web Client 接続先候補に redirect する。
 葉ノードの中で最も Web Client 数が少ない Web サーバに
接続する --- 負荷分散
6. アルゴリズムの拡張
 1つの葉ノードに接続される Web Client の制限
 全Web Client 数のモニタ… Web Client 増加時には ノードを
追加するなどに利用
 (Web Client数減少時)葉ノードへのWeb Client の接続制
限
葉ノードを空にしてグループから削除
7. 関連研究
 SOLAR-CATS … Web Client ではない
 拡張Edutab … 負荷分散はない
 AKAMAI … 限られたIP範囲内の、せいのでドーンには向か
ない
 FCAN … 特殊なDNS を利用
 Ustream Live Producer … 遅延が大きい
 Web RTC … DWSS に使えるかも
7. おわりに
 大量のクライアント間の画面共有システムの負荷分散
 大量のWi-Fi 端末を使う会議や授業のための「ポータブルク
ラウド」開発中。これに組み込み予定
 ノード数が減っていくとき対策として、Web Client におけ
る定期的な接続やり直しの方法もあり

More Related Content

Viewers also liked

A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...
A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...
A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...Takashi Yamanoue
 
A Wearable LED Matrix Sign System@ACM SIGUCCS2015
A Wearable LED Matrix Sign System@ACM SIGUCCS2015A Wearable LED Matrix Sign System@ACM SIGUCCS2015
A Wearable LED Matrix Sign System@ACM SIGUCCS2015Takashi Yamanoue
 
TwitterとWikiを使った自動情報提示システム
TwitterとWikiを使った自動情報提示システムTwitterとWikiを使った自動情報提示システム
TwitterとWikiを使った自動情報提示システムTakashi Yamanoue
 
BotとWikiを使った試験的な並列プログラミング
BotとWikiを使った試験的な並列プログラミングBotとWikiを使った試験的な並列プログラミング
BotとWikiを使った試験的な並列プログラミングTakashi Yamanoue
 
Monitoring Servers, With a Little Help from my Bots
Monitoring Servers, With a Little Help from my BotsMonitoring Servers, With a Little Help from my Bots
Monitoring Servers, With a Little Help from my BotsTakashi Yamanoue
 
Optimizing Data Partitioning at Broadcasting the Data
Optimizing Data Partitioning at Broadcasting the DataOptimizing Data Partitioning at Broadcasting the Data
Optimizing Data Partitioning at Broadcasting the DataTakashi Yamanoue
 
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26Takashi Yamanoue
 
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...Takashi Yamanoue
 
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作Takashi Yamanoue
 
An Inter-Wiki Page Data Processor for a M2M System @Matsue, 1sep., Eskm2013
An Inter-Wiki Page Data Processor for a M2M System  @Matsue, 1sep., Eskm2013An Inter-Wiki Page Data Processor for a M2M System  @Matsue, 1sep., Eskm2013
An Inter-Wiki Page Data Processor for a M2M System @Matsue, 1sep., Eskm2013Takashi Yamanoue
 
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順Xilinx ISE で Digilent Atlys ボードの回路を作成する手順
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順Takashi Yamanoue
 

Viewers also liked (14)

A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...
A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...
A Technique to Assign an Appropriate Server to a Client, for a CDN Consists ...
 
A Wearable LED Matrix Sign System@ACM SIGUCCS2015
A Wearable LED Matrix Sign System@ACM SIGUCCS2015A Wearable LED Matrix Sign System@ACM SIGUCCS2015
A Wearable LED Matrix Sign System@ACM SIGUCCS2015
 
TwitterとWikiを使った自動情報提示システム
TwitterとWikiを使った自動情報提示システムTwitterとWikiを使った自動情報提示システム
TwitterとWikiを使った自動情報提示システム
 
BotとWikiを使った試験的な並列プログラミング
BotとWikiを使った試験的な並列プログラミングBotとWikiを使った試験的な並列プログラミング
BotとWikiを使った試験的な並列プログラミング
 
Monitoring Servers, With a Little Help from my Bots
Monitoring Servers, With a Little Help from my BotsMonitoring Servers, With a Little Help from my Bots
Monitoring Servers, With a Little Help from my Bots
 
Ise simulation-wave-add
Ise simulation-wave-addIse simulation-wave-add
Ise simulation-wave-add
 
Optimizing Data Partitioning at Broadcasting the Data
Optimizing Data Partitioning at Broadcasting the DataOptimizing Data Partitioning at Broadcasting the Data
Optimizing Data Partitioning at Broadcasting the Data
 
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
HTML5 技術を利用した授業や会議向けデスクトップ画面実時間配信システムとその管理システムの試作, 情報処理学会IOT研究会26
 
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...
Portable Cloud Computing System – A System which Makes Everywhere an ICT Enh...
 
20150305
2015030520150305
20150305
 
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作
インターネット上のWikiページ上でエッジ側端末のI2Cデバイスの設定と入出力を可能とするIoTシステムの試作
 
Siguccs20101026
Siguccs20101026Siguccs20101026
Siguccs20101026
 
An Inter-Wiki Page Data Processor for a M2M System @Matsue, 1sep., Eskm2013
An Inter-Wiki Page Data Processor for a M2M System  @Matsue, 1sep., Eskm2013An Inter-Wiki Page Data Processor for a M2M System  @Matsue, 1sep., Eskm2013
An Inter-Wiki Page Data Processor for a M2M System @Matsue, 1sep., Eskm2013
 
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順Xilinx ISE で Digilent Atlys ボードの回路を作成する手順
Xilinx ISE で Digilent Atlys ボードの回路を作成する手順
 

Similar to Dicomo 2013, デスクトップ画像共有システムのための、トーナメントアルゴリズムを使った負荷分散機構

Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)CLOUDIAN KK
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)CLOUDIAN KK
 
レスポンシブWebデザイン【基礎編】
レスポンシブWebデザイン【基礎編】レスポンシブWebデザイン【基礎編】
レスポンシブWebデザイン【基礎編】Yasuhito Yabe
 
ディペンダブルなクラウドコンピューティング基盤を目指して
ディペンダブルなクラウドコンピューティング基盤を目指してディペンダブルなクラウドコンピューティング基盤を目指して
ディペンダブルなクラウドコンピューティング基盤を目指してKazuhiko Kato
 
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月VirtualTech Japan Inc.
 
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoyaインフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 NagoyaSatoshi Shimazaki
 
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)System x 部 (生!) : しすなま! @ Lenovo Enterprise Solutions Ltd.
 
Microsoft conference 2014_Cisco_session_非公式配布版
Microsoft conference 2014_Cisco_session_非公式配布版Microsoft conference 2014_Cisco_session_非公式配布版
Microsoft conference 2014_Cisco_session_非公式配布版Takao Setaka
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Dai Utsui
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話Kumazaki Hiroki
 
20130817 windows azure最新情報(福井)
20130817 windows azure最新情報(福井)20130817 windows azure最新情報(福井)
20130817 windows azure最新情報(福井)Hirano Kazunori
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~Sunao Tomita
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティKuniyasu Suzaki
 
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密VIOPS Virtualized Infrastructure Operators group ARCHIVES
 
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなし
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなしOSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなし
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなしSatoshi Shimazaki
 
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』Naoya Hashimoto
 
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro OobaMicrosoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro Oobajunichi anno
 
IaaSクラウドを支える基礎技術 演習編_v1_0
IaaSクラウドを支える基礎技術 演習編_v1_0IaaSクラウドを支える基礎技術 演習編_v1_0
IaaSクラウドを支える基礎技術 演習編_v1_0Etsuji Nakai
 

Similar to Dicomo 2013, デスクトップ画像共有システムのための、トーナメントアルゴリズムを使った負荷分散機構 (20)

Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)
 
Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)Cloudianを利用したソリューション (Cloudian Summit 2012)
Cloudianを利用したソリューション (Cloudian Summit 2012)
 
レスポンシブWebデザイン【基礎編】
レスポンシブWebデザイン【基礎編】レスポンシブWebデザイン【基礎編】
レスポンシブWebデザイン【基礎編】
 
ディペンダブルなクラウドコンピューティング基盤を目指して
ディペンダブルなクラウドコンピューティング基盤を目指してディペンダブルなクラウドコンピューティング基盤を目指して
ディペンダブルなクラウドコンピューティング基盤を目指して
 
Ia20120118 sekiya
Ia20120118 sekiyaIa20120118 sekiya
Ia20120118 sekiya
 
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月
クラウドビジネスをドライブする最後のピース「クラウドマイグレーション」! – OpenStack最新情報セミナー 2015年7月
 
TS_InteropConf2022_MCN.pptx
TS_InteropConf2022_MCN.pptxTS_InteropConf2022_MCN.pptx
TS_InteropConf2022_MCN.pptx
 
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoyaインフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
インフラエンジニアなら知っておきたいストレージのはなし@OSC 2012 Nagoya
 
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)
第17回「サーバーとネットワークをもっと仲良しに – その間を取持つネットワーク仮想化技術」(2012/05/24 on しすなま!)
 
Microsoft conference 2014_Cisco_session_非公式配布版
Microsoft conference 2014_Cisco_session_非公式配布版Microsoft conference 2014_Cisco_session_非公式配布版
Microsoft conference 2014_Cisco_session_非公式配布版
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
20130817 windows azure最新情報(福井)
20130817 windows azure最新情報(福井)20130817 windows azure最新情報(福井)
20130817 windows azure最新情報(福井)
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
 
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
 
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなし
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなしOSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなし
OSC2012Kansai@Kyoto 自宅SAN友の会 - インフラエンジニアなら知っておきたい ストレージのはなし
 
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』
第1回『いまさら聞けない!システム運用・管理のコツ』 『クラウド管理・運用サービス「E.C.O」のご紹介』
 
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro OobaMicrosoft Developer Forum 2011 KeyNote by Akihiro Ooba
Microsoft Developer Forum 2011 KeyNote by Akihiro Ooba
 
IaaSクラウドを支える基礎技術 演習編_v1_0
IaaSクラウドを支える基礎技術 演習編_v1_0IaaSクラウドを支える基礎技術 演習編_v1_0
IaaSクラウドを支える基礎技術 演習編_v1_0
 

More from Takashi Yamanoue

人が乗れる自動運転電気自動車作成中その4, -version up その1-
人が乗れる自動運転電気自動車作成中その4, -version up その1-人が乗れる自動運転電気自動車作成中その4, -version up その1-
人が乗れる自動運転電気自動車作成中その4, -version up その1-Takashi Yamanoue
 
シン3次元表示装置 ーその1ー
シン3次元表示装置 ーその1ーシン3次元表示装置 ーその1ー
シン3次元表示装置 ーその1ーTakashi Yamanoue
 
Wiki IoT/Bot Computingを使った顔ロボット群の制御
Wiki IoT/Bot Computingを使った顔ロボット群の制御Wiki IoT/Bot Computingを使った顔ロボット群の制御
Wiki IoT/Bot Computingを使った顔ロボット群の制御Takashi Yamanoue
 
IoTLT-Vol93-Wiki-IoT-20221117.pptx
IoTLT-Vol93-Wiki-IoT-20221117.pptxIoTLT-Vol93-Wiki-IoT-20221117.pptx
IoTLT-Vol93-Wiki-IoT-20221117.pptxTakashi Yamanoue
 
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxIoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxTakashi Yamanoue
 
人が乗れる 自動運転電気自動車作成中その3 -自動運転成功!-
人が乗れる自動運転電気自動車作成中その3 -自動運転成功!-人が乗れる自動運転電気自動車作成中その3 -自動運転成功!-
人が乗れる 自動運転電気自動車作成中その3 -自動運転成功!-Takashi Yamanoue
 
人が乗れる 自動運転 電気自動車 作成中!
人が乗れる 自動運転 電気自動車 作成中!人が乗れる 自動運転 電気自動車 作成中!
人が乗れる 自動運転 電気自動車 作成中!Takashi Yamanoue
 
着る電光掲示板の新機能  -場所に応じた情報の自動表示-
着る電光掲示板の新機能  -場所に応じた情報の自動表示-着る電光掲示板の新機能  -場所に応じた情報の自動表示-
着る電光掲示板の新機能  -場所に応じた情報の自動表示-Takashi Yamanoue
 
Real->Virtual変換システムの開発その1の2
Real->Virtual変換システムの開発その1の2Real->Virtual変換システムの開発その1の2
Real->Virtual変換システムの開発その1の2Takashi Yamanoue
 
Real->Virtual 変換システムの開発その1の1
Real->Virtual 変換システムの開発その1の1Real->Virtual 変換システムの開発その1の1
Real->Virtual 変換システムの開発その1の1Takashi Yamanoue
 
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作Takashi Yamanoue
 
SeeThroughChameleonDress-on-the-way-ex1
SeeThroughChameleonDress-on-the-way-ex1SeeThroughChameleonDress-on-the-way-ex1
SeeThroughChameleonDress-on-the-way-ex1Takashi Yamanoue
 
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話Takashi Yamanoue
 
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介Takashi Yamanoue
 
簡便な大型幅広デジタルサイネージシステムとその自動運用システム
簡便な大型幅広デジタルサイネージシステムとその自動運用システム簡便な大型幅広デジタルサイネージシステムとその自動運用システム
簡便な大型幅広デジタルサイネージシステムとその自動運用システムTakashi Yamanoue
 
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システム
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システムWiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システム
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システムTakashi Yamanoue
 
Bot Computing using the Power of Wiki Collaboration
Bot Computing using the Power of Wiki CollaborationBot Computing using the Power of Wiki Collaboration
Bot Computing using the Power of Wiki CollaborationTakashi Yamanoue
 
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試みTakashi Yamanoue
 

More from Takashi Yamanoue (20)

人が乗れる自動運転電気自動車作成中その4, -version up その1-
人が乗れる自動運転電気自動車作成中その4, -version up その1-人が乗れる自動運転電気自動車作成中その4, -version up その1-
人が乗れる自動運転電気自動車作成中その4, -version up その1-
 
シン3次元表示装置 ーその1ー
シン3次元表示装置 ーその1ーシン3次元表示装置 ーその1ー
シン3次元表示装置 ーその1ー
 
Wiki IoT/Bot Computingを使った顔ロボット群の制御
Wiki IoT/Bot Computingを使った顔ロボット群の制御Wiki IoT/Bot Computingを使った顔ロボット群の制御
Wiki IoT/Bot Computingを使った顔ロボット群の制御
 
IoTLT-Vol93-Wiki-IoT-20221117.pptx
IoTLT-Vol93-Wiki-IoT-20221117.pptxIoTLT-Vol93-Wiki-IoT-20221117.pptx
IoTLT-Vol93-Wiki-IoT-20221117.pptx
 
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptxIoTLT-Vol92-Wiki-IoT-20221009-1.pptx
IoTLT-Vol92-Wiki-IoT-20221009-1.pptx
 
人が乗れる 自動運転電気自動車作成中その3 -自動運転成功!-
人が乗れる自動運転電気自動車作成中その3 -自動運転成功!-人が乗れる自動運転電気自動車作成中その3 -自動運転成功!-
人が乗れる 自動運転電気自動車作成中その3 -自動運転成功!-
 
人が乗れる 自動運転 電気自動車 作成中!
人が乗れる 自動運転 電気自動車 作成中!人が乗れる 自動運転 電気自動車 作成中!
人が乗れる 自動運転 電気自動車 作成中!
 
着る電光掲示板の新機能  -場所に応じた情報の自動表示-
着る電光掲示板の新機能  -場所に応じた情報の自動表示-着る電光掲示板の新機能  -場所に応じた情報の自動表示-
着る電光掲示板の新機能  -場所に応じた情報の自動表示-
 
Real->Virtual変換システムの開発その1の2
Real->Virtual変換システムの開発その1の2Real->Virtual変換システムの開発その1の2
Real->Virtual変換システムの開発その1の2
 
Real->Virtual 変換システムの開発その1の1
Real->Virtual 変換システムの開発その1の1Real->Virtual 変換システムの開発その1の1
Real->Virtual 変換システムの開発その1の1
 
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作
スマートフォンで操作する双方向型大型デジタルサイネージシステムの試作
 
Teleport dressor 20200524
Teleport dressor 20200524Teleport dressor 20200524
Teleport dressor 20200524
 
SeeThroughChameleonDress-on-the-way-ex1
SeeThroughChameleonDress-on-the-way-ex1SeeThroughChameleonDress-on-the-way-ex1
SeeThroughChameleonDress-on-the-way-ex1
 
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話
PukiWiki と Raspberry Pi と Arduino を連携させてIoT システムを作ってみた話
 
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介
Zoomはぶっ飛ばせないけど... - Portable Cloud の紹介
 
trouble-with-mboed-os
trouble-with-mboed-ostrouble-with-mboed-os
trouble-with-mboed-os
 
簡便な大型幅広デジタルサイネージシステムとその自動運用システム
簡便な大型幅広デジタルサイネージシステムとその自動運用システム簡便な大型幅広デジタルサイネージシステムとその自動運用システム
簡便な大型幅広デジタルサイネージシステムとその自動運用システム
 
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システム
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システムWiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システム
Wiki と Raspberry Pi と Arduino を組み合わせて作成した電気製品の自動運転・遠隔操作システム
 
Bot Computing using the Power of Wiki Collaboration
Bot Computing using the Power of Wiki CollaborationBot Computing using the Power of Wiki Collaboration
Bot Computing using the Power of Wiki Collaboration
 
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み
悪性Botnet包囲網のBotによるWannaCryのようなマルウェアの活動検知の試み
 

Dicomo 2013, デスクトップ画像共有システムのための、トーナメントアルゴリズムを使った負荷分散機構

  • 1. デスクトップ画像共有 システムのための, トーナメントアルゴリズム を使った負荷分散機構 山之上卓†1 杉田裕次郎†1 小荒田裕理†1 小田謙太郎†1 下園幸一 †1 鹿児島大学 マルチメディア,分散,協調とモバイル(DICOMO2013)シンポジ 2F-4, 2013 7/10@北海道十勝川温泉 ホテル大平原
  • 2. 目次  1. はじめに  2. Web Screen Share  3. Distributed Web Screen Share  4. ISCノードによる平衡2分木の構成  5. トーナメントアルゴリズムによる負荷分散  6. アルゴリズムの拡張  7. 関連研究  8. おわりに
  • 3. 1. はじめに-1  授業やゼミや会議  パソコン画面をプロジェクタでスクリーンに投影  -> 遠くから小さな字や絵を見ることが困難  このような問題に対処するため  -> SOLAR-CATS[1][4] やMulti VNC[7]  -> 会議参加者それぞれに, これらのソフトウェアをインストール したパソコンが必要.  (市村先生のQuick Boardはその問題はありません)
  • 4. 1. はじめに-2  最近, みんな、スマートフォンやノートパソコンを携帯  発表者のパソコンのデスクトップ画像を,  このような機器で,  特別なソフトウェアやアプリをインストールすることなしに,  共有したい  -> 「Web Screen Share」  我々のゼミで利用
  • 5. 1. はじめに-3  Web Screen Share  HTML5の Web Socket技術  パソコンデスクトップ画面共有システム  複数の, HTML5対応 Webブラウザに, 画像中継Webサーバを通じ て, 送信元パソコンのデスクトップ画面をリアルタイムで配信  Web Screen Share は, 参加者が20名程度までなら, 問題な く動作  この人数を超えると, 動画を表示するときに, 動きの滑らか さが失われてしまう
  • 6. 1. はじめに-4  この問題を,  平衡2分木上に接続されたサーバ間データ転送ノード  を使うことによって, 解消  送信元パソコンのデスクトップ画像を  サーバ間データ転送ノードを使って  複数の画像中継Web サーバに配送  Web ブラウザ  複数の画像中継Webサーバに, 自動的に, 均等に, 接続  「Distributed Web Screen Share」
  • 7. 1. はじめに-5  Webブラウザの均等割り当て トーナメントアルゴリズムを使って実現  Distributed Web Screen Share  動画表示の動きの滑らかさを損なうことなく,  より多くのWebクライアントで  同じデスクトップ画面を共有
  • 9. 2. Web Screen Share-1  Client-Server 型  HTML5 の Web Socket 技術を使った  パソコンデスクトップ画像の実時間共有システム  構成  1台の Web Server  複数の Web Client  画像取得とその画面をサーバに送信する Screen Sender
  • 10. 2. Web Screen Share-2
  • 11. 2. Web Screen Share-3  Screen Sender  デスクトップ画像を繰り返し取得  通常のSocket を使って Web Server に送信  Screen Sender から画像を受け取った Web Server  その画像を各Web Client に対応した Queue の最後に追加  Queue に溜まった画像の量が一定値を超えると, その値を超えな いようにQueue の先頭部分にある画像を削除  現在, この一定値は 3 .
  • 12. 2. Web Screen Share-4  Web Client  HTML5 , Web Socket  Web Server に対して get コマンドを繰り返し発行  Web Server が get コマンドを受け取ると  Web Client に対応した Queue の先頭にある画像を,  get コマンドを受け取った Socket に対して送信  その画像を Queue から削除  画像を受け取った Web Client …その画像を表示する.  Jetty を利用(開発当時は Web Socket が利用できるWeb サーバ)
  • 13. 2. Web Screen Share-5 CPU :intel インテル Celeron デュアルコアE1200 1.6GHz 相当 Memory: 2GB Screen Sender : 5fps 解像度: 1440 x 900 Network: 100Mbps (NIC: 1Gbps)
  • 14. 3. Distributed Web Screen Share-1  大規模な会議にも対応したい->  数百台のWeb クライアントが画面共有できるようにしたい  Web クライアント増加による性能劣化を緩和したい Distributed Web Screen Share (DWSS)を開発  DWSS  Node System を平衡2分木状に接続  葉の位置にあるNode system の Web Server にWeb Client をでき るだけ均等に割り当て
  • 15. 3. Distributed Web Screen Share-2
  • 16. 3. Distributed Web Screen Share-3  平衡2分木のすべてのISC Node に画像を中継するため,以下 のmulti-casting 手続きを利用する.  準備  すべてのノード(ISCノード)は、 親、左(の子)、右(の子)  の3つの全2重のTCP 接続を持つ null の場合もある  手続き  どれかのTCP接続から multicast データを受け取ったら, それを他 の接続に転送する  受け取った multicast データのノード内処理を行う
  • 17. 4. ISCノードによる平衡2分木の構成-1  特許 No. 5186624, (Feb. 2013)  新規ノード追加時  準備  すべてのノードは、自分の左右それぞれの子孫の数を記憶  葉ノードはそれぞれ0  根以外のノードは、一定間隔で、 自分(1)+左の子孫の数+右の子孫の数 を親ノードに通知
  • 18. 4. ISCノードによる平衡2分木の構成-2  ノード追加処理 (recursive procedure)  あるノードにおいて、 左右ともども子孫がいなかったら、左に追加 左に子孫がいて、右にいなかったら、右に追加 それ以外は子孫の数の少ない方に対してノード追加処 理  新規ノードは(原則として)(グループの)根ノードから追加
  • 19. 4. ISCノードによる平衡2分木の構成-3  グループ内ノード障害発生時・離脱時の処理  ノード数情報を親ノードに送るとき、親から反応がない場合は親 がいなくなったと判断  根以外のグループ内の任意のノードは、親がいなくなったら、自 分を新規ノードとして根に追加処理を依頼  一時的にバランスはくずれるが、徐々にバランスが保たれ る方向にノードが追加される。
  • 20. 5. トーナメントアルゴリズムによる負荷分 散-1  準備  任意のノードは、以下の情報を持つ  [自分のWebサーバの情報, そのWeb Client の数]  左の子孫における[Web Client 接続先候補, そのWeb Client の数]  右の子孫における[Web Client 接続先候補, そのWeb Client の数]  ノードの[Web Client 接続先候補, そのWeb Client の数]
  • 21. 5. トーナメントアルゴリズムによる負荷分 散-2  定期的に以下を行う  葉ノードは、[自分のWeb サーバの情報, そのWeb Client の数]を [Web Client 接続先候補, その Web Client の数]とする  節ノードは、左右を比較して、Web Client の数が少ない方(勝っ た方)の [Web Client 接続先候補, その Web Client の数]を ノードの[Web Client 接続先候補, その Web Client の数]とす る  根ノード以外は ノードの[Web Client 接続先候補, その Web Client の数] を親ノードに伝える
  • 22. 5. トーナメントアルゴリズムによる負荷分 散-3  新規に Web Client が接続されるとき  その Web Cliet は根ノードに接続する.  次に、根ノードの Web Client 接続先候補に redirect する。  葉ノードの中で最も Web Client 数が少ない Web サーバに 接続する --- 負荷分散
  • 23.
  • 24. 6. アルゴリズムの拡張  1つの葉ノードに接続される Web Client の制限  全Web Client 数のモニタ… Web Client 増加時には ノードを 追加するなどに利用  (Web Client数減少時)葉ノードへのWeb Client の接続制 限 葉ノードを空にしてグループから削除
  • 25. 7. 関連研究  SOLAR-CATS … Web Client ではない  拡張Edutab … 負荷分散はない  AKAMAI … 限られたIP範囲内の、せいのでドーンには向か ない  FCAN … 特殊なDNS を利用  Ustream Live Producer … 遅延が大きい  Web RTC … DWSS に使えるかも
  • 26. 7. おわりに  大量のクライアント間の画面共有システムの負荷分散  大量のWi-Fi 端末を使う会議や授業のための「ポータブルク ラウド」開発中。これに組み込み予定  ノード数が減っていくとき対策として、Web Client におけ る定期的な接続やり直しの方法もあり