Cerebro v3.0: File sharing and buddy management made easy!

2009-01-09 Thread Polychronis Ypodimatopoulos
Want to exchange files between your desktop and your XO laptop? It can't 
get any easier!

In the latest version of Cerebro (currently 3.0.3) you will find 
simplified file sharing and buddy management. Just click on the buddy 
you want to send a file to and select a file to send! Screenshots are here:
http://cerebro.mit.edu/index.php/Documentation#Example_GUI

If you are a developer, there is detailed tutorial to do file sharing 
from Python prompt (!) here:
http://cerebro.mit.edu/index.php/Documentation#Buddy_management

Enjoy
Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Cerebro v3.0: File sharing and buddy management made easy!

2009-01-08 Thread Polychronis Ypodimatopoulos
Want to exchange files between your desktop and your XO laptop? It can't get
any easier!

In the latest version of Cerebro (currently 3.0.3) you will find simplified
file sharing and buddy management. Just click on the buddy you want to send
a file to and select a file to send! Screenshots are here:
http://cerebro.mit.edu/index.php/Documentation#Example_GUI

If you are a developer, there is detailed tutorial to do file sharing from
Python prompt (!) here:
http://cerebro.mit.edu/index.php/Documentation#Buddy_management

Enjoy
Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/ http://www.mit.edu/%7Eypod/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


VGA-output on your XO?

2008-12-10 Thread Polychronis Ypodimatopoulos
http://arstechnica.com/journals/hardware.ars/2008/12/09/acer-releases-b223-displaylink-lcd-in-europe

p.

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: wiki.laptop.org upgrade

2008-12-04 Thread Polychronis Ypodimatopoulos
Without meaning to undervalue the significance of this thread, it does 
not seem to pertain anymore to the subject of the devel list whose 
description is Software development mailing list 
(http://lists.laptop.org/listinfo/) :-) I refer to devel's description 
for the sake of completeness, not sarcasm.

p.
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


cerebro's memory usage

2008-09-22 Thread Polychronis Ypodimatopoulos
I tried cerebro on two XOs running 760 while holding a chat session 
using Xavier for 24 hours and cerebro's memory usage is steady at 3.3Mb, 
so I could safely say that there no memory leaks there.

Next I will investigate a way so that cerebro coordinates with extreme 
power management and does not wake up the system in that case.

In the mean time, 760 is not using the latest version of cerebro. Is 
there going to be a newer stable?

p.

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] G1G1v2 Activities

2008-09-18 Thread Polychronis Ypodimatopoulos
then I'd also suggest the Xavier activity, which does:

- bidding game
- chat
- file sharing

Xavier uses cerebro directly.

Tree: http://dev.laptop.org/git?p=users/ypod/Xavier-activity;a=summary
Snapshots:
http://lyme.media.mit.edu/cerebro/index.php/Image:Who.png
http://lyme.media.mit.edu/cerebro/index.php/Image:What.png
http://lyme.media.mit.edu/cerebro/index.php/Image:Bidding2.png (in Gnome)


Pol

Benjamin M. Schwartz wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Chris Ball wrote:
 | Hi,
 |
 | Please pick up to 10 and put them in order of priority.
 |
 | We will tally the votes and use that as input to the decision.
 |
 | So, we shipped 19 activities with G1G1v1; that means the ten activities
 | people vote for here are likely to be a subset of that list, and we
 | aren't learning much about what new things we should include.  People
 | replying might decide to give 20 suggestions instead of 10, or to omit
 | original G1G1 activities from their list.
 |

 Also, G1G1v1 shipped with the old Sugar interface, which made managing
 large numbers of installed Activities very difficult.  By contrast, the
 new Sugar UI means that we could easily ship 100 Activities, with only 15
 starred by default.  Activities' average size on disk varies
 substantially, but many simpler ones are only about 100 KB, compressed.
 100 Activities * 100 KB = 10 MB, or 1% of the disk.  Each additional
 Activity provides more opportunity for exploration, and makes the
 experience more enjoyable, so I would advocate for shipping as many as
 possible.

 - --Ben
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v2.0.9 (GNU/Linux)
 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

 iEYEARECAAYFAkjSgM8ACgkQUJT6e6HFtqQ4hACfcRnjtYpakrKRa92hrsI/aIkJ
 m0QAmwQLe6qLvzYJBNnndfI1Wz6B8tUn
 =qdS2
 -END PGP SIGNATURE-
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


cerebro documentation

2008-09-07 Thread Polychronis Ypodimatopoulos
Hello world,

The following document provides documentation on Cerebro's design, 
scalability properties, implementation and potential applications:

http://cerebro.mit.edu/cerebro-final.pdf

For the impatient, Chapter 3 provides a detailed technical and 
theoretical analysis of Cerebro's system architecture and design goals.

Chapter 4 provides a description of Cerebro's implementation and its 
various modules.

Chapter 5 provides an account of potential applications. This includes 
documentation on how the Xavier activity can be used for file-sharing, 
presence information, chat, etc.

Chapter 6 evaluates Cerebro's performance by providing experimental 
results on a testbed with tens of nodes.

With scalable regards,
Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


analyzing memory usage of python code

2008-08-24 Thread Polychronis Ypodimatopoulos
Polychronis Ypodimatopoulos wrote:
 I filed #8128 to address the memory usage that seems excessive.

 I have also disabled cerebro from start-up while this is being 
 investigated and the issue with blocking shutdown process (#8108). 
 Should be picked up at the next version of joyride.
   

Any suggestions on how to isolate the parts of some python code that 
take the most memory? It's rather impossible to start commenting out 
modules because of dependency issues.

thx
p.
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Cerebro (was Re: Almost 50% less free memory in joyride-2302 compared with Update.1 (708))

2008-08-24 Thread Polychronis Ypodimatopoulos
I did the following as a basic test for memory usage of various python 
modules. I did the test on my computer, a 32-bit Centrino laptop running 
ubuntu.

Let's start with the following code:
   
import gobject
mainloop = gobject.MainLoop()
mainloop.run()

Cost: 1.2MB of memory (1.2MB total)


Add a dummy class, like the following:
   
import dbus
import dbus.service
class Dummy(dbus.service.Object):
   pass

Additional cost: 0.9MB of memory (2.1MB total)


Importing some more modules, like the following:

import time, sys, os, traceback
from select import select  
from socket import *
from random import random
from struct import pack, unpack
from optparse import OptionParser
from os.path import basename

Additional cost: 1.0MB of memory (3.1MB total)


Running the same thing as above as root:
Additional cost: 2.8MB of memory (5.9MB total)  (WHY?!?!?)


Nothing specific to cerebro up to this point.


Running Cerebro fully-blown as root:
Additional cost: 1.3MB of memory (7.2MB total)


It doesn't seem to me that there's much I can do, except for writing 
some parts of Cerebro in C.

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Cerebro (was Re: Almost 50% less free memory in joyride-2302 compared with Update.1 (708))

2008-08-23 Thread Polychronis Ypodimatopoulos
Marco Pesenti Gritti wrote:
 6.5 Mib according to ps_mem

 You are right, it's enabled in joyride... it's failing for me because
 it can't find msh0 (not sure why).

 Marco
   

I filed #8128 to address the memory usage that seems excessive.

I have also disabled cerebro from start-up while this is being 
investigated and the issue with blocking shutdown process (#8108). 
Should be picked up at the next version of joyride.

p.


___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


where is msh0 ?

2008-08-23 Thread Polychronis Ypodimatopoulos
Joyride: 2331
firmware: Q2E14
machine: B4

I don't see mshX in my interfaces. Is this a known issue? Didn't find 
anything similar in the archives, sorry if I 'm repeating it.

Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


joyride version announcements

2008-08-19 Thread Polychronis Ypodimatopoulos
Why are new versions of Joyride not announced?

Pol
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Collaboration Requirements

2008-07-30 Thread Polychronis Ypodimatopoulos
Dear Greg and Michael,

It seems to me that we spend more time discussing things, instead of 
implementing them. The issue of scalability in large ad-hoc networks has 
been around for more than a decade and some pretty descent research 
results have been out there for several years now. Even if you pick one 
randomly you are guaranteed to scale by a whole order of magnitude 
better than OLPC's current implementation. Just pick one and implement 
it. I'm afraid that it is no exaggeration if I say that, from a network 
engineering standpoing, the current collaboration mechanism is literally 
the worse one possible, scaling quadratically with the number of nodes 
no matter if an access point is used or not. I do not mean to sound 
condescending, but rather note that it is very easy to improve on our 
current situation.

I would rather see us spending our time iterating through implementation 
of a viable solution, large-scale testing (anyone testing collaboration 
with _scale_ in mind using 2-3 XOs should just be fired) and thinking 
about how to build and use feedback mechanisms (that do not involve 
humans) from actual deployments in schools in the US (where an internet 
connection is dependable) wrt our collaboration technology.


Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Remarks on the Work of Sugar

2008-07-22 Thread Polychronis Ypodimatopoulos
-level memory protection.

Evidence: Sugar packs great functionality into a small number of
processes and occupies only one uid.

Evidence: Sugar's process-level boundaries (e.g. shell, DS, PS,
telepathy CMs, rainbow, activities) seem to me to be strongly
correlated with the existence of cliques of the developers who built
them. 

 7) Sugar prefers IPC techniques with inferior human interfaces (DBus, X)
 to IPC techniques with superior human interfaces (HTTP, 9P, environment
 variables, well-known files, process arguments + status codes + man
 pages).

 Regards,

 Michael

 P.S. - Let me know if you'd like to see more such remarks in the future
 (perhaps on other subsystems?) or if you'd like to see more detailed
 exploration of any of the items noted above.
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


permission to add activity to joyride

2008-07-08 Thread Polychronis Ypodimatopoulos
Hi,

I 'm asking for permission to add an activity to Joyride to be used 
primarily for debugging cerebro. This activity provides these features:

- presence (list of users with picture (avatar) and distances)
- profiles as shared by each user
- file transfer
- chat
- a bidding game (sell that pencil!)

Screenshots from a GTK-based (to be sugarized) version are here:

http://lyme.media.mit.edu/cerebro/index.php/Screenshots#GTK-based_UI

thanks,
Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


koji vs. dropbox

2008-07-07 Thread Polychronis Ypodimatopoulos
This is probably meant for the release team.
Is the dropbox mechanism for updating rpms in joyride still working?

According to http://wiki.laptop.org/go/Build_system the dropbox should 
work but newer RPMs of cerebro don't get pulled into joyride. Rumors 
have it that this mechanism no longer works and koji must be used 
instead. Are there newer instructions on the wiki anywhere?

Pol


___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: koji vs. dropbox

2008-07-07 Thread Polychronis Ypodimatopoulos
Hi Dennis,

Dennis Gilmore wrote:
 On Monday 07 July 2008, Polychronis Ypodimatopoulos wrote:
   
 This is probably meant for the release team.
 Is the dropbox mechanism for updating rpms in joyride still working?

 According to http://wiki.laptop.org/go/Build_system the dropbox should
 work but newer RPMs of cerebro don't get pulled into joyride. Rumors
 have it that this mechanism no longer works and koji must be used
 instead. Are there newer instructions on the wiki anywhere?

 Pol
 
 It still works but is strongly discouraged.  I would like to see it dropped 
 entirely for the next release.  if there not getting picked up it likely 
 means 
 you have not increased the EVR of your package  and its not considered the 
 latest.  or its in and you just did not realised it because its the same EVR  
 it was not tracked.
   
Thanks for your reply. I am not familiar with the reasons behind this 
transition, it sounds that you feel strongly against dropbox and I 
believe that, at a minimum, there should be documentation on the wiki on 
how to do packaging using koji to make contributors' life a little 
easier ;-)

p.



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Setting up the mesh device

2008-06-24 Thread Polychronis Ypodimatopoulos
Sjoerd Simons wrote:
 I'm setting the ESSID on the msh0 interface indeed. But i never get an
 association event on it.. While i even get an association event on eth0 when
 it's not up (but with msh0 being up obviously) :) Seems i've got some more 
 bugs
 to file
   

