Tomato 1.19 SpeedMod


hardc0re

Forum Guru
Member
Hi guys,

I've released a modified version of Tomato 1.19 which aims to improve the router's performance under high load (many connections, more than 2000 or so).

All the modifications are made to the Linux kernel. To summarize:

1. Tuned route cache and conntrack hash sizes.
2. Tuned route cache parameters.
3. Updated conntrack and netfilter components to later versions.
4. Modified hash function to a newer one.

Get it here:
http://touristinparadise.blogspot.com/2008/04/linksys-wrt54gl-routers-improving.html
 
Hey, that's the one in my sig! :tongue:

# uptime
14:59:19 up 12 days, 19:49, load average: 0.00, 0.00, 0.00

12 days uptime is pretty good considering SpeedMod has only been out that long :wink: No reboots since I flashed it!

It's a great mod, thanks! :thumbups:
 
Can someone take you speed-mod version and append the OpenVPN function to it also? I dunno if that's possible....?
 
I have a question for the modder,

How does this mod affect memory usage? I run the hostfile mod on my WRT54g ver 2.2 and running your speedmod AND the hostfile, I found the router to be sluggish and rather unstable.

In fact, soon after flashing the mod and letting it settle out, I had almost NO available memory. With the regular Tomato, I still have quite a bit left after even a week of usage. Yes, I know the kernel cleans up memory as needed, but it seems that the speedmod took it all right away and never lets it go. The whole network grinds to a slow drizzle after about 2 days. I give you this, it never crashed, but got to the point that is takes 5 minutes to load any web page. A reboot and everything works fine again for a while.

Is there a way to configure the mod 'halfway'? So that I get SOME of the speed improvements and still retain the hostfile functionality? I have 5 computers being fed off the router and anything I can do to increase speed AND stability is greatly appreciated. I have found that the hostfile function is a sorely needed item that I cannot do without.
 
I have a question for the modder,

How does this mod affect memory usage? I run the hostfile mod on my WRT54g ver 2.2 and running your speedmod AND the hostfile, I found the router to be sluggish and rather unstable.

In fact, soon after flashing the mod and letting it settle out, I had almost NO available memory. With the regular Tomato, I still have quite a bit left after even a week of usage. Yes, I know the kernel cleans up memory as needed, but it seems that the speedmod took it all right away and never lets it go. The whole network grinds to a slow drizzle after about 2 days. I give you this, it never crashed, but got to the point that is takes 5 minutes to load any web page. A reboot and everything works fine again for a while.

Is there a way to configure the mod 'halfway'? So that I get SOME of the speed improvements and still retain the hostfile functionality? I have 5 computers being fed off the router and anything I can do to increase speed AND stability is greatly appreciated. I have found that the hostfile function is a sorely needed item that I cannot do without.
Hi Mercjoe,

When you say hostfile, do you mean /etc/hosts and are you using JFFS2?

SpeedMod does use up more memory, depending on how many max connections you set. About 1 Megabyte more on average. This is because of the larger hash table sizes.

On a 16MB RAM router, if you don't go above 6000 connections you should still have about 2 to 3Mb free RAM left (free ram includes cache memory).

If you haven't tried build 8500 yet, try it and see. It should have slightly better memory usage and reduced cpu load. Its not possible to go 'half-way' without changing some things in the source code and recompiling.

It will help diagnose the problem if you can send the output of:
# uptime
# ps
# cat /proc/meminfo
# cat /proc/slabinfo | grep ip
# cat /proc/net/rt_cache_stat

It will give an indication of what is using up the memory.
 
Hi Mercjoe,

When you say hostfile, do you mean /etc/hosts and are you using JFFS2?

Loaded into RAM at startup and updated on a weekly basis. Basic script has been posted on this forum before.

SpeedMod does use up more memory, depending on how many max connections you set. About 1 Megabyte more on average. This is because of the larger hash table sizes.

On a 16MB RAM router, if you don't go above 6000 connections you should still have about 2 to 3Mb free RAM left (free ram includes cache memory).

Yeah, I have only 16meg of RAM. I have a limit of 2048 max connections in the config.

If you haven't tried build 8500 yet, try it and see. It should have slightly better memory usage and reduced cpu load. Its not possible to go 'half-way' without changing some things in the source code and recompiling.

It will help diagnose the problem if you can send the output of:
# uptime
# ps
# cat /proc/meminfo
# cat /proc/slabinfo | grep ip
# cat /proc/net/rt_cache_stat

It will give an indication of what is using up the memory.

I was using ver 8423 before. I will try 8500 and get back to you on it.
 
I realized an increase in CPU load by using this mod
CPU Load (1 / 5 / 15 mins) 0.12 / 0.04 / 0.01
I used to get 0.00/0.00/0.00 using the old firmware
Theres no difference in memory for me since i'm using roughly 70% of the total memory only.Router seems fine thou:D
 
It's the opposite for me...

Used to get 0.70-0.85, now I'm constantly at 0.25-0.35!

Good improvement. I like this speedmod :)
 
Sorry to double post, but I was wondering if anyone else noticed that the SpeedMod 1.19-ND build 8500 archive is corrupt? I can't extract it with any archive app. I also tried downloading it using different browsers. No luck.

The regular build 8500 extracts fine, it's just the ND build that seems corrupted.
 
When upgrading from Tomato (1.19), is it necessary to clear the NVRAM? I've already flashed and everything seems fine, I was just curious.
 
Sorry to double post, but I was wondering if anyone else noticed that the SpeedMod 1.19-ND build 8500 archive is corrupt? I can't extract it with any archive app. I also tried downloading it using different browsers. No luck.

The regular build 8500 extracts fine, it's just the ND build that seems corrupted.
Hi GhaladReam,

I just tested it and both archives seem okay. I've had a few people mention corrupted archives as well, but its usually because of a partial download, and can be made worse if your ISP has a transparent proxy.

You could try to clear your download cache and then download the file again.
 
My browser cache clears automatically when I close it (I have it set to that in firefox). Regardless, I just tried to download it again, and it seemed to work this time. Must have been something on my ISP's end.
 

Back
Top