Re: [OLPC-AU] limits on ad-hoc connections

2012-02-09 Thread Daniel Drake
On Wed, Feb 8, 2012 at 10:59 PM, James Cameron qu...@laptop.org wrote:
 No, that's not how ad-hoc works.  I'll simplify and translate for you.

Your explanation is correct but doesn't exactly match the buggy
behaviour of our wireless hardware/firmware. As far as I can tell, the
ad-hoc nodes in our setup make no attempt to synchronize
clocks/beacons, nor do they stop transmitting their own beacons in the
presence of another node transmitting beacons too. I guess this is why
our ad-hoc networks perform slower and less reliably than the XO-1
mesh, which at least had synchronization.

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


Re: [OLPC-AU] limits on ad-hoc connections

2012-02-08 Thread James Cameron
On Wed, Feb 08, 2012 at 10:16:53PM +1100, Sridhar Dhanapalan wrote:
 Ad-hoc connections only scale to a limited number of participants
 before problems begin to occur.

What are the problems you observe?  It may be that the problems you
observe are not due to the ad-hoc network, but due to something else as
well.

 What would be the maximum number of participants that an ad-hoc
 network can reliably handle?

There's no maximum that I know of.  A well placed set of laptops that
can hear each other, with no outside noise, can operate an ad-hoc
network to a quite large size.  One node will be the beacon.

Once you place traffic on the network, things will slow down.  Once the
slow down is enough, certain applications may fail.

 Can we impose a hard limit on the number of clients to prevent too
 many XOs connecting to a single ad-hoc session?

No, there is no control for that as far as I know.

-- 
James Cameron
http://quozl.linux.org.au/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [OLPC-AU] limits on ad-hoc connections

2012-02-08 Thread James Cameron
On Thu, Feb 09, 2012 at 03:11:42PM +1100, Sridhar Dhanapalan wrote:
 Hmm I am thinking that my understanding of the ad-hoc implementation
 might be incorrect.
 
 I was under the assumption that one XO acts as the ad-hoc host, and
 the others connect to it. That made me wonder whether that host could
 limit how many clients connect to it.

No, that's not how ad-hoc works.  I'll simplify and translate for you.

In an 802.11 wireless ad-hoc network, each node has the duty and right
to be the beacon, especially if there is no other beacon heard.

The beacon is used for timing the transmissions, so that they occur in
empty time.  Transmissions that occur simultaneously would interfere
with each other, and the receivers would be more likely to miss them.

Always, the first node to begin an ad-hoc network begins by being the
beacon.

If a node cannot hear a beacon, then after a very short while it will
try to become the beacon.  In effect, they compete for the job, in a
psuedo-random fashion.

This is implemented in the wireless device firmware, not in the host,
not in the CPU, not in the kernel, not in the user-space networking
tools.

If a cluster of XOs that have formed an ad-hoc network, are slowly
spread out physically, then eventually the responsibility for beacon
should tend to be in the centre of the cluster.

If a cluster of XOs is split in two, and the two groups slowly moved
apart from each other, then eventually two beacons will be active and
there will be two networks.

References:

http://en.wikipedia.org/wiki/Timing_Synchronization_Function_%28TSF%29
http://en.wikipedia.org/wiki/Beacon_frame
http://en.wikipedia.org/wiki/Traffic_indication_map

(ad-hoc is IBSS)

-- 
James Cameron
http://quozl.linux.org.au/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [OLPC-AU] limits on ad-hoc connections

2012-02-08 Thread Martin Langhoff
To expand on James' excellent notes...

On Wed, Feb 8, 2012 at 11:59 PM, James Cameron qu...@laptop.org wrote:
 The beacon is used for timing the transmissions, so that they occur in

And that is _all_ it can do. It just broadcasts a beacon, like a
metronome for a band recording in a studio.

 This is implemented in the wireless device firmware, not in the host,
 not in the CPU, not in the kernel, not in the user-space networking
 tools.

In other words, in practice we can't patch it to be smarter.



m
-- 
 martin.langh...@gmail.com
 mar...@laptop.org -- Software Architect - OLPC
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel