comparison paper/main.tex @ 19:70c1c17d8ece

Update
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Tue, 16 Feb 2016 15:22:23 +0900
parents c05bc62b50e6
children 020367fa53bc
comparison
equal deleted inserted replaced
18:c05bc62b50e6 19:70c1c17d8ece
70 %章分けは個人で違うので下のフォーマットを参考にして下さい。 70 %章分けは個人で違うので下のフォーマットを参考にして下さい。
71 71
72 % はじめに 72 % はじめに
73 73
74 \chapter{画面共有を利用したコミュニケーション} 74 \chapter{画面共有を利用したコミュニケーション}
75 授業やゼミ等で、それぞれが PC 端末を持っている場合では、
76 PC の機能を活かしたコミュニケーションが可能である。
77
78 通常の授業では先生の用意した資料、 PC 画面を見ながら授業が進むことが多い。
79 ゼミでは発表者を切り替えながら発表を行う。
80
81 通常これらの画面を表示するためにプロジェクタが使用されている。
82 しかし、プロジェクタでは通常の授業の際、参加者はプロジェクタに集中するため、手元の PC をほぼ使用することができない。
83 更に手元の PC を使う際はプロジェクタと PC を行き来するため、目に負担がかかってしまう。
84 またゼミの際には発表者を切り替えるたびにプロジェクタにケーブルを差し替える必要がある。
85 ケーブルの差し替えの際に発表者の PC によってアダプターの種類や解像度の設定によって正常に PC 画面を表示できない場合もある。
86
87 画面配信システム TreeVNC\cite{taninari:2011a}は発表者の画面を参加者の PC に表示する。
88 そのため、参加者は不自由なく手元の PC を使用しながら授業を受ける事が可能になる。
89 更に発表者の切り替えの際もケーブルの差し替えずに共有する画面の切替を可能としている。
90
91 Tree VNC は VNC\cite{vnc} を使用した画面配信を行っている。
92 しかし通常の VNC では配信側に全ての参加者が接続するため、多人数の際の処理性能が落ちてしまう。
93 Tree VNC では有線でネットワークに接続した参加者をバイナリツリー状に接続し、 配信コストをクライアントに分散させる仕組みになっている。
94 そのため、授業で先生の画面を表示する際、多人数の生徒が参加しても処理性能が下がらない。
95 また、ツリーのルートが参照している VNC サーバーを変更することで、共有する画面の切替が可能となる。
96
97 しかし TreeVNC を授業やゼミで使用している中、 様々な問題が発生した。
98 NATを越えたネットワーク接続に対応しておらず、遠隔地などで授業やゼミに参加することが出来ない。
99 また、ゼミの際に、マルチディスプレイを使用して画面配信を行う際、すべての画面が配信され、不必要な画面まで表示されてしまう。
100
101 そこで、本研究では上記の問題点を解決し、TreeVNCの有用性を評価することで授業やゼミを円滑に行えることを目標とする。
102
75 \label{chap:introduction} 103 \label{chap:introduction}
76 \pagenumbering{arabic} 104 \pagenumbering{arabic}
77 105
78 %序論の目安としては1枚半ぐらい. 106 %序論の目安としては1枚半ぐらい.
79 %英語発表者は,最終予稿の「はじめに」の英訳などを載せてもいいかも. 107 %英語発表者は,最終予稿の「はじめに」の英訳などを載せてもいいかも.
336 TreeVNC を立ち上げることで、ケーブルを使用する必要なしに、各参加者の手元のPCに発表者の画面を共有することができる。 364 TreeVNC を立ち上げることで、ケーブルを使用する必要なしに、各参加者の手元のPCに発表者の画面を共有することができる。
337 画面の切り替えはユーザが VNC サーバーへの再接続を行うことなく、ビューアの Share Screen ボタンを押すことによって、配信者の切り替えを行うことができる。 365 画面の切り替えはユーザが VNC サーバーへの再接続を行うことなく、ビューアの Share Screen ボタンを押すことによって、配信者の切り替えを行うことができる。
338 366
339 TreeVNC の Root Node は配信者の VNC サーバーと通信を行っている。 367 TreeVNC の Root Node は配信者の VNC サーバーと通信を行っている。
340 VNC サーバーから画面データを受信し、そのデータを 子 Node へと送信している。 368 VNC サーバーから画面データを受信し、そのデータを 子 Node へと送信している。
341 配信者切り替え時に Share Screen ボタンが押されると、 369 配信者切り替え時に Share Screen ボタンが押されると、 SERVER\_CHANGE\_REQUEST メッセージに Node 番号やディスプレイ情報 を付加し、Root Node に送信する。
342 Root Node は Share Screen ボタン を押したクライアントの VNC サーバーと通信を始める。 370 SERVER\_CHANGE\_REQUEST メッセージを受け取った Root Node は配信を行うクライアントの VNC サーバーと通信を始める。
343 そのため TreeVNC は配信者切り替えの度に VNC を終了し、再接続する必要がない。 371 そのため TreeVNC は配信者切り替えの度に VNC を終了し、再接続する必要がない。
344 372
345 \section{複数のネットワークの対応} 373 \section{複数のネットワークの対応}
346 従来の TreeVNC は、クライアントの接続する木構造が単一であった。 374 従来の TreeVNC は、クライアントの接続する木構造が単一であった。
347 そのため、Root Node が複数のネットワークに接続していても、 単一のネットワークでしか使用することができなかった。 375 そのため、Root Node が複数のネットワークに接続していても、 単一のネットワークでしか使用することができなかった。
413 441
414 \chapter{TreeVNC のリファクタリング} 442 \chapter{TreeVNC のリファクタリング}
415 \section{マルチディスプレイ対応} 443 \section{マルチディスプレイ対応}
416 画面配信側のPCがマルチディスプレイの場合 VNC サーバーからは複数の画面全体の画像データが送信されてしまう。 444 画面配信側のPCがマルチディスプレイの場合 VNC サーバーからは複数の画面全体の画像データが送信されてしまう。
417 授業やゼミ等でTreeVNCを使用する場合、複数画面の表示は必要ない。 445 授業やゼミ等でTreeVNCを使用する場合、複数画面の表示は必要ない。
418 そこで、画面を共有する際、ディスプレイを選択させ、画面共有を行う機能を追加した\ref{parusu:216a}。 446 そこで、画面を共有する際、ディスプレイを選択させ、画面共有を行う機能を追加した\cite{parusu:2016a}。
419 447
420 ディスプレイの情報は個々のクライアントでしか取得ができない。 448 ディスプレイの情報は個々のクライアントでしか取得ができない。
421 そのため、配信側は画面の切り替えを行う際に、ディスプレイを選択し、そのディスプレイの左上と右下の座標を取得する。 449 そのため、配信側は画面の切り替えを行う際に、ディスプレイを選択し、そのディスプレイの左上と右下の座標を取得する。
422 その座標を Root Node への画面切り替えを要求する SERVER\_CHANGE\_REQUEST メッセージに付加させる。 450 その座標を Root Node への画面切り替えを要求する SERVER\_CHANGE\_REQUEST メッセージに付加させる。
423 Root Node は 配信側の VNC サーバー に画像データを要求する FRAMEBUFFER\_UPDATE\_REPLY メッセージに送信された座標を付加する。 451 Root Node は 配信側の VNC サーバー に画像データを要求する FRAMEBUFFER\_UPDATE\_REPLY メッセージに送信された座標を付加する。
576 \section{今後の課題} 604 \section{今後の課題}
577 \subsection{NATを越えた画面切り替え} 605 \subsection{NATを越えた画面切り替え}
578 今回追加した Direct Connection ではNATを越えたネットワークの画面の配信を行うのみであり、 TreeVNC の利点の1つである画面切り替えを行うことが出来ない。 606 今回追加した Direct Connection ではNATを越えたネットワークの画面の配信を行うのみであり、 TreeVNC の利点の1つである画面切り替えを行うことが出来ない。
579 そのため、NATを越えたネットワークでの画面切り替えの実装を行う必要がある。 607 そのため、NATを越えたネットワークでの画面切り替えの実装を行う必要がある。
580 608
581 \ref{fig:directConnectionServerChange} は Direct Connection での画面切り替えの実装案である。 609 図\ref{fig:directConnectionServerChange} は Direct Connection での画面切り替えの実装案である。
610 まず Direct Connection した ネットワークのクライアントから SERVER\_CHANGE\_REQUEST メッセージが送信される。
611 SERVER\_CHAGEN\_REQUEST メッセージを受け取った そのネットワークの Root Node は Direct Connection した先の Root Node へ SERVER\_CHANGE\_REQUEST を -1 を付加して送信する。
612 -1 を送信することで、 受け取った Root Node は別のネットワークからの画面切り替え要求ということを判断することができる。
613 別ネットワークからの切り替え要求を受け取った Root Node は読み込み用と書き込み用のソケットを入れ替える。
614 ソケットを入れ替えることで、 切り替え要求した Root Node のデータを受け取ることが可能となる。
582 615
583 \begin{figure}[htbp] 616 \begin{figure}[htbp]
584 \begin{center} 617 \begin{center}
585 \includegraphics[scale=0.5]{./images/directConnectionServerChange.pdf} 618 \includegraphics[scale=0.5]{./images/directConnectionServerChange.pdf}
586 \caption{NATを越えたネットワークでの画面切り替え} 619 \caption{NATを越えたネットワークでの画面切り替え}
587 \label{fig:directConnectionServerChange} 620 \label{fig:directConnectionServerChange}
588 \end{center} 621 \end{center}
589 \end{figure} 622 \end{figure}
590 \subsection{共有機能の追加} 623
591 624 \subsection{音声機能の追加}
625 Direct Conenction により、遠隔地からの画面配信が可能となった。
626 しかし、 ゼミや授業等では画面の表示のみではなく、 音声の配信も行う必要がある。
592 627
593 % 参考文献 628 % 参考文献
594 \def\line{−\hspace*{-.7zw}−} 629 \def\line{−\hspace*{-.7zw}−}
595 \nocite{*} 630 \nocite{*}
596 \bibliographystyle{junsrt} 631 \bibliographystyle{junsrt}