Why would you set an ESSID on the mshX interface in the first place? I 
understand that, from a solid layering perspective, you should be able 
to set essids on mshX since it's treated as a wireless interface, but it 
would logically separate network users. It's hard enough as it is to 
discover nodes in different channels (although different channels do 
have a radio scaling advantage).

p.




-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


wiki spam!

2008-06-20 Thread Polychronis Ypodimatopoulos
It's becoming very annoying having to deal with spam (bots?) operating 
on the wiki, trying to blank wiki pages, like in the case of the following:

http://wiki.laptop.org/go/Multi-hop_mesh_network_in_MIT_campus

Is there a way to prevent that? Why not require user logins to make edits?

p.

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


thread summary: On Cerebro, Telepathy, yokes and whites

2008-06-11 Thread Polychronis Ypodimatopoulos
This is a summary (a la Michael) of the cerebro/telepathy thread.

Pol brought up the issue of how the collaboration stack is currently 
implemented, that there should be a dead-simple networking API for 
activity development and proposed someone taking the lead in 
implementing a connection manager for cerebro (which currently offers a 
D-Bus API).
http://lists.laptop.org/pipermail/devel/2008-June/015238.html

Ben suggested that there is no need to abstract telepathy further 
because it's an abstraction layer in itself. Instead, API changes should 
be proposed, if any exist.
http://lists.laptop.org/pipermail/devel/2008-June/015239.html

Ricardo suggested that there should be someone working on a cerebro 
connection manager in parallel with jabber.
http://lists.laptop.org/pipermail/devel/2008-June/015248.html

Marco and Tomeu agreed that there should be a cerebro connection 
manager, Marco conceded to getting cerebro in joyride, but disagreed 
with adding an abstraction layer between telepathy and sugar/activities 
on the basis that telepathy is abstraction layer in itself and we must 
live with what is currently available for lack of resources and because 
compromises are often made in large software projects.
http://lists.laptop.org/pipermail/devel/2008-June/015226.html
http://lists.laptop.org/pipermail/devel/2008-June/015254.html

Scott brought up the issue of children invariably trying to develop a 
multi-player game on sugar and failing because of the complexity of the 
collaboration API. Marco agreed with this problem and recognized the 
need for a python layer above telepathy/cerebro that can be invoked 
without DBus, while a lower level DBus-based API will be used by 
non-python activities. Both Marco and Scott saw the need for extensive 
tutorials and examples on how to use any networking API for activity 
development.
http://lists.laptop.org/pipermail/devel/2008-June/015255.html

Kim would like to figure out how to make progress on cerebro.
http://lists.laptop.org/pipermail/devel/2008-June/015261.html

Robert characterized telepathy primarily as an API to a variety of 
functionality and different communication mechanisms, recognized some 
problems in the implementation and the need for cerebro as one of the 
plans to deal with those problems. He also went through the history of 
how D-Tubes and stream tubes came about and noted that the requirements 
were not really clear when their (D-Tubes and stream tubes) 
implementation started. He also recognized the need to hide some of the 
complexities of network programming by adding a simplifying layer on top 
of telepathy, or by extending the current telepathy API.
http://lists.laptop.org/pipermail/devel/2008-June/015262.html
http://lists.laptop.org/pipermail/devel/2008-June/015258.html

Finally, Morgan went through the history of how the Presence Service was 
implemented, that it predates the use of telepathy and that it contains 
some interesting, to put it politely, design aspects. He also went 
through his efforts to simplify the implementation of collaboration in 
activities by pushing the telepathy functionality from the activities 
into the PS where possible and his plans to simplify further 
collaboration in activities.
http://lists.laptop.org/pipermail/devel/2008-June/015274.html

Tomeu also suggested getting this summary together (thanks!) and that it 
may make sense to separate discussion on the API from discussion on the 
current implementation.

I hope I captured the most important parts of this threads, feel free to 
blame me if I failed in any parts.

Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


On Cerebro, Telepathy, yokes and whites (was Re: cerebro in sugar)

2008-06-10 Thread Polychronis Ypodimatopoulos
Tomeu and Marco,

For the history, both me and another student from MIT tried to implement 
a connection manager back in January but gave up after a couple of 
weeks, even with significant help from Daf. We don't claim to be expert 
python programmers, but spending two weeks on something and still not 
even having understood what needs to be implemented (let alone 
implementing it) to get a connection manager going, or exactly how 
telepathy works was quite frustrating. What is more frustrating is that 
the telepathy API is no secret, but it seems that there is some distance 
between the API and how the presence service and telepathy really work 
on the laptop.

Like Michael pointed out, there are few people at OLPC who understand 
and enjoy telepathy. I think this is an understatement. Personally, I 
think that Collabora was very pressed to get something working on the 
laptop and the resulting presence stack looks like one hack on top of 
another. For example, there are tons of abstraction layers, yet 
activities have visibility (while they shouldn't) on how telepathy works 
(since telepathy is only a dependency to sugar, this should not be the 
case). Also, the presence service needs to understand if it should 
switch from salut to gabble, but the broadcast storm caused by salut 
won't let XO get an IP address through DHCP, which would mean that 
there's a school server around and. you get the picture! The current 
plan to attack scalability problems is implementing gadget from scratch 
which, if I understand correctly, is a plug-in to jabber which already 
has many problems of its own. Are we sure we're investing our limited 
time in the right direction?

Personally, I don't think this is entirely Collabora's fault. I also 
think that if you want to have distinct yoke and white, this is where 
you should start: Make telepathy dead-simple to understand by reading 
the code, not the API. I did a funny activity showing XOs and their 
relative distance 
(http://www.olpcnews.com/hardware/wireless/xo_space_where_you_are.html) 
almost a year ago in a couple of afternoons, when there was no hint of 
Sugar APIs (not even hippocanvas!) because it was dead-simple to inspect 
other activities' code and how sugar works.

Which brings us to cerebro. Since I got stuck with telepathy, I decided 
to circumvent telepathy altogether, at the very least as a proof of 
concept for cerebro's functionality. The result is an API 
(http://wiki.laptop.org/go/Cerebro#Programming_API ) that offers not 
only presence and data sharing between activities, but is also a 
/complete collaboration framework/: you can share/join activities, get a 
list of all currently shared activities and users participating in them, 
invitations, out-of-band chat, interoperability with Windows, embedded 
Linux and OpenMoko (collaboration tested on all these platforms) and 
most importantly, scalability.

Now, the nightmare strikes back: I have to go back to implementing a 
connection manager. Tomeu has a point: How many people you know that 
understands and enjoys any of mozilla, gtk, pygtk, abiword, X, cairo, 
etc?. But when did OLPC start doing compromises? And if you have to do 
a compromise, it's better not to do it at such a critical point like the 
collaboration in sugar.

Here's what I propose:

1) Someone should take the lead at implementing a connection manager and 
I will actively participate, not just by adapting cerebro's API if 
necessary, but also with implementing the necessary stubs for the 
connection manager. But the skeleton must be well understood by the 
person implementing it!

2) Make provision in both sugar and activities so that there is a clear 
abstraction from telepathy so that _if_ a better collaboration stack 
comes along, telepathy won't be hardcoded in sugar. This mainly 
involves documenting the existing calls from sugar/activities to 
telepathy (and objects returned thereof) and signals provided by telepathy.

3) Get cerebro into joyride which will help a lot with the upcoming 
multi-hop tests: humans will be operating and updating their XO that 
participates in the mesh in MIT campus, so I think it is critical to 
have cerebro in joyride. Am I wrong?

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: On Cerebro, Telepathy, yokes and whites (was Re: cerebro in sugar)

2008-06-10 Thread Polychronis Ypodimatopoulos
Benjamin M. Schwartz wrote:
 Polychronis Ypodimatopoulos wrote:
 | 2) Make provision in both sugar and activities so that there is a clear
 | abstraction from telepathy so that _if_ a better collaboration stack
 | comes along, telepathy won't be hardcoded in sugar. This mainly
 | involves documenting the existing calls from sugar/activities to
 | telepathy (and objects returned thereof) and signals provided by 
 telepathy.

 Telepathy _is_ that abstraction.  It exists specifically so that 
 different
 underlying collaboration mechanisms can be used interchangeably.  For
 example, Telepathy can run over not only Jabber but also IRC, MSN, AIM,
 and other protocols.  It seems perfectly reasonable to add Cerebro to 
 this
 list.

I thought we were talking about collaboration. MSN, IRC etc are 
basically chat protocols. Cerebro has little to do with such protocols; 
its goal is to provide efficient and scalable presence and data sharing 
in an ad-hoc, mobile environment where even IP addresses are a burden to 
maintain. I believe such functionality to be central to OLPC and should 
not be used interchangeably with anything else as long as you have and 
msh0 interface ;-)

p.
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [OLPC Networking] TCP is broken in mesh mode

2008-06-10 Thread Polychronis Ypodimatopoulos
nice report.

Benjamin M. Schwartz wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Dear Networking experts,

 I have been fighting for several months with the fact that invitations
 often seem not to work, when running on a serverless mesh.  The symptoms
 are quite strange.  If an invitation works once between two laptops, it
 continues to work between them reliably.  If it fails once, it continues
 to fail between them consistently. Sometimes, in the same place,
 invitations will work on one mesh channel and not on another.  The same
 two XOs may be reliably successful in a particular high-noise environment,
 and consistently fail in an area of virtual radio silence, as well as the
 reverse.

 Even when invitations fail, other presence information continues to flow
 correctly.  Even activity sharing continues to work beautifully.

 With some help from Daf, we managed to get a tcpdump trace from two XOs
 exhibiting this behavior at 1CC.  The dumps are attached to ticket #6463.
 ~  What we saw is bizarre, but also consistent with the behavior in the UI.
 ~ The invitations are unicast, implemented using TCP.  When machine A sends
 an invitation to B, we see the following exchange:

 1. A broadcasts an ARP request for B
 2. B sees the ARP request and replies to A
 3. A receives the ARP reply from B and sends a TCP SYN to B
 4. B does not see the SYN packet (it does not appear in B's dump)
 5. A retries a total of three times, but none of the SYN packets are seen
 by B.
 3b. In parallel, A broadcasts a presence-info update with mDNS, indicating
 that it has shared the activity.
 4b. B receives this broadcast, updates its presence-info cache, and even
 assigns B's XO icon a new location in the mesh view

 This behavior is fairly frightening.  I have seen it occur in low-noise
 network environments with a total of 3 XOs, so I suspect a serious bug
 somewhere in the lowest levels of the network stack.  Once this failure
 occurs, it is extremely reproducible.  All subsequent invitations will
 continue to fail.  I therefore suspect that the bug involves the driver or
 firmware reaching an invalid state and becoming stuck there.
   


You have to keep in mind that the driver/firmware may very well have 
bugs, but:

1) the driver does not differentiate between different TCP/IP packets 
(but may wrongly differentiate between unicast and broadcast/multicast). 
Try establishing a separate TCP/IP connection when invitations 
reproducibly don't work.

2) the firmware (in terms of a route existing or not) does not 
differentiate between frames. Try pinging the other node when 
invitations reproducibly don't work.

 Given the variety of critical services that run over TCP, including the
 much-emphasized Read activity, I hope that people familiar with the driver
 and firmware will take a look at this bug.

 - --Ben Schwartz

 P.S. All this info is present at ticket #6463.  I am writing about it here
 in an attempt to increase awareness.
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v2.0.9 (GNU/Linux)
 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

 iEYEARECAAYFAkhOz+oACgkQUJT6e6HFtqSVBQCeKPWmqeoKOzVv55JS/HTAgf1r
 bUYAoKCG+z1bBA+isc7Mun0VlQNGDars
 =4w83
 -END PGP SIGNATURE-
 ___
 Networking mailing list
 [EMAIL PROTECTED]
 http://lists.laptop.org/listinfo/networking
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-09 Thread Polychronis Ypodimatopoulos
Hi Kim,

