changeset 2:19e0e04dce74 default tip

update
author Yu Taninari <you@cr.ie.u-ryukyu.ac.jp>
date Wed, 11 Apr 2012 18:14:50 +0900
parents 9d9f6c9acfa0
children
files yuu-sigos.tex
diffstat 1 files changed, 96 insertions(+), 299 deletions(-) [+]
line wrap: on
line diff
--- a/yuu-sigos.tex	Wed Apr 11 02:35:00 2012 +0900
+++ b/yuu-sigos.tex	Wed Apr 11 18:14:50 2012 +0900
@@ -42,13 +42,18 @@
 
 
 \begin{abstract}
-あとで書く
+VNCを用いて多人数で画面共有を行う際、一つのコンピュータに同時にアクセスすると
+CPU使用率やネットワークに対する負荷が高くなってしまう。
+そこで本研究室ではクライアントを木構造に接続させるTreeVNCを設計し、実装した。
+現在TreeVNCはMulticastを用いて通信を行なっている。
+TreeVNCをBroadcastを用いた通信に変更するとパフォーマンスどの程度変わるのかを検証するために
+Broadcastを用いた通信に変更するためにはどのような変更が必要になってくるのかを考える必要がある。
+本研究では、TreeVNCをBroadcastで行うためにどのような変更が必要か考察し設計を行う。
+\end{abstract}
 
 
-\end{abstract}
-
 \begin{jkeyword}
-情報処理学会論文誌ジャーナル,\LaTeX,スタイルファイル,べからず集
+情報処理学会論文誌ジャーナル,ネットワークプロトコル,マルチキャスト,画面共有
 \end{jkeyword}
 
 \begin{eabstract}
@@ -60,7 +65,7 @@
 \end{eabstract}
 
 \begin{ekeyword}
-IPSJ Journal, \LaTeX, style files, ``Dos and Dont's'' list
+IPSJ Journal, Network Protocol, Multicast, Screen Sharing
 \end{ekeyword}
 
 \maketitle
@@ -73,17 +78,18 @@
 表示して授業を進めれば後ろの席に座っても手元に画面があるので見えづらいという問題は解消される。
 
 Ustream Producerを使用することで画面を生徒のコンピュータに配信することができる。
-しかし、使用してみた結果解像度が低くて、ソースコードを読む際などに見えづらいという問題がはっせいした。
+しかし、使用してみた結果解像度が低くて、ソースコードを読む際などに見えづらいという問題が発生した。
 
 他にもVNCを使えば、スライドを生徒の手元の画面に表示することができる。
+VNCについては次の章で説明する。
 VNCは共有したい画面の解像度のままのデータを配信することができる。
 しかし、多人数の生徒が先生のパソコンに同時に接続してしまうとサーバ側が送信するデータの量が増えるので
 処理性能が落ちて授業の進行に画面がついていかなくなってしまう。
 この問題は一つのコンピュータに多人数が同時に繋がるときに起こる問題である。
 
 そこでクライアントをTree構造に接続させていくことによって処理を分散させることにした。
-クライアントをTree構造に接続させることによって、switchに対する負荷が増えサーバ側に
-対する負荷が軽減する。
+クライアントをTree構造に接続させることによって、
+見えない部分でスイッチに対する負荷が増えている分サーバに対する負荷が軽減している。
 
 今回TreeVNCはMulticastで実装しているが、Broadcastで実装されたものとどちらが性能がいいのか
 どれくらい性能差が出るのかという疑問がでてきた。
@@ -92,12 +98,13 @@
 Broadcast版の設計について以下に詳しく説明していく。
 
 
-
 %2
 \section{VNCについて}
-VNC(Virtual Network Computing)は、RFB プロトコルを用いて遠隔操作を行うリモートデスクトップソフトである。
+VNC(Virtual Network Computing)は、RFB プロトコルを用いて画面を送信して
+操作権を与えるリモートデスクトップソフトである。
 VNCはサーバ側とクライアント(ビューア)側に分かれていて、サーバを起動し、
 クライアントがサーバに接続を行い遠隔操作を可能にする。
+
 %2.1
 \subsection{RFB Protocol}
 RFB (remote frame buffer) プロトコルは、GUI操作をリモートアクセスで行うためのプロトコルである。
