• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

Net.inet.ip.fastforwarding performance tweak

General pfSense Questions
5
8
16.1k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G
    gridrun
    last edited by Jan 14, 2013, 7:43 PM Jan 14, 2013, 7:08 PM

    A while ago, I found that enabling net.inet.ip.fastforwarding would greatly aid with openVPN throughput of a pfSense virtual machine.
    As a side effect, the setting also lead to a significant decrease in CPU load. Detailed info over here: http://forum.pfsense.org/index.php/topic,47567.0.html

    I can now confirm that the setting also reduces CPU load on ALIX based pfSenses:

    Didn't bother to mark the point when I enabled the setting, as it's pretty obvious from the above graphs.
    So far, I discovered no ill side effects on the ALIX hardware either. One pfSense user however reported fastforwarding related difficulties with remote printing.
    Some descriptive information about net.inet.ip.fastforwarding can be found in: http://lists.freebsd.org/pipermail/freebsd-net/2004-January/002534.html

    I have no data on openVPN performance so far, because I don't use that on the Alix here.

    Tech stuff on my blog: http://niston.wordpress.com

    1 Reply Last reply Reply Quote 0
    • S
      stephenw10 Netgate Administrator
      last edited by Jan 14, 2013, 7:35 PM

      Wow, I had not read that thread (or maybe I forgot about it  ::)). That's a massive performance increase, makes me want to run some tests immediately.

      Steve

      1 Reply Last reply Reply Quote 0
      • G
        gridrun
        last edited by Jan 14, 2013, 7:50 PM

        Yes, please do and report back your findings :)

        Tech stuff on my blog: http://niston.wordpress.com

        1 Reply Last reply Reply Quote 0
        • N
          Nachtfalke
          last edited by Jan 14, 2013, 9:01 PM

          Will this improve performance on normal routing ?
          Are there any side effects ?
          What is this option doing exactly ? Anything to read about that ?

          1 Reply Last reply Reply Quote 0
          • C
            cmb
            last edited by Jan 14, 2013, 9:02 PM

            It'll break IPsec for sure, and potentially other things, which is why we don't enable it by default.

            1 Reply Last reply Reply Quote 0
            • D
              dhatz
              last edited by Jan 14, 2013, 10:36 PM

              @gridrun:

              A while ago, I found that enabling net.inet.ip.fastforwarding would greatly aid with openVPN throughput of a pfSense virtual machine.

              I wonder if it's still a problem with the newer FreeBSD 8.3 kernel used by pfsense 2.1-BETA

              I would also imagine that FreeBSD kernel developers might be interested to look into this, as both OpenVPN and VMware are very widely deployed.

              1 Reply Last reply Reply Quote 0
              • S
                stephenw10 Netgate Administrator
                last edited by Jan 14, 2013, 10:54 PM Jan 14, 2013, 10:47 PM

                Reporting back. I ran some tests on my home box with iperf. The box is a Pentium4-M underclocked to 1.2GHz via a low FSB. Not a fast machine!

                I tested first using the iperf server in the pfSense box.
                No fast fowarding:

                C:\Temp>iperf -v
                iperf version 1.7.0 (13 Mar 2003) win32 threads
                
                C:\Temp>iperf -c 192.168.2.1 -t 30
                ------------------------------------------------------------
                Client connecting to 192.168.2.1, TCP port 5001
                TCP window size: 8.00 KByte (default)
                ------------------------------------------------------------
                [1912] local 192.168.2.22 port 1907 connected with 192.168.2.1 port 5001
                [ ID] Interval       Transfer     Bandwidth
                [1912]  0.0-30.0 sec  1.07 GBytes   306 Mbits/sec
                
                

                With fast forwarding:

                
                C:\Temp>iperf -c 192.168.2.1 -t 30
                ------------------------------------------------------------
                Client connecting to 192.168.2.1, TCP port 5001
                TCP window size: 8.00 KByte (default)
                ------------------------------------------------------------
                [1912] local 192.168.2.22 port 2127 connected with 192.168.2.1 port 5001
                [ ID] Interval       Transfer     Bandwidth
                [1912]  0.0-30.0 sec  1.04 GBytes   297 Mbits/sec
                
                

                No difference to speak of, within normal test variation.
                Then I tested through the box running the iperf server on a different pfSense box.
                No fast fowarding:

                
                C:\Temp>iperf -c 192.168.1.129 -t 30
                ------------------------------------------------------------
                Client connecting to 192.168.1.129, TCP port 5001
                TCP window size: 8.00 KByte (default)
                ------------------------------------------------------------
                [1912] local 192.168.2.22 port 1966 connected with 192.168.1.129 port 5001
                [ ID] Interval       Transfer     Bandwidth
                [1912]  0.0-30.0 sec   672 MBytes   188 Mbits/sec
                

                With fast forwarding:

                
                C:\Temp>iperf -c 192.168.1.129 -t 30
                ------------------------------------------------------------
                Client connecting to 192.168.1.129, TCP port 5001
                TCP window size: 8.00 KByte (default)
                ------------------------------------------------------------
                [1912] local 192.168.2.22 port 2126 connected with 192.168.1.129 port 5001
                [ ID] Interval       Transfer     Bandwidth
                [1912]  0.0-30.0 sec   858 MBytes   240 Mbits/sec
                

                20% improvement.  :)
                Not quite the dramatic increase you saw but I suspect you may have had other issues since 1.5Mbps seems too slow.
                I also note that biggsy's result is tainted by the fact that his initial test was using an 8k window size but the improved result used a 63k window size. The different versions/ports of iperf seem to have different defaults which can catch you out.  ;)

                Since this is my home box I'll see if anything has broken over the next few days.

                Steve

                1 Reply Last reply Reply Quote 0
                • G
                  gridrun
                  last edited by Jan 15, 2013, 5:50 AM

                  @dhatz:

                  I wonder if it's still a problem with the newer FreeBSD 8.3 kernel used by pfsense 2.1-BETA

                  I have since sold the small WISP business that used the virtualized pfSense system I reported on earlier. However, my new employer (an ISP) asked me to build a vSphere cluster and help them virtualize large parts of their central office. So I will soon be able to do further testing with pfSense in this virtual environment.

                  Tech stuff on my blog: http://niston.wordpress.com

                  1 Reply Last reply Reply Quote 0
                  1 out of 8
                  • First post
                    1/8
                    Last post
                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.