Mercurial > hg > Papers > 2011 > yuu-jssst
changeset 14:29ebaf2027a9
modify subsection ZRLEE
author | Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 08 Aug 2011 20:20:18 +0900 |
parents | 8adf2865dee4 |
children | 748fb2e689a1 |
files | fig/compare_encoding.eps yuu-jssst.pdf yuu-jssst.tex |
diffstat | 3 files changed, 37 insertions(+), 74 deletions(-) [+] |
line wrap: on
line diff
--- a/fig/compare_encoding.eps Mon Aug 08 19:46:59 2011 +0900 +++ b/fig/compare_encoding.eps Mon Aug 08 20:20:18 2011 +0900 @@ -1,7 +1,7 @@ %!PS-Adobe-2.0 EPSF-2.0 %%Title: graph.eps %%Creator: gnuplot 4.4 patchlevel 0 -%%CreationDate: Mon Aug 8 18:11:11 2011 +%%CreationDate: Mon Aug 8 20:08:18 2011 %%DocumentFonts: (atend) %%BoundingBox: 50 50 410 302 %%EndComments @@ -50,7 +50,7 @@ /Author (aotokage) % /Producer (gnuplot) % /Keywords () - /CreationDate (Mon Aug 8 18:11:11 2011) + /CreationDate (Mon Aug 8 20:08:18 2011) /DOCINFO pdfmark end } ifelse @@ -643,7 +643,6 @@ 1.000 UL LTb % Begin plot #1 -1.000 UP 1.000 UL LT0 LCb setrgbcolor @@ -669,33 +668,14 @@ 348 228 V 348 228 V 302 199 V -1115 676 Pls -1463 904 Pls -1810 1131 Pls -2158 1359 Pls -2506 1587 Pls -2853 1815 Pls -3201 2042 Pls -3549 2270 Pls -3894 2498 Pls -4241 2726 Pls -4589 2953 Pls -4937 3181 Pls -5284 3409 Pls -5632 3637 Pls -5980 3865 Pls -6328 4093 Pls -6630 4292 Pls -6621 4486 Pls % End plot #1 % Begin plot #2 -1.000 UP -1.000 UL -LT1 +stroke +LT7 LCb setrgbcolor 6338 4346 M (ZRLE) Rshow -LT1 +LT7 6422 4346 M 399 0 V 1115 523 M @@ -715,28 +695,10 @@ 348 123 V 348 118 V 302 97 V -1115 523 Crs -1463 591 Crs -1810 658 Crs -2158 728 Crs -2506 801 Crs -2853 871 Crs -3201 942 Crs -3549 1042 Crs -3894 1153 Crs -4241 1260 Crs -4589 1369 Crs -4937 1476 Crs -5284 1596 Crs -5632 1719 Crs -5980 1842 Crs -6328 1960 Crs -6630 2057 Crs -6621 4346 Crs % End plot #2 % Begin plot #3 1.000 UP -1.000 UL +stroke LT2 LCb setrgbcolor 6338 4206 M @@ -761,24 +723,24 @@ 348 122 V 348 115 V 302 94 V -1115 513 Star -1463 571 Star -1810 627 Star -2158 686 Star -2506 749 Star -2853 809 Star -3201 872 Star -3549 967 Star -3894 1075 Star -4241 1179 Star -4589 1285 Star -4937 1391 Star -5284 1509 Star -5632 1631 Star -5980 1753 Star -6328 1868 Star -6630 1962 Star -6621 4206 Star +1115 513 Pls +1463 571 Pls +1810 627 Pls +2158 686 Pls +2506 749 Pls +2853 809 Pls +3201 872 Pls +3549 967 Pls +3894 1075 Pls +4241 1179 Pls +4589 1285 Pls +4937 1391 Pls +5284 1509 Pls +5632 1631 Pls +5980 1753 Pls +6328 1868 Pls +6630 1962 Pls +6621 4206 Pls % End plot #3 1.000 UL LTb
--- a/yuu-jssst.tex Mon Aug 08 19:46:59 2011 +0900 +++ b/yuu-jssst.tex Mon Aug 08 20:20:18 2011 +0900 @@ -106,7 +106,6 @@ 上記の構成の場合、一つのノードが落ちた場合に再接続を行うノードは2分木の場合3ノードである。 \end{enumerate} - \begin{figure}[tb] \begin{center} \scalebox{0.80}{\includegraphics{fig/reconnection.eps}} @@ -116,17 +115,25 @@ \end{figure} -\section{java.util.zip.deflaterのバグ} -VNCで扱うRfb Protocolには、使えるエンコーディングのタイプとしてZRLE(Zlib Run-Length Encoding)がある。 + + +\subsection{ZRLE} +VNCで扱うRfb Protocolには、使えるエンコーディングのタイプの1つとしてZRLE(Zlib Run-Length Encoding)がある。 ZRLEはZlib圧縮されたデータを内包する。 + + + +\subsection{java.util.zip.deflaterのバグ} + deflaterはプリセット辞書をもち、Zlib圧縮されたデータはその辞書を用いて解凍が行われる。 -辞書はで更新されることもあるのでZlib圧縮されたデータを解凍する為には辞書のデータも受け取る必要がある。 +辞書は更新されることもあるのでZlib圧縮されたデータを解凍する為には辞書のデータも受け取る必要がある。 しかし、JavaにはこのZlibの辞書を相手へ書きだす(flush)する機能が無い。 元々のZlibの規約にはこの辞書をflushする機能があったがJavaには実装されていなかった。 これはJava.util.zip.deflaterのバグである。 -\section{ZRLEE} +\subsection{ZRLEE} + そこで、Top ProxyがZRLEで受け取ったデータをunzipし、データをzipし直して最後にfinish() をいれることで初めからデータを読んでいなくても解凍を行えるようにした。 このエンコードはZRLEEエンコードと定義した。 @@ -136,18 +143,15 @@ deflaterは新しいものを使うことになる。 ZRLEEはクライアント側が対応していなければならないという問題がある。 +\subsection{ZRLEとZRLEEのデータ圧縮率の比較} -\section{ZRLEとZRLEEのデータ圧縮率の比較} ZRLEとZRLEEを用いて通信を行う場合、データ量にどれくらいの差がでたのかを図2に示す。 図2は1920 * 1080の画面の全描画にかかるデータ量を測った結果を示した図である。ZRLEEの方がデータ量が少なくですんでいる。 これは、ZRLEのデータの中にはdeflaterが持つ辞書のデータを更新しようとするため 1つのBufferedUpdateのたびに辞書を送信するはずのZRLEEが優っているのは、VNCが - これは、VNCではZlibで圧縮されたデータを解凍する際に、持っていた解凍の為の辞書がそこまで役に立たないことを示している。 ZRLE - -%\begin{figure}[tb] \begin{figure}[!htbp] \begin{center} \scalebox{0.5}{\includegraphics{fig/compare_encoding.eps}} @@ -160,9 +164,6 @@ - - - \section{参考文献の参照}