Mercurial > hg > Applications > TreeVNC
annotate Todo.txt @ 147:703db66138b5
WhereToConnect
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 13 Jun 2014 07:12:52 +0900 |
parents | 70cbec526039 |
children | e68dfd1972ac |
rev | line source |
---|---|
133 | 1 Sat Jun 7 11:47:56 JST 2014 |
123 | 2 |
3 Multicast で root を探す (FIND_ROOT) | |
4 その時に、自分の proxy port/host を付けておく | |
5 root は、それを client address/port として覚えておく (clients) | |
6 root は、そこに接続に来て、「自分のproxy port」を返す。(FIND_ROOT_REPLY) | |
7 これを check box に登録する | |
8 client は、それを選択して、root の proxy port に接続に行く (WHERE_TO_CONNECT) | |
9 そこから、root は、どこに接続に行くかを教えてくれる (CONNECT_TO) | |
10 今度は、そこにclientとして接続する (VERSION_MESSAGE ) | |
11 | |
133 | 12 FIND_ROOT (client multicast ) : int port; String hostname (client's address) |
13 | |
123 | 14 proxy port への接続では、client は自分から書かずに server からの version message を待つ |
15 普通のVNCは cliet からは VERSION_MESSAGE が行くが、Tree VNC では、 | |
16 | |
133 | 17 FIND_ROOT_REPLY (root to client proxy port) : int port; String hostname (root's address) |
18 WHERE_TO_CONNECT (clinet to root proxy port) : int port; String hostname (client's address) | |
19 CONNECT_TO (root to client ) : int port; String parentAddress (parent's address) | |
20 CONNECT_TO_AS_LEADER (root to client ) : int port; String parentAddress (parent's address) | |
123 | 21 |
22 が来ることになる。 | |
23 | |
24 切断時は、子供のleaderが root のproxy port に聞きに行く | |
25 | |
133 | 26 LOST_PARENT (client to root) : int port; String hostname |
123 | 27 |
28 root は、接続変更が必要な node の proxy に CONNECT_TO を送る (木経由では送れない。切断されているので) | |
29 | |
30 最終的な切断時では、 LOST_PARENT が大量に出てしまうはず。なので、CONNECT_TO は連続しては送らない。 | |
31 | |
133 | 32 reportLastNode は CONNECT_TO で良い。(10001 port) |
33 lostNodeConnection でも CONNECT_TO を使う | |
34 | |
35 LOST_PARENT と PARENT_NOT_FOUND の違いはなんだ? LOST_PARENT は leader が出すようだけど。 | |
36 | |
37 CONNECT_TO で parentNum とか treeNum を送る必要はない。root 内部で接続アドレスから判断する。 | |
38 なので、LOST_PARENT は hostname と port だけでよい。 | |
39 | |
109 | 40 Fri May 23 19:32:24 JST 2014 |
114 | 41 |
42 checkdelay を再実装する | |
43 | |
44 reconnect message が port 10001 を使っているが、これでは複数clientをホストで動かした時に動かない。 | |
45 どのportを使うかをrootに教える必要がある。 | |
109 | 46 |
123 | 47 9999も使われているようだ。 |
48 | |
49 普通にclientに接続に行けば、version handshake からスタートするはず。そこに、reconnection プロトコルを | |
50 挟める。MyRfbProto.readVersionMsg()。 | |
51 | |
52 Recconection は | |
53 root は AcceptClient | |
54 client は EchoClient | |
55 で行われている(らしい)。まず、この名前をまともなものにする。 | |
56 | |
57 reconnection は木の最後のノードを穴の空いたところに接続することで行われる。これは、逐次で行う必要がある。 | |
58 最後には、ほとんどは一斉に切断されるので、そこで破綻しないように注意する。 | |
59 | |
60 root が client のノードとportを持っているかどうかが重要だが。 | |
61 | |
109 | 62 |
100 | 63 Thu May 22 21:20:39 JST 2014 |
64 | |
65 1) zlibの同期が外れてる。 | |
105 | 66 VncProxyService.javaのinhelitClients の中で |
67 resetDecoderを呼び出せばいいが.... | |
68 2) DesktopSize ではなく、同じプロトコルで initData を送る方が良い。 | |
69 2) initData の中の名前を見て、自分だったら、shareしたclientのscreenをhideする。 | |
70 | |
100 | 71 |
96 | 72 Wed May 22 16:14:25 JST 2014 |
73 | |
100 | 74 1) 10001, 10002 における固定Portをなくす |
75 2) 木を上に登る通信 | |
76 3) ClientをCloseしないでresizeする | |
77 | |
78 Update rectangle で desktop size を変更可能 | |
101 | 79 このままで、pixel formatが変更されない |
80 なのでserverInit をもう一度送るのがよいのではないか | |
96 | 81 |
100 | 82 4) display modeでClient view(proxy + view)をあげる |
96 | 83 |
22 | 84 Wed Aug 29 23:32:36 JST 2012 |
85 | |
86 ReceiverTask の framebufferUpdateMessage を、TreeTask に再現しないとだめ。 | |
87 | |
20
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
88 Wed Aug 29 22:27:25 JST 2012 |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
89 |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
90 MyRfbProxy の os が初期化されていない (削除する方が良い) |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
91 |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
92 initData が null ( 設定された時に、設定するべき) |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
93 |
98519d16a8c3
getInitData from ProtocolContext
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
94 |