Kim Quirk wrote:

 Poly - What I can't tell from your progress reports is exactly what is 
 needed for us to get to the next level. On the surface it sounds like 
 you had to rebuild chat to make it work with cerebro. If so, does that 
 mean all activities would have to be modified to a new API? 

No. I refactored Chat to the Xavier activity 
(http://dev.laptop.org/git?p=users/ypod/xavier-activity;a=summary) as a 
proof of concept that collaboration could be solely based on Cerebro.

 What else is needed?

Create a connection manager for Cerebro. This would also be a great 
chance for OLPC to become more intimate with the internals of telepathy, 
which is why maybe someone from OLPC should take on this task? I think 
we should aim to have that implemented and tested by August. Some work 
has been done on this by Michael Stone already.

 How does the cerebro solution fit into the rest of the stack and the 
 other technologies we are working on for 8.2.0 (August) and future 
 releases?

Cerebro should totally replace salut - the former is a superset, in 
terms of functionality, of the latter (eg. cerebro additionally offers 
network layout, distance information, more efficient file transfer etc), 
while it scales about an order of magnitude better than salut. 
Furthermore, cerebro would never black-out with broadcast storms, so 
if there is a jabber server present, it will always be discoverable.


 If the cerebro solution is still in research and there are a lot of 
 issues that still need to be worked out before we can release it, then 
 we need someone to help track all the issues and help resolve them 
 through the stack in order to get something to release stage.

It depends on how you define still in research. If that means not 
having been used by thousands of children around the world already, then 
yes it's still in research, but so is most of the XO's software. 
Realistically speaking, cerebro has been tested more extensively than 
the rest of the collaboration stack, not only on tens of XOs, but other 
platforms also.

 Let's work with Michail on this as he probably needs to take the lead.

 As a first step, I will order 10 laptops for Poly to find permanent 
 homes for throughout the MIT campus.

thank you.


 Kim

p.


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: journal object transfer for 8.2

2008-06-09 Thread Polychronis Ypodimatopoulos
An OLPC intern would have actually taken up this task, but changed 
direction for the summer. I 'm not sure though how network robustness 
will improve if some networking (such as file transfer) is done in the 
Journal. A slightly more radical change may be necessary ;-)

p.

Walter Bender wrote:
 I would argue otherwise. Since Sugar has no control over the
 robustness of the network, having some way of sharing at a basic level
 from the Journal is seemingly a high priority. Half of the
 high-priority bugs in the link you provide are in fact not really
 Sugar bugs, but subsystem bugs. The others don't seem to be
 particularly pressing.

 -walter

 On Mon, Jun 9, 2008 at 4:12 PM, Michael Stone [EMAIL PROTECTED] wrote:
   
 Tomeu,

 
 have heard occasional requests to implement the sending and sharing of
 journal entries.
   
 It's a desirable feature but, from my perspective, it's much lower in
 immediate priority than work which brings the sugar UI revision into a
 releasable condition and which polish the existing work by closing
 several of the 379 tickets assigned to component 'sugar':

  
 http://dev.laptop.org/query?status=assignedstatus=newstatus=reopenedcomponent=sugarorder=prioritycol=idcol=summarycol=statuscol=typecol=prioritycol=milestonecol=component

 
 So the questions are: is this a feature we should deliver for the 8.2
 release?
   
 In my opinion, no.

 Do you think differently?

 Michael
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel

 
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-08 Thread Polychronis Ypodimatopoulos
Quoting Michail Bletsas [EMAIL PROTECTED]:
 [EMAIL PROTECTED] wrote on 06/08/2008 12:00:30 PM:

 one more (which may be considered a varient of d)
 i) 802.11s meshing in bad RF environments

 this is where there are a small number of XO machines (so you don't have

 the 802.11s traffic issues), but where there are a large number of other

 802.11 devices in the area

 a unofficial testbed for this would be to take a half dozen XO machines
 to
 a tech conference and try to run them.

 What you are describing is nt far away from the wireless environment at
 1CC...

 M.


Exactly. RF noise is not the problem in a mesh network, or at least not 
anymore.
The 70-node test at 1CC showed that what is important is _how_ you use the
network, not how much noise you have.

p.

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-08 Thread Polychronis Ypodimatopoulos
Quoting C. Scott Ananian [EMAIL PROTECTED]:
 While we're talking about networking:

 From discussions with the OLSRd guys, one way they made their
 protocols work well in dense networks was to aggressively use *all*
 the 802.11*a* as well as g channels.  802.11a has 24+ non-overlapping
 channels (in some regulatory environments) which could go a long way
 towards keeping the number of nodes on any given slice of spectrum
 below the 40-node 802.11 MAC limits.

 It appears that our wireless chipset supports 802.11a, although our
 frontend and antennas are apparently tuned for 802.11b/g.  That could
 be an advantage: in dense scenarios we actually *want* to keep tx
 power and rx sensitivity low (at the expense of some multihop routes).
 Michalis, does exploring 802.11a operation in some school
 environments seem reasonable to you?
  --scott


Are there going to be 24 different access points too? Don't forget that 
you will
then need to allow users to communicate across different channels, so you will
need a bridge at radio level. I thought the point with having three distinct
channels (1,6,11) was that it provides some sort of scalability at 
radio level,
while the cost of connecting the three channels was relatively low.

p.
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-07 Thread Polychronis Ypodimatopoulos
C. Scott Ananian wrote:
 Last I checked, Poly wasn't an employee of OLPC.  
I don't think this is a valid argument either:

Not being an employee of OLPC does not mean I 'm willing to waste my 
time on something OLPC has no interest in. Like most other volunteers, 
work at OLPC is interesting because it's technically challenging and 
globally significant. If the work is not in OLPC's radar of interest, 
then something's wrong and it should be discussed.

Being an employee of OLPC does not mean your technical solution is 
better than mine either (me being a volunteer). Please don't take this 
personally or literally. Having such a large pool of volunteers means 
you may have to assess your software stack more often against what 
volunteers can offer you.

 I don't think we can or should make him fix our dense network problems, or 
 run our mesh
 testbed. 

Heh, I think I actually offered a solution on the first and volunteered 
for the second, but was put off until OLPC figures out what how to 
proceed with the mesh testbed.

 We should, however, give him all the support he needs (and
 he's only asking for ~10 laptops) to create the sparse network testbed
 he's interested in, since we will need that after 8.2, and if it's to
 be ready then someone needs to start working on it now.

   
 The 8.2 release is the one that Peru will be using next year (2009).
 It is very important that any MPP functionality that is added back
 to the build be very well tested in the dense school wifi scenario
 by 8.2 freeze to ensure happy customers.
 

 Yes, continued wireless testing is important.  We also need to be
 willing to act on the results of that testing.
   

I must admit that it is rather hard for OLPC to act on such results. It 
may be for lack of resources, but I'm speaking for myself when I say 
that OLPC has a hard time trusting developers unless they're on its 
payroll, especially for core parts of its software (with the exception 
of Marco? ;-). I think commitment, communication and roadmaps is the 
answer to this problem.

p.



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


New, more realistic multi-hop network testbed

2008-06-06 Thread Polychronis Ypodimatopoulos
In the spirit of escalating collaboration/communication use cases to 
more realistic scenarios, I 'd like to propose creating the following 
multihop network testbed.

This testbed will involve about 70 nodes, but most are already deployed 
(about 50 nodes already exist at 1CC and 8 at the Media Lab). About 
10-12 new XOs are necessary to form the multi-hop network:

http://maps.google.com/maps/ms?hl=engl=usptab=2ie=UTF8oe=UTF8msa=0msid=116432384591811010127.00044f046ce8f6f83aae3

This testbed will be used to:

1) stress communication over the mesh network; this can be as large as a 
10-hop network spanning from my apartment (Eastgate) to a friend's 
apartment in Ashdown.

2) Test collaboration using Cerebro on a mixture of devices including 
XOs, x86 machines (Linux and Windows) and mobile phones. Cerebro runs on 
each one of those independently (including OpenMoko Freerunner), but 
this testbed could be used as a backbone network for devices that 
would otherwise be out of range (such as a mobile phone on one side of 
campus and a PC on the other).


Action items:
1) secure space (especially at Infinite Corridor) to house XOs.
2) setup and automate software updates over the network.
3) last but not least, get about 10-12 XOs from OLPC ;-)

Comments/additions are most welcome!

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-06 Thread Polychronis Ypodimatopoulos
Aaron Kaplan wrote:

 On Jun 6, 2008, at 10:31 PM, Polychronis Ypodimatopoulos wrote:

 In the spirit of escalating collaboration/communication use cases to
 more realistic scenarios, I 'd like to propose creating the following
 multihop network testbed.

 This testbed will involve about 70 nodes, but most are already deployed
 (about 50 nodes already exist at 1CC and 8 at the Media Lab). About
 10-12 new XOs are necessary to form the multi-hop network:

 http://maps.google.com/maps/ms?hl=engl=usptab=2ie=UTF8oe=UTF8msa=0msid=116432384591811010127.00044f046ce8f6f83aae3
  



 Hi Pol!

 outdoor or indoor?

 Might be a good outdoor test for XO durability :))

 You might need some external directional antennas since there is so 
 much 2.4GHz noise there.


 a.

This is mainly an outdoor test with indoor nodes ;-) The idea is be as 
realistic as possible and try to replicate the actual village 
environment, only in its worst possible form: Including the high radio 
noise levels of MIT. We should not enforce connectivity by means of 
external antennae, but rather experiment with the reachability of the XO 
as it is, potentially by adding active antennae in between.

Having this testbed in place, we can try a mobility test also, eg. 
having a mobile phone or an XO walk from end to end.

p.


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: New, more realistic multi-hop network testbed

2008-06-06 Thread Polychronis Ypodimatopoulos
Hi Wad,

John Watlington wrote:

 Poly,
 In theory, your suggestion sounds good.   In practice, I think
 it is advanced research winning out over fixing real problems.

Heh as you know, research is usually done based on simulations, not by 
deploying such cumbersome, large area networks ;-)


 In the spirit of testing realistic scenarios where we are currently
 deployed and failing, I would instead strongly urge concentrating
 on testing 70 laptops in a small space (no larger than 1CC's devel
 area) with two WiFi access points.

I thought I covered this scenario quite thoroughly; cerebro enabled 
about 70 laptops to chat in a simple mesh, even without using an access 
point or a school server. I got no useful comments, nor was there any 
significant interest to plan for sugar integration, so I think it's time 
to move forward with a different test.


 This may not help the mesh routing work immediately, but it would
 help us verify why teachers in Uruguay are complaining about an
 inability to connect.

I was not presented with any specific scenarios from Uruguay to test 
with cerebro, which I would be very willing to test. Again, I insist on 
continuing to develop cerebro instead of testing the regular XO's 
collaboration stack because the performance of the former is at least an 
order of magnitude better.


 It would also allow testing of realistic methods of automatically
 becoming an MPP.  As Michail has rightfully pointed out and
 Uruguay and Peru have been requesting, we need a way
 of extending the WiFi network in the school out to the village.

This is exactly one of the goals of this test - extend the network 
outside the classroom, into the village.


 I don't see us getting far enough along with changes to mesh   
 routing, 

There never was any intent on changing mesh routing.

 or replacing parts of salut with cerebro in time for the
 8.2 release.  

