Re: batman-adv: design suggestions

From: Marek Lindner
Date: Sat Aug 14 2010 - 10:59:44 EST


On Friday 13 August 2010 20:18:33 Vasiliy Kulikov wrote:
> d) Why do you send icmp TTL exceeded for the icmp itself? E.g. in case
> of loop or/and small default TTL you'll probably get a storm of icmps.
> Exactly in this case IP silently drops TTL exceeded icmps ;)

These layer2 icmp packets are not ordinary icmp packets. We needed to provide
a mechanism to make the network topology visible to debug tools like ping or
traceroute which normally "see" no more than one hop as they operate on
layer3. Hence, batman-adv does not send an icmp packet for each payload TTL
exceeded but for traceroute only. I recommend reviewing the traceroute code to
understand how this is supposed to work:
http://www.open-mesh.org/browser/trunk/batctl/traceroute.c

I'd be interested to learn about a problematic scenario in which this
mechanism breaks.

Regards,
Marek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/