Avahi optimisations

Jim Gettys jg at laptop.org
Mon Feb 25 12:21:22 EST 2008


On Mon, 2008-02-25 at 18:08 +0100, Sjoerd Simons wrote:
> 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.

How much of the traffic is the key? 

> 
>    * 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.

We're setting up to get data more routinely; hopefully we'll have some
this week.

> 
>    * 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)

I also note we do nothing regarding suspend/resume and adjusting
timeouts properly, per the mdns spec.  Do you have a feel for what the
effect of implementing that there would be?
                             - Jim

-- 
Jim Gettys
One Laptop Per Child





More information about the Devel mailing list