changeset 29:f26ac86036ba

bibliography
author riono <e165729@ie.u-ryukyu.ac.jp>
date Sat, 15 Feb 2020 22:59:52 +0900
parents 74d52d516312
children ca4a813f3b54
files FinalThesis/Makefile FinalThesis/bibliography.tex FinalThesis/chapter1.tex FinalThesis/chapter2.tex FinalThesis/future.tex FinalThesis/main.pdf FinalThesis/main.tex FinalThesis/reference.bib FinalThesis/thanks.tex
diffstat 9 files changed, 98 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/FinalThesis/Makefile	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/Makefile	Sat Feb 15 22:59:52 2020 +0900
@@ -15,18 +15,19 @@
 
 TEX_FILES = \
     appendix.tex \
-    bibliography.tex \
     chapter*.tex \
     thanks.tex  \
+    future.tex \
     $(TARGET).tex
 
+
 CHAPTER = chapter*
 
 AUX_FILES = \
     appendix.aux \
-    bibliography.aux \
     chapter*.aux \
     thanks.aux \
+    future.aux \
     $(TARGET).aux
 
 DVI_FILE = $(TARGET).dvi
@@ -40,6 +41,7 @@
 dvi : $(DVI_FILE)
 $(DVI_FILE): $(TEX_FILES)
 	$(LATEX) -halt-on-error $(TARGET)
+	$(BIBTEX) $(TARGET)
 	$(LATEX) $(TARGET)
 	$(LATEX) $(TARGET)
 
--- a/FinalThesis/bibliography.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/bibliography.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -2,14 +2,15 @@
 \def\line{−\hspace*{-.7zw}−}
 
 
-\begin{thebibliography}{99}
+%\begin{thebibliography}{99}
 %\bibitem{*}内の * は各自わかりやすい名前などをつけて、
 %論文中には \cite{*} のように使用する。
 %これをベースに書き換えた方が楽かも。
 %書籍、論文、URLによって若干書き方が異なる。
 %URLを載せる人は参考にした年月日を最後に記入すること。
+%\bibitem{hoge}
+%hogetestusggdgs
+%\end{thebibliography}
 
 
-\bibitem{hoge}
-hogetestusggdgs
-\end{thebibliography}
+\bibliography{reference}
\ No newline at end of file
--- a/FinalThesis/chapter1.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/chapter1.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -9,7 +9,7 @@
 
 この場合、発表者のPCを接続するたびにケーブルを差し替える必要がある。発表者のPCによっては接続するアダプターの種類や解像度の設定により、正常にPC画面を表示できない場合がある。また、参加者もプロジェクタに集中を割く必要があり、同時に手元のPCで作業を行う場合、集中の妨げとなってしまう。
 
-当研究室で開発している画面配信システムTreeVNCは、発表者のPC画面を参加者のPC画面に表示するソフトウェアである。そのため、参加者は不自由なく手元のPCを操作しながら講義を受けることが可能になる。またjavaで書かれているため、物理的な制限に左右されることが少ない。さらに、発表者の交代の際もケーブルを差し替えずに、全体に共有する画面の切り替えが可能になっている。
+当研究室で開発している画面配信システムTreeVNC\cite{taninari:2011a}は、発表者のPC画面を参加者のPC画面に表示するソフトウェアである。そのため、参加者は不自由なく手元のPCを操作しながら講義を受けることが可能になる。またjavaで書かれているため、物理的な制限に左右されることが少ない。さらに、発表者の交代の際もケーブルを差し替えずに、全体に共有する画面の切り替えが可能になっている。
 
 TreeVNCはVNCを使用した画面配信を行なっている。しかし通常のVNCでは配信側に全ての参加者が接続するため、多人数の際の処理性能が落ちてしまう。TreeVNCではネットワークに接続を行なった参加者をバイナリツリー状に接続することで、配信コストをクライアントに分散させる仕組みになっている。
 
--- a/FinalThesis/chapter2.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/chapter2.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -2,17 +2,17 @@
 \label{chap:concept}
 
 \section{Virtual Network Computing}
-Virtual Network Computing(以下VNC)は、サーバ側とクライアント(ビューワー)側からなるリモートデスクトップソフトウェアである。遠隔操作にはサーバを起動し、クライアント側がサーバに接続することで可能としている。
+Virtual Network Computing\cite{vnc}(以下VNC)は、サーバ側とクライアント(ビューワー)側からなるリモートデスクトップソフトウェアである。遠隔操作にはサーバを起動し、クライアント側がサーバに接続することで可能としている。
 
 \section{Remote Frame Bufferプロトコル}
