comparison Todo.txt @ 133:70cbec526039

connection handling
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 07 Jun 2014 12:54:44 +0900
parents 233e94a7b5ed
children e68dfd1972ac
comparison
equal deleted inserted replaced
132:84f167f9956a 133:70cbec526039
1 Fri May 23 19:32:24 JST 2014 1 Sat Jun 7 11:47:56 JST 2014
2 2
3 Multicast で root を探す (FIND_ROOT) 3 Multicast で root を探す (FIND_ROOT)
4 その時に、自分の proxy port/host を付けておく 4 その時に、自分の proxy port/host を付けておく
5 root は、それを client address/port として覚えておく (clients) 5 root は、それを client address/port として覚えておく (clients)
6 root は、そこに接続に来て、「自分のproxy port」を返す。(FIND_ROOT_REPLY) 6 root は、そこに接続に来て、「自分のproxy port」を返す。(FIND_ROOT_REPLY)
7 これを check box に登録する 7 これを check box に登録する
8 client は、それを選択して、root の proxy port に接続に行く (WHERE_TO_CONNECT) 8 client は、それを選択して、root の proxy port に接続に行く (WHERE_TO_CONNECT)
9 そこから、root は、どこに接続に行くかを教えてくれる (CONNECT_TO) 9 そこから、root は、どこに接続に行くかを教えてくれる (CONNECT_TO)
10 今度は、そこにclientとして接続する (VERSION_MESSAGE ) 10 今度は、そこにclientとして接続する (VERSION_MESSAGE )
11 11
12 FIND_ROOT (client multicast ) : int port; String hostname (client's address)
13
12 proxy port への接続では、client は自分から書かずに server からの version message を待つ 14 proxy port への接続では、client は自分から書かずに server からの version message を待つ
13 普通のVNCは cliet からは VERSION_MESSAGE が行くが、Tree VNC では、 15 普通のVNCは cliet からは VERSION_MESSAGE が行くが、Tree VNC では、
14 16
15 FIND_ROOT_REPLY (root to client proxy port) 17 FIND_ROOT_REPLY (root to client proxy port) : int port; String hostname (root's address)
16 WHERE_TO_CONNECT (clinet to root proxy port) 18 WHERE_TO_CONNECT (clinet to root proxy port) : int port; String hostname (client's address)
17 CONNECT_TO (root to client ) 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)
18 21
19 が来ることになる。 22 が来ることになる。
20 23
21 切断時は、子供のleaderが root のproxy port に聞きに行く 24 切断時は、子供のleaderが root のproxy port に聞きに行く
22 25
23 LOST_PARENT (root to client ) 26 LOST_PARENT (client to root) : int port; String hostname
24 27
25 root は、接続変更が必要な node の proxy に CONNECT_TO を送る (木経由では送れない。切断されているので) 28 root は、接続変更が必要な node の proxy に CONNECT_TO を送る (木経由では送れない。切断されているので)
26 29
27 最終的な切断時では、 LOST_PARENT が大量に出てしまうはず。なので、CONNECT_TO は連続しては送らない。 30 最終的な切断時では、 LOST_PARENT が大量に出てしまうはず。なので、CONNECT_TO は連続しては送らない。
31
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 だけでよい。
28 39
29 Fri May 23 19:32:24 JST 2014 40 Fri May 23 19:32:24 JST 2014
30 41
31 checkdelay を再実装する 42 checkdelay を再実装する
32 43