# HG changeset patch # User oshiro # Date 1542115231 -32400 # Node ID 1bcb7ef1d5ac0e3fd2512631c32cffd981e83870 # Parent 5424f9d691d16e2fc0c548c2b2d78dc85412225c add sentences to tex diff -r 5424f9d691d1 -r 1bcb7ef1d5ac midterm.pdf Binary file midterm.pdf has changed diff -r 5424f9d691d1 -r 1bcb7ef1d5ac midterm.tex --- a/midterm.tex Tue Nov 13 21:45:15 2018 +0900 +++ b/midterm.tex Tue Nov 13 22:20:31 2018 +0900 @@ -30,7 +30,7 @@ \thispagestyle{fancy} -\section{研究概要} +\section{研究目的} TreeVNCは画面配信システムである。 配信者の画面を受信者の端末の画面に映す事ができ、プロジェクターの役割を果たすことが可能である。 @@ -51,15 +51,34 @@ サーバー起動後クライアントがサーバに接続することで遠隔操作を可能としている。 \section{RFB プロトコル} -自身の画面を送信し、ネットワーク越しに他者の画面に表示するプロトコルである。 -ユーザがいる側をRFBクライアント、Framebuffer※3への更新が行われる側をRFBサーバと呼ぶ。 +自身の画面を送信し、ネットワーク越しに他者の画面に表示するプロトコルである。ユーザがいる側を RFB クライアント、Framebuffer への更新が行われる側を RFB サーバと呼ぶ。Framebuffer とは、メモリ上に置かれた画像データである。\\\\ プロトコルを起動すると -1.初めにプロトコルバージョンの確認や認証を行う。 -2.クライアントに向けてFramebufferの大きさやデスクトップに付けられた名称などが含まれた初期メッセージが送信される。 -3.RFBサーバ側はFramebufferの更新が行われるたびにRFBクライアントに対してFramebufferの変更部分だけを送信する。 -4.RFBクライアントからFramebufferUpdateRequestが来るとそれに返信する。 +\begin{enumerate} + \item プロトコルバージョンの確認や認証を行う。 + \item クライアントに向けて Framebuffer の大きさやデスクトップに付けられた名称などが含まれた初期メッセージが送信される。 + \item RFB サーバ側は Framebuffer の更新が行われるたびに RFB クライアントに対して Framebuffer の変更部分だけを送信する。 + \item RFB クライアントから FramebufferUpdateRequest が来るとそれに返信する。 +\end{enumerate} -\section{section4} +\section{TreeVNCの構造} +TreeVNC は Java を用いて作成された TightVNC を元に構成されている。TreeVNC はクライアント同士を接続させ、データを受け取ったクライアントが次のクライアントにそのデータを流す方式を取っている。また、サーバへ接続しにきたクライアントをバイナリツリー状に接続する。バイナリツリー状に接続することで、N 台のクライアントが接続しにきた場合、画面配信の画像データをコピーする回数が従来の VNC ではサーバが N 回コピーする必要があるが、TreeVNC では各ノードが2回ずつコピーするだけで済み、負荷を分散することができる。\\ +\ \ TreeVNC で送受信される画像データ量は莫大であり、大きなネットワークスループットが必要となるため、有線接続が必須となっている。\\ +バイナリツリーのルートのノードを Root Node と呼び、そこに接続されるノードを Node と呼ぶ。Root Node は +\begin{enumerate} + \item 子 Node にデータを流す機能 + \item 各 Node の管理 + \item VNC サーバから流れてきたデータの管理 +\end{enumerate} +を担っている。\\ +各 Node は +\begin{enumerate} + \item 親 Node から送られてきたデータを自身の子Nodeに流す機能 + \item 子 Node から送られてきたデータを親 Node に流す機能 +\end{enumerate} +を担っている。 + +\section{TreeVNC の原理} +従来の VNC と TreeVNC の構造を比較をに示す。 \begin{thebibliography}{9}