Friday, December 5th

6.22.05

m0n0wall and polling

Being the m0n0wall advocate I am, I wanted to share a pretty sweet update in the new beta release. Polling.

Polling, what's that? Well, the new beta versions of m0n0wall now run on the 4.11 kernel (the heart of this operating system) version of FreeBSD (the heart of m0n0wall) and has polling compiled into the kernel. For the sakes of being repetitive, here is a short description of what it does.

Device polling (polling for brevity) refers to a technique that lets the
operating system periodically poll devices, instead of relying on the
devices to generate interrupts when they need attention.

So, you may ask, "why is this any concern to me, the average m0n0wall user?" Well, the more time the router's CPU is spending processing interruptions, the less time it is spending processing packets: IE...less packets = lower throughput speed. Typical Interweb connections won't see this issue, but high traffic enviroments like file transfers between a LAN and DMZ can take a significant performance hit.

By enabling polling, the CPU is free(er) to simply process packets because it is scheduled to look for packets at preset intervals. My test results are as follows:

Polling disabled - ~45mbps
Polling enabled - ~75mbps

DMZ to LAN throughput - polling disabled
First portion was a bi-directional test. The last little bit was DMZ to LAN only.

My m0n0 boxen:
PII 350 MHz
128 meg RAM (PC100)
WAN interface - Netgear FA310-TX (dc driver)
LAN/DMZ interfaces - Dual interface Intel Pro/100 (fxp driver)

Posted by danne 4:31 pm in networking | 1 person viewing

0 ramblings so far

name

email - addresses are never displayed

URL - auto linked

add:

comments - comment policy