annotate paper/chapter5.tex @ 14:6d9c4f5f08bb

update abstract
author oc
date Tue, 17 Feb 2015 12:29:31 +0900
parents 16c5f065f7e7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
1 \chapter{TreeVNC の評価}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
2
4
oc
parents: 1
diff changeset
3 \section{木の深さによるメッセージ伝達の遅延}
oc
parents: 1
diff changeset
4 VNCServer から受信する画像データ、
oc
parents: 1
diff changeset
5 TreeVNC で扱われるメッセージ通信は構成された木を伝って伝達される。
oc
parents: 1
diff changeset
6 接続する人数が増える毎に木の段数は増えていく。
oc
parents: 1
diff changeset
7 そこで root から木の末端の node まで、
oc
parents: 1
diff changeset
8 メッセージが遅延することなく伝達できているかを検証する実験を行った。
oc
parents: 1
diff changeset
9
oc
parents: 1
diff changeset
10
oc
parents: 1
diff changeset
11 \section{実験環境}
oc
parents: 1
diff changeset
12
oc
parents: 1
diff changeset
13 授業を受講している学生が TreeVNC を使用した状態で実験を行った。
oc
parents: 1
diff changeset
14 TreeVNC には最大で34名が接続していた。
oc
parents: 1
diff changeset
15
oc
parents: 1
diff changeset
16 \section{メッセージを使用した実測}
oc
parents: 1
diff changeset
17
oc
parents: 1
diff changeset
18 TreeVNC を伝搬するメッセージに、CHECK\_DELAY・CHECK\_DELAY\_REPLY を追加した。
oc
parents: 1
diff changeset
19 CHECK\_DELAY は root から node の末端まで伝達するメッセージ(図\ref{fig:checkdelay}, 左)、
oc
parents: 1
diff changeset
20 CHECK\_DELAY\_REPLY は各 node から root まで伝達するメッセージ(図\ref{fig:checkdelay}, 右)である。
oc
parents: 1
diff changeset
21
oc
parents: 1
diff changeset
22 % heart beat 代わりにも使える等の違ったメリットも書く?
oc
parents: 1
diff changeset
23 % デバッグに使用できたとかって
1
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
24
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
25 \begin{figure}[htpd]
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
26 \begin{center}
4
oc
parents: 1
diff changeset
27 \includegraphics[scale=0.6]{./images/Test/checkDelay.pdf}
oc
parents: 1
diff changeset
28 \end{center}
oc
parents: 1
diff changeset
29 \caption{CHECH\_DELAY, CHECK\_DELAY\_REPLY}
oc
parents: 1
diff changeset
30 \label{fig:checkdelay}
oc
parents: 1
diff changeset
31 \end{figure}
oc
parents: 1
diff changeset
32
oc
parents: 1
diff changeset
33 \newpage
oc
parents: 1
diff changeset
34
oc
parents: 1
diff changeset
35 CHECK\_DELAY message は、送信時刻を付けて送信する。
oc
parents: 1
diff changeset
36 root から CHECK\_DELAY 送信し、
oc
parents: 1
diff changeset
37 末端 node まで各 node を伝いながら伝達して行く。
oc
parents: 1
diff changeset
38
oc
parents: 1
diff changeset
39 CHECK\_DELAY\_REPLY には、CHECK\_DELAY から受け取った送信時刻をそのまま付つけて送信する。
oc
parents: 1
diff changeset
40 CHECK\_DELAY を受け取った各 node は、
oc
parents: 1
diff changeset
41 CHECK\_DELAY\_REPLY を接続している親 node に送信する。
oc
parents: 1
diff changeset
42
oc
parents: 1
diff changeset
43 CHECK\_DELAY\_REPLY を受け取った root は、
oc
parents: 1
diff changeset
44 メッセージの伝達にどれだけの時間がかかったかを計算する。
oc
parents: 1
diff changeset
45
oc
parents: 1
diff changeset
46 計算方法を以下のソースコード\ref{calc}に記述する。
oc
parents: 1
diff changeset
47 各 node にデータを下ろす際も、root にデータが上る際も、
oc
parents: 1
diff changeset
48 木を伝い受け渡されている。
oc
parents: 1
diff changeset
49 なので、データが root から末端 node に伝わる時間は、
oc
parents: 1
diff changeset
50 CHECK\_DELAY を送信した時間と、
oc
parents: 1
diff changeset
51 CHECK\_DELAY\_REPLY を受信した時間の半分であるといえる。
oc
parents: 1
diff changeset
52
oc
parents: 1
diff changeset
53 % あとでコメントアウトはずす
oc
parents: 1
diff changeset
54 \begin{lstlisting}[caption=遅延時間の計算方法,label=calc]
oc
parents: 1
diff changeset
55 Long delay = System.currentTimeMillis() - time;
oc
parents: 1
diff changeset
56 double halfDelay = (double) delay / 2;
oc
parents: 1
diff changeset
57 \end{lstlisting}
oc
parents: 1
diff changeset
58
oc
parents: 1
diff changeset
59
oc
parents: 1
diff changeset
60 \section{depth毎の遅延結果}
oc
parents: 1
diff changeset
61
oc
parents: 1
diff changeset
62 バイナリツリーで木を構成した場合、
oc
parents: 1
diff changeset
63 node 数が34台だと深さが5となる。
oc
parents: 1
diff changeset
64 各木構造の階層毎に、メッセージの伝搬にかかった時間を測定した。
oc
parents: 1
diff changeset
65
oc
parents: 1
diff changeset
66 図\ref{fig:test}は遅延の分布を示したヒストグラムである。
oc
parents: 1
diff changeset
67 X軸はメッセージ伝達にかかった秒数(ms)、
oc
parents: 1
diff changeset
68 Y軸は CHECK\_DELAY\_REPLY を送信した node の割合を表している。
oc
parents: 1
diff changeset
69
oc
parents: 1
diff changeset
70 ほとんどのメッセージの伝達は 0.0 〜 4.0 ミリ秒内に収まっている。
oc
parents: 1
diff changeset
71 木の段数毎に、メッセージ伝達速度の差が生じている。
oc
parents: 1
diff changeset
72 深い段数の node ほど、メッセージ伝達速度が落ちている。
oc
parents: 1
diff changeset
73
oc
parents: 1
diff changeset
74
oc
parents: 1
diff changeset
75 \begin{figure}[htpd]
oc
parents: 1
diff changeset
76 \begin{center}
oc
parents: 1
diff changeset
77 \includegraphics[scale=0.8]{./images/Test/test.pdf}
1
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
78 \end{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
79 \caption{step1}
4
oc
parents: 1
diff changeset
80 \label{fig:test}
1
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
81 \end{figure}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
82
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
83 %\begin{figure}[htpd]
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
84 % \begin{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
85 % \includegraphics[scale=1.0]{./images/Test/step2.eps}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
86 % \end{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
87 % \caption{step2}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
88 % \label{fig:gpuarch}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
89 %\end{figure}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
90 %
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
91 %\begin{figure}[htpd]
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
92 % \begin{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
93 % \includegraphics[scale=1.0]{./images/Test/step3.eps}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
94 % \end{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
95 % \caption{step3}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
96 % \label{fig:gpuarch}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
97 %\end{figure}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
98 %
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
99 %\begin{figure}[htpd]
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
100 % \begin{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
101 % \includegraphics[scale=1.0]{./images/Test/step4.eps}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
102 % \end{center}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
103 % \caption{step1}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
104 % \label{fig:gpuarch}
dc17ac172c7d add thesis in production.
oc
parents:
diff changeset
105 %\end{figure}