I believe there is no comparison between salut and cerebro (please 
correct me if I'm wrong). As for the 8.2 release, I was never asked for 
an integration plan. We will never make it into any release, unless we 
start planning.

 But I do believe that Michail can figure out a decent
 way to gate the MPP functionality by then.

 The 8.2 release is the one that Peru will be using next year (2009).
 It is very important that any MPP functionality that is added back
 to the build be very well tested in the dense school wifi scenario
 by 8.2 freeze to ensure happy customers.

I don't really see how this relates to the proposed test. MPP is not, 
currently, the objective.

p.



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Volunteers/help for sugar/cerebro integration

2008-05-14 Thread Polychronis Ypodimatopoulos
Hi,

I'm looking for help/volunteers to assist with the integration process 
of cerebro [1] into sugar. Cerebro offers a fast and efficient data 
transport and collaboration mechanism between tens of XOs in simple 
mesh. Using cerebro we can make the simple mesh scale as well as the 
current limit using school server WiFi and improve the collaboration 
experience in many application scenarios.

The integration can be done in either of these two ways:

1) Create a new telepathy connection manager that will act as interface 
between telepathy and cerebro. Some preliminary work already done by 
Michael Stone [2].

2) Add the necessary callbacks in cerebro that will allow it to act as 
presence service to sugar directly [3]. Cerebro provides the necessary 
functionality, but lacks several dbus callbacks.

Questions/comments?

[1] http://wiki.laptop.org/go/Cerebro
[2] 
http://dev.laptop.org/git?p=users/mstone/telepathy-cerebro;a=tree;hb=HEAD
[3] /usr/lib/python2.5/site-packages/sugar/presence/presenceservice.py

Thanks,
Pol



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-13 Thread Polychronis Ypodimatopoulos
John Watlington wrote:
 One interesting note is that the suggested routing algorithm for  
 802.11s is a combination of reactive and proactive routing (unlike our 
 current one, which is  
 solely reactive). Perhaps that provides the adaptation necessary for the mesh 
 to work ?

If you refer to the hybrid routing protocol, it constructs a spanning 
tree of the whole mesh network rooted at some node. This is meant to be 
used in non-homogenous meshes (eg having an MPP or access point that 
acts as the root). So it may help in a school environment, but not in a 
simple mesh environment where all nodes are equal (if you attempt to 
build a different tree rooted at every node, you will probably face the 
wrath of a proactive protocol running on a mobile network - god save us 
from such a day ;-)
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: 65-node simple mesh test (and counting... ;-)

2008-05-12 Thread Polychronis Ypodimatopoulos
Hi Bill,

Bill Mccormick wrote:
 The network manager could be the culprit here, although I thought you
 had it disabled, how did you disable it?
   

chkconfig --del NetworkManager

you'll need to pass the '--add' argument to restore it in rc5.

 When it's running it looks like it first looks on channel 1 for a DHCP
 server.   Then channel 6.   Then channel 11.  Then it tries to connect
 to the last known access point.   Then it does it all again.   This will
 take a bit of time...

 Only then does it assume that there is no DHCP server and switches to ad
 hoc mode on channel 1.
   

Does it also start looking at different intervals for a DHCP server 
after switching to ad-hoc mode?

Pol

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Dear devel,

Here are the latest results from Cerebro's (http://cerebro.mit.edu) 
scaling properties. A 65-node testbed was used (703, Q2D14). The 
NetworkManager had to be disabled in order to stabilize the behavior of 
each XO's wireless interface. Unfortunately, the difficulty and time 
necessary to manage increasingly more nodes is linear (given that the 
NetoworkManager is disabled ;-), but increases steeply.


** Test plan:
Cerebro was started on all 65 laptops almost at the same time. We 
attempted to emulate the 65 children turn on their laptops in class at 
the same time scenario. With Yani's help, it took about 5 seconds for 
both of us to press 'enter' on all laptops. Each XO would discover each 
other, exchange profile information and keep exchanging 
presence/discovery information.


** Measurements:
Quantitative:
According to the protocol, presence (mac address) arrives about other 
XOs first, then the profile for the newly arrived mac address is queried 
and finally the profile is cached. We assume that initially each XO has 
no cached information about other XOs. As a result, every XO will query 
everyone else.
We measured the time it took for each XO to discover and exchange 
profile information with everyone else, bandwidth usage at all times 
(during profile exchange and after the network stabilized when all 
profiles were received everywhere)

Qualitative:
Collaboration was tested on all 65 nodes: one shared a chat session, 
everyone else joined. The chat session was based on Cerebro's 
collaboration model.


** Results:
Discovery and profile information:
The following graph shows arrival of profile information at each XO from 
other XOs a function of time. Each bar is a 3-second bucket representing 
the average number of profile arrivals during this 3-second period. The 
standard deviation is shown with the blue lines.
http://wiki.laptop.org/images/a/af/65-arr-1.png

The following graph is the cumulative distribution function. It shows 
that, on average, each XO has received about 95% of the profiles of the 
rest of the nodes within just 20 seconds. This performance boost is due 
to the fact that each XO queried for its profile, responds by 
broadcasting the profile, instead of unicasting it to the requester. As 
a result, the other nodes receive the profile too and the next node is 
queried, yielding a linear cost, instead of a quadratic one.
http://wiki.laptop.org/images/7/72/65-cdf-1.png

Bandwidth usage:
The following wireshark snapshot shows bandwidth usage that peaks 
momentarily at about 60kbytes/sec. The snapshot is also in accordance 
with the first graph above, showing that after about 55 seconds the 
network stabilizes. After the network stabilizes, bandwidth usage drops 
to 1 packet every 3 seconds (less than 500bytes/sec), as the arrival 
rate adapts to the density of the network.
http://wiki.laptop.org/images/5/51/Bandwidth-presence-info-1.png

Chat session:
Before the experiment was started, a node shared a chat session and all 
64 nodes joined consistently. I sent a few chat messages from a couple 
of XOs and were received on all other XOs.


** Other notes
After about 6.4 hours of continuous operation on all 65 nodes, Cerebro 
shows stable memory usage (10MB) and consistent CPU usage (83 minutes 
of CPU usage in 'top').

Comments/suggestions?

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Michael Stone wrote:
 Data Questions:

 * Are the measurements used to make the display of 'distributions of
   profile arrival rate vs. time' produced from timestamps of profile
   arrival as recorded by all the laptops or by some smaller set of
   'sentinels'?
   

All XOs got synced clocks (by means of a broadcast packet that sets the 
time on all machines, providing a clock skew in the neighborhood of a 
single second). Then, timestamps of profile arrivals were collected from 
all 65 nodes, each reporting arrivals for the other 64 nodes.

 * What was the general nature of the connectivity graph of the 65
   laptops? Did it change over time?
   

The nodes are lying in the Garden area of 1CC, and they were 
consistently 1-hop away from all other nodes (full mesh network) all the 
time.

 * Did you take any measurements of background network traffic?
   

No, but I should have. However, we can all agree that 1CC is relatively 
noisy environment.

 * Do you have any new insight into how the presence of NM (or of
   software on top of it that depended on it) was killing your
   interfaces?
   

My understanding is that the NM is trying its best to make ends meet in 
terms of what the user needs (connect to an AP/XS/mesh ?) and what 
connection is most reliable (I assume that an AP is considered more 
reliable than the mesh, but I honestly doubt it!). As a result, the NM 
may occasionally make the bold move to move from one connection type to 
another, breaking all existing connections (quoted because there are 
no TCP-like connections in my experiments), leaving stale information at 
various points of the software stack (eg. mesh view).

 At any rate, thanks for this good work!

 Michael

 P.S. - When you produce measurements like these, please include links to
 the raw data.
   
The raw capture is here:

http://lyme.media.mit.edu/cerebro/capture-1


Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Bill Mccormick wrote:
 Hey Pol,

 what format is the data in, is this pcap?
   
yes, it's libpcap. Saved from wireshark. I just tested the file and 
successfully loaded in wireshark ;-)

Pol

 The raw capture is here:

 http://lyme.media.mit.edu/cerebro/capture-1
   

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


RE: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Hi Greg,

Greg Smith (gregmsmi) wrote:
 Thanks for sharing the results. Did you use a wireless AP or active
 antenna? 

No access points or active antennas were involved. This is a simple mesh 
network test.

 If you can include a few details on that it will help. Can you
 also include the XO build # and XS build and config if relevant?
   

build 703

 Would you say that this test passed? That is, can we recommend that
 schools use the chat activity with one chat session which all join?
   

Cerebro is software under development and as such it has bugs, but I'm 
confident that it can easily handle 50-node, simple mesh networks (in 
terms of presence/profile information) and if activities use Cerebro for 
their data transport and sharing needs, then there is proof 
(http://cerebro.mit.edu/images/Comparison1.png) that Cerebro will always 
beat any TCP-based approach (even if access points/active antennae are 
used).

Like Morgan said, Cerebro is not in build yet but we are examining 
various integration plans. The chat activity mentioned should not be 
mistaken for the Chat-activity on the XO. The former is an offshoot from 
the latter that only users Cerebro for collaboration/data exchange.

 Lastly, can you tell us what kind of testing time and focus you will
 have in the near future? I believe there is a mesh test lab coming up at
 Nortel in Ottawa as well. Any feedback on test capacity and plans there
 is appreciated too.
   

I'm not familiar with the testbed in Ottawa. The plan is to expand the 
mesh test to 100 nodes and bring down the time it takes for the network 
to converge even further. Currently it's linear with the number of nodes 
and I'll experiment with some ideas on how make it completely constant 
and negligible! Also, I plan to make Cerebro more socially-aware 
(permanently cache profiles of friends, share bookmarks of friends as 
a friend recommendation process) and enhance its security (already 
collaborating with another team of MIT students on this).

 I ask because there is recent feedback on mesh issues from a teacher at
 Lambayeque, Peru http://wiki.laptop.org/go/Lambayeque#Inconvenientes and
 a teacher in Uruguay has asked about supported Mesh features too. The
 Lambayeque page says: they wish they knew in advance that Acoustic
 Measure Activity would not work with 6 groups of two students each.
 That's mostly an issue with activity design and our communication about
 what activities support but it does raise a good test case (6 groups of
 2 sharing a single activity).
   

As you can imagine, 6 groups of 2 kids is a pretty trivial case in terms 
of networking ;-) given that there is not an overwhelming amount of 
traffic involved. I 'll try to get in touch with Ben (author of Acoustic 
activity) to discuss this issue. As always, feedback from teachers and 
children is extremely welcomed! Unfortunately, I cannot read the 
'Lambayeque' wiki page.

 I think both (Peru and Uruguay) teachers can help define meaningful mesh
 use cases which will be applicable in many schools. I want to set the
 right expectation on our capacity before I ask them to spend a lot of
 time working with us. 
   

Would you like to setup a few use cases that I could put to the test and 
explore our limits?
I would like to shift my focus to make Cerebro more activity-friendly 
and examine alternative use cases.

Thanks for the feedback,

Pol



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Bill Mccormick wrote:
  Pol,

 I forgot to ask, do you have a tool that parses the messsages and counts
 up etc.?   Wireshark only parses the 1st mac header.
   

Heh, you 're putting your finger on the wound now! The main reason I did 
not attempt a wireshark plugin for Cerebro yet is because I was heavily 
working on many of its protocols, but I think they 've reached a stable 
point now (I found no reason to change anything for more than a month 
now). This is definitely on the wish-list right now! Help is greatly 
appreciated.

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Bill Mccormick wrote:
 It does look like the NM code will select APs over mesh...   I bet this
 plays havoc with IP changing between link local addresses and DHCP
 addresses.
   

This is partly because of the scalability limitations of the existing 
collaboration model in a simple mesh. However, I think we can greatly 
improve situation in a simple mesh scenario and that may simplify the 
decisions that NM needs to make.

 Did you expect over half of the packets in your data file to be
 broadcasts?  Specifically 11754 out of 21587 packets were sent to the
 broadcast address.

This is true because all bulk traffic is sent over broadcast _and_ is 
reliable. Sounds weird? Let me provide a brief explanation. All bulk 
data traffic (by bulk I refer to traffic that is _potentially_ 
interesting to all nodes, such as profiles, files etc) is sent to the 
broadcast address, but the mac address of the node that originally 
requested the data (or the node to which this data is actually meant 
for) is added in the actual payload, so only one will be replying with 
acks to the sender (which are necessary to ensure reliability), but all 
other nodes will be receiving the data too because it's sent to broadcast.

