On Tue, Jul 19, 2016 at 08:59:01AM +0200, Sven Eckelmann wrote:
On Dienstag, 19. Juli 2016 08:29:07 CEST Linus Lüssing wrote:
What do you think about doing the same in batman-adv? That is, only updating, but not creating DAT cache entries from IP traffic. That should get rid of the main two concerns, accidentally snooping routed IP traffic and performance implications, shouldn't it?
You have to snoop the traffic anyway and search in the dat cache for each(?) packet. And the DAT cache is distributed. So why would it avoid the performance implications?
I was talking about the local DAT cache. Not the DHT. Antonio and I were thinking about a ratelimited DHT_PUT, too, but he wanted to give it some further thoughts. No DHT_GET involved.
Also, Andreas already took care that the snooping code only uses stack and not heap memory. No pskb_may_pull, just skb_head_pointer()s. So if we were removing the DAT entry creation, then there'd be no more kmalloc()'s.
A hashmap lookup in the local DAT cache shouldn't be that costly either, should it? (and we are doing one such lookup for the originator and translation table each already anyway)
Regards, Linus