<br><br><div class="gmail_quote">On Feb 19, 2008 12:55 PM, Benjamin M. Schwartz <<a href="mailto:bmschwar@fas.harvard.edu">bmschwar@fas.harvard.edu</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Tue, 2008-02-19 at 12:29 -0500, Giannis Galanis wrote:<br>> The avahi works is that every several minutes(a predetermined timeout)<br>> each host will send multicast request for all peers in its list.<br>
> Then all peers receiving this request will send a multicast reply.<br>><br>> The packets are multicast because the mesh is mobile/dynamic so we<br>> dont know where the target is, or which is the ideal route<br>
<br></div>The problem is that with a timeout of T minutes and N laptops, there is<br>a wakeup required every T/N minutes, on average? </blockquote><div><br>The wakeup required is T minutes for every T minutes.<br>Actually you would need to be awake for >T minutes<br>
and suspended for <T minutes to be sure u are ok.<br><br>So for T=10min, as in this case:<br>9off, 11on, 9 off, 11on<br> <br>but this is not very effective in terms of suspend/resume<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Based on your<br>description, it sounds as if this could be fixed by a small change in<br>Avahi's timeout behavior.<br><br>If I reach the timeout, I send a broadcast saying "Everyone, what's your<br>status?". In reply, all users send a broadcast "My status is X". All<br>
peers receive all of these broadcasts, and reset their timers to zero.<br>In this way, all laptops wake up together once every T minutes.<br><br>Surely the solution is not this simple...<br><br></blockquote></div>The problem is that the others wont know YOUR status. <br>
I think the confirmation of status is not "announced/beaconed", but "requested" first.<br><br>But someone from collabora must confirm this<br>