# HG changeset patch # User e155702 # Date 1550505895 -32400 # Node ID 7d2b1d8309ba1051f1183a9fe3e82f2b3cfb5b12 # Parent 2a59b68bb2f3e2eaf29e99dbfd3e2f38c83acdfc update pdf diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/chapter2.tex --- a/final_main/chapter2.tex Mon Feb 18 01:47:44 2019 +0900 +++ b/final_main/chapter2.tex Tue Feb 19 01:04:55 2019 +0900 @@ -7,14 +7,12 @@ % どういう概念? どうしてそうするの? どうやってつかうの? \section{Virtual Network Computing} - -TreeVNC の名前にも用いられている VNC (Virtual Network Computing) は、RFB プロトコルを用いて PC の遠隔操作を行うことを目的としたリモートデスクトップソフトウェアである。 +TreeVNC の名称にもある VNC (Virtual Network Computing) は、RFB プロトコルを用いて PC の遠隔操作を行うことを目的としたリモートデスクトップソフトウェアである。 サーバー側とクライアント側に分かれており、起動したサーバーにクライアントが接続することで遠隔操作を可能にしている。 \section{RFB プロトコル} - RFB (Remote Frame Buffer) プロトコルは、自身の画面をネットワークを通じて送信し他者の画面に表示するプロトコルである。 ユーザがいる(画面を表示される)側と FrameBuffer への更新が行われる(自身の画面を送信する)側に分かれ、それぞれを RFB クライアント、RFB サーバと呼ぶ。FrameBuffer は、メモリ上に置かれた画像データのことである。 @@ -23,7 +21,16 @@ \section{TreeStructure} -TreeVNC はサーバーに接続してきたクライアントをバイナリツリー状に接続している。また、接続してきたクライアントをノードとし、その下に新たなクライアントを接続していくことでサーバーが画面のデータを配信する回数を抑えることで負荷分散している(図\ref{fig:vnc} 図\ref{fig:treevnc})。バイナリツリー状に接続することで、画像データのコピーを各ノードに負担させることができ、従来の VNC ではクライアントが N 台接続するとサーバー側が N 回コピーを行なって配信していたが、この接続方法であれば各ノードが 2 回ずつコピーすることで配信を可能にしている。 +TreeVNC はサーバーに接続してきたクライアントをバイナリツリー状に接続している。また、接続してきたクライアントをノードとし、その下に新たなクライアントを接続していくことでサーバーが画面のデータを配信する回数を抑えることで負荷分散している(図\ref{fig:treevnc})。バイナリツリー状に接続することで、画像データのコピーを各ノードに負担させることができ、従来の VNC ではクライアントが N 台接続するとサーバー側が N 回コピーを行なって配信していた(図\ref{fig:vnc})が、この接続方法であれば各ノードが 2 回ずつコピーすることで配信を可能にしている。 + +\begin{figure}[htpb] + \begin{center} + \scalebox{0.55}{\includegraphics{fig/treevnc-crop.pdf}} + \end{center} + \caption{TreeVNC の接続方法} + \label{fig:treevnc} +\end{figure} + \begin{figure}[htpb] \begin{center} @@ -34,20 +41,14 @@ \end{figure} -\begin{figure}[htpb] - \begin{center} - \scalebox{0.55}{\includegraphics{fig/treevnc-crop.pdf}} - \end{center} - \caption{TreeVNC の接続方法} - \label{fig:treevnc} -\end{figure} - - -\section{画面配信の切り替え} +\section{ShereScreen} 従来の VNC では、配信者が切り替わるたびに VNC の再起動、サーバー、クライアント間の再接続を行う必要がある。TreeVNC では、画面上にある ShareScreen ボタンを押すことで配信者の切り替えを実行できるように設定し、この問題に対処している。 -ShareScreen 実行後、 Root Node に対し SERVER\_CHANGE\_REQUEST というメッセージが送信される。このメッセージには ShereScreen ボタンを押した Node の番号やディスプレイの情報が付加されている。メッセージを受け取った Root Node は配信を希望している Node の VNC サーバーと通信を行い、切り替え作業に入る。 +ShareScreen 実行後、Root Node に対し SERVER\_CHANGE\_REQUEST というメッセージが送信される。このメッセージには ShereScreen ボタンを押した Node の番号やディスプレイの情報が付加されている。メッセージを受け取った Root Node は配信を希望している Node の VNC サーバーと通信を行い、切り替え作業に入る。 %切り替え実行時の図 +\section{ZRLEE} + + diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/chapter3.tex --- a/final_main/chapter3.tex Mon Feb 18 01:47:44 2019 +0900 +++ b/final_main/chapter3.tex Tue Feb 19 01:04:55 2019 +0900 @@ -1,8 +1,9 @@ \chapter{TreeVNC の改良点} + \section{IPv6 アドレス対応} - +アドレスを選択する際、IPv6 \section{hidescreen} diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/chapter4.tex --- a/final_main/chapter4.tex Mon Feb 18 01:47:44 2019 +0900 +++ b/final_main/chapter4.tex Tue Feb 19 01:04:55 2019 +0900 @@ -35,7 +35,7 @@ \end{figure} -\section{圧縮形式} +\section{} \section{} diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/chapter6.tex --- a/final_main/chapter6.tex Mon Feb 18 01:47:44 2019 +0900 +++ b/final_main/chapter6.tex Tue Feb 19 01:04:55 2019 +0900 @@ -1,16 +1,6 @@ \chapter{まとめ} -本研究では CodeGear、 DataGear を用いたプログラミング手法を使い、Agda で -Interface を用いたプログラムを実装し、証明を記述した。 -これにより、 CbC で記述した時には細かく分かっていなかった Interface の型が明確になった。 -また、 Hoare Logic を CodeGear 、 DataGear と対応させることで Hoare Logic ベース -で証明が進められると考えている。 -今回の研究中に継続を利用することで得られた知見は、今後の研究で大いに役立つと -考える。 + 本研究では TreeVNC の改良と無線 LAN 接続時の Multicast 対応を行った。 +これにより、有線接続環境がない状況でも無線接続での画面配信による講義等の円滑な進行を行えるようになった。 -今後の課題としては、CbC 上での RedBlackTree の実装や、 Agda 上での RedBlackTree -の実装と証明がある。また、 CodeGear、DataGear をベースにした Hoare Logic を Agda で実 -装する。 -Agda 定義した Hoare Logic を使い、いくつかの証明を実際に記述し、書き方を確立するなどが考えられる。 -他にも、タスクスケジューラの実装を Agda に移し、 SynchronizedQueue の同期、非同 -期の検証などが考えられる。 +今後の課題としては、 \ No newline at end of file diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/main.pdf Binary file final_main/main.pdf has changed diff -r 2a59b68bb2f3 -r 7d2b1d8309ba final_main/main.tex --- a/final_main/main.tex Mon Feb 18 01:47:44 2019 +0900 +++ b/final_main/main.tex Tue Feb 19 01:04:55 2019 +0900 @@ -88,7 +88,7 @@ %\input{chapter5.tex} % 結論 -%\input{chapter6.tex} +\input{chapter6.tex} % 参考文献 %% こっちで書きたいよね