-Remote Frame Buffer(以下RFB)プロトコルとはVNC上で使用される、自身のPC画面をネットワーク上に送信し他人のPC画面に表示を行うプロトコルである。画面が表示されるユーザ側をRFBクライアントと呼び、画面送信を行うためにFrameBufferの更新が行われる側をRFBサーバと呼ぶ。
+Remote Frame Buffer(以下RFB)プロトコル\cite{rfbprotocol}とはVNC上で使用される、自身のPC画面をネットワーク上に送信し他人のPC画面に表示を行うプロトコルである。画面が表示されるユーザ側をRFBクライアントと呼び、画面送信を行うためにFrameBufferの更新が行われる側をRFBサーバと呼ぶ。
 
 FrameBufferとは、メモリ上に置かれた画像データのことである。RFBプロトコルでは、最初にプロトコルのバージョンの確認や認証が行われる。その後、RFBクライアントへ向けてFramebufferの大きさやデスクトップに付けられた名前などが含まれている初期メッセージを送信する。
 
 RFBサーバ側はFramebufferの更新が行われるたびに、RFBクライアントに対してFramebufferの変更部分を送信する。さらに、RFBクライアントからFramebuffer - UpdateRequestが来るとそれに答え返信する。変更部分のみを送信する理由は、更新があるたびに全画面を送信すると、送信するデータ面と更新にかかる時間面において効率が悪くなるからである。
 \newpage
 \section{TreeVNCの構造}
-TreeVNCはjavaを用いて作成されたTight VNCを元に作成されている。 TreeVNCはVNCを利用して画面配信を行っているが、従来のVNCでは配信(サーバ)側のPCに全ての参加者(クライアント)が接続するため負荷が大きくなってしまう(図\ref{fig:vncStruct})。
+TreeVNCはjavaを用いて作成されたTight VNC\cite{tightvnc}を元に作成されている。 TreeVNCはVNCを利用して画面配信を行っているが、従来のVNCでは配信(サーバ)側のPCに全ての参加者(クライアント)が接続するため負荷が大きくなってしまう(図\ref{fig:vncStruct})。
 
 \begin{figure}[htb] %PDF
 \begin{center}
@@ -130,9 +130,9 @@
 LOST\_CHILDによって、切断された全てのNodeを検知することができるため、nodeListの更新が正しく行われる。よって、新しく接続を行ってきたNodeを適切な場所に接続することが可能となる。
 
 \section{データの圧縮形式}
-TreeVNCはZRLEEというエンコードタイプでデータのやり取りを行う。ZRLEEはRFBプロトコルで使用できるZLREというエンコードタイプを元に生成される。
+TreeVNCはZRLEE\cite{taninari:2012a}というエンコードタイプでデータのやり取りを行う。ZRLEEはRFBプロトコルで使用できるZLREというエンコードタイプを元に生成される。
 
-ZLRE(Zlib Run-Length Encoding)とは可逆圧縮可能なZlib形式とRun-Length Encoding方式を組み合わせたエンコードタイプである。
+ZLRE(Zlib Run-Length Encoding)とは可逆圧縮可能なZlib形式\cite{zlib}とRun-Length Encoding方式を組み合わせたエンコードタイプである。
 
 ZLREはZlibで圧縮されたデータとそのデータのバイト数がヘッダーとして付与され送信される。Zlibはjava.util.zip.deflaterとjava.util.zip.inflaterで圧縮と解凍が行える。しかしjava\.util.zip.deflaterは解凍に必要な辞書を書きだす(flush)ことが出来ない。従って、圧縮されたデータを途中から受け取ってもデータを正しく解凍することが出来ない(図\ref{fig:ZRLE})。
 
--- a/FinalThesis/future.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/future.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -1,1 +1,14 @@
-\chapter{今後の課題}
+\chapter{まとめ}
+本研究ではTreeVNCにWifi上のMulticast Packetを用いる手法の考察と実装と、Gradle6.1対応、java9以降のRetinaAPI対応、デバッグオプションの修正を行った。
+
+画面圧縮にHardware supportedなMPEG4などを用いることができればより効率的な転送が可能であるが、ここではJava上で実装できる安易な方法をあえて選択した。Wifiの速度とMulticastの信頼性が高ければこれでも実用になる可能性がある。
+
+Blocking後のMulticast 送信は実装中であるが、Multicast PacketのPacket loss率は、接続環境に依存すると思われるのでさらなる実験が必要だと思われる。
+
+有線接続時よりも、画面共有の質が落ちるのはある程度はやむお得ないが、再送が必要である場合には、必要なプロトコルを実装する。
+
+VNCサーバへの接続方法の分割についても、Node接続時のNetwork Interfacesから有線接続か無線LAN接続かを完全に区別できない。接続時にユーザが選択するか、接続時にある程度区別する処理を実装する必要がある。
+
+
+
+
Binary file FinalThesis/main.pdf has changed
--- a/FinalThesis/main.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/main.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -6,8 +6,10 @@
 \usepackage{here}
 \usepackage{cite}
 \usepackage{url}
