I've uncovered a troubling performance symptom that I believe is
related to relayd's "check script" functionality.

The system is a Dell R710 with 12GB RAM and 10Gb interfaces.  The
problem is that when relayd is running with redirects that uses the
check script functionality, performance of the interface drops around
30% while the check script is running.

I ran the tests in an offline configuration so no other traffic could
be a factor ( test1 <--> OpenBSD <--> test2 ).  Tests were performed
using the nuttcp tool and both servers ( test1 & test2 ) pull
line-rate 9.912Gbps when connected back-to-back.  When run through the
OpenBSD firewall, regardless of PF rules, the rate drops to 7.25Gbps
when the script runs.

At first I thought it was my script but I replaced my script with
'true', 'false' and the problem still remained.  I've validated that
this exists in versions 4.8 through 5.1.   I've also tried looking at
the relayd code but it seemed like a reasonable exec call.  I can't
seem to understand why a running script would cause a network
performance drop.  I would also bet that this only noticeable over
10Gb interfaces.  Nevertheless, with check script running every 15
seconds we've succumbed to an overall drop in network performance.

Any insight or direction would be greatly appreciated.

Bennett

Reply via email to