> As Marek pointed  out, you told batman-adv that the  eth0 interfaces have for
> some reason a link speed of 0.1 [Mbit/s] (or 1 [100Kbit/s] - what the actual
> unit is for B.A.T.M.A.N. V). And unfortunately, 88% (for the hop penalty) of 1
> [100 Kbit/s] is in integer arithmetic 0 [100 Kbit/s]. And 0 whatever/s is just
> discarded by B.A.T.M.A.N. V [1] and not considered for routing traffic - hey,
> this path ends up as being 0 and therefore useless.
> The reason why you want to set the link to 1 [100 Kbit/s] has to be figured
> out by yourself. But for a (during forwarding) strictly monotonic decreasing,
> integer value, it is a bad starting point to set it to 1 [whatever-unit] for a
> multi-hop setup.

I have three interfaces on each node:
eth0 - radio modem, speed 145 kbit/s (see desiription below)
eth1 - ethernet, speed 100mbit/s
eth2 - radio modem 10kbit/s (hasn't been tested yet)

I have to say few words about radio modems. Radio modem is not builtin
device with special driver, it is separate machine with linux which
set up as bridge and connected to node by ethernet. This means node
can send data to modem with 100mbit/s, and think that all is ok but
data will dropped on modem side, it will not call netif_stop_queue, or
something on node side.

All tests I have been making were with eth0 and eth1 because eth2
doesn't ready yet.

---
FIRST test conditions:
 - All 3 nodes see each other
 - Both interfaces added to batman network
 - no throuthput override

FIRST test steps:
 - Turn on all nodes and setup batman - All nodes see each other.
Route goes via eth1
 - Switch off eth1 (plug off ethernet cable) - Route switches to eth0,
all nodes see each other
 - Switch eth1 on - Unstable behavior: sometimes route switch back to
eth1, but sometimes - not
---
SECOND test conditions:
 - All 3 nodes see each other
 - Both interfaces added to batman network
 - eth0 throuthput override set to 100, eth1 throuthput override set to 100000

SECOND test steps:
 - Turn on all nodes and setup batman - All nodes see each other.
Route goes via eth1
 - Switch off eth1 (plug off ethernet cable) - Route switches to eth0,
all nodes see each other
 - Switch eth1 on - Route switch back to eth1, works as expected
---
THIRD test conditions:
 - Node 1 And Node3 see only node 2, but not each other on eth0. All 3
nodes see each other on eth1
 - Both interfaces added to batman network
 -  no throuthput override

THIRD test steps:
 - Turn on all nodes and setup batman - All nodes see each other.
Route goes via eth1
 - Switch off eth1 (plug off ethernet cable) - Route switches to eth0,
ALL NODES SEE EACH OTHER (this means speed 145 kbit/s enough to route
through Node 2)
 - Switch eth1 on - Unstable behavior sometimes route switch back to
eth1, but sometimes - not
---
FOURTH test conditions:
 - Node 1 And Node3 see only node 2, but not each other on eth0. All 3
nodes see each other on eth1
 - Both interfaces added to batman network
 - eth0 throuthput override set to 100, eth1 throuthput override set to 100000

FOURTH test steps:
 - Turn on all nodes and setup batman - All nodes see each other.
Route goes via eth1
 - Switch off eth1 (plug off ethernet cable) - Route switches to eth0,
But Node 1 and Node 2 see only Node 3 for the reasons you described
above.
 - Switch eth1 on - Route switch back to eth1, works as expected
---
Summary: If I don't set override throughput, batman doesn't switch
back to ster eth0, but if I set it, retranslation doesn't work
properly.
I believe, I should tweak batman and I whould be happy if you say how.

Reply via email to