This actually happens anyway on your network interface, so this scheme 
imposes _no_ additional cost in terms of traffic, other than moving the 
decision of whether a frame is meant for the current host to a higher 
layer. This scheme allows sizeable bandwidth savings 
(http://lyme.media.mit.edu/cerebro/index.php/Experimental_results), 
especially in dense wireless networks.

Pol



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
On Fri, May 9, 2008 at 10:57 AM, Marcus Leech [EMAIL PROTECTED] wrote:
 I'd be *very* interested to compare the distribution on a wired network.
 It seems to me that given
  the broadcast model, everybody should see everybody else in much
 shorter time than the 55 seconds
  shown in the outlying cluster on that graph.

Marcus, this is indeed an interesting idea. However it has a significant 
problem: wiring up more than 60 XOs onto a switch requires equipment, 
time and space that OLPC cannot presently provide. Such a testbed though 
is absolutely necessary not only as a proof of concept for your 
suggestion, but also for doing large scale mesh network testing in general.


 The common, but erroneous, assumption is often made that a wireless
 network is just like a wired network, but with the wires removed.
   

So very true!

 On a wireless network, broadcasts are successfully received with much
 lower probability.  RF is mysterious and magical, and all sorts of
 connection asymmetries, near-field effects, and radiation lobe
 patterns conspire to make it unlikely that *everyone* can hear you
 equally at once -- and then you get into remote collisions and other
 mechanisms that make you unaware that not everyone heard you.  And
 there is not 'ack' mechanism for 802.11 broadcast.
   

All these are true also, but I think we're mystifying things a little 
bit here. The wireless medium is unpredictable mainly because its 
properties are also a function of time (a non-issue in wired networks), 
but at least (thank God!) it [the wireless medium] does not discriminate 
between broadcast and unicast frames! Adding an ack scheme to broadcasts 
should yield equal (or even better due to lowered speed) reliability 
using broadcast frames. Even without the ack scheme, I noticed that, on 
average, some 95% of the data transmitted over broadcast are 
successfully received on all nodes. We are throwing this away by 
discarding it on our wireless interfaces.

Pol



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: 65-node simple mesh test (and counting... ;-)

2008-05-09 Thread Polychronis Ypodimatopoulos
Quoting Robert Withrow [EMAIL PROTECTED]:
 As you may know, but for the others also: Nortel is working to set up 
 a 100 node test network of this nature (each node wired through 
 switches with some test director automation) in a RF clean 
 environment in a Lab in Ottawa and Marcus is one of the folks doing 
 that.  We hope it will help produce some useful results for scaling 
 up the mesh networking.

 We'll keep the group updated as this project proceeds.

Robert, this is great. Do you think there is any chance that we will be 
able to
remotely use this testbed also?

regards,
Pol

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Mesh testing

2008-05-05 Thread Polychronis Ypodimatopoulos
I 've been doing experiments on a 50-node testbed (703, Q2D14, 22.p9, 
simple mesh) and getting all 50 of them to communicate consistently has 
been hard, even in the absence no sharing or heavy workloads involved.

Out of the 50 nodes (over a period of time of 6 hours), 8 nodes 
decided to take msh0 down, half of which did not come up again 
(NetworkManager?).

About 18 out of 50 nodes (not including the previous 8) for some reason 
stopped being reachable from the rest of the network, although their 
network interface did not seem to have been reset. Restarting the 
NetworkManager seems to fix the problem.

Is anyone still maintaining the NetworkManager? It seems to me that the 
NetworkManager chooses to restart msh0 sometimes. Is this true? Does it 
go so far as to reload the firmware?

Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [sugar] Ad-hoc Networking

2008-04-23 Thread Polychronis Ypodimatopoulos
Carl-Daniel Hailfinger wrote:
 Looking at trac, wireless is one of the biggest sources of bugs and the
 community can hardly do anything about it. Normally, somebody who
 complains can be told to fix the code, but with a closed wireless
 firmware, complaining is the only possible action.
   

When you say Looking at trac do you mean you _really_ looked at trac?

Well, I had a look at trac and found the following bug reports (includes 
open+closed). Of course, this is no account of what percentage are still 
open, or what percentage are blocking and so on, but it may just give us 
an idea of the situation.

What users experience as network from an activity's point of view 
(let's call this network experience) encompasses all of the following 
pieces:

kernel: 286 bugs*
Journal: 232 bugs*
wireless (firmware+driver): 189 bugs
open firmware: 162 bugs*
salut: 71bugs
network manager: 69 bugs
presence service: about 30 bugs
Total bugs relating to network experience: 189+71+69+30=359

*Not necessarily part of the network experience, but was only listed 
here to provide perspective.

So what part of the bugs that affect your network experience are 
_really_ related to the mesh network? Less than half! Why less? 
Because half (189) involve both the driver+firmware and the part that 
you cannot fix is a subset of those.

cynicism
You also said A 'feature' which is an obstacle without visible benefits 
to users/developers has no inherent value. Let's try to follow this 
rule for a moment: the kernel has 286 bug reports and journal has 232. 
Do you suggest abandoning the kernel and substitute with something else 
(say windows [just a random thought ;-)]). What about Journal?
/cynicism

Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Document sharing issues

2008-04-22 Thread Polychronis Ypodimatopoulos
Guillaume Desmottes wrote:
 Le lundi 21 avril 2008 à 10:24 -0500, James Simmons a écrit :
   
 2).  Downloading a document is very slow.  I distribute View Slides 
 files on an Apache server, using the Browse activity to copy same to the 
 Journal.  This takes under a minute even for a large file (over 15mb).  
 Then I share the document with another instance of Sugar on the same 
 box.  *That* is agonizingly slow.  I know the two instances are not 
 communicating directly, but it still seems like there is a lot of 
 overhead going on.  Can I do anything about this?
 

 Were you using Gabble or Salut? Currently Gabble stream tubes still send
 their data through the jabber server making transfer really slow. I'm
 working on implementing real p2p instead (#4047).
 Salut doesn't have this problem though as it already uses TCP
 connections.
   
Can you elaborate more on this? Isn't TCP the underlying mechanism for 
Gabble also? How is Salut more efficient?

p.



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Walter leaving and shift to XP.

2008-04-22 Thread Polychronis Ypodimatopoulos
Mitch Bradley wrote:
 No, I'm saying that giving laptops to all the world's children is a Good 
 Thing,
 and worthy of being called an education project, even if they don't 
 have the
 world's friendliest UI or free software.  And the reason for that is because
 the web is so immensely valuable.

 The laptops are even more wonderful with a child-friendly UI, loads of fun
 activities, and a non-proprietary software stack.  But in the steady 
 state, the
 web is the high-order bit, sufficient to qualify as education in and of 
 itself.
   
Mitch, I completely disagree with you on this. Browsing the web is 
useful but doing so without being able to seamlessly communicate with 
people that are in your proximity is a poor goal to reach. We should 
be thinking bigger than just giving kids a windows box and ask them to 
sign up to Facebook so that they can communicate with their friends.

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Cerebro released

2008-04-21 Thread Polychronis Ypodimatopoulos
(sorry for cross-postings)

The first release of Cerebro is out!

Cerebro basically offers scalable presence information and a simple 
collaboration API. Features currently include:

- presence information (including distance and route) for all other 
users in the network
- dynamic rate of updates based on density of neighborhood: No more than 
1 update every 5 seconds (on average) guaranteed.
- mesh network extended to regular 802.11b/g devices
- extensible user profile including nickname, colors, keys, IP addreses, 
picture of arbitrary size, status message etc
- file sharing using an efficient multicast mechanism
- simple collaboration mechanism through 'share', 'join', 'leave' functions
- simple programming API based on dbus (see examples)

http://wiki.laptop.org/go/Cerebro

Enjoy!

Pol

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Do we ever want to bind more than 8 multicast MAC addresses?

2008-04-18 Thread Polychronis Ypodimatopoulos
Is it possible to associate shared activities with ethernet ports 
instead of whole multicast addresses? Then we would only need one single 
multicast address and do the filtering on the ethernet ports (eg IP is 
port 0x0800). At the very least, the multicast address is 6 bytes and 
the ethernet port is 2 bytes.

Pol

David Woodhouse wrote:
 On Fri, 2008-04-18 at 10:58 -0400, Ricardo Carrano wrote:
   
 Mmm, if the driver says it is 32 and the firmware only allows for 8,
 we have a problem, don't we? ;-)
 

 Indeed. Do we know which versions of firmware support which numbers of
 addresses? Remember, this driver handles lots of devices, some with
 non-mesh firmware.

   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Do we ever want to bind more than 8 multicast MAC addresses?

2008-04-18 Thread Polychronis Ypodimatopoulos
what's possible? why not?

David Woodhouse wrote:
 On Fri, 2008-04-18 at 11:43 -0400, Polychronis Ypodimatopoulos wrote:
   
 Is it possible to associate shared activities with ethernet ports 
 instead of whole multicast addresses? Then we would only need one single 
 multicast address and do the filtering on the ethernet ports (eg IP is 
 port 0x0800). At the very least, the multicast address is 6 bytes and 
 the ethernet port is 2 bytes.
 

 That's possible, yes -- although you won't get the device filtering it
 for you then.

   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Do we ever want to bind more than 8 multicast MAC addresses?

2008-04-18 Thread Polychronis Ypodimatopoulos
David Woodhouse wrote:
 On Fri, 2008-04-18 at 11:50 -0400, Polychronis Ypodimatopoulos wrote:
   
 what's possible? why not?

 David Woodhouse wrote:
 
 On Fri, 2008-04-18 at 11:43 -0400, Polychronis Ypodimatopoulos wrote:
   
   
 Is it possible to associate shared activities with ethernet ports 
 instead of whole multicast addresses? Then we would only need one single 
 multicast address and do the filtering on the ethernet ports (eg IP is 
 port 0x0800). At the very least, the multicast address is 6 bytes and 
 the ethernet port is 2 bytes.
 
 
 That's possible, yes -- although you won't get the device filtering it
 for you then.

   
   

 Error. Question upside down. Please don't top-post.

 It's possible to do as you say -- to use different ports for different
 activities (although I read 'UDP ports' where you actually said
 'ethernet ports' so perhaps I misunderstood).

 The device firmware doesn't speak IPv6 or Legacy IP, however -- and we
 wouldn't want it to, even if we trusted it. So it wouldn't filter for
 only those ports you're interested in; it'll give you all packets for
 that address.

   
You're not following: Ethernet ports are bytes 12-14 (2 bytes total) on 
_all_ ethernet frames. IP has nothing to do with this. Instead of 
looking at the first 6 bytes (destination mac) for a specific multicast 
address, the filter should be looking at bytes 12-14 for a specific 
ethernet port.

Pol





___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Do we ever want to bind more than 8 multicast MAC addresses?

2008-04-18 Thread Polychronis Ypodimatopoulos
David Woodhouse wrote:
 On Fri, 2008-04-18 at 12:01 -0400, Polychronis Ypodimatopoulos wrote:
   
 You're not following: Ethernet ports are bytes 12-14 (2 bytes total) on 
 _all_ ethernet frames. IP has nothing to do with this. Instead of 
 looking at the first 6 bytes (destination mac) for a specific multicast 
 address, the filter should be looking at bytes 12-14 for a specific 
 ethernet port.
 

 Ah, sorry. I read it as UDP ports.

 It would be hard to do this -- there's a defined mapping from IPv6
 addresses to the multicast MAC addresses used, and high-level
 applications don't get to muck around with low-level details of the
 Ethernet frames.

   
Dynamic mapping from a single 6-byte address to multiple 16-byte 
addresses? I'm curious how this works. I just hope you don't have to 
change your IPv6 address every now and then ;-)