@@ -110,7 +117,7 @@
 \section{TreeVNCの方針}
 まず、多人数が参加している授業でVNCを使う場合に起こる問題は、
 最初で述べたように、一つのコンピュータに多人数が繋がり、
-処理性能が大幅に落ちてしまうところが問題である。
+理性能が大幅に落ちてしまうところが問題である。
 %この問題を解決する為に、一つのコンピュータに多人数がつながるのではなく
 目的のコンピュータに繋がっているコンピュータに繋げれば目的の画面を共有することができる。
 
@@ -136,8 +143,10 @@
 
 クライアントからアクセスが来るたびにスレッドを作成しているので、
 複数のクライアントが同時に接続してきても対応することができる。
+
 しかし、多数のスレッドが同じjava.util.LinkedListなどの共有資源に対して同時に接続を行うと
 共有資源の情報が正しく更新されない可能性が出てくる。
+
 このような共有資源を更新する際はjavaのsynchronizedメソッドを使用して複数のスレッドが共有資源
 に同時にアクセスすることができないようにした。
 
@@ -181,7 +190,6 @@
 passNumberは報告する子供たちを数えるためのカウンタである。
 プロキシは子供分の報告全て揃うと子供たちに新しい親の情報を流し始める。
 TIMEOUTが設定されているのは、子供が報告の際に落ちて報告が届かない場合があるのでそれに対応したものである。
-\newpage
 
 \begin{figure}[tb]
 \begin{center}
@@ -193,19 +201,19 @@
 \label{figure:reconnection}
 \end{figure}
 
-図5.1破砕接続の様子を記したコラボレーションダイアグラムである。以下に関数の説明をする。
+図1は接続の様子を記したコラボレーションダイアグラムである。以下に関数の説明をする。
 
-1:lostHost()は親が落ちたことを報告する関数である。
-
-2:reportLastNode()は番号の一番大きい(最後のノード)に対して親の代わりをするように命令する関数である。
+\begin{enumerate}
+  \setlength{\parskip}{0cm} % 段落間
+  \setlength{\itemsep}{0cm} % 項目間
 
-3:listUpdate()はプロキシが持つクライアントのリスト情報をアップデートする
+  \item lostHost()は親が落ちたことを報告する関数である。
+  \item reportLastNode()は番号の一番大きい(最後のノード)に対して親の代わりをするように命令する関数である。
+  \item listUpdate()はプロキシが持つクライアントのリスト情報をアップデートする
 (落ちたノードを削除し最後のノードのアドレスをそこに追加する)。
-
-4:lostHost()は上記で説明したとおりである。なぜ間に2と3が呼ばれているのかというと最初にlostHost()が呼ばれて、
+  \item lostHost()は上記で説明したとおりである。なぜ間に2と3が呼ばれているのかというと最初にlostHost()が呼ばれて、
 listUpdate()が終わるまで他のノードの報告はブロックされるからである。Client4が先に報告に行く場合もある。
-
-5:waitReply.start()はクライアントはwaitReplyというクラスをmainスレッドとは別にスレッドを作成して走らせている。
+  \item waitReply.start()はクライアントはwaitReplyというクラスをmainスレッドとは別にスレッドを作成して走らせている。
 もしプロキシからの命令が来るとクライアントはプロキシから指定された場所に接続を行う。
 
 
@@ -219,34 +227,33 @@
 \label{figure:reconnection2}
 \end{figure}
 
-図5.2は前のページ続きを記したものである。以下に関数の説明を行う。
 
-6:replyChildlen()はListing1で説明したとおり全クライアントが報告に来るまで待った後、
+  \item replyChildlen()はListing1で説明したとおり全クライアントが報告に来るまで待った後、
 親が落ちた子供たちに対して新しい親の情報を報告する関数である。
 
-7:reConnection()はプロキシから来た情報をもとにVNC接続を行う関数である。
+  \item reConnection()はプロキシから来た情報をもとにVNC接続を行う関数である。
+
+\end{enumerate}
 
 以上の関数を用いることでクライアントが落ちても木を再構成することができる。
 
 
-
 \section{リファクタリング}
 はじめにTreeVNCを作成する際に、Top用のプログラムとクライアント用のプログラムを別々に作成していた。
 