+\usepackage{comment}
 \usepackage{scalefnt}
 \usepackage{listings}
+\usepackage{caption}
 
 
 \usepackage{pxjahyper}
@@ -99,7 +101,11 @@
 
 
 % 参考文献
-\input{bibliography.tex}
+\def\line{−\hspace*{-.7zw}−}
+\nocite{*}
+\bibliographystyle{junsrt}
+\bibliography{reference}
+\addcontentsline{toc}{chapter}{参考文献}
 
 % 謝辞
 \input{thanks.tex}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/FinalThesis/reference.bib	Sat Feb 15 22:59:52 2020 +0900
@@ -0,0 +1,59 @@
+@Misc{rfbprotocol,
+  author = "{RICHARDSON, T., AND LEVINE, J.}",
+  title = "The remote framebuffer protocol. RFC 6143",
+  month = "mar",
+  year = 2011
+}
+
+@Misc{tightvnc,
+  author       = "{TightVNC Software}",
+  howpublished = "\url{http://www.tightvnc.com}"
+}
+
+@Misc{vnc,
+    author = "{RICHARDSON, T., STAFFORD-FRASER, Q., WOOD, K. R., AND HOPPER,}",
+    title  = "A. Virtual Network Computing",
+    month = "jan",
+    year = 1998
+}
+
+@Misc{zlib,
+    author = "{LOUP GAILLY, J., AND ADLER, M.}",
+    title = "zlib: A massively spiffy yet delicately unobtrusive compression library.",
+    howpublished = "\url{http://zlib.net}"
+
+}
+
+@article{understandingScreenContents,
+    author = "{Surendar Chandra, Jacob T. Biehl, John Boreczky, Scott Carter, Lawrence A. Rowe}",
+    title = "Understanding Screen Contents for Building a High Performance, Real Time Screen Sharing System",
+    journal = "ACM Multimedia",
+    year = 2012,
+    month = "Oct"
+}
+@article{taninari:2011a,
+    author = "{Yu TANINARI and Nobuyasu OSHIRO and Shinji KONO}",
+    title = "VNCを用いた授業用画面共有システムの実装と設計",
+    journal = "日本ソフトウェア科学会第28回大会論文集",
+    month = "sep",
+    year = 2011
+}
+
+@article{taninari:2012a,
+    author = "{Yu TANINARI and Nobuyasu OSHIRO and Shinji KONO}",
+    title = "VNCを用いた授業用画面共有システムの設計・開発",
+    journal = "情報処理学会 システムソフトウェアとオペレーティング・システム研究会(OS)",
+    month = "may",
+    year = 2012
+}
+
+@inproceedings{weko_176504_1,
+   author	 = "伊波,立樹 and 河野,真治",
+   title	 = "有線LAN上のPC画面配信システムTreeVNCの改良",
+   booktitle	 = "第57回プログラミング・シンポジウム予稿集",
+   year 	 = "2016",
+   volume	 = "2016",
+   number	 = "",
+   pages	 = "29--37",
+   month	 = "jan"
+}
\ No newline at end of file
--- a/FinalThesis/thanks.tex	Sat Feb 15 18:05:25 2020 +0900
+++ b/FinalThesis/thanks.tex	Sat Feb 15 22:59:52 2020 +0900
@@ -6,18 +6,18 @@
 %GISゼミや英語ゼミに参加した人はその分も入れておく.
 %順番は重要なので気を付けるように.(提出前に周りの人に確認してもらう.)
 
-\hspace{1zw}本研究の遂行,また本論文の作成にあたり、御多忙にも関わらず終始懇切なる御指導と御教授を賜わりましたhoge助教授に深く感謝したします。
+\hspace{1zw}本研究の遂行,また本論文の作成にあたり、御多忙にも関わらず終始懇切なる御指導と御教授を賜わりました河野真治准教授に深く感謝したします。
 
 また、本研究の遂行及び本論文の作成にあたり、日頃より終始懇切なる御教授と御指導を賜わりましたhoge教授に心より深く感謝致します。
 
-数々の貴重な御助言と細かな御配慮を戴いたhoge研究室のhoge氏に深く感謝致します。
+数々の貴重な御助言と細かな御配慮を戴いた研究室のhoge氏に深く感謝致します。
 
 また一年間共に研究を行い、暖かな気遣いと励ましをもって支えてくれたhoge研究室のhoge君、hoge君、hogeさん並びにhoge研究室のhoge、hoge君、hoge君、hoge君、hoge君に感謝致します。
 
 最後に、有意義な時間を共に過ごした情報工学科の学友、並びに物心両面で支えてくれた両親に深く感謝致します。
 
 \begin{flushright}
- 2010年 3月 \\ hoge
+ 2020年 2月 \\ 安田亮
 \end{flushright}