PFSenseDevWiki : Tuning

PfSenseDevHome :: Categories :: PageIndex :: RecentChanges :: RecentlyCommented :: Login/Register

Tuning a full installation


By default we tune the net.inet.ip.intr_queue_maxlen sysctl to 50. Starting with 1.2-RC2 we automatically bump this value to 1500 but this requires a re installation or a manual change to /etc/sysctl.conf.

This will show the current setting:

sysctl net.inet.ip.intr_queue_maxlen

However, in largely loaded installations this may not be enough. Here is how to check.

sysctl net.inet.ip.intr_queue_drops

If the above shows values above 0, try changing net.inet.ip.intr_queue_maxlen *2.

For example: sysctl net.inet.ip.intr_queue_maxlen=3000

Keep performing the above until you find the sweet spot.

Afterwards, edit /etc/sysctl.conf and add the value to it:

IE (without the sysctl )

net.inet.ip.intr_queue_maxlen=3000

Wrap tuning and polling


(As always, make backups of these files before you proceed)

If you are running on embedded platforms, start of by issuing the command: /etc/rc.conf_mount_rw
And when you are done editing files, issue the command: /etc/rc.conf_mount_ro
This is only needed for embedded platform !

If you are using the webConfigurator, simply visit Diagnostics, Edit File which does the above for you.

edit /etc/sysctl.conf to look like this:


# Do not send RSTs for packets to closed ports
net.inet.tcp.blackhole=2
# Do not send ICMP port unreach messages for closed ports
net.inet.udp.blackhole=1
# Generate random IP_ID's
net.inet.ip.random_id=1
# Breaks RFC1379, but nobody uses it anyway
net.inet.tcp.drop_synfin=1
net.inet.ip.redirect=0
net.inet.tcp.syncookies=1
net.inet.tcp.recvspace=65228
net.inet.tcp.sendspace=65228
net.inet.ip.fastforwarding=1
net.inet.tcp.delayed_ack=0
net.inet.udp.maxdgram=57344
kern.ipc.maxsockbuf=2097152
kern.ipc.somaxconn=1024
kern.polling.burst_max=1000
kern.polling.each_burst=120
kern.polling.idle_poll=1
kern.polling.user_frac=5
kern.polling.reg_frac=50
kern.polling.enable=1


Edit /boot/loader.conf to look like this:

autoboot_delay="3"
loader_color="YES"
mfsroot_load="YES"
mfsroot_type="mfs_root"
mfsroot_name="/boot/mfsroot"
hw.ata.atapi_dma="1"
hw.ata.ata_dma="1"
hint.acpi.0.disabled="1"
hint.apic.0.disabled="1"
kern.hz="532"

NOTE! If you are on a embedded platform, run /etc/rc.conf_mount_rw to mount the image RW and then run /etc/rc.conf_mount_ro after making the changes or use the Diagnostics -> Edit file feature of the webConfigurator which does this automatically.

Some of these settings might not be neccessary but i included everything we did to increase performance on the WRAP we tested with.

Tests where done with netio.

FreeBSDTuning

There are no comments on this page. [Add comment]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki 1.1.6.3
Page was generated in 0.0427 seconds