Tomato Firmware - Improve WAN to LAN Throughput With Fast Nat [BCM Nat]

Discussion in 'Networking Guides' started by InsaneNutter, Aug 28, 2014.

  1. InsaneNutter

    InsaneNutter Resident Nutter Staff Member

    Joined:
    Jun 1, 2007
    Messages:
    12,254
    Likes Received:
    3,724
    Location:
    Yorkshire, England
    Tomato is a great after market firmware compatible with many Broadcom based routers, however in the default configuration WAN to LAN throughput (the speed you can download) will be limited to around 100mbps as the router just doesn't have the processing power to process packets at such high speeds.

    Here is a speedtest on my 150mbps connection:

    [​IMG]

    As you can see my router simply cant cope with a connection speed of much more than 100mbps, however we can do something about this, we can enable Fast-Nat

    What is Fast-Nat?

    Fast-NAT doesn't keep track of connections, where as NAT does. Connection tracking takes a lot of processor power and there for requires a lot more resources, this ends up becoming too much of a strain on your router which has limited processing power. Basically with Fast-Nat enabled your router can process packets much more efficiently, allowing a much greater WAN to LAN throughput.

    Is their a downside to Fast-Nat?

    That honestly depends on what you are doing with your router, if you enable Fast-Nat you will not be able to use QOS or setup any access restrictions on your router. Personally i have never had QOS enabled on my router, on you average home network with such high speed internet access i personally don't see any need for it.

    How do i enable Fat-Nat on Tomato?

    I'm not sure if you can enable Fast-Nat on all versions of Tomato, however i have tested this on Tomato by Shibby and Advanced Tomato

    First SSH in to your router, you might need to go to Administration > Admin Access and enable the SSH daemon.

    On Windows you can use Putty to SSH in to your router, simply enter the routers IP as below:

    tomato-bcm-fast-nat-1.png

    The default username is root and the password is the same as what you log on to the routers admin interface with, once connected you should see a command line interface:

    tomato-bcm-fast-nat-2.png

    To enable Fast-Nat on your Tomato powered router type modprobe bcm_nat

    tomato-bcm-fast-nat-3.png

    To confirm Fast-Nat is enabled type dmesg and you should see "BCM fast NAT: INIT" if fast nat has been enabled:

    tomato-bcm-fast-nat-4.png

    Every time the router is rebooted you will need to re enable fast nat, the most simple way to do this without any user intervention is to enter BCM fast NAT: INIT in to the routers Init script.

    To do this on the web ui go to Administration > Scripts and simply type modprobe bcm_nat in the Init scrips box and save the settings tomato-bcm-fast-nat-5.png

    Now all been well you should be able to achieve a much greater WAN to LAN throughput on your router, as can be seen below i can easily max my 150mbit connection out:

    [​IMG]

    The throughput you can achieve will depend on your router, the more processing power it has the higher throughput you will achieve. You should easily be able to do 300mbps+ on the higher end Asus Routers.

    Just remember Fast-Nat will not work if you enable QOS or create any access restrictions.
     
    Dark Scyth likes this.
  2. Neoteam1

    Neoteam1 Addict

    Joined:
    Apr 10, 2011
    Messages:
    713
    Likes Received:
    72
    Location:
    United Kingdom
    Wish this would work with BT I only get 37MB lol.
     
  3. Neoteam1

    Neoteam1 Addict

    Joined:
    Apr 10, 2011
    Messages:
    713
    Likes Received:
    72
    Location:
    United Kingdom
    Can I get this to work with sky.
     
  4. InsaneNutter

    InsaneNutter Resident Nutter Staff Member

    Joined:
    Jun 1, 2007
    Messages:
    12,254
    Likes Received:
    3,724
    Location:
    Yorkshire, England
    This basically allows you router to be more efficient, so if your ISP can offer you a faster internet connection you can keep using your older router without having to buy a new router.

    With BT / Sky Fiber you are been limited by the quality of your phone line and the distance you are from the cab on your street, not the processing power of your own router sadly.
     
  5. xbliss

    xbliss New Member

    Joined:
    Apr 4, 2017
    Messages:
    1
    Likes Received:
    0
    http://www.linksysinfo.org/index.php?threads/two-quetions-on-bcm_nat.69234/#post-286646
    PS: If the above Init "enables" BCM_Nat, then how could I disable it (with & without rebooting)?
    I suspect, commenting it out with # in the Init would disable when rebooted.
    What way can it be enabled/ disabled on the fly (on demand/ when I want at certain times)?
     

Share This Page