comparison 2016/2016_01_26/slide.md @ 10:bb0326d253f1

Update
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Wed, 27 Jan 2016 21:42:35 +0900
parents
children
comparison
equal deleted inserted replaced
9:4af284fa5071 10:bb0326d253f1
1 title: 有線 LAN 上のPC画面配信システムTreeVNCの改良
2 author: Tatsuki IHA
3 profile:
4 lang: Japanese
5 code-engine: coderay
6 # 研究目的
7 授業やゼミ等で、それぞれがPC端末を持っている場合では、PCの機能を活かしたコミュニケーションが可能である。教員が操作する画面をそのまま学生に配信したり, ゼミなどで、発表する学生の画面を切り替えたりすることを可能にしたい。
8 画面配信システムTreeVNCは参加したクライアントをバイナリツリー状に接続し、配信コストを分散させる仕組みを取っている。そのため,多人数が参加しても処理性能が下がらない。また、ツリーのルートが参照しているVNC サーバーを変更することで、ケーブルの差し替えなしに画面の切替が可能となる。
9 本研究ではTreeVNCの改良として、複数のネットワークへの対応、 WANへの対応、 マルチディスプレイへの対応を行うとともに、TreeVNC 有用性を示すために画像データの遅延時間計測を行う
10
11 # 近況
12 - multi display
13 - Root Node での Lost Child
14
15 # Multi Display
16 - share する側の画面の座標情報をRoot に送信
17 - Root は FrameBufferUpdateReqeust で座標情報を送って画面データを取得
18
19 # Multi Display
20 - 途中で止まる
21
22 # 止まる原因
23 - SenderTask で FrameBufferUpdateReqeust Message を send するはずだが、Message Queue にデータが入っていない
24 - ReceiverTask で Message Queue に FrameBufferUpdateReqeust を入れている
25
26 # 止まる原因
27 - Reader から readByte する際に止まっている(socketRead0)
28 - コード 読むとどこかでずれているわけでもなく
29 - 別の Thread からFrameBufferUpdateReqeust を送ると動く(viewer の更新ボタンを連打すると動く)
30
31 # 解決法
32 - 別ThreadでFrameBufferUpdateReqeust を一定時間毎に送信するようにする(先週)
33 - しかし, ServerChange ができない場合がある事が判明
34 - ReceiverTask を stop させるときに Reader が止まって, thread が止まるのに時間がかかる場合がある
35 - 止まる時間がまちまち
36
37 # 解決法
38 - Reader に timeout つけました
39 - この Reader は元はSocket の InputStream なので Socket に timeout を付けました
40
41 ``` java
42 socket.setSoTimeout(time)
43 ```
44
45 # Root Node の Lost Child
46
47 # 次
48 - そつろん
49 - Root Node のserver Change
50 - なせがいろいろな状況で Sound のport に繋がる
51 - sound のコード
52 - 書き込みと読み込みの並行
53 - -d で接続した時自分のが消えない場合がある
54 - Nat越えた ServerChange ができるといいな
55 - multi display のサイズ