-Topとクライアントのプログラムはだいたい同じことをしているのにソースが2つあるので片方を変更するすると、
+Topとクライアントのプログラムはだいたい同じことをしているのにソースが2つあるので共通部分を片方を変更するすると、
 もう片方も同じ変更をしなければならない。片方の変更を忘れるとプログラムが正常に動作しなくなることもある。
 
-2つのコードを変更するのは手間がかかるので、一つのプログラムにまとめることにした。
+2つのコードを変更するのは手間がかかるので、同じ部分は一つのプログラムにまとめることにした。
 
-リファクタリングを行う際にabstract factoryを使用して2つのプログラムを一つにまとめることができる。
-
-[[abstract factory]]
+リファクタリングを行う際にabstract factoryを使用して2つのプログラムを一つにまとめることができた。
 
 
 \section{圧縮の問題}
 
 VNCで扱うRFB プロトコルには、使えるエンコーディングのタイプの1つとしてZRLE(Zlib Run-Length Encoding)がある。
 ZRLEはZlibで圧縮されたデータとそのデータのバイト数がヘッダーとして付けられ送られてくる。
+
 Zlibはフリーのデータ圧縮及び解凍を行うライブラリである。
 可逆圧縮アルゴリズムの圧縮と解凍が行えるjava.util.zip.deflaterとjava.util.zip.inflaterを実装している。
 
@@ -260,17 +267,19 @@
 \subsection{ZRLEE(ZRLE Economy)}
 そこで、TopがZRLEで受け取ったデータをunzipし、データをzipし直して最後にfinish()
 をいれることで初めからデータを読んでいなくても解凍を行えるようにした(毎回新しい辞書を使うようにした)。
+
 このエンコードはZRLEEエンコードと定義した。
 一度ZRLEEエンコードに変換してしまえば、そのデータをそのまま流すだけで良い。
 よって変換はTopが行う一回だけですむ。
+
 ただし、deflater,inflaterでは前回までの通信で得た辞書をクリアしないといけないため、
 Topとクライアント側では毎回新しく作る必要がある(クライアント側はinflaterだけ)。
 また、ZRLEEはクライアント側が対応していなければならないという問題がある。
 
 \subsection{ZRLEとZRLEEのデータ圧縮率の比較}
 RAW,ZRLE,ZRLEEのデータ量の比較を行った。
-図6は1920 * 1080の画面の全描画にかかるデータ量を測った結果を示した図である。ZRLEEの方がデータ量が少なくですんでいる\
-。
+図6は1920 * 1080の画面の全描画にかかるデータ量を測った結果を示した図である。
+ZRLEEの方がデータ量が少なくですんでいる。
 これは、ZRLE(Zlib)が初めに送られた辞書を用いての解凍が余り有効的に働いていない場合があるからだと思われる。
 つまりVNCの場合はZRLEEの様に毎回辞書のデータを付加させて送ってもデータ量に差がでない可能性があることが分かった。
 
@@ -290,33 +299,41 @@
 実際の授業で実装したTreeVNCを使用してみた。
 実際に使ってみての感想などを聞いてみると良かったなどの意見がでてきた。
 しかし、実際に使ってみて新しい問題などもみつかった。
+
 TreeVNCでは各クライアントが自分自身のタイミングで画像データを取得できるように
 MulticastQueueを作成して、データをQueueにもたせている。
+
 クライアントが接続を持ったままsuspend(停止)してしまうとQueueにデータがたまり続けてしまい
 Memory Overflowを起こしてしまう。そこで、TimeOutスレッド作成して、
 一定時間取得されないデータはQueueから削除して、クライアントが読み込みを
 開始した際に、消された次に入っているデータを送るというように設計されている。
+
 一つ目の問題は画像の更新が少ない画面の共有を行う際に、たまにデータが送られてこないとう問題がある。
 この問題はおそらく上記で説明したTimeOutスレッドが更新データを落としてしまっているのではないかと考えられる。
+
 二つ目の問題は発表者が複数いる際は発表者が変わるごとにTopを起動しなおさなければならないということである。
 この問題については次の章でもう少し詳しく説明する。
 
 
 \section{UserInterfaceの設計と実装}
 普通VNCで接続を行う際にクライアントを起動する際に相手のアドレスを指定しなければならない。
