Mercurial > hg > Papers > 2011 > yuu-thesis
comparison yuu-preliminary.tex @ 3:cf4023c9f88d
thesis commit
author | Yu Taninari <you@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 28 Jul 2012 05:23:54 +0900 |
parents | 9a3faec1f0be |
children | ab2220cd9ba5 |
comparison
equal
deleted
inserted
replaced
2:9a3faec1f0be | 3:cf4023c9f88d |
---|---|
1 \documentclass[twocolumn,twoside,9.5pt]{jarticle} | 1 \documentclass[twocolumn,twoside,9.5pt]{jarticle} |
2 \usepackage[dvips]{graphicx} | 2 \usepackage[dvips]{graphicx} |
3 \usepackage{picins} | 3 \usepackage{picins} |
4 \usepackage{fancyhdr} | 4 \usepackage{fancyhdr} |
5 \pagestyle{fancy} | 5 \pagestyle{fancy} |
6 \lhead{\parpic{\includegraphics[height=1zw,clip,keepaspectratio]{pic/emblem-bitmap.eps}}琉球大学主催 工学部情報工学科 卒業研究発表会} | 6 \lhead{Technical Reading Writing} |
7 \rhead{} | 7 \rhead{} |
8 \cfoot{} | 8 \cfoot{} |
9 | 9 |
10 \setlength{\topmargin}{-1in \addtolength{\topmargin}{15mm}} | 10 \setlength{\topmargin}{-1in \addtolength{\topmargin}{15mm}} |
11 \setlength{\headheight}{0mm} | 11 \setlength{\headheight}{0mm} |
16 \setlength{\textheight}{261mm} | 16 \setlength{\textheight}{261mm} |
17 \setlength{\footskip}{0mm} | 17 \setlength{\footskip}{0mm} |
18 \pagestyle{empty} | 18 \pagestyle{empty} |
19 | 19 |
20 \begin{document} | 20 \begin{document} |
21 \title{VNCを用いた授業用画面共有システムの設計と実装} | 21 \title{System design and implementation for the class using the VNC screen sharing} |
22 \author{学籍番号:085734D 氏名:谷成雄 指導教員:河野真治} | 22 \author{School register number:085734D Name:Yu Taninari Instructor:Shinji Kono} |
23 \date{} | 23 \date{} |
24 \maketitle | 24 \maketitle |
25 \thispagestyle{fancy} | 25 \thispagestyle{fancy} |
26 | 26 |
27 \section{はじめに} | 27 \section{First} |
28 普段授業を行う際、プロジェクタを使用して授業を進めることが多い。 | 28 When usually performing teaching,In many cases performed using the projector. |
29 しかし、後ろの席から見えにくいなどの不便を感じることがよくある。 | 29 but, when performed using the projector It is difficult to be visible at rear side seat. |
30 授業を受けている生徒の手元にパソコンがあるならば、そこに先生の画面を表示して授業をすすめることが出来れば、 | 30 If participation class students have personal computer that it can the teacher's screen display. |
31 後ろの席に座っていても見えづらいという問題は解消される。 | 31 If it makes students at rear side seat can be seen easily to teachers display. |
32 Using VNC can display the teacher's screen to students display. | |
33 However, the screen will no longer keep up with the progress of the class fell and process it may end up connecting to a PC at the same time teacher of students of multiplayer. | |
34 This problem happen at same time access to teacher display. | |
32 | 35 |
33 VNCを用いることで、先生の画面を生徒の手元の画面に表示することができる。 | 36 In this study, the client into a tree structure so that you can share the screen in multiplayer |
34 しかし、多人数の生徒が先生のパソコンに同時に接続してしまうと処理性のが落ちて授業の進行に画面がついていかなくなってしまう。 | 37 Do the design and implementation of (TreeVNC) system that is sharing the screen in such a way that will sink the data in order from top to be connected. |
35 この問題は一つのコンピュータ多人数が同時につながるときに起こる問題である。 | |
36 | 38 |
37 | 39 |
38 そこで、本研究では多人数で画面が共有できるようにクライアントをツリー構造に | 40 \section{About VNC} |
39 接続させ上から順番にデータを流していくという方法で画面を共有するシステム(TreeVNC)の設計と実装を行う。 | 41 VNC(Virtual Network Computing) is Remote Desktop software. It is can be remote operation using 'RFB Protocol'. |
42 VNC is divided into the client side and server side, start the server, the client makes a connection to the server. | |
43 | |
44 \section{Rfb Protocol} | |
40 | 45 |
41 | 46 |
42 \section{VNCについて} | 47 \section{Design policy for TreeVNC} |
43 VNC(Virtuual Network Computing)は、RFBプロトコルを用いて遠隔操作を行うリモートデスクトップソフトである。 | 48 First, problem arises when using VNC multiplayer. Since there is many connection,Processing performance falls. it will go down. |
44 VNCはサーバ側とクライアント(ビューア)側に分かれていて、サーバを起動し、クライアントがサーバに接続を行い遠隔操作を可能にする。 | 49 In order to solve this problem . I developed how the client which received the data of screen drawing pours data to the following client was considered. |
50 A client to do screen sharing to becomes VNC server itself. | |
51 Moreover, I were considered as it is better to connect by a tree structure. | |
52 PC (Top) which is present in the top of a tree performs management of connection of clients, Only Top node is made to connect with a VNC server. \\ | |
53 This time is created Tree VNC is The above-mentioned method. only screen sharing do(not allow Operation). | |
45 | 54 |
46 | 55 |
47 \section{TreeVNCの設計方針} | 56 \section{Precedence example} |
48 まず、多人数が参加している授業でVNCを使う場合に起こる問題は、前でも述べたように、 | 57 There are Vnc Reflector and VNc Projector in order to reduce the load to a Vnc server. |
49 一つのコンピュータに多人数が繋がり、処理性能が大幅に落ちてしまうところが問題である。 | |
50 この問題を解決する為に、クライアント同士を接続させ、画面描画のデータを受け取った | |
51 クライアントが次のクライアントにデータを流すという方法を考えた。 | |
52 画面共有を行いたいクライアントが一種のVNCサーバ自体にもなる。 | |
53 また、クライアント同士の接続はツリー構造で行うことで管理がしやすくなると考えた。 | |
54 クライアント同士の接続の管理はツリーの一番上にいるPC(Top)で行い、 | |
55 このTopだけがVNCサーバへ接続を行うようにする。 | |
56 | 58 |
57 今回作成したTreeVNCは、上記の実装でツリー状にクライアントを接続していくように実装を行った。 | 59 \subsection{VNC Reflector} |
58 画面の共有だけを行うように実装した。 | 60 Vnc Reflector is a program which enters between a Vnc server and a client and performs communication with a Vnc server instead. |
61 Because the only client to connect to the Vnc Reflector. we can reduce the load on the Vnc server in order to the connection with a Vnc server serves as only Vnc Reflector. | |
62 | |
63 \subsection{Vnc Projector} | |
64 Vnc Projector is screen sharing software using by Broadcast. | |
65 | |
66 Since Broadcasting is used, there is little load to a server. | |
67 | |
68 This software is a charge. | |
69 It is possible to correspond to the wireless LAN, because not use Broadcast. | |
70 | |
71 \section{Impliments of TreeVNC} | |
72 TreeVNC created based on the java version of TightVNCVirewer.TightVNC is free software for VNC. | |
73 VNC servers created by C++ the Windows version and the Java version is published as of August 9, 2011. | |
59 | 74 |
60 | 75 |
61 \section{先行事例} | 76 \subsection{construction of Tree} |
62 Vncサーバへの負荷を軽減する先行事例としてはVnc ReflectorやVNc Projectorがある。 | 77 ients connected to a host as tree structure. The following procedures perform composition of a tree. |
63 | |
64 \subsection{VNC Reflector} | |
65 Vnc Reflectorは、Vncサーバとクライアントとの間に入り、Vncサーバとの通信を代わりに行うプログラムである。 | |
66 クライアントはVnc Reflectorへ接続するので、Vncサーバとの接続はVnc Reflectorのみとなり、Vncサーバ側の負荷を減らすことができる。 | |
67 | |
68 \subsection{Vnc Projector} | |
69 Vnc Projectorはブロードキャストを用いて、画面共有を行うソフトウェアである。 | |
70 ブロードキャストを用いているので、サーバへの負荷が少ない。 | |
71 このソフトウェアは有料である。 | |
72 Tree VNCはブロードキャストを用いていないので無線LANに対応できる。 | |
73 | |
74 \section{TreeVNCの実装} | |
75 TreeVNCはTightVNCのjava版のビューアを元に作成を行った。TightVNCはフリーのVNC用ソフトである。 | |
76 2011年8月9日現在とC++で作成されたVNC サーバ用とWindows版、それとJava版のビューアが公開されている。 | |
77 | |
78 \subsection{Treeの構成} | |
79 今回は、ホストに対しクライアントがツリー状に繋がっていくように実装した。ツリーの構成は以下の手順で行う。 | |
80 \begin{enumerate} | 78 \begin{enumerate} |
81 \item クライアントが接続する際、ホストに接続をしているプロキシ(今後このプロキシのことをTopと記述する)に接続する。 | 79 \item When a client connects, it connects with the proxy (this proxy will be described to be Top from now on) linked to a host. |
82 \item Topはクライアントにどこに接続すれば良いかを知らせる。(このときに親の番号と自分の番号それからリーダーであるかどうかを一緒に知らせる) | 80 \item The Top teaches the place which should be connected to a client. (It is taught at this time whether you are parents' number, your and number together) |
83 \item クライアントはTopから指定されたノードに接続を行う。 | 81 \item A client connects with the node specified from Top. |
84 \end{enumerate} | 82 \end{enumerate} |
85 | 83 |
86 | 84 |
87 \subsection{Treeの再構成} | 85 \subsection{reconstruction of Tree} |
88 今回の実装はクライアントがツリー状に繋がっているので、親ノードが落ちると子ノードも一緒に落ちてしまう。\\ | 86 Since the client is connected in the shape of a tree as for this mounting, if a parent node falls, a child node will also fall together. \\ |
89 そこで、ツリーの再構成が必要になる。 | 87 Therefore, reconstruction of a tree is needed. The procedure which reconstructs Tree is followed as follows. |
90 \begin{enumerate} | 88 \begin{enumerate} |
91 \item 親ノードが落ちた際に、子ノードの中で一番若い番号の子ノードがTopに対して自分の親ノードが落ちたこ\ | 89 \item A child reports to root that parents be down state. |
92 とを報告する。(親ノードの番号を知らせる) | 90 \item when root is reported. orders to become instead of the parents who fell to largest number node. |
93 \item Topは木の番号が一番大きいノードに対して1で報告を受けた親ノードの代わりになるように命令を出す。$\ | 91 \item The client which received the command from root reconnects with the place where root was specified. |
94 \\$ | 92 \item root updates the list of clients -- new parents' information is taught to the children to whom parents state down. |
95 \item 親ノードがいなくなった子ノードたちはTopに対して、2で新しく繋がった親ノードのIPアドレスを教えて\\ | 93 \item The child who doesn't have parents connect to new parents. |
96 もらいそのアドレスに対して接続をおこなう。 | |
97 上記の構成の場合、一つのノードが落ちた場合に再接続を行うノードは2分木の場合3ノードである。 | |
98 | |
99 図1、図2が再接続の様子である。 | |
100 \end{enumerate} | 94 \end{enumerate} |
95 In this way, Tree can be reconstructed.$\\$ | |
96 When the child to whom the following sauce and parents fell has connected, it is a part of code of the portion which waits for all children's connection. | |
101 | 97 |
102 | 98 |
103 \begin{figure}[!htbp] | 99 \section{Evaluation} |
104 \begin{center} | 100 TreeVNC was implemented and comparison with Vnc Reflector was performed. |
105 \scalebox{0.80}{\includegraphics{pic/reconnection1.eps}} | 101 Test environment prepares 48 VM(s) on a Blade server, and is TreeVNC and Vnc Reflector besides a Blade server. |
106 \end{center} | 102 PC was placed and it experimented by making 48 VM(s) access. |
107 \caption{子ノードの番号が若いほう(3番)がTopに報告してツリーの番号が一番大きいノードに対して報告を行う。\ | |
108 (TはTop)} | |
109 \label{figure:splaying} | |
110 \end{figure} | |
111 | 103 |
112 \begin{figure}[!htbp] | 104 \subsection{Compare VncReflector to TreeVNC} |
113 \begin{center} | 105 As for overconcentrated type Vnc Reflector, the throughput fell from 20 mega to five mega. |
114 \scalebox{0.80}{\includegraphics{pic/reconnection2.eps}} | 106 On the other hand, it has checked that the direction of TreeVNC saved as [ 20 mega ] for a throughput. |
115 \end{center} | 107 This is unlike Vnc Reflector 48 units to gain access to a communication band of this is because the client will communicate with each other. |
116 \caption{番号の一番大きいノードが報告を受け指定された場所(1番)に接続を行う。(TはTop)} | |
117 \label{figure:splaying} | |
118 \end{figure} | |
119 | 108 |
120 \section{評価} | 109 \subsection{The advantage and fault of TreeVNC} |
121 TreeVNCの実装を行い、Vnc Reflectorとの比較を行った。 | |
122 テスト環境はBlade サーバ上にVMを48台用意し、Blade サーバの外にTreeVNCとVnc Reflectorを | |
123 起動させたPCを置き、VM48台にアクセスさせて実験を行った。 | |
124 | 110 |
125 \subsection{Vnc Reflectorとの比較結果} | 111 Since clients exchange data, there is little load to a Vnc server. |
126 一極集中型のVnc Reflectorは、スループットが20メガから5メガまで落ちた。 | |
127 一方TreeVNCの方はスループットを20メガのままをキープすることが確認できた。 | |
128 これは、1本の通信帯へ48台がアクセスするVnc Reflectorと違い、クライアント同士が通信を行う為である。 | |
129 | 112 |
130 \subsection{TreeVNCの利点と欠点} | 113 Since it is not an overconcentrated type, when using by a lot of people, there is little stress of a display. |
131 | 114 |
132 クライアント同士がデータのやり取りをするのでVnc サーバへ負荷が少ない。 | 115 The Top itself can also have a viewer. |
133 | 116 |
134 一極集中型ではないので、多人数で使う際に画面表示のストレスが少ない。 | 117 Communication speed of minutes all up, high load to the switch. |
135 | |
136 Top自身がビューアを持つこともできる。 | |
137 | |
138 みんなの通信速度上がる分、スイッチへの負荷が高い。 | |
139 | 118 |
140 | 119 |
141 | 120 |
142 \section{まとめと今後の課題} | 121 \section{Result and Future works} |
143 本研究では、VNCとツリー構造を用いて画面共有システムを開発した。結果スループットを落とすことなく48台で接続を行うことができた。 | 122 In this research, the screen shared system was developed using VNC and a tree structure. |
123 A result a throughput without dropping its connection at 48 sets. | |
144 | 124 |
145 今回、仮想マシーン上でのテストは行ったが、実際の授業などでのテストは行なっていないので実際の授業で使えるのかのテストを行いたい。 | 125 Since the test in an actual lesson etc. is omitted, I would like to test whether it can use by actual lesson, although the test on a virtual machine was done this time. |
146 | 126 |
147 クライアントのUIの部分ができていないので、UIを充実させ使いやすいシステムを設計したい。 | 127 Since the portion of UI of a client is not made, I would like to enrich UI and to design an easy-to-use system. |
128 | |
148 | 129 |
149 \thispagestyle{fancy} | 130 \thispagestyle{fancy} |
150 \begin{thebibliography}{9} | 131 \begin{thebibliography}{9} |
151 | 132 |
152 \bibitem{VncReflector}{TightVNC: VNC-Compatible Free Remote Control / Remote Desktop Software}: | 133 \bibitem{VncReflector}{TightVNC: VNC-Compatible Free Remote Control / Remote Desktop Software}: |