Salut/avahi/meshview issues

Polychronis Ypodimatopoulos ypod at
Wed Jan 30 17:17:35 EST 2008

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.

More information about the Devel mailing list