Mercurial > hg > Papers > 2019 > oshiro-thesis
comparison final_main/chapter2.tex @ 8:1f35e28d486c
update tex
author | e155702 |
---|---|
date | Sun, 17 Feb 2019 06:09:03 +0900 |
parents | 8b42a96b95aa |
children | 7d2b1d8309ba |
comparison
equal
deleted
inserted
replaced
7:0e8b9646d43f | 8:1f35e28d486c |
---|---|
21 | 21 |
22 RFB プロトコルでは、始めにプロトコルバージョンの確認、認証を行う。その後クライアントに向けて FrameBuffer の大きさやデスクトップに付けられた名前などが含まれている初期メッセージが送信される。RFB サーバ側は FrameBuffer の更新が行われるたびに RFB クライアントに対して FrameBuffer の変更部分だけを送信する。更に、RFB クライアントの FramebufferUpdateRequest が来るとそれに答え返信する。変更部分だけを送信する理由は、更新がある度に全画面を送信していると、送信するデータ面、更新にかかる時間面において効率が悪いからである。 | 22 RFB プロトコルでは、始めにプロトコルバージョンの確認、認証を行う。その後クライアントに向けて FrameBuffer の大きさやデスクトップに付けられた名前などが含まれている初期メッセージが送信される。RFB サーバ側は FrameBuffer の更新が行われるたびに RFB クライアントに対して FrameBuffer の変更部分だけを送信する。更に、RFB クライアントの FramebufferUpdateRequest が来るとそれに答え返信する。変更部分だけを送信する理由は、更新がある度に全画面を送信していると、送信するデータ面、更新にかかる時間面において効率が悪いからである。 |
23 | 23 |
24 | 24 |
25 \section{TreeStructure} | 25 \section{TreeStructure} |
26 TreeVNC はサーバーに接続してきたクライアントをバイナリツリー状に接続している。また、接続してきたクライアントをノードとし、その下に新たなクライアントを接続していくことでサーバーが画面のデータを配信する回数を抑えることで負荷分散している(図)。バイナリツリー状に接続することで、画像データのコピーを各ノードに負担させることができ、従来の VNC ではクライアントが N 台接続するとサーバー側が N 回コピーを行なって配信していたが、この接続方法であれば各ノードが 2 回ずつコピーすることで配信を可能にしている。 | 26 TreeVNC はサーバーに接続してきたクライアントをバイナリツリー状に接続している。また、接続してきたクライアントをノードとし、その下に新たなクライアントを接続していくことでサーバーが画面のデータを配信する回数を抑えることで負荷分散している(図\ref{fig:vnc} 図\ref{fig:treevnc})。バイナリツリー状に接続することで、画像データのコピーを各ノードに負担させることができ、従来の VNC ではクライアントが N 台接続するとサーバー側が N 回コピーを行なって配信していたが、この接続方法であれば各ノードが 2 回ずつコピーすることで配信を可能にしている。 |
27 | 27 |
28 \begin{figure}[htpb] | 28 \begin{figure}[htpb] |
29 \begin{center} | 29 \begin{center} |
30 \scalebox{0.55}{\includegraphics{fig/vnc.pdf}} | 30 \scalebox{0.55}{\includegraphics{fig/vnc-crop.pdf}} |
31 \end{center} | 31 \end{center} |
32 \caption{従来の VNC の接続方法} | 32 \caption{従来の VNC の接続方法} |
33 \label{fig:vnc} | 33 \label{fig:vnc} |
34 \end{figure} | 34 \end{figure} |
35 | 35 |
36 | |
36 \begin{figure}[htpb] | 37 \begin{figure}[htpb] |
37 \begin{center} | 38 \begin{center} |
38 \scalebox{0.55}{\includegraphics{fig/treevnc.pdf}} | 39 \scalebox{0.55}{\includegraphics{fig/treevnc-crop.pdf}} |
39 \end{center} | 40 \end{center} |
40 \caption{TreeVNC の接続方法} | 41 \caption{TreeVNC の接続方法} |
41 \label{fig:treevnc} | 42 \label{fig:treevnc} |
42 \end{figure} | 43 \end{figure} |
43 | 44 |
44 | 45 |
45 \section{画面配信の切り替え} | 46 \section{画面配信の切り替え} |
46 従来の VNC では、配信者が切り替わるたびに VNC の再起動、サーバー、クライアント間の再接続を行う必要がある。TreeVNC では、画面上にある ShareScreen ボタンを押すことで配信者の切り替えを実行できるように設定し、この問題に対処している。 | 47 従来の VNC では、配信者が切り替わるたびに VNC の再起動、サーバー、クライアント間の再接続を行う必要がある。TreeVNC では、画面上にある ShareScreen ボタンを押すことで配信者の切り替えを実行できるように設定し、この問題に対処している。 |
47 | 48 |
48 ShareScreen 実行後、 Root Node に対し SERVER_CHANGE_REQUEST というメッセージが送信される。このメッセージには ShereScreen ボタンを押した Node の番号やディスプレイの情報が付加されている。メッセージを受け取った Root Node は配信を希望している Node の VNC サーバーと通信を行い、切り替え作業に入る。 | 49 ShareScreen 実行後、 Root Node に対し SERVER\_CHANGE\_REQUEST というメッセージが送信される。このメッセージには ShereScreen ボタンを押した Node の番号やディスプレイの情報が付加されている。メッセージを受け取った Root Node は配信を希望している Node の VNC サーバーと通信を行い、切り替え作業に入る。 |
49 | 50 |
50 %切り替え実行時の図 | 51 %切り替え実行時の図 |
52 | |
53 |