view midterm.tex @ 1:1bcb7ef1d5ac

add sentences to tex
author oshiro
date Tue, 13 Nov 2018 22:20:31 +0900
parents 5424f9d691d1
children 8e83c0829c7c
line wrap: on
line source

\documentclass[twocolumn,twoside,9.5pt]{jarticle}
\usepackage[dvips]{graphicx}
\usepackage{picins}
\usepackage{fancyhdr}
%\pagestyle{fancy}
\lhead{\parpic{\includegraphics[height=1zw,keepaspectratio,bb=0 0 251 246]{pic/emblem-bitmap.pdf}}琉球大学主催 工学部情報工学科 中間発表予稿}
\rhead{}
\cfoot{}

\setlength{\topmargin}{-1in \addtolength{\topmargin}{15mm}}
\setlength{\headheight}{0mm}
\setlength{\headsep}{5mm}
\setlength{\oddsidemargin}{-1in \addtolength{\oddsidemargin}{11mm}}
\setlength{\evensidemargin}{-1in \addtolength{\evensidemargin}{21mm}}
\setlength{\textwidth}{181mm}
\setlength{\textheight}{261mm}
\setlength{\footskip}{0mm}
\pagestyle{empty}

\begin{document}
\title{TreeVNCの拡張}
\author{学籍番号 155702F 氏名 {大城}{由也} 指導教員 : 河野真治}
\date{平成30年 11月 16日}
\maketitle

\begin{abstract}

\end{abstract}


\thispagestyle{fancy} 

\section{研究目的}
TreeVNCは画面配信システムである。
配信者の画面を受信者の端末の画面に映す事ができ、プロジェクターの役割を果たすことが可能である。

これにより、授業などの参加者は不自由なく手元の PC を使用しながら受講する事が可能になる。
更に発表者の切り替えの際もケーブルを差し替えずに共有する画面の切替を可能としており、端末の差異によって生じる問題にも対応可能である。

TreeVNC は VNC(Virtual Network Computing) を使用した画面配信を行っている。
しかし通常の VNC では配信側に全ての参加者が接続するため、多人数の際の処理性能が落ちてしまう。
そこで TreeVNC では、有線でネットワークに接続した参加者をバイナリツリー状に接続し、配信コストをクライアントに分散させる仕組みをとっている。
そのため、授業で先生の画面を表示する際、多人数の生徒が参加しても処理性能が下がらない。

しかし、現在の TreeVNC は送信するデータ量が多いため、無線 LAN 接続の場合では画面の配信に遅延が生じてしまう。
そこで、本研究では無線 LAN での配信環境の改善を行う。

\section{VNC}
VNC(Virtual Network Computing) は、 RFBプロトコルを用いて遠隔操作を行うリモートデスクトップソフトウェアである。
サーバー側とクライアント(ビューア)側に分かれており、
サーバー起動後クライアントがサーバに接続することで遠隔操作を可能としている。

\section{RFB プロトコル}
自身の画面を送信し、ネットワーク越しに他者の画面に表示するプロトコルである。ユーザがいる側を RFB クライアント、Framebuffer への更新が行われる側を RFB サーバと呼ぶ。Framebuffer とは、メモリ上に置かれた画像データである。\\\\
プロトコルを起動すると
\begin{enumerate}
 \item プロトコルバージョンの確認や認証を行う。
 \item クライアントに向けて Framebuffer の大きさやデスクトップに付けられた名称などが含まれた初期メッセージが送信される。
 \item RFB サーバ側は Framebuffer の更新が行われるたびに RFB クライアントに対して Framebuffer の変更部分だけを送信する。
 \item RFB クライアントから FramebufferUpdateRequest が来るとそれに返信する。
\end{enumerate}

\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}

\bibitem{1}

\end{thebibliography}
\end{document}