Mercurial > hg > Members > oc > TreeVNC_mm
comparison TreeVNC.mm @ 0:f2f19f45a77d
add mindmap
author | oc |
---|---|
date | Tue, 28 Oct 2014 05:35:00 +0900 |
parents | |
children | a4e68be124f3 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f2f19f45a77d |
---|---|
1 <map version="1.0.1"> | |
2 <!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net --> | |
3 <node CREATED="1414405979339" ID="ID_990549510" MODIFIED="1414406069069" TEXT="TreeVNC"> | |
4 <node CREATED="1414406069454" ID="ID_157968695" MODIFIED="1414406071971" POSITION="left" TEXT="中間発表"> | |
5 <node CREATED="1414407632851" ID="ID_1399607370" MODIFIED="1414407634698" TEXT="目次"> | |
6 <node CREATED="1414407635260" ID="ID_1966814436" MODIFIED="1414407638355" TEXT="はじめに"/> | |
7 <node CREATED="1414407638604" ID="ID_1013097067" MODIFIED="1414407642066" TEXT="VNCとは"/> | |
8 <node CREATED="1414407642648" ID="ID_1036506863" MODIFIED="1414407653922" TEXT="TreeVNCの実装内容"/> | |
9 <node CREATED="1414407654436" ID="ID_946986347" MODIFIED="1414407660114" TEXT="デバッグ関係"> | |
10 <node CREATED="1414407752980" ID="ID_952143069" MODIFIED="1414407800016" TEXT="portの構造を変更した"> | |
11 <node CREATED="1414424039241" ID="ID_595848106" MODIFIED="1414424043408" TEXT="今まで"> | |
12 <node CREATED="1414424046137" ID="ID_1725191554" MODIFIED="1414424059666" TEXT="子nodeからrootに直接msgを投げていた"/> | |
13 <node CREATED="1414424206464" ID="ID_1692213701" MODIFIED="1414424225634" TEXT="msg別にport番号を開け、それで識別していた"/> | |
14 <node CREATED="1414424293039" ID="ID_695301377" MODIFIED="1414424322938" TEXT="port番号が固定だったため、1台のPCでTreeVNCは複数動かせなかった"/> | |
15 </node> | |
16 <node CREATED="1414424061226" ID="ID_276147644" MODIFIED="1414424064627" TEXT="改善後"> | |
17 <node CREATED="1414424109892" ID="ID_1282288981" MODIFIED="1414424124459" TEXT="nodeがそれぞれport番号を持つようになった"> | |
18 <node CREATED="1414407943692" ID="ID_1642949300" MODIFIED="1414424189138" TEXT="受信はrootの5950"/> | |
19 </node> | |
20 <node CREATED="1414424341639" ID="ID_1684656553" MODIFIED="1414424390626" TEXT="port番号を開ける際、固定ではなく動的に開いているport番号を探す"/> | |
21 <node CREATED="1414424065096" ID="ID_1690977745" MODIFIED="1414424083923" TEXT="子nodeからのmsgは木を伝って投げる"> | |
22 <node CREATED="1414407811697" ID="ID_1255665047" MODIFIED="1414407936010" TEXT="msgの識別をportでしなくなった"/> | |
23 </node> | |
24 <node CREATED="1414407690732" ID="ID_1339687890" MODIFIED="1414424285474" TEXT="デバッグしやすくなった"> | |
25 <node CREATED="1414407706852" ID="ID_1764452535" MODIFIED="1414407716555" TEXT="1つのPCで複数のTreeVNCが動く"/> | |
26 <node CREATED="1414407717444" ID="ID_886648008" MODIFIED="1414407732674" TEXT="checkDelayの再実装"/> | |
27 </node> | |
28 </node> | |
29 </node> | |
30 <node CREATED="1414407738346" ID="ID_1268915060" MODIFIED="1414407745947" TEXT="有線と無線で繋げられるようになった"> | |
31 <node CREATED="1414424406452" ID="ID_115158272" MODIFIED="1414424408978" TEXT="今まで"> | |
32 <node CREATED="1414424413136" ID="ID_955851456" MODIFIED="1414424426587" TEXT="hostnameで識別し、broadcast通信を行っていた"> | |
33 <node CREATED="1414424459121" ID="ID_451407407" MODIFIED="1414424488074" TEXT="hostname別だと1台につき1つ"/> | |
34 </node> | |
35 <node CREATED="1414440824904" ID="ID_797627727" MODIFIED="1414440869794" TEXT="nodeListはひとつであり、その中身はhostname別であった"/> | |
36 </node> | |
37 <node CREATED="1414424409546" ID="ID_1575688246" MODIFIED="1414424411824" TEXT="改善後"> | |
38 <node CREATED="1414424427639" ID="ID_1808841505" MODIFIED="1414424448562" TEXT="netInterfaceを使い、broadcast通信を行う"> | |
39 <node CREATED="1414424489234" ID="ID_141169075" MODIFIED="1414424513211" TEXT="netInterface別だと、1台につき有線・無線分できる"/> | |
40 </node> | |
41 <node CREATED="1414440836836" ID="ID_1184371154" MODIFIED="1414440848506" TEXT="nodeListがinterface別に作られる"> | |
42 <node CREATED="1414440895210" ID="ID_101061904" MODIFIED="1414440913642" TEXT="nodeListの数は、rootのnetworkInterfaceの数分"/> | |
43 </node> | |
44 <node CREATED="1414440978567" ID="ID_1242748032" MODIFIED="1414440997393" TEXT="nodeListの中身はTreeVNCNode"/> | |
45 <node CREATED="1414440915120" ID="ID_23305121" MODIFIED="1414441009121" TEXT="TreeVNCNodeの中身は、hostnameとportとlocalhostnameになった"/> | |
46 </node> | |
47 <node CREATED="1414440780172" ID="ID_347543596" MODIFIED="1414440783427" TEXT="処理の流れ"> | |
48 <node CREATED="1414440138496" ID="ID_1370883920" MODIFIED="1414440165730" TEXT="nodeがrootに繋ぎたい場合、Broadcastを利用して、FindRootを送信している"/> | |
49 <node CREATED="1414440169332" ID="ID_103289642" MODIFIED="1414440186130" TEXT="rootはそのFindRootに答えて、FindRootReplyを送信する"/> | |
50 <node CREATED="1414440200951" ID="ID_1388601897" MODIFIED="1414440227571" TEXT="以前と違うところは、新しくnodeListに加わる際に、networkInterfaceを確認する"/> | |
51 </node> | |
52 <node CREATED="1414439447448" ID="ID_1565893330" MODIFIED="1414439481369" TEXT="Hashmap interfaces<String, TreeManagement >"> | |
53 <node CREATED="1414439523857" ID="ID_1311108766" MODIFIED="1414439525835" TEXT="構造"> | |
54 <node CREATED="1414439485273" ID="ID_1984979608" MODIFIED="1414439500865" TEXT="String : en0 or en1"/> | |
55 <node CREATED="1414439501415" ID="ID_417290844" MODIFIED="1414439516219" TEXT="TreeManagement : nodeListが入ってる奴"/> | |
56 </node> | |
57 <node CREATED="1414439537089" ID="ID_1739621185" MODIFIED="1414439538658" TEXT="中身"> | |
58 <node CREATED="1414439539106" ID="ID_535407154" MODIFIED="1414439543177" TEXT="[0]"> | |
59 <node CREATED="1414439545953" ID="ID_1292359163" MODIFIED="1414439550928" TEXT="key : en0"/> | |
60 <node CREATED="1414439551273" ID="ID_1784494347" MODIFIED="1414439572423" TEXT="value : 有線用のnodeListが入ったTreeManagement"/> | |
61 </node> | |
62 <node CREATED="1414439578992" ID="ID_708510720" MODIFIED="1414439583297" TEXT="[1]"> | |
63 <node CREATED="1414439583624" ID="ID_90336080" MODIFIED="1414439587049" TEXT="key : en1"/> | |
64 <node CREATED="1414439587543" ID="ID_959556253" MODIFIED="1414439602753" TEXT="value : 無線用のnodeListが入ったTreeManagement"/> | |
65 </node> | |
66 </node> | |
67 </node> | |
68 <node CREATED="1414439674737" ID="ID_402310911" MODIFIED="1414439722427" TEXT="TreeVNCNetworkでaddNetworkInterface()よりinterfacesが作られる"/> | |
69 <node CREATED="1414439758316" ID="ID_1682448235" MODIFIED="1414439794811" TEXT="getTreeManager時に、どのinterfaceかで、これから扱うnodeListが変わってくる"/> | |
70 </node> | |
71 <node CREATED="1414407854332" ID="ID_220686701" MODIFIED="1414407912178" TEXT="ビデオフィードバック"> | |
72 <node CREATED="1414424518027" ID="ID_1001622607" MODIFIED="1414424522571" TEXT="今まで"> | |
73 <node CREATED="1414424523080" ID="ID_1310341365" MODIFIED="1414424537435" TEXT="shareしたnodeのviewerは開けっ放し"/> | |
74 <node CREATED="1414424537900" ID="ID_1033691217" MODIFIED="1414424554203" TEXT="自分の画面をviewerに映し続けるのでビデオフィードバックが生じた"/> | |
75 </node> | |
76 <node CREATED="1414424555611" ID="ID_1024637284" MODIFIED="1414424557306" TEXT="改善後"> | |
77 <node CREATED="1414424557658" ID="ID_1523636926" MODIFIED="1414424569059" TEXT="shareしたnodeのviewerは閉じるようにした"/> | |
78 <node CREATED="1414424570913" ID="ID_333997204" MODIFIED="1414424585146" TEXT="他nodeがshareすると、閉じたviewreが立ち上がる"/> | |
79 </node> | |
80 </node> | |
81 <node CREATED="1414407802395" ID="ID_1532959193" MODIFIED="1414424664834" TEXT="子nodeの再接続時に落ちるバグを取った"> | |
82 <node CREATED="1414424588177" ID="ID_464723644" MODIFIED="1414424591250" TEXT="今まで"> | |
83 <node CREATED="1414424634400" ID="ID_643197230" MODIFIED="1414424793547" TEXT="画面更新データを受信する、ReceiverTask Threadなどが動きっぱなしだった"/> | |
84 <node CREATED="1414424719943" ID="ID_1840262170" MODIFIED="1414424737746" TEXT="そのせいで、再接続後データがずれてしまって落ちてしまっていた"/> | |
85 </node> | |
86 <node CREATED="1414424701627" ID="ID_737580369" MODIFIED="1414424704794" TEXT="改善後"> | |
87 <node CREATED="1414424740449" ID="ID_255919364" MODIFIED="1414424765043" TEXT="ReceiverTaskを止めてから、再接続の処理を行うようにした"/> | |
88 </node> | |
89 </node> | |
90 <node CREATED="1414407913342" ID="ID_543146113" MODIFIED="1414407986731" TEXT="lostparentをまとめた"> | |
91 <node CREATED="1414424804563" ID="ID_1506776432" MODIFIED="1414424827610" TEXT="lostparentとnotFoundeがあった"/> | |
92 <node CREATED="1414424830348" ID="ID_343315339" MODIFIED="1414424832743" TEXT="これをまとめた"/> | |
93 <node CREATED="1414424834960" ID="ID_1848187234" MODIFIED="1414424843714" TEXT="notFoundeがなんだったのかわからない"/> | |
94 </node> | |
95 <node CREATED="1414407988367" ID="ID_1212536526" MODIFIED="1414408021567" TEXT="serverChange時のバグ"> | |
96 <node CREATED="1414408003195" ID="ID_1635491798" MODIFIED="1414408008554" TEXT="initDataを送り直す様に"/> | |
97 </node> | |
98 </node> | |
99 <node CREATED="1414407660716" ID="ID_357352007" MODIFIED="1414407668499" TEXT="新しい機能実装案"> | |
100 <node CREATED="1414408026684" ID="ID_774572333" MODIFIED="1414408031469" TEXT="音声機能"> | |
101 <node CREATED="1414424856155" ID="ID_726940129" MODIFIED="1414424865479" TEXT="画面データと一緒に音声データを送信するように"/> | |
102 <node CREATED="1414424866096" ID="ID_1213441990" MODIFIED="1414424884643" TEXT="画面データに比べたら、音声データは軽い(らしい)"/> | |
103 </node> | |
104 <node CREATED="1414408032056" ID="ID_464149904" MODIFIED="1414408036720" TEXT="画面の大きさ指定"> | |
105 <node CREATED="1414408036972" ID="ID_170886903" MODIFIED="1414408042083" TEXT="multidisplayに対応"/> | |
106 <node CREATED="1414424891113" ID="ID_1864736545" MODIFIED="1414424897803" TEXT="実装案"> | |
107 <node CREATED="1414424898460" ID="ID_308604538" MODIFIED="1414424930242" TEXT="shareした際、viewerを消すのではなく、枠を残す"/> | |
108 <node CREATED="1414424930961" ID="ID_981077148" MODIFIED="1414424961002" TEXT="枠の大きさ(x, y, width, height)を取り、その分の画面データのみを送信する"/> | |
109 <node CREATED="1414424998596" ID="ID_960712914" MODIFIED="1414425011977" TEXT="RequestUpdateRectangleで枠の大きさを送信する"/> | |
110 </node> | |
111 <node CREATED="1414425019360" ID="ID_1710551281" MODIFIED="1414425026938" TEXT="余計なデータを送信することがなくなる"/> | |
112 </node> | |
113 <node CREATED="1414408045388" ID="ID_1969318526" MODIFIED="1414408050730" TEXT="Aliceでの実装"/> | |
114 </node> | |
115 <node CREATED="1414423884963" ID="ID_1374230646" MODIFIED="1414423889274" TEXT="今後の課題"> | |
116 <node CREATED="1414423889746" ID="ID_1978924080" MODIFIED="1414423910187" TEXT="大きいデータを送信すると詰まってしまう問題"> | |
117 <node CREATED="1414425034171" ID="ID_1993110022" MODIFIED="1414425058611" TEXT="全画面書き換えが立て続けに起こる時"/> | |
118 <node CREATED="1414425063610" ID="ID_1400982647" MODIFIED="1414425072778" TEXT="例) Exposeした際"/> | |
119 <node CREATED="1414425079493" ID="ID_1698329689" MODIFIED="1414425087276" TEXT="解決案"> | |
120 <node CREATED="1414425119740" ID="ID_192643879" MODIFIED="1414425138355" TEXT="全画面書き換えの間隔が狭い時"> | |
121 <node CREATED="1414425138728" ID="ID_1436425620" MODIFIED="1414425154571" TEXT="いくつかの更新はskipする"/> | |
122 <node CREATED="1414425155547" ID="ID_952580028" MODIFIED="1414425168194" TEXT="その中で最新のデータのみを取る"/> | |
123 </node> | |
124 <node CREATED="1414425087278" ID="ID_1775306157" MODIFIED="1414425099275" TEXT="全画面書き換えの間隔が狭い場合を検知する"> | |
125 <node CREATED="1414425100473" ID="ID_423947438" MODIFIED="1414425109523" TEXT="時間計測で検知"/> | |
126 <node CREATED="1414425109808" ID="ID_146250266" MODIFIED="1414425117667" TEXT="timerを走らせてflagで検知"/> | |
127 </node> | |
128 </node> | |
129 <node CREATED="1414425173163" ID="ID_1960833544" MODIFIED="1414425187546" TEXT="たまったwriteのqueueをどう処理するかが問題になるかもしれない"/> | |
130 </node> | |
131 <node CREATED="1414425195458" ID="ID_1820570102" MODIFIED="1414425213362" TEXT="errorメッセージがroot側に出力されてしまう"> | |
132 <node CREATED="1414425213681" ID="ID_67574660" MODIFIED="1414425233355" TEXT="ServerChangeRequestReplyを参考にする"/> | |
133 <node CREATED="1414425282825" ID="ID_1277197987" MODIFIED="1414425303394" TEXT="framebufferUpdateのEncodingTypeとして送るのが良さそう"/> | |
134 <node CREATED="1414425234609" ID="ID_1640217093" MODIFIED="1414425253515" TEXT="treeが下のnodeにデータを流す"> | |
135 <node CREATED="1414425254377" ID="ID_1664690017" MODIFIED="1414425261770" TEXT="そのデータに、IDを追加する"> | |
136 <node CREATED="1414425262008" ID="ID_1401928911" MODIFIED="1414425275674" TEXT="IDが一致したnodeにerrorメッセージを表示する"/> | |
137 </node> | |
138 </node> | |
139 </node> | |
140 </node> | |
141 <node CREATED="1414407673556" ID="ID_1754050462" MODIFIED="1414407675339" TEXT="参考文献"/> | |
142 </node> | |
143 </node> | |
144 <node CREATED="1414406845275" ID="ID_427820294" MODIFIED="1414406850803" POSITION="right" TEXT="やってきたこと"> | |
145 <node CREATED="1414406851121" ID="ID_835353582" MODIFIED="1414406862827" TEXT="1つのPCで複数のTreeVNCが動く"> | |
146 <node CREATED="1414406863096" ID="ID_1598978318" MODIFIED="1414406870971" TEXT="nodeがportを別で持つ"/> | |
147 <node CREATED="1414406871476" ID="ID_868158640" MODIFIED="1414406882290" TEXT="固定portがなくなった(10001, 10002)"/> | |
148 </node> | |
149 <node CREATED="1414406923236" ID="ID_1393671788" MODIFIED="1414406939195" TEXT="有線と無線で繋げられるようになった。"> | |
150 <node CREATED="1414406895174" ID="ID_1189802793" MODIFIED="1414406922682" TEXT="hostnameではなく、net interfaceでbroadcastするように"/> | |
151 </node> | |
152 <node CREATED="1414406965582" ID="ID_1762320013" MODIFIED="1414406976915" TEXT="直接rootにmsgを投げないようになった"> | |
153 <node CREATED="1414406977388" ID="ID_1647197135" MODIFIED="1414406984915" TEXT="木を登る様にmsgを送る"/> | |
154 <node CREATED="1414406988275" ID="ID_272706576" MODIFIED="1414406990419" TEXT="メリット"> | |
155 <node CREATED="1414406990804" ID="ID_1420248924" MODIFIED="1414407006217" TEXT="余計なport(connection?)を開けなくて済む"/> | |
156 <node CREATED="1414407007074" ID="ID_979768532" MODIFIED="1414407020625" TEXT="既にnodeとしてつながってるからそこを使う"/> | |
157 </node> | |
158 </node> | |
159 <node CREATED="1414407023244" ID="ID_611202201" MODIFIED="1414407043178" TEXT="lostParetnとnotFoundがあったがそれをまとめて一つにした"> | |
160 <node CREATED="1414407043524" ID="ID_1361253331" MODIFIED="1414407052763" TEXT="notFoundがなんだったのかは未だ不明"/> | |
161 </node> | |
162 <node CREATED="1414407056564" ID="ID_822494944" MODIFIED="1414407063291" TEXT="server切り替えの部分"> | |
163 <node CREATED="1414407063764" ID="ID_1052117596" MODIFIED="1414407070195" TEXT="initDataを送り直す様にした"/> | |
164 </node> | |
165 <node CREATED="1414407090962" ID="ID_1562621281" MODIFIED="1414407097266" TEXT="multiDisplay対応にしたい"> | |
166 <node CREATED="1414407075713" ID="ID_932225363" MODIFIED="1414407106090" TEXT="画面の長さを固定長に"/> | |
167 <node CREATED="1414407120531" ID="ID_279710333" MODIFIED="1414407130994" TEXT="片方の画面のみを表示する"/> | |
168 <node CREATED="1414407187008" ID="ID_1798292079" MODIFIED="1414407190163" TEXT="実装アイデア"> | |
169 <node CREATED="1414407147216" ID="ID_77004292" MODIFIED="1414407154051" TEXT="枠だけ残す"/> | |
170 <node CREATED="1414407154292" ID="ID_208539613" MODIFIED="1414407168730" TEXT="枠内の画面を表示するように"/> | |
171 <node CREATED="1414407238643" ID="ID_1958420139" MODIFIED="1414407251218" TEXT="RequestUpdateRectangleで枠の大きさを送る"/> | |
172 </node> | |
173 <node CREATED="1414407258530" ID="ID_538556926" MODIFIED="1414407266978" TEXT="余計なデータを送らないで済む"/> | |
174 </node> | |
175 <node CREATED="1414407206333" ID="ID_475512586" MODIFIED="1414407211255" TEXT="ビデオフィードバックをなくした"> | |
176 <node CREATED="1414407211497" ID="ID_1817551403" MODIFIED="1414407232719" TEXT="ServerChangeRequest送信したnodeはviewerを落とす様に"/> | |
177 </node> | |
178 <node CREATED="1414407270921" ID="ID_1917156459" MODIFIED="1414407279426" TEXT="HDサイズで送信画面サイズを固定"/> | |
179 <node CREATED="1414407282465" ID="ID_1588844090" MODIFIED="1414407302427" TEXT="msgをport別でなくした"> | |
180 <node CREATED="1414407302644" ID="ID_702527535" MODIFIED="1414407320762" TEXT="その場で通信msgの種類をしい別するようにしてる"/> | |
181 <node CREATED="1414407323404" ID="ID_897523658" MODIFIED="1414407334474" TEXT="msgはすべてroot(5950)で受ける"/> | |
182 </node> | |
183 <node CREATED="1414407342579" ID="ID_988785752" MODIFIED="1414407372579" TEXT="子nodeが死んだ時、connectionのタイミングで落ちるバグを取った"> | |
184 <node CREATED="1414407372948" ID="ID_1543095353" MODIFIED="1414407398179" TEXT="connectToのタイミングで前のReceiverThreadが生きていた"/> | |
185 <node CREATED="1414407400108" ID="ID_421041051" MODIFIED="1414407410003" TEXT="データにズレが起こって落ちてた"/> | |
186 </node> | |
187 <node CREATED="1414407416196" ID="ID_953931630" MODIFIED="1414407419283" TEXT="新しい機能として"> | |
188 <node CREATED="1414407419671" ID="ID_1574252451" MODIFIED="1414407424386" TEXT="音声共有"/> | |
189 <node CREATED="1414407424900" ID="ID_935934621" MODIFIED="1414407431939" TEXT="画面の大きさ指定"/> | |
190 <node CREATED="1414407432817" ID="ID_31058877" MODIFIED="1414407437434" TEXT="Aliceで実装し直す"/> | |
191 </node> | |
192 <node CREATED="1414407438967" ID="ID_1811733613" MODIFIED="1414407447475" TEXT="大きいデータを送ると詰まってしまう問題"> | |
193 <node CREATED="1414407447477" ID="ID_784724607" MODIFIED="1414407453138" TEXT="Exposeのとき"/> | |
194 <node CREATED="1414407453571" ID="ID_1030048081" MODIFIED="1414407459539" TEXT="全画面書き換えの時"/> | |
195 <node CREATED="1414407460588" ID="ID_1000563164" MODIFIED="1414407476610" TEXT="全画面書き換えの間隔が短い場合"> | |
196 <node CREATED="1414407476857" ID="ID_1032694631" MODIFIED="1414407496945" TEXT="skipして"/> | |
197 <node CREATED="1414407486621" ID="ID_23793163" MODIFIED="1414407491098" TEXT="最新だけとる"/> | |
198 </node> | |
199 <node CREATED="1414407499024" ID="ID_14198946" MODIFIED="1414407505482" TEXT="時間計測で検知"/> | |
200 <node CREATED="1414407506132" ID="ID_1285505979" MODIFIED="1414407514306" TEXT="timerを走らせてflagを入れて、検知"/> | |
201 <node CREATED="1414407525113" ID="ID_520205242" MODIFIED="1414407535331" TEXT="たまったwriteのqueueをどうするかが問題"/> | |
202 </node> | |
203 <node CREATED="1414407520358" ID="ID_828693076" MODIFIED="1414407552947" TEXT="errorメッセージをrootではなくclientで表示するように"> | |
204 <node CREATED="1414407555113" ID="ID_1959375779" MODIFIED="1414407556419" TEXT="参考"> | |
205 <node CREATED="1414407556868" ID="ID_1410490694" MODIFIED="1414407568147" TEXT="SeverChangeRequestReplyを参考に"/> | |
206 <node CREATED="1414407570967" ID="ID_1268525530" MODIFIED="1414407592856" TEXT="treeで上から流す時、同じIDだったらそれを表示するように"/> | |
207 <node CREATED="1414407593883" ID="ID_1704596878" MODIFIED="1414407623210" TEXT="framebufferUpdateのEncodingTypeでのように送る"/> | |
208 </node> | |
209 </node> | |
210 </node> | |
211 </node> | |
212 </map> |