[bind10-dev] Suboptimal way of splitting XFR-out to messages
Mark Andrews
marka at isc.org
Tue Dec 6 08:32:00 UTC 2011
In message <20111206065800.GA17317 at x27.adm.denic.de>, Peter Koch writes:
> On Tue, Dec 06, 2011 at 10:29:04AM +1100, Mark Andrews wrote:
>
> > Additionally using messages sizes large than 16K by itself lead to
> > sub-optimal compression as only the first 16K is available as targets
> > of compression pointers. If you want to have optimal compression
> > you need to start a new message whenever the message overhead is
> > less than what is lost due to not having a compression target
>
> true, but given that with new (and upcoming) RR types, the only available
> compression target will be the owner name (as per RFC3596(bis)), and
> (bravely) assuming that most zones have kind of a flat internal
> structure(*), not sure what this optimal compression is going to achieve.
You only need two or three records at a name to have missed 12 bytes
once you go over 16K. With a signed zone you are going to have at
least 4 records at a name (non-delegation centric). Even if that
name has a label on length 1 that 6 bytes as you have missed 3 compression
pointer uses. It doesn't take many records before it would be better to
be in a new message.
> However, the difference might be bigger for large delegation centric
> zones with (as of today) short $ORIGINS, paired NS RRs and NS RR 'DNAME'
> available as a compression target. Then again, if the XFR travels
> along an encrypted channel, the final gain achieved by DNS level
> compression might be even less significant.
Only if it is a compressed encrypted channel. A plain encrypted channel
will likely inflate the number of bytes.
--
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: marka at isc.org
More information about the bind10-dev
mailing list