Avahi optimisations
Sjoerd Simons
sjoerd at luon.net
Mon Feb 25 12:08:11 EST 2008
Hi,
As a result of a talk of Jim, Lennart and some Collabora folks at LCA there
were some suggestions how one could potentially optimise the network load of
avahi. See the commented list below :)
* play around with the announce intervals, RR TTLs and stuff
- We already changed the hostname RR interval from 2 minutes to 10 minutes.
Upping it even more probably won't make a significant change in the
traffic levels, but makes the time before avahi detects a node is gone
even longer.
* minimize announced services (starting with dropping _workstation._tcp)
- Dropping _workstation._tcp can be done by setting
publish-workstation=false in the avahi config. This is the only
redundant service we announce. As this is never resolved the impact of
this change will be quite small.
* Minimize size of announced services (i.e. drop unnecessary data from TXT)
- The biggest item in the TXT of contacts is the key (which is BIG). But
this key is a requirement of bitfrost, so we can't get rid of it.
* Change timers to give avahi more time to accoumulate and collapse RRs
- Quite some protocol/traffic analysis needs to be done for this one. And
i'm afraid the potential rewards are quite small.
* Play around with the code that inserts additional data into packets.
- According to lennart avahi inserts both the TXT and the SRV record when
one requests a PTR record as it's quite common to request this
information afterwards. I don't remember seeing this behaviour in
network traces, so this needs to be verified. If it's the case, this
might save a reasonable amount of traffic as our TXT record is huge.
Of course, more potential optimisations might be discovered by doing analysis
of the network traffic. But i'm personally afraid that these will take a huge
amount of effort for at best moderate gains (Assuming no glaring bugs in
avahi)
Sjoerd
--
Wisdom is knowing what to do with what you know.
-- J. Winter Smith
More information about the Devel
mailing list