Hi!

We are using OLSR in our wlan ljubljana open wireless network
(http://wlan-lj.net/) so please forgive me that I am not really
accustomed with Babel but I am researching a little how different
protocols calculate ETX and how they make a routing decision based on
it.

Somehow I see that protocols tend to differ how they measure packet
loss of links and how to determine network topology itself, how (and
how fast) they react to changes, but analysis of this data, models
they are using to predict future link behavior (what routing protocol
in fact is - a predictor which try to predict best route), are quite
simple and very often just a search for shortest path in a graph.

>From my experience I find this quite unsatisfactory as in a network
with different kind of links (WiFi, ethernet, tunnels) packet loss
itself is far from only factor influencing path performance. And even
packet loss is used in a strange way. If packets loss is 1 minus a
probability of packet being successfully transferred over a link then
probability of a packet being successfully transferred over a path is
a product of this probabilities. But in both OLSR and Babel ETX are
summed together. Which does not have really a theoretical reason/model
behind it (except of a similarity to (historical) routing protocols
which are minimizing hops)? Or it does?

I find it that it mostly works because we are using WiFi links where
there is a hidden cost added to using a given link: that neighboring
nodes have to stay quiet. It is in some way a half-duplex link. And
this is why every hop "costs" (except for latency it also introduces).

But it is a broken model to start with. I think that a better model
should include:

- packet loss (and packet loss along a given path)
- half-duplex/full-duplex nature of a link (or a hidden cost on using
the link on neighboring nodes)
- bandwidth limits on a link
- links where packet loss is a function of bandwidth use

Also using all this data should not be simple calculation of a ETX and
then searching for a shortest/less costly path but some combination of
direct values. For example, routing protocol should be able to make
asymmetric routes. Even more, it should probably be able to distribute
packets over multiple links (which often exists in mesh networks)
using information from bandwidth available on links.

So I would like to know if there are any plans/ideas (or maybe there
is already this) for such ETX metrics in Babel? As I understand Babel
specially treats ethernet links but this is not something which would
be just a special case of determining link quality/nature? How does it
determine if a link is an ethernet link? Babel does not do load
balancing routes? Does it support asymmetric links?

As I understand currently it is possible to define your own ETX
metrics but I do not see a clear way of adding bandwidth information
to ETX without also changing the way (not just shortest path) routes
are calculated.


Mitar

_______________________________________________
Babel-users mailing list
Babel-users@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/babel-users

Reply via email to