-そこで、TreeVNCはクライアントが起動する際にBroadCastパケットを送信して同じセグメント内に、
+
+そこで、TreeVNCはクライアントが起動する際にBroadcastパケットを送信して同じセグメント内に、
 Topが起動しているかどうかを調べ、起動していたら起動しているTopの一覧を表示するように設計・
-実装を行った。これによりクライアントは起動する際に何も打ち込まなくても起動することができる。
+実装を行った。
+
+これによりクライアントは起動する際に何も打ち込まなくても起動することができる。
 
 前章で説明したように、ゼミなど発表者が多数いる際に、TreeVNCを使用すると発表者ごとにTopを立て直す必要がある。
 このような際にボタンひとつで、画面共有を行う対象を変更できると便利である。
 しかし、VNCでは違う画面サイズのデータが流れてくると落ちてしまう仕様になっている。
+
 そのため、画面を切り替える際はクライアントに画面が切り替わることを教えるプロトコルを作成する必要がある。
 上のような設計で画面の切り替えは今後実装する予定である。
 
 
 \section{Broadcast版の設計}
-Broadcast版を設計する際に見えてきた問題点などを解説する。
+この章ではBroadcast版を設計する際に見えてきた問題点などを解説する。
 
 
 \subsection{Broadcastパケットの性質}
@@ -326,24 +343,28 @@
 無線のBroadcastの場合も約64000byteのデータを送信することができたが、無線だと不安定で
 データが沢山落ちたりすることもあった。
 
-もう一つBroadcastパケットの性質としてデータが落ちてもわからないという性質がある。
+もう一つの問題はBroadcastパケットの性質としてデータが落ちてもわからないという性質があり
+更新データが落ちたのをクライアント側が気づくことができないという問題である。
 この問題に対しての考えは後述する。
 
 \subsection{パケットの分割}
 VNCでは画像を更新する際に矩形単位で更新データを送信する。
+
 画面全体の更新などはどうしても更新データのサイズが大きくなってしまう。
 Broadcastでは約64000byteまでのデータしか送ることができないので、
 データを送信する際は64000byte以下になるようにデータを分割して送らなければならない。
+
 第5章で説明したとおりTreeVNCでは、VNC ServerからZRLE圧縮されたデータをうけとり、
 Topが一旦解凍をして、圧縮し直してZRLEE圧縮されたデータを送信している。
+
 この一旦解凍されたデータを分割64000byte以下にしてクライアントに送信してやれば良い。
 ZRLEを解凍すると、64*64ピクセルのタイル群のデータになる。
+
 よってデータの分割はこのタイル群数個分で分割することでうまくいくと考えた。
 最後に分割したデータを圧縮しなおして、headerデータを付加してクライアントに流してやれば良い。
 
 
 
-
 \subsection{dropしたパケットの検出}
 Broadcastの性質で説明したとおり、Broadcastではデータが落ちていることをクライアントが知ることができない。
 そこでプロトコルを拡張してデータごとにシリアル番号を振ってやり連続でない値が来た時はデータが正しく
@@ -352,32 +373,38 @@
 
 \subsection{Acknowledgeの設計}
 データがdropした際に、どのようにして落ちた部分のデータをTopに再送してもらうかが問題となってくる。
+クライアントはdropしたパケットのシリアル番号がわかっている。
 
+ちなみに、Broadcast版の実装でもクライアントをTree構造で接続させておく必要がある。
+その理由として、初期接続のパケットはBroadcastでは送れないのでTCPを用いなければならないや
+クライアントがdropを検出したときTopに知らせてdropした部分のパケットを再送信してもらわなければならない。
+再送信をする際はTCPで送信する。
+
+ここでTree構造で組んでいない場合、全クライアントがTOPに対して接続に行ってしまうと接続が一箇所に集中
+してしまい通常のVNCと変わらなくなってしまう。
+
+以上の理由からBroadcastの際にもTree構造で組む必要がある。
+そうすると、Tree構造でどのようにしてdropしたパケットをTopに教えるかを考えなければならない。
+
+クライアントは上のクライアントに対してどの番号のパケットがdropしたのかを指定して
+最終的にTopに届くように上へ上へと送信していく。
+ここで、上へ送信していく際に途中で目的のデータが上から送られてきた際には、そのパケットはそこで破棄するように
+する。
 
 
 \section{まとめと今後の展開}