Salut is _no_ high-level application and it should _not_ be associating 
multicast addresses with activities.

Pol
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Devel Digest, Vol 26, Issue 65

2008-04-14 Thread Polychronis Ypodimatopoulos
Interesting. Does the presence information from each instance ever leave 
the machine's network card?

Pol

Tomeu Vizoso wrote:
 On Mon, Apr 14, 2008 at 8:30 PM, James Simmons
 [EMAIL PROTECTED] wrote:
   
 Morgan,

  I am one of those people developing activities that make use of
  collaboration.  I'm pleased to see that someone has been charged to make
  that easier, especially through better documentation.  My Activities are
  Read Etexts and View Slides.  Both make use of code adapted from the
  Read activity, although only Read Etexts has sharing implemented in a
  released package.  It does seem to work.  View Slides has sharing code
  in git, but not released as that code does NOT work at this time.

  One thing I hope you'll address is the question of setting up a sharing
  test environment as simply as possible.  I have been using Xubuntu with
  Sugar RPMs on one machine and Sugar-jhbuild on openSUSE 10.2 on
  another.  Both use the Collabora server, and I have a G1G1 laptop
  pointing to that server as well.  The thing is, I don't know if I have
  Collabora's blessing to use their server for my testing, and even if I
  did, it is frequently out of service.  Ideally I could set up my own
  server.  I do know that just having ejabberd installed from RPMs is not
  enough.  (I tried that and it didn't work).  So what is the simplest way
  for me to have my own sharing environment?
 

 You can easily use salut-based collaboration by running several
 instances of the xephyr-based emulator like this:

 http://wiki.laptop.org/go/Sugar_with_sugar-jhbuild#Running_multiple_instances

 Hope it helps,

 Tomeu
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: networking scenarios

2008-04-11 Thread Polychronis Ypodimatopoulos
Dafydd Harries wrote:
 This is something which was not completely clear to me until I talked to Wad
 about it the other day, and I think other people might find it useful. It
 should probably go on the wiki (assuming it isn't already there somewhere). 
 I'd
 like some feedback about where it belongs. The closest thing I've found is 
 this
 page:

   http://wiki.laptop.org/go/Scenario_taxonomy

 Any errors are my own.

 There are four networking scenarios:

  - simple mesh
- no access point
- no school server
- we are currently aiming to support up to 15 laptops in this case
   
We are beyond 15 laptops in the simple mesh scenario. I am consistently 
testing simple mesh with 30 laptops and we are aiming for more than 
50. Scaling the simple mesh somewhere between 50 - 100 laptops may 
have significant impact on the (potential need for) other scenarios.

Pol

  - simple WiFi
- access points
  - which tend not to handle multicast very well (1Mbit/s peak)
- no school server
- this is what G1G1 laptops will tend to encounter
- typically in the developed world
  - school mesh
- no access point
- school server with Jabber server
  - school WiFi
- access points
- school server with Jabber server
  - only one server at a time
- this is what is deployed in Peru

 Our current priority in terms of collaboration is to improve supprt for the
 fourth case, as this is the situation most of our existing laptops are
 deployed in, and it's likely that upcoming deployments will be similar. Our
 secondary priority is improving support for the second case, as this is what
 will tend happen when laptops are taken home from school.
   
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Chilling Effects paper at USENIX

2008-04-09 Thread Polychronis Ypodimatopoulos
Having received a lot of publicity, the OLPC project is a great 
candidate for criticism, sometimes constructive, other times done in the 
absence of other serious academic research.

Potentially weak security models in windows is no news, but in OLPC... 
Now this is worth taking a shot at!
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Build Debate: Followup on Build Naming

2008-04-08 Thread Polychronis Ypodimatopoulos
The prefix is much longer than the actual information that the name is 
supposed to provide ;-)

p.

Walter Bender wrote:
 True. How about OLPC-Fedora.1, ...

 -walter

 On Tue, Apr 8, 2008 at 11:21 AM, Tomeu Vizoso [EMAIL PROTECTED] wrote:
   
 hmm, Sugar aims to be available as an alternative desktop in all kinds
  of linux distros, so would be a bad name for an OLPC-made distro.

  Tomeu



  On Tue, Apr 8, 2008 at 5:13 PM, Walter Bender [EMAIL PROTECTED] wrote:
   This discussion reminds me of a favorite puzzle from Douglas Hofstadter
  
0, 1, 2, 3, 720!, ...
  
That is a numbering scheme with lots of headroom.
  
I agree that OLPC is the wrong name. There are reports that the
software is now running, for example, on a Classmate PC. So any direct
tie to OLPC is not necessarily appropriate. Maybe Sugar? something
else? But there is not much simpler than 1,2,3...
  
-walter
  
  
  
  
On Tue, Apr 8, 2008 at 11:06 AM, Paul Fox [EMAIL PROTECTED] wrote:
 walter wrote:
   
I'm in favor of Dennis's suggestion. OLPC-1; OLPC-2, ... It is 
 simple
and, I argue, unambiguous. The hardware is XO-1, XO-2...

  as perhaps more of an outsider here, i'd say that this is not
  unambiguous.  people with the laptops regularly refer to them
  as my OLPC -- perhaps encouraged by the unfortunate PC in the
  acronym.

  as for numbers:  sequential is good, but starting higher than 1 might
  give room for adding structure later if necessary.  (e.g. the 200 
 series
  of releases might be a break from the 100 series.)

  paul
  =-
   paul fox, [EMAIL PROTECTED] (arlington, ma, where it's  degrees)


 ___
  Devel mailing list
  Devel@lists.laptop.org
  http://lists.laptop.org/listinfo/devel

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel
  

 
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: DBus - Sessionbus rights

2008-04-07 Thread Polychronis Ypodimatopoulos
John (J5) Palmieri wrote:
 Luckily all mail with DBus in the header gets filtered into a single
 folder ;)  Yes spoofing is the answer here (it is sort of like asking
 why can't users create applications that run from /usr/bin though not
 quite exact).  If we allowed users to grab names on the system bus that
 aren't marked as allowed to be used by users they could spoof HAL, the
 datastore or even the bus itself.  Since applications running as root
 also access these services it could be used as an exploit to gain root
 privileges.
This sounds to me like we should not allow the user to run a server on 
_any_ TCP port, because he may spoof an SSH/POP/DNS server. Instead, 
the solution was simply to not allow the user to run servers on ports 
lower than 1000. Even if we fixed this on the XO, my ubuntu distribution 
has the same security policy, so maybe a bug should be filed against DBus?

  In any case the session bus is what you want to use to
 create services other apps (in the session) can use. 
   
In my case, user processes need to have a two-way communication with a 
system process, like having a system process listening on a well-known 
port and user processes register themselves with the system process, 
stating on which port they are listening for data. The user processes 
need not necessarily use a well-known dbus name like 'org.laptop', 
but I could not publish a method (from a user process) on the system bus 
from an address like| :0-31.|


thx
p.

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: DBus - Sessionbus rights

2008-04-07 Thread Polychronis Ypodimatopoulos
John (J5) Palmieri wrote:
 I can't think of a reason to want a system process invoking methods on a
 user process. 
Well, in my case, the system process is the only one having access to 
the network and provides network connections and events to all user 
processes. Sending signals to user processes is a bad choice (although 
this is what I'm doing right now), because it breaks the privacy between 
user processes.

All is not lost. User processes do not necessarily have to allocate a 
well known name, as long as it is possible to export a method from a 
numeric bus address. Is this possible? Example?

Thx,
Pol



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


DBus - Sessionbus rights

2008-04-05 Thread Polychronis Ypodimatopoulos
I've been fiddling with DBus quite a bit lately and I don't really 
understand its default security policy.

The SystemBus is used for communication between processes that belong to 
different users. By default, /etc/dbus-1/system.conf says ...Deny 
everything then punch holes Why do we forbid the default user 
(olpc) by default from advertising processes under a well known name? 
What's wrong with user processes making their presence known on SystemBus?



-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [OLPC Networking] RSSI value questions

2008-04-01 Thread Polychronis Ypodimatopoulos
Ryan,

Like Ben said, inducing the physical layout of the network from metrics 
such as RSSI will give you poor results for various reasons. What 
Space did was to average arrival rates from direct neighbors over a 
long period of time (anywhere between 1 and 10 seconds) to avoid 
highly temporal effects like multipath and noise. Even so, the result is 
only a rough layout of the network. If you'd like to achieve better 
accuracy I thing you should combine other ideas like sound measurements, 
as Ben suggested.

Pol


Benjamin M. Schwartz wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Ryan Crawford Comeaux wrote:
 | I'm looking to build an application through Google's Summer of Code for the
 | school server that uses wireless location detection methods to monitor and
 | approximate the physical location of all nodes within the mesh.
 | Unfortunately, I can't seem to find any information on whether or not the
 | network allows the server to poll nodes within the network for RSSI
 | measurements the nodes have made between themselves and all others within
 | their range.

 I was very interested in this problem as well.  I was told that it was
 impossible for two reasons:

 | Is this something that the networking firmware/drivers even allow?

 1. The firmware dynamically varies the transmit and receive gain to
 minimize power usage and interference, but this information is not
 available from userspace.
 2. Signal intensity is a terribly inaccurate measure of distance, due to
 the complex interference patterns typical of 2.4GHz waves in buildings.

 I am no longer so sure that either of these things is true, but neither am
 I optimistic.  I hope someone else on the networking list can provide a
 better answer.

 | If not,
 | is it functionality that could be requested of Marvell to provide?  If so,
 | how accurate are the RSSI measurements and to what decimal precision are
 | they available?
 |
 | Also, what kind of interest within the community is there for this kind of
 | application, if any?  I think the idea at least has interesting uses as far
 | as securing the network goes, but I'd really like to know what everyone
 | actively using and/or developing for the systems thinks.

 There's definitely a great deal of interest.  The closest thing so far is
 Space: http://web.media.mit.edu/~ypod/mesh/ .  Instead of the analog
 distance measure of RSSI, Space uses the binary measure of whether two
 nodes have a direct connection in the mesh.  I am not sure whether Space
 is still working in recent builds.

 I have worked on http://wiki.laptop.org/go/Distance , an Activity that
 uses sound propagation delay to measure distance between two XOs.
 Distance achieves accuracy on the order of 1 cm, but it is clearly limited
 by its inability to measure through walls.  Also, due to the complicated
 way in which sound propagates, it is unlikely that Distance will ever be a
 good tool for measuring the entire position constellation of a group of XOs.

 If we had control of the wireless firmware, there is perhaps a chance that
 we could use radio propagation delay for distance measurement.  Accuracy
 would be limited by receive jitter, so the minimum expected error would
 probably be at least 3 meters.

 - --Ben
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v2.0.7 (GNU/Linux)
 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

 iD8DBQFH8szwUJT6e6HFtqQRAge7AJ4i7NOqoxIA4lyiuJ8B30nJMsH4igCggJFE
 yFGqTzfIsyGUgrx/yATJWn8=
 =Zsbp
 -END PGP SIGNATURE-
 ___
 Networking mailing list
 [EMAIL PROTECTED]
 http://lists.laptop.org/listinfo/networking
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: OLPC security project

2008-03-28 Thread Polychronis Ypodimatopoulos
Our presence algorithms should be evaluated in terms of security 
(impersonation, dos, mim, etc). A list of vulnerabilities should be 
analyzed and solutions should be proposed. More details will follow if 
interested.

p.

Jeremy Flores wrote:
 Hi all,

 Does anyone know of any security-related projects that need to be worked on 
 for OLPC? I am taking a computer and network security class, and I was 
 thinking that Bitfrost would be an interesting topic for a final project we 
 have. I poked around the wiki, but I couldn't find a security todo list.

 Thanks!
 Jeremy Flores

 [EMAIL PROTECTED]

 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Call for Papers/Talks/Ideas! Update.2 Mini-Conference

2008-03-21 Thread Polychronis Ypodimatopoulos
I sense that this is gonna be a looong thread

C. Scott Ananian wrote:
 On Fri, Mar 21, 2008 at 12:50 PM, Mitch Bradley [EMAIL PROTECTED] wrote:
   
 I think that Update.2 should be about 3 things:
  3) Performance
  2) Performance
  1) Performance
 

 Mechanisms to achieve those performance goals are worthy candidates for a 
 talk!
  --scott

   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Cerebro performance

