On Wednesday, April 21, 2004, 2:01:16 AM, Scott Truman wrote:
I would have thought that a bit masked record was faster, as you already have all the data you need with the first call. From then on bitwise CPU operations would be umpteen times faster than performing slower DNS callouts, even if they are cached. I am assuming, however, that perhaps the Spamassassin code 'caches' the first A record lookup for bitwise operations...I am not too familiar with the eval-rbl workings. It may be that it performs subsequent DNS lookups in either case? The only way to speed that up would be to load the first lookup into a variable for use in later bitwise calculations...
Yes, you're right bitwise operations should be really fast.
I suppose the only downside is readability, but Sidney makes some interesting arguments against that.
Does the bitwise approach only allow use of the last octet of the ip address ? If so, that would limit you to a maximum of 8 merged "sources" of matches that could be distinguised. Probably not a problem in practice, but still a theoretical downside.
On the other hand, assuming that more than the last 8 bits could be used, a reasonably large number of sources would be a lot more compact with the bitwise approach, although it would place a definite limit on the maximum number...
Regards, Simon