-
+本研究では、作成したTreeVNCのUserInterfaceの設計を行い実装を行った。
+さらに、TreeVNCはMulticastでパケットを送信しているが、Broadcastで送信することができるように
+するための設計を行った。設計を行うことでいろいろな問題が見えてきた。
 
+今後の展開として、発表者が変わるたびにTopを立て直すまたはひとつのコンピュータで発表を行うなど不便
+な部分があるので発表者をボタンひとつで切り替えられるように実装を行いたい。
 
-
+それから、今回設計を行ったBroadcast版の実装を行い、Multicast版のTreeVNCとBroadcast版の性能比較を
+行いたい。
 
 
-%6
-\section{おわりに}
-
-本稿では,A4縦型2段組み用に変更したスタイルファイルを用いた論文のフォー
-マット方法と,論文誌ジャーナル編集委員会がまとめた「べからず集」に基づく
-論文の書き方を示した.内容的にまだ不十分の部分が多いため,意見,要望等を
-\begin{quote}
- \|editt@ipsj.or.jp|
-\end{quote}
-までお寄せ頂きたい.
-
-\begin{acknowledgment}
-A4横型に対するガイドを基に,本稿を作成した.A4横型に対するガイドを作成さ
-れた当時の編集委員会の担当者に深謝する.
-\end{acknowledgment}
-
+%\begin{adjustvboxheight}
 \begin{thebibliography}{10}
 
 %\bibitem{latex}
@@ -386,256 +413,26 @@
 % (Cooke, E., et al.訳:文書処理システム \LaTeX,アスキー出版局
 %  (1990)).
 
-%\bibitem{total}
-%伊藤和人: \LaTeX トータルガイド,秀和システムトレーディング (1991).
-%\bibitem{nodera}
-%野寺隆志:楽々 \LaTeX,共立出版 (1990).
-
-\bibitem{okumura}
-奥村晴彦:改訂第5版 \LaTeXe 美文書作成入門,
-技術評論社(2010).
-
-\bibitem{companion}
-Goossens, M., Mittelbach, F. and Samarin, A.:
-{\it The LaTeX Companion},
-Addison Wesley, Reading, Massachusetts (1993).
-
-\bibitem{book1}
-木下是雄:
-理科系の作文技術,
-中公新書(1981).
-
-\bibitem{book2}
-Strunk W. J. and White E.B.:
-{\it The Elements of Style, Forth Edition},
-Longman (2000).
-
-\bibitem{book3}
-Blake G. and Bly R.W.:
-{\it The Elements of Technical Writing},
-Longman (1993).
-
-\bibitem{book4}
-Higham N.J.:
-{\it Handbook of Writing for the Mathematical Sciences},
-SIAM (1998).
-
-\bibitem{webpage1}
-情報処理学会論文誌ジャーナル編集委員会:
-投稿者マニュアル(online),
-\urlj{http://www.ipsj.or.jp/journal /submit/manual/j\_manual.html}
-(2007.04.05).
-
-\bibitem{webpage2}
-情報処理学会論文誌ジャーナル編集委員会:
-べからず集(online),
-\urlj{http://www.ipsj.or.jp/journal/manual /bekarazu.html}
-(2011.09.15).
-
-\end{thebibliography}
-
-\appendix
-
-%7
-\section{付録の書き方}
-
-付録がある場合には,参考文献リストの直後にコマンド \|\appendix| に引き続
-いて書く.付録では,\|\section| コマンドが{\bf A.1},{\bf A.2}などの見出
-しを生成する.
-
-%7.1
-\subsection{見出しの例}
 
-付録の \|\subsetion| ではこのよう見出しになる.
-
-%8
-\section{研究会論文用コマンド}
-\label{sig}
-
-各研究会論文誌(トランザクション)には各々に固有のサブタイトル,略称,通
-番がある.最終原稿では,以下のコマンドを \|\documentclass| の{\bf オプショ
-ン}とすることで,これらの情報を与える.
-
-\begin{itemize}
-\item \|PRO|(プログラミング)
-\item \|TOM|(数理モデル化と応用)
-\item \|TOD|(データベース)
-\item \|ACS|(コンピューティングシステム)
-\item \|CDS|(コンシューマ・デバイス\,\&\,システム)
-\item \|TBIO|(Bioinformatics)\footnote{%
-TBIO, SLDM, CVAは英文論文誌であるので和名はない.}
-\item \|SLDM|(System LSI Design Methodology)\footnotemark[5]
-\item \|CVA|(Computer Vision and Applicaitons)\footnotemark[5]
-\end{itemize}
-
-また英文論文作成の際には \|english| をオプションに追加すればよい.したがっ
-て,\|\documentclass[PRO]{ipsj}| とすれば「プログラミング」の和文用,
-\|\documentclass[PRO,english]| \|{ipsj}| とすれば英文用となる.
+\bibitem{VncReflector}{TightVNC: VNC-Compatible Free Remote Control / Remote Desktop Software}: 
+http://vnc-reflector.sourceforge.net/
 
-また研究会には「号」と連動しない「発行月」があるため,学会あるいは編集委
-員会の指示に基づき,発行月を
-%
-\begin{itemize}\item[]
-\|\setcounter{|{\bf 月数}\|}{<発行月>}|
-\end{itemize}
-%
-によって指定する.
-
-この他,以下の各節で示すように,いくつかの論文誌に固有の機能を実現するた
-めのコマンドなどが用意されている.
-
-\newpage%%
-
-%9
-\section{各分冊固有コマンド}
-
-各分冊によってそれぞれ細かい仕様が違うため,同じコマンドでも出力結果が異
-なる場合がある.また「再受付」,「再々受付」が入る場合があり,それらは
-
-\noindent
-和文では
-\begin{itemize}\item[]
-\|\|{\bf 再受付}\|{<年>}{<月>}{<日>}|\\
-\|\|{\bf 再再受付}\|{<年>}{<月>}{<日>}|
-\end{itemize}
-英文では
-\begin{itemize}\item[]
-\|\|{\bf rereceived}\|{<年>}{<月>}{<日>}|\\
-\|\|{\bf rerereceived}\|{<年>}{<月>}{<日>}|
-\end{itemize}
-とプリアンブルに追加する.
-
-%9.1
-\subsection{\<「プログラミング(PRO)」固有機能}
+\bibitem{TightVNC}{TightVNC: VNC-Compatible Free Remote Control / Remote Desktop Software}: 
+http://www.tightvnc.com/
 
-\<「論文誌:プログラミング」には論文以外に,プログラミング研究会での研究
-発表の内容梗概が含まれている.この内容梗概は,\|\documentclass|のオプショ
-ンとして\|abstract|を指定する.\ref{config}~節の\|\maketitle|までの内容
-からなるファイル(すなわち本文がないファイル)から生成する.なお\|\|{\bf 
-受付}や\|\|{\bf 採録}は不要であるが,代わりに発表年月日を,
-
-\noindent
-和文では
-\begin{itemize}\item[]
-\|\|{\bf 発表}\|{<年>}{<月>}{<日>}|
-\end{itemize}
-英文では
-\begin{itemize}\item[]
-\|\|{\bf Presents}\|{<年>}{<月>}{<日>}|
-\end{itemize}
-により指定する.
-
-%9.1
-\subsection{\<「データベース(TOD)」固有機能}
-
-\<「論文誌:データベース」の論文の担当編集委員は,
-\begin{itemize}\item[]
-\|\Editor{<氏名>}|
-\end{itemize}
-により指定する.和文では「担当編集委員」,英文では「Editor in Charge:」
-と入る.
-
-またスタイルの変更に伴い,\underline{本文の最後}に入るので,
-\|\end{document}|の前に直接置く.
-
-%9.2
-\subsection{\<「コンシューマ・デバイス\,\&\,システム(CDS)」固有機能}
-
-\<「論文誌:コンシューマ・デバイス\,\&\,システム」では,
-論文の種類によって見出しが変わるため,
-オプションで切替えを行う.
-
-各種別は
-\begin{itemize}
-\item \|systems  |コンシューマ・システム論文\\
-\|         |Paper on Consumer Systems
-
-\item \|services |コンシューマ・サービス論文\\
-\|         |Paper on Consumer Services
-
-\item \|devices  |コンシューマ・デバイス論文\\
-\|         |Paper on Consumer Devices
-
-\item \|research |研究論文\\
-\|         |Research Paper
-\end{itemize}
-となる.
-
-和文のコンシューマ・システム論文なら,\\
-\|\documentclass[CDS,systems]{ipsj}|
-となり,英文原稿なら \|english|を追加すればよい.
-
-%9.3
-\subsection{\<「Bioinformatics(TBIO)」固有機能}
-
-Trans.\ Bioinformatics (TBIO)は英文論文誌であるので,\|TBIO|オプションの
-指定によって自動的に\|english|オプションが指定されたものとみなされ,
-\|english| オプションの省略が可能.
+\bibitem{VNC}{Tristan Richardson, Quentin Stafford-fraser, Kenneth R. Wood, Kenneth R. Wood, Andy Hopper}:
+Virtual Network Computing (1998): Virtual Network Computing (1998)
 
-論文種別は以下の3種.
-\begin{itemize}
-\item \makebox[4.9zw][l]{指定なし} Original Paper (Default)
-\item \|Data     | Database/Software Paper
-\item \|Survey   | Survey Paper
-\end{itemize}
-
-\|\documentclass[TBIO]{ipsj}|でOriginal Paper,\\
-\|\documentclass[TBIO,Survey]{ipsj}|でSurvey Paperとなる.
-
-また,担当編集委員はTOD同様,\|\Editor|で定義するが,「Communicated by」
-となる.TOD同様,\|\end{document}|の前に直接置く.
-
-%9.4
-\subsection{\<「Computer Vision and Applicaitons\\\<(CVA)」固有機能}
-
-Trans.\ CVAも英文論文誌であるため,\|english| オプションの省略が可.
-
-論文種別は2種類あり,
-\begin{itemize}
-\item \makebox[4.9zw][l]{指定なし} Regular Paper (Default)
-\item \|Research | Research Paper
-\end{itemize}
-となる.
-
-TBIO同様,担当編集委員が入り,
-挿入文章もTBIO同様,「Communicated by」となる.
-
-%9.5
-\subsection{\<「System LSI Design Methodology(SLDM)」固有機能}
+\bibitem{ZLIB}{P. Deutsch, J-L. Gailly }:
+ZLIB Compressed Data Format Specification version 3.3
 
-Trans.\ SLDMも英文論文誌であるため,\|english| オプションの省略が可.
-
-論文種別は2種類あり,
-\begin{itemize}
-\item \makebox[4.9zw][l]{指定なし} Regular Paper (Default)
-\item \|Short    | Short Paper
-\end{itemize}
-となる.
-
-SLDMも担当編集委員が入るが挿入文章が論文によって自動挿入文章が異なる.
-
-通常は「Recommended by Associate Editor:」,\|invited|のオプションが入っ
-た場合のみ,「Invited by Editor-in-Chief:」となる.
-
-\begin{biography}
-\profile{m}{情報 太郎}{1970年生.1992年情報処理大学理学部情報科学科卒.
-1994年同大大学院修士課程了.同年情報処理学会入社.オンライン出版の研究
-に従事.電子情報通信学会,IEEE,ACM 各会員}
-%
-\profile{n}{処理 花子}{1960年生.1982年情報処理大学理学部情報科学科卒.
-1984年同大大学院修士課程了.1987年同博士課程了.理学博士.1987年情報処
-理大学助手.1992年架空大学助教授.1997年同大教授.オンライン出版の研究
-に従事.2010年情報処理記念賞受賞.電子情報通信学会,IEEE,IEEE-CS,ACM
-各会員}
-%
-\profile{s}{学会 次郎}{1950年生.1974年架空大学大学院修士課程了.
-1987年同博士課程了.工学博士.1977年架空大学助手.1992年情報処理大学助
-教授.1987年同大教授.2000年から情報処理学会顧問.オンライン出版の研究
-に従事.2010年情報処理記念賞受賞.情報処理学会理事.電子情報通信学会,
-IEEE,IEEE-CS,ACM 各会員}
-%
-\end{biography}
+\bibitem{ソフトウェア科学会}{谷成雄,大城信康,河野真治 }:
+VNCを用いた授業用画面共有システムの設計と実装 日本ソフトウェ ア科学会第 28 会大会, Sep 2011
 
 
 
+\end{thebibliography}
+%\end{adjustvboxheight}
+
+
 \end{document}