2008-03-06 Thread Polychronis Ypodimatopoulos
cerebro now offers (in command-line!)
- chat  (just type text in the console)
- file transfer (type in console: /sendfile)
- view of network tree layout
- information about all other nodes in the network (nickname, colors, 
keys, etc)

Performance  (remember that this is a mesh test, no servers were used):

On a total of 10 XOs, I was able to share a 2MB file from one host with 
the remaining 9 hosts (a total of 18MB) in 30 secs (a virtual speed of 
about 4.8Mbits). However, the sender used the broadcast address 
(ff:ff:ff:ff:ff:ff) at 1Mbit!

Because the file was literally broadcasted, most transmissions were 
successfully received at multiple receivers and the virtual speed [1] 
got boosted almost 5 times. The virtual speed should actually be 10Mbits 
(!), so there is plenty of room for improvement.

A test with about 50 nodes will be attempted over the weekend. By adding 
more nodes to the network I expect that overall file transfer 
performance will actually improve even more.

The chat is always available, before, during and after the file transfer.

Cerebro is now ready to be fully tested in command-line. Help is still 
needed to connect with sugar/telepathy!


[1] By virtual speed I mean the speed of a TCP-based unicast transmission.




___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


RPM package for cerebro test

2008-02-26 Thread Polychronis Ypodimatopoulos
http://lyme.media.mit.edu/cerebro/images/Cerebro-24-1.olpc2.noarch.rpm

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


status of project hosting?

2008-02-25 Thread Polychronis Ypodimatopoulos
What is the status of pending project hosting requests?

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Salut and Suspend/Resume issues

2008-02-19 Thread Polychronis Ypodimatopoulos
If the time between a resume and a suspend is shorter than the time 
period between consecutive presence updates (which is several minutes), 
then the presence service should not even know that a suspend happened 
in between. Then why are icons disappearing?

p.



Sjoerd Simons wrote:
 It's avahi that's giving you problems. Or more precisely, it can't cope with
 the fact that during suspend it's essentially deaf.

 If we want to make presence on the local lan work in a way to allow the host
 CPU to sleep most of the time we need both a different presence protocol (some
 people are already working on this). And we need some assistence from the
 wireless card to keep track of presence while the host cpu is asleep.. But i
 don't see this happening soon.

   
 Should we be setting the wireless module to wake on multicast, so that we can
 respond to whatever traffic the presence service is using to see who's
 online?
 

 Yes please do. And if possible only to the multicast traffic the host is
 actually interested in.

 I'm pretty sure i mentioned this before, if you don't wake up on multicast
 traffic your completely breaking the way mdns works. And thus the notions of
 presence in a link-local network. Also if you don't wake up on multicast then
 activities in a local lan will break as they won't receive data and other
 metainformation from other participants.

   
 Should it be using unicast traffic instead?
 
 No

   
 What is it in Avahi's code path that causes its peer list to be emptied on
 resume?
 

 Given that it's long suspends that have this problem. It's probably the fact
 that the TTL for all contacts has run out, that is causing avahi to flush the
 peer list. After which it needs to rediscover all of them. Which is a valid
 thing to do, if you've been away for quite some time you have no idea who is
 still around.

   Sjoerd
   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Salut and Suspend/Resume issues

2008-02-19 Thread Polychronis Ypodimatopoulos
Gianni,

Giannis Galanis wrote:
 In fact the although the requests are every 10min, the icon will hold 
 for 30min in total until it is deleted.
 Bug 5501, however, will delete the entry if within the timeframe, a 
 new host arrives.

Are you saying that you can have stale icons on screen for as long as 30 
minutes?
If this is true, then it defeats the purpose of having a presence 
service in the first place.

p.
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


hosting request: Cerebro

2008-02-14 Thread Polychronis Ypodimatopoulos
1. Project name : Cerebro
2. Existing website, if any : http://cerebro.mit.edu
3. One-line description : Provide scalable presence information 

4. Longer description   : Cerebro will be a plugin to the Presence Service.
: 
: 
:

5. URLs of similar projects :

6. Committer list 
   Please list the maintainer (lead developer) as the first entry. Only list 
   developers who need to be given accounts so that they can commit to your
   project's code repository, or push their own. There is no need to list
   non-committer developers.

  Username  Full nameSSH2 key URL   
 E-mail
    -   
 --
   #1 ypod  Polychronis Ypodimatopoulos  
http://wiki.laptop.org/go/User:Ypod [EMAIL PROTECTED]
   #2 renedsRene De Santiago
 [EMAIL PROTECTED]
   #3
  ...

   If any developers don't have their SSH2 keys on the web, please attach them 
   to the application e-mail.

7. Preferred development model

   [X] Central tree. Every developer can push his changes directly to the 
   project's git tree. This is the standard model that will be familiar to 
   CVS and Subversion users, and that tends to work well for most projects.

   [ ] Maintainer-owned tree. Every developer creates his own git tree, or
   multiple git trees. He periodically asks the maintainer to look at one
   or more of these trees, and merge changes into the maintainer-owned,
   main tree. This is the model used by the Linux kernel, and is 
   well-suited to projects wishing to maintain a tighter control on code
   entering the main tree.

   If you choose the maintainer-owned tree model, but wish to set up some
   shared trees where all of your project's committers can commit directly, 
   as might be the case with a discussion tree, or a tree for an individual 
   feature, you may send us such a request by e-mail, and we will set up the 
   tree for you.

8. Set up a project mailing list:

   [ ] Yes, named after our project name
   [ ] Yes, named __
   [X] No

   When your project is just getting off the ground, we suggest you eschew
   a separate mailing list and instead keep discussion about your project
   on the main OLPC development list. This will give you more input and 
   potentially attract more developers to your project; when the volume of 
   messages related to your project reaches some critical mass, we can 
   trivially create a separate mailing list for you.

   If you need multiple lists, let us know. We discourage having many 
   mailing lists for smaller projects, as this tends to
   stunt the growth of your project community. You can always add more lists
   later.

9. Commit notifications

   [ ] Notification of commits to the main tree should be e-mailed to the list
   we chose to create above
   [ ] A separate mailing list, projectname-git, should be created for commit
   notifications
   [X] No commit notifications, please

10. Shell accounts

   As a general rule, we don't provide shell accounts to developers unless 
   there's a demonstrated need. If you have one, please explain here, and
   list the usernames of the committers above needing shell access.

11. Translation
   [ ] Set up the laptop.org Pootle server to allow translation commits to be 
made
   [ ] Translation arrangements have already been made at ___
   [X] No translations are necessary

12. Notes/comments:

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Salut/avahi/meshview issues

2008-01-30 Thread Polychronis Ypodimatopoulos
Like Michail and Ricardo said, going from a paper publication to an 
actual implementation and also _testing_ of that implementation is a 
very long way. The following factors need to be taken into account when 
comparing various approaches to routing and presence in MANETs:

1) scalability: I would consider broadcasting a special case of 
multicasting and as such I assume this is a O(n^2) approach (this means 
that, on average, there are n packets in the network for each of n nodes)

2) mobility: Requiring our protocol to be able to handle mobile nodes 
eliminates a good portion of the literature for routing in ad-hoc 
networks. AODV is the most widely adopted algorithm for routing in MANETs.

3) simplicity: This is more important than it sounds. This is the factor 
that allows theory to turn into implementation. Multicasting in the mesh 
network does not scale, but it is relatively simple.

My approach to provides presence information for a 100 nodes with a 
total overhead of 120Kbps at the worst case (everybody in range with 
each other, like in the school scenario). For 200 nodes, it would have 
an overhead of up to 240Kbps in the worse case and so on. Time 
resolution is at 10 seconds/hop, so for 5 hops it will take 50 seconds 
for a change to propagate from one side to the other. By doubling the 
time resolution to 20 secs/hop, the overhead gets halved to 60Kbps for 
100 nodes, etc.

The whole implementation is about 700 lines of python code, so this 
should provide a hint about its simplicity. I have implemented both the 
protocol and a simulator that runs multiple instances of the actual 
implementation, just to showcase its actual scalability. The problem is 
that running more than 50 nodes on my Centrino 1.8MHz uses up all 
available processing power and packets start getting dropped.



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Testing the Wireless driver changes

2008-01-17 Thread Polychronis Ypodimatopoulos
Let's not forget the dongles that act as dumb repeaters on their own, 
based on their firmware. Are they gonna use a different firmware instead?

p.

David Woodhouse wrote:
 We should change the firmware so that it isn't active automatically as
 soon as it's loaded -- let the driver activate it when it's appropriate.
 Then the decision as to whether the radio is blocked can properly be
 handled in userspace, and the device can be left quiescent if
 appropriate.

   

-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Cerebro: Scalable presence information

2007-12-31 Thread Polychronis Ypodimatopoulos
Announcing Cerebro - http://cerebro.mit.edu

Cerebro is a scalable, light-weight protocol that allows 802.11b/g 
devices to form a mesh network. Cerebro has the following advantages:

- It provides presence information about 100 nodes using only a single 
frame per 10 seconds, per node.
- It runs on _any_ 802.11b/g device (tested on XO, Ubuntu, Nokia N800)
- It can (but not yet) provide routing information within the mesh 
network that is formed by regular wifi devices.

Demo:

http://lyme.media.mit.edu:8000/

The simulation running here shows 50 simulated nodes and a real one 
(shown in the center of the screen). The nodes within the same group are 
all in range with each other, but each group is not in range with other 
groups. As a result, nodes within the same group are placed close 
together, whereas different groups are placed as far apart as possible. 
All nodes have information about presence and distance for every other 
node.


There are 50 nodes simulated in 8 groups of 5 nodes and 1 group of 10 
nodes. Although the presence algorithm scales quite well, the 
visualization does not scale as well (yet :-). Therefore, only the first 
20 nodes are displayed properly, while the rest are simply put in the 
list on the right.


A sugarized version of the UI will follow soon!

Enjoy!

Pol


-- 
Polychronis Ypodimatopoulos
Graduate student
Viral Communications
MIT Media Lab
Tel: +1 (617) 459-6058
http://www.mit.edu/~ypod/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: is there space for Space for a joyride?

2007-10-29 Thread Polychronis Ypodimatopoulos
about 100kb.

Pol

Bernardo Innocenti wrote:
 Polychronis Ypodimatopoulos wrote:

   
 If there is still interest in the Space activity (layout of tree of 
 neighbors according to distance) entering Joyride, do you need an .xo 
 file or an .rpm?
 

 How big is the bundle?

   
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


is there space for Space for a joyride?

2007-10-29 Thread Polychronis Ypodimatopoulos
If there is still interest in the Space activity (layout of tree of 
neighbors according to distance) entering Joyride, do you need an .xo 
file or an .rpm?

Pol
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Massive mesh view?

2007-10-20 Thread Polychronis Ypodimatopoulos
Representation of massive numbers of XOs in the network is definitely an 
interesting problem. It may be a little early to jump into providing 
solutions, but I dealt with the problem recently while working on my 
space activity, and space itself can be a scarce resource on screen, 
especially if you won't the layout of the icons to make some sense.

Given a standard amount of space (the screen size), one approach is 
resize the icons in order to accommodate more icons on screen. But do we 
just resize all icons equally? I'd say no, because you may want to keep 
close friends at standard icon size and have everybody else shrink 
according to the level of interaction you may have with them. So, one 
size does not fit all.

