See this code in github,
where I’ve implemented zipping DNS messages.
A modified q prints the compression rate at the first line. It only shows
how much compression you would get when you compress the answer.
For compression we use DEFLATE as described in RFC 1951. A typical example:
q @open.nlnetlabs.nl MX miek.nl
;; Uncompressed/Compressed 253/142 (1.781690)
;; bla bla bla bla
That’s not bad a compression factor of almost 1.8! Some more examples: