Should you junk your WRT54G?

Report problems and success stories with Gargoyle on various hardware platforms.

Moderator: Moderators

Post Reply
pbix
Developer
Posts: 1373
Joined: Fri Aug 21, 2009 5:09 pm

Should you junk your WRT54G?

Post by pbix »

Lots of people have routers with 16MB or RAM including many of the venerable WRT54G models. Memory has always been tight in these models and recently I have heard comments that newer versions of Gargoyle take more memory and that owners of these minimum memory models should use older versions of Gargoyle to avoid problems. Perhaps then you might be thinking that you should ditch your WRT54G series router for something better. I am not much for anecdotal evidence so I decided to take a look myself to see if I could find any evidence to support this thinking. I loaded two versions of Gargoyle on my WRT54GL and compared. The two versions are v1.2.5 and v1.4.1. There is a great deal of differences under the hood between these two most notable is that v1.4.1 is based on the Backfire version of OpenWRT including modern Linux kernel v2.6. The v1.25 code is based on Kamikaze and legacy Linux kernel v2.4. In addition v1.41 uses the open source B43 driver while v1.25 used a propriety blob of code from Linksys which works well but no one understands.

First lets look at Flash utilization indicated by /proc/mtd. Sizes shown are in hex.

Code: Select all

dev:   v1.2.5  v1.4.1   name            Comment
mtd0: 00040000 00040000 "cfe"           Bootloader is the same size
mtd1: 003b0000 003b0000 "linux"         Linux Kernel space is the same size
mtd2: 00214800 002da800 "rootfs"        Readonly File system is 792kB larger in v1.4.1
mtd3: 00010000 00010000 "nvram"         nvram used by bootloader is the same.
mtd4: 00120000 000a0000 "rootfs_data"   Available user space in v1.4.1 is 512kB smaller.
The most important thing for users from the above is the available user space since this is where any optional packages you might install must go. We can see that it is 512kB smaller in v1.4.1.

Now lets looks at the RAM utilization. I did this by configuring both routers for WAN with wireless DHCP connections. After the WAN connection was established I looked at the amount of memory available for user process using the 'free' command.

Code: Select all

                total   used   free  buffers  (free+buffer)
  Mem v1.4.1:   13468  12136   1332     1372    2704   (Wash)
  Mem v1.2.5:   14340  13240   1100     1580    2680   (Wash)
In my view the free+buffer column is the most important since this is the amount of memory the kernel has at its disposal to run user processes. Here we can see that there is no meaningful difference between the two.

The last thing to consider how efficient the system is at using the available memory. Two things important to a router are the number of connections is can support and the number of process it can run.

Code: Select all

                            v1.2.5  v1.4.1
Memory per connection:         352     224   60% improvement in v1.4.1
http_gargoyle process pages:  2180    1372   59% improvement in v1.4.1
Here we can see the real benefits of using Backfire and the Linux 2.6 kernel. You can get more bang out of your available memory both in terms of the number of connections and the number of processes.

Conclusion. If you do not have enough flash then you will have trouble getting your software installed on your router. If you do not have enough RAM then you will have stability and capacity issues with your router under load. In my view RAM is way more important. So if you are looking for a reason to convince the wife that you should upgrade I am afraid I cannot supply it. Your WRT54G series router will be better than it ever has been if you upgrade to the newest version Gargoyle.

Cheers
Linksys WRT1900ACv2
Netgear WNDR3700v2
TP Link 1043ND v3
TP-Link TL-WDR3600 v1
Buffalo WZR-HP-G300NH2
WRT54G-TM

mix
Posts: 292
Joined: Sun Feb 27, 2011 11:18 am

Re: Should you junk your WRT54G?

Post by mix »

Honestly, I am in agreement with this. I don't believe I am having any memory issues with my WRT54GL.
WRT54GL v1.1
Gargoyle 1.4.7

Post Reply