I would even go as far as to propose a Google Earth approach, where you 
zoom-out above ground and back in to focus on the people you're looking 
for. Also, providing a temperature map of human clusters may be 
another approach. I understand that the processing power required in 
both cases may also be massive and therefore prohibitive, but I just 
meant to layout some ideas.

Pol

Yoshiki Ohshima wrote:
   Thank you, Walter,

   Ah, yes.  I would think that we could emphasize the openness of
 platform so that letting people setup their own Jabber server would be
 one way to go, as it is more likely that the buyers of G1G1 will have
 some other computers.

   Still an SNS system hooked up with laptops ID might be good.
 Customizable SNS engines like OpenPNE could be a good starting
 point to set up something relatively in short time...

 -- Yoshiki

 At Sat, 20 Oct 2007 07:33:09 -0400,
 Walter Bender wrote:
   
 Even outside of the context of the G1G1 program, many of your
 questions are relevant. The current neighborhood view will not scale
 for a large school. We have a number of enhancements to the view  in
 the works, principally filtering. (As Philip mentioned, the friends
 view, to which you invite people, is in essence a filtered
 neighborhood view--there can be many others.) In the context of a
 school or community deployment, there will be multiple Jabber servers,
 but we will also want the Jabber servers to talk to each other at some
 level, so that there are bridges between islands of users. For G1G1,
 there will be a default Jabber server, but undoubtedly more will pop
 up.

 -walter

 On 10/20/07, Yoshiki Ohshima [EMAIL PROTECTED] wrote:
 
   Hello,

   Recently, I talked with some folks who are trying to do promotion of
 the give one get one program, and some issues (all are related) came
 up:

   - How many users can be shown in the mesh view?
   - If you limit the number of buddys on the view, how do you limit?
   - Are we going to have many (jabber) servers for these buyers in the US?
   - Are we going to have an SNS like community so that (for example)
 a set of friends can have a place to find each other easily?

 A senario was that a kid and her niece on the different coasts should
 be able to find each other.

 I don't know if there is plan for these (for the G1G1 program), but
 having an SNS site sounds like a good idea.  The parents will feel
 safer if they know with whom their kids are talking.

 -- Yoshiki
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel

   
 -- 
 Walter Bender
 One Laptop per Child
 http://laptop.org
 
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: slightly long and detailed proposal for documentation-translation workflow

2007-10-16 Thread Polychronis Ypodimatopoulos
heh, I totally agree, but this doesn't mean that there isn't a market 
for a book like that (unfortunately!).

Apart from the fact that some people feel disabled without a book, 
there still is *not* a user-friendly introduction on how to use the 
laptop (let alone how it works) and I doubt that there will be one 
anytime soon because OLPC's primary mission is not to sell the XO in the 
US market. However, I'm afraid that OLPC will have to deal with  
user support! I hate to say this but there were already a couple of 
people visiting the lab, asking about where to buy the laptops and 
whether they're good for their needs.

Pol

Mitch Bradley wrote:
 At the current rate of XO software churn, any printed book will be 
 obsolete/inaccurate before the ink is dry.

 Todd Kelsey wrote:
   
 I have been struggling with my literary agent and trying to knock 
 someone over the head with a wet noodle into realizing that there 
 *will* be a market for a book, and trying to suggest going with an 
 e-book, with editorial support from a publisher, put it on amazon, 
 develop the whole thing in a robust authoring cms so updates and 
 multilingual versions can be easily made. one publisher responded with 
 fear, blah blah blah, and I made an attempt to provide rationales 
 (including insights from Wikinomics, which has helped me to be able to 
 articulate some of the value propositions), but I'm 2 degrees away 
 from throwing in the towel, and inviting whoever wants to join me in 
 making a multimodal community book. then maybe when the publishers 
 wake up they could license it and use their distribution channels to 
 put it in stores.

 I don't know if the publishers realize how cool the little green xo is 
 as a way for people to get acquainted with Linux.

 Ok I'm throwing in the towel. We could call it the Hitchhiker's Guide 
 to the Laptop. I don't care what the title is. The community could 
 name it, write it. If anyone is interested in helping learners who 
 desire a book to get acquainted with the very wonderful work you are 
 doing, please feel free to get in touch.

 Maybe the proceeds from the book could go towards a series of laptop 
 libraries where the laptops could be checked out by kids.

 I guess in the same time it took to write this email I could have 
 written a wiki page.

 On 10/16/07, *Steve Fullerton* [EMAIL PROTECTED] 
 mailto:[EMAIL PROTECTED] wrote:

 Good points.  The OLPC is designed around collaboration.  The
 model really works well where every child in a class has his/her
 own laptop, uses it in and out of school, and lives in close
 enough proximity to other class members to make the Mesh work.  In
 class one kid discovers how to do something and teaches the other
 kids (and teachers as well).

 In an address at Harvard Law, Negroponte said something like:
 People ask me who is going to teach the teachers to teach the
 children how to use the XOs  --- and I wonder what planet are they
 on? ...

 A child who gets one through G1G1 in isolation will not be able to
 fully benefit from collaboration and thus, along with
 parent/tutor, would definately benefit from user documentation in
 lieu of help from others in class.  Likewise, the Carlos Slims
 approach of putting them in Mexican libraries.

 If G1G1 goes big-time in November, you can sure bet that there
 will be OLPC for Dummies books, etc. by Christmas.

 On 10/15/07, *Todd Kelsey * [EMAIL PROTECTED]
 mailto:[EMAIL PROTECTED] wrote:

 I am amazed and inspired by all the wonderful projects and
 activities that have arisen from the laptop project -- and
 though I was skeptical at first, I have also come to
 appreciate the constructivist approach to education; I didn't
 get it until I came to appreciate the notion of allowing
 children to come to aha moments on their own. The fact that
 children do fine without manuals at the present level of
 interaction is a testament to the design of the computer and
 the philosophy behind it. As generation xo grows older, I
 think they will want to get deeper into the systems, and as
 they do, I think they will want more information, and I'd like
 to help make that freely available.

 I think a user manual or documentation will be more helpful
 for adult learners who will end up participating in the laptop
 community, and who would find it helpful to have something to
 refer to. Perhaps users could learn many things simply by
 exploring, and yet they might appreciate having something to
 turn to. Other people may not have personal possession of a
 laptop, but would be interested in learning how they could
 support the project. Some people who order the laptops through
 www.xogiving.org http://www.xogiving.org will get frustrated
 with the laptop if 

[Fwd: [msgs] Teach anything you want!]

2007-10-16 Thread Polychronis Ypodimatopoulos
Not sure if this is relevant, but maybe someone would like to showcase 
the XO there? I may have an hour or two to spare on that weekend, but no 
more than that. Please forward freely and let me know.

Pol

 Original Message 
Subject:[msgs] Teach anything you want!
Date:   Tue, 16 Oct 2007 19:10:52 -0400 (EDT)
From:   Catherine Havasi [EMAIL PROTECTED]
To: [EMAIL PROTECTED]



I know a lot of people in the lab teach for Splash - 
which is a one weekend program where you can teach a 
class on anything you want to high school and middle 
school students in the Boston area.  It's a very low 
time commitment opportunity and is a lot of fun.

Email me with questions.
- Catherine

---
Are you interested in things?

Then inflict your interests on high school students by teaching  Splash
2007!

Splash is a weekend-long program on November 17-18 where you can teach 
ANYTHING you want to high school students. Quantum mechanics, speaker 
building, origami, duct tape design, tissue engineering...everything is 
fair game.  Your class can be as large or as small as you want and can 
last anywhere from 1-5 hours. Just register your class, and you're free to 
delve into your favorite topics with bright high school students from all 
over the area.

If you're not sure what to teach, come to the ESP office (W20-467) at 6pm 
on wednesday; we'll have a group brainstorming session.

For more information, go to esp.mit.edu, then register your Splash class BY
OCTOBER 20th at http://esp.mit.edu/teach/Splash/2007/teacherreg/.

See you there!

Stephanie Bachar
___
msgs mailing list
[EMAIL PROTECTED]

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Wireless porting

2007-10-12 Thread Polychronis Ypodimatopoulos
Hi,

What platform do you plan to port the driver to?

Pol

Alex Gibson wrote:
 To Jim , Walter, Ivan and others

 We (UTS) sent a proposal on doing the wireless driver porting to you a 
 fortnight ago and
 we are still yet to here from you.

 Can you please confirm that you received it or not.
 If not what address/es are best to re-send it to.

 Thank you


 Alex Gibson
 Technical Officer
 Faculty of Engineering
 University of Technology Sydney
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel
   
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [OLPC Networking] Wireless porting

2007-10-12 Thread Polychronis Ypodimatopoulos
Aaron,

Thanks! The irony is that I only did the sugar activity to showcase my 
algorithm, not to design a new neighborhood interface. Actual face 
pictures are another add-on I have in mind (we do have a camera 
available ;-)). Walter Bender also suggested customized XO icons that 
look bored, happy, sleepy... you get the idea.

For the porting part, I would like to have the driver on ARM processor. 
I think it makes sense for portable devices to be able to communicate 
with XOs over the mesh.

Pol


Aaron Kaplan wrote:

 very interested over here as well...
 Would it be out of the way to post the original proposal?



 BTW - on a side note: polychronis: great work with the mesh view!
 Simon Dorner mentioned that having small faces of the kids in the mesh 
 view would be even better.
 Humans tend to remember faces much better than Xo signs with 
 different colors.

 best,
 aaron.


 On Oct 13, 2007, at 1:12 AM, Polychronis Ypodimatopoulos wrote:

 Hi,

 What platform do you plan to port the driver to?

 Pol

 Alex Gibson wrote:
 To Jim , Walter, Ivan and others

 We (UTS) sent a proposal on doing the wireless driver porting to you a
 fortnight ago and
 we are still yet to here from you.

 Can you please confirm that you received it or not.
 If not what address/es are best to re-send it to.

 Thank you


 Alex Gibson
 Technical Officer
 Faculty of Engineering
 University of Technology Sydney
 ___
 Devel mailing list
 Devel@lists.laptop.org
 http://lists.laptop.org/listinfo/devel

 ___
 Networking mailing list
 [EMAIL PROTECTED]
 http://lists.laptop.org/listinfo/networking


 ---
 there's no place like 127.0.0.1



___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Alternative neighborhood in mesh networks

2007-10-10 Thread Polychronis Ypodimatopoulos
Announcing Space, an activity that displays an alternative mesh 
network neighborhood that offers a sense of space by placing you in the 
center and everyone else in the mesh network at a distance proportional 
to link quality between you and the node that is being displayed.

http://web.media.mit.edu/~ypod/mesh/

Pol
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: Alternative neighborhood in mesh networks

2007-10-10 Thread Polychronis Ypodimatopoulos
Hi Cris,

No it does not rely on any subsystems of the firmware or sugar (other 
than getting the XO's color settings). :-)

Pol

Chris Ball wrote:
 Polychronis,

 Announcing Space, an activity that displays an alternative mesh
 network neighborhood that offers a sense of space by placing you in
 the center and everyone else in the mesh network at a distance
 proportional to link quality between you and the node that is being
 displayed.

 http://web.media.mit.edu/~ypod/mesh/

 Wow, this looks great.  Does it rely on the mesh beacons from each
 laptop, though?  I think we're about to turn those off -- see:

https://dev.laptop.org/ticket/2750#comment:4

 - Chris.
   
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


mesh driver in ubuntu

2007-09-26 Thread Polychronis Ypodimatopoulos
I have Ubuntu 7.04 with 2.6.20-16 and want to use the 8388 USB module
with my system. I guess I either need to jump to 2.6.22, or compile the
driver for 2.6.20. I would prefer the second as the upstream version of
the driver does not come with all the features I need. So, do I just get
the driver and compile it? Any directions on the wiki?

thanks,
p.

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


BIOS prompt at q2c25 + B2?

2007-08-23 Thread Polychronis Ypodimatopoulos
How do I enter the BIOS prompt on q2c25?
It seems I can no longer use ESC tryied other buttons too
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel